From 3902ab14a739c08bd9fab169866de21809125fcc Mon Sep 17 00:00:00 2001 From: matzman Date: Sat, 30 May 2015 16:20:51 +0200 Subject: [PATCH] . --- src/hos_cosgi_devicerepository/CMakeLists.txt | 2 + src/hos_cosgi_testwebapp/CMakeLists.txt | 3 + src/hos_cosgi_testwebapp/Notes.txt | 3 + .../webroot/DojoApp/dojo/build-report.txt | 5435 +++ .../DojoApp/dojo/dijit/BackgroundIframe.js | 63 + .../dijit/BackgroundIframe.js.uncompressed.js | 118 + .../DojoApp/dojo/dijit/CONTRIBUTING.md | 227 + .../webroot/DojoApp/dojo/dijit/Calendar.js | 115 + .../dojo/dijit/Calendar.js.uncompressed.js | 323 + .../DojoApp/dojo/dijit/CalendarLite.js | 198 + .../dijit/CalendarLite.js.uncompressed.js | 524 + .../DojoApp/dojo/dijit/CheckedMenuItem.js | 15 + .../dijit/CheckedMenuItem.js.uncompressed.js | 58 + .../DojoApp/dojo/dijit/ColorPalette.js | 23 + .../dijit/ColorPalette.js.uncompressed.js | 162 + .../DojoApp/dojo/dijit/ConfirmDialog.js | 4 + .../dijit/ConfirmDialog.js.uncompressed.js | 11 + .../dojo/dijit/ConfirmTooltipDialog.js | 4 + .../ConfirmTooltipDialog.js.uncompressed.js | 11 + .../webroot/DojoApp/dojo/dijit/Declaration.js | 33 + .../dojo/dijit/Declaration.js.uncompressed.js | 115 + .../webroot/DojoApp/dojo/dijit/Destroyable.js | 35 + .../dojo/dijit/Destroyable.js.uncompressed.js | 83 + .../webroot/DojoApp/dojo/dijit/Dialog.js | 308 + .../dojo/dijit/Dialog.js.uncompressed.js | 698 + .../DojoApp/dojo/dijit/DialogUnderlay.js | 65 + .../dijit/DialogUnderlay.js.uncompressed.js | 171 + .../DojoApp/dojo/dijit/DropDownMenu.js | 24 + .../dijit/DropDownMenu.js.uncompressed.js | 46 + .../webroot/DojoApp/dojo/dijit/Editor.js | 466 + .../dojo/dijit/Editor.js.uncompressed.js | 878 + .../webroot/DojoApp/dojo/dijit/Fieldset.js | 14 + .../dojo/dijit/Fieldset.js.uncompressed.js | 43 + .../DojoApp/dojo/dijit/InlineEditBox.js | 249 + .../dijit/InlineEditBox.js.uncompressed.js | 660 + .../webroot/DojoApp/dojo/dijit/LICENSE | 195 + .../webroot/DojoApp/dojo/dijit/Menu.js | 143 + .../dojo/dijit/Menu.js.uncompressed.js | 386 + .../webroot/DojoApp/dojo/dijit/MenuBar.js | 34 + .../dojo/dijit/MenuBar.js.uncompressed.js | 91 + .../webroot/DojoApp/dojo/dijit/MenuBarItem.js | 8 + .../dojo/dijit/MenuBarItem.js.uncompressed.js | 28 + .../webroot/DojoApp/dojo/dijit/MenuItem.js | 71 + .../dojo/dijit/MenuItem.js.uncompressed.js | 184 + .../DojoApp/dojo/dijit/MenuSeparator.js | 10 + .../dijit/MenuSeparator.js.uncompressed.js | 35 + .../DojoApp/dojo/dijit/PopupMenuBarItem.js | 5 + .../dijit/PopupMenuBarItem.js.uncompressed.js | 16 + .../DojoApp/dojo/dijit/PopupMenuItem.js | 44 + .../dijit/PopupMenuItem.js.uncompressed.js | 101 + .../webroot/DojoApp/dojo/dijit/ProgressBar.js | 59 + .../dojo/dijit/ProgressBar.js.uncompressed.js | 172 + .../webroot/DojoApp/dojo/dijit/README.md | 32 + .../DojoApp/dojo/dijit/RadioMenuItem.js | 31 + .../dijit/RadioMenuItem.js.uncompressed.js | 73 + .../webroot/DojoApp/dojo/dijit/TitlePane.js | 112 + .../dojo/dijit/TitlePane.js.uncompressed.js | 294 + .../webroot/DojoApp/dojo/dijit/Toolbar.js | 14 + .../dojo/dijit/Toolbar.js.uncompressed.js | 42 + .../DojoApp/dojo/dijit/ToolbarSeparator.js | 9 + .../dijit/ToolbarSeparator.js.uncompressed.js | 31 + .../webroot/DojoApp/dojo/dijit/Tooltip.js | 240 + .../dojo/dijit/Tooltip.js.uncompressed.js | 612 + .../DojoApp/dojo/dijit/TooltipDialog.js | 72 + .../dijit/TooltipDialog.js.uncompressed.js | 200 + .../webroot/DojoApp/dojo/dijit/Tree.js | 739 + .../dojo/dijit/Tree.js.uncompressed.js | 1830 + .../webroot/DojoApp/dojo/dijit/Viewport.js | 44 + .../dojo/dijit/Viewport.js.uncompressed.js | 87 + .../webroot/DojoApp/dojo/dijit/WidgetSet.js | 76 + .../dojo/dijit/WidgetSet.js.uncompressed.js | 247 + .../DojoApp/dojo/dijit/_AttachMixin.js | 94 + .../dijit/_AttachMixin.js.uncompressed.js | 238 + .../webroot/DojoApp/dojo/dijit/_BidiMixin.js | 53 + .../dojo/dijit/_BidiMixin.js.uncompressed.js | 159 + .../DojoApp/dojo/dijit/_BidiSupport.js | 6 + .../dijit/_BidiSupport.js.uncompressed.js | 21 + .../webroot/DojoApp/dojo/dijit/_Calendar.js | 5 + .../dojo/dijit/_Calendar.js.uncompressed.js | 22 + .../DojoApp/dojo/dijit/_ConfirmDialogMixin.js | 5 + .../_ConfirmDialogMixin.js.uncompressed.js | 28 + .../webroot/DojoApp/dojo/dijit/_Contained.js | 20 + .../dojo/dijit/_Contained.js.uncompressed.js | 59 + .../webroot/DojoApp/dojo/dijit/_Container.js | 48 + .../dojo/dijit/_Container.js.uncompressed.js | 109 + .../DojoApp/dojo/dijit/_CssStateMixin.js | 198 + .../dijit/_CssStateMixin.js.uncompressed.js | 372 + .../DojoApp/dojo/dijit/_DialogMixin.js | 14 + .../dijit/_DialogMixin.js.uncompressed.js | 75 + .../webroot/DojoApp/dojo/dijit/_FocusMixin.js | 11 + .../dojo/dijit/_FocusMixin.js.uncompressed.js | 66 + .../DojoApp/dojo/dijit/_HasDropDown.js | 183 + .../dijit/_HasDropDown.js.uncompressed.js | 467 + .../DojoApp/dojo/dijit/_KeyNavContainer.js | 39 + .../dijit/_KeyNavContainer.js.uncompressed.js | 128 + .../DojoApp/dojo/dijit/_KeyNavMixin.js | 166 + .../dijit/_KeyNavMixin.js.uncompressed.js | 487 + .../webroot/DojoApp/dojo/dijit/_MenuBase.js | 186 + .../dojo/dijit/_MenuBase.js.uncompressed.js | 466 + .../DojoApp/dojo/dijit/_OnDijitClickMixin.js | 8 + .../_OnDijitClickMixin.js.uncompressed.js | 31 + .../DojoApp/dojo/dijit/_PaletteMixin.js | 94 + .../dijit/_PaletteMixin.js.uncompressed.js | 339 + .../webroot/DojoApp/dojo/dijit/_Templated.js | 23 + .../dojo/dijit/_Templated.js.uncompressed.js | 58 + .../DojoApp/dojo/dijit/_TemplatedMixin.js | 90 + .../dijit/_TemplatedMixin.js.uncompressed.js | 205 + .../webroot/DojoApp/dojo/dijit/_TimePicker.js | 174 + .../dojo/dijit/_TimePicker.js.uncompressed.js | 423 + .../webroot/DojoApp/dojo/dijit/_Widget.js | 66 + .../dojo/dijit/_Widget.js.uncompressed.js | 352 + .../webroot/DojoApp/dojo/dijit/_WidgetBase.js | 353 + .../dojo/dijit/_WidgetBase.js.uncompressed.js | 1200 + .../dojo/dijit/_WidgetsInTemplateMixin.js | 44 + ..._WidgetsInTemplateMixin.js.uncompressed.js | 110 + .../webroot/DojoApp/dojo/dijit/_base.js | 4 + .../dojo/dijit/_base.js.uncompressed.js | 27 + .../webroot/DojoApp/dojo/dijit/_base/focus.js | 68 + .../dojo/dijit/_base/focus.js.uncompressed.js | 207 + .../DojoApp/dojo/dijit/_base/manager.js | 10 + .../dijit/_base/manager.js.uncompressed.js | 35 + .../webroot/DojoApp/dojo/dijit/_base/place.js | 52 + .../dojo/dijit/_base/place.js.uncompressed.js | 131 + .../webroot/DojoApp/dojo/dijit/_base/popup.js | 23 + .../dojo/dijit/_base/popup.js.uncompressed.js | 58 + .../DojoApp/dojo/dijit/_base/scroll.js | 6 + .../dijit/_base/scroll.js.uncompressed.js | 22 + .../webroot/DojoApp/dojo/dijit/_base/sniff.js | 3 + .../dojo/dijit/_base/sniff.js.uncompressed.js | 12 + .../DojoApp/dojo/dijit/_base/typematic.js | 3 + .../dijit/_base/typematic.js.uncompressed.js | 10 + .../webroot/DojoApp/dojo/dijit/_base/wai.js | 32 + .../dojo/dijit/_base/wai.js.uncompressed.js | 109 + .../DojoApp/dojo/dijit/_base/window.js | 6 + .../dijit/_base/window.js.uncompressed.js | 18 + .../DojoApp/dojo/dijit/_editor/RichText.js | 1678 + .../dijit/_editor/RichText.js.uncompressed.js | 3010 ++ .../DojoApp/dojo/dijit/_editor/_Plugin.js | 101 + .../dijit/_editor/_Plugin.js.uncompressed.js | 308 + .../DojoApp/dojo/dijit/_editor/html.js | 157 + .../dijit/_editor/html.js.uncompressed.js | 224 + .../dojo/dijit/_editor/nls/FontChoice.js | 2 + .../_editor/nls/FontChoice.js.uncompressed.js | 65 + .../dojo/dijit/_editor/nls/LinkDialog.js | 2 + .../_editor/nls/LinkDialog.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/ar/FontChoice.js | 2 + .../nls/ar/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/ar/LinkDialog.js | 2 + .../nls/ar/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/ar/commands.js | 2 + .../nls/ar/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/az/FontChoice.js | 2 + .../nls/az/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/az/LinkDialog.js | 2 + .../nls/az/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/az/commands.js | 2 + .../nls/az/commands.js.uncompressed.js | 50 + .../dojo/dijit/_editor/nls/bg/FontChoice.js | 2 + .../nls/bg/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/bg/LinkDialog.js | 2 + .../nls/bg/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/bg/commands.js | 2 + .../nls/bg/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/ca/FontChoice.js | 2 + .../nls/ca/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/ca/LinkDialog.js | 2 + .../nls/ca/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/ca/commands.js | 2 + .../nls/ca/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/commands.js | 2 + .../_editor/nls/commands.js.uncompressed.js | 88 + .../dojo/dijit/_editor/nls/cs/FontChoice.js | 2 + .../nls/cs/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/cs/LinkDialog.js | 2 + .../nls/cs/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/cs/commands.js | 2 + .../nls/cs/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/da/FontChoice.js | 2 + .../nls/da/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/da/LinkDialog.js | 2 + .../nls/da/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/da/commands.js | 2 + .../nls/da/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/de/FontChoice.js | 2 + .../nls/de/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/de/LinkDialog.js | 2 + .../nls/de/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/de/commands.js | 2 + .../nls/de/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/el/FontChoice.js | 2 + .../nls/el/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/el/LinkDialog.js | 2 + .../nls/el/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/el/commands.js | 2 + .../nls/el/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/es/FontChoice.js | 2 + .../nls/es/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/es/LinkDialog.js | 2 + .../nls/es/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/es/commands.js | 2 + .../nls/es/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/fi/FontChoice.js | 2 + .../nls/fi/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/fi/LinkDialog.js | 2 + .../nls/fi/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/fi/commands.js | 2 + .../nls/fi/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/fr/FontChoice.js | 2 + .../nls/fr/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/fr/LinkDialog.js | 2 + .../nls/fr/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/fr/commands.js | 2 + .../nls/fr/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/he/FontChoice.js | 2 + .../nls/he/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/he/LinkDialog.js | 2 + .../nls/he/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/he/commands.js | 2 + .../nls/he/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/hr/FontChoice.js | 2 + .../nls/hr/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/hr/LinkDialog.js | 2 + .../nls/hr/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/hr/commands.js | 2 + .../nls/hr/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/hu/FontChoice.js | 2 + .../nls/hu/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/hu/LinkDialog.js | 2 + .../nls/hu/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/hu/commands.js | 2 + .../nls/hu/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/id/FontChoice.js | 2 + .../nls/id/FontChoice.js.uncompressed.js | 26 + .../dojo/dijit/_editor/nls/id/LinkDialog.js | 2 + .../nls/id/LinkDialog.js.uncompressed.js | 15 + .../dojo/dijit/_editor/nls/id/commands.js | 2 + .../nls/id/commands.js.uncompressed.js | 52 + .../dojo/dijit/_editor/nls/it/FontChoice.js | 2 + .../nls/it/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/it/LinkDialog.js | 2 + .../nls/it/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/it/commands.js | 2 + .../nls/it/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/ja/FontChoice.js | 2 + .../nls/ja/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/ja/LinkDialog.js | 2 + .../nls/ja/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/ja/commands.js | 2 + .../nls/ja/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/kk/FontChoice.js | 2 + .../nls/kk/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/kk/LinkDialog.js | 2 + .../nls/kk/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/kk/commands.js | 2 + .../nls/kk/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/ko/FontChoice.js | 2 + .../nls/ko/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/ko/LinkDialog.js | 2 + .../nls/ko/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/ko/commands.js | 2 + .../nls/ko/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/nb/FontChoice.js | 2 + .../nls/nb/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/nb/LinkDialog.js | 2 + .../nls/nb/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/nb/commands.js | 2 + .../nls/nb/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/nl/FontChoice.js | 2 + .../nls/nl/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/nl/LinkDialog.js | 2 + .../nls/nl/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/nl/commands.js | 2 + .../nls/nl/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/pl/FontChoice.js | 2 + .../nls/pl/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/pl/LinkDialog.js | 2 + .../nls/pl/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/pl/commands.js | 2 + .../nls/pl/commands.js.uncompressed.js | 51 + .../dijit/_editor/nls/pt-pt/FontChoice.js | 2 + .../nls/pt-pt/FontChoice.js.uncompressed.js | 25 + .../dijit/_editor/nls/pt-pt/LinkDialog.js | 2 + .../nls/pt-pt/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/pt-pt/commands.js | 2 + .../nls/pt-pt/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/pt/FontChoice.js | 2 + .../nls/pt/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/pt/LinkDialog.js | 2 + .../nls/pt/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/pt/commands.js | 2 + .../nls/pt/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/ro/FontChoice.js | 2 + .../nls/ro/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/ro/LinkDialog.js | 2 + .../nls/ro/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/ro/commands.js | 2 + .../nls/ro/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/ru/FontChoice.js | 2 + .../nls/ru/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/ru/LinkDialog.js | 2 + .../nls/ru/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/ru/commands.js | 2 + .../nls/ru/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/sk/FontChoice.js | 2 + .../nls/sk/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/sk/LinkDialog.js | 2 + .../nls/sk/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/sk/commands.js | 2 + .../nls/sk/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/sl/FontChoice.js | 2 + .../nls/sl/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/sl/LinkDialog.js | 2 + .../nls/sl/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/sl/commands.js | 2 + .../nls/sl/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/sv/FontChoice.js | 2 + .../nls/sv/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/sv/LinkDialog.js | 2 + .../nls/sv/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/sv/commands.js | 2 + .../nls/sv/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/th/FontChoice.js | 2 + .../nls/th/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/th/LinkDialog.js | 2 + .../nls/th/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/th/commands.js | 2 + .../nls/th/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/tr/FontChoice.js | 2 + .../nls/tr/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/tr/LinkDialog.js | 2 + .../nls/tr/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/tr/commands.js | 2 + .../nls/tr/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/uk/FontChoice.js | 2 + .../nls/uk/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/uk/LinkDialog.js | 2 + .../nls/uk/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/uk/commands.js | 2 + .../nls/uk/commands.js.uncompressed.js | 51 + .../dijit/_editor/nls/zh-tw/FontChoice.js | 2 + .../nls/zh-tw/FontChoice.js.uncompressed.js | 25 + .../dijit/_editor/nls/zh-tw/LinkDialog.js | 2 + .../nls/zh-tw/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/zh-tw/commands.js | 2 + .../nls/zh-tw/commands.js.uncompressed.js | 51 + .../dojo/dijit/_editor/nls/zh/FontChoice.js | 2 + .../nls/zh/FontChoice.js.uncompressed.js | 25 + .../dojo/dijit/_editor/nls/zh/LinkDialog.js | 2 + .../nls/zh/LinkDialog.js.uncompressed.js | 14 + .../dojo/dijit/_editor/nls/zh/commands.js | 2 + .../nls/zh/commands.js.uncompressed.js | 51 + .../_editor/plugins/AlwaysShowToolbar.js | 112 + .../AlwaysShowToolbar.js.uncompressed.js | 201 + .../dijit/_editor/plugins/EnterKeyHandling.js | 423 + .../EnterKeyHandling.js.uncompressed.js | 626 + .../dojo/dijit/_editor/plugins/FontChoice.js | 254 + .../plugins/FontChoice.js.uncompressed.js | 606 + .../dojo/dijit/_editor/plugins/FullScreen.js | 216 + .../plugins/FullScreen.js.uncompressed.js | 454 + .../dojo/dijit/_editor/plugins/LinkDialog.js | 268 + .../plugins/LinkDialog.js.uncompressed.js | 606 + .../dojo/dijit/_editor/plugins/NewPage.js | 21 + .../plugins/NewPage.js.uncompressed.js | 76 + .../dojo/dijit/_editor/plugins/Print.js | 53 + .../_editor/plugins/Print.js.uncompressed.js | 121 + .../dojo/dijit/_editor/plugins/TabIndent.js | 23 + .../plugins/TabIndent.js.uncompressed.js | 60 + .../dojo/dijit/_editor/plugins/TextColor.js | 70 + .../plugins/TextColor.js.uncompressed.js | 129 + .../dojo/dijit/_editor/plugins/ToggleDir.js | 24 + .../plugins/ToggleDir.js.uncompressed.js | 63 + .../dojo/dijit/_editor/plugins/ViewSource.js | 294 + .../plugins/ViewSource.js.uncompressed.js | 578 + .../DojoApp/dojo/dijit/_editor/range.js | 443 + .../dijit/_editor/range.js.uncompressed.js | 559 + .../DojoApp/dojo/dijit/_editor/selection.js | 254 + .../_editor/selection.js.uncompressed.js | 379 + .../DojoApp/dojo/dijit/_tree/dndSource.js | 5 + .../dijit/_tree/dndSource.js.uncompressed.js | 20 + .../webroot/DojoApp/dojo/dijit/a11y.js | 109 + .../dojo/dijit/a11y.js.uncompressed.js | 191 + .../webroot/DojoApp/dojo/dijit/a11yclick.js | 66 + .../dojo/dijit/a11yclick.js.uncompressed.js | 139 + .../webroot/DojoApp/dojo/dijit/dijit-all.js | 15 + .../dojo/dijit/dijit-all.js.uncompressed.js | 34608 ++++++++++++++++ .../webroot/DojoApp/dojo/dijit/dijit.js | 15 + .../dojo/dijit/dijit.js.uncompressed.js | 9539 +++++ .../DojoApp/dojo/dijit/dijit.profile.js | 35 + .../webroot/DojoApp/dojo/dijit/focus.js | 188 + .../dojo/dijit/focus.js.uncompressed.js | 371 + .../webroot/DojoApp/dojo/dijit/form/Button.js | 49 + .../dojo/dijit/form/Button.js.uncompressed.js | 130 + .../DojoApp/dojo/dijit/form/CheckBox.js | 35 + .../dijit/form/CheckBox.js.uncompressed.js | 119 + .../DojoApp/dojo/dijit/form/ComboBox.js | 4 + .../dijit/form/ComboBox.js.uncompressed.js | 27 + .../DojoApp/dojo/dijit/form/ComboBoxMixin.js | 62 + .../form/ComboBoxMixin.js.uncompressed.js | 149 + .../DojoApp/dojo/dijit/form/ComboButton.js | 21 + .../dijit/form/ComboButton.js.uncompressed.js | 86 + .../dojo/dijit/form/CurrencyTextBox.js | 15 + .../form/CurrencyTextBox.js.uncompressed.js | 79 + .../DojoApp/dojo/dijit/form/DataList.js | 20 + .../dijit/form/DataList.js.uncompressed.js | 70 + .../DojoApp/dojo/dijit/form/DateTextBox.js | 4 + .../dijit/form/DateTextBox.js.uncompressed.js | 32 + .../DojoApp/dojo/dijit/form/DropDownButton.js | 38 + .../form/DropDownButton.js.uncompressed.js | 102 + .../dojo/dijit/form/FilteringSelect.js | 101 + .../form/FilteringSelect.js.uncompressed.js | 235 + .../webroot/DojoApp/dojo/dijit/form/Form.js | 47 + .../dojo/dijit/form/Form.js.uncompressed.js | 168 + .../DojoApp/dojo/dijit/form/HorizontalRule.js | 29 + .../form/HorizontalRule.js.uncompressed.js | 67 + .../dojo/dijit/form/HorizontalRuleLabels.js | 44 + .../HorizontalRuleLabels.js.uncompressed.js | 122 + .../dojo/dijit/form/HorizontalSlider.js | 204 + .../form/HorizontalSlider.js.uncompressed.js | 385 + .../DojoApp/dojo/dijit/form/MappedTextBox.js | 21 + .../form/MappedTextBox.js.uncompressed.js | 85 + .../DojoApp/dojo/dijit/form/MultiSelect.js | 74 + .../dijit/form/MultiSelect.js.uncompressed.js | 169 + .../DojoApp/dojo/dijit/form/NumberSpinner.js | 32 + .../form/NumberSpinner.js.uncompressed.js | 72 + .../DojoApp/dojo/dijit/form/NumberTextBox.js | 154 + .../form/NumberTextBox.js.uncompressed.js | 407 + .../DojoApp/dojo/dijit/form/RadioButton.js | 4 + .../dijit/form/RadioButton.js.uncompressed.js | 16 + .../dojo/dijit/form/RangeBoundTextBox.js | 40 + .../form/RangeBoundTextBox.js.uncompressed.js | 100 + .../webroot/DojoApp/dojo/dijit/form/Select.js | 201 + .../dojo/dijit/form/Select.js.uncompressed.js | 450 + .../DojoApp/dojo/dijit/form/SimpleTextarea.js | 46 + .../form/SimpleTextarea.js.uncompressed.js | 90 + .../webroot/DojoApp/dojo/dijit/form/Slider.js | 4 + .../dojo/dijit/form/Slider.js.uncompressed.js | 23 + .../DojoApp/dojo/dijit/form/TextBox.js | 104 + .../dijit/form/TextBox.js.uncompressed.js | 177 + .../DojoApp/dojo/dijit/form/Textarea.js | 7 + .../dijit/form/Textarea.js.uncompressed.js | 37 + .../DojoApp/dojo/dijit/form/TimeTextBox.js | 26 + .../dijit/form/TimeTextBox.js.uncompressed.js | 82 + .../DojoApp/dojo/dijit/form/ToggleButton.js | 7 + .../form/ToggleButton.js.uncompressed.js | 26 + .../dojo/dijit/form/ValidationTextBox.js | 148 + .../form/ValidationTextBox.js.uncompressed.js | 339 + .../DojoApp/dojo/dijit/form/VerticalRule.js | 4 + .../form/VerticalRule.js.uncompressed.js | 28 + .../dojo/dijit/form/VerticalRuleLabels.js | 6 + .../VerticalRuleLabels.js.uncompressed.js | 26 + .../DojoApp/dojo/dijit/form/VerticalSlider.js | 7 + .../form/VerticalSlider.js.uncompressed.js | 35 + .../dojo/dijit/form/_AutoCompleterMixin.js | 273 + .../_AutoCompleterMixin.js.uncompressed.js | 594 + .../DojoApp/dojo/dijit/form/_ButtonMixin.js | 50 + .../form/_ButtonMixin.js.uncompressed.js | 116 + .../DojoApp/dojo/dijit/form/_CheckBoxMixin.js | 24 + .../form/_CheckBoxMixin.js.uncompressed.js | 77 + .../DojoApp/dojo/dijit/form/_ComboBoxMenu.js | 65 + .../form/_ComboBoxMenu.js.uncompressed.js | 134 + .../dojo/dijit/form/_ComboBoxMenuMixin.js | 98 + .../_ComboBoxMenuMixin.js.uncompressed.js | 201 + .../dojo/dijit/form/_DateTimeTextBox.js | 119 + .../form/_DateTimeTextBox.js.uncompressed.js | 295 + .../dijit/form/_ExpandingTextAreaMixin.js | 85 + ..._ExpandingTextAreaMixin.js.uncompressed.js | 130 + .../DojoApp/dojo/dijit/form/_FormMixin.js | 163 + .../dijit/form/_FormMixin.js.uncompressed.js | 454 + .../dojo/dijit/form/_FormSelectWidget.js | 368 + .../form/_FormSelectWidget.js.uncompressed.js | 762 + .../dojo/dijit/form/_FormValueMixin.js | 22 + .../form/_FormValueMixin.js.uncompressed.js | 74 + .../dojo/dijit/form/_FormValueWidget.js | 24 + .../form/_FormValueWidget.js.uncompressed.js | 51 + .../DojoApp/dojo/dijit/form/_FormWidget.js | 22 + .../dijit/form/_FormWidget.js.uncompressed.js | 67 + .../dojo/dijit/form/_FormWidgetMixin.js | 105 + .../form/_FormWidgetMixin.js.uncompressed.js | 241 + .../DojoApp/dojo/dijit/form/_ListBase.js | 71 + .../dijit/form/_ListBase.js.uncompressed.js | 139 + .../dojo/dijit/form/_ListMouseMixin.js | 64 + .../form/_ListMouseMixin.js.uncompressed.js | 93 + .../dojo/dijit/form/_RadioButtonMixin.js | 44 + .../form/_RadioButtonMixin.js.uncompressed.js | 74 + .../DojoApp/dojo/dijit/form/_SearchMixin.js | 130 + .../form/_SearchMixin.js.uncompressed.js | 296 + .../DojoApp/dojo/dijit/form/_Spinner.js | 65 + .../dijit/form/_Spinner.js.uncompressed.js | 169 + .../DojoApp/dojo/dijit/form/_TextBoxMixin.js | 249 + .../form/_TextBoxMixin.js.uncompressed.js | 514 + .../dojo/dijit/form/_ToggleButtonMixin.js | 32 + .../_ToggleButtonMixin.js.uncompressed.js | 69 + .../DojoApp/dojo/dijit/form/nls/ComboBox.js | 2 + .../form/nls/ComboBox.js.uncompressed.js | 43 + .../DojoApp/dojo/dijit/form/nls/Textarea.js | 2 + .../form/nls/Textarea.js.uncompressed.js | 46 + .../dojo/dijit/form/nls/ar/ComboBox.js | 2 + .../form/nls/ar/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/ar/Textarea.js | 2 + .../form/nls/ar/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/ar/validate.js | 2 + .../form/nls/ar/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/az/ComboBox.js | 2 + .../form/nls/az/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/az/Textarea.js | 2 + .../form/nls/az/Textarea.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/az/validate.js | 2 + .../form/nls/az/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/bg/ComboBox.js | 2 + .../form/nls/bg/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/bg/Textarea.js | 2 + .../form/nls/bg/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/bg/validate.js | 2 + .../form/nls/bg/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/ca/ComboBox.js | 2 + .../form/nls/ca/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/ca/Textarea.js | 2 + .../form/nls/ca/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/ca/validate.js | 2 + .../form/nls/ca/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/cs/ComboBox.js | 2 + .../form/nls/cs/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/cs/Textarea.js | 2 + .../form/nls/cs/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/cs/validate.js | 2 + .../form/nls/cs/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/da/ComboBox.js | 2 + .../form/nls/da/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/da/Textarea.js | 2 + .../form/nls/da/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/da/validate.js | 2 + .../form/nls/da/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/de/ComboBox.js | 2 + .../form/nls/de/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/de/Textarea.js | 2 + .../form/nls/de/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/de/validate.js | 2 + .../form/nls/de/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/el/ComboBox.js | 2 + .../form/nls/el/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/el/Textarea.js | 2 + .../form/nls/el/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/el/validate.js | 2 + .../form/nls/el/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/es/ComboBox.js | 2 + .../form/nls/es/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/es/Textarea.js | 2 + .../form/nls/es/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/es/validate.js | 2 + .../form/nls/es/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/fi/ComboBox.js | 2 + .../form/nls/fi/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/fi/Textarea.js | 2 + .../form/nls/fi/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/fi/validate.js | 2 + .../form/nls/fi/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/fr/ComboBox.js | 2 + .../form/nls/fr/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/fr/Textarea.js | 2 + .../form/nls/fr/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/fr/validate.js | 2 + .../form/nls/fr/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/he/ComboBox.js | 2 + .../form/nls/he/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/he/Textarea.js | 2 + .../form/nls/he/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/he/validate.js | 2 + .../form/nls/he/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/hr/ComboBox.js | 2 + .../form/nls/hr/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/hr/Textarea.js | 2 + .../form/nls/hr/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/hr/validate.js | 2 + .../form/nls/hr/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/hu/ComboBox.js | 2 + .../form/nls/hu/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/hu/Textarea.js | 2 + .../form/nls/hu/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/hu/validate.js | 2 + .../form/nls/hu/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/id/ComboBox.js | 2 + .../form/nls/id/ComboBox.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/id/Textarea.js | 2 + .../form/nls/id/Textarea.js.uncompressed.js | 10 + .../dojo/dijit/form/nls/id/validate.js | 2 + .../form/nls/id/validate.js.uncompressed.js | 8 + .../dojo/dijit/form/nls/it/ComboBox.js | 2 + .../form/nls/it/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/it/Textarea.js | 2 + .../form/nls/it/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/it/validate.js | 2 + .../form/nls/it/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/ja/ComboBox.js | 2 + .../form/nls/ja/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/ja/Textarea.js | 2 + .../form/nls/ja/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/ja/validate.js | 2 + .../form/nls/ja/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/kk/ComboBox.js | 2 + .../form/nls/kk/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/kk/Textarea.js | 2 + .../form/nls/kk/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/kk/validate.js | 2 + .../form/nls/kk/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/ko/ComboBox.js | 2 + .../form/nls/ko/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/ko/Textarea.js | 2 + .../form/nls/ko/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/ko/validate.js | 2 + .../form/nls/ko/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/nb/ComboBox.js | 2 + .../form/nls/nb/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/nb/Textarea.js | 2 + .../form/nls/nb/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/nb/validate.js | 2 + .../form/nls/nb/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/nl/ComboBox.js | 2 + .../form/nls/nl/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/nl/Textarea.js | 2 + .../form/nls/nl/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/nl/validate.js | 2 + .../form/nls/nl/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/pl/ComboBox.js | 2 + .../form/nls/pl/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/pl/Textarea.js | 2 + .../form/nls/pl/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/pl/validate.js | 2 + .../form/nls/pl/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/pt-pt/ComboBox.js | 2 + .../nls/pt-pt/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/pt-pt/Textarea.js | 2 + .../nls/pt-pt/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/pt-pt/validate.js | 2 + .../nls/pt-pt/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/pt/ComboBox.js | 2 + .../form/nls/pt/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/pt/Textarea.js | 2 + .../form/nls/pt/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/pt/validate.js | 2 + .../form/nls/pt/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/ro/ComboBox.js | 2 + .../form/nls/ro/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/ro/Textarea.js | 2 + .../form/nls/ro/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/ro/validate.js | 2 + .../form/nls/ro/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/ru/ComboBox.js | 2 + .../form/nls/ru/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/ru/Textarea.js | 2 + .../form/nls/ru/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/ru/validate.js | 2 + .../form/nls/ru/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/sk/ComboBox.js | 2 + .../form/nls/sk/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/sk/Textarea.js | 2 + .../form/nls/sk/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/sk/validate.js | 2 + .../form/nls/sk/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/sl/ComboBox.js | 2 + .../form/nls/sl/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/sl/Textarea.js | 2 + .../form/nls/sl/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/sl/validate.js | 2 + .../form/nls/sl/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/sv/ComboBox.js | 2 + .../form/nls/sv/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/sv/Textarea.js | 2 + .../form/nls/sv/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/sv/validate.js | 2 + .../form/nls/sv/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/th/ComboBox.js | 2 + .../form/nls/th/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/th/Textarea.js | 2 + .../form/nls/th/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/th/validate.js | 2 + .../form/nls/th/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/tr/ComboBox.js | 2 + .../form/nls/tr/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/tr/Textarea.js | 2 + .../form/nls/tr/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/tr/validate.js | 2 + .../form/nls/tr/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/uk/ComboBox.js | 2 + .../form/nls/uk/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/uk/Textarea.js | 2 + .../form/nls/uk/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/uk/validate.js | 2 + .../form/nls/uk/validate.js.uncompressed.js | 7 + .../DojoApp/dojo/dijit/form/nls/validate.js | 2 + .../form/nls/validate.js.uncompressed.js | 44 + .../dojo/dijit/form/nls/zh-tw/ComboBox.js | 2 + .../nls/zh-tw/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/zh-tw/Textarea.js | 2 + .../nls/zh-tw/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/zh-tw/validate.js | 2 + .../nls/zh-tw/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/nls/zh/ComboBox.js | 2 + .../form/nls/zh/ComboBox.js.uncompressed.js | 6 + .../dojo/dijit/form/nls/zh/Textarea.js | 2 + .../form/nls/zh/Textarea.js.uncompressed.js | 9 + .../dojo/dijit/form/nls/zh/validate.js | 2 + .../form/nls/zh/validate.js.uncompressed.js | 7 + .../dojo/dijit/form/templates/Button.html | 18 + .../dojo/dijit/form/templates/CheckBox.html | 7 + .../dijit/form/templates/ComboButton.html | 26 + .../dijit/form/templates/DropDownBox.html | 18 + .../dijit/form/templates/DropDownButton.html | 21 + .../form/templates/HorizontalSlider.html | 38 + .../dojo/dijit/form/templates/Select.html | 18 + .../dojo/dijit/form/templates/Spinner.html | 27 + .../dojo/dijit/form/templates/TextBox.html | 6 + .../form/templates/ValidationTextBox.html | 10 + .../dijit/form/templates/VerticalSlider.html | 46 + .../webroot/DojoApp/dojo/dijit/hccss.js | 9 + .../dojo/dijit/hccss.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/icons/commonIcons.css | 151 + .../dojo/dijit/icons/commonIcons_rtl.css | 114 + .../DojoApp/dojo/dijit/icons/editorIcons.css | 57 + .../dojo/dijit/icons/editorIcons_rtl.css | 10 + .../images/commonIconsObjActDisabled.png | Bin 0 -> 4956 bytes .../images/commonIconsObjActDisabled_rtl.png | Bin 0 -> 4968 bytes .../icons/images/commonIconsObjActEnabled.png | Bin 0 -> 7803 bytes .../images/commonIconsObjActEnabled8bit.png | Bin 0 -> 4279 bytes .../commonIconsObjActEnabled8bit_rtl.png | Bin 0 -> 4407 bytes .../images/commonIconsObjActEnabled_rtl.png | Bin 0 -> 7776 bytes .../icons/images/editorIconsDisabled.png | Bin 0 -> 3205 bytes .../icons/images/editorIconsDisabled_rtl.png | Bin 0 -> 4010 bytes .../dijit/icons/images/editorIconsEnabled.png | Bin 0 -> 3790 bytes .../icons/images/editorIconsEnabled_rtl.png | Bin 0 -> 4151 bytes .../icons/images/loadingAnimation_rtl.gif | Bin 0 -> 630 bytes .../dojo/dijit/layout/AccordionContainer.js | 215 + .../AccordionContainer.js.uncompressed.js | 550 + .../dojo/dijit/layout/AccordionPane.js | 7 + .../layout/AccordionPane.js.uncompressed.js | 25 + .../dojo/dijit/layout/BorderContainer.js | 201 + .../layout/BorderContainer.js.uncompressed.js | 480 + .../DojoApp/dojo/dijit/layout/ContentPane.js | 235 + .../layout/ContentPane.js.uncompressed.js | 653 + .../dojo/dijit/layout/LayoutContainer.js | 50 + .../layout/LayoutContainer.js.uncompressed.js | 157 + .../DojoApp/dojo/dijit/layout/LinkPane.js | 10 + .../dijit/layout/LinkPane.js.uncompressed.js | 44 + .../dijit/layout/ScrollingTabController.js | 185 + .../ScrollingTabController.js.uncompressed.js | 503 + .../dojo/dijit/layout/SplitContainer.js | 320 + .../layout/SplitContainer.js.uncompressed.js | 591 + .../dojo/dijit/layout/StackContainer.js | 171 + .../layout/StackContainer.js.uncompressed.js | 411 + .../dojo/dijit/layout/StackController.js | 194 + .../layout/StackController.js.uncompressed.js | 410 + .../DojoApp/dojo/dijit/layout/TabContainer.js | 12 + .../layout/TabContainer.js.uncompressed.js | 77 + .../dojo/dijit/layout/TabController.js | 59 + .../layout/TabController.js.uncompressed.js | 184 + .../dijit/layout/_ContentPaneResizeMixin.js | 99 + ..._ContentPaneResizeMixin.js.uncompressed.js | 236 + .../dojo/dijit/layout/_LayoutWidget.js | 47 + .../layout/_LayoutWidget.js.uncompressed.js | 190 + .../dojo/dijit/layout/_TabContainerBase.js | 69 + .../_TabContainerBase.js.uncompressed.js | 163 + .../layout/templates/AccordionButton.html | 10 + .../templates/ScrollingTabController.html | 22 + .../dijit/layout/templates/TabContainer.html | 5 + .../_ScrollingTabControllerButton.html | 4 + .../dijit/layout/templates/_TabButton.html | 8 + .../DojoApp/dojo/dijit/layout/utils.js | 77 + .../dijit/layout/utils.js.uncompressed.js | 151 + .../webroot/DojoApp/dojo/dijit/main.js | 4 + .../dojo/dijit/main.js.uncompressed.js | 16 + .../DojoApp/dojo/dijit/nls/ar/common.js | 2 + .../dijit/nls/ar/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/ar/loading.js | 2 + .../dijit/nls/ar/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/az/common.js | 2 + .../dijit/nls/az/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/az/loading.js | 2 + .../dijit/nls/az/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/bg/common.js | 2 + .../dijit/nls/bg/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/bg/loading.js | 2 + .../dijit/nls/bg/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/ca/common.js | 2 + .../dijit/nls/ca/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/ca/loading.js | 2 + .../dijit/nls/ca/loading.js.uncompressed.js | 6 + .../webroot/DojoApp/dojo/dijit/nls/common.js | 2 + .../dojo/dijit/nls/common.js.uncompressed.js | 45 + .../DojoApp/dojo/dijit/nls/cs/common.js | 2 + .../dijit/nls/cs/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/cs/loading.js | 2 + .../dijit/nls/cs/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/da/common.js | 2 + .../dijit/nls/da/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/da/loading.js | 2 + .../dijit/nls/da/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/de/common.js | 2 + .../dijit/nls/de/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/de/loading.js | 2 + .../dijit/nls/de/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/dijit-all_ROOT.js | 2 + .../nls/dijit-all_ROOT.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_ar.js | 2 + .../dijit/nls/dijit-all_ar.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_ca.js | 2 + .../dijit/nls/dijit-all_ca.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_cs.js | 2 + .../dijit/nls/dijit-all_cs.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_da.js | 2 + .../dijit/nls/dijit-all_da.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_de.js | 2 + .../dijit/nls/dijit-all_de.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_el.js | 2 + .../dijit/nls/dijit-all_el.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_en-gb.js | 2 + .../nls/dijit-all_en-gb.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_en-us.js | 2 + .../nls/dijit-all_en-us.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_es-es.js | 2 + .../nls/dijit-all_es-es.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_fi-fi.js | 2 + .../nls/dijit-all_fi-fi.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_fr-fr.js | 2 + .../nls/dijit-all_fr-fr.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_he-il.js | 2 + .../nls/dijit-all_he-il.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_hu.js | 2 + .../dijit/nls/dijit-all_hu.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_it-it.js | 2 + .../nls/dijit-all_it-it.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_ja-jp.js | 2 + .../nls/dijit-all_ja-jp.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_ko-kr.js | 2 + .../nls/dijit-all_ko-kr.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_nb.js | 2 + .../dijit/nls/dijit-all_nb.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_nl-nl.js | 2 + .../nls/dijit-all_nl-nl.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_pl.js | 2 + .../dijit/nls/dijit-all_pl.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_pt-br.js | 2 + .../nls/dijit-all_pt-br.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_pt-pt.js | 2 + .../nls/dijit-all_pt-pt.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_ru.js | 2 + .../dijit/nls/dijit-all_ru.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_sk.js | 2 + .../dijit/nls/dijit-all_sk.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_sl.js | 2 + .../dijit/nls/dijit-all_sl.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_sv.js | 2 + .../dijit/nls/dijit-all_sv.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_th.js | 2 + .../dijit/nls/dijit-all_th.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_tr.js | 2 + .../dijit/nls/dijit-all_tr.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_zh-cn.js | 2 + .../nls/dijit-all_zh-cn.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/dijit-all_zh-tw.js | 2 + .../nls/dijit-all_zh-tw.js.uncompressed.js | 21 + .../DojoApp/dojo/dijit/nls/el/common.js | 2 + .../dijit/nls/el/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/el/loading.js | 2 + .../dijit/nls/el/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/es/common.js | 2 + .../dijit/nls/es/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/es/loading.js | 2 + .../dijit/nls/es/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/fi/common.js | 2 + .../dijit/nls/fi/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/fi/loading.js | 2 + .../dijit/nls/fi/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/fr/common.js | 2 + .../dijit/nls/fr/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/fr/loading.js | 2 + .../dijit/nls/fr/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/he/common.js | 2 + .../dijit/nls/he/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/he/loading.js | 2 + .../dijit/nls/he/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/hr/common.js | 2 + .../dijit/nls/hr/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/hr/loading.js | 2 + .../dijit/nls/hr/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/hu/common.js | 2 + .../dijit/nls/hu/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/hu/loading.js | 2 + .../dijit/nls/hu/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/id/common.js | 2 + .../dijit/nls/id/common.js.uncompressed.js | 9 + .../DojoApp/dojo/dijit/nls/id/loading.js | 2 + .../dijit/nls/id/loading.js.uncompressed.js | 7 + .../DojoApp/dojo/dijit/nls/it/common.js | 2 + .../dijit/nls/it/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/it/loading.js | 2 + .../dijit/nls/it/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/ja/common.js | 2 + .../dijit/nls/ja/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/ja/loading.js | 2 + .../dijit/nls/ja/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/kk/common.js | 2 + .../dijit/nls/kk/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/kk/loading.js | 2 + .../dijit/nls/kk/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/ko/common.js | 2 + .../dijit/nls/ko/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/ko/loading.js | 2 + .../dijit/nls/ko/loading.js.uncompressed.js | 6 + .../webroot/DojoApp/dojo/dijit/nls/loading.js | 2 + .../dojo/dijit/nls/loading.js.uncompressed.js | 43 + .../DojoApp/dojo/dijit/nls/nb/common.js | 2 + .../dijit/nls/nb/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/nb/loading.js | 2 + .../dijit/nls/nb/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/nl/common.js | 2 + .../dijit/nls/nl/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/nl/loading.js | 2 + .../dijit/nls/nl/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/pl/common.js | 2 + .../dijit/nls/pl/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/pl/loading.js | 2 + .../dijit/nls/pl/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/pt-pt/common.js | 2 + .../dijit/nls/pt-pt/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/pt-pt/loading.js | 2 + .../nls/pt-pt/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/pt/common.js | 2 + .../dijit/nls/pt/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/pt/loading.js | 2 + .../dijit/nls/pt/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/ro/common.js | 2 + .../dijit/nls/ro/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/ro/loading.js | 2 + .../dijit/nls/ro/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/ru/common.js | 2 + .../dijit/nls/ru/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/ru/loading.js | 2 + .../dijit/nls/ru/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/sk/common.js | 2 + .../dijit/nls/sk/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/sk/loading.js | 2 + .../dijit/nls/sk/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/sl/common.js | 2 + .../dijit/nls/sl/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/sl/loading.js | 2 + .../dijit/nls/sl/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/sv/common.js | 2 + .../dijit/nls/sv/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/sv/loading.js | 2 + .../dijit/nls/sv/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/th/common.js | 2 + .../dijit/nls/th/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/th/loading.js | 2 + .../dijit/nls/th/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/tr/common.js | 2 + .../dijit/nls/tr/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/tr/loading.js | 2 + .../dijit/nls/tr/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/uk/common.js | 2 + .../dijit/nls/uk/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/uk/loading.js | 2 + .../dijit/nls/uk/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/zh-tw/common.js | 2 + .../dijit/nls/zh-tw/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/zh-tw/loading.js | 2 + .../nls/zh-tw/loading.js.uncompressed.js | 6 + .../DojoApp/dojo/dijit/nls/zh/common.js | 2 + .../dijit/nls/zh/common.js.uncompressed.js | 8 + .../DojoApp/dojo/dijit/nls/zh/loading.js | 2 + .../dijit/nls/zh/loading.js.uncompressed.js | 6 + .../webroot/DojoApp/dojo/dijit/package.json | 26 + .../webroot/DojoApp/dojo/dijit/place.js | 142 + .../dojo/dijit/place.js.uncompressed.js | 407 + .../webroot/DojoApp/dojo/dijit/popup.js | 161 + .../dojo/dijit/popup.js.uncompressed.js | 435 + .../webroot/DojoApp/dojo/dijit/registry.js | 79 + .../dojo/dijit/registry.js.uncompressed.js | 159 + .../webroot/DojoApp/dojo/dijit/selection.js | 364 + .../dojo/dijit/selection.js.uncompressed.js | 525 + .../dojo/dijit/templates/Calendar.html | 35 + .../dojo/dijit/templates/CheckedMenuItem.html | 9 + .../dojo/dijit/templates/ColorPalette.html | 5 + .../DojoApp/dojo/dijit/templates/Dialog.html | 12 + .../dojo/dijit/templates/Fieldset.html | 16 + .../dojo/dijit/templates/InlineEditBox.html | 9 + .../DojoApp/dojo/dijit/templates/Menu.html | 4 + .../DojoApp/dojo/dijit/templates/MenuBar.html | 2 + .../dojo/dijit/templates/MenuBarItem.html | 4 + .../dojo/dijit/templates/MenuItem.html | 14 + .../dojo/dijit/templates/MenuSeparator.html | 10 + .../dojo/dijit/templates/ProgressBar.html | 9 + .../dojo/dijit/templates/TitlePane.html | 17 + .../DojoApp/dojo/dijit/templates/Tooltip.html | 4 + .../dojo/dijit/templates/TooltipDialog.html | 9 + .../DojoApp/dojo/dijit/templates/Tree.html | 6 + .../dojo/dijit/templates/TreeNode.html | 14 + .../dojo/dijit/templates/actionBar.html | 5 + .../DojoApp/dojo/dijit/themes/a11y/README.txt | 3 + .../dojo/dijit/themes/a11y/colors3x4.png | Bin 0 -> 282 bytes .../dojo/dijit/themes/a11y/colors7x10.png | Bin 0 -> 808 bytes .../themes/a11y/indeterminate_progress.gif | Bin 0 -> 2907 bytes .../dojo/dijit/themes/claro/Calendar.css | 244 + .../dojo/dijit/themes/claro/Calendar.less | 277 + .../dojo/dijit/themes/claro/Calendar_rtl.css | 18 + .../dojo/dijit/themes/claro/Calendar_rtl.less | 19 + .../dojo/dijit/themes/claro/ColorPalette.css | 18 + .../dojo/dijit/themes/claro/ColorPalette.less | 44 + .../dojo/dijit/themes/claro/Common.css | 96 + .../dojo/dijit/themes/claro/Common.less | 86 + .../dojo/dijit/themes/claro/Dialog.css | 174 + .../dojo/dijit/themes/claro/Dialog.less | 215 + .../dojo/dijit/themes/claro/Dialog_rtl.css | 9 + .../dojo/dijit/themes/claro/Dialog_rtl.less | 13 + .../dojo/dijit/themes/claro/Editor.css | 39 + .../dojo/dijit/themes/claro/Editor.less | 57 + .../dojo/dijit/themes/claro/Editor_rtl.css | 11 + .../dojo/dijit/themes/claro/Editor_rtl.less | 16 + .../dojo/dijit/themes/claro/InlineEditBox.css | 11 + .../dijit/themes/claro/InlineEditBox.less | 25 + .../DojoApp/dojo/dijit/themes/claro/Menu.css | 143 + .../DojoApp/dojo/dijit/themes/claro/Menu.less | 176 + .../dojo/dijit/themes/claro/Menu_rtl.css | 8 + .../dojo/dijit/themes/claro/Menu_rtl.less | 11 + .../dojo/dijit/themes/claro/ProgressBar.css | 41 + .../dojo/dijit/themes/claro/ProgressBar.less | 65 + .../dijit/themes/claro/ProgressBar_rtl.css | 13 + .../dijit/themes/claro/ProgressBar_rtl.less | 20 + .../DojoApp/dojo/dijit/themes/claro/README | 11 + .../dojo/dijit/themes/claro/TimePicker.css | 86 + .../dojo/dijit/themes/claro/TimePicker.less | 98 + .../dojo/dijit/themes/claro/TitlePane.css | 75 + .../dojo/dijit/themes/claro/TitlePane.less | 78 + .../dojo/dijit/themes/claro/TitlePane_rtl.css | 5 + .../dijit/themes/claro/TitlePane_rtl.less | 7 + .../dojo/dijit/themes/claro/Toolbar.css | 175 + .../dojo/dijit/themes/claro/Toolbar.less | 173 + .../dojo/dijit/themes/claro/Toolbar_rtl.css | 28 + .../dojo/dijit/themes/claro/Toolbar_rtl.less | 32 + .../DojoApp/dojo/dijit/themes/claro/Tree.css | 110 + .../DojoApp/dojo/dijit/themes/claro/Tree.less | 127 + .../DojoApp/dojo/dijit/themes/claro/claro.css | 5000 +++ .../dojo/dijit/themes/claro/claro_rtl.css | 382 + .../dojo/dijit/themes/claro/compile.js | 52 + .../dojo/dijit/themes/claro/document.css | 135 + .../dojo/dijit/themes/claro/document.less | 45 + .../dojo/dijit/themes/claro/form/Button.css | 133 + .../dojo/dijit/themes/claro/form/Button.less | 164 + .../dijit/themes/claro/form/Button_rtl.css | 12 + .../dijit/themes/claro/form/Button_rtl.less | 16 + .../dojo/dijit/themes/claro/form/Checkbox.css | 48 + .../dijit/themes/claro/form/Checkbox.less | 79 + .../dojo/dijit/themes/claro/form/Common.css | 197 + .../dojo/dijit/themes/claro/form/Common.less | 243 + .../dijit/themes/claro/form/Common_rtl.css | 5 + .../dijit/themes/claro/form/Common_rtl.less | 8 + .../dijit/themes/claro/form/NumberSpinner.css | 120 + .../themes/claro/form/NumberSpinner.less | 150 + .../dijit/themes/claro/form/RadioButton.css | 55 + .../dijit/themes/claro/form/RadioButton.less | 84 + .../dojo/dijit/themes/claro/form/Select.css | 70 + .../dojo/dijit/themes/claro/form/Select.less | 93 + .../dojo/dijit/themes/claro/form/Slider.css | 291 + .../dojo/dijit/themes/claro/form/Slider.less | 344 + .../dijit/themes/claro/form/Slider_rtl.css | 26 + .../dijit/themes/claro/form/Slider_rtl.less | 33 + .../themes/claro/form/images/buttonArrows.png | Bin 0 -> 297 bytes .../claro/form/images/buttonDisabled.png | Bin 0 -> 105 bytes .../claro/form/images/buttonDisabled.svg | 23 + .../claro/form/images/buttonEnabled.png | Bin 0 -> 122 bytes .../claro/form/images/buttonEnabled.svg | 24 + .../images/checkboxAndRadioButtons_IE6.png | Bin 0 -> 2160 bytes .../form/images/checkboxRadioButtonStates.png | Bin 0 -> 3438 bytes .../claro/form/images/commonFormArrows.png | Bin 0 -> 314 bytes .../dijit/themes/claro/form/images/error.png | Bin 0 -> 355 bytes .../themes/claro/form/images/sliderThumbs.png | Bin 0 -> 1222 bytes .../themes/claro/images/activeGradient.png | Bin 0 -> 94 bytes .../themes/claro/images/activeGradient.svg | 19 + .../dijit/themes/claro/images/calendar.png | Bin 0 -> 142 bytes .../themes/claro/images/calendarArrows.png | Bin 0 -> 1238 bytes .../claro/images/calendarArrows8bit.png | Bin 0 -> 998 bytes .../themes/claro/images/checkmarkNoBorder.gif | Bin 0 -> 1658 bytes .../themes/claro/images/checkmarkNoBorder.png | Bin 0 -> 1394 bytes .../themes/claro/images/dialogCloseIcon.png | Bin 0 -> 1423 bytes .../claro/images/dialogCloseIcon8bit.png | Bin 0 -> 649 bytes .../dojo/dijit/themes/claro/images/dnd.png | Bin 0 -> 1910 bytes .../themes/claro/images/loadingAnimation.gif | Bin 0 -> 631 bytes .../themes/claro/images/progressBarAnim.gif | Bin 0 -> 4458 bytes .../themes/claro/images/progressBarFull.png | Bin 0 -> 127 bytes .../themes/claro/images/spriteArrows.png | Bin 0 -> 175 bytes .../themes/claro/images/standardGradient.png | Bin 0 -> 101 bytes .../themes/claro/images/standardGradient.svg | 18 + .../dijit/themes/claro/images/tooltip.png | Bin 0 -> 713 bytes .../dijit/themes/claro/images/tooltip8bit.png | Bin 0 -> 534 bytes .../themes/claro/images/treeExpandImages.png | Bin 0 -> 465 bytes .../claro/images/treeExpandImages8bit.png | Bin 0 -> 744 bytes .../claro/layout/AccordionContainer.css | 85 + .../claro/layout/AccordionContainer.less | 100 + .../themes/claro/layout/BorderContainer.css | 92 + .../themes/claro/layout/BorderContainer.less | 135 + .../dijit/themes/claro/layout/ContentPane.css | 17 + .../themes/claro/layout/ContentPane.less | 43 + .../themes/claro/layout/TabContainer.css | 320 + .../themes/claro/layout/TabContainer.less | 360 + .../themes/claro/layout/TabContainer_rtl.css | 5 + .../themes/claro/layout/TabContainer_rtl.less | 7 + .../claro/layout/images/tabBottomSelected.png | Bin 0 -> 118 bytes .../claro/layout/images/tabBottomSelected.svg | 18 + .../layout/images/tabBottomUnselected.png | Bin 0 -> 110 bytes .../layout/images/tabBottomUnselected.svg | 19 + .../themes/claro/layout/images/tabClose.png | Bin 0 -> 1410 bytes .../claro/layout/images/tabLeftSelected.png | Bin 0 -> 213 bytes .../claro/layout/images/tabLeftSelected.svg | 17 + .../claro/layout/images/tabLeftUnselected.png | Bin 0 -> 106 bytes .../claro/layout/images/tabLeftUnselected.svg | 16 + .../themes/claro/layout/images/tabNested.png | Bin 0 -> 272 bytes .../claro/layout/images/tabRightSelected.png | Bin 0 -> 210 bytes .../claro/layout/images/tabRightSelected.svg | 17 + .../layout/images/tabRightUnselected.png | Bin 0 -> 105 bytes .../layout/images/tabRightUnselected.svg | 16 + .../claro/layout/images/tabTopSelected.png | Bin 0 -> 120 bytes .../claro/layout/images/tabTopSelected.svg | 18 + .../claro/layout/images/tabTopUnselected.png | Bin 0 -> 121 bytes .../claro/layout/images/tabTopUnselected.svg | 19 + .../dojo/dijit/themes/claro/variables.less | 378 + .../DojoApp/dojo/dijit/themes/dijit.css | 1794 + .../DojoApp/dojo/dijit/themes/dijit_rtl.css | 126 + .../dojo/dijit/themes/nihilo/Calendar.css | 135 + .../dojo/dijit/themes/nihilo/Calendar_rtl.css | 7 + .../dojo/dijit/themes/nihilo/ColorPalette.css | 5 + .../dojo/dijit/themes/nihilo/Common.css | 12 + .../dojo/dijit/themes/nihilo/Dialog.css | 123 + .../dojo/dijit/themes/nihilo/Dialog_rtl.css | 5 + .../dojo/dijit/themes/nihilo/Editor.css | 13 + .../dojo/dijit/themes/nihilo/Editor_rtl.css | 7 + .../DojoApp/dojo/dijit/themes/nihilo/Menu.css | 67 + .../dojo/dijit/themes/nihilo/Menu_rtl.css | 8 + .../dojo/dijit/themes/nihilo/ProgressBar.css | 25 + .../dijit/themes/nihilo/ProgressBar_rtl.css | 13 + .../dojo/dijit/themes/nihilo/TimePicker.css | 27 + .../dijit/themes/nihilo/TimePicker_rtl.css | 4 + .../dojo/dijit/themes/nihilo/TitlePane.css | 45 + .../dijit/themes/nihilo/TitlePane_rtl.css | 3 + .../dojo/dijit/themes/nihilo/Toolbar.css | 56 + .../DojoApp/dojo/dijit/themes/nihilo/Tree.css | 75 + .../dojo/dijit/themes/nihilo/Tree_rtl.css | 18 + .../dojo/dijit/themes/nihilo/form/Button.css | 108 + .../dijit/themes/nihilo/form/Button_rtl.css | 3 + .../dijit/themes/nihilo/form/Checkbox.css | 40 + .../dojo/dijit/themes/nihilo/form/Common.css | 60 + .../dijit/themes/nihilo/form/RadioButton.css | 40 + .../dojo/dijit/themes/nihilo/form/Select.css | 39 + .../dojo/dijit/themes/nihilo/form/Slider.css | 120 + .../dijit/themes/nihilo/form/Slider_rtl.css | 29 + .../dijit/themes/nihilo/form/TimeTextBox.css | 1 + .../nihilo/images/accordionItemActive.png | Bin 0 -> 106 bytes .../themes/nihilo/images/buttonActive.png | Bin 0 -> 105 bytes .../themes/nihilo/images/buttonDisabled.png | Bin 0 -> 89 bytes .../themes/nihilo/images/buttonEnabled.png | Bin 0 -> 100 bytes .../themes/nihilo/images/buttonHover.png | Bin 0 -> 100 bytes .../dijit/themes/nihilo/images/dndCopy.png | Bin 0 -> 727 bytes .../dijit/themes/nihilo/images/dndMove.png | Bin 0 -> 676 bytes .../dijit/themes/nihilo/images/dndNoCopy.png | Bin 0 -> 1259 bytes .../dijit/themes/nihilo/images/dndNoMove.png | Bin 0 -> 951 bytes .../dojo/dijit/themes/nihilo/images/no.gif | Bin 0 -> 179 bytes .../nihilo/images/preciseSliderThumb.gif | Bin 0 -> 258 bytes .../nihilo/images/preciseSliderThumb.png | Bin 0 -> 334 bytes .../nihilo/images/preciseSliderThumbFocus.gif | Bin 0 -> 258 bytes .../nihilo/images/preciseSliderThumbFocus.png | Bin 0 -> 338 bytes .../themes/nihilo/images/progressBarAnim.gif | Bin 0 -> 7064 bytes .../themes/nihilo/images/progressBarEmpty.png | Bin 0 -> 272 bytes .../themes/nihilo/images/progressBarFull.png | Bin 0 -> 702 bytes .../themes/nihilo/images/sliderEmpty.png | Bin 0 -> 71 bytes .../nihilo/images/sliderEmptyVertical.png | Bin 0 -> 71 bytes .../dijit/themes/nihilo/images/sliderFull.png | Bin 0 -> 91 bytes .../themes/nihilo/images/sliderFullFocus.png | Bin 0 -> 86 bytes .../nihilo/images/sliderFullVertical.png | Bin 0 -> 84 bytes .../nihilo/images/sliderFullVerticalFocus.png | Bin 0 -> 83 bytes .../themes/nihilo/images/sliderThumb.gif | Bin 0 -> 238 bytes .../themes/nihilo/images/sliderThumb.png | Bin 0 -> 300 bytes .../themes/nihilo/images/sliderThumbFocus.gif | Bin 0 -> 238 bytes .../themes/nihilo/images/sliderThumbFocus.png | Bin 0 -> 306 bytes .../images/splitContainerSizerH-thumb.png | Bin 0 -> 77 bytes .../nihilo/images/splitContainerSizerH.png | Bin 0 -> 81 bytes .../images/splitContainerSizerV-thumb.png | Bin 0 -> 79 bytes .../nihilo/images/splitContainerSizerV.png | Bin 0 -> 77 bytes .../themes/nihilo/images/spriteArrows.gif | Bin 0 -> 446 bytes .../themes/nihilo/images/spriteArrows.png | Bin 0 -> 476 bytes .../themes/nihilo/images/spriteCheckbox.gif | Bin 0 -> 774 bytes .../themes/nihilo/images/spriteCheckbox.png | Bin 0 -> 681 bytes .../themes/nihilo/images/spriteDivIcons.gif | Bin 0 -> 875 bytes .../themes/nihilo/images/spriteDivIcons.png | Bin 0 -> 995 bytes .../themes/nihilo/images/spriteRadio.gif | Bin 0 -> 1137 bytes .../themes/nihilo/images/spriteRadio.png | Bin 0 -> 958 bytes .../nihilo/images/spriteRoundedIconsSmall.gif | Bin 0 -> 1863 bytes .../nihilo/images/spriteRoundedIconsSmall.png | Bin 0 -> 1870 bytes .../dijit/themes/nihilo/images/spriteTree.gif | Bin 0 -> 233 bytes .../dijit/themes/nihilo/images/spriteTree.png | Bin 0 -> 237 bytes .../themes/nihilo/images/spriteTree_rtl.gif | Bin 0 -> 233 bytes .../themes/nihilo/images/spriteTree_rtl.png | Bin 0 -> 236 bytes .../themes/nihilo/images/tabBottomActiveC.gif | Bin 0 -> 518 bytes .../nihilo/images/tabBottomEnabledC.gif | Bin 0 -> 511 bytes .../themes/nihilo/images/tabBottomHoverC.gif | Bin 0 -> 542 bytes .../nihilo/images/tabContainerSprite.gif | Bin 0 -> 1285 bytes .../dijit/themes/nihilo/images/titleBar.png | Bin 0 -> 99 bytes .../themes/nihilo/images/titleBarActive.png | Bin 0 -> 113 bytes .../nihilo/images/tooltipConnectorDown.gif | Bin 0 -> 205 bytes .../nihilo/images/tooltipConnectorDown.png | Bin 0 -> 265 bytes .../nihilo/images/tooltipConnectorLeft.gif | Bin 0 -> 205 bytes .../nihilo/images/tooltipConnectorLeft.png | Bin 0 -> 246 bytes .../nihilo/images/tooltipConnectorRight.gif | Bin 0 -> 204 bytes .../nihilo/images/tooltipConnectorRight.png | Bin 0 -> 252 bytes .../nihilo/images/tooltipConnectorUp.gif | Bin 0 -> 205 bytes .../nihilo/images/tooltipConnectorUp.png | Bin 0 -> 253 bytes .../nihilo/images/treeExpand_loading.gif | Bin 0 -> 662 bytes .../dijit/themes/nihilo/images/treeHover.png | Bin 0 -> 78 bytes .../dojo/dijit/themes/nihilo/images/treeI.gif | Bin 0 -> 71 bytes .../dijit/themes/nihilo/images/treeI_half.gif | Bin 0 -> 65 bytes .../themes/nihilo/images/treeI_half_rtl.gif | Bin 0 -> 66 bytes .../dijit/themes/nihilo/images/treeI_rtl.gif | Bin 0 -> 72 bytes .../nihilo/images/validationInputBg.gif | Bin 0 -> 93 bytes .../nihilo/images/validationInputBg.png | Bin 0 -> 89 bytes .../dijit/themes/nihilo/images/warning.png | Bin 0 -> 1197 bytes .../nihilo/layout/AccordionContainer.css | 35 + .../nihilo/layout/AccordionContainer_rtl.css | 7 + .../themes/nihilo/layout/BorderContainer.css | 59 + .../themes/nihilo/layout/ContentPane.css | 17 + .../themes/nihilo/layout/SplitContainer.css | 27 + .../themes/nihilo/layout/TabContainer.css | 368 + .../themes/nihilo/layout/TabContainer_rtl.css | 34 + .../dojo/dijit/themes/nihilo/nihilo.css | 3480 ++ .../dojo/dijit/themes/nihilo/nihilo_rtl.css | 267 + .../dojo/dijit/themes/soria/Calendar.css | 135 + .../dojo/dijit/themes/soria/Calendar_rtl.css | 7 + .../dojo/dijit/themes/soria/ColorPalette.css | 5 + .../dojo/dijit/themes/soria/Common.css | 17 + .../dojo/dijit/themes/soria/Dialog.css | 126 + .../dojo/dijit/themes/soria/Dialog_rtl.css | 5 + .../dojo/dijit/themes/soria/Editor.css | 13 + .../dojo/dijit/themes/soria/Editor_rtl.css | 7 + .../DojoApp/dojo/dijit/themes/soria/Menu.css | 67 + .../dojo/dijit/themes/soria/Menu_rtl.css | 8 + .../dojo/dijit/themes/soria/ProgressBar.css | 25 + .../dijit/themes/soria/ProgressBar_rtl.css | 13 + .../dojo/dijit/themes/soria/TimePicker.css | 27 + .../dijit/themes/soria/TimePicker_rtl.css | 4 + .../dojo/dijit/themes/soria/TitlePane.css | 48 + .../dojo/dijit/themes/soria/TitlePane_rtl.css | 3 + .../dojo/dijit/themes/soria/Toolbar.css | 56 + .../DojoApp/dojo/dijit/themes/soria/Tree.css | 78 + .../dojo/dijit/themes/soria/Tree_rtl.css | 18 + .../dojo/dijit/themes/soria/form/Button.css | 105 + .../dijit/themes/soria/form/Button_rtl.css | 3 + .../dojo/dijit/themes/soria/form/Checkbox.css | 40 + .../dojo/dijit/themes/soria/form/Common.css | 60 + .../dijit/themes/soria/form/RadioButton.css | 40 + .../dojo/dijit/themes/soria/form/Select.css | 41 + .../dojo/dijit/themes/soria/form/Slider.css | 122 + .../dijit/themes/soria/form/Slider_rtl.css | 29 + .../dijit/themes/soria/form/TimeTextBox.css | 1 + .../soria/images/accordionItemActive.gif | Bin 0 -> 174 bytes .../soria/images/accordionItemActive.png | Bin 0 -> 138 bytes .../themes/soria/images/buttonActive.png | Bin 0 -> 147 bytes .../themes/soria/images/buttonDisabled.png | Bin 0 -> 138 bytes .../themes/soria/images/buttonEnabled.png | Bin 0 -> 122 bytes .../dijit/themes/soria/images/buttonHover.png | Bin 0 -> 116 bytes .../dijit/themes/soria/images/dndCopy.png | Bin 0 -> 727 bytes .../dijit/themes/soria/images/dndMove.png | Bin 0 -> 676 bytes .../dijit/themes/soria/images/dndNoCopy.png | Bin 0 -> 1259 bytes .../dijit/themes/soria/images/dndNoMove.png | Bin 0 -> 951 bytes .../soria/images/preciseSliderThumb.gif | Bin 0 -> 258 bytes .../soria/images/preciseSliderThumb.png | Bin 0 -> 334 bytes .../soria/images/preciseSliderThumbFocus.gif | Bin 0 -> 258 bytes .../soria/images/preciseSliderThumbFocus.png | Bin 0 -> 338 bytes .../themes/soria/images/progressBarAnim.gif | Bin 0 -> 9304 bytes .../themes/soria/images/progressBarEmpty.png | Bin 0 -> 192 bytes .../themes/soria/images/progressBarFull.png | Bin 0 -> 210 bytes .../dijit/themes/soria/images/sliderEmpty.png | Bin 0 -> 71 bytes .../soria/images/sliderEmptyVertical.png | Bin 0 -> 71 bytes .../dijit/themes/soria/images/sliderFull.png | Bin 0 -> 88 bytes .../themes/soria/images/sliderFullFocus.png | Bin 0 -> 105 bytes .../soria/images/sliderFullVertical.png | Bin 0 -> 84 bytes .../soria/images/sliderFullVerticalFocus.png | Bin 0 -> 103 bytes .../dijit/themes/soria/images/sliderThumb.gif | Bin 0 -> 238 bytes .../dijit/themes/soria/images/sliderThumb.png | Bin 0 -> 300 bytes .../themes/soria/images/sliderThumbFocus.gif | Bin 0 -> 238 bytes .../themes/soria/images/sliderThumbFocus.png | Bin 0 -> 306 bytes .../images/splitContainerSizerH-thumb.png | Bin 0 -> 83 bytes .../soria/images/splitContainerSizerH.png | Bin 0 -> 84 bytes .../images/splitContainerSizerV-thumb.png | Bin 0 -> 79 bytes .../soria/images/splitContainerSizerV.png | Bin 0 -> 84 bytes .../themes/soria/images/spriteArrows.gif | Bin 0 -> 446 bytes .../themes/soria/images/spriteArrows.png | Bin 0 -> 476 bytes .../themes/soria/images/spriteCheckbox.gif | Bin 0 -> 774 bytes .../themes/soria/images/spriteCheckbox.png | Bin 0 -> 681 bytes .../themes/soria/images/spriteDivIcons.gif | Bin 0 -> 884 bytes .../themes/soria/images/spriteDivIcons.png | Bin 0 -> 1055 bytes .../dijit/themes/soria/images/spriteRadio.gif | Bin 0 -> 1137 bytes .../dijit/themes/soria/images/spriteRadio.png | Bin 0 -> 958 bytes .../soria/images/spriteRoundedIconsSmall.gif | Bin 0 -> 1937 bytes .../soria/images/spriteRoundedIconsSmall.png | Bin 0 -> 2360 bytes .../images/spriteRoundedIconsSmallBl.gif | Bin 0 -> 1907 bytes .../images/spriteRoundedIconsSmallBl.png | Bin 0 -> 2319 bytes .../dijit/themes/soria/images/spriteTree.gif | Bin 0 -> 233 bytes .../dijit/themes/soria/images/spriteTree.png | Bin 0 -> 237 bytes .../themes/soria/images/spriteTree_rtl.gif | Bin 0 -> 233 bytes .../themes/soria/images/spriteTree_rtl.png | Bin 0 -> 236 bytes .../themes/soria/images/tabBottomActiveC.gif | Bin 0 -> 482 bytes .../themes/soria/images/tabBottomEnabledC.gif | Bin 0 -> 337 bytes .../soria/images/tabBottomEnabledSpriteLR.gif | Bin 0 -> 676 bytes .../themes/soria/images/tabBottomHoverC.gif | Bin 0 -> 280 bytes .../soria/images/tabContainerSprite.gif | Bin 0 -> 2570 bytes .../themes/soria/images/tabLeftChecked.gif | Bin 0 -> 2005 bytes .../themes/soria/images/tabRightChecked.gif | Bin 0 -> 2003 bytes .../dijit/themes/soria/images/titleBar.png | Bin 0 -> 142 bytes .../themes/soria/images/titleBarActive.png | Bin 0 -> 147 bytes .../soria/images/tooltipConnectorDown.gif | Bin 0 -> 205 bytes .../soria/images/tooltipConnectorDown.png | Bin 0 -> 265 bytes .../soria/images/tooltipConnectorLeft.gif | Bin 0 -> 205 bytes .../soria/images/tooltipConnectorLeft.png | Bin 0 -> 246 bytes .../soria/images/tooltipConnectorRight.gif | Bin 0 -> 204 bytes .../soria/images/tooltipConnectorRight.png | Bin 0 -> 252 bytes .../soria/images/tooltipConnectorUp.gif | Bin 0 -> 205 bytes .../soria/images/tooltipConnectorUp.png | Bin 0 -> 253 bytes .../soria/images/treeExpand_loading.gif | Bin 0 -> 662 bytes .../dijit/themes/soria/images/treeHover.png | Bin 0 -> 78 bytes .../dojo/dijit/themes/soria/images/treeI.gif | Bin 0 -> 71 bytes .../dijit/themes/soria/images/treeI_half.gif | Bin 0 -> 65 bytes .../themes/soria/images/treeI_half_rtl.gif | Bin 0 -> 66 bytes .../dijit/themes/soria/images/treeI_rtl.gif | Bin 0 -> 72 bytes .../themes/soria/images/validationInputBg.gif | Bin 0 -> 93 bytes .../themes/soria/images/validationInputBg.png | Bin 0 -> 89 bytes .../dijit/themes/soria/images/warning.png | Bin 0 -> 1197 bytes .../soria/layout/AccordionContainer.css | 35 + .../soria/layout/AccordionContainer_rtl.css | 7 + .../themes/soria/layout/BorderContainer.css | 59 + .../dijit/themes/soria/layout/ContentPane.css | 17 + .../themes/soria/layout/SplitContainer.css | 27 + .../themes/soria/layout/TabContainer.css | 297 + .../themes/soria/layout/TabContainer_rtl.css | 34 + .../DojoApp/dojo/dijit/themes/soria/soria.css | 3422 ++ .../dojo/dijit/themes/soria/soria_rtl.css | 268 + .../dojo/dijit/themes/tundra/Calendar.css | 136 + .../dojo/dijit/themes/tundra/Calendar_rtl.css | 7 + .../dojo/dijit/themes/tundra/ColorPalette.css | 5 + .../dojo/dijit/themes/tundra/Common.css | 27 + .../dojo/dijit/themes/tundra/Dialog.css | 129 + .../dojo/dijit/themes/tundra/Dialog_rtl.css | 5 + .../dojo/dijit/themes/tundra/Editor.css | 14 + .../dojo/dijit/themes/tundra/Editor_rtl.css | 7 + .../DojoApp/dojo/dijit/themes/tundra/Menu.css | 72 + .../dojo/dijit/themes/tundra/Menu_rtl.css | 3 + .../dojo/dijit/themes/tundra/ProgressBar.css | 24 + .../dijit/themes/tundra/ProgressBar_rtl.css | 12 + .../dojo/dijit/themes/tundra/TimePicker.css | 20 + .../dijit/themes/tundra/TimePicker_rtl.css | 4 + .../dojo/dijit/themes/tundra/TitlePane.css | 34 + .../dijit/themes/tundra/TitlePane_rtl.css | 3 + .../dojo/dijit/themes/tundra/Toolbar.css | 64 + .../DojoApp/dojo/dijit/themes/tundra/Tree.css | 72 + .../dojo/dijit/themes/tundra/Tree_rtl.css | 13 + .../dojo/dijit/themes/tundra/form/Button.css | 120 + .../dijit/themes/tundra/form/Checkbox.css | 45 + .../dojo/dijit/themes/tundra/form/Common.css | 56 + .../dijit/themes/tundra/form/RadioButton.css | 44 + .../dojo/dijit/themes/tundra/form/Select.css | 41 + .../dojo/dijit/themes/tundra/form/Slider.css | 129 + .../dijit/themes/tundra/form/Slider_rtl.css | 26 + .../tundra/images/accordionItemActive.gif | Bin 0 -> 107 bytes .../tundra/images/accordionItemHover.gif | Bin 0 -> 171 bytes .../themes/tundra/images/buttonActive.png | Bin 0 -> 92 bytes .../themes/tundra/images/buttonDisabled.png | Bin 0 -> 99 bytes .../themes/tundra/images/buttonEnabled.png | Bin 0 -> 99 bytes .../themes/tundra/images/buttonHover.png | Bin 0 -> 107 bytes .../themes/tundra/images/calendarDayLabel.png | Bin 0 -> 124 bytes .../tundra/images/calendarMonthLabel.png | Bin 0 -> 125 bytes .../tundra/images/calendarYearLabel.png | Bin 0 -> 135 bytes .../dijit/themes/tundra/images/checkmark.gif | Bin 0 -> 2060 bytes .../dijit/themes/tundra/images/checkmark.png | Bin 0 -> 1743 bytes .../tundra/images/checkmarkNoBorder.gif | Bin 0 -> 1658 bytes .../tundra/images/checkmarkNoBorder.png | Bin 0 -> 1394 bytes .../dijit/themes/tundra/images/circleIcon.gif | Bin 0 -> 204 bytes .../dijit/themes/tundra/images/circleIcon.png | Bin 0 -> 283 bytes .../themes/tundra/images/comboArrowDown.gif | Bin 0 -> 49 bytes .../tundra/images/dijitProgressBarAnim.gif | Bin 0 -> 1676 bytes .../tundra/images/dijitProgressBarAnim.psd | Bin 0 -> 40142 bytes .../dijit/themes/tundra/images/dndCopy.png | Bin 0 -> 727 bytes .../dijit/themes/tundra/images/dndMove.png | Bin 0 -> 676 bytes .../dijit/themes/tundra/images/dndNoCopy.png | Bin 0 -> 1259 bytes .../dijit/themes/tundra/images/dndNoMove.png | Bin 0 -> 951 bytes .../tundra/images/dojoTundraGradientBg.gif | Bin 0 -> 65 bytes .../tundra/images/dojoTundraGradientBg.png | Bin 0 -> 98 bytes .../themes/tundra/images/doubleArrowDown.png | Bin 0 -> 102 bytes .../themes/tundra/images/doubleArrowUp.png | Bin 0 -> 108 bytes .../themes/tundra/images/folderClosed.gif | Bin 0 -> 933 bytes .../themes/tundra/images/folderOpened.gif | Bin 0 -> 941 bytes .../dojo/dijit/themes/tundra/images/i.gif | Bin 0 -> 48 bytes .../dijit/themes/tundra/images/i_half.gif | Bin 0 -> 63 bytes .../dijit/themes/tundra/images/i_half_rtl.gif | Bin 0 -> 61 bytes .../dojo/dijit/themes/tundra/images/i_rtl.gif | Bin 0 -> 48 bytes .../dojo/dijit/themes/tundra/images/leaf.gif | Bin 0 -> 403 bytes .../dijit/themes/tundra/images/loading.gif | Bin 0 -> 687 bytes .../dojo/dijit/themes/tundra/images/menu.png | Bin 0 -> 90 bytes .../themes/tundra/images/minusButton.gif | Bin 0 -> 148 bytes .../dojo/dijit/themes/tundra/images/no.gif | Bin 0 -> 179 bytes .../dojo/dijit/themes/tundra/images/noX.gif | Bin 0 -> 80 bytes .../dijit/themes/tundra/images/plusButton.gif | Bin 0 -> 212 bytes .../themes/tundra/images/popupMenuBg.gif | Bin 0 -> 151 bytes .../tundra/images/preciseSliderThumb.gif | Bin 0 -> 212 bytes .../tundra/images/preciseSliderThumb.png | Bin 0 -> 198 bytes .../tundra/images/preciseSliderThumbFocus.gif | Bin 0 -> 212 bytes .../tundra/images/preciseSliderThumbFocus.png | Bin 0 -> 203 bytes .../tundra/images/progressBarAnim-1.png | Bin 0 -> 238 bytes .../tundra/images/progressBarAnim-2.png | Bin 0 -> 239 bytes .../tundra/images/progressBarAnim-3.png | Bin 0 -> 238 bytes .../tundra/images/progressBarAnim-4.png | Bin 0 -> 237 bytes .../tundra/images/progressBarAnim-5.png | Bin 0 -> 233 bytes .../tundra/images/progressBarAnim-6.png | Bin 0 -> 233 bytes .../tundra/images/progressBarAnim-7.png | Bin 0 -> 234 bytes .../tundra/images/progressBarAnim-8.png | Bin 0 -> 236 bytes .../tundra/images/progressBarAnim-9.png | Bin 0 -> 239 bytes .../themes/tundra/images/progressBarAnim.gif | Bin 0 -> 2624 bytes .../themes/tundra/images/progressBarAnim.psd | Bin 0 -> 40142 bytes .../themes/tundra/images/progressBarEmpty.png | Bin 0 -> 106 bytes .../themes/tundra/images/progressBarFull.png | Bin 0 -> 125 bytes .../tundra/images/radioButtonActive.png | Bin 0 -> 500 bytes .../images/radioButtonActiveDisabled.png | Bin 0 -> 467 bytes .../tundra/images/radioButtonActiveHover.png | Bin 0 -> 596 bytes .../tundra/images/radioButtonDisabled.png | Bin 0 -> 353 bytes .../tundra/images/radioButtonEnabled.png | Bin 0 -> 437 bytes .../themes/tundra/images/radioButtonHover.png | Bin 0 -> 447 bytes .../themes/tundra/images/sliderEmpty.png | Bin 0 -> 74 bytes .../tundra/images/sliderEmptyVertical.png | Bin 0 -> 75 bytes .../dijit/themes/tundra/images/sliderFull.png | Bin 0 -> 85 bytes .../themes/tundra/images/sliderFullFocus.png | Bin 0 -> 85 bytes .../tundra/images/sliderFullVertical.png | Bin 0 -> 86 bytes .../tundra/images/sliderFullVerticalFocus.png | Bin 0 -> 86 bytes .../themes/tundra/images/sliderThumb.png | Bin 0 -> 191 bytes .../themes/tundra/images/sliderThumbFocus.gif | Bin 0 -> 216 bytes .../themes/tundra/images/sliderThumbFocus.png | Bin 0 -> 210 bytes .../themes/tundra/images/smallArrowDown.png | Bin 0 -> 84 bytes .../themes/tundra/images/smallArrowUp.png | Bin 0 -> 84 bytes .../images/splitContainerSizerH-thumb.png | Bin 0 -> 77 bytes .../tundra/images/splitContainerSizerH.png | Bin 0 -> 90 bytes .../images/splitContainerSizerV-thumb.png | Bin 0 -> 79 bytes .../tundra/images/splitContainerSizerV.png | Bin 0 -> 85 bytes .../themes/tundra/images/spriteArrows.gif | Bin 0 -> 116 bytes .../themes/tundra/images/spriteArrows.png | Bin 0 -> 216 bytes .../tundra/images/spriteRoundedIconsSmall.gif | Bin 0 -> 1863 bytes .../tundra/images/spriteRoundedIconsSmall.png | Bin 0 -> 1870 bytes .../dijit/themes/tundra/images/tabActive.png | Bin 0 -> 105 bytes .../dijit/themes/tundra/images/tabClose.gif | Bin 0 -> 193 bytes .../dijit/themes/tundra/images/tabClose.png | Bin 0 -> 170 bytes .../themes/tundra/images/tabCloseHover.gif | Bin 0 -> 193 bytes .../themes/tundra/images/tabCloseHover.png | Bin 0 -> 170 bytes .../themes/tundra/images/tabDisabled.png | Bin 0 -> 101 bytes .../dijit/themes/tundra/images/tabEnabled.png | Bin 0 -> 106 bytes .../dijit/themes/tundra/images/tabHover.gif | Bin 0 -> 156 bytes .../dijit/themes/tundra/images/tabHover.png | Bin 0 -> 112 bytes .../dijit/themes/tundra/images/titleBar.png | Bin 0 -> 114 bytes .../dijit/themes/tundra/images/titleBarBg.gif | Bin 0 -> 97 bytes .../tundra/images/tooltipConnectorDown.gif | Bin 0 -> 179 bytes .../tundra/images/tooltipConnectorDown.png | Bin 0 -> 292 bytes .../tundra/images/tooltipConnectorLeft.gif | Bin 0 -> 193 bytes .../tundra/images/tooltipConnectorLeft.png | Bin 0 -> 300 bytes .../tundra/images/tooltipConnectorRight.gif | Bin 0 -> 194 bytes .../tundra/images/tooltipConnectorRight.png | Bin 0 -> 329 bytes .../tundra/images/tooltipConnectorUp.gif | Bin 0 -> 184 bytes .../tundra/images/tooltipConnectorUp.png | Bin 0 -> 289 bytes .../themes/tundra/images/treeExpand_leaf.gif | Bin 0 -> 839 bytes .../tundra/images/treeExpand_leaf_rtl.gif | Bin 0 -> 841 bytes .../tundra/images/treeExpand_loading.gif | Bin 0 -> 1894 bytes .../themes/tundra/images/treeExpand_minus.gif | Bin 0 -> 211 bytes .../tundra/images/treeExpand_minus_rtl.gif | Bin 0 -> 210 bytes .../themes/tundra/images/treeExpand_mius.gif | Bin 0 -> 211 bytes .../themes/tundra/images/treeExpand_plus.gif | Bin 0 -> 216 bytes .../tundra/images/treeExpand_plus_rtl.gif | Bin 0 -> 215 bytes .../dijit/themes/tundra/images/treeHover.png | Bin 0 -> 78 bytes .../tundra/images/validationInputBg.gif | Bin 0 -> 109 bytes .../tundra/images/validationInputBg.png | Bin 0 -> 115 bytes .../dijit/themes/tundra/images/warning.png | Bin 0 -> 1197 bytes .../tundra/layout/AccordionContainer.css | 20 + .../themes/tundra/layout/BorderContainer.css | 55 + .../themes/tundra/layout/ContentPane.css | 17 + .../themes/tundra/layout/SplitContainer.css | 28 + .../themes/tundra/layout/TabContainer.css | 234 + .../themes/tundra/layout/TabContainer_rtl.css | 3 + .../dojo/dijit/themes/tundra/tundra.css | 3588 ++ .../dojo/dijit/themes/tundra/tundra_rtl.css | 215 + .../dojo/dijit/tree/ForestStoreModel.js | 77 + .../tree/ForestStoreModel.js.uncompressed.js | 279 + .../dojo/dijit/tree/ObjectStoreModel.js | 78 + .../tree/ObjectStoreModel.js.uncompressed.js | 296 + .../DojoApp/dojo/dijit/tree/TreeStoreModel.js | 146 + .../tree/TreeStoreModel.js.uncompressed.js | 387 + .../DojoApp/dojo/dijit/tree/_dndContainer.js | 36 + .../tree/_dndContainer.js.uncompressed.js | 163 + .../DojoApp/dojo/dijit/tree/_dndSelector.js | 172 + .../tree/_dndSelector.js.uncompressed.js | 364 + .../DojoApp/dojo/dijit/tree/dndSource.js | 252 + .../dijit/tree/dndSource.js.uncompressed.js | 575 + .../webroot/DojoApp/dojo/dijit/tree/model.js | 15 + .../dojo/dijit/tree/model.js.uncompressed.js | 135 + .../webroot/DojoApp/dojo/dijit/typematic.js | 96 + .../dojo/dijit/typematic.js.uncompressed.js | 211 + .../DojoApp/dojo/dojo/AdapterRegistry.js | 38 + .../dojo/AdapterRegistry.js.uncompressed.js | 111 + .../webroot/DojoApp/dojo/dojo/CONTRIBUTING.md | 227 + .../webroot/DojoApp/dojo/dojo/Deferred.js | 184 + .../dojo/dojo/Deferred.js.uncompressed.js | 320 + .../webroot/DojoApp/dojo/dojo/DeferredList.js | 57 + .../dojo/dojo/DeferredList.js.uncompressed.js | 84 + .../webroot/DojoApp/dojo/dojo/Evented.js | 23 + .../dojo/dojo/Evented.js.uncompressed.js | 36 + .../webroot/DojoApp/dojo/dojo/LICENSE | 195 + .../DojoApp/dojo/dojo/NodeList-data.js | 59 + .../dojo/NodeList-data.js.uncompressed.js | 198 + .../webroot/DojoApp/dojo/dojo/NodeList-dom.js | 126 + .../dojo/dojo/NodeList-dom.js.uncompressed.js | 543 + .../webroot/DojoApp/dojo/dojo/NodeList-fx.js | 40 + .../dojo/dojo/NodeList-fx.js.uncompressed.js | 257 + .../DojoApp/dojo/dojo/NodeList-html.js | 20 + .../dojo/NodeList-html.js.uncompressed.js | 56 + .../DojoApp/dojo/dojo/NodeList-manipulate.js | 196 + .../NodeList-manipulate.js.uncompressed.js | 761 + .../DojoApp/dojo/dojo/NodeList-traverse.js | 124 + .../dojo/NodeList-traverse.js.uncompressed.js | 545 + .../webroot/DojoApp/dojo/dojo/NodeList.js | 10 + .../dojo/dojo/NodeList.js.uncompressed.js | 6 + .../webroot/DojoApp/dojo/dojo/OpenAjax.js | 192 + .../webroot/DojoApp/dojo/dojo/README.md | 31 + .../webroot/DojoApp/dojo/dojo/Stateful.js | 91 + .../dojo/dojo/Stateful.js.uncompressed.js | 218 + .../webroot/DojoApp/dojo/dojo/_base/Color.js | 96 + .../dojo/dojo/_base/Color.js.uncompressed.js | 229 + .../DojoApp/dojo/dojo/_base/Deferred.js | 142 + .../dojo/_base/Deferred.js.uncompressed.js | 383 + .../DojoApp/dojo/dojo/_base/NodeList.js | 23 + .../dojo/_base/NodeList.js.uncompressed.js | 110 + .../webroot/DojoApp/dojo/dojo/_base/array.js | 138 + .../dojo/dojo/_base/array.js.uncompressed.js | 350 + .../DojoApp/dojo/dojo/_base/browser.js | 13 + .../dojo/_base/browser.js.uncompressed.js | 28 + .../webroot/DojoApp/dojo/dojo/_base/config.js | 35 + .../dojo/dojo/_base/config.js.uncompressed.js | 197 + .../dojo/dojo/_base/configFirefoxExtension.js | 336 + .../DojoApp/dojo/dojo/_base/configNode.js | 87 + .../DojoApp/dojo/dojo/_base/configRhino.js | 121 + .../dojo/dojo/_base/configSpidermonkey.js | 80 + .../DojoApp/dojo/dojo/_base/connect.js | 163 + .../dojo/_base/connect.js.uncompressed.js | 374 + .../DojoApp/dojo/dojo/_base/declare.js | 440 + .../dojo/_base/declare.js.uncompressed.js | 1098 + .../webroot/DojoApp/dojo/dojo/_base/event.js | 39 + .../dojo/dojo/_base/event.js.uncompressed.js | 59 + .../webroot/DojoApp/dojo/dojo/_base/fx.js | 301 + .../dojo/dojo/_base/fx.js.uncompressed.js | 676 + .../webroot/DojoApp/dojo/dojo/_base/html.js | 88 + .../dojo/dojo/_base/html.js.uncompressed.js | 392 + .../webroot/DojoApp/dojo/dojo/_base/json.js | 26 + .../dojo/dojo/_base/json.js.uncompressed.js | 91 + .../webroot/DojoApp/dojo/dojo/_base/kernel.js | 113 + .../dojo/dojo/_base/kernel.js.uncompressed.js | 300 + .../webroot/DojoApp/dojo/dojo/_base/lang.js | 184 + .../dojo/dojo/_base/lang.js.uncompressed.js | 616 + .../webroot/DojoApp/dojo/dojo/_base/loader.js | 283 + .../dojo/dojo/_base/loader.js.uncompressed.js | 776 + .../webroot/DojoApp/dojo/dojo/_base/query.js | 10 + .../dojo/dojo/_base/query.js.uncompressed.js | 13 + .../webroot/DojoApp/dojo/dojo/_base/sniff.js | 15 + .../dojo/dojo/_base/sniff.js.uncompressed.js | 93 + .../webroot/DojoApp/dojo/dojo/_base/unload.js | 22 + .../dojo/dojo/_base/unload.js.uncompressed.js | 95 + .../webroot/DojoApp/dojo/dojo/_base/url.js | 88 + .../dojo/dojo/_base/url.js.uncompressed.js | 109 + .../webroot/DojoApp/dojo/dojo/_base/window.js | 52 + .../dojo/dojo/_base/window.js.uncompressed.js | 134 + .../webroot/DojoApp/dojo/dojo/_base/xhr.js | 273 + .../dojo/dojo/_base/xhr.js.uncompressed.js | 718 + .../DojoApp/dojo/dojo/_firebug/LICENSE | 37 + .../DojoApp/dojo/dojo/_firebug/errorIcon.png | Bin 0 -> 457 bytes .../DojoApp/dojo/dojo/_firebug/firebug.css | 208 + .../DojoApp/dojo/dojo/_firebug/firebug.js | 898 + .../dojo/_firebug/firebug.js.uncompressed.js | 1191 + .../DojoApp/dojo/dojo/_firebug/infoIcon.png | Bin 0 -> 524 bytes .../dojo/dojo/_firebug/tab_lft_norm.png | Bin 0 -> 193 bytes .../dojo/dojo/_firebug/tab_lft_over.png | Bin 0 -> 196 bytes .../dojo/dojo/_firebug/tab_rgt_norm.png | Bin 0 -> 208 bytes .../dojo/dojo/_firebug/tab_rgt_over.png | Bin 0 -> 208 bytes .../dojo/dojo/_firebug/warningIcon.png | Bin 0 -> 516 bytes .../webroot/DojoApp/dojo/dojo/aspect.js | 108 + .../dojo/dojo/aspect.js.uncompressed.js | 223 + .../webroot/DojoApp/dojo/dojo/back.js | 239 + .../DojoApp/dojo/dojo/back.js.uncompressed.js | 397 + .../webroot/DojoApp/dojo/dojo/behavior.js | 96 + .../dojo/dojo/behavior.js.uncompressed.js | 249 + .../webroot/DojoApp/dojo/dojo/cache.js | 10 + .../dojo/dojo/cache.js.uncompressed.js | 7 + .../webroot/DojoApp/dojo/dojo/cldr/LICENSE | 29 + .../webroot/DojoApp/dojo/dojo/cldr/README | 18 + .../DojoApp/dojo/dojo/cldr/monetary.js | 24 + .../dojo/cldr/monetary.js.uncompressed.js | 40 + .../DojoApp/dojo/dojo/cldr/nls/ar/buddhist.js | 8 + .../cldr/nls/ar/buddhist.js.uncompressed.js | 283 + .../DojoApp/dojo/dojo/cldr/nls/ar/coptic.js | 8 + .../cldr/nls/ar/coptic.js.uncompressed.js | 98 + .../DojoApp/dojo/dojo/cldr/nls/ar/currency.js | 8 + .../cldr/nls/ar/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/ar/ethiopic.js | 8 + .../cldr/nls/ar/ethiopic.js.uncompressed.js | 68 + .../DojoApp/dojo/dojo/cldr/nls/ar/generic.js | 8 + .../cldr/nls/ar/generic.js.uncompressed.js | 91 + .../dojo/dojo/cldr/nls/ar/gregorian.js | 8 + .../cldr/nls/ar/gregorian.js.uncompressed.js | 309 + .../DojoApp/dojo/dojo/cldr/nls/ar/hebrew.js | 8 + .../cldr/nls/ar/hebrew.js.uncompressed.js | 260 + .../DojoApp/dojo/dojo/cldr/nls/ar/islamic.js | 8 + .../cldr/nls/ar/islamic.js.uncompressed.js | 285 + .../DojoApp/dojo/dojo/cldr/nls/ar/japanese.js | 8 + .../cldr/nls/ar/japanese.js.uncompressed.js | 291 + .../DojoApp/dojo/dojo/cldr/nls/ar/number.js | 8 + .../cldr/nls/ar/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/ar/persian.js | 8 + .../cldr/nls/ar/persian.js.uncompressed.js | 283 + .../DojoApp/dojo/dojo/cldr/nls/ar/roc.js | 8 + .../dojo/cldr/nls/ar/roc.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/buddhist.js | 8 + .../dojo/cldr/nls/buddhist.js.uncompressed.js | 345 + .../DojoApp/dojo/dojo/cldr/nls/ca/buddhist.js | 8 + .../cldr/nls/ca/buddhist.js.uncompressed.js | 283 + .../DojoApp/dojo/dojo/cldr/nls/ca/chinese.js | 8 + .../cldr/nls/ca/chinese.js.uncompressed.js | 141 + .../DojoApp/dojo/dojo/cldr/nls/ca/currency.js | 8 + .../cldr/nls/ca/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/ca/generic.js | 8 + .../cldr/nls/ca/generic.js.uncompressed.js | 94 + .../dojo/dojo/cldr/nls/ca/gregorian.js | 8 + .../cldr/nls/ca/gregorian.js.uncompressed.js | 312 + .../DojoApp/dojo/dojo/cldr/nls/ca/number.js | 8 + .../cldr/nls/ca/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/ca/roc.js | 8 + .../dojo/cldr/nls/ca/roc.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/chinese.js | 8 + .../dojo/cldr/nls/chinese.js.uncompressed.js | 433 + .../DojoApp/dojo/dojo/cldr/nls/coptic.js | 8 + .../dojo/cldr/nls/coptic.js.uncompressed.js | 463 + .../DojoApp/dojo/dojo/cldr/nls/cs/buddhist.js | 8 + .../cldr/nls/cs/buddhist.js.uncompressed.js | 243 + .../DojoApp/dojo/dojo/cldr/nls/cs/chinese.js | 8 + .../cldr/nls/cs/chinese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/cs/currency.js | 8 + .../cldr/nls/cs/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/cs/generic.js | 8 + .../cldr/nls/cs/generic.js.uncompressed.js | 97 + .../dojo/dojo/cldr/nls/cs/gregorian.js | 8 + .../cldr/nls/cs/gregorian.js.uncompressed.js | 313 + .../DojoApp/dojo/dojo/cldr/nls/cs/hebrew.js | 8 + .../cldr/nls/cs/hebrew.js.uncompressed.js | 173 + .../DojoApp/dojo/dojo/cldr/nls/cs/islamic.js | 8 + .../cldr/nls/cs/islamic.js.uncompressed.js | 173 + .../DojoApp/dojo/dojo/cldr/nls/cs/japanese.js | 8 + .../cldr/nls/cs/japanese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/cs/number.js | 8 + .../cldr/nls/cs/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/cs/roc.js | 8 + .../dojo/cldr/nls/cs/roc.js.uncompressed.js | 56 + .../DojoApp/dojo/dojo/cldr/nls/currency.js | 8 + .../dojo/cldr/nls/currency.js.uncompressed.js | 51 + .../DojoApp/dojo/dojo/cldr/nls/da/buddhist.js | 8 + .../cldr/nls/da/buddhist.js.uncompressed.js | 274 + .../DojoApp/dojo/dojo/cldr/nls/da/currency.js | 8 + .../cldr/nls/da/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/da/generic.js | 8 + .../cldr/nls/da/generic.js.uncompressed.js | 91 + .../dojo/dojo/cldr/nls/da/gregorian.js | 8 + .../cldr/nls/da/gregorian.js.uncompressed.js | 314 + .../DojoApp/dojo/dojo/cldr/nls/da/hebrew.js | 8 + .../cldr/nls/da/hebrew.js.uncompressed.js | 190 + .../DojoApp/dojo/dojo/cldr/nls/da/islamic.js | 8 + .../cldr/nls/da/islamic.js.uncompressed.js | 190 + .../DojoApp/dojo/dojo/cldr/nls/da/japanese.js | 8 + .../cldr/nls/da/japanese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/da/number.js | 8 + .../cldr/nls/da/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/da/roc.js | 8 + .../dojo/cldr/nls/da/roc.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/dangi.js | 8 + .../dojo/cldr/nls/dangi.js.uncompressed.js | 446 + .../DojoApp/dojo/dojo/cldr/nls/de/buddhist.js | 8 + .../cldr/nls/de/buddhist.js.uncompressed.js | 251 + .../DojoApp/dojo/dojo/cldr/nls/de/chinese.js | 8 + .../cldr/nls/de/chinese.js.uncompressed.js | 87 + .../DojoApp/dojo/dojo/cldr/nls/de/currency.js | 8 + .../cldr/nls/de/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/de/generic.js | 8 + .../cldr/nls/de/generic.js.uncompressed.js | 91 + .../dojo/dojo/cldr/nls/de/gregorian.js | 8 + .../cldr/nls/de/gregorian.js.uncompressed.js | 316 + .../DojoApp/dojo/dojo/cldr/nls/de/hebrew.js | 8 + .../cldr/nls/de/hebrew.js.uncompressed.js | 167 + .../DojoApp/dojo/dojo/cldr/nls/de/islamic.js | 8 + .../cldr/nls/de/islamic.js.uncompressed.js | 167 + .../DojoApp/dojo/dojo/cldr/nls/de/japanese.js | 8 + .../cldr/nls/de/japanese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/de/number.js | 8 + .../cldr/nls/de/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/de/roc.js | 8 + .../dojo/cldr/nls/de/roc.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/el/buddhist.js | 8 + .../cldr/nls/el/buddhist.js.uncompressed.js | 267 + .../DojoApp/dojo/dojo/cldr/nls/el/currency.js | 8 + .../cldr/nls/el/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/el/generic.js | 8 + .../cldr/nls/el/generic.js.uncompressed.js | 95 + .../dojo/dojo/cldr/nls/el/gregorian.js | 8 + .../cldr/nls/el/gregorian.js.uncompressed.js | 309 + .../DojoApp/dojo/dojo/cldr/nls/el/hebrew.js | 8 + .../cldr/nls/el/hebrew.js.uncompressed.js | 189 + .../DojoApp/dojo/dojo/cldr/nls/el/japanese.js | 8 + .../cldr/nls/el/japanese.js.uncompressed.js | 72 + .../DojoApp/dojo/dojo/cldr/nls/el/number.js | 8 + .../cldr/nls/el/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/el/roc.js | 8 + .../dojo/cldr/nls/el/roc.js.uncompressed.js | 57 + .../dojo/dojo/cldr/nls/en-au/chinese.js | 8 + .../cldr/nls/en-au/chinese.js.uncompressed.js | 26 + .../dojo/dojo/cldr/nls/en-au/currency.js | 8 + .../nls/en-au/currency.js.uncompressed.js | 9 + .../dojo/dojo/cldr/nls/en-au/generic.js | 8 + .../cldr/nls/en-au/generic.js.uncompressed.js | 28 + .../dojo/dojo/cldr/nls/en-au/gregorian.js | 8 + .../nls/en-au/gregorian.js.uncompressed.js | 28 + .../dojo/dojo/cldr/nls/en-au/islamic.js | 8 + .../cldr/nls/en-au/islamic.js.uncompressed.js | 76 + .../dojo/dojo/cldr/nls/en-au/japanese.js | 8 + .../nls/en-au/japanese.js.uncompressed.js | 22 + .../dojo/dojo/cldr/nls/en-au/number.js | 8 + .../cldr/nls/en-au/number.js.uncompressed.js | 7 + .../dojo/dojo/cldr/nls/en-ca/currency.js | 8 + .../nls/en-ca/currency.js.uncompressed.js | 8 + .../dojo/dojo/cldr/nls/en-ca/generic.js | 8 + .../cldr/nls/en-ca/generic.js.uncompressed.js | 12 + .../dojo/dojo/cldr/nls/en-ca/gregorian.js | 8 + .../nls/en-ca/gregorian.js.uncompressed.js | 12 + .../dojo/dojo/cldr/nls/en-gb/chinese.js | 8 + .../cldr/nls/en-gb/chinese.js.uncompressed.js | 115 + .../dojo/dojo/cldr/nls/en-gb/currency.js | 8 + .../nls/en-gb/currency.js.uncompressed.js | 14 + .../dojo/dojo/cldr/nls/en-gb/generic.js | 8 + .../cldr/nls/en-gb/generic.js.uncompressed.js | 30 + .../dojo/dojo/cldr/nls/en-gb/gregorian.js | 8 + .../nls/en-gb/gregorian.js.uncompressed.js | 37 + .../dojo/dojo/cldr/nls/en-gb/indian.js | 8 + .../cldr/nls/en-gb/indian.js.uncompressed.js | 94 + .../dojo/dojo/cldr/nls/en-gb/islamic.js | 8 + .../cldr/nls/en-gb/islamic.js.uncompressed.js | 143 + .../dojo/dojo/cldr/nls/en-gb/japanese.js | 8 + .../nls/en-gb/japanese.js.uncompressed.js | 11 + .../DojoApp/dojo/dojo/cldr/nls/en/buddhist.js | 8 + .../cldr/nls/en/buddhist.js.uncompressed.js | 152 + .../DojoApp/dojo/dojo/cldr/nls/en/chinese.js | 8 + .../cldr/nls/en/chinese.js.uncompressed.js | 121 + .../DojoApp/dojo/dojo/cldr/nls/en/currency.js | 8 + .../cldr/nls/en/currency.js.uncompressed.js | 17 + .../DojoApp/dojo/dojo/cldr/nls/en/generic.js | 8 + .../cldr/nls/en/generic.js.uncompressed.js | 103 + .../dojo/dojo/cldr/nls/en/gregorian.js | 8 + .../cldr/nls/en/gregorian.js.uncompressed.js | 286 + .../DojoApp/dojo/dojo/cldr/nls/en/hebrew.js | 8 + .../cldr/nls/en/hebrew.js.uncompressed.js | 110 + .../DojoApp/dojo/dojo/cldr/nls/en/islamic.js | 8 + .../cldr/nls/en/islamic.js.uncompressed.js | 110 + .../DojoApp/dojo/dojo/cldr/nls/en/japanese.js | 8 + .../cldr/nls/en/japanese.js.uncompressed.js | 55 + .../DojoApp/dojo/dojo/cldr/nls/en/number.js | 8 + .../cldr/nls/en/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/en/roc.js | 8 + .../dojo/cldr/nls/en/roc.js.uncompressed.js | 55 + .../DojoApp/dojo/dojo/cldr/nls/es/buddhist.js | 8 + .../cldr/nls/es/buddhist.js.uncompressed.js | 284 + .../DojoApp/dojo/dojo/cldr/nls/es/chinese.js | 8 + .../cldr/nls/es/chinese.js.uncompressed.js | 87 + .../DojoApp/dojo/dojo/cldr/nls/es/currency.js | 8 + .../cldr/nls/es/currency.js.uncompressed.js | 22 + .../DojoApp/dojo/dojo/cldr/nls/es/generic.js | 8 + .../cldr/nls/es/generic.js.uncompressed.js | 93 + .../dojo/dojo/cldr/nls/es/gregorian.js | 8 + .../cldr/nls/es/gregorian.js.uncompressed.js | 312 + .../DojoApp/dojo/dojo/cldr/nls/es/hebrew.js | 8 + .../cldr/nls/es/hebrew.js.uncompressed.js | 200 + .../DojoApp/dojo/dojo/cldr/nls/es/islamic.js | 8 + .../cldr/nls/es/islamic.js.uncompressed.js | 200 + .../DojoApp/dojo/dojo/cldr/nls/es/japanese.js | 8 + .../cldr/nls/es/japanese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/es/number.js | 8 + .../cldr/nls/es/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/es/roc.js | 8 + .../dojo/cldr/nls/es/roc.js.uncompressed.js | 56 + .../dojo/dojo/cldr/nls/ethiopic-amete-alem.js | 8 + .../ethiopic-amete-alem.js.uncompressed.js | 472 + .../DojoApp/dojo/dojo/cldr/nls/ethiopic.js | 8 + .../dojo/cldr/nls/ethiopic.js.uncompressed.js | 463 + .../DojoApp/dojo/dojo/cldr/nls/fi/buddhist.js | 8 + .../cldr/nls/fi/buddhist.js.uncompressed.js | 275 + .../DojoApp/dojo/dojo/cldr/nls/fi/chinese.js | 8 + .../cldr/nls/fi/chinese.js.uncompressed.js | 73 + .../DojoApp/dojo/dojo/cldr/nls/fi/currency.js | 8 + .../cldr/nls/fi/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/fi/generic.js | 8 + .../cldr/nls/fi/generic.js.uncompressed.js | 93 + .../dojo/dojo/cldr/nls/fi/gregorian.js | 8 + .../cldr/nls/fi/gregorian.js.uncompressed.js | 313 + .../DojoApp/dojo/dojo/cldr/nls/fi/hebrew.js | 8 + .../cldr/nls/fi/hebrew.js.uncompressed.js | 282 + .../DojoApp/dojo/dojo/cldr/nls/fi/islamic.js | 8 + .../cldr/nls/fi/islamic.js.uncompressed.js | 244 + .../DojoApp/dojo/dojo/cldr/nls/fi/japanese.js | 8 + .../cldr/nls/fi/japanese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/fi/number.js | 8 + .../cldr/nls/fi/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/fi/roc.js | 8 + .../dojo/cldr/nls/fi/roc.js.uncompressed.js | 57 + .../dojo/dojo/cldr/nls/fr-ch/currency.js | 8 + .../nls/fr-ch/currency.js.uncompressed.js | 7 + .../dojo/dojo/cldr/nls/fr-ch/generic.js | 8 + .../cldr/nls/fr-ch/generic.js.uncompressed.js | 8 + .../dojo/dojo/cldr/nls/fr-ch/gregorian.js | 8 + .../nls/fr-ch/gregorian.js.uncompressed.js | 9 + .../dojo/dojo/cldr/nls/fr-ch/number.js | 8 + .../cldr/nls/fr-ch/number.js.uncompressed.js | 9 + .../DojoApp/dojo/dojo/cldr/nls/fr/buddhist.js | 8 + .../cldr/nls/fr/buddhist.js.uncompressed.js | 270 + .../DojoApp/dojo/dojo/cldr/nls/fr/chinese.js | 8 + .../cldr/nls/fr/chinese.js.uncompressed.js | 135 + .../DojoApp/dojo/dojo/cldr/nls/fr/coptic.js | 8 + .../cldr/nls/fr/coptic.js.uncompressed.js | 53 + .../DojoApp/dojo/dojo/cldr/nls/fr/currency.js | 8 + .../cldr/nls/fr/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/fr/dangi.js | 8 + .../dojo/cldr/nls/fr/dangi.js.uncompressed.js | 113 + .../DojoApp/dojo/dojo/cldr/nls/fr/ethiopic.js | 8 + .../cldr/nls/fr/ethiopic.js.uncompressed.js | 53 + .../DojoApp/dojo/dojo/cldr/nls/fr/generic.js | 8 + .../cldr/nls/fr/generic.js.uncompressed.js | 91 + .../dojo/dojo/cldr/nls/fr/gregorian.js | 8 + .../cldr/nls/fr/gregorian.js.uncompressed.js | 315 + .../DojoApp/dojo/dojo/cldr/nls/fr/hebrew.js | 8 + .../cldr/nls/fr/hebrew.js.uncompressed.js | 238 + .../DojoApp/dojo/dojo/cldr/nls/fr/indian.js | 8 + .../cldr/nls/fr/indian.js.uncompressed.js | 53 + .../DojoApp/dojo/dojo/cldr/nls/fr/islamic.js | 8 + .../cldr/nls/fr/islamic.js.uncompressed.js | 267 + .../DojoApp/dojo/dojo/cldr/nls/fr/japanese.js | 8 + .../cldr/nls/fr/japanese.js.uncompressed.js | 84 + .../DojoApp/dojo/dojo/cldr/nls/fr/number.js | 8 + .../cldr/nls/fr/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/fr/persian.js | 8 + .../cldr/nls/fr/persian.js.uncompressed.js | 260 + .../DojoApp/dojo/dojo/cldr/nls/fr/roc.js | 8 + .../dojo/cldr/nls/fr/roc.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/generic.js | 8 + .../dojo/cldr/nls/generic.js.uncompressed.js | 467 + .../DojoApp/dojo/dojo/cldr/nls/gregorian.js | 8 + .../cldr/nls/gregorian.js.uncompressed.js | 356 + .../DojoApp/dojo/dojo/cldr/nls/he/currency.js | 8 + .../cldr/nls/he/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/he/generic.js | 8 + .../cldr/nls/he/generic.js.uncompressed.js | 91 + .../dojo/dojo/cldr/nls/he/gregorian.js | 8 + .../cldr/nls/he/gregorian.js.uncompressed.js | 312 + .../DojoApp/dojo/dojo/cldr/nls/he/hebrew.js | 8 + .../cldr/nls/he/hebrew.js.uncompressed.js | 281 + .../DojoApp/dojo/dojo/cldr/nls/he/islamic.js | 8 + .../cldr/nls/he/islamic.js.uncompressed.js | 258 + .../DojoApp/dojo/dojo/cldr/nls/he/japanese.js | 8 + .../cldr/nls/he/japanese.js.uncompressed.js | 129 + .../DojoApp/dojo/dojo/cldr/nls/he/number.js | 8 + .../cldr/nls/he/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/hebrew.js | 8 + .../dojo/cldr/nls/hebrew.js.uncompressed.js | 357 + .../DojoApp/dojo/dojo/cldr/nls/hu/buddhist.js | 8 + .../cldr/nls/hu/buddhist.js.uncompressed.js | 291 + .../DojoApp/dojo/dojo/cldr/nls/hu/chinese.js | 8 + .../cldr/nls/hu/chinese.js.uncompressed.js | 109 + .../DojoApp/dojo/dojo/cldr/nls/hu/coptic.js | 8 + .../cldr/nls/hu/coptic.js.uncompressed.js | 113 + .../DojoApp/dojo/dojo/cldr/nls/hu/currency.js | 8 + .../cldr/nls/hu/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/hu/ethiopic.js | 8 + .../cldr/nls/hu/ethiopic.js.uncompressed.js | 113 + .../DojoApp/dojo/dojo/cldr/nls/hu/generic.js | 8 + .../cldr/nls/hu/generic.js.uncompressed.js | 92 + .../dojo/dojo/cldr/nls/hu/gregorian.js | 8 + .../cldr/nls/hu/gregorian.js.uncompressed.js | 309 + .../DojoApp/dojo/dojo/cldr/nls/hu/hebrew.js | 8 + .../cldr/nls/hu/hebrew.js.uncompressed.js | 271 + .../DojoApp/dojo/dojo/cldr/nls/hu/indian.js | 8 + .../cldr/nls/hu/indian.js.uncompressed.js | 109 + .../DojoApp/dojo/dojo/cldr/nls/hu/islamic.js | 8 + .../cldr/nls/hu/islamic.js.uncompressed.js | 277 + .../DojoApp/dojo/dojo/cldr/nls/hu/japanese.js | 8 + .../cldr/nls/hu/japanese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/hu/number.js | 8 + .../cldr/nls/hu/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/hu/persian.js | 8 + .../cldr/nls/hu/persian.js.uncompressed.js | 282 + .../DojoApp/dojo/dojo/cldr/nls/hu/roc.js | 8 + .../dojo/cldr/nls/hu/roc.js.uncompressed.js | 56 + .../DojoApp/dojo/dojo/cldr/nls/indian.js | 8 + .../dojo/cldr/nls/indian.js.uncompressed.js | 451 + .../dojo/dojo/cldr/nls/islamic-civil.js | 8 + .../cldr/nls/islamic-civil.js.uncompressed.js | 318 + .../dojo/dojo/cldr/nls/islamic-rgsa.js | 8 + .../cldr/nls/islamic-rgsa.js.uncompressed.js | 462 + .../dojo/dojo/cldr/nls/islamic-tbla.js | 8 + .../cldr/nls/islamic-tbla.js.uncompressed.js | 462 + .../dojo/dojo/cldr/nls/islamic-umalqura.js | 8 + .../nls/islamic-umalqura.js.uncompressed.js | 462 + .../DojoApp/dojo/dojo/cldr/nls/islamic.js | 8 + .../dojo/cldr/nls/islamic.js.uncompressed.js | 346 + .../DojoApp/dojo/dojo/cldr/nls/it/buddhist.js | 8 + .../cldr/nls/it/buddhist.js.uncompressed.js | 274 + .../DojoApp/dojo/dojo/cldr/nls/it/chinese.js | 8 + .../cldr/nls/it/chinese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/it/currency.js | 8 + .../cldr/nls/it/currency.js.uncompressed.js | 22 + .../DojoApp/dojo/dojo/cldr/nls/it/generic.js | 8 + .../cldr/nls/it/generic.js.uncompressed.js | 91 + .../dojo/dojo/cldr/nls/it/gregorian.js | 8 + .../cldr/nls/it/gregorian.js.uncompressed.js | 313 + .../DojoApp/dojo/dojo/cldr/nls/it/hebrew.js | 8 + .../cldr/nls/it/hebrew.js.uncompressed.js | 184 + .../DojoApp/dojo/dojo/cldr/nls/it/islamic.js | 8 + .../cldr/nls/it/islamic.js.uncompressed.js | 184 + .../DojoApp/dojo/dojo/cldr/nls/it/japanese.js | 8 + .../cldr/nls/it/japanese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/it/number.js | 8 + .../cldr/nls/it/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/it/roc.js | 8 + .../dojo/cldr/nls/it/roc.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/ja/buddhist.js | 8 + .../cldr/nls/ja/buddhist.js.uncompressed.js | 250 + .../DojoApp/dojo/dojo/cldr/nls/ja/chinese.js | 8 + .../cldr/nls/ja/chinese.js.uncompressed.js | 175 + .../DojoApp/dojo/dojo/cldr/nls/ja/coptic.js | 8 + .../cldr/nls/ja/coptic.js.uncompressed.js | 143 + .../DojoApp/dojo/dojo/cldr/nls/ja/currency.js | 8 + .../cldr/nls/ja/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/ja/dangi.js | 8 + .../dojo/cldr/nls/ja/dangi.js.uncompressed.js | 141 + .../DojoApp/dojo/dojo/cldr/nls/ja/ethiopic.js | 8 + .../cldr/nls/ja/ethiopic.js.uncompressed.js | 143 + .../DojoApp/dojo/dojo/cldr/nls/ja/generic.js | 8 + .../cldr/nls/ja/generic.js.uncompressed.js | 96 + .../dojo/dojo/cldr/nls/ja/gregorian.js | 8 + .../cldr/nls/ja/gregorian.js.uncompressed.js | 318 + .../DojoApp/dojo/dojo/cldr/nls/ja/hebrew.js | 8 + .../cldr/nls/ja/hebrew.js.uncompressed.js | 278 + .../DojoApp/dojo/dojo/cldr/nls/ja/indian.js | 8 + .../cldr/nls/ja/indian.js.uncompressed.js | 140 + .../DojoApp/dojo/dojo/cldr/nls/ja/islamic.js | 8 + .../cldr/nls/ja/islamic.js.uncompressed.js | 266 + .../DojoApp/dojo/dojo/cldr/nls/ja/japanese.js | 8 + .../cldr/nls/ja/japanese.js.uncompressed.js | 570 + .../DojoApp/dojo/dojo/cldr/nls/ja/number.js | 8 + .../cldr/nls/ja/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/ja/persian.js | 8 + .../cldr/nls/ja/persian.js.uncompressed.js | 266 + .../DojoApp/dojo/dojo/cldr/nls/ja/roc.js | 8 + .../dojo/cldr/nls/ja/roc.js.uncompressed.js | 69 + .../DojoApp/dojo/dojo/cldr/nls/japanese.js | 8 + .../dojo/cldr/nls/japanese.js.uncompressed.js | 1171 + .../DojoApp/dojo/dojo/cldr/nls/ko/buddhist.js | 8 + .../cldr/nls/ko/buddhist.js.uncompressed.js | 237 + .../DojoApp/dojo/dojo/cldr/nls/ko/chinese.js | 8 + .../cldr/nls/ko/chinese.js.uncompressed.js | 91 + .../DojoApp/dojo/dojo/cldr/nls/ko/coptic.js | 8 + .../cldr/nls/ko/coptic.js.uncompressed.js | 98 + .../DojoApp/dojo/dojo/cldr/nls/ko/currency.js | 8 + .../cldr/nls/ko/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/ko/dangi.js | 8 + .../dojo/cldr/nls/ko/dangi.js.uncompressed.js | 141 + .../DojoApp/dojo/dojo/cldr/nls/ko/ethiopic.js | 8 + .../cldr/nls/ko/ethiopic.js.uncompressed.js | 98 + .../DojoApp/dojo/dojo/cldr/nls/ko/generic.js | 8 + .../cldr/nls/ko/generic.js.uncompressed.js | 97 + .../dojo/dojo/cldr/nls/ko/gregorian.js | 8 + .../cldr/nls/ko/gregorian.js.uncompressed.js | 313 + .../DojoApp/dojo/dojo/cldr/nls/ko/hebrew.js | 8 + .../cldr/nls/ko/hebrew.js.uncompressed.js | 209 + .../DojoApp/dojo/dojo/cldr/nls/ko/islamic.js | 8 + .../cldr/nls/ko/islamic.js.uncompressed.js | 161 + .../DojoApp/dojo/dojo/cldr/nls/ko/japanese.js | 8 + .../cldr/nls/ko/japanese.js.uncompressed.js | 291 + .../DojoApp/dojo/dojo/cldr/nls/ko/number.js | 8 + .../cldr/nls/ko/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/ko/roc.js | 8 + .../dojo/cldr/nls/ko/roc.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/nb/buddhist.js | 8 + .../cldr/nls/nb/buddhist.js.uncompressed.js | 274 + .../DojoApp/dojo/dojo/cldr/nls/nb/currency.js | 8 + .../cldr/nls/nb/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/nb/generic.js | 8 + .../cldr/nls/nb/generic.js.uncompressed.js | 93 + .../dojo/dojo/cldr/nls/nb/gregorian.js | 8 + .../cldr/nls/nb/gregorian.js.uncompressed.js | 313 + .../DojoApp/dojo/dojo/cldr/nls/nb/hebrew.js | 8 + .../cldr/nls/nb/hebrew.js.uncompressed.js | 190 + .../DojoApp/dojo/dojo/cldr/nls/nb/islamic.js | 8 + .../cldr/nls/nb/islamic.js.uncompressed.js | 190 + .../DojoApp/dojo/dojo/cldr/nls/nb/japanese.js | 8 + .../cldr/nls/nb/japanese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/nb/number.js | 8 + .../cldr/nls/nb/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/nb/roc.js | 8 + .../dojo/cldr/nls/nb/roc.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/nl/buddhist.js | 8 + .../cldr/nls/nl/buddhist.js.uncompressed.js | 268 + .../DojoApp/dojo/dojo/cldr/nls/nl/chinese.js | 8 + .../cldr/nls/nl/chinese.js.uncompressed.js | 116 + .../DojoApp/dojo/dojo/cldr/nls/nl/coptic.js | 8 + .../cldr/nls/nl/coptic.js.uncompressed.js | 143 + .../DojoApp/dojo/dojo/cldr/nls/nl/currency.js | 8 + .../cldr/nls/nl/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/nl/dangi.js | 8 + .../dojo/cldr/nls/nl/dangi.js.uncompressed.js | 85 + .../DojoApp/dojo/dojo/cldr/nls/nl/ethiopic.js | 8 + .../cldr/nls/nl/ethiopic.js.uncompressed.js | 143 + .../DojoApp/dojo/dojo/cldr/nls/nl/generic.js | 8 + .../cldr/nls/nl/generic.js.uncompressed.js | 92 + .../dojo/dojo/cldr/nls/nl/gregorian.js | 8 + .../cldr/nls/nl/gregorian.js.uncompressed.js | 315 + .../DojoApp/dojo/dojo/cldr/nls/nl/hebrew.js | 8 + .../cldr/nls/nl/hebrew.js.uncompressed.js | 243 + .../DojoApp/dojo/dojo/cldr/nls/nl/indian.js | 8 + .../cldr/nls/nl/indian.js.uncompressed.js | 140 + .../DojoApp/dojo/dojo/cldr/nls/nl/islamic.js | 8 + .../cldr/nls/nl/islamic.js.uncompressed.js | 274 + .../DojoApp/dojo/dojo/cldr/nls/nl/japanese.js | 8 + .../cldr/nls/nl/japanese.js.uncompressed.js | 323 + .../DojoApp/dojo/dojo/cldr/nls/nl/number.js | 8 + .../cldr/nls/nl/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/nl/persian.js | 8 + .../cldr/nls/nl/persian.js.uncompressed.js | 263 + .../DojoApp/dojo/dojo/cldr/nls/nl/roc.js | 8 + .../dojo/cldr/nls/nl/roc.js.uncompressed.js | 85 + .../DojoApp/dojo/dojo/cldr/nls/number.js | 8 + .../dojo/cldr/nls/number.js.uncompressed.js | 64 + .../DojoApp/dojo/dojo/cldr/nls/persian.js | 8 + .../dojo/cldr/nls/persian.js.uncompressed.js | 332 + .../DojoApp/dojo/dojo/cldr/nls/pl/buddhist.js | 8 + .../cldr/nls/pl/buddhist.js.uncompressed.js | 267 + .../DojoApp/dojo/dojo/cldr/nls/pl/chinese.js | 8 + .../cldr/nls/pl/chinese.js.uncompressed.js | 113 + .../DojoApp/dojo/dojo/cldr/nls/pl/coptic.js | 8 + .../cldr/nls/pl/coptic.js.uncompressed.js | 113 + .../DojoApp/dojo/dojo/cldr/nls/pl/currency.js | 8 + .../cldr/nls/pl/currency.js.uncompressed.js | 22 + .../DojoApp/dojo/dojo/cldr/nls/pl/ethiopic.js | 8 + .../cldr/nls/pl/ethiopic.js.uncompressed.js | 113 + .../DojoApp/dojo/dojo/cldr/nls/pl/generic.js | 8 + .../cldr/nls/pl/generic.js.uncompressed.js | 94 + .../dojo/dojo/cldr/nls/pl/gregorian.js | 8 + .../cldr/nls/pl/gregorian.js.uncompressed.js | 315 + .../DojoApp/dojo/dojo/cldr/nls/pl/hebrew.js | 8 + .../cldr/nls/pl/hebrew.js.uncompressed.js | 243 + .../DojoApp/dojo/dojo/cldr/nls/pl/indian.js | 8 + .../cldr/nls/pl/indian.js.uncompressed.js | 109 + .../DojoApp/dojo/dojo/cldr/nls/pl/islamic.js | 8 + .../cldr/nls/pl/islamic.js.uncompressed.js | 250 + .../DojoApp/dojo/dojo/cldr/nls/pl/japanese.js | 8 + .../cldr/nls/pl/japanese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/pl/number.js | 8 + .../cldr/nls/pl/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/pl/persian.js | 8 + .../cldr/nls/pl/persian.js.uncompressed.js | 264 + .../DojoApp/dojo/dojo/cldr/nls/pl/roc.js | 8 + .../dojo/cldr/nls/pl/roc.js.uncompressed.js | 57 + .../dojo/dojo/cldr/nls/pt-pt/buddhist.js | 8 + .../nls/pt-pt/buddhist.js.uncompressed.js | 266 + .../dojo/dojo/cldr/nls/pt-pt/chinese.js | 8 + .../cldr/nls/pt-pt/chinese.js.uncompressed.js | 140 + .../dojo/dojo/cldr/nls/pt-pt/currency.js | 8 + .../nls/pt-pt/currency.js.uncompressed.js | 23 + .../dojo/dojo/cldr/nls/pt-pt/generic.js | 8 + .../cldr/nls/pt-pt/generic.js.uncompressed.js | 88 + .../dojo/dojo/cldr/nls/pt-pt/gregorian.js | 8 + .../nls/pt-pt/gregorian.js.uncompressed.js | 321 + .../dojo/dojo/cldr/nls/pt-pt/hebrew.js | 8 + .../cldr/nls/pt-pt/hebrew.js.uncompressed.js | 182 + .../dojo/dojo/cldr/nls/pt-pt/islamic.js | 8 + .../cldr/nls/pt-pt/islamic.js.uncompressed.js | 182 + .../dojo/dojo/cldr/nls/pt-pt/japanese.js | 8 + .../nls/pt-pt/japanese.js.uncompressed.js | 53 + .../dojo/dojo/cldr/nls/pt-pt/number.js | 8 + .../cldr/nls/pt-pt/number.js.uncompressed.js | 22 + .../DojoApp/dojo/dojo/cldr/nls/pt-pt/roc.js | 8 + .../cldr/nls/pt-pt/roc.js.uncompressed.js | 53 + .../DojoApp/dojo/dojo/cldr/nls/pt/buddhist.js | 8 + .../cldr/nls/pt/buddhist.js.uncompressed.js | 258 + .../DojoApp/dojo/dojo/cldr/nls/pt/chinese.js | 8 + .../cldr/nls/pt/chinese.js.uncompressed.js | 141 + .../DojoApp/dojo/dojo/cldr/nls/pt/coptic.js | 8 + .../cldr/nls/pt/coptic.js.uncompressed.js | 113 + .../DojoApp/dojo/dojo/cldr/nls/pt/currency.js | 8 + .../cldr/nls/pt/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/pt/ethiopic.js | 8 + .../cldr/nls/pt/ethiopic.js.uncompressed.js | 113 + .../DojoApp/dojo/dojo/cldr/nls/pt/generic.js | 8 + .../cldr/nls/pt/generic.js.uncompressed.js | 90 + .../dojo/dojo/cldr/nls/pt/gregorian.js | 8 + .../cldr/nls/pt/gregorian.js.uncompressed.js | 316 + .../DojoApp/dojo/dojo/cldr/nls/pt/hebrew.js | 8 + .../cldr/nls/pt/hebrew.js.uncompressed.js | 235 + .../DojoApp/dojo/dojo/cldr/nls/pt/indian.js | 8 + .../cldr/nls/pt/indian.js.uncompressed.js | 109 + .../DojoApp/dojo/dojo/cldr/nls/pt/islamic.js | 8 + .../cldr/nls/pt/islamic.js.uncompressed.js | 174 + .../DojoApp/dojo/dojo/cldr/nls/pt/japanese.js | 8 + .../cldr/nls/pt/japanese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/pt/number.js | 8 + .../cldr/nls/pt/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/pt/persian.js | 8 + .../cldr/nls/pt/persian.js.uncompressed.js | 255 + .../DojoApp/dojo/dojo/cldr/nls/pt/roc.js | 8 + .../dojo/cldr/nls/pt/roc.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/ro/buddhist.js | 8 + .../cldr/nls/ro/buddhist.js.uncompressed.js | 271 + .../DojoApp/dojo/dojo/cldr/nls/ro/chinese.js | 8 + .../cldr/nls/ro/chinese.js.uncompressed.js | 109 + .../DojoApp/dojo/dojo/cldr/nls/ro/coptic.js | 8 + .../cldr/nls/ro/coptic.js.uncompressed.js | 53 + .../DojoApp/dojo/dojo/cldr/nls/ro/currency.js | 8 + .../cldr/nls/ro/currency.js.uncompressed.js | 22 + .../DojoApp/dojo/dojo/cldr/nls/ro/ethiopic.js | 8 + .../cldr/nls/ro/ethiopic.js.uncompressed.js | 53 + .../DojoApp/dojo/dojo/cldr/nls/ro/generic.js | 8 + .../cldr/nls/ro/generic.js.uncompressed.js | 92 + .../dojo/dojo/cldr/nls/ro/gregorian.js | 8 + .../cldr/nls/ro/gregorian.js.uncompressed.js | 315 + .../DojoApp/dojo/dojo/cldr/nls/ro/hebrew.js | 8 + .../cldr/nls/ro/hebrew.js.uncompressed.js | 242 + .../DojoApp/dojo/dojo/cldr/nls/ro/islamic.js | 8 + .../cldr/nls/ro/islamic.js.uncompressed.js | 181 + .../DojoApp/dojo/dojo/cldr/nls/ro/number.js | 8 + .../cldr/nls/ro/number.js.uncompressed.js | 23 + .../webroot/DojoApp/dojo/dojo/cldr/nls/roc.js | 8 + .../dojo/dojo/cldr/nls/roc.js.uncompressed.js | 471 + .../DojoApp/dojo/dojo/cldr/nls/ru/buddhist.js | 8 + .../cldr/nls/ru/buddhist.js.uncompressed.js | 272 + .../DojoApp/dojo/dojo/cldr/nls/ru/chinese.js | 8 + .../cldr/nls/ru/chinese.js.uncompressed.js | 144 + .../DojoApp/dojo/dojo/cldr/nls/ru/coptic.js | 8 + .../cldr/nls/ru/coptic.js.uncompressed.js | 128 + .../DojoApp/dojo/dojo/cldr/nls/ru/currency.js | 8 + .../cldr/nls/ru/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/ru/ethiopic.js | 8 + .../cldr/nls/ru/ethiopic.js.uncompressed.js | 128 + .../DojoApp/dojo/dojo/cldr/nls/ru/generic.js | 8 + .../cldr/nls/ru/generic.js.uncompressed.js | 92 + .../dojo/dojo/cldr/nls/ru/gregorian.js | 8 + .../cldr/nls/ru/gregorian.js.uncompressed.js | 313 + .../DojoApp/dojo/dojo/cldr/nls/ru/hebrew.js | 8 + .../cldr/nls/ru/hebrew.js.uncompressed.js | 249 + .../DojoApp/dojo/dojo/cldr/nls/ru/indian.js | 8 + .../cldr/nls/ru/indian.js.uncompressed.js | 123 + .../DojoApp/dojo/dojo/cldr/nls/ru/islamic.js | 8 + .../cldr/nls/ru/islamic.js.uncompressed.js | 255 + .../DojoApp/dojo/dojo/cldr/nls/ru/japanese.js | 8 + .../cldr/nls/ru/japanese.js.uncompressed.js | 291 + .../DojoApp/dojo/dojo/cldr/nls/ru/number.js | 8 + .../cldr/nls/ru/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/ru/persian.js | 8 + .../cldr/nls/ru/persian.js.uncompressed.js | 269 + .../DojoApp/dojo/dojo/cldr/nls/ru/roc.js | 8 + .../dojo/cldr/nls/ru/roc.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/sk/currency.js | 8 + .../cldr/nls/sk/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/sk/generic.js | 8 + .../cldr/nls/sk/generic.js.uncompressed.js | 96 + .../dojo/dojo/cldr/nls/sk/gregorian.js | 8 + .../cldr/nls/sk/gregorian.js.uncompressed.js | 310 + .../DojoApp/dojo/dojo/cldr/nls/sk/number.js | 8 + .../cldr/nls/sk/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/sl/currency.js | 8 + .../cldr/nls/sl/currency.js.uncompressed.js | 18 + .../DojoApp/dojo/dojo/cldr/nls/sl/generic.js | 8 + .../cldr/nls/sl/generic.js.uncompressed.js | 92 + .../dojo/dojo/cldr/nls/sl/gregorian.js | 8 + .../cldr/nls/sl/gregorian.js.uncompressed.js | 309 + .../DojoApp/dojo/dojo/cldr/nls/sl/number.js | 8 + .../cldr/nls/sl/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/sv/buddhist.js | 8 + .../cldr/nls/sv/buddhist.js.uncompressed.js | 264 + .../DojoApp/dojo/dojo/cldr/nls/sv/coptic.js | 8 + .../cldr/nls/sv/coptic.js.uncompressed.js | 113 + .../DojoApp/dojo/dojo/cldr/nls/sv/currency.js | 8 + .../cldr/nls/sv/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/sv/dangi.js | 8 + .../dojo/cldr/nls/sv/dangi.js.uncompressed.js | 53 + .../DojoApp/dojo/dojo/cldr/nls/sv/ethiopic.js | 8 + .../cldr/nls/sv/ethiopic.js.uncompressed.js | 113 + .../DojoApp/dojo/dojo/cldr/nls/sv/generic.js | 8 + .../cldr/nls/sv/generic.js.uncompressed.js | 95 + .../dojo/dojo/cldr/nls/sv/gregorian.js | 8 + .../cldr/nls/sv/gregorian.js.uncompressed.js | 317 + .../DojoApp/dojo/dojo/cldr/nls/sv/hebrew.js | 8 + .../cldr/nls/sv/hebrew.js.uncompressed.js | 243 + .../DojoApp/dojo/dojo/cldr/nls/sv/indian.js | 8 + .../cldr/nls/sv/indian.js.uncompressed.js | 112 + .../DojoApp/dojo/dojo/cldr/nls/sv/islamic.js | 8 + .../cldr/nls/sv/islamic.js.uncompressed.js | 236 + .../DojoApp/dojo/dojo/cldr/nls/sv/japanese.js | 8 + .../cldr/nls/sv/japanese.js.uncompressed.js | 295 + .../DojoApp/dojo/dojo/cldr/nls/sv/number.js | 8 + .../cldr/nls/sv/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/sv/persian.js | 8 + .../cldr/nls/sv/persian.js.uncompressed.js | 264 + .../DojoApp/dojo/dojo/cldr/nls/sv/roc.js | 8 + .../dojo/cldr/nls/sv/roc.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/th/buddhist.js | 8 + .../cldr/nls/th/buddhist.js.uncompressed.js | 269 + .../DojoApp/dojo/dojo/cldr/nls/th/chinese.js | 8 + .../cldr/nls/th/chinese.js.uncompressed.js | 141 + .../DojoApp/dojo/dojo/cldr/nls/th/coptic.js | 8 + .../cldr/nls/th/coptic.js.uncompressed.js | 143 + .../DojoApp/dojo/dojo/cldr/nls/th/currency.js | 8 + .../cldr/nls/th/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/th/dangi.js | 8 + .../dojo/cldr/nls/th/dangi.js.uncompressed.js | 141 + .../DojoApp/dojo/dojo/cldr/nls/th/ethiopic.js | 8 + .../cldr/nls/th/ethiopic.js.uncompressed.js | 143 + .../DojoApp/dojo/dojo/cldr/nls/th/generic.js | 8 + .../cldr/nls/th/generic.js.uncompressed.js | 90 + .../dojo/dojo/cldr/nls/th/gregorian.js | 8 + .../cldr/nls/th/gregorian.js.uncompressed.js | 312 + .../DojoApp/dojo/dojo/cldr/nls/th/hebrew.js | 8 + .../cldr/nls/th/hebrew.js.uncompressed.js | 246 + .../DojoApp/dojo/dojo/cldr/nls/th/indian.js | 8 + .../cldr/nls/th/indian.js.uncompressed.js | 140 + .../DojoApp/dojo/dojo/cldr/nls/th/islamic.js | 8 + .../cldr/nls/th/islamic.js.uncompressed.js | 270 + .../DojoApp/dojo/dojo/cldr/nls/th/japanese.js | 8 + .../cldr/nls/th/japanese.js.uncompressed.js | 328 + .../DojoApp/dojo/dojo/cldr/nls/th/number.js | 8 + .../cldr/nls/th/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/th/persian.js | 8 + .../cldr/nls/th/persian.js.uncompressed.js | 266 + .../DojoApp/dojo/dojo/cldr/nls/th/roc.js | 8 + .../dojo/cldr/nls/th/roc.js.uncompressed.js | 89 + .../DojoApp/dojo/dojo/cldr/nls/tr/buddhist.js | 8 + .../cldr/nls/tr/buddhist.js.uncompressed.js | 270 + .../DojoApp/dojo/dojo/cldr/nls/tr/coptic.js | 8 + .../cldr/nls/tr/coptic.js.uncompressed.js | 68 + .../DojoApp/dojo/dojo/cldr/nls/tr/currency.js | 8 + .../cldr/nls/tr/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/tr/ethiopic.js | 8 + .../cldr/nls/tr/ethiopic.js.uncompressed.js | 68 + .../DojoApp/dojo/dojo/cldr/nls/tr/generic.js | 8 + .../cldr/nls/tr/generic.js.uncompressed.js | 95 + .../dojo/dojo/cldr/nls/tr/gregorian.js | 8 + .../cldr/nls/tr/gregorian.js.uncompressed.js | 309 + .../DojoApp/dojo/dojo/cldr/nls/tr/hebrew.js | 8 + .../cldr/nls/tr/hebrew.js.uncompressed.js | 244 + .../DojoApp/dojo/dojo/cldr/nls/tr/islamic.js | 8 + .../cldr/nls/tr/islamic.js.uncompressed.js | 262 + .../DojoApp/dojo/dojo/cldr/nls/tr/japanese.js | 8 + .../cldr/nls/tr/japanese.js.uncompressed.js | 57 + .../DojoApp/dojo/dojo/cldr/nls/tr/number.js | 8 + .../cldr/nls/tr/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/tr/persian.js | 8 + .../cldr/nls/tr/persian.js.uncompressed.js | 267 + .../DojoApp/dojo/dojo/cldr/nls/tr/roc.js | 8 + .../dojo/cldr/nls/tr/roc.js.uncompressed.js | 57 + .../dojo/dojo/cldr/nls/zh-hant/buddhist.js | 8 + .../nls/zh-hant/buddhist.js.uncompressed.js | 257 + .../dojo/dojo/cldr/nls/zh-hant/chinese.js | 8 + .../nls/zh-hant/chinese.js.uncompressed.js | 163 + .../dojo/dojo/cldr/nls/zh-hant/coptic.js | 8 + .../nls/zh-hant/coptic.js.uncompressed.js | 143 + .../dojo/dojo/cldr/nls/zh-hant/currency.js | 8 + .../nls/zh-hant/currency.js.uncompressed.js | 23 + .../dojo/dojo/cldr/nls/zh-hant/dangi.js | 8 + .../cldr/nls/zh-hant/dangi.js.uncompressed.js | 141 + .../dojo/dojo/cldr/nls/zh-hant/ethiopic.js | 8 + .../nls/zh-hant/ethiopic.js.uncompressed.js | 143 + .../dojo/dojo/cldr/nls/zh-hant/generic.js | 8 + .../nls/zh-hant/generic.js.uncompressed.js | 90 + .../dojo/dojo/cldr/nls/zh-hant/gregorian.js | 8 + .../nls/zh-hant/gregorian.js.uncompressed.js | 328 + .../dojo/dojo/cldr/nls/zh-hant/hebrew.js | 8 + .../nls/zh-hant/hebrew.js.uncompressed.js | 264 + .../dojo/dojo/cldr/nls/zh-hant/indian.js | 8 + .../nls/zh-hant/indian.js.uncompressed.js | 140 + .../dojo/dojo/cldr/nls/zh-hant/islamic.js | 8 + .../nls/zh-hant/islamic.js.uncompressed.js | 285 + .../dojo/dojo/cldr/nls/zh-hant/japanese.js | 8 + .../nls/zh-hant/japanese.js.uncompressed.js | 328 + .../dojo/dojo/cldr/nls/zh-hant/number.js | 8 + .../nls/zh-hant/number.js.uncompressed.js | 23 + .../dojo/dojo/cldr/nls/zh-hant/persian.js | 8 + .../nls/zh-hant/persian.js.uncompressed.js | 284 + .../DojoApp/dojo/dojo/cldr/nls/zh-hant/roc.js | 8 + .../cldr/nls/zh-hant/roc.js.uncompressed.js | 83 + .../dojo/dojo/cldr/nls/zh-hk/currency.js | 8 + .../nls/zh-hk/currency.js.uncompressed.js | 17 + .../dojo/dojo/cldr/nls/zh-hk/gregorian.js | 8 + .../nls/zh-hk/gregorian.js.uncompressed.js | 127 + .../dojo/dojo/cldr/nls/zh-hk/number.js | 8 + .../cldr/nls/zh-hk/number.js.uncompressed.js | 9 + .../dojo/dojo/cldr/nls/zh-tw/currency.js | 8 + .../nls/zh-tw/currency.js.uncompressed.js | 17 + .../dojo/dojo/cldr/nls/zh-tw/gregorian.js | 8 + .../nls/zh-tw/gregorian.js.uncompressed.js | 127 + .../dojo/dojo/cldr/nls/zh-tw/number.js | 8 + .../cldr/nls/zh-tw/number.js.uncompressed.js | 9 + .../DojoApp/dojo/dojo/cldr/nls/zh/buddhist.js | 8 + .../cldr/nls/zh/buddhist.js.uncompressed.js | 255 + .../DojoApp/dojo/dojo/cldr/nls/zh/chinese.js | 8 + .../cldr/nls/zh/chinese.js.uncompressed.js | 163 + .../DojoApp/dojo/dojo/cldr/nls/zh/coptic.js | 8 + .../cldr/nls/zh/coptic.js.uncompressed.js | 143 + .../DojoApp/dojo/dojo/cldr/nls/zh/currency.js | 8 + .../cldr/nls/zh/currency.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/zh/ethiopic.js | 8 + .../cldr/nls/zh/ethiopic.js.uncompressed.js | 143 + .../DojoApp/dojo/dojo/cldr/nls/zh/generic.js | 8 + .../cldr/nls/zh/generic.js.uncompressed.js | 91 + .../dojo/dojo/cldr/nls/zh/gregorian.js | 8 + .../cldr/nls/zh/gregorian.js.uncompressed.js | 324 + .../DojoApp/dojo/dojo/cldr/nls/zh/hebrew.js | 8 + .../cldr/nls/zh/hebrew.js.uncompressed.js | 261 + .../DojoApp/dojo/dojo/cldr/nls/zh/indian.js | 8 + .../cldr/nls/zh/indian.js.uncompressed.js | 140 + .../DojoApp/dojo/dojo/cldr/nls/zh/islamic.js | 8 + .../cldr/nls/zh/islamic.js.uncompressed.js | 282 + .../DojoApp/dojo/dojo/cldr/nls/zh/japanese.js | 8 + .../cldr/nls/zh/japanese.js.uncompressed.js | 328 + .../DojoApp/dojo/dojo/cldr/nls/zh/number.js | 8 + .../cldr/nls/zh/number.js.uncompressed.js | 23 + .../DojoApp/dojo/dojo/cldr/nls/zh/persian.js | 8 + .../cldr/nls/zh/persian.js.uncompressed.js | 281 + .../DojoApp/dojo/dojo/cldr/nls/zh/roc.js | 8 + .../dojo/cldr/nls/zh/roc.js.uncompressed.js | 84 + .../DojoApp/dojo/dojo/cldr/supplemental.js | 41 + .../dojo/cldr/supplemental.js.uncompressed.js | 127 + .../webroot/DojoApp/dojo/dojo/colors.js | 75 + .../dojo/dojo/colors.js.uncompressed.js | 232 + .../webroot/DojoApp/dojo/dojo/cookie.js | 49 + .../dojo/dojo/cookie.js.uncompressed.js | 98 + .../webroot/DojoApp/dojo/dojo/currency.js | 33 + .../dojo/dojo/currency.js.uncompressed.js | 130 + .../dojo/dojo/data/ItemFileReadStore.js | 561 + .../data/ItemFileReadStore.js.uncompressed.js | 951 + .../dojo/dojo/data/ItemFileWriteStore.js | 499 + .../ItemFileWriteStore.js.uncompressed.js | 816 + .../DojoApp/dojo/dojo/data/ObjectStore.js | 292 + .../dojo/data/ObjectStore.js.uncompressed.js | 544 + .../DojoApp/dojo/dojo/data/api/Identity.js | 20 + .../dojo/data/api/Identity.js.uncompressed.js | 109 + .../DojoApp/dojo/dojo/data/api/Item.js | 10 + .../dojo/data/api/Item.js.uncompressed.js | 13 + .../dojo/dojo/data/api/Notification.js | 18 + .../data/api/Notification.js.uncompressed.js | 110 + .../DojoApp/dojo/dojo/data/api/Read.js | 38 + .../dojo/data/api/Read.js.uncompressed.js | 486 + .../DojoApp/dojo/dojo/data/api/Request.js | 12 + .../dojo/data/api/Request.js.uncompressed.js | 33 + .../DojoApp/dojo/dojo/data/api/Write.js | 28 + .../dojo/data/api/Write.js.uncompressed.js | 206 + .../DojoApp/dojo/dojo/data/util/filter.js | 53 + .../dojo/data/util/filter.js.uncompressed.js | 77 + .../dojo/dojo/data/util/simpleFetch.js | 60 + .../data/util/simpleFetch.js.uncompressed.js | 240 + .../DojoApp/dojo/dojo/data/util/sorter.js | 67 + .../dojo/data/util/sorter.js.uncompressed.js | 99 + .../webroot/DojoApp/dojo/dojo/date.js | 214 + .../DojoApp/dojo/dojo/date.js.uncompressed.js | 346 + .../webroot/DojoApp/dojo/dojo/date/locale.js | 465 + .../dojo/dojo/date/locale.js.uncompressed.js | 694 + .../webroot/DojoApp/dojo/dojo/date/stamp.js | 83 + .../dojo/dojo/date/stamp.js.uncompressed.js | 144 + .../webroot/DojoApp/dojo/dojo/debounce.js | 22 + .../dojo/dojo/debounce.js.uncompressed.js | 31 + .../DojoApp/dojo/dojo/dnd/AutoSource.js | 12 + .../dojo/dnd/AutoSource.js.uncompressed.js | 12 + .../webroot/DojoApp/dojo/dojo/dnd/Avatar.js | 64 + .../dojo/dojo/dnd/Avatar.js.uncompressed.js | 122 + .../DojoApp/dojo/dojo/dnd/Container.js | 235 + .../dojo/dnd/Container.js.uncompressed.js | 455 + .../webroot/DojoApp/dojo/dojo/dnd/Manager.js | 132 + .../dojo/dojo/dnd/Manager.js.uncompressed.js | 232 + .../webroot/DojoApp/dojo/dojo/dnd/Moveable.js | 81 + .../dojo/dojo/dnd/Moveable.js.uncompressed.js | 189 + .../webroot/DojoApp/dojo/dojo/dnd/Mover.js | 70 + .../dojo/dojo/dnd/Mover.js.uncompressed.js | 132 + .../webroot/DojoApp/dojo/dojo/dnd/Selector.js | 237 + .../dojo/dojo/dnd/Selector.js.uncompressed.js | 333 + .../webroot/DojoApp/dojo/dojo/dnd/Source.js | 287 + .../dojo/dojo/dnd/Source.js.uncompressed.js | 506 + .../webroot/DojoApp/dojo/dojo/dnd/Target.js | 13 + .../dojo/dojo/dnd/Target.js.uncompressed.js | 13 + .../DojoApp/dojo/dojo/dnd/TimedMoveable.js | 33 + .../dojo/dnd/TimedMoveable.js.uncompressed.js | 64 + .../DojoApp/dojo/dojo/dnd/autoscroll.js | 105 + .../dojo/dnd/autoscroll.js.uncompressed.js | 149 + .../webroot/DojoApp/dojo/dojo/dnd/common.js | 30 + .../dojo/dojo/dnd/common.js.uncompressed.js | 44 + .../webroot/DojoApp/dojo/dojo/dnd/move.js | 63 + .../dojo/dojo/dnd/move.js.uncompressed.js | 147 + .../webroot/DojoApp/dojo/dojo/dojo.js | 15 + .../DojoApp/dojo/dojo/dojo.js.uncompressed.js | 18565 +++++++++ .../webroot/DojoApp/dojo/dojo/dojo.profile.js | 40 + .../webroot/DojoApp/dojo/dojo/dom-attr.js | 64 + .../dojo/dojo/dom-attr.js.uncompressed.js | 204 + .../webroot/DojoApp/dojo/dojo/dom-class.js | 89 + .../dojo/dojo/dom-class.js.uncompressed.js | 326 + .../DojoApp/dojo/dojo/dom-construct.js | 164 + .../dojo/dom-construct.js.uncompressed.js | 376 + .../webroot/DojoApp/dojo/dojo/dom-form.js | 81 + .../dojo/dojo/dom-form.js.uncompressed.js | 149 + .../webroot/DojoApp/dojo/dojo/dom-geometry.js | 212 + .../dojo/dojo/dom-geometry.js.uncompressed.js | 605 + .../webroot/DojoApp/dojo/dojo/dom-prop.js | 92 + .../dojo/dojo/dom-prop.js.uncompressed.js | 188 + .../webroot/DojoApp/dojo/dojo/dom-style.js | 165 + .../dojo/dojo/dom-style.js.uncompressed.js | 329 + .../webroot/DojoApp/dojo/dojo/dom.js | 90 + .../DojoApp/dojo/dojo/dom.js.uncompressed.js | 202 + .../webroot/DojoApp/dojo/dojo/domReady.js | 113 + .../dojo/dojo/domReady.js.uncompressed.js | 124 + .../DojoApp/dojo/dojo/errors/CancelError.js | 10 + .../errors/CancelError.js.uncompressed.js | 13 + .../DojoApp/dojo/dojo/errors/RequestError.js | 12 + .../errors/RequestError.js.uncompressed.js | 15 + .../dojo/dojo/errors/RequestTimeoutError.js | 10 + .../RequestTimeoutError.js.uncompressed.js | 15 + .../DojoApp/dojo/dojo/errors/create.js | 36 + .../dojo/errors/create.js.uncompressed.js | 41 + .../webroot/DojoApp/dojo/dojo/fx.js | 268 + .../DojoApp/dojo/dojo/fx.js.uncompressed.js | 437 + .../webroot/DojoApp/dojo/dojo/fx/Toggler.js | 28 + .../dojo/dojo/fx/Toggler.js.uncompressed.js | 101 + .../webroot/DojoApp/dojo/dojo/fx/easing.js | 166 + .../dojo/dojo/fx/easing.js.uncompressed.js | 276 + .../webroot/DojoApp/dojo/dojo/gears.js | 45 + .../dojo/dojo/gears.js.uncompressed.js | 65 + .../webroot/DojoApp/dojo/dojo/has.js | 73 + .../DojoApp/dojo/dojo/has.js.uncompressed.js | 187 + .../webroot/DojoApp/dojo/dojo/hash.js | 137 + .../DojoApp/dojo/dojo/hash.js.uncompressed.js | 256 + .../webroot/DojoApp/dojo/dojo/hccss.js | 27 + .../dojo/dojo/hccss.js.uncompressed.js | 52 + .../webroot/DojoApp/dojo/dojo/html.js | 162 + .../DojoApp/dojo/dojo/html.js.uncompressed.js | 370 + .../webroot/DojoApp/dojo/dojo/i18n.js | 279 + .../DojoApp/dojo/dojo/i18n.js.uncompressed.js | 636 + .../webroot/DojoApp/dojo/dojo/io-query.js | 51 + .../dojo/dojo/io-query.js.uncompressed.js | 97 + .../webroot/DojoApp/dojo/dojo/io/iframe.js | 72 + .../dojo/dojo/io/iframe.js.uncompressed.js | 190 + .../webroot/DojoApp/dojo/dojo/io/script.js | 113 + .../dojo/dojo/io/script.js.uncompressed.js | 280 + .../webroot/DojoApp/dojo/dojo/json.js | 104 + .../DojoApp/dojo/dojo/json.js.uncompressed.js | 162 + .../webroot/DojoApp/dojo/dojo/keys.js | 10 + .../DojoApp/dojo/dojo/keys.js.uncompressed.js | 77 + .../webroot/DojoApp/dojo/dojo/loadInit.js | 12 + .../dojo/dojo/loadInit.js.uncompressed.js | 7 + .../webroot/DojoApp/dojo/dojo/main.js | 29 + .../DojoApp/dojo/dojo/main.js.uncompressed.js | 52 + .../webroot/DojoApp/dojo/dojo/mouse.js | 69 + .../dojo/dojo/mouse.js.uncompressed.js | 171 + .../DojoApp/dojo/dojo/nls/ar/colors.js | 8 + .../dojo/nls/ar/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/az/colors.js | 8 + .../dojo/nls/az/colors.js.uncompressed.js | 151 + .../DojoApp/dojo/dojo/nls/bg/colors.js | 8 + .../dojo/nls/bg/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/ca/colors.js | 8 + .../dojo/nls/ca/colors.js.uncompressed.js | 156 + .../webroot/DojoApp/dojo/dojo/nls/colors.js | 8 + .../dojo/dojo/nls/colors.js.uncompressed.js | 194 + .../DojoApp/dojo/dojo/nls/cs/colors.js | 8 + .../dojo/nls/cs/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/da/colors.js | 8 + .../dojo/nls/da/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/de/colors.js | 8 + .../dojo/nls/de/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/el/colors.js | 8 + .../dojo/nls/el/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/es/colors.js | 8 + .../dojo/nls/es/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/fi/colors.js | 8 + .../dojo/nls/fi/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/fr/colors.js | 8 + .../dojo/nls/fr/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/he/colors.js | 8 + .../dojo/nls/he/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/hr/colors.js | 8 + .../dojo/nls/hr/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/hu/colors.js | 8 + .../dojo/nls/hu/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/id/colors.js | 8 + .../dojo/nls/id/colors.js.uncompressed.js | 157 + .../DojoApp/dojo/dojo/nls/it/colors.js | 8 + .../dojo/nls/it/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/ja/colors.js | 8 + .../dojo/nls/ja/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/kk/colors.js | 8 + .../dojo/nls/kk/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/ko/colors.js | 8 + .../dojo/nls/ko/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/nb/colors.js | 8 + .../dojo/nls/nb/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/nl/colors.js | 8 + .../dojo/nls/nl/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/pl/colors.js | 8 + .../dojo/nls/pl/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/pt-pt/colors.js | 8 + .../dojo/nls/pt-pt/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/pt/colors.js | 8 + .../dojo/nls/pt/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/ro/colors.js | 8 + .../dojo/nls/ro/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/ru/colors.js | 8 + .../dojo/nls/ru/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/sk/colors.js | 8 + .../dojo/nls/sk/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/sl/colors.js | 8 + .../dojo/nls/sl/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/sv/colors.js | 8 + .../dojo/nls/sv/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/th/colors.js | 8 + .../dojo/nls/th/colors.js.uncompressed.js | 157 + .../DojoApp/dojo/dojo/nls/tr/colors.js | 8 + .../dojo/nls/tr/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/uk/colors.js | 8 + .../dojo/nls/uk/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/zh-tw/colors.js | 8 + .../dojo/nls/zh-tw/colors.js.uncompressed.js | 156 + .../DojoApp/dojo/dojo/nls/zh/colors.js | 8 + .../dojo/nls/zh/colors.js.uncompressed.js | 156 + .../webroot/DojoApp/dojo/dojo/node.js | 36 + .../DojoApp/dojo/dojo/node.js.uncompressed.js | 77 + .../webroot/DojoApp/dojo/dojo/number.js | 311 + .../dojo/dojo/number.js.uncompressed.js | 553 + .../webroot/DojoApp/dojo/dojo/on.js | 383 + .../DojoApp/dojo/dojo/on.js.uncompressed.js | 593 + .../dojo/dojo/on/asyncEventListener.js | 38 + .../on/asyncEventListener.js.uncompressed.js | 48 + .../webroot/DojoApp/dojo/dojo/on/debounce.js | 14 + .../dojo/dojo/on/debounce.js.uncompressed.js | 19 + .../webroot/DojoApp/dojo/dojo/on/throttle.js | 14 + .../dojo/dojo/on/throttle.js.uncompressed.js | 19 + .../webroot/DojoApp/dojo/dojo/package.json | 23 + .../webroot/DojoApp/dojo/dojo/parser.js | 445 + .../dojo/dojo/parser.js.uncompressed.js | 920 + .../DojoApp/dojo/dojo/promise/Promise.js | 37 + .../dojo/promise/Promise.js.uncompressed.js | 133 + .../webroot/DojoApp/dojo/dojo/promise/all.js | 60 + .../dojo/dojo/promise/all.js.uncompressed.js | 76 + .../DojoApp/dojo/dojo/promise/first.js | 34 + .../dojo/promise/first.js.uncompressed.js | 49 + .../dojo/dojo/promise/instrumentation.js | 87 + .../instrumentation.js.uncompressed.js | 116 + .../DojoApp/dojo/dojo/promise/tracer.js | 37 + .../dojo/promise/tracer.js.uncompressed.js | 85 + .../webroot/DojoApp/dojo/dojo/query.js | 195 + .../dojo/dojo/query.js.uncompressed.js | 712 + .../webroot/DojoApp/dojo/dojo/ready.js | 77 + .../dojo/dojo/ready.js.uncompressed.js | 153 + .../webroot/DojoApp/dojo/dojo/regexp.js | 33 + .../dojo/dojo/regexp.js.uncompressed.js | 70 + .../webroot/DojoApp/dojo/dojo/request.js | 10 + .../dojo/dojo/request.js.uncompressed.js | 81 + .../DojoApp/dojo/dojo/request/default.js | 28 + .../dojo/request/default.js.uncompressed.js | 32 + .../DojoApp/dojo/dojo/request/handlers.js | 64 + .../dojo/request/handlers.js.uncompressed.js | 98 + .../DojoApp/dojo/dojo/request/iframe.js | 291 + .../dojo/request/iframe.js.uncompressed.js | 431 + .../webroot/DojoApp/dojo/dojo/request/node.js | 86 + .../dojo/dojo/request/node.js.uncompressed.js | 195 + .../DojoApp/dojo/dojo/request/notify.js | 38 + .../dojo/request/notify.js.uncompressed.js | 74 + .../DojoApp/dojo/dojo/request/registry.js | 68 + .../dojo/request/registry.js.uncompressed.js | 85 + .../DojoApp/dojo/dojo/request/script.js | 114 + .../dojo/request/script.js.uncompressed.js | 220 + .../webroot/DojoApp/dojo/dojo/request/util.js | 121 + .../dojo/dojo/request/util.js.uncompressed.js | 158 + .../DojoApp/dojo/dojo/request/watch.js | 73 + .../dojo/request/watch.js.uncompressed.js | 109 + .../webroot/DojoApp/dojo/dojo/request/xhr.js | 214 + .../dojo/dojo/request/xhr.js.uncompressed.js | 352 + .../webroot/DojoApp/dojo/dojo/require.js | 12 + .../dojo/dojo/require.js.uncompressed.js | 7 + .../DojoApp/dojo/dojo/resources/LICENSE | 30 + .../DojoApp/dojo/dojo/resources/blank.gif | Bin 0 -> 43 bytes .../DojoApp/dojo/dojo/resources/blank.html | 1 + .../DojoApp/dojo/dojo/resources/dnd.css | 14 + .../DojoApp/dojo/dojo/resources/dojo.css | 98 + .../dojo/dojo/resources/iframe_history.html | 44 + .../dojo/dojo/resources/images/dndCopy.png | Bin 0 -> 814 bytes .../dojo/dojo/resources/images/dndMove.png | Bin 0 -> 785 bytes .../dojo/dojo/resources/images/dndNoCopy.png | Bin 0 -> 1332 bytes .../dojo/dojo/resources/images/dndNoMove.png | Bin 0 -> 991 bytes .../webroot/DojoApp/dojo/dojo/router.js | 10 + .../dojo/dojo/router.js.uncompressed.js | 28 + .../DojoApp/dojo/dojo/router/RouterBase.js | 181 + .../dojo/router/RouterBase.js.uncompressed.js | 378 + .../DojoApp/dojo/dojo/rpc/JsonService.js | 33 + .../dojo/rpc/JsonService.js.uncompressed.js | 87 + .../DojoApp/dojo/dojo/rpc/JsonpService.js | 28 + .../dojo/rpc/JsonpService.js.uncompressed.js | 66 + .../DojoApp/dojo/dojo/rpc/RpcService.js | 86 + .../dojo/rpc/RpcService.js.uncompressed.js | 178 + .../DojoApp/dojo/dojo/selector/_loader.js | 40 + .../dojo/selector/_loader.js.uncompressed.js | 47 + .../DojoApp/dojo/dojo/selector/acme.js | 792 + .../dojo/selector/acme.js.uncompressed.js | 1499 + .../DojoApp/dojo/dojo/selector/lite.js | 222 + .../dojo/selector/lite.js.uncompressed.js | 283 + .../webroot/DojoApp/dojo/dojo/sniff.js | 52 + .../dojo/dojo/sniff.js.uncompressed.js | 81 + .../webroot/DojoApp/dojo/dojo/store/Cache.js | 49 + .../dojo/dojo/store/Cache.js.uncompressed.js | 146 + .../DojoApp/dojo/dojo/store/DataStore.js | 162 + .../dojo/store/DataStore.js.uncompressed.js | 259 + .../DojoApp/dojo/dojo/store/JsonRest.js | 79 + .../dojo/store/JsonRest.js.uncompressed.js | 226 + .../webroot/DojoApp/dojo/dojo/store/Memory.js | 56 + .../dojo/dojo/store/Memory.js.uncompressed.js | 164 + .../DojoApp/dojo/dojo/store/Observable.js | 140 + .../dojo/store/Observable.js.uncompressed.js | 191 + .../webroot/DojoApp/dojo/dojo/store/README | 6 + .../DojoApp/dojo/dojo/store/api/Store.js | 40 + .../dojo/store/api/Store.js.uncompressed.js | 287 + .../dojo/dojo/store/util/QueryResults.js | 41 + .../util/QueryResults.js.uncompressed.js | 71 + .../dojo/dojo/store/util/SimpleQueryEngine.js | 66 + .../util/SimpleQueryEngine.js.uncompressed.js | 113 + .../webroot/DojoApp/dojo/dojo/string.js | 68 + .../dojo/dojo/string.js.uncompressed.js | 181 + .../webroot/DojoApp/dojo/dojo/text.js | 99 + .../DojoApp/dojo/dojo/text.js.uncompressed.js | 218 + .../webroot/DojoApp/dojo/dojo/throttle.js | 22 + .../dojo/dojo/throttle.js.uncompressed.js | 31 + .../webroot/DojoApp/dojo/dojo/topic.js | 15 + .../dojo/dojo/topic.js.uncompressed.js | 38 + .../webroot/DojoApp/dojo/dojo/touch.js | 175 + .../dojo/dojo/touch.js.uncompressed.js | 447 + .../webroot/DojoApp/dojo/dojo/uacss.js | 33 + .../dojo/dojo/uacss.js.uncompressed.js | 79 + .../webroot/DojoApp/dojo/dojo/when.js | 31 + .../DojoApp/dojo/dojo/when.js.uncompressed.js | 55 + .../webroot/DojoApp/dojo/dojo/window.js | 146 + .../dojo/dojo/window.js.uncompressed.js | 238 + .../DojoApp/dojo/dojox/CONTRIBUTING.md | 227 + .../webroot/DojoApp/dojo/dojox/LICENSE | 195 + .../DojoApp/dojo/dojox/NodeList/README | 33 + .../DojoApp/dojo/dojox/NodeList/delegate.js | 13 + .../NodeList/delegate.js.uncompressed.js | 66 + .../webroot/DojoApp/dojo/dojox/README.md | 43 + .../webroot/DojoApp/dojo/dojox/analytics.js | 4 + .../dojo/dojox/analytics.js.uncompressed.js | 10 + .../DojoApp/dojo/dojox/analytics/README | 199 + .../DojoApp/dojo/dojox/analytics/Urchin.js | 23 + .../dojox/analytics/Urchin.js.uncompressed.js | 132 + .../DojoApp/dojo/dojox/analytics/_base.js | 72 + .../dojox/analytics/_base.js.uncompressed.js | 133 + .../dojo/dojox/analytics/logger/JSON.php | 724 + .../dojox/analytics/logger/dojoxAnalytics.php | 31 + .../analytics/plugins/consoleMessages.js | 18 + .../consoleMessages.js.uncompressed.js | 24 + .../dojo/dojox/analytics/plugins/dojo.js | 19 + .../analytics/plugins/dojo.js.uncompressed.js | 21 + .../dojox/analytics/plugins/gestureEvents.js | 79 + .../plugins/gestureEvents.js.uncompressed.js | 95 + .../dojo/dojox/analytics/plugins/idle.js | 27 + .../analytics/plugins/idle.js.uncompressed.js | 33 + .../dojox/analytics/plugins/mouseClick.js | 45 + .../plugins/mouseClick.js.uncompressed.js | 50 + .../dojo/dojox/analytics/plugins/mouseOver.js | 71 + .../plugins/mouseOver.js.uncompressed.js | 90 + .../dojo/dojox/analytics/plugins/touchMove.js | 100 + .../plugins/touchMove.js.uncompressed.js | 109 + .../dojox/analytics/plugins/touchPress.js | 81 + .../plugins/touchPress.js.uncompressed.js | 91 + .../dojo/dojox/analytics/plugins/window.js | 28 + .../plugins/window.js.uncompressed.js | 32 + .../analytics/profiles/analytics.profile.js | 2 + .../analytics.profile.js.uncompressed.js | 17 + .../profiles/analyticsInBase.profile.js | 2 + ...analyticsInBase.profile.js.uncompressed.js | 24 + .../DojoApp/dojo/dojox/app/CONTRIBUTING.md | 3 + .../DojoApp/dojo/dojox/app/Controller.js | 33 + .../dojox/app/Controller.js.uncompressed.js | 75 + .../webroot/DojoApp/dojo/dojox/app/LICENSE | 195 + .../webroot/DojoApp/dojo/dojox/app/README.txt | 247 + .../webroot/DojoApp/dojo/dojox/app/View.js | 76 + .../dojo/dojox/app/View.js.uncompressed.js | 153 + .../DojoApp/dojo/dojox/app/ViewBase.js | 161 + .../dojox/app/ViewBase.js.uncompressed.js | 270 + .../dojo/dojox/app/build/buildControlApp.js | 9 + .../dojo/dojox/app/build/discoverAppConfig.js | 122 + .../dojox/app/controllers/BorderLayout.js | 62 + .../BorderLayout.js.uncompressed.js | 93 + .../dojo/dojox/app/controllers/History.js | 50 + .../controllers/History.js.uncompressed.js | 127 + .../dojo/dojox/app/controllers/HistoryHash.js | 151 + .../HistoryHash.js.uncompressed.js | 291 + .../dojo/dojox/app/controllers/Layout.js | 119 + .../app/controllers/Layout.js.uncompressed.js | 240 + .../dojo/dojox/app/controllers/LayoutBase.js | 67 + .../controllers/LayoutBase.js.uncompressed.js | 140 + .../dojo/dojox/app/controllers/Load.js | 172 + .../app/controllers/Load.js.uncompressed.js | 333 + .../dojo/dojox/app/controllers/Transition.js | 480 + .../controllers/Transition.js.uncompressed.js | 781 + .../webroot/DojoApp/dojo/dojox/app/main.js | 238 + .../dojo/dojox/app/main.js.uncompressed.js | 375 + .../DojoApp/dojo/dojox/app/module/env.js | 5 + .../dojox/app/module/env.js.uncompressed.js | 21 + .../dojo/dojox/app/module/lifecycle.js | 9 + .../app/module/lifecycle.js.uncompressed.js | 26 + .../DojoApp/dojo/dojox/app/schema/README | 1 + .../dojo/dojox/app/schema/application.json | 55 + .../DojoApp/dojo/dojox/app/schema/model.json | 11 + .../DojoApp/dojo/dojox/app/schema/scene.json | 30 + .../DojoApp/dojo/dojox/app/schema/store.json | 11 + .../DojoApp/dojo/dojox/app/schema/view.json | 30 + .../DojoApp/dojo/dojox/app/utils/config.js | 48 + .../dojox/app/utils/config.js.uncompressed.js | 85 + .../dojo/dojox/app/utils/constraints.js | 57 + .../app/utils/constraints.js.uncompressed.js | 99 + .../DojoApp/dojo/dojox/app/utils/hash.js | 95 + .../dojox/app/utils/hash.js.uncompressed.js | 176 + .../DojoApp/dojo/dojox/app/utils/layout.js | 72 + .../dojox/app/utils/layout.js.uncompressed.js | 141 + .../DojoApp/dojo/dojox/app/utils/model.js | 47 + .../dojox/app/utils/model.js.uncompressed.js | 62 + .../DojoApp/dojo/dojox/app/utils/mvcModel.js | 69 + .../app/utils/mvcModel.js.uncompressed.js | 99 + .../DojoApp/dojo/dojox/app/utils/nls.js | 44 + .../dojox/app/utils/nls.js.uncompressed.js | 51 + .../dojo/dojox/app/utils/simpleModel.js | 85 + .../app/utils/simpleModel.js.uncompressed.js | 110 + .../dojo/dojox/app/widgets/Container.js | 65 + .../app/widgets/Container.js.uncompressed.js | 150 + .../dojox/app/widgets/_ScrollableMixin.js | 93 + .../_ScrollableMixin.js.uncompressed.js | 164 + .../webroot/DojoApp/dojo/dojox/atom/README | 53 + .../DojoApp/dojo/dojox/atom/io/Connection.js | 246 + .../atom/io/Connection.js.uncompressed.js | 425 + .../DojoApp/dojo/dojox/atom/io/model.js | 947 + .../dojox/atom/io/model.js.uncompressed.js | 1180 + .../dojo/dojox/atom/widget/FeedEntryEditor.js | 720 + .../widget/FeedEntryEditor.js.uncompressed.js | 1183 + .../dojo/dojox/atom/widget/FeedEntryViewer.js | 383 + .../widget/FeedEntryViewer.js.uncompressed.js | 743 + .../dojo/dojox/atom/widget/FeedViewer.js | 396 + .../atom/widget/FeedViewer.js.uncompressed.js | 715 + .../dojox/atom/widget/nls/FeedEntryEditor.js | 2 + .../nls/FeedEntryEditor.js.uncompressed.js | 45 + .../dojox/atom/widget/nls/FeedEntryViewer.js | 2 + .../nls/FeedEntryViewer.js.uncompressed.js | 50 + .../dojox/atom/widget/nls/FeedViewerEntry.js | 2 + .../nls/FeedViewerEntry.js.uncompressed.js | 42 + .../dojox/atom/widget/nls/PeopleEditor.js | 2 + .../nls/PeopleEditor.js.uncompressed.js | 44 + .../atom/widget/nls/ar/FeedEntryEditor.js | 2 + .../nls/ar/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/ar/FeedEntryViewer.js | 2 + .../nls/ar/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/ar/FeedViewerEntry.js | 2 + .../nls/ar/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/ar/PeopleEditor.js | 2 + .../nls/ar/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/az/FeedEntryEditor.js | 2 + .../nls/az/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/az/FeedEntryViewer.js | 2 + .../nls/az/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/az/FeedViewerEntry.js | 2 + .../nls/az/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/az/PeopleEditor.js | 2 + .../nls/az/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/bg/FeedEntryEditor.js | 2 + .../nls/bg/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/bg/FeedEntryViewer.js | 2 + .../nls/bg/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/bg/FeedViewerEntry.js | 2 + .../nls/bg/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/bg/PeopleEditor.js | 2 + .../nls/bg/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/ca/FeedEntryEditor.js | 2 + .../nls/ca/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/ca/FeedEntryViewer.js | 2 + .../nls/ca/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/ca/FeedViewerEntry.js | 2 + .../nls/ca/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/ca/PeopleEditor.js | 2 + .../nls/ca/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/cs/FeedEntryEditor.js | 2 + .../nls/cs/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/cs/FeedEntryViewer.js | 2 + .../nls/cs/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/cs/FeedViewerEntry.js | 2 + .../nls/cs/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/cs/PeopleEditor.js | 2 + .../nls/cs/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/da/FeedEntryEditor.js | 2 + .../nls/da/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/da/FeedEntryViewer.js | 2 + .../nls/da/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/da/FeedViewerEntry.js | 2 + .../nls/da/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/da/PeopleEditor.js | 2 + .../nls/da/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/de/FeedEntryEditor.js | 2 + .../nls/de/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/de/FeedEntryViewer.js | 2 + .../nls/de/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/de/FeedViewerEntry.js | 2 + .../nls/de/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/de/PeopleEditor.js | 2 + .../nls/de/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/el/FeedEntryEditor.js | 2 + .../nls/el/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/el/FeedEntryViewer.js | 2 + .../nls/el/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/el/FeedViewerEntry.js | 2 + .../nls/el/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/el/PeopleEditor.js | 2 + .../nls/el/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/es/FeedEntryEditor.js | 2 + .../nls/es/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/es/FeedEntryViewer.js | 2 + .../nls/es/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/es/FeedViewerEntry.js | 2 + .../nls/es/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/es/PeopleEditor.js | 2 + .../nls/es/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/fi/FeedEntryEditor.js | 2 + .../nls/fi/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/fi/FeedEntryViewer.js | 2 + .../nls/fi/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/fi/FeedViewerEntry.js | 2 + .../nls/fi/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/fi/PeopleEditor.js | 2 + .../nls/fi/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/fr/FeedEntryEditor.js | 2 + .../nls/fr/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/fr/FeedEntryViewer.js | 2 + .../nls/fr/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/fr/FeedViewerEntry.js | 2 + .../nls/fr/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/fr/PeopleEditor.js | 2 + .../nls/fr/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/he/FeedEntryEditor.js | 2 + .../nls/he/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/he/FeedEntryViewer.js | 2 + .../nls/he/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/he/FeedViewerEntry.js | 2 + .../nls/he/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/he/PeopleEditor.js | 2 + .../nls/he/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/hr/FeedEntryEditor.js | 2 + .../nls/hr/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/hr/FeedEntryViewer.js | 2 + .../nls/hr/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/hr/FeedViewerEntry.js | 2 + .../nls/hr/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/hr/PeopleEditor.js | 2 + .../nls/hr/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/hu/FeedEntryEditor.js | 2 + .../nls/hu/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/hu/FeedEntryViewer.js | 2 + .../nls/hu/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/hu/FeedViewerEntry.js | 2 + .../nls/hu/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/hu/PeopleEditor.js | 2 + .../nls/hu/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/id/FeedEntryEditor.js | 2 + .../nls/id/FeedEntryEditor.js.uncompressed.js | 9 + .../atom/widget/nls/id/FeedEntryViewer.js | 2 + .../nls/id/FeedEntryViewer.js.uncompressed.js | 14 + .../atom/widget/nls/id/FeedViewerEntry.js | 2 + .../nls/id/FeedViewerEntry.js.uncompressed.js | 6 + .../dojox/atom/widget/nls/id/PeopleEditor.js | 2 + .../nls/id/PeopleEditor.js.uncompressed.js | 8 + .../atom/widget/nls/it/FeedEntryEditor.js | 2 + .../nls/it/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/it/FeedEntryViewer.js | 2 + .../nls/it/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/it/FeedViewerEntry.js | 2 + .../nls/it/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/it/PeopleEditor.js | 2 + .../nls/it/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/ja/FeedEntryEditor.js | 2 + .../nls/ja/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/ja/FeedEntryViewer.js | 2 + .../nls/ja/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/ja/FeedViewerEntry.js | 2 + .../nls/ja/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/ja/PeopleEditor.js | 2 + .../nls/ja/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/kk/FeedEntryEditor.js | 2 + .../nls/kk/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/kk/FeedEntryViewer.js | 2 + .../nls/kk/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/kk/FeedViewerEntry.js | 2 + .../nls/kk/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/kk/PeopleEditor.js | 2 + .../nls/kk/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/ko/FeedEntryEditor.js | 2 + .../nls/ko/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/ko/FeedEntryViewer.js | 2 + .../nls/ko/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/ko/FeedViewerEntry.js | 2 + .../nls/ko/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/ko/PeopleEditor.js | 2 + .../nls/ko/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/nb/FeedEntryEditor.js | 2 + .../nls/nb/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/nb/FeedEntryViewer.js | 2 + .../nls/nb/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/nb/FeedViewerEntry.js | 2 + .../nls/nb/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/nb/PeopleEditor.js | 2 + .../nls/nb/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/nl/FeedEntryEditor.js | 2 + .../nls/nl/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/nl/FeedEntryViewer.js | 2 + .../nls/nl/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/nl/FeedViewerEntry.js | 2 + .../nls/nl/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/nl/PeopleEditor.js | 2 + .../nls/nl/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/pl/FeedEntryEditor.js | 2 + .../nls/pl/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/pl/FeedEntryViewer.js | 2 + .../nls/pl/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/pl/FeedViewerEntry.js | 2 + .../nls/pl/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/pl/PeopleEditor.js | 2 + .../nls/pl/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/pt-pt/FeedEntryEditor.js | 2 + .../pt-pt/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/pt-pt/FeedEntryViewer.js | 2 + .../pt-pt/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/pt-pt/FeedViewerEntry.js | 2 + .../pt-pt/FeedViewerEntry.js.uncompressed.js | 5 + .../atom/widget/nls/pt-pt/PeopleEditor.js | 2 + .../nls/pt-pt/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/pt/FeedEntryEditor.js | 2 + .../nls/pt/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/pt/FeedEntryViewer.js | 2 + .../nls/pt/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/pt/FeedViewerEntry.js | 2 + .../nls/pt/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/pt/PeopleEditor.js | 2 + .../nls/pt/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/ro/FeedEntryEditor.js | 2 + .../nls/ro/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/ro/FeedEntryViewer.js | 2 + .../nls/ro/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/ro/FeedViewerEntry.js | 2 + .../nls/ro/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/ro/PeopleEditor.js | 2 + .../nls/ro/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/ru/FeedEntryEditor.js | 2 + .../nls/ru/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/ru/FeedEntryViewer.js | 2 + .../nls/ru/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/ru/FeedViewerEntry.js | 2 + .../nls/ru/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/ru/PeopleEditor.js | 2 + .../nls/ru/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/sk/FeedEntryEditor.js | 2 + .../nls/sk/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/sk/FeedEntryViewer.js | 2 + .../nls/sk/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/sk/FeedViewerEntry.js | 2 + .../nls/sk/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/sk/PeopleEditor.js | 2 + .../nls/sk/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/sl/FeedEntryEditor.js | 2 + .../nls/sl/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/sl/FeedEntryViewer.js | 2 + .../nls/sl/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/sl/FeedViewerEntry.js | 2 + .../nls/sl/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/sl/PeopleEditor.js | 2 + .../nls/sl/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/sv/FeedEntryEditor.js | 2 + .../nls/sv/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/sv/FeedEntryViewer.js | 2 + .../nls/sv/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/sv/FeedViewerEntry.js | 2 + .../nls/sv/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/sv/PeopleEditor.js | 2 + .../nls/sv/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/th/FeedEntryEditor.js | 2 + .../nls/th/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/th/FeedEntryViewer.js | 2 + .../nls/th/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/th/FeedViewerEntry.js | 2 + .../nls/th/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/th/PeopleEditor.js | 2 + .../nls/th/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/tr/FeedEntryEditor.js | 2 + .../nls/tr/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/tr/FeedEntryViewer.js | 2 + .../nls/tr/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/tr/FeedViewerEntry.js | 2 + .../nls/tr/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/tr/PeopleEditor.js | 2 + .../nls/tr/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/uk/FeedEntryEditor.js | 2 + .../nls/uk/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/uk/FeedEntryViewer.js | 2 + .../nls/uk/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/uk/FeedViewerEntry.js | 2 + .../nls/uk/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/uk/PeopleEditor.js | 2 + .../nls/uk/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/zh-tw/FeedEntryEditor.js | 2 + .../zh-tw/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/zh-tw/FeedEntryViewer.js | 2 + .../zh-tw/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/zh-tw/FeedViewerEntry.js | 2 + .../zh-tw/FeedViewerEntry.js.uncompressed.js | 5 + .../atom/widget/nls/zh-tw/PeopleEditor.js | 2 + .../nls/zh-tw/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/nls/zh/FeedEntryEditor.js | 2 + .../nls/zh/FeedEntryEditor.js.uncompressed.js | 8 + .../atom/widget/nls/zh/FeedEntryViewer.js | 2 + .../nls/zh/FeedEntryViewer.js.uncompressed.js | 13 + .../atom/widget/nls/zh/FeedViewerEntry.js | 2 + .../nls/zh/FeedViewerEntry.js.uncompressed.js | 5 + .../dojox/atom/widget/nls/zh/PeopleEditor.js | 2 + .../nls/zh/PeopleEditor.js.uncompressed.js | 7 + .../atom/widget/templates/EntryHeader.html | 1 + .../widget/templates/FeedEntryEditor.html | 195 + .../widget/templates/FeedEntryViewer.html | 158 + .../atom/widget/templates/FeedViewer.html | 6 + .../widget/templates/FeedViewerEntry.html | 15 + .../widget/templates/FeedViewerGrouping.html | 4 + .../atom/widget/templates/PeopleEditor.html | 6 + .../atom/widget/templates/css/EntryHeader.css | 27 + .../templates/css/HtmlFeedEntryEditor.css | 84 + .../templates/css/HtmlFeedEntryViewer.css | 90 + .../widget/templates/css/HtmlFeedViewer.css | 14 + .../templates/css/HtmlFeedViewerEntry.css | 60 + .../templates/css/HtmlFeedViewerGrouping.css | 8 + .../webroot/DojoApp/dojo/dojox/av/FLAudio.js | 101 + .../dojo/dojox/av/FLAudio.js.uncompressed.js | 373 + .../webroot/DojoApp/dojo/dojox/av/FLVideo.js | 96 + .../dojo/dojox/av/FLVideo.js.uncompressed.js | 322 + .../webroot/DojoApp/dojo/dojox/av/README | 65 + .../webroot/DojoApp/dojo/dojox/av/_Media.js | 117 + .../dojo/dojox/av/_Media.js.uncompressed.js | 356 + .../DojoApp/dojo/dojox/av/resources/audio.swf | Bin 0 -> 7348 bytes .../dojo/dojox/av/resources/version.mov | Bin 0 -> 1667 bytes .../DojoApp/dojo/dojox/av/resources/video.swf | Bin 0 -> 6873 bytes .../dojo/dojox/av/widget/PlayButton.js | 34 + .../av/widget/PlayButton.js.uncompressed.js | 74 + .../DojoApp/dojo/dojox/av/widget/Player.js | 69 + .../dojox/av/widget/Player.js.uncompressed.js | 126 + .../dojo/dojox/av/widget/ProgressSlider.js | 78 + .../widget/ProgressSlider.js.uncompressed.js | 132 + .../DojoApp/dojo/dojox/av/widget/Status.js | 78 + .../dojox/av/widget/Status.js.uncompressed.js | 112 + .../dojo/dojox/av/widget/VolumeButton.js | 107 + .../av/widget/VolumeButton.js.uncompressed.js | 185 + .../dojox/av/widget/resources/PlayButton.html | 3 + .../dojo/dojox/av/widget/resources/Player.css | 191 + .../dojox/av/widget/resources/Player.html | 20 + .../av/widget/resources/ProgressSlider.html | 6 + .../dojox/av/widget/resources/Status.html | 7 + .../av/widget/resources/VolumeButton.html | 7 + .../resources/images/dojoPlayerIcons.png | Bin 0 -> 3086 bytes .../av/widget/resources/images/playerIcons | Bin 0 -> 887 bytes .../widget/resources/images/player_sprite.png | Bin 0 -> 3425 bytes .../resources/images/progressLoadedBk.png | Bin 0 -> 153 bytes .../resources/images/progressPositionBk.png | Bin 0 -> 157 bytes .../resources/images/sliderHandleNorm.png | Bin 0 -> 336 bytes .../resources/images/sliderHandleOver.png | Bin 0 -> 248 bytes .../resources/images/sliderHandleSprite.png | Bin 0 -> 426 bytes .../DojoApp/dojo/dojox/calc/FuncGen.js | 65 + .../dojox/calc/FuncGen.js.uncompressed.js | 152 + .../DojoApp/dojo/dojox/calc/GraphPro.js | 91 + .../dojox/calc/GraphPro.js.uncompressed.js | 151 + .../DojoApp/dojo/dojox/calc/Grapher.js | 414 + .../dojox/calc/Grapher.js.uncompressed.js | 657 + .../DojoApp/dojo/dojox/calc/Readme.txt | 175 + .../DojoApp/dojo/dojox/calc/Standard.js | 225 + .../dojox/calc/Standard.js.uncompressed.js | 359 + .../DojoApp/dojo/dojox/calc/_Executor.js | 75 + .../dojox/calc/_Executor.js.uncompressed.js | 143 + .../dojo/dojox/calc/_ExecutorIframe.html | 533 + .../dojo/dojox/calc/resources/Common.css | 143 + .../dojo/dojox/calc/resources/GraphPro.css | 144 + .../dojo/dojox/calc/resources/Standard.css | 144 + .../dojo/dojox/calc/templates/FuncGen.html | 15 + .../dojo/dojox/calc/templates/GraphPro.html | 165 + .../dojo/dojox/calc/templates/Grapher.html | 117 + .../dojo/dojox/calc/templates/Standard.html | 101 + .../webroot/DojoApp/dojo/dojox/calc/toFrac.js | 114 + .../dojo/dojox/calc/toFrac.js.uncompressed.js | 143 + .../dojo/dojox/calendar/CONTRIBUTING.md | 3 + .../DojoApp/dojo/dojox/calendar/Calendar.js | 17 + .../calendar/Calendar.js.uncompressed.js | 88 + .../dojo/dojox/calendar/CalendarBase.js | 604 + .../calendar/CalendarBase.js.uncompressed.js | 1662 + .../DojoApp/dojo/dojox/calendar/ColumnView.js | 171 + .../calendar/ColumnView.js.uncompressed.js | 332 + .../calendar/ColumnViewSecondarySheet.js | 65 + ...olumnViewSecondarySheet.js.uncompressed.js | 143 + .../dojo/dojox/calendar/DecorationRenderer.js | 31 + .../DecorationRenderer.js.uncompressed.js | 49 + .../dojo/dojox/calendar/ExpandRenderer.js | 46 + .../ExpandRenderer.js.uncompressed.js | 146 + .../dojo/dojox/calendar/HorizontalRenderer.js | 44 + .../HorizontalRenderer.js.uncompressed.js | 94 + .../DojoApp/dojo/dojox/calendar/Keyboard.js | 210 + .../calendar/Keyboard.js.uncompressed.js | 380 + .../DojoApp/dojo/dojox/calendar/LICENSE | 195 + .../dojo/dojox/calendar/LabelRenderer.js | 17 + .../calendar/LabelRenderer.js.uncompressed.js | 46 + .../DojoApp/dojo/dojox/calendar/MatrixView.js | 1258 + .../calendar/MatrixView.js.uncompressed.js | 2404 ++ .../dojo/dojox/calendar/MobileCalendar.js | 17 + .../MobileCalendar.js.uncompressed.js | 60 + .../calendar/MobileHorizontalRenderer.js | 38 + ...obileHorizontalRenderer.js.uncompressed.js | 83 + .../dojox/calendar/MobileVerticalRenderer.js | 25 + .../MobileVerticalRenderer.js.uncompressed.js | 49 + .../dojo/dojox/calendar/MonthColumnView.js | 772 + .../MonthColumnView.js.uncompressed.js | 1549 + .../DojoApp/dojo/dojox/calendar/Mouse.js | 136 + .../dojox/calendar/Mouse.js.uncompressed.js | 313 + .../DojoApp/dojo/dojox/calendar/README | 18 + .../dojo/dojox/calendar/RendererManager.js | 98 + .../RendererManager.js.uncompressed.js | 225 + .../dojo/dojox/calendar/SimpleColumnView.js | 1240 + .../SimpleColumnView.js.uncompressed.js | 2314 ++ .../dojo/dojox/calendar/StoreManager.js | 172 + .../calendar/StoreManager.js.uncompressed.js | 281 + .../DojoApp/dojo/dojox/calendar/StoreMixin.js | 42 + .../calendar/StoreMixin.js.uncompressed.js | 192 + .../DojoApp/dojo/dojox/calendar/Touch.js | 251 + .../dojox/calendar/Touch.js.uncompressed.js | 450 + .../dojo/dojox/calendar/VerticalRenderer.js | 25 + .../VerticalRenderer.js.uncompressed.js | 41 + .../DojoApp/dojo/dojox/calendar/ViewBase.js | 1314 + .../calendar/ViewBase.js.uncompressed.js | 3007 ++ .../dojo/dojox/calendar/_RendererMixin.js | 169 + .../_RendererMixin.js.uncompressed.js | 307 + .../dojo/dojox/calendar/_ScrollBarBase.js | 56 + .../_ScrollBarBase.js.uncompressed.js | 131 + .../dojo/dojox/calendar/nls/ar/buttons.js | 2 + .../nls/ar/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/bg/buttons.js | 2 + .../nls/bg/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/buttons.js | 2 + .../calendar/nls/buttons.js.uncompressed.js | 47 + .../dojo/dojox/calendar/nls/ca/buttons.js | 2 + .../nls/ca/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/cs/buttons.js | 2 + .../nls/cs/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/da/buttons.js | 2 + .../nls/da/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/de/buttons.js | 2 + .../nls/de/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/el/buttons.js | 2 + .../nls/el/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/es/buttons.js | 2 + .../nls/es/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/fi/buttons.js | 2 + .../nls/fi/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/fr/buttons.js | 2 + .../nls/fr/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/he/buttons.js | 2 + .../nls/he/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/hr/buttons.js | 2 + .../nls/hr/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/hu/buttons.js | 2 + .../nls/hu/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/id/buttons.js | 2 + .../nls/id/buttons.js.uncompressed.js | 11 + .../dojo/dojox/calendar/nls/it/buttons.js | 2 + .../nls/it/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/ja/buttons.js | 2 + .../nls/ja/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/kk/buttons.js | 2 + .../nls/kk/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/ko/buttons.js | 2 + .../nls/ko/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/lt/buttons.js | 2 + .../nls/lt/buttons.js.uncompressed.js | 9 + .../dojo/dojox/calendar/nls/nb/buttons.js | 2 + .../nls/nb/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/nl/buttons.js | 2 + .../nls/nl/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/pl/buttons.js | 2 + .../nls/pl/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/pt-pt/buttons.js | 2 + .../nls/pt-pt/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/pt/buttons.js | 2 + .../nls/pt/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/ro/buttons.js | 2 + .../nls/ro/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/ru/buttons.js | 2 + .../nls/ru/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/sk/buttons.js | 2 + .../nls/sk/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/sl/buttons.js | 2 + .../nls/sl/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/sv/buttons.js | 2 + .../nls/sv/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/th/buttons.js | 2 + .../nls/th/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/tr/buttons.js | 2 + .../nls/tr/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/uk/buttons.js | 2 + .../nls/uk/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/zh-tw/buttons.js | 2 + .../nls/zh-tw/buttons.js.uncompressed.js | 10 + .../dojo/dojox/calendar/nls/zh/buttons.js | 2 + .../nls/zh/buttons.js.uncompressed.js | 10 + .../dojox/calendar/templates/Calendar.html | 16 + .../dojox/calendar/templates/ColumnView.html | 45 + .../templates/ColumnViewSecondarySheet.html | 11 + .../calendar/templates/ExpandRenderer.html | 3 + .../templates/HorizontalRenderer.html | 13 + .../calendar/templates/LabelRenderer.html | 8 + .../dojox/calendar/templates/MatrixView.html | 17 + .../calendar/templates/MobileCalendar.html | 11 + .../templates/MobileHorizontalRenderer.html | 13 + .../templates/MobileVerticalRenderer.html | 12 + .../calendar/templates/MonthColumnView.html | 18 + .../calendar/templates/SimpleMatrixView.html | 17 + .../calendar/templates/VerticalRenderer.html | 13 + .../dojo/dojox/calendar/themes/Base.less | 58 + .../dojox/calendar/themes/claro/Calendar.css | 1 + .../dojox/calendar/themes/claro/Calendar.less | 36 + .../calendar/themes/claro/Calendar_rtl.css | 1 + .../calendar/themes/claro/Calendar_rtl.less | 3 + .../calendar/themes/claro/ColumnView.css | 1 + .../calendar/themes/claro/ColumnView.less | 733 + .../themes/claro/ColumnViewCommon.less | 10 + .../calendar/themes/claro/ColumnView_rtl.css | 1 + .../calendar/themes/claro/ColumnView_rtl.less | 197 + .../dojox/calendar/themes/claro/Common.less | 59 + .../calendar/themes/claro/MatrixView.css | 1 + .../calendar/themes/claro/MatrixView.less | 380 + .../themes/claro/MatrixViewCommon.less | 12 + .../calendar/themes/claro/MatrixView_rtl.css | 1 + .../calendar/themes/claro/MatrixView_rtl.less | 75 + .../calendar/themes/claro/MonthColumnView.css | 1 + .../themes/claro/MonthColumnView.less | 288 + .../themes/claro/MonthColumnViewCommon.less | 7 + .../themes/claro/MonthColumnView_rtl.css | 1 + .../themes/claro/MonthColumnView_rtl.less | 60 + .../calendar/themes/claro/images/titlebar.png | Bin 0 -> 640 bytes .../dojox/calendar/themes/iphone/Calendar.css | 932 + .../calendar/themes/iphone/Calendar.less | 30 + .../calendar/themes/iphone/Calendar_rtl.css | 558 + .../calendar/themes/iphone/Calendar_rtl.less | 3 + .../calendar/themes/iphone/ColumnView.css | 510 + .../calendar/themes/iphone/ColumnView.less | 553 + .../themes/iphone/ColumnViewCommon.less | 10 + .../calendar/themes/iphone/ColumnView_rtl.css | 102 + .../themes/iphone/ColumnView_rtl.less | 129 + .../dojox/calendar/themes/iphone/Common.css | 0 .../dojox/calendar/themes/iphone/Common.less | 79 + .../calendar/themes/iphone/MatrixView.css | 400 + .../calendar/themes/iphone/MatrixView.less | 429 + .../themes/iphone/MatrixViewCommon.less | 11 + .../calendar/themes/iphone/MatrixView_rtl.css | 456 + .../themes/iphone/MatrixView_rtl.less | 71 + .../themes/iphone/MonthColumnView.css | 271 + .../themes/iphone/MonthColumnView.less | 303 + .../themes/iphone/MonthColumnViewCommon.less | 7 + .../themes/iphone/MonthColumnView_rtl.css | 42 + .../themes/iphone/MonthColumnView_rtl.less | 57 + .../dojox/calendar/themes/nihilo/Calendar.css | 1 + .../calendar/themes/nihilo/Calendar.less | 33 + .../calendar/themes/nihilo/Calendar_rtl.css | 1 + .../calendar/themes/nihilo/Calendar_rtl.less | 3 + .../calendar/themes/nihilo/ColumnView.css | 1 + .../calendar/themes/nihilo/ColumnView.less | 732 + .../themes/nihilo/ColumnViewCommon.less | 11 + .../calendar/themes/nihilo/ColumnView_rtl.css | 1 + .../themes/nihilo/ColumnView_rtl.less | 177 + .../dojox/calendar/themes/nihilo/Common.less | 55 + .../calendar/themes/nihilo/MatrixView.css | 1 + .../calendar/themes/nihilo/MatrixView.less | 380 + .../themes/nihilo/MatrixViewCommon.less | 12 + .../calendar/themes/nihilo/MatrixView_rtl.css | 1 + .../themes/nihilo/MatrixView_rtl.less | 75 + .../themes/nihilo/MonthColumnView.css | 1 + .../themes/nihilo/MonthColumnView.less | 288 + .../themes/nihilo/MonthColumnViewCommon.less | 7 + .../themes/nihilo/MonthColumnView_rtl.css | 1 + .../themes/nihilo/MonthColumnView_rtl.less | 60 + .../nihilo/images/accordionItemActive.png | Bin 0 -> 148 bytes .../themes/nihilo/images/titleBar.png | Bin 0 -> 148 bytes .../dojox/calendar/themes/soria/Calendar.css | 1 + .../dojox/calendar/themes/soria/Calendar.less | 33 + .../calendar/themes/soria/Calendar_rtl.css | 1 + .../calendar/themes/soria/Calendar_rtl.less | 3 + .../calendar/themes/soria/ColumnView.css | 1 + .../calendar/themes/soria/ColumnView.less | 733 + .../themes/soria/ColumnViewCommon.less | 10 + .../calendar/themes/soria/ColumnView_rtl.css | 1 + .../calendar/themes/soria/ColumnView_rtl.less | 177 + .../dojox/calendar/themes/soria/Common.less | 56 + .../calendar/themes/soria/MatrixView.css | 1 + .../calendar/themes/soria/MatrixView.less | 380 + .../themes/soria/MatrixViewCommon.less | 12 + .../calendar/themes/soria/MatrixView_rtl.css | 1 + .../calendar/themes/soria/MatrixView_rtl.less | 75 + .../calendar/themes/soria/MonthColumnView.css | 1 + .../themes/soria/MonthColumnView.less | 288 + .../themes/soria/MonthColumnViewCommon.less | 7 + .../themes/soria/MonthColumnView_rtl.css | 1 + .../themes/soria/MonthColumnView_rtl.less | 60 + .../soria/images/accordionItemActive.png | Bin 0 -> 171 bytes .../calendar/themes/soria/images/titleBar.png | Bin 0 -> 183 bytes .../dojox/calendar/themes/tundra/Calendar.css | 1 + .../calendar/themes/tundra/Calendar.less | 33 + .../calendar/themes/tundra/Calendar_rtl.css | 1 + .../calendar/themes/tundra/Calendar_rtl.less | 3 + .../calendar/themes/tundra/ColumnView.css | 1 + .../calendar/themes/tundra/ColumnView.less | 732 + .../themes/tundra/ColumnViewCommon.less | 11 + .../calendar/themes/tundra/ColumnView_rtl.css | 1 + .../themes/tundra/ColumnView_rtl.less | 177 + .../dojox/calendar/themes/tundra/Common.less | 52 + .../calendar/themes/tundra/MatrixView.css | 1 + .../calendar/themes/tundra/MatrixView.less | 380 + .../themes/tundra/MatrixViewCommon.less | 12 + .../calendar/themes/tundra/MatrixView_rtl.css | 1 + .../themes/tundra/MatrixView_rtl.less | 75 + .../themes/tundra/MonthColumnView.css | 1 + .../themes/tundra/MonthColumnView.less | 288 + .../themes/tundra/MonthColumnViewCommon.less | 7 + .../themes/tundra/MonthColumnView_rtl.css | 1 + .../themes/tundra/MonthColumnView_rtl.less | 60 + .../tundra/images/accordionItemHover.gif | Bin 0 -> 171 bytes .../themes/tundra/images/titleBar.png | Bin 0 -> 151 bytes .../DojoApp/dojo/dojox/calendar/time.js | 103 + .../dojox/calendar/time.js.uncompressed.js | 209 + .../dojo/dojox/charting/BidiSupport.js | 4 + .../charting/BidiSupport.js.uncompressed.js | 4 + .../dojo/dojox/charting/BidiSupport3D.js | 4 + .../charting/BidiSupport3D.js.uncompressed.js | 4 + .../DojoApp/dojo/dojox/charting/Chart.js | 626 + .../dojox/charting/Chart.js.uncompressed.js | 1220 + .../DojoApp/dojo/dojox/charting/Chart2D.js | 5 + .../dojox/charting/Chart2D.js.uncompressed.js | 16 + .../DojoApp/dojo/dojox/charting/Chart3D.js | 65 + .../dojox/charting/Chart3D.js.uncompressed.js | 104 + .../DojoApp/dojo/dojox/charting/DataChart.js | 221 + .../charting/DataChart.js.uncompressed.js | 507 + .../DojoApp/dojo/dojox/charting/DataSeries.js | 111 + .../charting/DataSeries.js.uncompressed.js | 185 + .../DojoApp/dojo/dojox/charting/Element.js | 247 + .../dojox/charting/Element.js.uncompressed.js | 402 + .../DojoApp/dojo/dojox/charting/README | 31 + .../DojoApp/dojo/dojox/charting/Series.js | 24 + .../dojox/charting/Series.js.uncompressed.js | 58 + .../dojo/dojox/charting/SimpleTheme.js | 191 + .../charting/SimpleTheme.js.uncompressed.js | 577 + .../dojo/dojox/charting/StoreSeries.js | 64 + .../charting/StoreSeries.js.uncompressed.js | 101 + .../DojoApp/dojo/dojox/charting/Theme.js | 42 + .../dojox/charting/Theme.js.uncompressed.js | 120 + .../dojo/dojox/charting/action2d/Base.js | 11 + .../charting/action2d/Base.js.uncompressed.js | 36 + .../dojox/charting/action2d/ChartAction.js | 14 + .../action2d/ChartAction.js.uncompressed.js | 36 + .../dojo/dojox/charting/action2d/Highlight.js | 77 + .../action2d/Highlight.js.uncompressed.js | 144 + .../dojo/dojox/charting/action2d/Magnify.js | 58 + .../action2d/Magnify.js.uncompressed.js | 123 + .../dojox/charting/action2d/MouseIndicator.js | 58 + .../MouseIndicator.js.uncompressed.js | 213 + .../charting/action2d/MouseZoomAndPan.js | 131 + .../MouseZoomAndPan.js.uncompressed.js | 241 + .../dojo/dojox/charting/action2d/MoveSlice.js | 54 + .../action2d/MoveSlice.js.uncompressed.js | 124 + .../dojox/charting/action2d/PlotAction.js | 28 + .../action2d/PlotAction.js.uncompressed.js | 74 + .../dojo/dojox/charting/action2d/Shake.js | 52 + .../action2d/Shake.js.uncompressed.js | 108 + .../dojo/dojox/charting/action2d/Tooltip.js | 116 + .../action2d/Tooltip.js.uncompressed.js | 178 + .../dojox/charting/action2d/TouchIndicator.js | 82 + .../TouchIndicator.js.uncompressed.js | 244 + .../charting/action2d/TouchZoomAndPan.js | 136 + .../TouchZoomAndPan.js.uncompressed.js | 269 + .../charting/action2d/_IndicatorElement.js | 229 + .../_IndicatorElement.js.uncompressed.js | 296 + .../dojo/dojox/charting/axis2d/Base.js | 24 + .../charting/axis2d/Base.js.uncompressed.js | 83 + .../dojo/dojox/charting/axis2d/Default.js | 557 + .../axis2d/Default.js.uncompressed.js | 980 + .../dojo/dojox/charting/axis2d/Invisible.js | 65 + .../axis2d/Invisible.js.uncompressed.js | 224 + .../dojo/dojox/charting/axis2d/common.js | 91 + .../charting/axis2d/common.js.uncompressed.js | 164 + .../DojoApp/dojo/dojox/charting/bidi/Chart.js | 103 + .../charting/bidi/Chart.js.uncompressed.js | 260 + .../dojo/dojox/charting/bidi/Chart3D.js | 30 + .../charting/bidi/Chart3D.js.uncompressed.js | 78 + .../dojo/dojox/charting/bidi/_bidiutils.js | 18 + .../bidi/_bidiutils.js.uncompressed.js | 27 + .../dojox/charting/bidi/action2d/Tooltip.js | 42 + .../bidi/action2d/Tooltip.js.uncompressed.js | 45 + .../charting/bidi/action2d/ZoomAndPan.js | 7 + .../action2d/ZoomAndPan.js.uncompressed.js | 11 + .../dojox/charting/bidi/axis2d/Default.js | 16 + .../bidi/axis2d/Default.js.uncompressed.js | 27 + .../dojo/dojox/charting/bidi/widget/Chart.js | 17 + .../bidi/widget/Chart.js.uncompressed.js | 29 + .../dojo/dojox/charting/bidi/widget/Legend.js | 37 + .../bidi/widget/Legend.js.uncompressed.js | 63 + .../dojo/dojox/charting/plot2d/Areas.js | 7 + .../charting/plot2d/Areas.js.uncompressed.js | 14 + .../dojo/dojox/charting/plot2d/Bars.js | 168 + .../charting/plot2d/Bars.js.uncompressed.js | 311 + .../dojo/dojox/charting/plot2d/Base.js | 61 + .../charting/plot2d/Base.js.uncompressed.js | 161 + .../dojo/dojox/charting/plot2d/Bubble.js | 141 + .../charting/plot2d/Bubble.js.uncompressed.js | 242 + .../dojox/charting/plot2d/Candlesticks.js | 126 + .../plot2d/Candlesticks.js.uncompressed.js | 243 + .../dojox/charting/plot2d/CartesianBase.js | 108 + .../plot2d/CartesianBase.js.uncompressed.js | 290 + .../dojox/charting/plot2d/ClusteredBars.js | 13 + .../plot2d/ClusteredBars.js.uncompressed.js | 14 + .../dojox/charting/plot2d/ClusteredColumns.js | 13 + .../ClusteredColumns.js.uncompressed.js | 14 + .../dojo/dojox/charting/plot2d/Columns.js | 153 + .../plot2d/Columns.js.uncompressed.js | 249 + .../dojo/dojox/charting/plot2d/Default.js | 253 + .../plot2d/Default.js.uncompressed.js | 472 + .../dojo/dojox/charting/plot2d/Grid.js | 182 + .../charting/plot2d/Grid.js.uncompressed.js | 356 + .../dojo/dojox/charting/plot2d/Indicator.js | 250 + .../plot2d/Indicator.js.uncompressed.js | 493 + .../dojo/dojox/charting/plot2d/Lines.js | 6 + .../charting/plot2d/Lines.js.uncompressed.js | 12 + .../dojo/dojox/charting/plot2d/Markers.js | 6 + .../plot2d/Markers.js.uncompressed.js | 12 + .../dojo/dojox/charting/plot2d/MarkersOnly.js | 7 + .../plot2d/MarkersOnly.js.uncompressed.js | 13 + .../dojo/dojox/charting/plot2d/OHLC.js | 110 + .../charting/plot2d/OHLC.js.uncompressed.js | 208 + .../DojoApp/dojo/dojox/charting/plot2d/Pie.js | 303 + .../charting/plot2d/Pie.js.uncompressed.js | 547 + .../dojo/dojox/charting/plot2d/Scatter.js | 134 + .../plot2d/Scatter.js.uncompressed.js | 207 + .../dojo/dojox/charting/plot2d/Spider.js | 299 + .../charting/plot2d/Spider.js.uncompressed.js | 537 + .../dojo/dojox/charting/plot2d/Stacked.js | 24 + .../plot2d/Stacked.js.uncompressed.js | 44 + .../dojox/charting/plot2d/StackedAreas.js | 7 + .../plot2d/StackedAreas.js.uncompressed.js | 14 + .../dojo/dojox/charting/plot2d/StackedBars.js | 22 + .../plot2d/StackedBars.js.uncompressed.js | 33 + .../dojox/charting/plot2d/StackedColumns.js | 20 + .../plot2d/StackedColumns.js.uncompressed.js | 31 + .../dojox/charting/plot2d/StackedLines.js | 6 + .../plot2d/StackedLines.js.uncompressed.js | 12 + .../dojo/dojox/charting/plot2d/_PlotEvents.js | 68 + .../plot2d/_PlotEvents.js.uncompressed.js | 120 + .../dojo/dojox/charting/plot2d/common.js | 209 + .../charting/plot2d/common.js.uncompressed.js | 214 + .../dojox/charting/plot2d/commonStacked.js | 76 + .../plot2d/commonStacked.js.uncompressed.js | 77 + .../dojo/dojox/charting/plot3d/Bars.js | 56 + .../charting/plot3d/Bars.js.uncompressed.js | 63 + .../dojo/dojox/charting/plot3d/Base.js | 21 + .../charting/plot3d/Base.js.uncompressed.js | 29 + .../dojo/dojox/charting/plot3d/Cylinders.js | 60 + .../plot3d/Cylinders.js.uncompressed.js | 67 + .../dojo/dojox/charting/resources/Legend.css | 24 + .../dojo/dojox/charting/scaler/common.js | 59 + .../charting/scaler/common.js.uncompressed.js | 70 + .../dojo/dojox/charting/scaler/linear.js | 220 + .../charting/scaler/linear.js.uncompressed.js | 262 + .../dojo/dojox/charting/scaler/primitive.js | 23 + .../scaler/primitive.js.uncompressed.js | 36 + .../dojo/dojox/charting/themes/Adobebricks.js | 5 + .../themes/Adobebricks.js.uncompressed.js | 12 + .../dojo/dojox/charting/themes/Algae.js | 5 + .../charting/themes/Algae.js.uncompressed.js | 12 + .../dojo/dojox/charting/themes/Bahamation.js | 5 + .../themes/Bahamation.js.uncompressed.js | 12 + .../dojo/dojox/charting/themes/BlueDusk.js | 5 + .../themes/BlueDusk.js.uncompressed.js | 13 + .../dojo/dojox/charting/themes/Charged.js | 32 + .../themes/Charged.js.uncompressed.js | 87 + .../dojo/dojox/charting/themes/Chris.js | 30 + .../charting/themes/Chris.js.uncompressed.js | 75 + .../dojo/dojox/charting/themes/Claro.js | 39 + .../charting/themes/Claro.js.uncompressed.js | 106 + .../dojo/dojox/charting/themes/CubanShirts.js | 5 + .../themes/CubanShirts.js.uncompressed.js | 14 + .../dojo/dojox/charting/themes/Desert.js | 5 + .../charting/themes/Desert.js.uncompressed.js | 14 + .../dojo/dojox/charting/themes/Distinctive.js | 5 + .../themes/Distinctive.js.uncompressed.js | 40 + .../dojo/dojox/charting/themes/Dollar.js | 5 + .../charting/themes/Dollar.js.uncompressed.js | 12 + .../dojo/dojox/charting/themes/Electric.js | 32 + .../themes/Electric.js.uncompressed.js | 88 + .../dojo/dojox/charting/themes/Grasshopper.js | 5 + .../themes/Grasshopper.js.uncompressed.js | 12 + .../dojo/dojox/charting/themes/Grasslands.js | 5 + .../themes/Grasslands.js.uncompressed.js | 14 + .../dojo/dojox/charting/themes/GreySkies.js | 5 + .../themes/GreySkies.js.uncompressed.js | 4 + .../dojo/dojox/charting/themes/Harmony.js | 5 + .../themes/Harmony.js.uncompressed.js | 39 + .../dojox/charting/themes/IndigoNation.js | 5 + .../themes/IndigoNation.js.uncompressed.js | 14 + .../dojo/dojox/charting/themes/Ireland.js | 5 + .../themes/Ireland.js.uncompressed.js | 12 + .../dojo/dojox/charting/themes/Julie.js | 23 + .../charting/themes/Julie.js.uncompressed.js | 68 + .../dojo/dojox/charting/themes/MiamiNice.js | 5 + .../themes/MiamiNice.js.uncompressed.js | 12 + .../dojo/dojox/charting/themes/Midwest.js | 5 + .../themes/Midwest.js.uncompressed.js | 12 + .../dojo/dojox/charting/themes/Minty.js | 5 + .../charting/themes/Minty.js.uncompressed.js | 12 + .../dojo/dojox/charting/themes/PlotKit/README | 11 + .../dojox/charting/themes/PlotKit/base.js | 23 + .../themes/PlotKit/base.js.uncompressed.js | 55 + .../dojox/charting/themes/PlotKit/blue.js | 7 + .../themes/PlotKit/blue.js.uncompressed.js | 7 + .../dojox/charting/themes/PlotKit/cyan.js | 7 + .../themes/PlotKit/cyan.js.uncompressed.js | 7 + .../dojox/charting/themes/PlotKit/green.js | 7 + .../themes/PlotKit/green.js.uncompressed.js | 7 + .../dojox/charting/themes/PlotKit/orange.js | 7 + .../themes/PlotKit/orange.js.uncompressed.js | 7 + .../dojox/charting/themes/PlotKit/purple.js | 7 + .../themes/PlotKit/purple.js.uncompressed.js | 7 + .../dojo/dojox/charting/themes/PlotKit/red.js | 7 + .../themes/PlotKit/red.js.uncompressed.js | 7 + .../dojox/charting/themes/PrimaryColors.js | 6 + .../themes/PrimaryColors.js.uncompressed.js | 11 + .../dojo/dojox/charting/themes/PurpleRain.js | 5 + .../themes/PurpleRain.js.uncompressed.js | 14 + .../DojoApp/dojo/dojox/charting/themes/README | 5 + .../dojo/dojox/charting/themes/Renkoo.js | 28 + .../charting/themes/Renkoo.js.uncompressed.js | 83 + .../dojox/charting/themes/RoyalPurples.js | 5 + .../themes/RoyalPurples.js.uncompressed.js | 12 + .../dojo/dojox/charting/themes/SageToLime.js | 5 + .../themes/SageToLime.js.uncompressed.js | 17 + .../dojo/dojox/charting/themes/Shrooms.js | 5 + .../themes/Shrooms.js.uncompressed.js | 21 + .../dojo/dojox/charting/themes/ThreeD.js | 24 + .../charting/themes/ThreeD.js.uncompressed.js | 43 + .../DojoApp/dojo/dojox/charting/themes/Tom.js | 29 + .../charting/themes/Tom.js.uncompressed.js | 85 + .../dojo/dojox/charting/themes/Tufte.js | 5 + .../charting/themes/Tufte.js.uncompressed.js | 54 + .../dojo/dojox/charting/themes/WatersEdge.js | 5 + .../themes/WatersEdge.js.uncompressed.js | 12 + .../dojo/dojox/charting/themes/Wetland.js | 5 + .../themes/Wetland.js.uncompressed.js | 12 + .../dojo/dojox/charting/themes/common.js | 4 + .../charting/themes/common.js.uncompressed.js | 3 + .../charting/themes/gradientGenerator.js | 30 + .../gradientGenerator.js.uncompressed.js | 81 + .../dojo/dojox/charting/widget/BidiSupport.js | 4 + .../widget/BidiSupport.js.uncompressed.js | 4 + .../dojo/dojox/charting/widget/Chart.js | 254 + .../charting/widget/Chart.js.uncompressed.js | 291 + .../dojo/dojox/charting/widget/Chart2D.js | 15 + .../widget/Chart2D.js.uncompressed.js | 20780 ++++++++++ .../dojo/dojox/charting/widget/Legend.js | 102 + .../charting/widget/Legend.js.uncompressed.js | 165 + .../dojox/charting/widget/SelectableLegend.js | 223 + .../SelectableLegend.js.uncompressed.js | 299 + .../dojo/dojox/charting/widget/Sparkline.js | 20 + .../widget/Sparkline.js.uncompressed.js | 54 + .../webroot/DojoApp/dojo/dojox/collections.js | 4 + .../dojo/dojox/collections.js.uncompressed.js | 9 + .../dojo/dojox/collections/ArrayList.js | 96 + .../collections/ArrayList.js.uncompressed.js | 130 + .../dojo/dojox/collections/BinaryTree.js | 247 + .../collections/BinaryTree.js.uncompressed.js | 208 + .../dojo/dojox/collections/Dictionary.js | 83 + .../collections/Dictionary.js.uncompressed.js | 113 + .../DojoApp/dojo/dojox/collections/Queue.js | 49 + .../collections/Queue.js.uncompressed.js | 71 + .../DojoApp/dojo/dojox/collections/README | 39 + .../DojoApp/dojo/dojox/collections/Set.js | 73 + .../dojox/collections/Set.js.uncompressed.js | 83 + .../dojo/dojox/collections/SortedList.js | 153 + .../collections/SortedList.js.uncompressed.js | 195 + .../DojoApp/dojo/dojox/collections/Stack.js | 49 + .../collections/Stack.js.uncompressed.js | 69 + .../DojoApp/dojo/dojox/collections/_base.js | 64 + .../collections/_base.js.uncompressed.js | 100 + .../webroot/DojoApp/dojo/dojox/color.js | 4 + .../dojo/dojox/color.js.uncompressed.js | 10 + .../DojoApp/dojo/dojox/color/Colorspace.js | 462 + .../dojox/color/Colorspace.js.uncompressed.js | 553 + .../dojo/dojox/color/MeanColorModel.js | 19 + .../color/MeanColorModel.js.uncompressed.js | 40 + .../dojo/dojox/color/NeutralColorModel.js | 35 + .../NeutralColorModel.js.uncompressed.js | 79 + .../DojoApp/dojo/dojox/color/Palette.js | 163 + .../dojox/color/Palette.js.uncompressed.js | 460 + .../webroot/DojoApp/dojo/dojox/color/README | 41 + .../dojo/dojox/color/SimpleColorModel.js | 32 + .../color/SimpleColorModel.js.uncompressed.js | 69 + .../webroot/DojoApp/dojo/dojox/color/_base.js | 174 + .../dojo/dojox/color/_base.js.uncompressed.js | 196 + .../dojo/dojox/color/api/ColorModel.js | 7 + .../color/api/ColorModel.js.uncompressed.js | 30 + .../webroot/DojoApp/dojo/dojox/cometd.js | 1 + .../dojo/dojox/cometd.js.uncompressed.js | 2 + .../webroot/DojoApp/dojo/dojox/cometd/README | 29 + .../webroot/DojoApp/dojo/dojox/css3/README | 37 + .../webroot/DojoApp/dojo/dojox/css3/fx.js | 46 + .../dojo/dojox/css3/fx.js.uncompressed.js | 198 + .../DojoApp/dojo/dojox/css3/transit.js | 58 + .../dojox/css3/transit.js.uncompressed.js | 91 + .../DojoApp/dojo/dojox/css3/transition.js | 214 + .../dojox/css3/transition.js.uncompressed.js | 418 + .../DojoApp/dojo/dojox/data/AndOrReadStore.js | 184 + .../data/AndOrReadStore.js.uncompressed.js | 260 + .../dojo/dojox/data/AndOrWriteStore.js | 4 + .../data/AndOrWriteStore.js.uncompressed.js | 11 + .../DojoApp/dojo/dojox/data/AppStore.js | 540 + .../dojox/data/AppStore.js.uncompressed.js | 822 + .../DojoApp/dojo/dojox/data/AtomReadStore.js | 330 + .../data/AtomReadStore.js.uncompressed.js | 553 + .../DojoApp/dojo/dojox/data/CdfStore.js | 309 + .../dojox/data/CdfStore.js.uncompressed.js | 605 + .../DojoApp/dojo/dojox/data/ClientFilter.js | 176 + .../data/ClientFilter.js.uncompressed.js | 291 + .../dojo/dojox/data/CouchDBRestStore.js | 57 + .../data/CouchDBRestStore.js.uncompressed.js | 82 + .../DojoApp/dojo/dojox/data/CssClassStore.js | 95 + .../data/CssClassStore.js.uncompressed.js | 163 + .../DojoApp/dojo/dojox/data/CssRuleStore.js | 325 + .../data/CssRuleStore.js.uncompressed.js | 462 + .../DojoApp/dojo/dojox/data/CsvStore.js | 435 + .../dojox/data/CsvStore.js.uncompressed.js | 727 + .../DojoApp/dojo/dojox/data/FileStore.js | 231 + .../dojox/data/FileStore.js.uncompressed.js | 433 + .../dojo/dojox/data/FlickrRestStore.js | 288 + .../data/FlickrRestStore.js.uncompressed.js | 485 + .../DojoApp/dojo/dojox/data/FlickrStore.js | 137 + .../dojox/data/FlickrStore.js.uncompressed.js | 284 + .../dojo/dojox/data/GoogleFeedStore.js | 31 + .../data/GoogleFeedStore.js.uncompressed.js | 79 + .../dojo/dojox/data/GoogleSearchStore.js | 241 + .../data/GoogleSearchStore.js.uncompressed.js | 651 + .../DojoApp/dojo/dojox/data/HtmlStore.js | 310 + .../dojox/data/HtmlStore.js.uncompressed.js | 569 + .../DojoApp/dojo/dojox/data/HtmlTableStore.js | 256 + .../data/HtmlTableStore.js.uncompressed.js | 473 + .../DojoApp/dojo/dojox/data/ItemExplorer.js | 454 + .../data/ItemExplorer.js.uncompressed.js | 629 + .../dojo/dojox/data/JsonQueryRestStore.js | 6 + .../JsonQueryRestStore.js.uncompressed.js | 20 + .../DojoApp/dojo/dojox/data/JsonRestStore.js | 238 + .../data/JsonRestStore.js.uncompressed.js | 512 + .../DojoApp/dojo/dojox/data/KeyValueStore.js | 216 + .../data/KeyValueStore.js.uncompressed.js | 396 + .../dojo/dojox/data/OpenSearchStore.js | 208 + .../data/OpenSearchStore.js.uncompressed.js | 372 + .../DojoApp/dojo/dojox/data/OpmlStore.js | 320 + .../dojox/data/OpmlStore.js.uncompressed.js | 529 + .../DojoApp/dojo/dojox/data/PersevereStore.js | 69 + .../data/PersevereStore.js.uncompressed.js | 112 + .../DojoApp/dojo/dojox/data/PicasaStore.js | 162 + .../dojox/data/PicasaStore.js.uncompressed.js | 277 + .../DojoApp/dojo/dojox/data/QueryReadStore.js | 244 + .../data/QueryReadStore.js.uncompressed.js | 514 + .../webroot/DojoApp/dojo/dojox/data/README | 127 + .../DojoApp/dojo/dojox/data/RailsStore.js | 110 + .../dojox/data/RailsStore.js.uncompressed.js | 167 + .../DojoApp/dojo/dojox/data/S3Store.js | 19 + .../dojox/data/S3Store.js.uncompressed.js | 33 + .../DojoApp/dojo/dojox/data/ServiceStore.js | 145 + .../data/ServiceStore.js.uncompressed.js | 426 + .../DojoApp/dojo/dojox/data/SnapLogicStore.js | 173 + .../data/SnapLogicStore.js.uncompressed.js | 328 + .../DojoApp/dojo/dojox/data/StoreExplorer.js | 145 + .../data/StoreExplorer.js.uncompressed.js | 195 + .../DojoApp/dojo/dojox/data/WikipediaStore.js | 52 + .../data/WikipediaStore.js.uncompressed.js | 115 + .../DojoApp/dojo/dojox/data/XmlItem.js | 19 + .../dojox/data/XmlItem.js.uncompressed.js | 43 + .../DojoApp/dojo/dojox/data/XmlStore.js | 907 + .../dojox/data/XmlStore.js.uncompressed.js | 1472 + .../webroot/DojoApp/dojo/dojox/data/css.js | 85 + .../dojo/dojox/data/css.js.uncompressed.js | 106 + .../webroot/DojoApp/dojo/dojox/data/dom.js | 35 + .../dojo/dojox/data/dom.js.uncompressed.js | 100 + .../DojoApp/dojo/dojox/data/restListener.js | 29 + .../data/restListener.js.uncompressed.js | 51 + .../webroot/DojoApp/dojo/dojox/data/s3/README | 41 + .../dojo/dojox/data/s3/proxy.example-php | 74 + .../DojoApp/dojo/dojox/data/util/JsonQuery.js | 79 + .../data/util/JsonQuery.js.uncompressed.js | 97 + .../webroot/DojoApp/dojo/dojox/date/README | 48 + .../DojoApp/dojo/dojox/date/buddhist.js | 173 + .../dojox/date/buddhist.js.uncompressed.js | 244 + .../DojoApp/dojo/dojox/date/buddhist/Date.js | 170 + .../date/buddhist/Date.js.uncompressed.js | 294 + .../dojo/dojox/date/buddhist/locale.js | 369 + .../date/buddhist/locale.js.uncompressed.js | 412 + .../webroot/DojoApp/dojo/dojox/date/hebrew.js | 182 + .../dojo/dojox/date/hebrew.js.uncompressed.js | 252 + .../DojoApp/dojo/dojox/date/hebrew/Date.js | 306 + .../dojox/date/hebrew/Date.js.uncompressed.js | 726 + .../DojoApp/dojo/dojox/date/hebrew/locale.js | 414 + .../date/hebrew/locale.js.uncompressed.js | 509 + .../dojo/dojox/date/hebrew/numerals.js | 92 + .../date/hebrew/numerals.js.uncompressed.js | 136 + .../DojoApp/dojo/dojox/date/islamic.js | 176 + .../dojox/date/islamic.js.uncompressed.js | 252 + .../DojoApp/dojo/dojox/date/islamic/Date.js | 216 + .../date/islamic/Date.js.uncompressed.js | 431 + .../DojoApp/dojo/dojox/date/islamic/locale.js | 372 + .../date/islamic/locale.js.uncompressed.js | 414 + .../DojoApp/dojo/dojox/date/persian.js | 176 + .../dojox/date/persian.js.uncompressed.js | 252 + .../DojoApp/dojo/dojox/date/persian/Date.js | 257 + .../date/persian/Date.js.uncompressed.js | 458 + .../DojoApp/dojo/dojox/date/persian/locale.js | 372 + .../date/persian/locale.js.uncompressed.js | 414 + .../webroot/DojoApp/dojo/dojox/date/php.js | 177 + .../dojo/dojox/date/php.js.uncompressed.js | 353 + .../webroot/DojoApp/dojo/dojox/date/posix.js | 206 + .../dojo/dojox/date/posix.js.uncompressed.js | 301 + .../DojoApp/dojo/dojox/date/relative.js | 29 + .../dojox/date/relative.js.uncompressed.js | 90 + .../DojoApp/dojo/dojox/date/timezone.js | 412 + .../dojox/date/timezone.js.uncompressed.js | 711 + .../DojoApp/dojo/dojox/date/umalqura.js | 176 + .../dojox/date/umalqura.js.uncompressed.js | 253 + .../DojoApp/dojo/dojox/date/umalqura/Date.js | 486 + .../date/umalqura/Date.js.uncompressed.js | 706 + .../dojo/dojox/date/umalqura/locale.js | 372 + .../date/umalqura/locale.js.uncompressed.js | 415 + .../DojoApp/dojo/dojox/date/zoneinfo/LICENSE | 10 + .../DojoApp/dojo/dojox/date/zoneinfo/africa | 310 + .../dojo/dojox/date/zoneinfo/antarctica | 68 + .../DojoApp/dojo/dojox/date/zoneinfo/asia | 720 + .../dojo/dojox/date/zoneinfo/australasia | 299 + .../DojoApp/dojo/dojox/date/zoneinfo/backward | 108 + .../DojoApp/dojo/dojox/date/zoneinfo/etcetera | 36 + .../DojoApp/dojo/dojox/date/zoneinfo/europe | 1045 + .../dojo/dojox/date/zoneinfo/northamerica | 895 + .../dojo/dojox/date/zoneinfo/pacificnew | 1 + .../dojo/dojox/date/zoneinfo/southamerica | 501 + .../dojo/dojox/dgauges/CONTRIBUTING.md | 3 + .../dojo/dojox/dgauges/CircularGauge.js | 39 + .../dgauges/CircularGauge.js.uncompressed.js | 58 + .../dojox/dgauges/CircularRangeIndicator.js | 146 + .../CircularRangeIndicator.js.uncompressed.js | 247 + .../dojo/dojox/dgauges/CircularScale.js | 154 + .../dgauges/CircularScale.js.uncompressed.js | 276 + .../dojox/dgauges/CircularValueIndicator.js | 22 + .../CircularValueIndicator.js.uncompressed.js | 62 + .../DojoApp/dojo/dojox/dgauges/GaugeBase.js | 127 + .../dgauges/GaugeBase.js.uncompressed.js | 295 + .../dojo/dojox/dgauges/IndicatorBase.js | 4 + .../dgauges/IndicatorBase.js.uncompressed.js | 10 + .../DojoApp/dojo/dojox/dgauges/LICENSE | 195 + .../dojo/dojox/dgauges/LinearScaler.js | 77 + .../dgauges/LinearScaler.js.uncompressed.js | 161 + .../DojoApp/dojo/dojox/dgauges/LogScaler.js | 47 + .../dgauges/LogScaler.js.uncompressed.js | 120 + .../dojo/dojox/dgauges/MultiLinearScaler.js | 85 + .../MultiLinearScaler.js.uncompressed.js | 149 + .../webroot/DojoApp/dojo/dojox/dgauges/README | 22 + .../dojo/dojox/dgauges/RectangularGauge.js | 129 + .../RectangularGauge.js.uncompressed.js | 208 + .../dgauges/RectangularRangeIndicator.js | 64 + ...ctangularRangeIndicator.js.uncompressed.js | 146 + .../dojo/dojox/dgauges/RectangularScale.js | 113 + .../RectangularScale.js.uncompressed.js | 176 + .../RectangularSegmentedRangeIndicator.js | 172 + ...SegmentedRangeIndicator.js.uncompressed.js | 268 + .../dgauges/RectangularValueIndicator.js | 32 + ...ctangularValueIndicator.js.uncompressed.js | 92 + .../DojoApp/dojo/dojox/dgauges/ScaleBase.js | 90 + .../dgauges/ScaleBase.js.uncompressed.js | 239 + .../dojo/dojox/dgauges/ScaleIndicatorBase.js | 145 + .../ScaleIndicatorBase.js.uncompressed.js | 319 + .../dojo/dojox/dgauges/TextIndicator.js | 58 + .../dgauges/TextIndicator.js.uncompressed.js | 144 + .../dojo/dojox/dgauges/_circularUtils.js | 50 + .../dgauges/_circularUtils.js.uncompressed.js | 91 + .../components/DefaultPropertiesMixin.js | 31 + .../DefaultPropertiesMixin.js.uncompressed.js | 89 + .../components/black/CircularLinearGauge.js | 43 + .../CircularLinearGauge.js.uncompressed.js | 154 + .../components/black/HorizontalLinearGauge.js | 35 + .../HorizontalLinearGauge.js.uncompressed.js | 125 + .../black/SemiCircularLinearGauge.js | 43 + ...SemiCircularLinearGauge.js.uncompressed.js | 162 + .../components/black/VerticalLinearGauge.js | 35 + .../VerticalLinearGauge.js.uncompressed.js | 126 + .../components/classic/CircularLinearGauge.js | 38 + .../CircularLinearGauge.js.uncompressed.js | 173 + .../classic/HorizontalLinearGauge.js | 35 + .../HorizontalLinearGauge.js.uncompressed.js | 147 + .../classic/SemiCircularLinearGauge.js | 37 + ...SemiCircularLinearGauge.js.uncompressed.js | 159 + .../components/classic/VerticalLinearGauge.js | 35 + .../VerticalLinearGauge.js.uncompressed.js | 148 + .../components/default/CircularLinearGauge.js | 40 + .../CircularLinearGauge.js.uncompressed.js | 176 + .../default/HorizontalLinearGauge.js | 54 + .../HorizontalLinearGauge.js.uncompressed.js | 190 + .../default/SemiCircularLinearGauge.js | 52 + ...SemiCircularLinearGauge.js.uncompressed.js | 208 + .../components/default/VerticalLinearGauge.js | 55 + .../VerticalLinearGauge.js.uncompressed.js | 194 + .../components/green/CircularLinearGauge.js | 39 + .../CircularLinearGauge.js.uncompressed.js | 162 + .../components/green/HorizontalLinearGauge.js | 32 + .../HorizontalLinearGauge.js.uncompressed.js | 122 + .../green/SemiCircularLinearGauge.js | 39 + ...SemiCircularLinearGauge.js.uncompressed.js | 155 + .../components/green/VerticalLinearGauge.js | 33 + .../VerticalLinearGauge.js.uncompressed.js | 124 + .../components/grey/CircularLinearGauge.js | 36 + .../CircularLinearGauge.js.uncompressed.js | 139 + .../components/grey/HorizontalLinearGauge.js | 31 + .../HorizontalLinearGauge.js.uncompressed.js | 119 + .../grey/SemiCircularLinearGauge.js | 36 + ...SemiCircularLinearGauge.js.uncompressed.js | 136 + .../components/grey/VerticalLinearGauge.js | 33 + .../VerticalLinearGauge.js.uncompressed.js | 116 + .../dojo/dojox/dgauges/components/utils.js | 57 + .../components/utils.js.uncompressed.js | 133 + .../dojo/dojox/dnd/BoundingBoxController.js | 48 + .../BoundingBoxController.js.uncompressed.js | 152 + .../webroot/DojoApp/dojo/dojox/dnd/README | 22 + .../DojoApp/dojo/dojox/dnd/Selector.js | 102 + .../dojox/dnd/Selector.js.uncompressed.js | 210 + .../DojoApp/dojo/dojox/dojox.profile.js | 63 + .../webroot/DojoApp/dojo/dojox/drawing.js | 3 + .../dojo/dojox/drawing.js.uncompressed.js | 9 + .../DojoApp/dojo/dojox/drawing/Drawing.js | 235 + .../dojox/drawing/Drawing.js.uncompressed.js | 551 + .../webroot/DojoApp/dojo/dojox/drawing/README | 36 + .../DojoApp/dojo/dojox/drawing/_base.js | 5 + .../dojox/drawing/_base.js.uncompressed.js | 6 + .../dojo/dojox/drawing/annotations/Angle.js | 53 + .../annotations/Angle.js.uncompressed.js | 104 + .../dojo/dojox/drawing/annotations/Arrow.js | 27 + .../annotations/Arrow.js.uncompressed.js | 73 + .../dojox/drawing/annotations/BoxShadow.js | 177 + .../annotations/BoxShadow.js.uncompressed.js | 322 + .../dojo/dojox/drawing/annotations/Label.js | 56 + .../annotations/Label.js.uncompressed.js | 114 + .../DojoApp/dojo/dojox/drawing/defaults.js | 32 + .../dojox/drawing/defaults.js.uncompressed.js | 286 + .../dojo/dojox/drawing/library/greek.js | 2 + .../drawing/library/greek.js.uncompressed.js | 63 + .../dojo/dojox/drawing/library/icons.js | 2 + .../drawing/library/icons.js.uncompressed.js | 256 + .../dojo/dojox/drawing/manager/Anchors.js | 233 + .../manager/Anchors.js.uncompressed.js | 463 + .../dojo/dojox/drawing/manager/Canvas.js | 78 + .../drawing/manager/Canvas.js.uncompressed.js | 161 + .../dojo/dojox/drawing/manager/Mouse.js | 210 + .../drawing/manager/Mouse.js.uncompressed.js | 513 + .../dojo/dojox/drawing/manager/Stencil.js | 322 + .../manager/Stencil.js.uncompressed.js | 644 + .../dojo/dojox/drawing/manager/StencilUI.js | 37 + .../manager/StencilUI.js.uncompressed.js | 65 + .../dojo/dojox/drawing/manager/Undo.js | 43 + .../drawing/manager/Undo.js.uncompressed.js | 60 + .../dojo/dojox/drawing/manager/_registry.js | 27 + .../manager/_registry.js.uncompressed.js | 29 + .../dojo/dojox/drawing/manager/keys.js | 146 + .../drawing/manager/keys.js.uncompressed.js | 267 + .../dojo/dojox/drawing/plugins/_Plugin.js | 20 + .../plugins/_Plugin.js.uncompressed.js | 43 + .../drawing/plugins/drawing/GreekPalette.js | 126 + .../drawing/GreekPalette.js.uncompressed.js | 331 + .../dojox/drawing/plugins/drawing/Grid.js | 51 + .../plugins/drawing/Grid.js.uncompressed.js | 102 + .../drawing/plugins/drawing/Silverlight.js | 131 + .../drawing/Silverlight.js.uncompressed.js | 190 + .../dojox/drawing/plugins/tools/Iconize.js | 71 + .../plugins/tools/Iconize.js.uncompressed.js | 104 + .../dojo/dojox/drawing/plugins/tools/Pan.js | 141 + .../plugins/tools/Pan.js.uncompressed.js | 246 + .../dojo/dojox/drawing/plugins/tools/Zoom.js | 41 + .../plugins/tools/Zoom.js.uncompressed.js | 115 + .../dojox/drawing/resources/CrazyTruck.jpg | Bin 0 -> 20014 bytes .../dojox/drawing/resources/GreekPalette.css | 44 + .../dojo/dojox/drawing/resources/drawing.css | 36 + .../drawing/resources/images/tool_icons.png | Bin 0 -> 7213 bytes .../drawing/resources/images/tool_sprites.png | Bin 0 -> 7431 bytes .../dojo/dojox/drawing/resources/toolbar.css | 179 + .../dojo/dojox/drawing/stencil/Ellipse.js | 27 + .../stencil/Ellipse.js.uncompressed.js | 98 + .../dojo/dojox/drawing/stencil/Image.js | 56 + .../drawing/stencil/Image.js.uncompressed.js | 151 + .../dojo/dojox/drawing/stencil/Line.js | 28 + .../drawing/stencil/Line.js.uncompressed.js | 121 + .../dojo/dojox/drawing/stencil/Path.js | 83 + .../drawing/stencil/Path.js.uncompressed.js | 169 + .../dojo/dojox/drawing/stencil/Rect.js | 28 + .../drawing/stencil/Rect.js.uncompressed.js | 86 + .../dojo/dojox/drawing/stencil/Text.js | 90 + .../drawing/stencil/Text.js.uncompressed.js | 225 + .../dojo/dojox/drawing/stencil/_Base.js | 568 + .../drawing/stencil/_Base.js.uncompressed.js | 1204 + .../DojoApp/dojo/dojox/drawing/tools/Arrow.js | 37 + .../drawing/tools/Arrow.js.uncompressed.js | 86 + .../dojo/dojox/drawing/tools/Ellipse.js | 48 + .../drawing/tools/Ellipse.js.uncompressed.js | 80 + .../DojoApp/dojo/dojox/drawing/tools/Line.js | 62 + .../drawing/tools/Line.js.uncompressed.js | 117 + .../DojoApp/dojo/dojox/drawing/tools/Path.js | 146 + .../drawing/tools/Path.js.uncompressed.js | 208 + .../dojo/dojox/drawing/tools/Pencil.js | 50 + .../drawing/tools/Pencil.js.uncompressed.js | 89 + .../DojoApp/dojo/dojox/drawing/tools/Rect.js | 43 + .../drawing/tools/Rect.js.uncompressed.js | 80 + .../dojo/dojox/drawing/tools/TextBlock.js | 482 + .../tools/TextBlock.js.uncompressed.js | 792 + .../dojo/dojox/drawing/tools/custom/Axes.js | 319 + .../tools/custom/Axes.js.uncompressed.js | 579 + .../dojox/drawing/tools/custom/Equation.js | 9 + .../tools/custom/Equation.js.uncompressed.js | 31 + .../dojo/dojox/drawing/tools/custom/Vector.js | 220 + .../tools/custom/Vector.js.uncompressed.js | 393 + .../DojoApp/dojo/dojox/drawing/ui/Button.js | 167 + .../drawing/ui/Button.js.uncompressed.js | 234 + .../DojoApp/dojo/dojox/drawing/ui/Toolbar.js | 180 + .../drawing/ui/Toolbar.js.uncompressed.js | 282 + .../DojoApp/dojo/dojox/drawing/ui/Tooltip.js | 55 + .../drawing/ui/Tooltip.js.uncompressed.js | 112 + .../DojoApp/dojo/dojox/drawing/ui/dom/Pan.js | 111 + .../drawing/ui/dom/Pan.js.uncompressed.js | 212 + .../dojo/dojox/drawing/ui/dom/Toolbar.js | 107 + .../drawing/ui/dom/Toolbar.js.uncompressed.js | 198 + .../DojoApp/dojo/dojox/drawing/ui/dom/Zoom.js | 50 + .../drawing/ui/dom/Zoom.js.uncompressed.js | 131 + .../DojoApp/dojo/dojox/drawing/util/common.js | 102 + .../drawing/util/common.js.uncompressed.js | 277 + .../DojoApp/dojo/dojox/drawing/util/oo.js | 46 + .../dojox/drawing/util/oo.js.uncompressed.js | 121 + .../dojo/dojox/drawing/util/positioning.js | 35 + .../util/positioning.js.uncompressed.js | 62 + .../dojo/dojox/drawing/util/typeset.js | 43 + .../drawing/util/typeset.js.uncompressed.js | 63 + .../webroot/DojoApp/dojo/dojox/dtl.js | 15 + .../DojoApp/dojo/dojox/dtl.js.uncompressed.js | 3050 ++ .../webroot/DojoApp/dojo/dojox/dtl/Context.js | 55 + .../dojo/dojox/dtl/Context.js.uncompressed.js | 87 + .../DojoApp/dojo/dojox/dtl/DomInline.js | 25 + .../dojox/dtl/DomInline.js.uncompressed.js | 39 + .../webroot/DojoApp/dojo/dojox/dtl/Inline.js | 21 + .../dojo/dojox/dtl/Inline.js.uncompressed.js | 35 + .../webroot/DojoApp/dojo/dojox/dtl/README | 207 + .../DojoApp/dojo/dojox/dtl/_DomTemplated.js | 58 + .../dtl/_DomTemplated.js.uncompressed.js | 99 + .../DojoApp/dojo/dojox/dtl/_Templated.js | 96 + .../dojox/dtl/_Templated.js.uncompressed.js | 162 + .../webroot/DojoApp/dojo/dojox/dtl/_base.js | 578 + .../dojo/dojox/dtl/_base.js.uncompressed.js | 790 + .../DojoApp/dojo/dojox/dtl/contrib/data.js | 110 + .../dojox/dtl/contrib/data.js.uncompressed.js | 169 + .../DojoApp/dojo/dojox/dtl/contrib/dijit.js | 181 + .../dtl/contrib/dijit.js.uncompressed.js | 242 + .../DojoApp/dojo/dojox/dtl/contrib/dom.js | 120 + .../dojox/dtl/contrib/dom.js.uncompressed.js | 180 + .../DojoApp/dojo/dojox/dtl/contrib/objects.js | 9 + .../dtl/contrib/objects.js.uncompressed.js | 24 + .../webroot/DojoApp/dojo/dojox/dtl/dom.js | 858 + .../dojo/dojox/dtl/dom.js.uncompressed.js | 1072 + .../dojo/dojox/dtl/ext-dojo/NodeList.js | 22 + .../dtl/ext-dojo/NodeList.js.uncompressed.js | 38 + .../DojoApp/dojo/dojox/dtl/filter/dates.js | 49 + .../dojox/dtl/filter/dates.js.uncompressed.js | 74 + .../dojo/dojox/dtl/filter/htmlstrings.js | 30 + .../dtl/filter/htmlstrings.js.uncompressed.js | 60 + .../DojoApp/dojo/dojox/dtl/filter/integers.js | 22 + .../dtl/filter/integers.js.uncompressed.js | 41 + .../DojoApp/dojo/dojox/dtl/filter/lists.js | 88 + .../dojox/dtl/filter/lists.js.uncompressed.js | 156 + .../DojoApp/dojo/dojox/dtl/filter/logic.js | 27 + .../dojox/dtl/filter/logic.js.uncompressed.js | 52 + .../DojoApp/dojo/dojox/dtl/filter/misc.js | 46 + .../dojox/dtl/filter/misc.js.uncompressed.js | 72 + .../DojoApp/dojo/dojox/dtl/filter/strings.js | 264 + .../dtl/filter/strings.js.uncompressed.js | 353 + .../DojoApp/dojo/dojox/dtl/render/dom.js | 29 + .../dojox/dtl/render/dom.js.uncompressed.js | 48 + .../DojoApp/dojo/dojox/dtl/render/html.js | 6 + .../dojox/dtl/render/html.js.uncompressed.js | 17 + .../DojoApp/dojo/dojox/dtl/tag/date.js | 25 + .../dojox/dtl/tag/date.js.uncompressed.js | 42 + .../DojoApp/dojo/dojox/dtl/tag/loader.js | 249 + .../dojox/dtl/tag/loader.js.uncompressed.js | 305 + .../DojoApp/dojo/dojox/dtl/tag/logic.js | 236 + .../dojox/dtl/tag/logic.js.uncompressed.js | 284 + .../DojoApp/dojo/dojox/dtl/tag/loop.js | 152 + .../dojox/dtl/tag/loop.js.uncompressed.js | 203 + .../DojoApp/dojo/dojox/dtl/tag/misc.js | 211 + .../dojox/dtl/tag/misc.js.uncompressed.js | 298 + .../DojoApp/dojo/dojox/dtl/utils/date.js | 50 + .../dojox/dtl/utils/date.js.uncompressed.js | 83 + .../webroot/DojoApp/dojo/dojox/editor/README | 369 + .../dojo/dojox/editor/plugins/AutoSave.js | 152 + .../plugins/AutoSave.js.uncompressed.js | 440 + .../dojo/dojox/editor/plugins/AutoUrlLink.js | 131 + .../plugins/AutoUrlLink.js.uncompressed.js | 232 + .../dojo/dojox/editor/plugins/BidiSupport.js | 1800 + .../plugins/BidiSupport.js.uncompressed.js | 2287 + .../dojo/dojox/editor/plugins/Blockquote.js | 346 + .../plugins/Blockquote.js.uncompressed.js | 513 + .../dojo/dojox/editor/plugins/Breadcrumb.js | 228 + .../plugins/Breadcrumb.js.uncompressed.js | 355 + .../editor/plugins/CollapsibleToolbar.js | 80 + .../CollapsibleToolbar.js.uncompressed.js | 187 + .../dojox/editor/plugins/EntityPalette.js | 77 + .../plugins/EntityPalette.js.uncompressed.js | 223 + .../dojo/dojox/editor/plugins/FindReplace.js | 382 + .../plugins/FindReplace.js.uncompressed.js | 862 + .../dojo/dojox/editor/plugins/InsertAnchor.js | 199 + .../plugins/InsertAnchor.js.uncompressed.js | 431 + .../dojo/dojox/editor/plugins/InsertEntity.js | 38 + .../plugins/InsertEntity.js.uncompressed.js | 107 + .../dojo/dojox/editor/plugins/LocalImage.js | 140 + .../plugins/LocalImage.js.uncompressed.js | 356 + .../editor/plugins/NormalizeIndentOutdent.js | 589 + .../NormalizeIndentOutdent.js.uncompressed.js | 870 + .../dojox/editor/plugins/NormalizeStyle.js | 451 + .../plugins/NormalizeStyle.js.uncompressed.js | 562 + .../dojo/dojox/editor/plugins/PageBreak.js | 70 + .../plugins/PageBreak.js.uncompressed.js | 173 + .../dojox/editor/plugins/PasteFromWord.js | 71 + .../plugins/PasteFromWord.js.uncompressed.js | 231 + .../dojo/dojox/editor/plugins/PrettyPrint.js | 42 + .../plugins/PrettyPrint.js.uncompressed.js | 108 + .../dojo/dojox/editor/plugins/Preview.js | 44 + .../editor/plugins/Preview.js.uncompressed.js | 106 + .../dojox/editor/plugins/ResizeTableColumn.js | 185 + .../ResizeTableColumn.js.uncompressed.js | 297 + .../dojo/dojox/editor/plugins/SafePaste.js | 51 + .../plugins/SafePaste.js.uncompressed.js | 115 + .../DojoApp/dojo/dojox/editor/plugins/Save.js | 43 + .../editor/plugins/Save.js.uncompressed.js | 144 + .../dojox/editor/plugins/ShowBlockNodes.js | 85 + .../plugins/ShowBlockNodes.js.uncompressed.js | 186 + .../dojo/dojox/editor/plugins/Smiley.js | 65 + .../editor/plugins/Smiley.js.uncompressed.js | 157 + .../dojo/dojox/editor/plugins/SpellCheck.js | 614 + .../plugins/SpellCheck.js.uncompressed.js | 1417 + .../dojo/dojox/editor/plugins/StatusBar.js | 85 + .../plugins/StatusBar.js.uncompressed.js | 184 + .../dojo/dojox/editor/plugins/TablePlugins.js | 683 + .../plugins/TablePlugins.js.uncompressed.js | 1264 + .../dojo/dojox/editor/plugins/TextColor.js | 92 + .../plugins/TextColor.js.uncompressed.js | 213 + .../dojox/editor/plugins/ToolbarLineBreak.js | 20 + .../ToolbarLineBreak.js.uncompressed.js | 47 + .../dojo/dojox/editor/plugins/UploadImage.js | 51 + .../plugins/UploadImage.js.uncompressed.js | 109 + .../dojox/editor/plugins/_SmileyPalette.js | 37 + .../plugins/_SmileyPalette.js.uncompressed.js | 143 + .../dojox/editor/plugins/_SpellCheckParser.js | 38 + .../_SpellCheckParser.js.uncompressed.js | 68 + .../dojo/dojox/editor/plugins/nls/AutoSave.js | 2 + .../plugins/nls/AutoSave.js.uncompressed.js | 51 + .../dojox/editor/plugins/nls/BidiSupport.js | 2 + .../nls/BidiSupport.js.uncompressed.js | 42 + .../dojox/editor/plugins/nls/Blockquote.js | 2 + .../plugins/nls/Blockquote.js.uncompressed.js | 41 + .../dojox/editor/plugins/nls/Breadcrumb.js | 2 + .../plugins/nls/Breadcrumb.js.uncompressed.js | 47 + .../editor/plugins/nls/CollapsibleToolbar.js | 2 + .../nls/CollapsibleToolbar.js.uncompressed.js | 42 + .../dojox/editor/plugins/nls/FindReplace.js | 2 + .../nls/FindReplace.js.uncompressed.js | 59 + .../dojox/editor/plugins/nls/InsertAnchor.js | 2 + .../nls/InsertAnchor.js.uncompressed.js | 46 + .../dojox/editor/plugins/nls/InsertEntity.js | 2 + .../nls/InsertEntity.js.uncompressed.js | 41 + .../dojox/editor/plugins/nls/LocalImage.js | 2 + .../plugins/nls/LocalImage.js.uncompressed.js | 48 + .../dojox/editor/plugins/nls/PageBreak.js | 2 + .../plugins/nls/PageBreak.js.uncompressed.js | 41 + .../dojox/editor/plugins/nls/PasteFromWord.js | 2 + .../nls/PasteFromWord.js.uncompressed.js | 42 + .../dojo/dojox/editor/plugins/nls/Preview.js | 2 + .../plugins/nls/Preview.js.uncompressed.js | 41 + .../dojox/editor/plugins/nls/SafePaste.js | 2 + .../plugins/nls/SafePaste.js.uncompressed.js | 39 + .../dojo/dojox/editor/plugins/nls/Save.js | 2 + .../plugins/nls/Save.js.uncompressed.js | 41 + .../editor/plugins/nls/ShowBlockNodes.js | 2 + .../nls/ShowBlockNodes.js.uncompressed.js | 41 + .../dojo/dojox/editor/plugins/nls/Smiley.js | 2 + .../plugins/nls/Smiley.js.uncompressed.js | 60 + .../dojox/editor/plugins/nls/SpellCheck.js | 2 + .../plugins/nls/SpellCheck.js.uncompressed.js | 54 + .../dojox/editor/plugins/nls/TableDialog.js | 2 + .../nls/TableDialog.js.uncompressed.js | 73 + .../dojox/editor/plugins/nls/TextColor.js | 2 + .../plugins/nls/TextColor.js.uncompressed.js | 42 + .../dojox/editor/plugins/nls/ar/AutoSave.js | 2 + .../nls/ar/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/ar/BidiSupport.js | 2 + .../nls/ar/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/ar/Blockquote.js | 2 + .../nls/ar/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ar/Breadcrumb.js | 2 + .../nls/ar/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/ar/CollapsibleToolbar.js | 2 + .../ar/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/ar/FindReplace.js | 2 + .../nls/ar/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/ar/InsertAnchor.js | 2 + .../nls/ar/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/ar/InsertEntity.js | 2 + .../nls/ar/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ar/LocalImage.js | 2 + .../nls/ar/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/ar/PageBreak.js | 2 + .../nls/ar/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/ar/PasteFromWord.js | 2 + .../nls/ar/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/ar/Preview.js | 2 + .../plugins/nls/ar/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ar/SafePaste.js | 2 + .../nls/ar/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/ar/Save.js | 2 + .../plugins/nls/ar/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/ar/ShowBlockNodes.js | 2 + .../nls/ar/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ar/Smiley.js | 2 + .../plugins/nls/ar/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/ar/SpellCheck.js | 2 + .../nls/ar/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/ar/TableDialog.js | 2 + .../nls/ar/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/ar/TextColor.js | 2 + .../nls/ar/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/ar/latinEntities.js | 2 + .../nls/ar/latinEntities.js.uncompressed.js | 257 + .../editor/plugins/nls/az/TableDialog.js | 2 + .../nls/az/TableDialog.js.uncompressed.js | 31 + .../dojox/editor/plugins/nls/bg/AutoSave.js | 2 + .../nls/bg/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/bg/BidiSupport.js | 2 + .../nls/bg/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/bg/Blockquote.js | 2 + .../nls/bg/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/bg/Breadcrumb.js | 2 + .../nls/bg/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/bg/CollapsibleToolbar.js | 2 + .../bg/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/bg/FindReplace.js | 2 + .../nls/bg/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/bg/InsertAnchor.js | 2 + .../nls/bg/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/bg/InsertEntity.js | 2 + .../nls/bg/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/bg/LocalImage.js | 2 + .../nls/bg/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/bg/PageBreak.js | 2 + .../nls/bg/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/bg/PasteFromWord.js | 2 + .../nls/bg/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/bg/Preview.js | 2 + .../plugins/nls/bg/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/bg/SafePaste.js | 2 + .../nls/bg/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/bg/Save.js | 2 + .../plugins/nls/bg/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/bg/ShowBlockNodes.js | 2 + .../nls/bg/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/bg/Smiley.js | 2 + .../plugins/nls/bg/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/bg/SpellCheck.js | 2 + .../nls/bg/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/bg/TableDialog.js | 2 + .../nls/bg/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/bg/TextColor.js | 2 + .../nls/bg/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/bg/latinEntities.js | 2 + .../nls/bg/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/ca/AutoSave.js | 2 + .../nls/ca/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/ca/BidiSupport.js | 2 + .../nls/ca/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/ca/Blockquote.js | 2 + .../nls/ca/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ca/Breadcrumb.js | 2 + .../nls/ca/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/ca/CollapsibleToolbar.js | 2 + .../ca/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/ca/FindReplace.js | 2 + .../nls/ca/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/ca/InsertAnchor.js | 2 + .../nls/ca/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/ca/InsertEntity.js | 2 + .../nls/ca/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ca/LocalImage.js | 2 + .../nls/ca/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/ca/PageBreak.js | 2 + .../nls/ca/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/ca/PasteFromWord.js | 2 + .../nls/ca/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/ca/Preview.js | 2 + .../plugins/nls/ca/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ca/SafePaste.js | 2 + .../nls/ca/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/ca/Save.js | 2 + .../plugins/nls/ca/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/ca/ShowBlockNodes.js | 2 + .../nls/ca/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ca/Smiley.js | 2 + .../plugins/nls/ca/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/ca/SpellCheck.js | 2 + .../nls/ca/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/ca/TableDialog.js | 2 + .../nls/ca/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/ca/TextColor.js | 2 + .../nls/ca/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/ca/latinEntities.js | 2 + .../nls/ca/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/cs/AutoSave.js | 2 + .../nls/cs/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/cs/BidiSupport.js | 2 + .../nls/cs/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/cs/Blockquote.js | 2 + .../nls/cs/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/cs/Breadcrumb.js | 2 + .../nls/cs/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/cs/CollapsibleToolbar.js | 2 + .../cs/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/cs/FindReplace.js | 2 + .../nls/cs/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/cs/InsertAnchor.js | 2 + .../nls/cs/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/cs/InsertEntity.js | 2 + .../nls/cs/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/cs/LocalImage.js | 2 + .../nls/cs/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/cs/PageBreak.js | 2 + .../nls/cs/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/cs/PasteFromWord.js | 2 + .../nls/cs/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/cs/Preview.js | 2 + .../plugins/nls/cs/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/cs/SafePaste.js | 2 + .../nls/cs/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/cs/Save.js | 2 + .../plugins/nls/cs/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/cs/ShowBlockNodes.js | 2 + .../nls/cs/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/cs/Smiley.js | 2 + .../plugins/nls/cs/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/cs/SpellCheck.js | 2 + .../nls/cs/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/cs/TableDialog.js | 2 + .../nls/cs/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/cs/TextColor.js | 2 + .../nls/cs/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/cs/latinEntities.js | 2 + .../nls/cs/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/da/AutoSave.js | 2 + .../nls/da/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/da/BidiSupport.js | 2 + .../nls/da/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/da/Blockquote.js | 2 + .../nls/da/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/da/Breadcrumb.js | 2 + .../nls/da/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/da/CollapsibleToolbar.js | 2 + .../da/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/da/FindReplace.js | 2 + .../nls/da/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/da/InsertAnchor.js | 2 + .../nls/da/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/da/InsertEntity.js | 2 + .../nls/da/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/da/LocalImage.js | 2 + .../nls/da/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/da/PageBreak.js | 2 + .../nls/da/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/da/PasteFromWord.js | 2 + .../nls/da/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/da/Preview.js | 2 + .../plugins/nls/da/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/da/SafePaste.js | 2 + .../nls/da/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/da/Save.js | 2 + .../plugins/nls/da/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/da/ShowBlockNodes.js | 2 + .../nls/da/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/da/Smiley.js | 2 + .../plugins/nls/da/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/da/SpellCheck.js | 2 + .../nls/da/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/da/TableDialog.js | 2 + .../nls/da/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/da/TextColor.js | 2 + .../nls/da/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/da/latinEntities.js | 2 + .../nls/da/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/de/AutoSave.js | 2 + .../nls/de/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/de/BidiSupport.js | 2 + .../nls/de/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/de/Blockquote.js | 2 + .../nls/de/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/de/Breadcrumb.js | 2 + .../nls/de/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/de/CollapsibleToolbar.js | 2 + .../de/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/de/FindReplace.js | 2 + .../nls/de/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/de/InsertAnchor.js | 2 + .../nls/de/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/de/InsertEntity.js | 2 + .../nls/de/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/de/LocalImage.js | 2 + .../nls/de/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/de/PageBreak.js | 2 + .../nls/de/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/de/PasteFromWord.js | 2 + .../nls/de/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/de/Preview.js | 2 + .../plugins/nls/de/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/de/SafePaste.js | 2 + .../nls/de/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/de/Save.js | 2 + .../plugins/nls/de/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/de/ShowBlockNodes.js | 2 + .../nls/de/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/de/Smiley.js | 2 + .../plugins/nls/de/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/de/SpellCheck.js | 2 + .../nls/de/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/de/TableDialog.js | 2 + .../nls/de/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/de/TextColor.js | 2 + .../nls/de/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/de/latinEntities.js | 2 + .../nls/de/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/el/AutoSave.js | 2 + .../nls/el/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/el/BidiSupport.js | 2 + .../nls/el/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/el/Blockquote.js | 2 + .../nls/el/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/el/Breadcrumb.js | 2 + .../nls/el/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/el/CollapsibleToolbar.js | 2 + .../el/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/el/FindReplace.js | 2 + .../nls/el/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/el/InsertAnchor.js | 2 + .../nls/el/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/el/InsertEntity.js | 2 + .../nls/el/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/el/LocalImage.js | 2 + .../nls/el/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/el/PageBreak.js | 2 + .../nls/el/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/el/PasteFromWord.js | 2 + .../nls/el/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/el/Preview.js | 2 + .../plugins/nls/el/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/el/SafePaste.js | 2 + .../nls/el/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/el/Save.js | 2 + .../plugins/nls/el/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/el/ShowBlockNodes.js | 2 + .../nls/el/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/el/Smiley.js | 2 + .../plugins/nls/el/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/el/SpellCheck.js | 2 + .../nls/el/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/el/TableDialog.js | 2 + .../nls/el/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/el/TextColor.js | 2 + .../nls/el/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/el/latinEntities.js | 2 + .../nls/el/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/es/AutoSave.js | 2 + .../nls/es/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/es/BidiSupport.js | 2 + .../nls/es/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/es/Blockquote.js | 2 + .../nls/es/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/es/Breadcrumb.js | 2 + .../nls/es/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/es/CollapsibleToolbar.js | 2 + .../es/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/es/FindReplace.js | 2 + .../nls/es/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/es/InsertAnchor.js | 2 + .../nls/es/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/es/InsertEntity.js | 2 + .../nls/es/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/es/LocalImage.js | 2 + .../nls/es/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/es/PageBreak.js | 2 + .../nls/es/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/es/PasteFromWord.js | 2 + .../nls/es/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/es/Preview.js | 2 + .../plugins/nls/es/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/es/SafePaste.js | 2 + .../nls/es/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/es/Save.js | 2 + .../plugins/nls/es/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/es/ShowBlockNodes.js | 2 + .../nls/es/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/es/Smiley.js | 2 + .../plugins/nls/es/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/es/SpellCheck.js | 2 + .../nls/es/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/es/TableDialog.js | 2 + .../nls/es/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/es/TextColor.js | 2 + .../nls/es/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/es/latinEntities.js | 2 + .../nls/es/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/fi/AutoSave.js | 2 + .../nls/fi/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/fi/BidiSupport.js | 2 + .../nls/fi/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/fi/Blockquote.js | 2 + .../nls/fi/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/fi/Breadcrumb.js | 2 + .../nls/fi/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/fi/CollapsibleToolbar.js | 2 + .../fi/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/fi/FindReplace.js | 2 + .../nls/fi/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/fi/InsertAnchor.js | 2 + .../nls/fi/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/fi/InsertEntity.js | 2 + .../nls/fi/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/fi/LocalImage.js | 2 + .../nls/fi/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/fi/PageBreak.js | 2 + .../nls/fi/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/fi/PasteFromWord.js | 2 + .../nls/fi/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/fi/Preview.js | 2 + .../plugins/nls/fi/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/fi/SafePaste.js | 2 + .../nls/fi/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/fi/Save.js | 2 + .../plugins/nls/fi/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/fi/ShowBlockNodes.js | 2 + .../nls/fi/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/fi/Smiley.js | 2 + .../plugins/nls/fi/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/fi/SpellCheck.js | 2 + .../nls/fi/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/fi/TableDialog.js | 2 + .../nls/fi/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/fi/TextColor.js | 2 + .../nls/fi/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/fi/latinEntities.js | 2 + .../nls/fi/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/fr/AutoSave.js | 2 + .../nls/fr/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/fr/BidiSupport.js | 2 + .../nls/fr/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/fr/Blockquote.js | 2 + .../nls/fr/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/fr/Breadcrumb.js | 2 + .../nls/fr/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/fr/CollapsibleToolbar.js | 2 + .../fr/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/fr/FindReplace.js | 2 + .../nls/fr/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/fr/InsertAnchor.js | 2 + .../nls/fr/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/fr/InsertEntity.js | 2 + .../nls/fr/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/fr/LocalImage.js | 2 + .../nls/fr/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/fr/PageBreak.js | 2 + .../nls/fr/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/fr/PasteFromWord.js | 2 + .../nls/fr/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/fr/Preview.js | 2 + .../plugins/nls/fr/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/fr/SafePaste.js | 2 + .../nls/fr/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/fr/Save.js | 2 + .../plugins/nls/fr/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/fr/ShowBlockNodes.js | 2 + .../nls/fr/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/fr/Smiley.js | 2 + .../plugins/nls/fr/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/fr/SpellCheck.js | 2 + .../nls/fr/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/fr/TableDialog.js | 2 + .../nls/fr/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/fr/TextColor.js | 2 + .../nls/fr/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/fr/latinEntities.js | 2 + .../nls/fr/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/he/AutoSave.js | 2 + .../nls/he/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/he/BidiSupport.js | 2 + .../nls/he/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/he/Blockquote.js | 2 + .../nls/he/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/he/Breadcrumb.js | 2 + .../nls/he/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/he/CollapsibleToolbar.js | 2 + .../he/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/he/FindReplace.js | 2 + .../nls/he/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/he/InsertAnchor.js | 2 + .../nls/he/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/he/InsertEntity.js | 2 + .../nls/he/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/he/LocalImage.js | 2 + .../nls/he/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/he/PageBreak.js | 2 + .../nls/he/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/he/PasteFromWord.js | 2 + .../nls/he/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/he/Preview.js | 2 + .../plugins/nls/he/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/he/SafePaste.js | 2 + .../nls/he/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/he/Save.js | 2 + .../plugins/nls/he/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/he/ShowBlockNodes.js | 2 + .../nls/he/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/he/Smiley.js | 2 + .../plugins/nls/he/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/he/SpellCheck.js | 2 + .../nls/he/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/he/TableDialog.js | 2 + .../nls/he/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/he/TextColor.js | 2 + .../nls/he/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/he/latinEntities.js | 2 + .../nls/he/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/hr/AutoSave.js | 2 + .../nls/hr/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/hr/BidiSupport.js | 2 + .../nls/hr/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/hr/Blockquote.js | 2 + .../nls/hr/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/hr/Breadcrumb.js | 2 + .../nls/hr/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/hr/CollapsibleToolbar.js | 2 + .../hr/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/hr/FindReplace.js | 2 + .../nls/hr/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/hr/InsertAnchor.js | 2 + .../nls/hr/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/hr/InsertEntity.js | 2 + .../nls/hr/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/hr/LocalImage.js | 2 + .../nls/hr/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/hr/PageBreak.js | 2 + .../nls/hr/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/hr/PasteFromWord.js | 2 + .../nls/hr/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/hr/Preview.js | 2 + .../plugins/nls/hr/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/hr/SafePaste.js | 2 + .../nls/hr/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/hr/Save.js | 2 + .../plugins/nls/hr/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/hr/ShowBlockNodes.js | 2 + .../nls/hr/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/hr/Smiley.js | 2 + .../plugins/nls/hr/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/hr/SpellCheck.js | 2 + .../nls/hr/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/hr/TableDialog.js | 2 + .../nls/hr/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/hr/TextColor.js | 2 + .../nls/hr/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/hr/latinEntities.js | 2 + .../nls/hr/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/hu/AutoSave.js | 2 + .../nls/hu/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/hu/BidiSupport.js | 2 + .../nls/hu/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/hu/Blockquote.js | 2 + .../nls/hu/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/hu/Breadcrumb.js | 2 + .../nls/hu/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/hu/CollapsibleToolbar.js | 2 + .../hu/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/hu/FindReplace.js | 2 + .../nls/hu/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/hu/InsertAnchor.js | 2 + .../nls/hu/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/hu/InsertEntity.js | 2 + .../nls/hu/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/hu/LocalImage.js | 2 + .../nls/hu/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/hu/PageBreak.js | 2 + .../nls/hu/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/hu/PasteFromWord.js | 2 + .../nls/hu/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/hu/Preview.js | 2 + .../plugins/nls/hu/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/hu/SafePaste.js | 2 + .../nls/hu/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/hu/Save.js | 2 + .../plugins/nls/hu/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/hu/ShowBlockNodes.js | 2 + .../nls/hu/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/hu/Smiley.js | 2 + .../plugins/nls/hu/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/hu/SpellCheck.js | 2 + .../nls/hu/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/hu/TableDialog.js | 2 + .../nls/hu/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/hu/TextColor.js | 2 + .../nls/hu/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/hu/latinEntities.js | 2 + .../nls/hu/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/id/AutoSave.js | 2 + .../nls/id/AutoSave.js.uncompressed.js | 16 + .../editor/plugins/nls/id/BidiSupport.js | 2 + .../nls/id/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/id/Blockquote.js | 2 + .../nls/id/Blockquote.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/id/Breadcrumb.js | 2 + .../nls/id/Breadcrumb.js.uncompressed.js | 12 + .../plugins/nls/id/CollapsibleToolbar.js | 2 + .../id/CollapsibleToolbar.js.uncompressed.js | 7 + .../editor/plugins/nls/id/FindReplace.js | 2 + .../nls/id/FindReplace.js.uncompressed.js | 24 + .../editor/plugins/nls/id/InsertAnchor.js | 2 + .../nls/id/InsertAnchor.js.uncompressed.js | 11 + .../editor/plugins/nls/id/InsertEntity.js | 2 + .../nls/id/InsertEntity.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/id/LocalImage.js | 2 + .../nls/id/LocalImage.js.uncompressed.js | 13 + .../dojox/editor/plugins/nls/id/PageBreak.js | 2 + .../nls/id/PageBreak.js.uncompressed.js | 6 + .../editor/plugins/nls/id/PasteFromWord.js | 2 + .../nls/id/PasteFromWord.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/id/Preview.js | 2 + .../plugins/nls/id/Preview.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/id/SafePaste.js | 2 + .../nls/id/SafePaste.js.uncompressed.js | 6 + .../dojo/dojox/editor/plugins/nls/id/Save.js | 2 + .../plugins/nls/id/Save.js.uncompressed.js | 6 + .../editor/plugins/nls/id/ShowBlockNodes.js | 2 + .../nls/id/ShowBlockNodes.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/id/Smiley.js | 2 + .../plugins/nls/id/Smiley.js.uncompressed.js | 25 + .../dojox/editor/plugins/nls/id/SpellCheck.js | 2 + .../nls/id/SpellCheck.js.uncompressed.js | 19 + .../editor/plugins/nls/id/TableDialog.js | 2 + .../nls/id/TableDialog.js.uncompressed.js | 34 + .../dojox/editor/plugins/nls/id/TextColor.js | 2 + .../nls/id/TextColor.js.uncompressed.js | 7 + .../editor/plugins/nls/id/latinEntities.js | 2 + .../nls/id/latinEntities.js.uncompressed.js | 258 + .../dojox/editor/plugins/nls/it/AutoSave.js | 2 + .../nls/it/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/it/BidiSupport.js | 2 + .../nls/it/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/it/Blockquote.js | 2 + .../nls/it/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/it/Breadcrumb.js | 2 + .../nls/it/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/it/CollapsibleToolbar.js | 2 + .../it/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/it/FindReplace.js | 2 + .../nls/it/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/it/InsertAnchor.js | 2 + .../nls/it/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/it/InsertEntity.js | 2 + .../nls/it/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/it/LocalImage.js | 2 + .../nls/it/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/it/PageBreak.js | 2 + .../nls/it/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/it/PasteFromWord.js | 2 + .../nls/it/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/it/Preview.js | 2 + .../plugins/nls/it/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/it/SafePaste.js | 2 + .../nls/it/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/it/Save.js | 2 + .../plugins/nls/it/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/it/ShowBlockNodes.js | 2 + .../nls/it/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/it/Smiley.js | 2 + .../plugins/nls/it/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/it/SpellCheck.js | 2 + .../nls/it/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/it/TableDialog.js | 2 + .../nls/it/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/it/TextColor.js | 2 + .../nls/it/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/it/latinEntities.js | 2 + .../nls/it/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/ja/AutoSave.js | 2 + .../nls/ja/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/ja/BidiSupport.js | 2 + .../nls/ja/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/ja/Blockquote.js | 2 + .../nls/ja/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ja/Breadcrumb.js | 2 + .../nls/ja/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/ja/CollapsibleToolbar.js | 2 + .../ja/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/ja/FindReplace.js | 2 + .../nls/ja/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/ja/InsertAnchor.js | 2 + .../nls/ja/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/ja/InsertEntity.js | 2 + .../nls/ja/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ja/LocalImage.js | 2 + .../nls/ja/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/ja/PageBreak.js | 2 + .../nls/ja/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/ja/PasteFromWord.js | 2 + .../nls/ja/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/ja/Preview.js | 2 + .../plugins/nls/ja/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ja/SafePaste.js | 2 + .../nls/ja/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/ja/Save.js | 2 + .../plugins/nls/ja/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/ja/ShowBlockNodes.js | 2 + .../nls/ja/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ja/Smiley.js | 2 + .../plugins/nls/ja/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/ja/SpellCheck.js | 2 + .../nls/ja/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/ja/TableDialog.js | 2 + .../nls/ja/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/ja/TextColor.js | 2 + .../nls/ja/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/ja/latinEntities.js | 2 + .../nls/ja/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/kk/AutoSave.js | 2 + .../nls/kk/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/kk/BidiSupport.js | 2 + .../nls/kk/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/kk/Blockquote.js | 2 + .../nls/kk/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/kk/Breadcrumb.js | 2 + .../nls/kk/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/kk/CollapsibleToolbar.js | 2 + .../kk/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/kk/FindReplace.js | 2 + .../nls/kk/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/kk/InsertAnchor.js | 2 + .../nls/kk/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/kk/InsertEntity.js | 2 + .../nls/kk/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/kk/LocalImage.js | 2 + .../nls/kk/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/kk/PageBreak.js | 2 + .../nls/kk/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/kk/PasteFromWord.js | 2 + .../nls/kk/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/kk/Preview.js | 2 + .../plugins/nls/kk/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/kk/SafePaste.js | 2 + .../nls/kk/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/kk/Save.js | 2 + .../plugins/nls/kk/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/kk/ShowBlockNodes.js | 2 + .../nls/kk/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/kk/Smiley.js | 2 + .../plugins/nls/kk/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/kk/SpellCheck.js | 2 + .../nls/kk/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/kk/TableDialog.js | 2 + .../nls/kk/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/kk/TextColor.js | 2 + .../nls/kk/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/kk/latinEntities.js | 2 + .../nls/kk/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/ko/AutoSave.js | 2 + .../nls/ko/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/ko/BidiSupport.js | 2 + .../nls/ko/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/ko/Blockquote.js | 2 + .../nls/ko/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ko/Breadcrumb.js | 2 + .../nls/ko/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/ko/CollapsibleToolbar.js | 2 + .../ko/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/ko/FindReplace.js | 2 + .../nls/ko/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/ko/InsertAnchor.js | 2 + .../nls/ko/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/ko/InsertEntity.js | 2 + .../nls/ko/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ko/LocalImage.js | 2 + .../nls/ko/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/ko/PageBreak.js | 2 + .../nls/ko/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/ko/PasteFromWord.js | 2 + .../nls/ko/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/ko/Preview.js | 2 + .../plugins/nls/ko/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ko/SafePaste.js | 2 + .../nls/ko/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/ko/Save.js | 2 + .../plugins/nls/ko/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/ko/ShowBlockNodes.js | 2 + .../nls/ko/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ko/Smiley.js | 2 + .../plugins/nls/ko/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/ko/SpellCheck.js | 2 + .../nls/ko/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/ko/TableDialog.js | 2 + .../nls/ko/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/ko/TextColor.js | 2 + .../nls/ko/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/ko/latinEntities.js | 2 + .../nls/ko/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/latinEntities.js | 2 + .../nls/latinEntities.js.uncompressed.js | 294 + .../dojox/editor/plugins/nls/nb/AutoSave.js | 2 + .../nls/nb/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/nb/BidiSupport.js | 2 + .../nls/nb/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/nb/Blockquote.js | 2 + .../nls/nb/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/nb/Breadcrumb.js | 2 + .../nls/nb/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/nb/CollapsibleToolbar.js | 2 + .../nb/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/nb/FindReplace.js | 2 + .../nls/nb/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/nb/InsertAnchor.js | 2 + .../nls/nb/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/nb/InsertEntity.js | 2 + .../nls/nb/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/nb/LocalImage.js | 2 + .../nls/nb/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/nb/PageBreak.js | 2 + .../nls/nb/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/nb/PasteFromWord.js | 2 + .../nls/nb/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/nb/Preview.js | 2 + .../plugins/nls/nb/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/nb/SafePaste.js | 2 + .../nls/nb/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/nb/Save.js | 2 + .../plugins/nls/nb/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/nb/ShowBlockNodes.js | 2 + .../nls/nb/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/nb/Smiley.js | 2 + .../plugins/nls/nb/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/nb/SpellCheck.js | 2 + .../nls/nb/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/nb/TableDialog.js | 2 + .../nls/nb/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/nb/TextColor.js | 2 + .../nls/nb/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/nb/latinEntities.js | 2 + .../nls/nb/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/nl/AutoSave.js | 2 + .../nls/nl/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/nl/BidiSupport.js | 2 + .../nls/nl/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/nl/Blockquote.js | 2 + .../nls/nl/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/nl/Breadcrumb.js | 2 + .../nls/nl/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/nl/CollapsibleToolbar.js | 2 + .../nl/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/nl/FindReplace.js | 2 + .../nls/nl/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/nl/InsertAnchor.js | 2 + .../nls/nl/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/nl/InsertEntity.js | 2 + .../nls/nl/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/nl/LocalImage.js | 2 + .../nls/nl/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/nl/PageBreak.js | 2 + .../nls/nl/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/nl/PasteFromWord.js | 2 + .../nls/nl/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/nl/Preview.js | 2 + .../plugins/nls/nl/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/nl/SafePaste.js | 2 + .../nls/nl/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/nl/Save.js | 2 + .../plugins/nls/nl/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/nl/ShowBlockNodes.js | 2 + .../nls/nl/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/nl/Smiley.js | 2 + .../plugins/nls/nl/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/nl/SpellCheck.js | 2 + .../nls/nl/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/nl/TableDialog.js | 2 + .../nls/nl/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/nl/TextColor.js | 2 + .../nls/nl/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/nl/latinEntities.js | 2 + .../nls/nl/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/pl/AutoSave.js | 2 + .../nls/pl/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/pl/BidiSupport.js | 2 + .../nls/pl/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/pl/Blockquote.js | 2 + .../nls/pl/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/pl/Breadcrumb.js | 2 + .../nls/pl/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/pl/CollapsibleToolbar.js | 2 + .../pl/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/pl/FindReplace.js | 2 + .../nls/pl/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/pl/InsertAnchor.js | 2 + .../nls/pl/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/pl/InsertEntity.js | 2 + .../nls/pl/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/pl/LocalImage.js | 2 + .../nls/pl/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/pl/PageBreak.js | 2 + .../nls/pl/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/pl/PasteFromWord.js | 2 + .../nls/pl/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/pl/Preview.js | 2 + .../plugins/nls/pl/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/pl/SafePaste.js | 2 + .../nls/pl/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/pl/Save.js | 2 + .../plugins/nls/pl/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/pl/ShowBlockNodes.js | 2 + .../nls/pl/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/pl/Smiley.js | 2 + .../plugins/nls/pl/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/pl/SpellCheck.js | 2 + .../nls/pl/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/pl/TableDialog.js | 2 + .../nls/pl/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/pl/TextColor.js | 2 + .../nls/pl/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/pl/latinEntities.js | 2 + .../nls/pl/latinEntities.js.uncompressed.js | 257 + .../editor/plugins/nls/pt-pt/AutoSave.js | 2 + .../nls/pt-pt/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/pt-pt/BidiSupport.js | 2 + .../nls/pt-pt/BidiSupport.js.uncompressed.js | 7 + .../editor/plugins/nls/pt-pt/Blockquote.js | 2 + .../nls/pt-pt/Blockquote.js.uncompressed.js | 5 + .../editor/plugins/nls/pt-pt/Breadcrumb.js | 2 + .../nls/pt-pt/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/pt-pt/CollapsibleToolbar.js | 2 + .../CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/pt-pt/FindReplace.js | 2 + .../nls/pt-pt/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/pt-pt/InsertAnchor.js | 2 + .../nls/pt-pt/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/pt-pt/InsertEntity.js | 2 + .../nls/pt-pt/InsertEntity.js.uncompressed.js | 5 + .../editor/plugins/nls/pt-pt/LocalImage.js | 2 + .../nls/pt-pt/LocalImage.js.uncompressed.js | 12 + .../editor/plugins/nls/pt-pt/PageBreak.js | 2 + .../nls/pt-pt/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/pt-pt/PasteFromWord.js | 2 + .../pt-pt/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/pt-pt/Preview.js | 2 + .../nls/pt-pt/Preview.js.uncompressed.js | 5 + .../editor/plugins/nls/pt-pt/SafePaste.js | 2 + .../nls/pt-pt/SafePaste.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/pt-pt/Save.js | 2 + .../plugins/nls/pt-pt/Save.js.uncompressed.js | 5 + .../plugins/nls/pt-pt/ShowBlockNodes.js | 2 + .../pt-pt/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/pt-pt/Smiley.js | 2 + .../nls/pt-pt/Smiley.js.uncompressed.js | 24 + .../editor/plugins/nls/pt-pt/SpellCheck.js | 2 + .../nls/pt-pt/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/pt-pt/TableDialog.js | 2 + .../nls/pt-pt/TableDialog.js.uncompressed.js | 33 + .../editor/plugins/nls/pt-pt/TextColor.js | 2 + .../nls/pt-pt/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/pt-pt/latinEntities.js | 2 + .../pt-pt/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/pt/AutoSave.js | 2 + .../nls/pt/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/pt/BidiSupport.js | 2 + .../nls/pt/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/pt/Blockquote.js | 2 + .../nls/pt/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/pt/Breadcrumb.js | 2 + .../nls/pt/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/pt/CollapsibleToolbar.js | 2 + .../pt/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/pt/FindReplace.js | 2 + .../nls/pt/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/pt/InsertAnchor.js | 2 + .../nls/pt/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/pt/InsertEntity.js | 2 + .../nls/pt/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/pt/LocalImage.js | 2 + .../nls/pt/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/pt/PageBreak.js | 2 + .../nls/pt/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/pt/PasteFromWord.js | 2 + .../nls/pt/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/pt/Preview.js | 2 + .../plugins/nls/pt/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/pt/SafePaste.js | 2 + .../nls/pt/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/pt/Save.js | 2 + .../plugins/nls/pt/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/pt/ShowBlockNodes.js | 2 + .../nls/pt/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/pt/Smiley.js | 2 + .../plugins/nls/pt/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/pt/SpellCheck.js | 2 + .../nls/pt/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/pt/TableDialog.js | 2 + .../nls/pt/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/pt/TextColor.js | 2 + .../nls/pt/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/pt/latinEntities.js | 2 + .../nls/pt/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/ro/AutoSave.js | 2 + .../nls/ro/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/ro/BidiSupport.js | 2 + .../nls/ro/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/ro/Blockquote.js | 2 + .../nls/ro/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ro/Breadcrumb.js | 2 + .../nls/ro/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/ro/CollapsibleToolbar.js | 2 + .../ro/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/ro/FindReplace.js | 2 + .../nls/ro/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/ro/InsertAnchor.js | 2 + .../nls/ro/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/ro/InsertEntity.js | 2 + .../nls/ro/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ro/LocalImage.js | 2 + .../nls/ro/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/ro/PageBreak.js | 2 + .../nls/ro/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/ro/PasteFromWord.js | 2 + .../nls/ro/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/ro/Preview.js | 2 + .../plugins/nls/ro/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ro/SafePaste.js | 2 + .../nls/ro/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/ro/Save.js | 2 + .../plugins/nls/ro/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/ro/ShowBlockNodes.js | 2 + .../nls/ro/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ro/Smiley.js | 2 + .../plugins/nls/ro/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/ro/SpellCheck.js | 2 + .../nls/ro/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/ro/TableDialog.js | 2 + .../nls/ro/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/ro/TextColor.js | 2 + .../nls/ro/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/ro/latinEntities.js | 2 + .../nls/ro/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/ru/AutoSave.js | 2 + .../nls/ru/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/ru/BidiSupport.js | 2 + .../nls/ru/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/ru/Blockquote.js | 2 + .../nls/ru/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ru/Breadcrumb.js | 2 + .../nls/ru/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/ru/CollapsibleToolbar.js | 2 + .../ru/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/ru/FindReplace.js | 2 + .../nls/ru/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/ru/InsertAnchor.js | 2 + .../nls/ru/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/ru/InsertEntity.js | 2 + .../nls/ru/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ru/LocalImage.js | 2 + .../nls/ru/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/ru/PageBreak.js | 2 + .../nls/ru/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/ru/PasteFromWord.js | 2 + .../nls/ru/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/ru/Preview.js | 2 + .../plugins/nls/ru/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ru/SafePaste.js | 2 + .../nls/ru/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/ru/Save.js | 2 + .../plugins/nls/ru/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/ru/ShowBlockNodes.js | 2 + .../nls/ru/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/ru/Smiley.js | 2 + .../plugins/nls/ru/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/ru/SpellCheck.js | 2 + .../nls/ru/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/ru/TableDialog.js | 2 + .../nls/ru/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/ru/TextColor.js | 2 + .../nls/ru/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/ru/latinEntities.js | 2 + .../nls/ru/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/sk/AutoSave.js | 2 + .../nls/sk/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/sk/BidiSupport.js | 2 + .../nls/sk/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/sk/Blockquote.js | 2 + .../nls/sk/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/sk/Breadcrumb.js | 2 + .../nls/sk/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/sk/CollapsibleToolbar.js | 2 + .../sk/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/sk/FindReplace.js | 2 + .../nls/sk/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/sk/InsertAnchor.js | 2 + .../nls/sk/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/sk/InsertEntity.js | 2 + .../nls/sk/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/sk/LocalImage.js | 2 + .../nls/sk/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/sk/PageBreak.js | 2 + .../nls/sk/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/sk/PasteFromWord.js | 2 + .../nls/sk/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/sk/Preview.js | 2 + .../plugins/nls/sk/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/sk/SafePaste.js | 2 + .../nls/sk/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/sk/Save.js | 2 + .../plugins/nls/sk/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/sk/ShowBlockNodes.js | 2 + .../nls/sk/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/sk/Smiley.js | 2 + .../plugins/nls/sk/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/sk/SpellCheck.js | 2 + .../nls/sk/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/sk/TableDialog.js | 2 + .../nls/sk/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/sk/TextColor.js | 2 + .../nls/sk/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/sk/latinEntities.js | 2 + .../nls/sk/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/sl/AutoSave.js | 2 + .../nls/sl/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/sl/BidiSupport.js | 2 + .../nls/sl/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/sl/Blockquote.js | 2 + .../nls/sl/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/sl/Breadcrumb.js | 2 + .../nls/sl/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/sl/CollapsibleToolbar.js | 2 + .../sl/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/sl/FindReplace.js | 2 + .../nls/sl/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/sl/InsertAnchor.js | 2 + .../nls/sl/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/sl/InsertEntity.js | 2 + .../nls/sl/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/sl/LocalImage.js | 2 + .../nls/sl/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/sl/PageBreak.js | 2 + .../nls/sl/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/sl/PasteFromWord.js | 2 + .../nls/sl/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/sl/Preview.js | 2 + .../plugins/nls/sl/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/sl/SafePaste.js | 2 + .../nls/sl/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/sl/Save.js | 2 + .../plugins/nls/sl/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/sl/ShowBlockNodes.js | 2 + .../nls/sl/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/sl/Smiley.js | 2 + .../plugins/nls/sl/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/sl/SpellCheck.js | 2 + .../nls/sl/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/sl/TableDialog.js | 2 + .../nls/sl/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/sl/TextColor.js | 2 + .../nls/sl/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/sl/latinEntities.js | 2 + .../nls/sl/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/sv/AutoSave.js | 2 + .../nls/sv/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/sv/BidiSupport.js | 2 + .../nls/sv/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/sv/Blockquote.js | 2 + .../nls/sv/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/sv/Breadcrumb.js | 2 + .../nls/sv/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/sv/CollapsibleToolbar.js | 2 + .../sv/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/sv/FindReplace.js | 2 + .../nls/sv/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/sv/InsertAnchor.js | 2 + .../nls/sv/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/sv/InsertEntity.js | 2 + .../nls/sv/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/sv/LocalImage.js | 2 + .../nls/sv/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/sv/PageBreak.js | 2 + .../nls/sv/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/sv/PasteFromWord.js | 2 + .../nls/sv/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/sv/Preview.js | 2 + .../plugins/nls/sv/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/sv/SafePaste.js | 2 + .../nls/sv/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/sv/Save.js | 2 + .../plugins/nls/sv/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/sv/ShowBlockNodes.js | 2 + .../nls/sv/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/sv/Smiley.js | 2 + .../plugins/nls/sv/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/sv/SpellCheck.js | 2 + .../nls/sv/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/sv/TableDialog.js | 2 + .../nls/sv/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/sv/TextColor.js | 2 + .../nls/sv/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/sv/latinEntities.js | 2 + .../nls/sv/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/th/AutoSave.js | 2 + .../nls/th/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/th/BidiSupport.js | 2 + .../nls/th/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/th/Blockquote.js | 2 + .../nls/th/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/th/Breadcrumb.js | 2 + .../nls/th/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/th/CollapsibleToolbar.js | 2 + .../th/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/th/FindReplace.js | 2 + .../nls/th/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/th/InsertAnchor.js | 2 + .../nls/th/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/th/InsertEntity.js | 2 + .../nls/th/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/th/LocalImage.js | 2 + .../nls/th/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/th/PageBreak.js | 2 + .../nls/th/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/th/PasteFromWord.js | 2 + .../nls/th/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/th/Preview.js | 2 + .../plugins/nls/th/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/th/SafePaste.js | 2 + .../nls/th/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/th/Save.js | 2 + .../plugins/nls/th/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/th/ShowBlockNodes.js | 2 + .../nls/th/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/th/Smiley.js | 2 + .../plugins/nls/th/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/th/SpellCheck.js | 2 + .../nls/th/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/th/TableDialog.js | 2 + .../nls/th/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/th/TextColor.js | 2 + .../nls/th/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/th/latinEntities.js | 2 + .../nls/th/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/tr/AutoSave.js | 2 + .../nls/tr/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/tr/BidiSupport.js | 2 + .../nls/tr/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/tr/Blockquote.js | 2 + .../nls/tr/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/tr/Breadcrumb.js | 2 + .../nls/tr/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/tr/CollapsibleToolbar.js | 2 + .../tr/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/tr/FindReplace.js | 2 + .../nls/tr/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/tr/InsertAnchor.js | 2 + .../nls/tr/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/tr/InsertEntity.js | 2 + .../nls/tr/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/tr/LocalImage.js | 2 + .../nls/tr/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/tr/PageBreak.js | 2 + .../nls/tr/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/tr/PasteFromWord.js | 2 + .../nls/tr/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/tr/Preview.js | 2 + .../plugins/nls/tr/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/tr/SafePaste.js | 2 + .../nls/tr/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/tr/Save.js | 2 + .../plugins/nls/tr/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/tr/ShowBlockNodes.js | 2 + .../nls/tr/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/tr/Smiley.js | 2 + .../plugins/nls/tr/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/tr/SpellCheck.js | 2 + .../nls/tr/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/tr/TableDialog.js | 2 + .../nls/tr/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/tr/TextColor.js | 2 + .../nls/tr/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/tr/latinEntities.js | 2 + .../nls/tr/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/uk/AutoSave.js | 2 + .../nls/uk/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/uk/BidiSupport.js | 2 + .../nls/uk/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/uk/Blockquote.js | 2 + .../nls/uk/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/uk/Breadcrumb.js | 2 + .../nls/uk/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/uk/CollapsibleToolbar.js | 2 + .../uk/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/uk/FindReplace.js | 2 + .../nls/uk/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/uk/InsertAnchor.js | 2 + .../nls/uk/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/uk/InsertEntity.js | 2 + .../nls/uk/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/uk/LocalImage.js | 2 + .../nls/uk/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/uk/PageBreak.js | 2 + .../nls/uk/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/uk/PasteFromWord.js | 2 + .../nls/uk/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/uk/Preview.js | 2 + .../plugins/nls/uk/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/uk/SafePaste.js | 2 + .../nls/uk/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/uk/Save.js | 2 + .../plugins/nls/uk/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/uk/ShowBlockNodes.js | 2 + .../nls/uk/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/uk/Smiley.js | 2 + .../plugins/nls/uk/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/uk/SpellCheck.js | 2 + .../nls/uk/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/uk/TableDialog.js | 2 + .../nls/uk/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/uk/TextColor.js | 2 + .../nls/uk/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/uk/latinEntities.js | 2 + .../nls/uk/latinEntities.js.uncompressed.js | 257 + .../editor/plugins/nls/zh-tw/AutoSave.js | 2 + .../nls/zh-tw/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/zh-tw/BidiSupport.js | 2 + .../nls/zh-tw/BidiSupport.js.uncompressed.js | 7 + .../editor/plugins/nls/zh-tw/Blockquote.js | 2 + .../nls/zh-tw/Blockquote.js.uncompressed.js | 5 + .../editor/plugins/nls/zh-tw/Breadcrumb.js | 2 + .../nls/zh-tw/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/zh-tw/CollapsibleToolbar.js | 2 + .../CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/zh-tw/FindReplace.js | 2 + .../nls/zh-tw/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/zh-tw/InsertAnchor.js | 2 + .../nls/zh-tw/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/zh-tw/InsertEntity.js | 2 + .../nls/zh-tw/InsertEntity.js.uncompressed.js | 5 + .../editor/plugins/nls/zh-tw/LocalImage.js | 2 + .../nls/zh-tw/LocalImage.js.uncompressed.js | 12 + .../editor/plugins/nls/zh-tw/PageBreak.js | 2 + .../nls/zh-tw/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/zh-tw/PasteFromWord.js | 2 + .../zh-tw/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/zh-tw/Preview.js | 2 + .../nls/zh-tw/Preview.js.uncompressed.js | 5 + .../editor/plugins/nls/zh-tw/SafePaste.js | 2 + .../nls/zh-tw/SafePaste.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/zh-tw/Save.js | 2 + .../plugins/nls/zh-tw/Save.js.uncompressed.js | 5 + .../plugins/nls/zh-tw/ShowBlockNodes.js | 2 + .../zh-tw/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/zh-tw/Smiley.js | 2 + .../nls/zh-tw/Smiley.js.uncompressed.js | 24 + .../editor/plugins/nls/zh-tw/SpellCheck.js | 2 + .../nls/zh-tw/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/zh-tw/TableDialog.js | 2 + .../nls/zh-tw/TableDialog.js.uncompressed.js | 33 + .../editor/plugins/nls/zh-tw/TextColor.js | 2 + .../nls/zh-tw/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/zh-tw/latinEntities.js | 2 + .../zh-tw/latinEntities.js.uncompressed.js | 257 + .../dojox/editor/plugins/nls/zh/AutoSave.js | 2 + .../nls/zh/AutoSave.js.uncompressed.js | 15 + .../editor/plugins/nls/zh/BidiSupport.js | 2 + .../nls/zh/BidiSupport.js.uncompressed.js | 7 + .../dojox/editor/plugins/nls/zh/Blockquote.js | 2 + .../nls/zh/Blockquote.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/zh/Breadcrumb.js | 2 + .../nls/zh/Breadcrumb.js.uncompressed.js | 11 + .../plugins/nls/zh/CollapsibleToolbar.js | 2 + .../zh/CollapsibleToolbar.js.uncompressed.js | 6 + .../editor/plugins/nls/zh/FindReplace.js | 2 + .../nls/zh/FindReplace.js.uncompressed.js | 23 + .../editor/plugins/nls/zh/InsertAnchor.js | 2 + .../nls/zh/InsertAnchor.js.uncompressed.js | 10 + .../editor/plugins/nls/zh/InsertEntity.js | 2 + .../nls/zh/InsertEntity.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/zh/LocalImage.js | 2 + .../nls/zh/LocalImage.js.uncompressed.js | 12 + .../dojox/editor/plugins/nls/zh/PageBreak.js | 2 + .../nls/zh/PageBreak.js.uncompressed.js | 5 + .../editor/plugins/nls/zh/PasteFromWord.js | 2 + .../nls/zh/PasteFromWord.js.uncompressed.js | 6 + .../dojox/editor/plugins/nls/zh/Preview.js | 2 + .../plugins/nls/zh/Preview.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/zh/SafePaste.js | 2 + .../nls/zh/SafePaste.js.uncompressed.js | 5 + .../dojo/dojox/editor/plugins/nls/zh/Save.js | 2 + .../plugins/nls/zh/Save.js.uncompressed.js | 5 + .../editor/plugins/nls/zh/ShowBlockNodes.js | 2 + .../nls/zh/ShowBlockNodes.js.uncompressed.js | 5 + .../dojox/editor/plugins/nls/zh/Smiley.js | 2 + .../plugins/nls/zh/Smiley.js.uncompressed.js | 24 + .../dojox/editor/plugins/nls/zh/SpellCheck.js | 2 + .../nls/zh/SpellCheck.js.uncompressed.js | 18 + .../editor/plugins/nls/zh/TableDialog.js | 2 + .../nls/zh/TableDialog.js.uncompressed.js | 33 + .../dojox/editor/plugins/nls/zh/TextColor.js | 2 + .../nls/zh/TextColor.js.uncompressed.js | 6 + .../editor/plugins/nls/zh/latinEntities.js | 2 + .../nls/zh/latinEntities.js.uncompressed.js | 257 + .../editor/plugins/resources/css/AutoSave.css | 38 + .../plugins/resources/css/BidiSupport.css | 22 + .../plugins/resources/css/BidiSupport_rtl.css | 14 + .../plugins/resources/css/Blockquote.css | 14 + .../plugins/resources/css/Breadcrumb.css | 10 + .../resources/css/CollapsibleToolbar.css | 148 + .../plugins/resources/css/FindReplace.css | 59 + .../plugins/resources/css/InsertAnchor.css | 14 + .../plugins/resources/css/InsertEntity.css | 59 + .../plugins/resources/css/LocalImage.css | 11 + .../plugins/resources/css/PageBreak.css | 14 + .../plugins/resources/css/PasteFromWord.css | 25 + .../editor/plugins/resources/css/Preview.css | 14 + .../plugins/resources/css/SafePaste.css | 25 + .../editor/plugins/resources/css/Save.css | 14 + .../plugins/resources/css/ShowBlockNodes.css | 14 + .../editor/plugins/resources/css/Smiley.css | 33 + .../plugins/resources/css/SpellCheck.css | 40 + .../plugins/resources/css/StatusBar.css | 102 + .../plugins/resources/css/TextColor.css | 107 + .../plugins/resources/editorPlugins.css | 151 + .../resources/emoticons/emoticonAngel.gif | Bin 0 -> 3908 bytes .../resources/emoticons/emoticonAngry.gif | Bin 0 -> 1094 bytes .../resources/emoticons/emoticonCool.gif | Bin 0 -> 1041 bytes .../resources/emoticons/emoticonCrying.gif | Bin 0 -> 4994 bytes .../resources/emoticons/emoticonEyebrow.gif | Bin 0 -> 836 bytes .../resources/emoticons/emoticonFrown.gif | Bin 0 -> 839 bytes .../resources/emoticons/emoticonGoofy.gif | Bin 0 -> 828 bytes .../resources/emoticons/emoticonGrin.gif | Bin 0 -> 919 bytes .../resources/emoticons/emoticonHalf.gif | Bin 0 -> 780 bytes .../resources/emoticons/emoticonHappy.gif | Bin 0 -> 834 bytes .../resources/emoticons/emoticonIdea.gif | Bin 0 -> 200 bytes .../resources/emoticons/emoticonLaughing.gif | Bin 0 -> 757 bytes .../resources/emoticons/emoticonNo.gif | Bin 0 -> 3487 bytes .../resources/emoticons/emoticonOops.gif | Bin 0 -> 5449 bytes .../resources/emoticons/emoticonShy.gif | Bin 0 -> 2518 bytes .../resources/emoticons/emoticonSmile.gif | Bin 0 -> 1042 bytes .../resources/emoticons/emoticonTongue.gif | Bin 0 -> 819 bytes .../resources/emoticons/emoticonWink.gif | Bin 0 -> 871 bytes .../resources/emoticons/emoticonYes.gif | Bin 0 -> 3020 bytes .../editor/plugins/resources/icons/anchor.gif | Bin 0 -> 197 bytes .../resources/icons/anchorDisabled.gif | Bin 0 -> 877 bytes .../plugins/resources/icons/autoSave.png | Bin 0 -> 1953 bytes .../plugins/resources/icons/blockquote.gif | Bin 0 -> 1007 bytes .../resources/icons/blockquoteDisabled.gif | Bin 0 -> 960 bytes .../resources/icons/breadcrumbDown.gif | Bin 0 -> 866 bytes .../plugins/resources/icons/claro/close.gif | Bin 0 -> 881 bytes .../icons/editorIconsFindReplaceDisabled.png | Bin 0 -> 812 bytes .../icons/editorIconsFindReplaceEnabled.png | Bin 0 -> 983 bytes .../plugins/resources/icons/insertEntity.gif | Bin 0 -> 177 bytes .../resources/icons/insertEntityDisabled.gif | Bin 0 -> 177 bytes .../plugins/resources/icons/nihilo/close.gif | Bin 0 -> 965 bytes .../plugins/resources/icons/pageBreak.gif | Bin 0 -> 564 bytes .../resources/icons/pageBreakDisabled.gif | Bin 0 -> 912 bytes .../plugins/resources/icons/pasteFromWord.gif | Bin 0 -> 1005 bytes .../resources/icons/pasteFromWordDisabled.gif | Bin 0 -> 269 bytes .../plugins/resources/icons/preview.gif | Bin 0 -> 577 bytes .../resources/icons/previewDisabled.gif | Bin 0 -> 913 bytes .../editor/plugins/resources/icons/save.gif | Bin 0 -> 639 bytes .../plugins/resources/icons/saveDisabled.gif | Bin 0 -> 378 bytes .../resources/icons/showBlockNodes.gif | Bin 0 -> 599 bytes .../icons/showBlockNodesDisabled.gif | Bin 0 -> 957 bytes .../editor/plugins/resources/icons/smiley.gif | Bin 0 -> 1042 bytes .../resources/icons/smileyDisabled.gif | Bin 0 -> 404 bytes .../plugins/resources/icons/soria/close.gif | Bin 0 -> 941 bytes .../plugins/resources/icons/spellcheck.gif | Bin 0 -> 879 bytes .../plugins/resources/icons/tundra/close.gif | Bin 0 -> 193 bytes .../plugins/resources/images/anchor.gif | Bin 0 -> 197 bytes .../resources/images/bidiIconsDisabled.png | Bin 0 -> 8318 bytes .../images/bidiIconsDisabled_rtl.png | Bin 0 -> 8399 bytes .../resources/images/bidiIconsEnabled.png | Bin 0 -> 9352 bytes .../resources/images/bidiIconsEnabled_rtl.png | Bin 0 -> 8942 bytes .../resources/images/blockelems/address.gif | Bin 0 -> 936 bytes .../images/blockelems/blockquote.gif | Bin 0 -> 935 bytes .../resources/images/blockelems/button.gif | Bin 0 -> 929 bytes .../resources/images/blockelems/center.gif | Bin 0 -> 931 bytes .../resources/images/blockelems/dd.gif | Bin 0 -> 888 bytes .../resources/images/blockelems/del.gif | Bin 0 -> 898 bytes .../resources/images/blockelems/div.gif | Bin 0 -> 896 bytes .../resources/images/blockelems/dt.gif | Bin 0 -> 887 bytes .../resources/images/blockelems/fieldset.gif | Bin 0 -> 933 bytes .../resources/images/blockelems/form.gif | Bin 0 -> 918 bytes .../resources/images/blockelems/h1.gif | Bin 0 -> 886 bytes .../resources/images/blockelems/h2.gif | Bin 0 -> 889 bytes .../resources/images/blockelems/h3.gif | Bin 0 -> 891 bytes .../resources/images/blockelems/h4.gif | Bin 0 -> 890 bytes .../resources/images/blockelems/h5.gif | Bin 0 -> 892 bytes .../resources/images/blockelems/h6.gif | Bin 0 -> 890 bytes .../resources/images/blockelems/hr.gif | Bin 0 -> 891 bytes .../resources/images/blockelems/iframe.gif | Bin 0 -> 929 bytes .../resources/images/blockelems/ins.gif | Bin 0 -> 898 bytes .../resources/images/blockelems/li.gif | Bin 0 -> 880 bytes .../resources/images/blockelems/map.gif | Bin 0 -> 907 bytes .../resources/images/blockelems/noscript.gif | Bin 0 -> 943 bytes .../resources/images/blockelems/object.gif | Bin 0 -> 925 bytes .../resources/images/blockelems/ol.gif | Bin 0 -> 887 bytes .../plugins/resources/images/blockelems/p.gif | Bin 0 -> 875 bytes .../resources/images/blockelems/pre.gif | Bin 0 -> 898 bytes .../resources/images/blockelems/script.gif | Bin 0 -> 924 bytes .../resources/images/blockelems/table.gif | Bin 0 -> 917 bytes .../resources/images/blockelems/ul.gif | Bin 0 -> 884 bytes .../editor/plugins/resources/images/busy.gif | Bin 0 -> 9052 bytes .../plugins/resources/images/cellpad.png | Bin 0 -> 147 bytes .../plugins/resources/images/cellspace.png | Bin 0 -> 135 bytes .../plugins/resources/images/checking.gif | Bin 0 -> 348 bytes .../resources/images/claro/collapse.gif | Bin 0 -> 860 bytes .../plugins/resources/images/claro/expand.gif | Bin 0 -> 871 bytes .../resources/images/nihilo/collapse.gif | Bin 0 -> 860 bytes .../resources/images/nihilo/expand.gif | Bin 0 -> 871 bytes .../resources/images/nihilo/sidebar.gif | Bin 0 -> 832 bytes .../resources/images/soria/collapse.gif | Bin 0 -> 860 bytes .../plugins/resources/images/soria/expand.gif | Bin 0 -> 871 bytes .../resources/images/soria/sidebar.gif | Bin 0 -> 832 bytes .../plugins/resources/images/tableIcons.png | Bin 0 -> 2961 bytes .../resources/images/tableIcons_rtl.png | Bin 0 -> 2896 bytes .../resources/images/tundra/collapse.gif | Bin 0 -> 860 bytes .../resources/images/tundra/expand.gif | Bin 0 -> 871 bytes .../resources/images/tundra/sidebar.gif | Bin 0 -> 834 bytes .../resources/images/uploadImageIcon.gif | Bin 0 -> 255 bytes .../editor/plugins/resources/insertTable.html | 48 + .../editor/plugins/resources/modifyTable.html | 58 + .../webroot/DojoApp/dojo/dojox/embed/Flash.js | 250 + .../dojo/dojox/embed/Flash.js.uncompressed.js | 505 + .../DojoApp/dojo/dojox/embed/Object.js | 28 + .../dojox/embed/Object.js.uncompressed.js | 112 + .../DojoApp/dojo/dojox/embed/Quicktime.js | 129 + .../dojox/embed/Quicktime.js.uncompressed.js | 258 + .../webroot/DojoApp/dojo/dojox/embed/README | 44 + .../DojoApp/dojo/dojox/embed/flashVars.js | 32 + .../dojox/embed/flashVars.js.uncompressed.js | 62 + .../dojo/dojox/embed/resources/version.mov | Bin 0 -> 1667 bytes .../DojoApp/dojo/dojox/encoding/LICENSE | 14 + .../DojoApp/dojo/dojox/encoding/README | 35 + .../DojoApp/dojo/dojox/encoding/_base.js | 4 + .../dojox/encoding/_base.js.uncompressed.js | 3 + .../DojoApp/dojo/dojox/encoding/ascii85.js | 63 + .../dojox/encoding/ascii85.js.uncompressed.js | 66 + .../DojoApp/dojo/dojox/encoding/base64.js | 61 + .../dojox/encoding/base64.js.uncompressed.js | 64 + .../DojoApp/dojo/dojox/encoding/bits.js | 58 + .../dojox/encoding/bits.js.uncompressed.js | 71 + .../dojo/dojox/encoding/compression/lzw.js | 74 + .../compression/lzw.js.uncompressed.js | 92 + .../dojo/dojox/encoding/compression/splay.js | 58 + .../compression/splay.js.uncompressed.js | 67 + .../dojo/dojox/encoding/crypto/Blowfish.js | 266 + .../crypto/Blowfish.js.uncompressed.js | 483 + .../dojo/dojox/encoding/crypto/RSAKey-ext.js | 95 + .../crypto/RSAKey-ext.js.uncompressed.js | 123 + .../dojo/dojox/encoding/crypto/RSAKey.js | 54 + .../encoding/crypto/RSAKey.js.uncompressed.js | 74 + .../dojo/dojox/encoding/crypto/SimpleAES.js | 225 + .../crypto/SimpleAES.js.uncompressed.js | 334 + .../dojo/dojox/encoding/crypto/_base.js | 7 + .../encoding/crypto/_base.js.uncompressed.js | 17 + .../dojo/dojox/encoding/digests/MD5.js | 147 + .../encoding/digests/MD5.js.uncompressed.js | 172 + .../dojo/dojox/encoding/digests/SHA1.js | 126 + .../encoding/digests/SHA1.js.uncompressed.js | 149 + .../dojo/dojox/encoding/digests/SHA224.js | 5 + .../digests/SHA224.js.uncompressed.js | 9 + .../dojo/dojox/encoding/digests/SHA256.js | 5 + .../digests/SHA256.js.uncompressed.js | 9 + .../dojo/dojox/encoding/digests/SHA384.js | 5 + .../digests/SHA384.js.uncompressed.js | 12 + .../dojo/dojox/encoding/digests/SHA512.js | 5 + .../digests/SHA512.js.uncompressed.js | 12 + .../dojo/dojox/encoding/digests/_base.js | 77 + .../encoding/digests/_base.js.uncompressed.js | 101 + .../dojo/dojox/encoding/digests/_sha-32.js | 134 + .../digests/_sha-32.js.uncompressed.js | 138 + .../dojo/dojox/encoding/digests/_sha-64.js | 143 + .../digests/_sha-64.js.uncompressed.js | 221 + .../dojo/dojox/encoding/digests/_sha2.js | 45 + .../encoding/digests/_sha2.js.uncompressed.js | 69 + .../DojoApp/dojo/dojox/encoding/easy64.js | 39 + .../dojox/encoding/easy64.js.uncompressed.js | 51 + .../webroot/DojoApp/dojo/dojox/flash.js | 3 + .../dojo/dojox/flash.js.uncompressed.js | 9 + .../dojo/dojox/flash/DojoExternalInterface.as | 177 + .../dojo/dojox/flash/ExpressInstall.as | 71 + .../webroot/DojoApp/dojo/dojox/flash/README | 31 + .../webroot/DojoApp/dojo/dojox/flash/_base.js | 290 + .../dojo/dojox/flash/_base.js.uncompressed.js | 772 + .../DojoApp/dojo/dojox/form/BusyButton.js | 79 + .../dojox/form/BusyButton.js.uncompressed.js | 157 + .../dojo/dojox/form/CheckedMultiSelect.js | 250 + .../CheckedMultiSelect.js.uncompressed.js | 553 + .../DojoApp/dojo/dojox/form/DateTextBox.js | 8 + .../dojox/form/DateTextBox.js.uncompressed.js | 28 + .../DojoApp/dojo/dojox/form/DayTextBox.js | 27 + .../dojox/form/DayTextBox.js.uncompressed.js | 52 + .../DojoApp/dojo/dojox/form/DropDownSelect.js | 6 + .../form/DropDownSelect.js.uncompressed.js | 10 + .../DojoApp/dojo/dojox/form/DropDownStack.js | 4 + .../form/DropDownStack.js.uncompressed.js | 13 + .../DojoApp/dojo/dojox/form/FileInput.js | 34 + .../dojox/form/FileInput.js.uncompressed.js | 96 + .../DojoApp/dojo/dojox/form/FileInputAuto.js | 90 + .../form/FileInputAuto.js.uncompressed.js | 237 + .../DojoApp/dojo/dojox/form/FileInputBlind.js | 5 + .../form/FileInputBlind.js.uncompressed.js | 9 + .../dojo/dojox/form/FilePickerTextBox.js | 253 + .../form/FilePickerTextBox.js.uncompressed.js | 332 + .../DojoApp/dojo/dojox/form/FileUploader.js | 689 + .../form/FileUploader.js.uncompressed.js | 1445 + .../dojo/dojox/form/HorizontalRangeSlider.js | 5 + .../HorizontalRangeSlider.js.uncompressed.js | 15 + .../DojoApp/dojo/dojox/form/ListInput.js | 426 + .../dojox/form/ListInput.js.uncompressed.js | 1021 + .../DojoApp/dojo/dojox/form/Manager.js | 9 + .../dojox/form/Manager.js.uncompressed.js | 35 + .../DojoApp/dojo/dojox/form/MonthTextBox.js | 38 + .../form/MonthTextBox.js.uncompressed.js | 69 + .../DojoApp/dojo/dojox/form/MultiComboBox.js | 36 + .../form/MultiComboBox.js.uncompressed.js | 61 + .../dojo/dojox/form/PasswordValidator.js | 151 + .../form/PasswordValidator.js.uncompressed.js | 323 + .../webroot/DojoApp/dojo/dojox/form/README | 71 + .../DojoApp/dojo/dojox/form/RadioStack.js | 4 + .../dojox/form/RadioStack.js.uncompressed.js | 13 + .../DojoApp/dojo/dojox/form/RangeSlider.js | 5 + .../dojox/form/RangeSlider.js.uncompressed.js | 21 + .../webroot/DojoApp/dojo/dojox/form/Rating.js | 46 + .../dojo/dojox/form/Rating.js.uncompressed.js | 119 + .../DojoApp/dojo/dojox/form/TimeSpinner.js | 23 + .../dojox/form/TimeSpinner.js.uncompressed.js | 60 + .../dojo/dojox/form/TriStateCheckBox.js | 110 + .../form/TriStateCheckBox.js.uncompressed.js | 286 + .../DojoApp/dojo/dojox/form/Uploader.js | 140 + .../dojox/form/Uploader.js.uncompressed.js | 408 + .../dojo/dojox/form/VerticalRangeSlider.js | 5 + .../VerticalRangeSlider.js.uncompressed.js | 15 + .../DojoApp/dojo/dojox/form/YearTextBox.js | 37 + .../dojox/form/YearTextBox.js.uncompressed.js | 63 + .../dojo/dojox/form/_FormSelectWidget.js | 6 + .../form/_FormSelectWidget.js.uncompressed.js | 10 + .../DojoApp/dojo/dojox/form/_HasDropDown.js | 6 + .../form/_HasDropDown.js.uncompressed.js | 10 + .../dojo/dojox/form/_RangeSliderMixin.js | 272 + .../form/_RangeSliderMixin.js.uncompressed.js | 377 + .../dojo/dojox/form/_SelectStackMixin.js | 143 + .../form/_SelectStackMixin.js.uncompressed.js | 229 + .../dojo/dojox/form/manager/_ClassMixin.js | 20 + .../manager/_ClassMixin.js.uncompressed.js | 72 + .../dojo/dojox/form/manager/_DisplayMixin.js | 19 + .../manager/_DisplayMixin.js.uncompressed.js | 65 + .../dojo/dojox/form/manager/_EnableMixin.js | 32 + .../manager/_EnableMixin.js.uncompressed.js | 83 + .../dojo/dojox/form/manager/_FormMixin.js | 74 + .../manager/_FormMixin.js.uncompressed.js | 160 + .../DojoApp/dojo/dojox/form/manager/_Mixin.js | 277 + .../form/manager/_Mixin.js.uncompressed.js | 501 + .../dojo/dojox/form/manager/_NodeMixin.js | 234 + .../manager/_NodeMixin.js.uncompressed.js | 372 + .../dojo/dojox/form/manager/_ValueMixin.js | 40 + .../manager/_ValueMixin.js.uncompressed.js | 81 + .../dojo/dojox/form/nls/CheckedMultiSelect.js | 2 + .../nls/CheckedMultiSelect.js.uncompressed.js | 40 + .../dojo/dojox/form/nls/PasswordValidator.js | 2 + .../nls/PasswordValidator.js.uncompressed.js | 43 + .../DojoApp/dojo/dojox/form/nls/Uploader.js | 2 + .../form/nls/Uploader.js.uncompressed.js | 39 + .../dojox/form/nls/ar/CheckedMultiSelect.js | 2 + .../ar/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/ar/PasswordValidator.js | 2 + .../ar/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/ar/Uploader.js | 2 + .../form/nls/ar/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/az/PasswordValidator.js | 2 + .../az/PasswordValidator.js.uncompressed.js | 6 + .../dojox/form/nls/bg/CheckedMultiSelect.js | 2 + .../bg/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/bg/PasswordValidator.js | 2 + .../bg/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/bg/Uploader.js | 2 + .../form/nls/bg/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/ca/CheckedMultiSelect.js | 2 + .../ca/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/ca/PasswordValidator.js | 2 + .../ca/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/ca/Uploader.js | 2 + .../form/nls/ca/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/cs/CheckedMultiSelect.js | 2 + .../cs/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/cs/PasswordValidator.js | 2 + .../cs/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/cs/Uploader.js | 2 + .../form/nls/cs/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/da/CheckedMultiSelect.js | 2 + .../da/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/da/PasswordValidator.js | 2 + .../da/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/da/Uploader.js | 2 + .../form/nls/da/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/de/CheckedMultiSelect.js | 2 + .../de/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/de/PasswordValidator.js | 2 + .../de/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/de/Uploader.js | 2 + .../form/nls/de/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/el/CheckedMultiSelect.js | 2 + .../el/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/el/PasswordValidator.js | 2 + .../el/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/el/Uploader.js | 2 + .../form/nls/el/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/es/CheckedMultiSelect.js | 2 + .../es/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/es/PasswordValidator.js | 2 + .../es/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/es/Uploader.js | 2 + .../form/nls/es/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/fi/CheckedMultiSelect.js | 2 + .../fi/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/fi/PasswordValidator.js | 2 + .../fi/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/fi/Uploader.js | 2 + .../form/nls/fi/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/fr/CheckedMultiSelect.js | 2 + .../fr/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/fr/PasswordValidator.js | 2 + .../fr/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/fr/Uploader.js | 2 + .../form/nls/fr/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/he/CheckedMultiSelect.js | 2 + .../he/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/he/PasswordValidator.js | 2 + .../he/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/he/Uploader.js | 2 + .../form/nls/he/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/hr/CheckedMultiSelect.js | 2 + .../hr/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/hr/PasswordValidator.js | 2 + .../hr/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/hr/Uploader.js | 2 + .../form/nls/hr/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/hu/CheckedMultiSelect.js | 2 + .../hu/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/hu/PasswordValidator.js | 2 + .../hu/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/hu/Uploader.js | 2 + .../form/nls/hu/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/id/CheckedMultiSelect.js | 2 + .../id/CheckedMultiSelect.js.uncompressed.js | 7 + .../dojox/form/nls/id/PasswordValidator.js | 2 + .../id/PasswordValidator.js.uncompressed.js | 7 + .../dojo/dojox/form/nls/id/Uploader.js | 2 + .../form/nls/id/Uploader.js.uncompressed.js | 6 + .../dojox/form/nls/it/CheckedMultiSelect.js | 2 + .../it/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/it/PasswordValidator.js | 2 + .../it/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/it/Uploader.js | 2 + .../form/nls/it/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/ja/CheckedMultiSelect.js | 2 + .../ja/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/ja/PasswordValidator.js | 2 + .../ja/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/ja/Uploader.js | 2 + .../form/nls/ja/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/kk/CheckedMultiSelect.js | 2 + .../kk/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/kk/PasswordValidator.js | 2 + .../kk/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/kk/Uploader.js | 2 + .../form/nls/kk/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/ko/CheckedMultiSelect.js | 2 + .../ko/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/ko/PasswordValidator.js | 2 + .../ko/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/ko/Uploader.js | 2 + .../form/nls/ko/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/nb/CheckedMultiSelect.js | 2 + .../nb/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/nb/PasswordValidator.js | 2 + .../nb/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/nb/Uploader.js | 2 + .../form/nls/nb/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/nl/CheckedMultiSelect.js | 2 + .../nl/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/nl/PasswordValidator.js | 2 + .../nl/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/nl/Uploader.js | 2 + .../form/nls/nl/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/pl/CheckedMultiSelect.js | 2 + .../pl/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/pl/PasswordValidator.js | 2 + .../pl/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/pl/Uploader.js | 2 + .../form/nls/pl/Uploader.js.uncompressed.js | 5 + .../form/nls/pt-pt/CheckedMultiSelect.js | 2 + .../CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/pt-pt/PasswordValidator.js | 2 + .../PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/pt-pt/Uploader.js | 2 + .../nls/pt-pt/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/pt/CheckedMultiSelect.js | 2 + .../pt/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/pt/PasswordValidator.js | 2 + .../pt/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/pt/Uploader.js | 2 + .../form/nls/pt/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/ro/CheckedMultiSelect.js | 2 + .../ro/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/ro/PasswordValidator.js | 2 + .../ro/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/ro/Uploader.js | 2 + .../form/nls/ro/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/ru/CheckedMultiSelect.js | 2 + .../ru/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/ru/PasswordValidator.js | 2 + .../ru/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/ru/Uploader.js | 2 + .../form/nls/ru/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/sk/CheckedMultiSelect.js | 2 + .../sk/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/sk/PasswordValidator.js | 2 + .../sk/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/sk/Uploader.js | 2 + .../form/nls/sk/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/sl/CheckedMultiSelect.js | 2 + .../sl/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/sl/PasswordValidator.js | 2 + .../sl/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/sl/Uploader.js | 2 + .../form/nls/sl/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/sv/CheckedMultiSelect.js | 2 + .../sv/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/sv/PasswordValidator.js | 2 + .../sv/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/sv/Uploader.js | 2 + .../form/nls/sv/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/th/CheckedMultiSelect.js | 2 + .../th/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/th/PasswordValidator.js | 2 + .../th/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/th/Uploader.js | 2 + .../form/nls/th/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/tr/CheckedMultiSelect.js | 2 + .../tr/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/tr/PasswordValidator.js | 2 + .../tr/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/tr/Uploader.js | 2 + .../form/nls/tr/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/uk/CheckedMultiSelect.js | 2 + .../uk/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/uk/PasswordValidator.js | 2 + .../uk/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/uk/Uploader.js | 2 + .../form/nls/uk/Uploader.js.uncompressed.js | 5 + .../form/nls/zh-tw/CheckedMultiSelect.js | 2 + .../CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/zh-tw/PasswordValidator.js | 2 + .../PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/zh-tw/Uploader.js | 2 + .../nls/zh-tw/Uploader.js.uncompressed.js | 5 + .../dojox/form/nls/zh/CheckedMultiSelect.js | 2 + .../zh/CheckedMultiSelect.js.uncompressed.js | 6 + .../dojox/form/nls/zh/PasswordValidator.js | 2 + .../zh/PasswordValidator.js.uncompressed.js | 6 + .../dojo/dojox/form/nls/zh/Uploader.js | 2 + .../form/nls/zh/Uploader.js.uncompressed.js | 5 + .../dojo/dojox/form/resources/BusyButton.css | 9 + .../form/resources/CheckedMultiSelect.css | 208 + .../form/resources/CheckedMultiSelect.html | 8 + .../dojo/dojox/form/resources/FileInput.css | 118 + .../dojo/dojox/form/resources/FileInput.html | 9 + .../dojox/form/resources/FileInputAuto.html | 9 + .../form/resources/FilePickerTextBox.css | 468 + .../form/resources/FilePickerTextBox.html | 18 + .../dojox/form/resources/FileUploader.css | 134 + .../form/resources/HorizontalRangeSlider.html | 39 + .../dojo/dojox/form/resources/ListInput.css | 75 + .../form/resources/PasswordValidator.html | 3 + .../dojo/dojox/form/resources/RangeSlider.css | 30 + .../dojo/dojox/form/resources/Rating.css | 20 + .../dojo/dojox/form/resources/RecieveFile.php | 37 + .../dojox/form/resources/TriStateCheckBox.css | 94 + .../form/resources/TriStateCheckBox.html | 5 + .../dojo/dojox/form/resources/Uploader.html | 17 + .../dojox/form/resources/UploaderFileList.css | 51 + .../form/resources/UploaderFileList.html | 17 + .../form/resources/VerticalRangeSlider.html | 50 + .../resources/_CheckedMultiSelectItem.html | 5 + .../_CheckedMultiSelectMenuItem.html | 10 + .../dojox/form/resources/fileuploader.swf | Bin 0 -> 13306 bytes .../form/resources/images/loading_wheel.gif | Bin 0 -> 1266 bytes .../resources/images/nihiloFolderSprite.gif | Bin 0 -> 331 bytes .../form/resources/images/rating_empty.gif | Bin 0 -> 934 bytes .../form/resources/images/rating_full.gif | Bin 0 -> 936 bytes .../resources/images/soriaFolderSprite.gif | Bin 0 -> 335 bytes .../images/tristatecheckboxStates.png | Bin 0 -> 1458 bytes .../resources/images/tundraFolderSprite.gif | Bin 0 -> 318 bytes .../dojo/dojox/form/resources/uploader.swf | Bin 0 -> 10089 bytes .../dojo/dojox/form/uploader/FileList.js | 87 + .../form/uploader/FileList.js.uncompressed.js | 189 + .../DojoApp/dojo/dojox/form/uploader/_Base.js | 78 + .../form/uploader/_Base.js.uncompressed.js | 116 + .../dojo/dojox/form/uploader/_Flash.js | 117 + .../form/uploader/_Flash.js.uncompressed.js | 306 + .../dojo/dojox/form/uploader/_HTML5.js | 99 + .../form/uploader/_HTML5.js.uncompressed.js | 165 + .../dojo/dojox/form/uploader/_IFrame.js | 40 + .../form/uploader/_IFrame.js.uncompressed.js | 85 + .../dojo/dojox/form/uploader/plugins/Flash.js | 5 + .../uploader/plugins/Flash.js.uncompressed.js | 4 + .../dojo/dojox/form/uploader/plugins/HTML5.js | 5 + .../uploader/plugins/HTML5.js.uncompressed.js | 4 + .../dojox/form/uploader/plugins/IFrame.js | 5 + .../plugins/IFrame.js.uncompressed.js | 4 + .../webroot/DojoApp/dojo/dojox/fx.js | 4 + .../DojoApp/dojo/dojox/fx.js.uncompressed.js | 10 + .../webroot/DojoApp/dojo/dojox/fx/README | 75 + .../webroot/DojoApp/dojo/dojox/fx/Shadow.js | 109 + .../dojo/dojox/fx/Shadow.js.uncompressed.js | 154 + .../webroot/DojoApp/dojo/dojox/fx/Timeline.js | 119 + .../dojo/dojox/fx/Timeline.js.uncompressed.js | 209 + .../webroot/DojoApp/dojo/dojox/fx/_arg.js | 13 + .../dojo/dojox/fx/_arg.js.uncompressed.js | 25 + .../webroot/DojoApp/dojo/dojox/fx/_base.js | 111 + .../dojo/dojox/fx/_base.js.uncompressed.js | 323 + .../webroot/DojoApp/dojo/dojox/fx/_core.js | 26 + .../dojo/dojox/fx/_core.js.uncompressed.js | 62 + .../webroot/DojoApp/dojo/dojox/fx/easing.js | 7 + .../dojo/dojox/fx/easing.js.uncompressed.js | 13 + .../dojo/dojox/fx/ext-dojo/NodeList-style.js | 18 + .../NodeList-style.js.uncompressed.js | 63 + .../dojo/dojox/fx/ext-dojo/NodeList.js | 16 + .../fx/ext-dojo/NodeList.js.uncompressed.js | 67 + .../DojoApp/dojo/dojox/fx/ext-dojo/complex.js | 90 + .../fx/ext-dojo/complex.js.uncompressed.js | 196 + .../DojoApp/dojo/dojox/fx/ext-dojo/reverse.js | 60 + .../fx/ext-dojo/reverse.js.uncompressed.js | 103 + .../webroot/DojoApp/dojo/dojox/fx/flip.js | 173 + .../dojo/dojox/fx/flip.js.uncompressed.js | 518 + .../dojo/dojox/fx/resources/shadowB.png | Bin 0 -> 470 bytes .../dojo/dojox/fx/resources/shadowBL.png | Bin 0 -> 272 bytes .../dojo/dojox/fx/resources/shadowBR.png | Bin 0 -> 271 bytes .../dojo/dojox/fx/resources/shadowL.png | Bin 0 -> 148 bytes .../dojo/dojox/fx/resources/shadowR.png | Bin 0 -> 149 bytes .../dojo/dojox/fx/resources/shadowT.png | Bin 0 -> 152 bytes .../dojo/dojox/fx/resources/shadowTL.png | Bin 0 -> 271 bytes .../dojo/dojox/fx/resources/shadowTR.png | Bin 0 -> 287 bytes .../webroot/DojoApp/dojo/dojox/fx/scroll.js | 32 + .../dojo/dojox/fx/scroll.js.uncompressed.js | 46 + .../webroot/DojoApp/dojo/dojox/fx/split.js | 310 + .../dojo/dojox/fx/split.js.uncompressed.js | 656 + .../webroot/DojoApp/dojo/dojox/fx/style.js | 59 + .../dojo/dojox/fx/style.js.uncompressed.js | 227 + .../webroot/DojoApp/dojo/dojox/fx/text.js | 246 + .../dojo/dojox/fx/text.js.uncompressed.js | 458 + .../DojoApp/dojo/dojox/gantt/GanttChart.js | 1007 + .../dojox/gantt/GanttChart.js.uncompressed.js | 1318 + .../dojo/dojox/gantt/GanttProjectControl.js | 714 + .../GanttProjectControl.js.uncompressed.js | 886 + .../dojo/dojox/gantt/GanttProjectItem.js | 90 + .../gantt/GanttProjectItem.js.uncompressed.js | 99 + .../dojo/dojox/gantt/GanttResourceItem.js | 308 + .../GanttResourceItem.js.uncompressed.js | 468 + .../dojo/dojox/gantt/GanttTaskControl.js | 1058 + .../gantt/GanttTaskControl.js.uncompressed.js | 1334 + .../DojoApp/dojo/dojox/gantt/GanttTaskItem.js | 29 + .../gantt/GanttTaskItem.js.uncompressed.js | 37 + .../webroot/DojoApp/dojo/dojox/gantt/README | 45 + .../DojoApp/dojo/dojox/gantt/TabMenu.js | 172 + .../dojox/gantt/TabMenu.js.uncompressed.js | 241 + .../dojo/dojox/gantt/contextMenuTab.js | 278 + .../gantt/contextMenuTab.js.uncompressed.js | 362 + .../dojo/dojox/gantt/resources/gantt.css | 574 + .../dojo/dojox/gantt/resources/images/am.png | Bin 0 -> 215 bytes .../dojox/gantt/resources/images/arrow.gif | Bin 0 -> 162 bytes .../dojo/dojox/gantt/resources/images/bg.png | Bin 0 -> 209 bytes .../dojox/gantt/resources/images/collapse.png | Bin 0 -> 306 bytes .../dojox/gantt/resources/images/expand.png | Bin 0 -> 319 bytes .../dojox/gantt/resources/images/load.png | Bin 0 -> 804 bytes .../gantt/resources/images/menuHighlight.png | Bin 0 -> 339 bytes .../dojox/gantt/resources/images/minus.gif | Bin 0 -> 121 bytes .../dojox/gantt/resources/images/ownerBar.png | Bin 0 -> 155 bytes .../gantt/resources/images/parentnode_bg.png | Bin 0 -> 145 bytes .../resources/images/parentnode_filled.png | Bin 0 -> 145 bytes .../dojox/gantt/resources/images/plus.gif | Bin 0 -> 124 bytes .../dojo/dojox/gantt/resources/images/pm.png | Bin 0 -> 205 bytes .../gantt/resources/images/progress_bg.png | Bin 0 -> 186 bytes .../resources/images/progress_filled.png | Bin 0 -> 147 bytes .../gantt/resources/images/projProgressBg.png | Bin 0 -> 145 bytes .../resources/images/projProgressFilled.png | Bin 0 -> 145 bytes .../dojo/dojox/gantt/resources/images/rbg.png | Bin 0 -> 202 bytes .../gantt/resources/images/resourceBg.png | Bin 0 -> 202 bytes .../gantt/resources/images/resourceHeader.png | Bin 0 -> 177 bytes .../dojox/gantt/resources/images/rheader.png | Bin 0 -> 177 bytes .../gantt/resources/images/rowHighlight.png | Bin 0 -> 197 bytes .../dojox/gantt/resources/images/save.png | Bin 0 -> 913 bytes .../gantt/resources/images/taskArrow.gif | Bin 0 -> 162 bytes .../dojox/gantt/resources/images/taskBar.png | Bin 0 -> 155 bytes .../gantt/resources/images/taskProgressBg.png | Bin 0 -> 186 bytes .../resources/images/taskProgressFilled.png | Bin 0 -> 147 bytes .../dojox/gantt/resources/images/zoomin.png | Bin 0 -> 940 bytes .../gantt/resources/images/zoomintime.png | Bin 0 -> 843 bytes .../dojox/gantt/resources/images/zoomout.png | Bin 0 -> 772 bytes .../gantt/resources/images/zoomouttime.png | Bin 0 -> 802 bytes .../dojo/dojox/gauges/AnalogArcIndicator.js | 75 + .../AnalogArcIndicator.js.uncompressed.js | 88 + .../dojo/dojox/gauges/AnalogArrowIndicator.js | 24 + .../AnalogArrowIndicator.js.uncompressed.js | 48 + .../dojox/gauges/AnalogCircleIndicator.js | 12 + .../AnalogCircleIndicator.js.uncompressed.js | 31 + .../DojoApp/dojo/dojox/gauges/AnalogGauge.js | 205 + .../gauges/AnalogGauge.js.uncompressed.js | 364 + .../dojo/dojox/gauges/AnalogIndicatorBase.js | 125 + .../AnalogIndicatorBase.js.uncompressed.js | 196 + .../dojo/dojox/gauges/AnalogLineIndicator.js | 11 + .../AnalogLineIndicator.js.uncompressed.js | 25 + .../dojox/gauges/AnalogNeedleIndicator.js | 21 + .../AnalogNeedleIndicator.js.uncompressed.js | 42 + .../dojo/dojox/gauges/BarCircleIndicator.js | 23 + .../BarCircleIndicator.js.uncompressed.js | 41 + .../DojoApp/dojo/dojox/gauges/BarGauge.js | 82 + .../dojox/gauges/BarGauge.js.uncompressed.js | 176 + .../DojoApp/dojo/dojox/gauges/BarIndicator.js | 69 + .../gauges/BarIndicator.js.uncompressed.js | 75 + .../dojo/dojox/gauges/BarLineIndicator.js | 102 + .../BarLineIndicator.js.uncompressed.js | 129 + .../dojo/dojox/gauges/GlossyCircularGauge.js | 41 + .../GlossyCircularGauge.js.uncompressed.js | 232 + .../dojox/gauges/GlossyCircularGaugeBase.js | 201 + ...GlossyCircularGaugeBase.js.uncompressed.js | 537 + .../dojox/gauges/GlossyCircularGaugeNeedle.js | 15 + ...ossyCircularGaugeNeedle.js.uncompressed.js | 61 + .../dojox/gauges/GlossyHorizontalGauge.js | 192 + .../GlossyHorizontalGauge.js.uncompressed.js | 557 + .../gauges/GlossyHorizontalGaugeMarker.js | 32 + ...syHorizontalGaugeMarker.js.uncompressed.js | 125 + .../dojox/gauges/GlossySemiCircularGauge.js | 40 + ...GlossySemiCircularGauge.js.uncompressed.js | 240 + .../DojoApp/dojo/dojox/gauges/Range.js | 6 + .../dojox/gauges/Range.js.uncompressed.js | 67 + .../dojo/dojox/gauges/TextIndicator.js | 31 + .../gauges/TextIndicator.js.uncompressed.js | 74 + .../DojoApp/dojo/dojox/gauges/_Gauge.css | 51 + .../DojoApp/dojo/dojox/gauges/_Gauge.js | 445 + .../dojox/gauges/_Gauge.js.uncompressed.js | 847 + .../DojoApp/dojo/dojox/gauges/_Indicator.js | 76 + .../gauges/_Indicator.js.uncompressed.js | 256 + .../webroot/DojoApp/dojo/dojox/geo/README | 43 + .../dojo/dojox/geo/charting/Feature.js | 140 + .../geo/charting/Feature.js.uncompressed.js | 217 + .../charting/KeyboardInteractionSupport.js | 99 + ...boardInteractionSupport.js.uncompressed.js | 165 + .../DojoApp/dojo/dojox/geo/charting/Map.js | 254 + .../dojox/geo/charting/Map.js.uncompressed.js | 651 + .../geo/charting/MouseInteractionSupport.js | 162 + ...MouseInteractionSupport.js.uncompressed.js | 366 + .../geo/charting/TouchInteractionSupport.js | 168 + ...TouchInteractionSupport.js.uncompressed.js | 328 + .../dojo/dojox/geo/charting/_Marker.js | 51 + .../geo/charting/_Marker.js.uncompressed.js | 68 + .../DojoApp/dojo/dojox/geo/charting/_base.js | 44 + .../geo/charting/_base.js.uncompressed.js | 76 + .../dojo/dojox/geo/charting/resources/Map.css | 33 + .../geo/charting/resources/data/Americas.json | 157 + .../charting/resources/data/AsiaPacific.json | 117 + .../resources/data/ContinentalEurope.json | 217 + .../data/EuropeMiddleEastAfrica.json | 562 + .../dojox/geo/charting/resources/data/NOTICES | 118 + .../geo/charting/resources/data/USStates.json | 262 + .../resources/data/WorldCountries.json | 827 + .../data/WorldCountriesMercator.json | 827 + .../geo/charting/resources/img/zoomin.gif | Bin 0 -> 287 bytes .../geo/charting/resources/img/zoomin.png | Bin 0 -> 573 bytes .../geo/charting/resources/img/zoomout.gif | Bin 0 -> 283 bytes .../geo/charting/resources/img/zoomout.png | Bin 0 -> 522 bytes .../charting/resources/markers/USStates.json | 1 + .../dojo/dojox/geo/charting/widget/Legend.js | 53 + .../charting/widget/Legend.js.uncompressed.js | 93 + .../dojo/dojox/geo/charting/widget/Map.js | 85 + .../charting/widget/Map.js.uncompressed.js | 180 + .../dojo/dojox/geo/openlayers/Collection.js | 8 + .../openlayers/Collection.js.uncompressed.js | 30 + .../dojo/dojox/geo/openlayers/Feature.js | 26 + .../geo/openlayers/Feature.js.uncompressed.js | 82 + .../dojo/dojox/geo/openlayers/Geometry.js | 6 + .../openlayers/Geometry.js.uncompressed.js | 34 + .../dojox/geo/openlayers/GeometryFeature.js | 231 + .../GeometryFeature.js.uncompressed.js | 416 + .../dojo/dojox/geo/openlayers/GfxLayer.js | 54 + .../openlayers/GfxLayer.js.uncompressed.js | 139 + .../dojo/dojox/geo/openlayers/GreatCircle.js | 48 + .../openlayers/GreatCircle.js.uncompressed.js | 121 + .../dojo/dojox/geo/openlayers/JsonImport.js | 74 + .../openlayers/JsonImport.js.uncompressed.js | 158 + .../dojo/dojox/geo/openlayers/Layer.js | 88 + .../geo/openlayers/Layer.js.uncompressed.js | 175 + .../dojo/dojox/geo/openlayers/LineString.js | 8 + .../openlayers/LineString.js.uncompressed.js | 28 + .../DojoApp/dojo/dojox/geo/openlayers/Map.js | 292 + .../geo/openlayers/Map.js.uncompressed.js | 581 + .../dojo/dojox/geo/openlayers/Patch.js | 36 + .../geo/openlayers/Patch.js.uncompressed.js | 73 + .../dojo/dojox/geo/openlayers/Point.js | 8 + .../geo/openlayers/Point.js.uncompressed.js | 26 + .../geo/openlayers/TouchInteractionSupport.js | 110 + ...TouchInteractionSupport.js.uncompressed.js | 250 + .../dojox/geo/openlayers/WidgetFeature.js | 109 + .../WidgetFeature.js.uncompressed.js | 231 + .../dojo/dojox/geo/openlayers/_base.js | 27 + .../geo/openlayers/_base.js.uncompressed.js | 83 + .../dojo/dojox/geo/openlayers/widget/Map.js | 44 + .../openlayers/widget/Map.js.uncompressed.js | 155 + .../DojoApp/dojo/dojox/gesture/Base.js | 132 + .../dojox/gesture/Base.js.uncompressed.js | 375 + .../webroot/DojoApp/dojo/dojox/gesture/README | 39 + .../DojoApp/dojo/dojox/gesture/swipe.js | 50 + .../dojox/gesture/swipe.js.uncompressed.js | 140 + .../webroot/DojoApp/dojo/dojox/gesture/tap.js | 55 + .../dojo/dojox/gesture/tap.js.uncompressed.js | 145 + .../webroot/DojoApp/dojo/dojox/gfx.js | 15 + .../DojoApp/dojo/dojox/gfx.js.uncompressed.js | 1137 + .../DojoApp/dojo/dojox/gfx/Moveable.js | 45 + .../dojox/gfx/Moveable.js.uncompressed.js | 150 + .../webroot/DojoApp/dojo/dojox/gfx/Mover.js | 32 + .../dojo/dojox/gfx/Mover.js.uncompressed.js | 69 + .../webroot/DojoApp/dojo/dojox/gfx/README | 109 + .../DojoApp/dojo/dojox/gfx/README-svgweb | 98 + .../DojoApp/dojo/dojox/gfx/VectorText.js | 361 + .../dojox/gfx/VectorText.js.uncompressed.js | 803 + .../webroot/DojoApp/dojo/dojox/gfx/_base.js | 254 + .../dojo/dojox/gfx/_base.js.uncompressed.js | 1025 + .../DojoApp/dojo/dojox/gfx/_gfxBidiSupport.js | 229 + .../gfx/_gfxBidiSupport.js.uncompressed.js | 432 + .../webroot/DojoApp/dojo/dojox/gfx/arc.js | 56 + .../dojo/dojox/gfx/arc.js.uncompressed.js | 143 + .../webroot/DojoApp/dojo/dojox/gfx/attach.js | 3 + .../dojo/dojox/gfx/attach.js.uncompressed.js | 10 + .../DojoApp/dojo/dojox/gfx/bezierutils.js | 59 + .../dojox/gfx/bezierutils.js.uncompressed.js | 171 + .../webroot/DojoApp/dojo/dojox/gfx/canvas.js | 973 + .../dojo/dojox/gfx/canvas.js.uncompressed.js | 1305 + .../dojo/dojox/gfx/canvasWithEvents.js | 372 + .../gfx/canvasWithEvents.js.uncompressed.js | 663 + .../DojoApp/dojo/dojox/gfx/canvas_attach.js | 9 + .../gfx/canvas_attach.js.uncompressed.js | 11 + .../DojoApp/dojo/dojox/gfx/canvasext.js | 13 + .../dojox/gfx/canvasext.js.uncompressed.js | 39 + .../DojoApp/dojo/dojox/gfx/decompose.js | 95 + .../dojox/gfx/decompose.js.uncompressed.js | 139 + .../webroot/DojoApp/dojo/dojox/gfx/filters.js | 73 + .../dojo/dojox/gfx/filters.js.uncompressed.js | 742 + .../webroot/DojoApp/dojo/dojox/gfx/fx.js | 265 + .../dojo/dojox/gfx/fx.js.uncompressed.js | 322 + .../DojoApp/dojo/dojox/gfx/gradient.js | 75 + .../dojox/gfx/gradient.js.uncompressed.js | 159 + .../DojoApp/dojo/dojox/gfx/gradutils.js | 63 + .../dojox/gfx/gradutils.js.uncompressed.js | 91 + .../webroot/DojoApp/dojo/dojox/gfx/matrix.js | 170 + .../dojo/dojox/gfx/matrix.js.uncompressed.js | 501 + .../webroot/DojoApp/dojo/dojox/gfx/move.js | 4 + .../dojo/dojox/gfx/move.js.uncompressed.js | 2 + .../webroot/DojoApp/dojo/dojox/gfx/path.js | 319 + .../dojo/dojox/gfx/path.js.uncompressed.js | 478 + .../DojoApp/dojo/dojox/gfx/registry.js | 28 + .../dojox/gfx/registry.js.uncompressed.js | 53 + .../DojoApp/dojo/dojox/gfx/renderer.js | 76 + .../dojox/gfx/renderer.js.uncompressed.js | 96 + .../dojo/dojox/gfx/resources/Gillius.svg | 1272 + .../DojoApp/dojo/dojox/gfx/resources/README | 3 + .../dojox/gfx/resources/gfxSvgProxyFrame.html | 13 + .../dojox/gfx/resources/svg2gfx-simple.xsl | 72 + .../dojo/dojox/gfx/resources/svg2gfx.xsl | 1085 + .../webroot/DojoApp/dojo/dojox/gfx/shape.js | 452 + .../dojo/dojox/gfx/shape.js.uncompressed.js | 1083 + .../DojoApp/dojo/dojox/gfx/silverlight.js | 592 + .../dojox/gfx/silverlight.js.uncompressed.js | 992 + .../dojo/dojox/gfx/silverlight_attach.js | 12 + .../gfx/silverlight_attach.js.uncompressed.js | 23 + .../webroot/DojoApp/dojo/dojox/gfx/svg.js | 662 + .../dojo/dojox/gfx/svg.js.uncompressed.js | 1023 + .../DojoApp/dojo/dojox/gfx/svg_attach.js | 185 + .../dojox/gfx/svg_attach.js.uncompressed.js | 249 + .../DojoApp/dojo/dojox/gfx/svg_mask.js | 52 + .../dojox/gfx/svg_mask.js.uncompressed.js | 160 + .../webroot/DojoApp/dojo/dojox/gfx/svgext.js | 55 + .../dojo/dojox/gfx/svgext.js.uncompressed.js | 225 + .../webroot/DojoApp/dojo/dojox/gfx/utils.js | 199 + .../dojo/dojox/gfx/utils.js.uncompressed.js | 322 + .../webroot/DojoApp/dojo/dojox/gfx/vml.js | 1000 + .../dojo/dojox/gfx/vml.js.uncompressed.js | 1439 + .../DojoApp/dojo/dojox/gfx/vml_attach.js | 294 + .../dojox/gfx/vml_attach.js.uncompressed.js | 400 + .../webroot/DojoApp/dojo/dojox/gfx3d.js | 5 + .../dojo/dojox/gfx3d.js.uncompressed.js | 14 + .../webroot/DojoApp/dojo/dojox/gfx3d/README | 36 + .../webroot/DojoApp/dojo/dojox/gfx3d/_base.js | 6 + .../dojo/dojox/gfx3d/_base.js.uncompressed.js | 18 + .../DojoApp/dojo/dojox/gfx3d/gradient.js | 18 + .../dojox/gfx3d/gradient.js.uncompressed.js | 47 + .../DojoApp/dojo/dojox/gfx3d/lighting.js | 147 + .../dojox/gfx3d/lighting.js.uncompressed.js | 242 + .../DojoApp/dojo/dojox/gfx3d/matrix.js | 150 + .../dojox/gfx3d/matrix.js.uncompressed.js | 404 + .../DojoApp/dojo/dojox/gfx3d/object.js | 610 + .../dojox/gfx3d/object.js.uncompressed.js | 1199 + .../DojoApp/dojo/dojox/gfx3d/scheduler.js | 85 + .../dojox/gfx3d/scheduler.js.uncompressed.js | 154 + .../DojoApp/dojo/dojox/gfx3d/vector.js | 54 + .../dojox/gfx3d/vector.js.uncompressed.js | 132 + .../DojoApp/dojo/dojox/grid/BidiSupport.js | 4 + .../dojox/grid/BidiSupport.js.uncompressed.js | 4 + .../DojoApp/dojo/dojox/grid/DataGrid.js | 15 + .../dojox/grid/DataGrid.js.uncompressed.js | 14755 +++++++ .../DojoApp/dojo/dojox/grid/DataSelection.js | 67 + .../grid/DataSelection.js.uncompressed.js | 81 + .../DojoApp/dojo/dojox/grid/EnhancedGrid.js | 137 + .../grid/EnhancedGrid.js.uncompressed.js | 264 + .../DojoApp/dojo/dojox/grid/LazyTreeGrid.js | 610 + .../grid/LazyTreeGrid.js.uncompressed.js | 846 + .../dojo/dojox/grid/LazyTreeGridStoreModel.js | 72 + .../LazyTreeGridStoreModel.js.uncompressed.js | 113 + .../webroot/DojoApp/dojo/dojox/grid/README | 151 + .../DojoApp/dojo/dojox/grid/Selection.js | 203 + .../dojox/grid/Selection.js.uncompressed.js | 269 + .../DojoApp/dojo/dojox/grid/TreeGrid.js | 731 + .../dojox/grid/TreeGrid.js.uncompressed.js | 972 + .../DojoApp/dojo/dojox/grid/TreeSelection.js | 205 + .../grid/TreeSelection.js.uncompressed.js | 215 + .../DojoApp/dojo/dojox/grid/_Builder.js | 527 + .../dojox/grid/_Builder.js.uncompressed.js | 762 + .../dojo/dojox/grid/_CheckBoxSelector.js | 4 + .../grid/_CheckBoxSelector.js.uncompressed.js | 3 + .../DojoApp/dojo/dojox/grid/_EditManager.js | 135 + .../grid/_EditManager.js.uncompressed.js | 263 + .../DojoApp/dojo/dojox/grid/_Events.js | 225 + .../dojox/grid/_Events.js.uncompressed.js | 508 + .../DojoApp/dojo/dojox/grid/_FocusManager.js | 488 + .../grid/_FocusManager.js.uncompressed.js | 641 + .../webroot/DojoApp/dojo/dojox/grid/_Grid.js | 715 + .../dojo/dojox/grid/_Grid.js.uncompressed.js | 1398 + .../DojoApp/dojo/dojox/grid/_Layout.js | 215 + .../dojox/grid/_Layout.js.uncompressed.js | 275 + .../DojoApp/dojo/dojox/grid/_RadioSelector.js | 4 + .../grid/_RadioSelector.js.uncompressed.js | 3 + .../DojoApp/dojo/dojox/grid/_RowManager.js | 36 + .../dojox/grid/_RowManager.js.uncompressed.js | 63 + .../DojoApp/dojo/dojox/grid/_RowSelector.js | 36 + .../grid/_RowSelector.js.uncompressed.js | 58 + .../DojoApp/dojo/dojox/grid/_Scroller.js | 396 + .../dojox/grid/_Scroller.js.uncompressed.js | 505 + .../dojo/dojox/grid/_SelectionPreserver.js | 32 + .../_SelectionPreserver.js.uncompressed.js | 66 + .../DojoApp/dojo/dojox/grid/_Selector.js | 148 + .../dojox/grid/_Selector.js.uncompressed.js | 224 + .../DojoApp/dojo/dojox/grid/_TreeView.js | 401 + .../dojox/grid/_TreeView.js.uncompressed.js | 466 + .../webroot/DojoApp/dojo/dojox/grid/_View.js | 613 + .../dojo/dojox/grid/_View.js.uncompressed.js | 860 + .../DojoApp/dojo/dojox/grid/_ViewManager.js | 206 + .../grid/_ViewManager.js.uncompressed.js | 309 + .../dojo/dojox/grid/bidi/_BidiMixin.js | 82 + .../grid/bidi/_BidiMixin.js.uncompressed.js | 177 + .../webroot/DojoApp/dojo/dojox/grid/cells.js | 4 + .../dojo/dojox/grid/cells.js.uncompressed.js | 3 + .../DojoApp/dojo/dojox/grid/cells/_base.js | 271 + .../dojox/grid/cells/_base.js.uncompressed.js | 481 + .../DojoApp/dojo/dojox/grid/cells/dijit.js | 165 + .../dojox/grid/cells/dijit.js.uncompressed.js | 262 + .../DojoApp/dojo/dojox/grid/cells/tree.js | 70 + .../dojox/grid/cells/tree.js.uncompressed.js | 84 + .../DojoApp/dojo/dojox/grid/compatGrid.tar.gz | Bin 0 -> 101260 bytes .../dojo/dojox/grid/enhanced/_Events.js | 119 + .../grid/enhanced/_Events.js.uncompressed.js | 215 + .../dojo/dojox/grid/enhanced/_FocusManager.js | 576 + .../enhanced/_FocusManager.js.uncompressed.js | 787 + .../dojo/dojox/grid/enhanced/_Plugin.js | 49 + .../grid/enhanced/_Plugin.js.uncompressed.js | 174 + .../dojox/grid/enhanced/_PluginManager.js | 166 + .../_PluginManager.js.uncompressed.js | 275 + .../dojox/grid/enhanced/nls/EnhancedGrid.js | 2 + .../nls/EnhancedGrid.js.uncompressed.js | 50 + .../dojo/dojox/grid/enhanced/nls/Filter.js | 2 + .../enhanced/nls/Filter.js.uncompressed.js | 123 + .../dojox/grid/enhanced/nls/Pagination.js | 2 + .../nls/Pagination.js.uncompressed.js | 58 + .../grid/enhanced/nls/ar/EnhancedGrid.js | 2 + .../nls/ar/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/ar/Filter.js | 2 + .../enhanced/nls/ar/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/ar/Pagination.js | 2 + .../nls/ar/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/bg/EnhancedGrid.js | 2 + .../nls/bg/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/bg/Filter.js | 2 + .../enhanced/nls/bg/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/bg/Pagination.js | 2 + .../nls/bg/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/ca/EnhancedGrid.js | 2 + .../nls/ca/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/ca/Filter.js | 2 + .../enhanced/nls/ca/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/ca/Pagination.js | 2 + .../nls/ca/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/cs/EnhancedGrid.js | 2 + .../nls/cs/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/cs/Filter.js | 2 + .../enhanced/nls/cs/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/cs/Pagination.js | 2 + .../nls/cs/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/da/EnhancedGrid.js | 2 + .../nls/da/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/da/Filter.js | 2 + .../enhanced/nls/da/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/da/Pagination.js | 2 + .../nls/da/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/de/EnhancedGrid.js | 2 + .../nls/de/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/de/Filter.js | 2 + .../enhanced/nls/de/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/de/Pagination.js | 2 + .../nls/de/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/el/EnhancedGrid.js | 2 + .../nls/el/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/el/Filter.js | 2 + .../enhanced/nls/el/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/el/Pagination.js | 2 + .../nls/el/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/es/EnhancedGrid.js | 2 + .../nls/es/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/es/Filter.js | 2 + .../enhanced/nls/es/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/es/Pagination.js | 2 + .../nls/es/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/fi/EnhancedGrid.js | 2 + .../nls/fi/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/fi/Filter.js | 2 + .../enhanced/nls/fi/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/fi/Pagination.js | 2 + .../nls/fi/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/fr/EnhancedGrid.js | 2 + .../nls/fr/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/fr/Filter.js | 2 + .../enhanced/nls/fr/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/fr/Pagination.js | 2 + .../nls/fr/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/he/EnhancedGrid.js | 2 + .../nls/he/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/he/Filter.js | 2 + .../enhanced/nls/he/Filter.js.uncompressed.js | 86 + .../dojox/grid/enhanced/nls/he/Pagination.js | 2 + .../nls/he/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/hr/EnhancedGrid.js | 2 + .../nls/hr/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/hr/Filter.js | 2 + .../enhanced/nls/hr/Filter.js.uncompressed.js | 86 + .../dojox/grid/enhanced/nls/hr/Pagination.js | 2 + .../nls/hr/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/hu/EnhancedGrid.js | 2 + .../nls/hu/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/hu/Filter.js | 2 + .../enhanced/nls/hu/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/hu/Pagination.js | 2 + .../nls/hu/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/id/EnhancedGrid.js | 2 + .../nls/id/EnhancedGrid.js.uncompressed.js | 14 + .../dojo/dojox/grid/enhanced/nls/id/Filter.js | 2 + .../enhanced/nls/id/Filter.js.uncompressed.js | 76 + .../dojox/grid/enhanced/nls/id/Pagination.js | 2 + .../nls/id/Pagination.js.uncompressed.js | 22 + .../grid/enhanced/nls/it/EnhancedGrid.js | 2 + .../nls/it/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/it/Filter.js | 2 + .../enhanced/nls/it/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/it/Pagination.js | 2 + .../nls/it/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/ja/EnhancedGrid.js | 2 + .../nls/ja/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/ja/Filter.js | 2 + .../enhanced/nls/ja/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/ja/Pagination.js | 2 + .../nls/ja/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/kk/EnhancedGrid.js | 2 + .../nls/kk/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/kk/Filter.js | 2 + .../enhanced/nls/kk/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/kk/Pagination.js | 2 + .../nls/kk/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/ko/EnhancedGrid.js | 2 + .../nls/ko/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/ko/Filter.js | 2 + .../enhanced/nls/ko/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/ko/Pagination.js | 2 + .../nls/ko/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/nb/EnhancedGrid.js | 2 + .../nls/nb/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/nb/Filter.js | 2 + .../enhanced/nls/nb/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/nb/Pagination.js | 2 + .../nls/nb/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/nl/EnhancedGrid.js | 2 + .../nls/nl/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/nl/Filter.js | 2 + .../enhanced/nls/nl/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/nl/Pagination.js | 2 + .../nls/nl/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/pl/EnhancedGrid.js | 2 + .../nls/pl/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/pl/Filter.js | 2 + .../enhanced/nls/pl/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/pl/Pagination.js | 2 + .../nls/pl/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/pt-pt/EnhancedGrid.js | 2 + .../nls/pt-pt/EnhancedGrid.js.uncompressed.js | 13 + .../dojox/grid/enhanced/nls/pt-pt/Filter.js | 2 + .../nls/pt-pt/Filter.js.uncompressed.js | 75 + .../grid/enhanced/nls/pt-pt/Pagination.js | 2 + .../nls/pt-pt/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/pt/EnhancedGrid.js | 2 + .../nls/pt/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/pt/Filter.js | 2 + .../enhanced/nls/pt/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/pt/Pagination.js | 2 + .../nls/pt/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/ro/EnhancedGrid.js | 2 + .../nls/ro/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/ro/Filter.js | 2 + .../enhanced/nls/ro/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/ro/Pagination.js | 2 + .../nls/ro/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/ru/EnhancedGrid.js | 2 + .../nls/ru/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/ru/Filter.js | 2 + .../enhanced/nls/ru/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/ru/Pagination.js | 2 + .../nls/ru/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/sk/EnhancedGrid.js | 2 + .../nls/sk/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/sk/Filter.js | 2 + .../enhanced/nls/sk/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/sk/Pagination.js | 2 + .../nls/sk/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/sl/EnhancedGrid.js | 2 + .../nls/sl/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/sl/Filter.js | 2 + .../enhanced/nls/sl/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/sl/Pagination.js | 2 + .../nls/sl/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/sv/EnhancedGrid.js | 2 + .../nls/sv/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/sv/Filter.js | 2 + .../enhanced/nls/sv/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/sv/Pagination.js | 2 + .../nls/sv/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/th/EnhancedGrid.js | 2 + .../nls/th/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/th/Filter.js | 2 + .../enhanced/nls/th/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/th/Pagination.js | 2 + .../nls/th/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/tr/EnhancedGrid.js | 2 + .../nls/tr/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/tr/Filter.js | 2 + .../enhanced/nls/tr/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/tr/Pagination.js | 2 + .../nls/tr/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/uk/EnhancedGrid.js | 2 + .../nls/uk/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/uk/Filter.js | 2 + .../enhanced/nls/uk/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/uk/Pagination.js | 2 + .../nls/uk/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/zh-tw/EnhancedGrid.js | 2 + .../nls/zh-tw/EnhancedGrid.js.uncompressed.js | 13 + .../dojox/grid/enhanced/nls/zh-tw/Filter.js | 2 + .../nls/zh-tw/Filter.js.uncompressed.js | 75 + .../grid/enhanced/nls/zh-tw/Pagination.js | 2 + .../nls/zh-tw/Pagination.js.uncompressed.js | 21 + .../grid/enhanced/nls/zh/EnhancedGrid.js | 2 + .../nls/zh/EnhancedGrid.js.uncompressed.js | 13 + .../dojo/dojox/grid/enhanced/nls/zh/Filter.js | 2 + .../enhanced/nls/zh/Filter.js.uncompressed.js | 75 + .../dojox/grid/enhanced/nls/zh/Pagination.js | 2 + .../nls/zh/Pagination.js.uncompressed.js | 21 + .../dojox/grid/enhanced/plugins/AutoScroll.js | 149 + .../plugins/AutoScroll.js.uncompressed.js | 181 + .../dojox/grid/enhanced/plugins/CellMerge.js | 147 + .../plugins/CellMerge.js.uncompressed.js | 276 + .../dojox/grid/enhanced/plugins/Cookie.js | 249 + .../plugins/Cookie.js.uncompressed.js | 361 + .../dojox/grid/enhanced/plugins/Dialog.js | 28 + .../plugins/Dialog.js.uncompressed.js | 39 + .../dojo/dojox/grid/enhanced/plugins/DnD.js | 775 + .../enhanced/plugins/DnD.js.uncompressed.js | 1096 + .../dojox/grid/enhanced/plugins/Exporter.js | 116 + .../plugins/Exporter.js.uncompressed.js | 243 + .../dojox/grid/enhanced/plugins/Filter.js | 56 + .../plugins/Filter.js.uncompressed.js | 174 + .../dojox/grid/enhanced/plugins/GridSource.js | 78 + .../plugins/GridSource.js.uncompressed.js | 154 + .../enhanced/plugins/IndirectSelection.js | 363 + .../IndirectSelection.js.uncompressed.js | 623 + .../dojo/dojox/grid/enhanced/plugins/Menu.js | 85 + .../enhanced/plugins/Menu.js.uncompressed.js | 135 + .../grid/enhanced/plugins/NestedSorting.js | 570 + .../plugins/NestedSorting.js.uncompressed.js | 669 + .../dojox/grid/enhanced/plugins/Pagination.js | 652 + .../plugins/Pagination.js.uncompressed.js | 984 + .../dojox/grid/enhanced/plugins/Printer.js | 142 + .../plugins/Printer.js.uncompressed.js | 294 + .../dojox/grid/enhanced/plugins/Rearrange.js | 375 + .../plugins/Rearrange.js.uncompressed.js | 508 + .../dojox/grid/enhanced/plugins/Search.js | 98 + .../plugins/Search.js.uncompressed.js | 122 + .../dojox/grid/enhanced/plugins/Selector.js | 1018 + .../plugins/Selector.js.uncompressed.js | 1479 + .../grid/enhanced/plugins/_RowMapLayer.js | 183 + .../plugins/_RowMapLayer.js.uncompressed.js | 207 + .../enhanced/plugins/_SelectionPreserver.js | 66 + .../_SelectionPreserver.js.uncompressed.js | 109 + .../grid/enhanced/plugins/_StoreLayer.js | 185 + .../plugins/_StoreLayer.js.uncompressed.js | 392 + .../enhanced/plugins/exporter/CSVWriter.js | 41 + .../exporter/CSVWriter.js.uncompressed.js | 87 + .../enhanced/plugins/exporter/TableWriter.js | 70 + .../exporter/TableWriter.js.uncompressed.js | 159 + .../plugins/exporter/_ExportWriter.js | 30 + .../exporter/_ExportWriter.js.uncompressed.js | 272 + .../plugins/filter/ClearFilterConfirm.js | 21 + .../ClearFilterConfirm.js.uncompressed.js | 47 + .../grid/enhanced/plugins/filter/FilterBar.js | 284 + .../filter/FilterBar.js.uncompressed.js | 390 + .../enhanced/plugins/filter/FilterBuilder.js | 34 + .../filter/FilterBuilder.js.uncompressed.js | 80 + .../plugins/filter/FilterDefDialog.js | 867 + .../filter/FilterDefDialog.js.uncompressed.js | 1270 + .../enhanced/plugins/filter/FilterLayer.js | 218 + .../filter/FilterLayer.js.uncompressed.js | 410 + .../plugins/filter/FilterStatusTip.js | 78 + .../filter/FilterStatusTip.js.uncompressed.js | 146 + .../enhanced/plugins/filter/_ConditionExpr.js | 64 + .../filter/_ConditionExpr.js.uncompressed.js | 238 + .../enhanced/plugins/filter/_DataExprs.js | 39 + .../filter/_DataExprs.js.uncompressed.js | 84 + .../enhanced/plugins/filter/_FilterExpr.js | 95 + .../filter/_FilterExpr.js.uncompressed.js | 247 + .../dojox/grid/enhanced/resources/Common.css | 27 + .../grid/enhanced/resources/Common_rtl.css | 14 + .../dojox/grid/enhanced/resources/DnD.css | 78 + .../dojox/grid/enhanced/resources/DnD_rtl.css | 12 + .../grid/enhanced/resources/EnhancedGrid.css | 715 + .../enhanced/resources/EnhancedGrid_rtl.css | 256 + .../dojox/grid/enhanced/resources/Filter.css | 282 + .../grid/enhanced/resources/Filter_rtl.css | 76 + .../grid/enhanced/resources/Pagination.css | 146 + .../enhanced/resources/Pagination_rtl.css | 68 + .../dojox/grid/enhanced/resources/Sorter.css | 151 + .../grid/enhanced/resources/Sorter_rtl.css | 72 + .../grid/enhanced/resources/claro/Common.css | 24 + .../enhanced/resources/claro/EnhancedGrid.css | 1463 + .../grid/enhanced/resources/claro/Filter.css | 58 + .../enhanced/resources/claroEnhancedGrid.css | 1463 + .../resources/images/sprite_icons.png | Bin 0 -> 2912 bytes .../grid/enhanced/resources/tundra/Common.css | 35 + .../resources/tundra/EnhancedGrid.css | 1451 + .../grid/enhanced/resources/tundra/Filter.css | 38 + .../grid/enhanced/resources/tundra/Sorter.css | 74 + .../enhanced/resources/tundraEnhancedGrid.css | 1452 + .../templates/ClearFilterConfirmPane.html | 9 + .../grid/enhanced/templates/CriteriaBox.html | 20 + .../grid/enhanced/templates/FilterBar.html | 15 + .../templates/FilterBoolValueBox.html | 11 + .../enhanced/templates/FilterDefPane.html | 27 + .../enhanced/templates/FilterStatusPane.html | 8 + .../grid/enhanced/templates/Pagination.html | 18 + .../dojo/dojox/grid/nls/DataGrid_ROOT.js | 2 + .../grid/nls/DataGrid_ROOT.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_ar.js | 2 + .../grid/nls/DataGrid_ar.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_ca.js | 2 + .../grid/nls/DataGrid_ca.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_cs.js | 2 + .../grid/nls/DataGrid_cs.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_da.js | 2 + .../grid/nls/DataGrid_da.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_de.js | 2 + .../grid/nls/DataGrid_de.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_el.js | 2 + .../grid/nls/DataGrid_el.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_en-gb.js | 2 + .../nls/DataGrid_en-gb.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_en-us.js | 2 + .../nls/DataGrid_en-us.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_es-es.js | 2 + .../nls/DataGrid_es-es.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_fi-fi.js | 2 + .../nls/DataGrid_fi-fi.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_fr-fr.js | 2 + .../nls/DataGrid_fr-fr.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_he-il.js | 2 + .../nls/DataGrid_he-il.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_hu.js | 2 + .../grid/nls/DataGrid_hu.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_it-it.js | 2 + .../nls/DataGrid_it-it.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_ja-jp.js | 2 + .../nls/DataGrid_ja-jp.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_ko-kr.js | 2 + .../nls/DataGrid_ko-kr.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_nb.js | 2 + .../grid/nls/DataGrid_nb.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_nl-nl.js | 2 + .../nls/DataGrid_nl-nl.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_pl.js | 2 + .../grid/nls/DataGrid_pl.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_pt-br.js | 2 + .../nls/DataGrid_pt-br.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_pt-pt.js | 2 + .../nls/DataGrid_pt-pt.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_ru.js | 2 + .../grid/nls/DataGrid_ru.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_sk.js | 2 + .../grid/nls/DataGrid_sk.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_sl.js | 2 + .../grid/nls/DataGrid_sl.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_sv.js | 2 + .../grid/nls/DataGrid_sv.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_th.js | 2 + .../grid/nls/DataGrid_th.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_tr.js | 2 + .../grid/nls/DataGrid_tr.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_zh-cn.js | 2 + .../nls/DataGrid_zh-cn.js.uncompressed.js | 3 + .../dojo/dojox/grid/nls/DataGrid_zh-tw.js | 2 + .../nls/DataGrid_zh-tw.js.uncompressed.js | 3 + .../dojo/dojox/grid/resources/Expando.html | 5 + .../dojo/dojox/grid/resources/Grid.css | 357 + .../dojo/dojox/grid/resources/Grid_rtl.css | 15 + .../dojo/dojox/grid/resources/View.html | 12 + .../dojo/dojox/grid/resources/_Grid.html | 6 + .../dojo/dojox/grid/resources/claroGrid.css | 667 + .../resources/images/grid_dx_gradient.gif | Bin 0 -> 267 bytes .../grid/resources/images/grid_sort_down.gif | Bin 0 -> 49 bytes .../grid/resources/images/grid_sort_up.gif | Bin 0 -> 48 bytes .../dojox/grid/resources/images/header.png | Bin 0 -> 625 bytes .../grid/resources/images/header_shadow.png | Bin 0 -> 197 bytes .../dojox/grid/resources/images/row_back.png | Bin 0 -> 426 bytes .../resources/images/tabEnabled_rotated.png | Bin 0 -> 94 bytes .../resources/images/tabHover_rotated.png | Bin 0 -> 106 bytes .../grid/resources/images/td_button_down.png | Bin 0 -> 454 bytes .../dojo/dojox/grid/resources/nihiloGrid.css | 563 + .../dojo/dojox/grid/resources/soriaGrid.css | 570 + .../dojo/dojox/grid/resources/tundraGrid.css | 591 + .../webroot/DojoApp/dojo/dojox/grid/util.js | 57 + .../dojo/dojox/grid/util.js.uncompressed.js | 80 + .../webroot/DojoApp/dojo/dojox/help/README | 35 + .../webroot/DojoApp/dojo/dojox/help/_base.js | 380 + .../dojo/dojox/help/_base.js.uncompressed.js | 473 + .../DojoApp/dojo/dojox/help/console.js | 71 + .../dojox/help/console.js.uncompressed.js | 79 + .../webroot/DojoApp/dojo/dojox/highlight.js | 4 + .../dojo/dojox/highlight.js.uncompressed.js | 10 + .../DojoApp/dojo/dojox/highlight/README | 31 + .../DojoApp/dojo/dojox/highlight/_base.js | 319 + .../dojox/highlight/_base.js.uncompressed.js | 461 + .../dojo/dojox/highlight/languages/_all.js | 3 + .../languages/_all.js.uncompressed.js | 2 + .../dojox/highlight/languages/_dynamic.js | 3 + .../languages/_dynamic.js.uncompressed.js | 1 + .../dojo/dojox/highlight/languages/_static.js | 3 + .../languages/_static.js.uncompressed.js | 3 + .../dojo/dojox/highlight/languages/_www.js | 3 + .../languages/_www.js.uncompressed.js | 1 + .../dojo/dojox/highlight/languages/cpp.js | 6 + .../languages/cpp.js.uncompressed.js | 50 + .../dojo/dojox/highlight/languages/css.js | 5 + .../languages/css.js.uncompressed.js | 90 + .../dojo/dojox/highlight/languages/delphi.js | 8 + .../languages/delphi.js.uncompressed.js | 119 + .../dojo/dojox/highlight/languages/django.js | 6 + .../languages/django.js.uncompressed.js | 91 + .../dojo/dojox/highlight/languages/groovy.js | 7 + .../languages/groovy.js.uncompressed.js | 68 + .../dojo/dojox/highlight/languages/html.js | 10 + .../languages/html.js.uncompressed.js | 65 + .../dojo/dojox/highlight/languages/java.js | 7 + .../languages/java.js.uncompressed.js | 58 + .../dojox/highlight/languages/javascript.js | 6 + .../languages/javascript.js.uncompressed.js | 50 + .../highlight/languages/pygments/_html.js | 5 + .../pygments/_html.js.uncompressed.js | 23 + .../highlight/languages/pygments/_www.js | 3 + .../pygments/_www.js.uncompressed.js | 1 + .../dojox/highlight/languages/pygments/css.js | 6 + .../languages/pygments/css.js.uncompressed.js | 205 + .../highlight/languages/pygments/html.js | 10 + .../pygments/html.js.uncompressed.js | 96 + .../languages/pygments/javascript.js | 6 + .../pygments/javascript.js.uncompressed.js | 147 + .../dojox/highlight/languages/pygments/xml.js | 5 + .../languages/pygments/xml.js.uncompressed.js | 76 + .../dojo/dojox/highlight/languages/python.js | 6 + .../languages/python.js.uncompressed.js | 99 + .../dojo/dojox/highlight/languages/sql.js | 7 + .../languages/sql.js.uncompressed.js | 97 + .../dojo/dojox/highlight/languages/xml.js | 9 + .../languages/xml.js.uncompressed.js | 65 + .../dojo/dojox/highlight/languages/xquery.js | 8 + .../languages/xquery.js.uncompressed.js | 56 + .../dojox/highlight/resources/highlight.css | 51 + .../highlight/resources/pygments/autumn.css | 22 + .../highlight/resources/pygments/borland.css | 11 + .../highlight/resources/pygments/colorful.css | 37 + .../highlight/resources/pygments/default.css | 28 + .../highlight/resources/pygments/emacs.css | 29 + .../highlight/resources/pygments/friendly.css | 29 + .../highlight/resources/pygments/fruity.css | 14 + .../highlight/resources/pygments/manni.css | 30 + .../highlight/resources/pygments/murphy.css | 37 + .../highlight/resources/pygments/native.css | 21 + .../highlight/resources/pygments/pastie.css | 30 + .../highlight/resources/pygments/perldoc.css | 23 + .../highlight/resources/pygments/trac.css | 20 + .../dojo/dojox/highlight/widget/Code.js | 40 + .../highlight/widget/Code.js.uncompressed.js | 116 + .../webroot/DojoApp/dojo/dojox/html.js | 4 + .../dojo/dojox/html.js.uncompressed.js | 10 + .../webroot/DojoApp/dojo/dojox/html/README | 48 + .../webroot/DojoApp/dojo/dojox/html/_base.js | 196 + .../dojo/dojox/html/_base.js.uncompressed.js | 421 + .../DojoApp/dojo/dojox/html/ellipsis.js | 164 + .../dojox/html/ellipsis.js.uncompressed.js | 193 + .../DojoApp/dojo/dojox/html/entities.js | 77 + .../dojox/html/entities.js.uncompressed.js | 205 + .../DojoApp/dojo/dojox/html/ext-dojo/style.js | 283 + .../html/ext-dojo/style.js.uncompressed.js | 457 + .../webroot/DojoApp/dojo/dojox/html/format.js | 335 + .../dojo/dojox/html/format.js.uncompressed.js | 477 + .../DojoApp/dojo/dojox/html/metrics.js | 155 + .../dojox/html/metrics.js.uncompressed.js | 188 + .../dojo/dojox/html/resources/ellipsis.css | 33 + .../webroot/DojoApp/dojo/dojox/html/styles.js | 194 + .../dojo/dojox/html/styles.js.uncompressed.js | 310 + .../webroot/DojoApp/dojo/dojox/image.js | 4 + .../dojo/dojox/image.js.uncompressed.js | 10 + .../webroot/DojoApp/dojo/dojox/image/Badge.js | 92 + .../dojo/dojox/image/Badge.js.uncompressed.js | 234 + .../DojoApp/dojo/dojox/image/FlickrBadge.js | 51 + .../image/FlickrBadge.js.uncompressed.js | 105 + .../DojoApp/dojo/dojox/image/Gallery.js | 58 + .../dojox/image/Gallery.js.uncompressed.js | 193 + .../DojoApp/dojo/dojox/image/Lightbox.js | 269 + .../dojox/image/Lightbox.js.uncompressed.js | 628 + .../DojoApp/dojo/dojox/image/LightboxNano.js | 113 + .../image/LightboxNano.js.uncompressed.js | 312 + .../DojoApp/dojo/dojox/image/Magnifier.js | 20 + .../dojox/image/Magnifier.js.uncompressed.js | 73 + .../DojoApp/dojo/dojox/image/MagnifierLite.js | 37 + .../image/MagnifierLite.js.uncompressed.js | 132 + .../webroot/DojoApp/dojo/dojox/image/README | 88 + .../DojoApp/dojo/dojox/image/SlideShow.js | 359 + .../dojox/image/SlideShow.js.uncompressed.js | 681 + .../dojo/dojox/image/ThumbnailPicker.js | 303 + .../image/ThumbnailPicker.js.uncompressed.js | 600 + .../webroot/DojoApp/dojo/dojox/image/_base.js | 19 + .../dojo/dojox/image/_base.js.uncompressed.js | 115 + .../dojo/dojox/image/resources/Badge.css | 30 + .../dojo/dojox/image/resources/Gallery.css | 5 + .../dojo/dojox/image/resources/Gallery.html | 4 + .../dojo/dojox/image/resources/Lightbox.css | 105 + .../dojo/dojox/image/resources/Lightbox.html | 13 + .../dojox/image/resources/LightboxNano.css | 17 + .../dojo/dojox/image/resources/Magnifier.css | 5 + .../dojo/dojox/image/resources/SlideShow.css | 103 + .../dojo/dojox/image/resources/SlideShow.html | 14 + .../dojox/image/resources/ThumbnailPicker.css | 112 + .../image/resources/ThumbnailPicker.html | 11 + .../dojo/dojox/image/resources/image.css | 356 + .../dojox/image/resources/images/buttons.gif | Bin 0 -> 4620 bytes .../dojox/image/resources/images/buttons.png | Bin 0 -> 6610 bytes .../dojox/image/resources/images/close.gif | Bin 0 -> 936 bytes .../dojox/image/resources/images/close.png | Bin 0 -> 675 bytes .../image/resources/images/close_dark.png | Bin 0 -> 711 bytes .../dojox/image/resources/images/left.gif | Bin 0 -> 921 bytes .../dojox/image/resources/images/left.png | Bin 0 -> 626 bytes .../dojox/image/resources/images/loading.gif | Bin 0 -> 4178 bytes .../dojox/image/resources/images/right.gif | Bin 0 -> 920 bytes .../dojox/image/resources/images/right.png | Bin 0 -> 621 bytes .../dojox/image/resources/images/warning.png | Bin 0 -> 995 bytes .../webroot/DojoApp/dojo/dojox/io/OAuth.js | 167 + .../dojo/dojox/io/OAuth.js.uncompressed.js | 302 + .../webroot/DojoApp/dojo/dojox/io/README | 82 + .../DojoApp/dojo/dojox/io/httpParse.js | 60 + .../dojox/io/httpParse.js.uncompressed.js | 81 + .../DojoApp/dojo/dojox/io/proxy/README | 82 + .../DojoApp/dojo/dojox/io/proxy/xip.js | 252 + .../dojox/io/proxy/xip.js.uncompressed.js | 444 + .../dojo/dojox/io/proxy/xip_client.html | 102 + .../dojo/dojox/io/proxy/xip_server.html | 382 + .../DojoApp/dojo/dojox/io/scriptFrame.js | 42 + .../dojox/io/scriptFrame.js.uncompressed.js | 87 + .../DojoApp/dojo/dojox/io/windowName.js | 151 + .../dojox/io/windowName.js.uncompressed.js | 225 + .../DojoApp/dojo/dojox/io/xhrMultiPart.js | 61 + .../dojox/io/xhrMultiPart.js.uncompressed.js | 144 + .../DojoApp/dojo/dojox/io/xhrPlugins.js | 106 + .../dojox/io/xhrPlugins.js.uncompressed.js | 170 + .../DojoApp/dojo/dojox/io/xhrScriptPlugin.js | 19 + .../io/xhrScriptPlugin.js.uncompressed.js | 36 + .../dojo/dojox/io/xhrWindowNamePlugin.js | 33 + .../io/xhrWindowNamePlugin.js.uncompressed.js | 61 + .../webroot/DojoApp/dojo/dojox/jq.js | 1289 + .../DojoApp/dojo/dojox/jq.js.uncompressed.js | 1943 + .../webroot/DojoApp/dojo/dojox/jq/README | 103 + .../webroot/DojoApp/dojo/dojox/json/README | 42 + .../webroot/DojoApp/dojo/dojox/json/query.js | 133 + .../dojo/dojox/json/query.js.uncompressed.js | 259 + .../webroot/DojoApp/dojo/dojox/json/ref.js | 247 + .../dojo/dojox/json/ref.js.uncompressed.js | 361 + .../webroot/DojoApp/dojo/dojox/json/schema.js | 180 + .../dojo/dojox/json/schema.js.uncompressed.js | 223 + .../webroot/DojoApp/dojo/dojox/jsonPath.js | 3 + .../dojo/dojox/jsonPath.js.uncompressed.js | 9 + .../DojoApp/dojo/dojox/jsonPath/README | 126 + .../DojoApp/dojo/dojox/jsonPath/query.js | 198 + .../dojox/jsonPath/query.js.uncompressed.js | 168 + .../webroot/DojoApp/dojo/dojox/lang/LICENSE | 21 + .../webroot/DojoApp/dojo/dojox/lang/README | 71 + .../webroot/DojoApp/dojo/dojox/lang/aspect.js | 205 + .../dojo/dojox/lang/aspect.js.uncompressed.js | 371 + .../DojoApp/dojo/dojox/lang/aspect/cflow.js | 36 + .../lang/aspect/cflow.js.uncompressed.js | 46 + .../DojoApp/dojo/dojox/lang/aspect/counter.js | 20 + .../lang/aspect/counter.js.uncompressed.js | 30 + .../dojo/dojox/lang/aspect/memoizer.js | 40 + .../lang/aspect/memoizer.js.uncompressed.js | 48 + .../dojo/dojox/lang/aspect/memoizerGuard.js | 28 + .../aspect/memoizerGuard.js.uncompressed.js | 36 + .../dojo/dojox/lang/aspect/profiler.js | 22 + .../lang/aspect/profiler.js.uncompressed.js | 36 + .../DojoApp/dojo/dojox/lang/aspect/timer.js | 21 + .../lang/aspect/timer.js.uncompressed.js | 36 + .../DojoApp/dojo/dojox/lang/aspect/tracer.js | 27 + .../lang/aspect/tracer.js.uncompressed.js | 47 + .../webroot/DojoApp/dojo/dojox/lang/async.js | 155 + .../dojo/dojox/lang/async.js.uncompressed.js | 203 + .../DojoApp/dojo/dojox/lang/async/event.js | 37 + .../dojox/lang/async/event.js.uncompressed.js | 45 + .../DojoApp/dojo/dojox/lang/async/timeout.js | 37 + .../lang/async/timeout.js.uncompressed.js | 44 + .../DojoApp/dojo/dojox/lang/async/topic.js | 37 + .../dojox/lang/async/topic.js.uncompressed.js | 44 + .../webroot/DojoApp/dojo/dojox/lang/docs.js | 185 + .../dojo/dojox/lang/docs.js.uncompressed.js | 217 + .../DojoApp/dojo/dojox/lang/functional.js | 4 + .../dojox/lang/functional.js.uncompressed.js | 3 + .../dojo/dojox/lang/functional/array.js | 151 + .../lang/functional/array.js.uncompressed.js | 169 + .../dojo/dojox/lang/functional/binrec.js | 55 + .../lang/functional/binrec.js.uncompressed.js | 176 + .../dojo/dojox/lang/functional/curry.js | 57 + .../lang/functional/curry.js.uncompressed.js | 102 + .../dojo/dojox/lang/functional/fold.js | 93 + .../lang/functional/fold.js.uncompressed.js | 125 + .../dojo/dojox/lang/functional/lambda.js | 81 + .../lang/functional/lambda.js.uncompressed.js | 132 + .../dojo/dojox/lang/functional/linrec.js | 55 + .../lang/functional/linrec.js.uncompressed.js | 146 + .../dojo/dojox/lang/functional/listcomp.js | 26 + .../functional/listcomp.js.uncompressed.js | 59 + .../dojo/dojox/lang/functional/multirec.js | 55 + .../functional/multirec.js.uncompressed.js | 168 + .../dojo/dojox/lang/functional/numrec.js | 26 + .../lang/functional/numrec.js.uncompressed.js | 94 + .../dojo/dojox/lang/functional/object.js | 54 + .../lang/functional/object.js.uncompressed.js | 78 + .../dojo/dojox/lang/functional/reversed.js | 61 + .../functional/reversed.js.uncompressed.js | 77 + .../dojo/dojox/lang/functional/scan.js | 87 + .../lang/functional/scan.js.uncompressed.js | 107 + .../dojo/dojox/lang/functional/sequence.js | 21 + .../functional/sequence.js.uncompressed.js | 36 + .../dojo/dojox/lang/functional/tailrec.js | 45 + .../functional/tailrec.js.uncompressed.js | 119 + .../dojo/dojox/lang/functional/util.js | 26 + .../lang/functional/util.js.uncompressed.js | 50 + .../DojoApp/dojo/dojox/lang/functional/zip.js | 21 + .../lang/functional/zip.js.uncompressed.js | 48 + .../DojoApp/dojo/dojox/lang/observable.js | 143 + .../dojox/lang/observable.js.uncompressed.js | 262 + .../DojoApp/dojo/dojox/lang/oo/Decorator.js | 17 + .../lang/oo/Decorator.js.uncompressed.js | 40 + .../DojoApp/dojo/dojox/lang/oo/Filter.js | 20 + .../dojox/lang/oo/Filter.js.uncompressed.js | 48 + .../webroot/DojoApp/dojo/dojox/lang/oo/aop.js | 47 + .../dojo/dojox/lang/oo/aop.js.uncompressed.js | 84 + .../DojoApp/dojo/dojox/lang/oo/general.js | 42 + .../dojox/lang/oo/general.js.uncompressed.js | 69 + .../DojoApp/dojo/dojox/lang/oo/mixin.js | 76 + .../dojox/lang/oo/mixin.js.uncompressed.js | 135 + .../DojoApp/dojo/dojox/lang/oo/rearrange.js | 42 + .../lang/oo/rearrange.js.uncompressed.js | 68 + .../webroot/DojoApp/dojo/dojox/lang/typed.js | 139 + .../dojo/dojox/lang/typed.js.uncompressed.js | 153 + .../webroot/DojoApp/dojo/dojox/lang/utils.js | 86 + .../dojo/dojox/lang/utils.js.uncompressed.js | 121 + .../dojo/dojox/layout/BorderContainer.js | 5 + .../layout/BorderContainer.js.uncompressed.js | 6 + .../DojoApp/dojo/dojox/layout/ContentPane.js | 26 + .../layout/ContentPane.js.uncompressed.js | 102 + .../webroot/DojoApp/dojo/dojox/layout/Dock.js | 38 + .../dojo/dojox/layout/Dock.js.uncompressed.js | 113 + .../DojoApp/dojo/dojox/layout/DragPane.js | 29 + .../dojox/layout/DragPane.js.uncompressed.js | 61 + .../DojoApp/dojo/dojox/layout/ExpandoPane.js | 156 + .../layout/ExpandoPane.js.uncompressed.js | 332 + .../DojoApp/dojo/dojox/layout/FloatingPane.js | 183 + .../layout/FloatingPane.js.uncompressed.js | 320 + .../dojo/dojox/layout/GridContainer.js | 313 + .../layout/GridContainer.js.uncompressed.js | 630 + .../dojo/dojox/layout/GridContainerLite.js | 473 + .../GridContainerLite.js.uncompressed.js | 835 + .../webroot/DojoApp/dojo/dojox/layout/README | 121 + .../DojoApp/dojo/dojox/layout/RadioGroup.js | 126 + .../layout/RadioGroup.js.uncompressed.js | 307 + .../DojoApp/dojo/dojox/layout/ResizeHandle.js | 178 + .../layout/ResizeHandle.js.uncompressed.js | 389 + .../dojo/dojox/layout/RotatorContainer.js | 178 + .../RotatorContainer.js.uncompressed.js | 473 + .../DojoApp/dojo/dojox/layout/ScrollPane.js | 74 + .../layout/ScrollPane.js.uncompressed.js | 153 + .../dojo/dojox/layout/TableContainer.js | 133 + .../layout/TableContainer.js.uncompressed.js | 286 + .../dojo/dojox/layout/ToggleSplitter.js | 163 + .../layout/ToggleSplitter.js.uncompressed.js | 297 + .../DojoApp/dojo/dojox/layout/dnd/Avatar.js | 22 + .../layout/dnd/Avatar.js.uncompressed.js | 51 + .../dojo/dojox/layout/dnd/PlottedDnd.js | 394 + .../layout/dnd/PlottedDnd.js.uncompressed.js | 538 + .../ext-dijit/layout/StackContainer-touch.js | 40 + .../StackContainer-touch.js.uncompressed.js | 48 + .../layout/resources/DndGridContainer.css | 10 + .../dojox/layout/resources/ExpandoPane.css | 247 + .../dojox/layout/resources/ExpandoPane.html | 9 + .../dojox/layout/resources/FloatingPane.css | 154 + .../dojox/layout/resources/FloatingPane.html | 14 + .../dojox/layout/resources/GridContainer.css | 154 + .../dojox/layout/resources/GridContainer.html | 11 + .../dojox/layout/resources/RadioGroup.css | 40 + .../dojox/layout/resources/ResizeHandle.css | 40 + .../layout/resources/RotatorContainer.css | 41 + .../dojox/layout/resources/ScrollPane.css | 21 + .../dojox/layout/resources/ScrollPane.html | 6 + .../dojox/layout/resources/ToggleSplitter.css | 73 + .../resources/icons/gridcontainer_grip.gif | Bin 0 -> 80 bytes .../dojox/layout/resources/icons/grip_bg.gif | Bin 0 -> 46 bytes .../dojox/layout/resources/icons/pixel.gif | Bin 0 -> 64 bytes .../dojox/layout/resources/icons/resize.png | Bin 0 -> 319 bytes .../layout/resources/icons/resizeRtl.png | Bin 0 -> 269 bytes .../dojox/layout/resources/icons/rotator.png | Bin 0 -> 1895 bytes .../resources/icons/splitterToggleH.png | Bin 0 -> 286 bytes .../resources/icons/splitterToggleV.png | Bin 0 -> 287 bytes .../webroot/DojoApp/dojo/dojox/main.js | 4 + .../dojo/dojox/main.js.uncompressed.js | 14 + .../webroot/DojoApp/dojo/dojox/math.js | 5 + .../dojo/dojox/math.js.uncompressed.js | 14 + .../DojoApp/dojo/dojox/math/BigInteger-ext.js | 786 + .../math/BigInteger-ext.js.uncompressed.js | 656 + .../DojoApp/dojo/dojox/math/BigInteger.js | 627 + .../dojox/math/BigInteger.js.uncompressed.js | 589 + .../webroot/DojoApp/dojo/dojox/math/README | 40 + .../webroot/DojoApp/dojo/dojox/math/_base.js | 91 + .../dojo/dojox/math/_base.js.uncompressed.js | 162 + .../webroot/DojoApp/dojo/dojox/math/curves.js | 188 + .../dojo/dojox/math/curves.js.uncompressed.js | 194 + .../webroot/DojoApp/dojo/dojox/math/matrix.js | 245 + .../dojo/dojox/math/matrix.js.uncompressed.js | 295 + .../DojoApp/dojo/dojox/math/random/Secure.js | 47 + .../math/random/Secure.js.uncompressed.js | 98 + .../DojoApp/dojo/dojox/math/random/Simple.js | 9 + .../math/random/Simple.js.uncompressed.js | 24 + .../DojoApp/dojo/dojox/math/random/prng4.js | 37 + .../math/random/prng4.js.uncompressed.js | 59 + .../webroot/DojoApp/dojo/dojox/math/round.js | 27 + .../dojo/dojox/math/round.js.uncompressed.js | 70 + .../webroot/DojoApp/dojo/dojox/math/stats.js | 100 + .../dojo/dojox/math/stats.js.uncompressed.js | 194 + .../DojoApp/dojo/dojox/mdnd/AreaManager.js | 344 + .../dojox/mdnd/AreaManager.js.uncompressed.js | 723 + .../DojoApp/dojo/dojox/mdnd/AutoScroll.js | 108 + .../dojox/mdnd/AutoScroll.js.uncompressed.js | 202 + .../DojoApp/dojo/dojox/mdnd/DropIndicator.js | 42 + .../mdnd/DropIndicator.js.uncompressed.js | 89 + .../DojoApp/dojo/dojox/mdnd/LazyManager.js | 31 + .../dojox/mdnd/LazyManager.js.uncompressed.js | 76 + .../DojoApp/dojo/dojox/mdnd/Moveable.js | 100 + .../dojox/mdnd/Moveable.js.uncompressed.js | 264 + .../DojoApp/dojo/dojox/mdnd/PureSource.js | 70 + .../dojox/mdnd/PureSource.js.uncompressed.js | 214 + .../webroot/DojoApp/dojo/dojox/mdnd/README | 94 + .../dojo/dojox/mdnd/adapter/DndFromDojo.js | 160 + .../adapter/DndFromDojo.js.uncompressed.js | 371 + .../dojo/dojox/mdnd/adapter/DndToDojo.js | 250 + .../mdnd/adapter/DndToDojo.js.uncompressed.js | 494 + .../dojox/mdnd/dropMode/DefaultDropMode.js | 181 + .../DefaultDropMode.js.uncompressed.js | 338 + .../dojo/dojox/mdnd/dropMode/OverDropMode.js | 151 + .../dropMode/OverDropMode.js.uncompressed.js | 312 + .../dojox/mdnd/dropMode/VerticalDropMode.js | 181 + .../VerticalDropMode.js.uncompressed.js | 348 + .../DojoApp/dojo/dojox/mdnd/resources/dnd.css | 89 + .../webroot/DojoApp/dojo/dojox/mobile.js | 15 + .../dojo/dojox/mobile.js.uncompressed.js | 6880 +++ .../DojoApp/dojo/dojox/mobile/Accordion.js | 266 + .../dojox/mobile/Accordion.js.uncompressed.js | 510 + .../DojoApp/dojo/dojox/mobile/Audio.js | 46 + .../dojox/mobile/Audio.js.uncompressed.js | 109 + .../DojoApp/dojo/dojox/mobile/Badge.js | 23 + .../dojox/mobile/Badge.js.uncompressed.js | 75 + .../DojoApp/dojo/dojox/mobile/Button.js | 58 + .../dojox/mobile/Button.js.uncompressed.js | 129 + .../DojoApp/dojo/dojox/mobile/Carousel.js | 286 + .../dojox/mobile/Carousel.js.uncompressed.js | 478 + .../DojoApp/dojo/dojox/mobile/CarouselItem.js | 43 + .../mobile/CarouselItem.js.uncompressed.js | 104 + .../DojoApp/dojo/dojox/mobile/CheckBox.js | 22 + .../dojox/mobile/CheckBox.js.uncompressed.js | 50 + .../DojoApp/dojo/dojox/mobile/ComboBox.js | 163 + .../dojox/mobile/ComboBox.js.uncompressed.js | 332 + .../DojoApp/dojo/dojox/mobile/Container.js | 4 + .../dojox/mobile/Container.js.uncompressed.js | 21 + .../DojoApp/dojo/dojox/mobile/ContentPane.js | 4 + .../mobile/ContentPane.js.uncompressed.js | 22 + .../DojoApp/dojo/dojox/mobile/DataCarousel.js | 5 + .../mobile/DataCarousel.js.uncompressed.js | 19 + .../DojoApp/dojo/dojox/mobile/DatePicker.js | 4 + .../mobile/DatePicker.js.uncompressed.js | 22 + .../dojo/dojox/mobile/EdgeToEdgeCategory.js | 10 + .../EdgeToEdgeCategory.js.uncompressed.js | 21 + .../dojo/dojox/mobile/EdgeToEdgeDataList.js | 5 + .../EdgeToEdgeDataList.js.uncompressed.js | 21 + .../dojo/dojox/mobile/EdgeToEdgeList.js | 7 + .../mobile/EdgeToEdgeList.js.uncompressed.js | 28 + .../dojo/dojox/mobile/EdgeToEdgeStoreList.js | 4 + .../EdgeToEdgeStoreList.js.uncompressed.js | 17 + .../dojo/dojox/mobile/ExpandingTextArea.js | 4 + .../ExpandingTextArea.js.uncompressed.js | 22 + .../dojo/dojox/mobile/FilteredListMixin.js | 119 + .../FilteredListMixin.js.uncompressed.js | 422 + .../dojo/dojox/mobile/FixedSplitter.js | 96 + .../mobile/FixedSplitter.js.uncompressed.js | 187 + .../dojo/dojox/mobile/FixedSplitterPane.js | 5 + .../FixedSplitterPane.js.uncompressed.js | 18 + .../DojoApp/dojo/dojox/mobile/FormLayout.js | 21 + .../mobile/FormLayout.js.uncompressed.js | 84 + .../DojoApp/dojo/dojox/mobile/GridLayout.js | 4 + .../mobile/GridLayout.js.uncompressed.js | 32 + .../DojoApp/dojo/dojox/mobile/Heading.js | 122 + .../dojox/mobile/Heading.js.uncompressed.js | 263 + .../webroot/DojoApp/dojo/dojox/mobile/Icon.js | 13 + .../dojo/dojox/mobile/Icon.js.uncompressed.js | 80 + .../dojo/dojox/mobile/IconContainer.js | 69 + .../mobile/IconContainer.js.uncompressed.js | 178 + .../DojoApp/dojo/dojox/mobile/IconItem.js | 220 + .../dojox/mobile/IconItem.js.uncompressed.js | 412 + .../DojoApp/dojo/dojox/mobile/IconMenu.js | 58 + .../dojox/mobile/IconMenu.js.uncompressed.js | 126 + .../DojoApp/dojo/dojox/mobile/IconMenuItem.js | 55 + .../mobile/IconMenuItem.js.uncompressed.js | 122 + .../DojoApp/dojo/dojox/mobile/ListItem.js | 291 + .../dojox/mobile/ListItem.js.uncompressed.js | 583 + .../dojo/dojox/mobile/LongListMixin.js | 157 + .../mobile/LongListMixin.js.uncompressed.js | 304 + .../DojoApp/dojo/dojox/mobile/Opener.js | 47 + .../dojox/mobile/Opener.js.uncompressed.js | 104 + .../DojoApp/dojo/dojox/mobile/Overlay.js | 79 + .../dojox/mobile/Overlay.js.uncompressed.js | 129 + .../dojo/dojox/mobile/PageIndicator.js | 72 + .../mobile/PageIndicator.js.uncompressed.js | 119 + .../webroot/DojoApp/dojo/dojox/mobile/Pane.js | 15 + .../dojo/dojox/mobile/Pane.js.uncompressed.js | 38 + .../DojoApp/dojo/dojox/mobile/ProgressBar.js | 19 + .../mobile/ProgressBar.js.uncompressed.js | 79 + .../dojo/dojox/mobile/ProgressIndicator.js | 84 + .../ProgressIndicator.js.uncompressed.js | 175 + .../webroot/DojoApp/dojo/dojox/mobile/README | 44 + .../DojoApp/dojo/dojox/mobile/RadioButton.js | 4 + .../mobile/RadioButton.js.uncompressed.js | 21 + .../DojoApp/dojo/dojox/mobile/Rating.js | 39 + .../dojox/mobile/Rating.js.uncompressed.js | 92 + .../DojoApp/dojo/dojox/mobile/RoundRect.js | 9 + .../dojox/mobile/RoundRect.js.uncompressed.js | 40 + .../dojo/dojox/mobile/RoundRectCategory.js | 14 + .../RoundRectCategory.js.uncompressed.js | 53 + .../dojo/dojox/mobile/RoundRectDataList.js | 5 + .../RoundRectDataList.js.uncompressed.js | 21 + .../dojo/dojox/mobile/RoundRectList.js | 53 + .../mobile/RoundRectList.js.uncompressed.js | 155 + .../dojo/dojox/mobile/RoundRectStoreList.js | 4 + .../RoundRectStoreList.js.uncompressed.js | 17 + .../dojo/dojox/mobile/ScreenSizeAware.js | 142 + .../mobile/ScreenSizeAware.js.uncompressed.js | 268 + .../dojo/dojox/mobile/ScrollablePane.js | 58 + .../mobile/ScrollablePane.js.uncompressed.js | 122 + .../dojo/dojox/mobile/ScrollableView.js | 93 + .../mobile/ScrollableView.js.uncompressed.js | 170 + .../DojoApp/dojo/dojox/mobile/SearchBox.js | 69 + .../dojox/mobile/SearchBox.js.uncompressed.js | 124 + .../DojoApp/dojo/dojox/mobile/SimpleDialog.js | 110 + .../mobile/SimpleDialog.js.uncompressed.js | 224 + .../DojoApp/dojo/dojox/mobile/Slider.js | 144 + .../dojox/mobile/Slider.js.uncompressed.js | 218 + .../DojoApp/dojo/dojox/mobile/SpinWheel.js | 23 + .../dojox/mobile/SpinWheel.js.uncompressed.js | 48 + .../dojo/dojox/mobile/SpinWheelDatePicker.js | 15 + .../SpinWheelDatePicker.js.uncompressed.js | 54 + .../dojo/dojox/mobile/SpinWheelSlot.js | 351 + .../mobile/SpinWheelSlot.js.uncompressed.js | 567 + .../dojo/dojox/mobile/SpinWheelTimePicker.js | 7 + .../SpinWheelTimePicker.js.uncompressed.js | 34 + .../dojo/dojox/mobile/StoreCarousel.js | 4 + .../mobile/StoreCarousel.js.uncompressed.js | 17 + .../DojoApp/dojo/dojox/mobile/SwapView.js | 224 + .../dojox/mobile/SwapView.js.uncompressed.js | 319 + .../DojoApp/dojo/dojox/mobile/Switch.js | 200 + .../dojox/mobile/Switch.js.uncompressed.js | 329 + .../DojoApp/dojo/dojox/mobile/TabBar.js | 130 + .../dojox/mobile/TabBar.js.uncompressed.js | 218 + .../DojoApp/dojo/dojox/mobile/TabBarButton.js | 169 + .../mobile/TabBarButton.js.uncompressed.js | 310 + .../DojoApp/dojo/dojox/mobile/TextArea.js | 14 + .../dojox/mobile/TextArea.js.uncompressed.js | 34 + .../DojoApp/dojo/dojox/mobile/TextBox.js | 28 + .../dojox/mobile/TextBox.js.uncompressed.js | 48 + .../DojoApp/dojo/dojox/mobile/TimePicker.js | 4 + .../mobile/TimePicker.js.uncompressed.js | 21 + .../DojoApp/dojo/dojox/mobile/ToggleButton.js | 8 + .../mobile/ToggleButton.js.uncompressed.js | 21 + .../dojo/dojox/mobile/ToolBarButton.js | 79 + .../mobile/ToolBarButton.js.uncompressed.js | 178 + .../DojoApp/dojo/dojox/mobile/Tooltip.js | 51 + .../dojox/mobile/Tooltip.js.uncompressed.js | 112 + .../dojo/dojox/mobile/TransitionEvent.js | 11 + .../mobile/TransitionEvent.js.uncompressed.js | 28 + .../DojoApp/dojo/dojox/mobile/TreeView.js | 61 + .../dojox/mobile/TreeView.js.uncompressed.js | 122 + .../DojoApp/dojo/dojox/mobile/ValuePicker.js | 5 + .../mobile/ValuePicker.js.uncompressed.js | 31 + .../dojox/mobile/ValuePickerDatePicker.js | 32 + .../ValuePickerDatePicker.js.uncompressed.js | 130 + .../dojo/dojox/mobile/ValuePickerSlot.js | 185 + .../mobile/ValuePickerSlot.js.uncompressed.js | 389 + .../dojox/mobile/ValuePickerTimePicker.js | 84 + .../ValuePickerTimePicker.js.uncompressed.js | 218 + .../DojoApp/dojo/dojox/mobile/Video.js | 6 + .../dojox/mobile/Video.js.uncompressed.js | 41 + .../webroot/DojoApp/dojo/dojox/mobile/View.js | 406 + .../dojo/dojox/mobile/View.js.uncompressed.js | 680 + .../dojo/dojox/mobile/ViewController.js | 142 + .../mobile/ViewController.js.uncompressed.js | 258 + .../dojo/dojox/mobile/_ComboBoxMenu.js | 31 + .../mobile/_ComboBoxMenu.js.uncompressed.js | 87 + .../dojo/dojox/mobile/_ContentPaneMixin.js | 55 + .../_ContentPaneMixin.js.uncompressed.js | 130 + .../dojo/dojox/mobile/_DataListMixin.js | 51 + .../mobile/_DataListMixin.js.uncompressed.js | 118 + .../DojoApp/dojo/dojox/mobile/_DataMixin.js | 38 + .../mobile/_DataMixin.js.uncompressed.js | 125 + .../dojo/dojox/mobile/_DatePickerMixin.js | 129 + .../_DatePickerMixin.js.uncompressed.js | 275 + .../dojo/dojox/mobile/_EditableIconMixin.js | 244 + .../_EditableIconMixin.js.uncompressed.js | 417 + .../dojo/dojox/mobile/_EditableListMixin.js | 150 + .../_EditableListMixin.js.uncompressed.js | 263 + .../dojo/dojox/mobile/_ExecScriptMixin.js | 15 + .../_ExecScriptMixin.js.uncompressed.js | 40 + .../dojo/dojox/mobile/_IconItemPane.js | 26 + .../mobile/_IconItemPane.js.uncompressed.js | 99 + .../DojoApp/dojo/dojox/mobile/_ItemBase.js | 200 + .../dojox/mobile/_ItemBase.js.uncompressed.js | 474 + .../dojo/dojox/mobile/_ListTouchMixin.js | 23 + .../mobile/_ListTouchMixin.js.uncompressed.js | 48 + .../DojoApp/dojo/dojox/mobile/_PickerBase.js | 42 + .../mobile/_PickerBase.js.uncompressed.js | 119 + .../dojo/dojox/mobile/_PickerChooser.js | 7 + .../mobile/_PickerChooser.js.uncompressed.js | 22 + .../dojo/dojox/mobile/_ScrollableMixin.js | 94 + .../_ScrollableMixin.js.uncompressed.js | 145 + .../dojo/dojox/mobile/_StoreListMixin.js | 52 + .../mobile/_StoreListMixin.js.uncompressed.js | 124 + .../DojoApp/dojo/dojox/mobile/_StoreMixin.js | 73 + .../mobile/_StoreMixin.js.uncompressed.js | 166 + .../dojo/dojox/mobile/_TimePickerMixin.js | 22 + .../_TimePickerMixin.js.uncompressed.js | 48 + .../DojoApp/dojo/dojox/mobile/_base.js | 4 + .../dojox/mobile/_base.js.uncompressed.js | 30 + .../DojoApp/dojo/dojox/mobile/_compat.js | 360 + .../dojox/mobile/_compat.js.uncompressed.js | 566 + .../DojoApp/dojo/dojox/mobile/_css3.js | 74 + .../dojox/mobile/_css3.js.uncompressed.js | 135 + .../DojoApp/dojo/dojox/mobile/_maskUtils.js | 102 + .../mobile/_maskUtils.js.uncompressed.js | 125 + .../webroot/DojoApp/dojo/dojox/mobile/app.js | 15 + .../dojo/dojox/mobile/app.js.uncompressed.js | 15766 +++++++ .../dojo/dojox/mobile/app/AlertDialog.js | 72 + .../mobile/app/AlertDialog.js.uncompressed.js | 185 + .../dojo/dojox/mobile/app/ImageThumbView.js | 226 + .../app/ImageThumbView.js.uncompressed.js | 392 + .../dojo/dojox/mobile/app/ImageView.js | 369 + .../mobile/app/ImageView.js.uncompressed.js | 720 + .../DojoApp/dojo/dojox/mobile/app/List.js | 334 + .../dojox/mobile/app/List.js.uncompressed.js | 647 + .../dojo/dojox/mobile/app/ListSelector.js | 103 + .../app/ListSelector.js.uncompressed.js | 222 + .../dojo/dojox/mobile/app/SceneAssistant.js | 24 + .../app/SceneAssistant.js.uncompressed.js | 60 + .../dojo/dojox/mobile/app/SceneController.js | 79 + .../app/SceneController.js.uncompressed.js | 173 + .../dojo/dojox/mobile/app/StageController.js | 71 + .../app/StageController.js.uncompressed.js | 136 + .../DojoApp/dojo/dojox/mobile/app/TextBox.js | 7 + .../mobile/app/TextBox.js.uncompressed.js | 9 + .../dojo/dojox/mobile/app/_FormWidget.js | 113 + .../mobile/app/_FormWidget.js.uncompressed.js | 293 + .../DojoApp/dojo/dojox/mobile/app/_Widget.js | 16 + .../mobile/app/_Widget.js.uncompressed.js | 33 + .../DojoApp/dojo/dojox/mobile/app/_base.js | 141 + .../dojox/mobile/app/_base.js.uncompressed.js | 241 + .../DojoApp/dojo/dojox/mobile/app/_event.js | 69 + .../mobile/app/_event.js.uncompressed.js | 122 + .../DojoApp/dojo/dojox/mobile/app/compat.js | 15 + .../mobile/app/compat.js.uncompressed.js | 219 + .../dojo/dojox/mobile/bidi/Accordion.js | 11 + .../mobile/bidi/Accordion.js.uncompressed.js | 27 + .../DojoApp/dojo/dojox/mobile/bidi/Badge.js | 11 + .../mobile/bidi/Badge.js.uncompressed.js | 32 + .../DojoApp/dojo/dojox/mobile/bidi/Button.js | 12 + .../mobile/bidi/Button.js.uncompressed.js | 25 + .../dojo/dojox/mobile/bidi/Carousel.js | 34 + .../mobile/bidi/Carousel.js.uncompressed.js | 53 + .../dojo/dojox/mobile/bidi/CarouselItem.js | 20 + .../bidi/CarouselItem.js.uncompressed.js | 36 + .../dojo/dojox/mobile/bidi/FormLayout.js | 9 + .../mobile/bidi/FormLayout.js.uncompressed.js | 18 + .../DojoApp/dojo/dojox/mobile/bidi/Heading.js | 23 + .../mobile/bidi/Heading.js.uncompressed.js | 38 + .../DojoApp/dojo/dojox/mobile/bidi/Icon.js | 9 + .../dojox/mobile/bidi/Icon.js.uncompressed.js | 19 + .../dojo/dojox/mobile/bidi/IconItem.js | 24 + .../mobile/bidi/IconItem.js.uncompressed.js | 42 + .../dojo/dojox/mobile/bidi/IconMenu.js | 9 + .../mobile/bidi/IconMenu.js.uncompressed.js | 23 + .../dojo/dojox/mobile/bidi/ListItem.js | 67 + .../mobile/bidi/ListItem.js.uncompressed.js | 99 + .../dojox/mobile/bidi/ProgressIndicator.js | 16 + .../bidi/ProgressIndicator.js.uncompressed.js | 27 + .../DojoApp/dojo/dojox/mobile/bidi/Rating.js | 7 + .../mobile/bidi/Rating.js.uncompressed.js | 17 + .../dojox/mobile/bidi/RoundRectCategory.js | 15 + .../bidi/RoundRectCategory.js.uncompressed.js | 30 + .../dojo/dojox/mobile/bidi/Scrollable.js | 10 + .../mobile/bidi/Scrollable.js.uncompressed.js | 20 + .../dojo/dojox/mobile/bidi/SimpleDialog.js | 10 + .../bidi/SimpleDialog.js.uncompressed.js | 20 + .../dojo/dojox/mobile/bidi/SpinWheelSlot.js | 22 + .../bidi/SpinWheelSlot.js.uncompressed.js | 42 + .../dojo/dojox/mobile/bidi/SwapView.js | 20 + .../mobile/bidi/SwapView.js.uncompressed.js | 38 + .../DojoApp/dojo/dojox/mobile/bidi/Switch.js | 36 + .../mobile/bidi/Switch.js.uncompressed.js | 59 + .../DojoApp/dojo/dojox/mobile/bidi/TabBar.js | 9 + .../mobile/bidi/TabBar.js.uncompressed.js | 23 + .../dojo/dojox/mobile/bidi/TabBarButton.js | 13 + .../bidi/TabBarButton.js.uncompressed.js | 29 + .../DojoApp/dojo/dojox/mobile/bidi/TextBox.js | 27 + .../mobile/bidi/TextBox.js.uncompressed.js | 48 + .../dojo/dojox/mobile/bidi/ToolBarButton.js | 21 + .../bidi/ToolBarButton.js.uncompressed.js | 35 + .../DojoApp/dojo/dojox/mobile/bidi/Tooltip.js | 29 + .../mobile/bidi/Tooltip.js.uncompressed.js | 54 + .../dojo/dojox/mobile/bidi/TreeView.js | 10 + .../mobile/bidi/TreeView.js.uncompressed.js | 24 + .../dojo/dojox/mobile/bidi/ValuePickerSlot.js | 21 + .../bidi/ValuePickerSlot.js.uncompressed.js | 43 + .../dojo/dojox/mobile/bidi/_ComboBoxMenu.js | 14 + .../bidi/_ComboBoxMenu.js.uncompressed.js | 27 + .../dojo/dojox/mobile/bidi/_ItemBase.js | 26 + .../mobile/bidi/_ItemBase.js.uncompressed.js | 40 + .../dojo/dojox/mobile/bidi/_PickerBase.js | 11 + .../bidi/_PickerBase.js.uncompressed.js | 20 + .../dojo/dojox/mobile/bidi/_StoreListMixin.js | 8 + .../bidi/_StoreListMixin.js.uncompressed.js | 21 + .../DojoApp/dojo/dojox/mobile/bidi/common.js | 27 + .../mobile/bidi/common.js.uncompressed.js | 61 + .../DojoApp/dojo/dojox/mobile/bookmarkable.js | 89 + .../mobile/bookmarkable.js.uncompressed.js | 154 + .../DojoApp/dojo/dojox/mobile/build/build.bat | 28 + .../DojoApp/dojo/dojox/mobile/build/build.sh | 29 + .../DojoApp/dojo/dojox/mobile/common.js | 272 + .../dojox/mobile/common.js.uncompressed.js | 432 + .../DojoApp/dojo/dojox/mobile/compat.js | 15 + .../dojox/mobile/compat.js.uncompressed.js | 57 + .../DojoApp/dojo/dojox/mobile/deviceTheme.js | 108 + .../mobile/deviceTheme.js.uncompressed.js | 323 + .../dojo/dojox/mobile/dh/ContentTypeMap.js | 13 + .../dh/ContentTypeMap.js.uncompressed.js | 33 + .../dojo/dojox/mobile/dh/DataHandler.js | 17 + .../mobile/dh/DataHandler.js.uncompressed.js | 57 + .../dojox/mobile/dh/HtmlContentHandler.js | 25 + .../dh/HtmlContentHandler.js.uncompressed.js | 61 + .../mobile/dh/HtmlScriptContentHandler.js | 4 + ...tmlScriptContentHandler.js.uncompressed.js | 14 + .../dojox/mobile/dh/JsonContentHandler.js | 129 + .../dh/JsonContentHandler.js.uncompressed.js | 239 + .../dojox/mobile/dh/PatternFileTypeMap.js | 18 + .../dh/PatternFileTypeMap.js.uncompressed.js | 38 + .../dojo/dojox/mobile/dh/StringDataSource.js | 8 + .../dh/StringDataSource.js.uncompressed.js | 26 + .../dojo/dojox/mobile/dh/SuffixFileTypeMap.js | 14 + .../dh/SuffixFileTypeMap.js.uncompressed.js | 34 + .../dojo/dojox/mobile/dh/UrlDataSource.js | 14 + .../dh/UrlDataSource.js.uncompressed.js | 40 + .../webroot/DojoApp/dojo/dojox/mobile/i18n.js | 23 + .../dojo/dojox/mobile/i18n.js.uncompressed.js | 54 + .../DojoApp/dojo/dojox/mobile/iconUtils.js | 162 + .../dojox/mobile/iconUtils.js.uncompressed.js | 240 + .../dojo/dojox/mobile/lazyLoadUtils.js | 80 + .../mobile/lazyLoadUtils.js.uncompressed.js | 96 + .../dojo/dojox/mobile/migrationAssist.js | 197 + .../mobile/migrationAssist.js.uncompressed.js | 429 + .../DojoApp/dojo/dojox/mobile/mobile-all.js | 5 + .../mobile/mobile-all.js.uncompressed.js | 88 + .../dojo/dojox/mobile/nls/ar/messages.js | 2 + .../mobile/nls/ar/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/bg/messages.js | 2 + .../mobile/nls/bg/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/ca/messages.js | 2 + .../mobile/nls/ca/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/cs/messages.js | 2 + .../mobile/nls/cs/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/da/messages.js | 2 + .../mobile/nls/da/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/de/messages.js | 2 + .../mobile/nls/de/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/el/messages.js | 2 + .../mobile/nls/el/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/es/messages.js | 2 + .../mobile/nls/es/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/fi/messages.js | 2 + .../mobile/nls/fi/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/fr/messages.js | 2 + .../mobile/nls/fr/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/he/messages.js | 2 + .../mobile/nls/he/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/hr/messages.js | 2 + .../mobile/nls/hr/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/hu/messages.js | 2 + .../mobile/nls/hu/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/id/messages.js | 2 + .../mobile/nls/id/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/it/messages.js | 2 + .../mobile/nls/it/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/ja/messages.js | 2 + .../mobile/nls/ja/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/kk/messages.js | 2 + .../mobile/nls/kk/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/ko/messages.js | 2 + .../mobile/nls/ko/messages.js.uncompressed.js | 13 + .../DojoApp/dojo/dojox/mobile/nls/messages.js | 2 + .../mobile/nls/messages.js.uncompressed.js | 48 + .../dojo/dojox/mobile/nls/nb/messages.js | 2 + .../mobile/nls/nb/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/nl/messages.js | 2 + .../mobile/nls/nl/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/pl/messages.js | 2 + .../mobile/nls/pl/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/pt-pt/messages.js | 2 + .../nls/pt-pt/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/pt/messages.js | 2 + .../mobile/nls/pt/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/ro/messages.js | 2 + .../mobile/nls/ro/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/ru/messages.js | 2 + .../mobile/nls/ru/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/sk/messages.js | 2 + .../mobile/nls/sk/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/sl/messages.js | 2 + .../mobile/nls/sl/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/sv/messages.js | 2 + .../mobile/nls/sv/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/th/messages.js | 2 + .../mobile/nls/th/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/tr/messages.js | 2 + .../mobile/nls/tr/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/uk/messages.js | 2 + .../mobile/nls/uk/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/zh-tw/messages.js | 2 + .../nls/zh-tw/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/nls/zh/messages.js | 2 + .../mobile/nls/zh/messages.js.uncompressed.js | 13 + .../dojo/dojox/mobile/pageTurningUtils.js | 237 + .../pageTurningUtils.js.uncompressed.js | 601 + .../DojoApp/dojo/dojox/mobile/parser.js | 131 + .../dojox/mobile/parser.js.uncompressed.js | 157 + .../DojoApp/dojo/dojox/mobile/scrollable.js | 981 + .../mobile/scrollable.js.uncompressed.js | 1493 + .../DojoApp/dojo/dojox/mobile/sniff.js | 6 + .../dojox/mobile/sniff.js.uncompressed.js | 21 + .../themes/android/Accordion-compat.css | 25 + .../dojox/mobile/themes/android/Accordion.css | 73 + .../mobile/themes/android/Accordion_rtl.css | 6 + .../mobile/themes/android/Button-compat.css | 41 + .../dojox/mobile/themes/android/Button.css | 47 + .../dojox/mobile/themes/android/Carousel.css | 77 + .../mobile/themes/android/Carousel_rtl.css | 13 + .../mobile/themes/android/CheckBox-compat.css | 38 + .../dojox/mobile/themes/android/CheckBox.css | 49 + .../mobile/themes/android/ComboBox-compat.css | 7 + .../dojox/mobile/themes/android/ComboBox.css | 58 + .../mobile/themes/android/ComboBox_rtl.css | 4 + .../mobile/themes/android/DatePicker.css | 178 + .../themes/android/EdgeToEdgeCategory.css | 18 + .../mobile/themes/android/EdgeToEdgeList.css | 9 + .../mobile/themes/android/FixedSplitter.css | 21 + .../mobile/themes/android/FormLayout.css | 160 + .../mobile/themes/android/FormLayout_rtl.css | 4 + .../mobile/themes/android/GridLayout.css | 24 + .../mobile/themes/android/GridLayout_rtl.css | 4 + .../mobile/themes/android/Heading-compat.css | 10 + .../dojox/mobile/themes/android/Heading.css | 39 + .../themes/android/IconContainer-compat.css | 59 + .../themes/android/IconContainer-compat.less | 5 + .../mobile/themes/android/IconContainer.css | 381 + .../mobile/themes/android/IconContainer.less | 5 + .../themes/android/IconContainer_rtl.css | 13 + .../mobile/themes/android/IconMenu-compat.css | 34 + .../dojox/mobile/themes/android/IconMenu.css | 63 + .../themes/android/IconMenu_rtl-compat.css | 17 + .../mobile/themes/android/IconMenu_rtl.css | 23 + .../mobile/themes/android/ListItem-compat.css | 24 + .../themes/android/ListItem-compat.less | 5 + .../dojox/mobile/themes/android/ListItem.css | 154 + .../dojox/mobile/themes/android/ListItem.less | 5 + .../themes/android/ListItem_rtl-compat.css | 6 + .../mobile/themes/android/ListItem_rtl.css | 40 + .../mobile/themes/android/ListItem_rtl.less | 4 + .../mobile/themes/android/Opener-compat.css | 53 + .../dojox/mobile/themes/android/Opener.css | 245 + .../mobile/themes/android/Overlay-compat.css | 14 + .../dojox/mobile/themes/android/Overlay.css | 90 + .../dojox/mobile/themes/android/Overlay.less | 5 + .../themes/android/PageIndicator-compat.css | 4 + .../mobile/themes/android/PageIndicator.css | 23 + .../themes/android/ProgressBar-compat.css | 15 + .../mobile/themes/android/ProgressBar.css | 35 + .../android/ProgressIndicator-compat.css | 83 + .../themes/android/ProgressIndicator.css | 157 + .../themes/android/ProgressIndicator_rtl.css | 14 + .../themes/android/RadioButton-compat.css | 32 + .../mobile/themes/android/RadioButton.css | 49 + .../themes/android/RoundRect-compat.css | 72 + .../dojox/mobile/themes/android/RoundRect.css | 13 + .../themes/android/RoundRectCategory.css | 11 + .../themes/android/RoundRectCategory_rtl.css | 4 + .../themes/android/RoundRectList-compat.css | 77 + .../mobile/themes/android/RoundRectList.css | 19 + .../mobile/themes/android/ScrollablePane.css | 12 + .../themes/android/SearchBox-compat.css | 22 + .../dojox/mobile/themes/android/SearchBox.css | 63 + .../themes/android/SimpleDialog-compat.css | 10 + .../mobile/themes/android/SimpleDialog.css | 48 + .../mobile/themes/android/Slider-compat.css | 40 + .../dojox/mobile/themes/android/Slider.css | 65 + .../themes/android/SpinWheel-compat.css | 36 + .../dojox/mobile/themes/android/SpinWheel.css | 77 + .../themes/android/SpinWheel_rtl-compat.css | 4 + .../mobile/themes/android/SpinWheel_rtl.css | 5 + .../mobile/themes/android/Switch-compat.css | 109 + .../mobile/themes/android/Switch-compat.less | 7 + .../dojox/mobile/themes/android/Switch.css | 221 + .../dojox/mobile/themes/android/Switch.less | 7 + .../themes/android/Switch_rtl-compat.css | 37 + .../mobile/themes/android/Switch_rtl.css | 110 + .../mobile/themes/android/TabBar-compat.css | 60 + .../mobile/themes/android/TabBar-compat.less | 3 + .../dojox/mobile/themes/android/TabBar.css | 278 + .../dojox/mobile/themes/android/TabBar.less | 3 + .../themes/android/TabBar_rtl-compat.css | 19 + .../mobile/themes/android/TabBar_rtl.css | 83 + .../mobile/themes/android/TextArea-compat.css | 7 + .../dojox/mobile/themes/android/TextArea.css | 13 + .../mobile/themes/android/TextBox-compat.css | 4 + .../dojox/mobile/themes/android/TextBox.css | 10 + .../mobile/themes/android/TimePicker.css | 178 + .../themes/android/ToggleButton-compat.css | 42 + .../mobile/themes/android/ToggleButton.css | 54 + .../themes/android/ToggleButton_rtl.css | 7 + .../themes/android/ToolBarButton-compat.css | 63 + .../mobile/themes/android/ToolBarButton.css | 90 + .../themes/android/ToolBarButton_rtl.css | 18 + .../mobile/themes/android/Tooltip-compat.css | 40 + .../dojox/mobile/themes/android/Tooltip.css | 152 + .../themes/android/ValuePicker-compat.css | 19 + .../mobile/themes/android/ValuePicker.css | 102 + .../mobile/themes/android/ValuePicker.less | 5 + .../dojo/dojox/mobile/themes/android/View.css | 123 + .../dojox/mobile/themes/android/View.less | 6 + .../themes/android/android-app-compat.css | 1278 + .../mobile/themes/android/android-app.css | 5747 +++ .../mobile/themes/android/android-compat.css | 1255 + .../dojox/mobile/themes/android/android.css | 5448 +++ .../themes/android/android_rtl-compat.css | 80 + .../mobile/themes/android/android_rtl.css | 327 + .../mobile/themes/android/base-compat.css | 449 + .../dojo/dojox/mobile/themes/android/base.css | 905 + .../mobile/themes/android/base_rtl-compat.css | 42 + .../dojox/mobile/themes/android/base_rtl.css | 182 + .../mobile/themes/android/common-compat.css | 18 + .../dojox/mobile/themes/android/common.css | 61 + .../android/compat/arrow-button-bg-sel.png | Bin 0 -> 189 bytes .../themes/android/compat/arrow-button-bg.png | Bin 0 -> 157 bytes .../android/compat/arrow-button-head-sel.png | Bin 0 -> 1134 bytes .../android/compat/arrow-button-head.png | Bin 0 -> 1068 bytes .../compat/arrow-button-right-head-sel.png | Bin 0 -> 1129 bytes .../compat/arrow-button-right-head.png | Bin 0 -> 1073 bytes .../themes/android/compat/blue-button-bg.png | Bin 0 -> 199 bytes .../android/compat/blue-button-sel-bg.png | Bin 0 -> 207 bytes .../android/compat/button-arrow-head-bg.gif | Bin 0 -> 316 bytes .../themes/android/compat/button-bg.png | Bin 0 -> 169 bytes .../themes/android/compat/button-chk-bg.png | Bin 0 -> 154 bytes .../themes/android/compat/button-sel-bg.png | Bin 0 -> 207 bytes .../themes/android/compat/button-unsel-bg.png | Bin 0 -> 207 bytes .../themes/android/compat/gray-arrow.png | Bin 0 -> 920 bytes .../themes/android/compat/heading-bg.png | Bin 0 -> 181 bytes .../compat/icon-content-heading-bg.png | Bin 0 -> 193 bytes .../themes/android/compat/red-button-bg.png | Bin 0 -> 248 bytes .../android/compat/red-button-sel-bg.png | Bin 0 -> 207 bytes .../themes/android/compat/slider-h-bar-bg.png | Bin 0 -> 124 bytes .../themes/android/compat/slider-h-bg.png | Bin 0 -> 135 bytes .../android/compat/slider-handle-bg.png | Bin 0 -> 156 bytes .../themes/android/compat/switch-arc1-k.gif | Bin 0 -> 492 bytes .../themes/android/compat/switch-arc1-l.gif | Bin 0 -> 803 bytes .../themes/android/compat/switch-arc1-r.gif | Bin 0 -> 691 bytes .../themes/android/compat/switch-arc2-k.gif | Bin 0 -> 536 bytes .../themes/android/compat/switch-arc2-l.gif | Bin 0 -> 827 bytes .../themes/android/compat/switch-arc2-r.gif | Bin 0 -> 728 bytes .../themes/android/compat/switch-round1-k.gif | Bin 0 -> 511 bytes .../themes/android/compat/switch-round1-l.gif | Bin 0 -> 851 bytes .../themes/android/compat/switch-round1-r.gif | Bin 0 -> 936 bytes .../themes/android/compat/switch-round2-k.gif | Bin 0 -> 566 bytes .../themes/android/compat/switch-round2-l.gif | Bin 0 -> 883 bytes .../themes/android/compat/switch-round2-r.gif | Bin 0 -> 974 bytes .../themes/android/compat/switch-square-k.gif | Bin 0 -> 388 bytes .../themes/android/compat/switch-square-l.gif | Bin 0 -> 578 bytes .../themes/android/compat/switch-square-r.gif | Bin 0 -> 686 bytes .../themes/android/compat/tab-button-bg.png | Bin 0 -> 277 bytes .../android/compat/tab-orange-button-bg.png | Bin 0 -> 197 bytes .../android/compat/tab-seg-button-bg.png | Bin 0 -> 157 bytes .../android/compat/tab-seg-sel-button-bg.png | Bin 0 -> 178 bytes .../android/compat/tab-sel-button-bg.png | Bin 0 -> 286 bytes .../themes/android/compat/tab-slim-bar-bg.png | Bin 0 -> 107 bytes .../themes/android/compat/tab-tall-bar-bg.png | Bin 0 -> 161 bytes .../android/compat/togglebutton-chk-bg.png | Bin 0 -> 154 bytes .../compat/togglebutton-chk-mark-bg.png | Bin 0 -> 150 bytes .../android/compat/valuepicker-button-bg.png | Bin 0 -> 246 bytes .../themes/android/dijit/Calendar-compat.css | 35 + .../themes/android/dijit/Calendar-compat.less | 2 + .../mobile/themes/android/dijit/Calendar.css | 118 + .../mobile/themes/android/dijit/Calendar.less | 2 + .../compat/calendar-datelabel-act-bg.png | Bin 0 -> 209 bytes .../compat/calendar-datelabel-sel-bg.png | Bin 0 -> 144 bytes .../dijit/compat/calendar-month-bg.png | Bin 0 -> 186 bytes .../android/dijit/compat/calendar-year-bg.png | Bin 0 -> 177 bytes .../android/images/thumb-overlay-large.png | Bin 0 -> 3697 bytes .../android/images/thumb-overlay-small.png | Bin 0 -> 1549 bytes .../themes/android/images/thumb-overlay.png | Bin 0 -> 2010 bytes .../mobile/themes/android/variables.less | 753 + .../mobile/themes/android/variables_rtl.less | 35 + .../themes/blackberry/Accordion-compat.css | 19 + .../mobile/themes/blackberry/Accordion.css | 72 + .../themes/blackberry/Accordion_rtl.css | 6 + .../themes/blackberry/Button-compat.css | 41 + .../dojox/mobile/themes/blackberry/Button.css | 47 + .../mobile/themes/blackberry/Carousel.css | 77 + .../mobile/themes/blackberry/Carousel_rtl.css | 13 + .../themes/blackberry/CheckBox-compat.css | 38 + .../mobile/themes/blackberry/CheckBox.css | 53 + .../themes/blackberry/ComboBox-compat.css | 7 + .../themes/blackberry/ComboBox-compat.less | 2 + .../mobile/themes/blackberry/ComboBox.css | 57 + .../mobile/themes/blackberry/ComboBox_rtl.css | 4 + .../mobile/themes/blackberry/DatePicker.css | 178 + .../themes/blackberry/EdgeToEdgeCategory.css | 18 + .../themes/blackberry/EdgeToEdgeList.css | 9 + .../themes/blackberry/FixedSplitter.css | 21 + .../mobile/themes/blackberry/FormLayout.css | 160 + .../themes/blackberry/FormLayout_rtl.css | 4 + .../mobile/themes/blackberry/GridLayout.css | 24 + .../themes/blackberry/GridLayout_rtl.css | 4 + .../themes/blackberry/Heading-compat.css | 10 + .../mobile/themes/blackberry/Heading.css | 38 + .../blackberry/IconContainer-compat.css | 59 + .../blackberry/IconContainer-compat.less | 5 + .../themes/blackberry/IconContainer.css | 380 + .../themes/blackberry/IconContainer.less | 5 + .../themes/blackberry/IconContainer_rtl.css | 13 + .../themes/blackberry/IconMenu-compat.css | 28 + .../mobile/themes/blackberry/IconMenu.css | 63 + .../themes/blackberry/IconMenu_rtl-compat.css | 17 + .../mobile/themes/blackberry/IconMenu_rtl.css | 7 + .../themes/blackberry/ListItem-compat.css | 24 + .../themes/blackberry/ListItem-compat.less | 5 + .../mobile/themes/blackberry/ListItem.css | 153 + .../mobile/themes/blackberry/ListItem.less | 5 + .../themes/blackberry/ListItem_rtl-compat.css | 6 + .../mobile/themes/blackberry/ListItem_rtl.css | 40 + .../themes/blackberry/ListItem_rtl.less | 4 + .../themes/blackberry/Opener-compat.css | 53 + .../dojox/mobile/themes/blackberry/Opener.css | 241 + .../themes/blackberry/Overlay-compat.css | 14 + .../mobile/themes/blackberry/Overlay.css | 90 + .../mobile/themes/blackberry/Overlay.less | 5 + .../blackberry/PageIndicator-compat.css | 4 + .../themes/blackberry/PageIndicator.css | 23 + .../themes/blackberry/ProgressBar-compat.css | 5 + .../mobile/themes/blackberry/ProgressBar.css | 29 + .../blackberry/ProgressIndicator-compat.css | 83 + .../themes/blackberry/ProgressIndicator.css | 157 + .../blackberry/ProgressIndicator_rtl.css | 14 + .../themes/blackberry/RadioButton-compat.css | 32 + .../mobile/themes/blackberry/RadioButton.css | 49 + .../themes/blackberry/RoundRect-compat.css | 72 + .../mobile/themes/blackberry/RoundRect.css | 13 + .../blackberry/RoundRectCategory-compat.css | 5 + .../themes/blackberry/RoundRectCategory.css | 12 + .../blackberry/RoundRectCategory_rtl.css | 4 + .../blackberry/RoundRectList-compat.css | 77 + .../themes/blackberry/RoundRectList.css | 19 + .../themes/blackberry/ScrollablePane.css | 12 + .../themes/blackberry/SearchBox-compat.css | 22 + .../mobile/themes/blackberry/SearchBox.css | 63 + .../themes/blackberry/SimpleDialog-compat.css | 4 + .../mobile/themes/blackberry/SimpleDialog.css | 42 + .../themes/blackberry/Slider-compat.css | 40 + .../dojox/mobile/themes/blackberry/Slider.css | 65 + .../themes/blackberry/SpinWheel-compat.css | 36 + .../mobile/themes/blackberry/SpinWheel.css | 77 + .../blackberry/SpinWheel_rtl-compat.css | 4 + .../themes/blackberry/SpinWheel_rtl.css | 5 + .../themes/blackberry/Switch-compat.css | 109 + .../themes/blackberry/Switch-compat.less | 7 + .../dojox/mobile/themes/blackberry/Switch.css | 221 + .../mobile/themes/blackberry/Switch.less | 7 + .../themes/blackberry/Switch_rtl-compat.css | 37 + .../mobile/themes/blackberry/Switch_rtl.css | 110 + .../themes/blackberry/TabBar-compat.css | 60 + .../themes/blackberry/TabBar-compat.less | 3 + .../dojox/mobile/themes/blackberry/TabBar.css | 281 + .../mobile/themes/blackberry/TabBar.less | 3 + .../themes/blackberry/TabBar_rtl-compat.css | 19 + .../mobile/themes/blackberry/TabBar_rtl.css | 83 + .../themes/blackberry/TextArea-compat.css | 7 + .../mobile/themes/blackberry/TextArea.css | 13 + .../themes/blackberry/TextBox-compat.css | 4 + .../mobile/themes/blackberry/TextBox.css | 10 + .../mobile/themes/blackberry/TimePicker.css | 178 + .../themes/blackberry/ToggleButton-compat.css | 42 + .../mobile/themes/blackberry/ToggleButton.css | 57 + .../themes/blackberry/ToggleButton_rtl.css | 7 + .../blackberry/ToolBarButton-compat.css | 63 + .../themes/blackberry/ToolBarButton.css | 90 + .../themes/blackberry/ToolBarButton_rtl.css | 18 + .../themes/blackberry/Tooltip-compat.css | 40 + .../mobile/themes/blackberry/Tooltip.css | 151 + .../themes/blackberry/ValuePicker-compat.css | 19 + .../mobile/themes/blackberry/ValuePicker.css | 102 + .../mobile/themes/blackberry/ValuePicker.less | 5 + .../dojox/mobile/themes/blackberry/View.css | 123 + .../dojox/mobile/themes/blackberry/View.less | 6 + .../mobile/themes/blackberry/base-compat.css | 453 + .../dojox/mobile/themes/blackberry/base.css | 903 + .../themes/blackberry/base_rtl-compat.css | 42 + .../mobile/themes/blackberry/base_rtl.css | 182 + .../themes/blackberry/blackberry-compat.css | 1241 + .../mobile/themes/blackberry/blackberry.css | 5437 +++ .../blackberry/blackberry_rtl-compat.css | 80 + .../themes/blackberry/blackberry_rtl.css | 311 + .../themes/blackberry/common-compat.css | 18 + .../dojox/mobile/themes/blackberry/common.css | 60 + .../blackberry/compat/arrow-button-bg-sel.png | Bin 0 -> 189 bytes .../blackberry/compat/arrow-button-bg.png | Bin 0 -> 157 bytes .../compat/arrow-button-head-sel.png | Bin 0 -> 1134 bytes .../blackberry/compat/arrow-button-head.gif | Bin 0 -> 430 bytes .../blackberry/compat/arrow-button-head.png | Bin 0 -> 1068 bytes .../compat/arrow-button-right-head-sel.png | Bin 0 -> 1129 bytes .../compat/arrow-button-right-head.png | Bin 0 -> 1073 bytes .../blackberry/compat/blue-button-bg.png | Bin 0 -> 199 bytes .../blackberry/compat/blue-button-sel-bg.png | Bin 0 -> 201 bytes .../compat/button-arrow-head-bg.gif | Bin 0 -> 316 bytes .../themes/blackberry/compat/button-bg.png | Bin 0 -> 177 bytes .../blackberry/compat/button-chk-bg.png | Bin 0 -> 177 bytes .../blackberry/compat/button-sel-bg.png | Bin 0 -> 201 bytes .../blackberry/compat/button-unsel-bg.png | Bin 0 -> 201 bytes .../themes/blackberry/compat/gray-arrow.png | Bin 0 -> 920 bytes .../themes/blackberry/compat/heading-bg.png | Bin 0 -> 204 bytes .../compat/icon-content-heading-bg.png | Bin 0 -> 193 bytes .../blackberry/compat/red-button-bg.png | Bin 0 -> 248 bytes .../blackberry/compat/red-button-sel-bg.png | Bin 0 -> 201 bytes .../blackberry/compat/slider-h-bar-bg.png | Bin 0 -> 133 bytes .../themes/blackberry/compat/slider-h-bg.png | Bin 0 -> 133 bytes .../blackberry/compat/slider-handle-bg.png | Bin 0 -> 165 bytes .../blackberry/compat/switch-arc1-k.gif | Bin 0 -> 721 bytes .../blackberry/compat/switch-arc1-l.gif | Bin 0 -> 867 bytes .../blackberry/compat/switch-arc1-r.gif | Bin 0 -> 644 bytes .../blackberry/compat/switch-arc2-k.gif | Bin 0 -> 785 bytes .../blackberry/compat/switch-arc2-l.gif | Bin 0 -> 905 bytes .../blackberry/compat/switch-arc2-r.gif | Bin 0 -> 683 bytes .../blackberry/compat/switch-round1-k.gif | Bin 0 -> 730 bytes .../blackberry/compat/switch-round1-l.gif | Bin 0 -> 901 bytes .../blackberry/compat/switch-round1-r.gif | Bin 0 -> 679 bytes .../blackberry/compat/switch-round2-k.gif | Bin 0 -> 800 bytes .../blackberry/compat/switch-round2-l.gif | Bin 0 -> 946 bytes .../blackberry/compat/switch-round2-r.gif | Bin 0 -> 716 bytes .../blackberry/compat/switch-square-k.gif | Bin 0 -> 768 bytes .../blackberry/compat/switch-square-l.gif | Bin 0 -> 918 bytes .../blackberry/compat/switch-square-r.gif | Bin 0 -> 690 bytes .../blackberry/compat/tab-button-bg.png | Bin 0 -> 277 bytes .../compat/tab-orange-button-bg.png | Bin 0 -> 197 bytes .../blackberry/compat/tab-seg-button-bg.png | Bin 0 -> 178 bytes .../compat/tab-seg-sel-button-bg.png | Bin 0 -> 197 bytes .../blackberry/compat/tab-sel-button-bg.png | Bin 0 -> 286 bytes .../blackberry/compat/tab-slim-bar-bg.png | Bin 0 -> 107 bytes .../blackberry/compat/tab-tall-bar-bg.png | Bin 0 -> 161 bytes .../compat/togglebutton-chk-mark-bg.png | Bin 0 -> 170 bytes .../compat/valuepicker-button-bg.png | Bin 0 -> 272 bytes .../blackberry/dijit/Calendar-compat.css | 38 + .../blackberry/dijit/Calendar-compat.less | 2 + .../themes/blackberry/dijit/Calendar.css | 124 + .../themes/blackberry/dijit/Calendar.less | 2 + .../compat/calendar-datelabel-sel-bg.png | Bin 0 -> 193 bytes .../dijit/compat/calendar-month-bg.png | Bin 0 -> 195 bytes .../dijit/compat/calendar-year-bg.png | Bin 0 -> 180 bytes .../blackberry/images/thumb-overlay-large.png | Bin 0 -> 3697 bytes .../blackberry/images/thumb-overlay-small.png | Bin 0 -> 1549 bytes .../blackberry/images/thumb-overlay.png | Bin 0 -> 2010 bytes .../mobile/themes/blackberry/variables.less | 740 + .../themes/blackberry/variables_rtl.less | 35 + .../themes/common/Accordion-compat.less | 30 + .../dojox/mobile/themes/common/Accordion.less | 67 + .../mobile/themes/common/Accordion_rtl.less | 6 + .../mobile/themes/common/Button-compat.less | 46 + .../dojox/mobile/themes/common/Button.less | 38 + .../dojox/mobile/themes/common/Carousel.less | 78 + .../mobile/themes/common/Carousel_rtl.less | 13 + .../mobile/themes/common/CheckBox-compat.less | 40 + .../dojox/mobile/themes/common/CheckBox.less | 42 + .../mobile/themes/common/ComboBox-compat.less | 11 + .../dojox/mobile/themes/common/ComboBox.less | 62 + .../mobile/themes/common/ComboBox_rtl.less | 4 + .../themes/common/EdgeToEdgeCategory.less | 13 + .../mobile/themes/common/EdgeToEdgeList.less | 10 + .../mobile/themes/common/FixedSplitter.less | 26 + .../mobile/themes/common/FormLayout.less | 210 + .../mobile/themes/common/FormLayout_rtl.less | 4 + .../mobile/themes/common/GridLayout.less | 28 + .../mobile/themes/common/GridLayout_rtl.less | 4 + .../mobile/themes/common/Heading-compat.less | 13 + .../dojox/mobile/themes/common/Heading.less | 34 + .../themes/common/IconContainer-compat.less | 16 + .../mobile/themes/common/IconContainer.less | 118 + .../themes/common/IconContainer_keyframes.css | 48 + .../themes/common/IconContainer_rtl.less | 14 + .../mobile/themes/common/IconMenu-compat.less | 44 + .../dojox/mobile/themes/common/IconMenu.less | 62 + .../themes/common/IconMenu_rtl-compat.less | 19 + .../mobile/themes/common/IconMenu_rtl.less | 95 + .../mobile/themes/common/ListItem-compat.less | 16 + .../dojox/mobile/themes/common/ListItem.less | 117 + .../mobile/themes/common/ListItem_rtl.less | 27 + .../mobile/themes/common/Overlay-compat.less | 22 + .../dojox/mobile/themes/common/Overlay.less | 15 + .../mobile/themes/common/PageIndicator.less | 23 + .../mobile/themes/common/PageTurning.css | 34 + .../themes/common/ProgressBar-compat.less | 17 + .../mobile/themes/common/ProgressBar.less | 27 + .../common/ProgressIndicator-compat.less | 89 + .../themes/common/ProgressIndicator.less | 146 + .../themes/common/ProgressIndicator_rtl.less | 14 + .../themes/common/RadioButton-compat.less | 34 + .../mobile/themes/common/RadioButton.less | 40 + .../themes/common/RoundRect-compat.less | 80 + .../dojox/mobile/themes/common/RoundRect.less | 12 + .../themes/common/RoundRectCategory.less | 11 + .../themes/common/RoundRectCategory_rtl.less | 4 + .../themes/common/RoundRectList-compat.less | 84 + .../mobile/themes/common/RoundRectList.less | 19 + .../mobile/themes/common/ScrollablePane.less | 12 + .../themes/common/SearchBox-compat.less | 31 + .../dojox/mobile/themes/common/SearchBox.less | 110 + .../themes/common/SimpleDialog-compat.less | 16 + .../mobile/themes/common/SimpleDialog.less | 37 + .../mobile/themes/common/Slider-compat.less | 45 + .../dojox/mobile/themes/common/Slider.less | 59 + .../themes/common/SpinWheel-compat.less | 48 + .../dojox/mobile/themes/common/SpinWheel.less | 92 + .../themes/common/SpinWheel_rtl-compat.less | 4 + .../mobile/themes/common/SpinWheel_rtl.less | 5 + .../mobile/themes/common/Switch-compat.less | 139 + .../dojox/mobile/themes/common/Switch.less | 219 + .../themes/common/Switch_rtl-compat.less | 43 + .../mobile/themes/common/Switch_rtl.less | 117 + .../mobile/themes/common/TabBar-compat.less | 81 + .../dojox/mobile/themes/common/TabBar.less | 273 + .../themes/common/TabBar_rtl-compat.less | 20 + .../mobile/themes/common/TabBar_rtl.less | 89 + .../mobile/themes/common/TextArea-compat.less | 10 + .../dojox/mobile/themes/common/TextArea.less | 14 + .../mobile/themes/common/TextBox-compat.less | 6 + .../dojox/mobile/themes/common/TextBox.less | 9 + .../themes/common/ToggleButton-compat.less | 50 + .../mobile/themes/common/ToggleButton.less | 48 + .../themes/common/ToggleButton_rtl.less | 7 + .../themes/common/ToolBarButton-compat.less | 84 + .../mobile/themes/common/ToolBarButton.less | 100 + .../themes/common/ToolBarButton_rtl.less | 18 + .../mobile/themes/common/Tooltip-compat.less | 51 + .../dojox/mobile/themes/common/Tooltip.less | 139 + .../themes/common/ValuePicker-compat.less | 23 + .../mobile/themes/common/ValuePicker.less | 54 + .../dojo/dojox/mobile/themes/common/View.less | 21 + .../mobile/themes/common/common-compat.less | 20 + .../dojox/mobile/themes/common/common.less | 58 + .../themes/common/compat/spinwheel-bar.png | Bin 0 -> 182 bytes .../themes/common/compat/spinwheel-bg.png | Bin 0 -> 532 bytes .../dojo/dojox/mobile/themes/common/css3.less | 305 + .../themes/common/dijit/Calendar-compat.less | 44 + .../mobile/themes/common/dijit/Calendar.less | 106 + .../themes/common/dijit/ColorPalette.css | 16 + .../themes/common/dijit/ColorPicker.css | 110 + .../dojox/mobile/themes/common/dijit/base.css | 2544 ++ .../mobile/themes/common/dijit/dijit.css | 2668 ++ .../themes/common/domButtons-compat.css | 291 + .../dojox/mobile/themes/common/domButtons.css | 1327 + .../DomButtonBlackCircleCross-compat.css | 8 + .../domButtons/DomButtonBlackCircleCross.css | 51 + .../domButtons/DomButtonBlackCircleCross.less | 50 + .../DomButtonBlackDownArrow16-compat.css | 8 + .../domButtons/DomButtonBlackDownArrow16.css | 23 + .../domButtons/DomButtonBlackDownArrow16.less | 23 + .../DomButtonBlackLeftArrow16-compat.css | 8 + .../domButtons/DomButtonBlackLeftArrow16.css | 23 + .../domButtons/DomButtonBlackLeftArrow16.less | 23 + .../DomButtonBlackRightArrow16-compat.css | 8 + .../domButtons/DomButtonBlackRightArrow16.css | 23 + .../DomButtonBlackRightArrow16.less | 23 + .../DomButtonBlackUpArrow16-compat.css | 8 + .../domButtons/DomButtonBlackUpArrow16.css | 23 + .../domButtons/DomButtonBlackUpArrow16.less | 23 + .../domButtons/DomButtonBlueBadge-compat.css | 6 + .../common/domButtons/DomButtonBlueBadge.css | 29 + .../common/domButtons/DomButtonBlueBadge.less | 28 + .../domButtons/DomButtonBlueBall-compat.css | 8 + .../common/domButtons/DomButtonBlueBall.css | 16 + .../common/domButtons/DomButtonBlueBall.less | 16 + .../DomButtonBlueCircleArrow-compat.css | 8 + .../domButtons/DomButtonBlueCircleArrow.css | 50 + .../domButtons/DomButtonBlueCircleArrow.less | 49 + .../DomButtonBlueCircleMinus-compat.css | 8 + .../domButtons/DomButtonBlueCircleMinus.css | 38 + .../domButtons/DomButtonBlueCircleMinus.less | 38 + .../DomButtonBlueCirclePlus-compat.css | 8 + .../domButtons/DomButtonBlueCirclePlus.css | 48 + .../domButtons/DomButtonBlueCirclePlus.less | 48 + .../DomButtonCheckboxOff-compat.css | 8 + .../domButtons/DomButtonCheckboxOff.css | 43 + .../domButtons/DomButtonCheckboxOff.less | 41 + .../domButtons/DomButtonCheckboxOn-compat.css | 8 + .../common/domButtons/DomButtonCheckboxOn.css | 43 + .../domButtons/DomButtonCheckboxOn.less | 41 + .../DomButtonColorButtons-compat.css | 43 + .../domButtons/DomButtonColorButtons.css | 77 + .../domButtons/DomButtonColorButtons.less | 56 + .../DomButtonDarkBlueCheck-compat.css | 8 + .../domButtons/DomButtonDarkBlueCheck.css | 21 + .../domButtons/DomButtonDarkBlueCheck.less | 19 + .../domButtons/DomButtonDarkBlueCheck_rtl.css | 8 + .../DomButtonDarkBlueCheck_rtl.less | 8 + .../domButtons/DomButtonGrayArrow-compat.css | 8 + .../common/domButtons/DomButtonGrayArrow.css | 21 + .../common/domButtons/DomButtonGrayArrow.less | 19 + .../DomButtonGrayArrow_rtl-compat.css | 6 + .../domButtons/DomButtonGrayArrow_rtl.css | 8 + .../domButtons/DomButtonGrayArrow_rtl.less | 8 + .../domButtons/DomButtonGrayCross-compat.css | 8 + .../common/domButtons/DomButtonGrayCross.css | 33 + .../common/domButtons/DomButtonGrayCross.less | 33 + .../domButtons/DomButtonGrayKnob-compat.css | 8 + .../common/domButtons/DomButtonGrayKnob.css | 42 + .../common/domButtons/DomButtonGrayKnob.less | 40 + .../domButtons/DomButtonGrayMinus-compat.css | 8 + .../common/domButtons/DomButtonGrayMinus.css | 19 + .../common/domButtons/DomButtonGrayMinus.less | 19 + .../domButtons/DomButtonGrayPlus-compat.css | 8 + .../common/domButtons/DomButtonGrayPlus.css | 33 + .../common/domButtons/DomButtonGrayPlus.less | 32 + .../DomButtonGrayRoundRect-compat.css | 4 + .../domButtons/DomButtonGrayRoundRect.css | 23 + .../domButtons/DomButtonGrayRoundRect.less | 24 + .../domButtons/DomButtonGrayStar-compat.css | 8 + .../common/domButtons/DomButtonGrayStar.css | 52 + .../common/domButtons/DomButtonGrayStar.less | 50 + .../domButtons/DomButtonGreenBadge-compat.css | 6 + .../common/domButtons/DomButtonGreenBadge.css | 29 + .../domButtons/DomButtonGreenBadge.less | 28 + .../domButtons/DomButtonGreenBall-compat.css | 8 + .../common/domButtons/DomButtonGreenBall.css | 16 + .../common/domButtons/DomButtonGreenBall.less | 16 + .../DomButtonGreenCircleArrow-compat.css | 8 + .../domButtons/DomButtonGreenCircleArrow.css | 50 + .../domButtons/DomButtonGreenCircleArrow.less | 49 + .../DomButtonGreenCircleMinus-compat.css | 8 + .../domButtons/DomButtonGreenCircleMinus.css | 38 + .../domButtons/DomButtonGreenCircleMinus.less | 38 + .../DomButtonGreenCirclePlus-compat.css | 8 + .../domButtons/DomButtonGreenCirclePlus.css | 48 + .../domButtons/DomButtonGreenCirclePlus.less | 48 + .../domButtons/DomButtonOrangeBall-compat.css | 8 + .../common/domButtons/DomButtonOrangeBall.css | 16 + .../domButtons/DomButtonOrangeBall.less | 16 + .../domButtons/DomButtonRedBadge-compat.css | 6 + .../common/domButtons/DomButtonRedBadge.css | 29 + .../common/domButtons/DomButtonRedBadge.less | 28 + .../domButtons/DomButtonRedBall-compat.css | 8 + .../common/domButtons/DomButtonRedBall.css | 16 + .../common/domButtons/DomButtonRedBall.less | 16 + .../DomButtonRedCircleArrow-compat.css | 8 + .../domButtons/DomButtonRedCircleArrow.css | 50 + .../domButtons/DomButtonRedCircleArrow.less | 49 + .../DomButtonRedCircleMinus-compat.css | 8 + .../domButtons/DomButtonRedCircleMinus.css | 38 + .../domButtons/DomButtonRedCircleMinus.less | 38 + .../DomButtonRedCirclePlus-compat.css | 8 + .../domButtons/DomButtonRedCirclePlus.css | 48 + .../domButtons/DomButtonRedCirclePlus.less | 48 + .../domButtons/DomButtonRedCross-compat.css | 8 + .../common/domButtons/DomButtonRedCross.css | 33 + .../common/domButtons/DomButtonRedCross.less | 33 + .../DomButtonSilverCircleDownArrow-compat.css | 8 + .../DomButtonSilverCircleDownArrow.css | 47 + .../DomButtonSilverCircleDownArrow.less | 44 + ...DomButtonSilverCircleGrayButton-compat.css | 8 + .../DomButtonSilverCircleGrayButton.css | 30 + .../DomButtonSilverCircleGrayButton.less | 28 + ...omButtonSilverCircleGreenButton-compat.css | 8 + .../DomButtonSilverCircleGreenButton.css | 30 + .../DomButtonSilverCircleGreenButton.less | 28 + .../DomButtonSilverCircleGreenPlus-compat.css | 8 + .../DomButtonSilverCircleGreenPlus.css | 39 + .../DomButtonSilverCircleGreenPlus.less | 38 + ...mButtonSilverCircleOrangeButton-compat.css | 8 + .../DomButtonSilverCircleOrangeButton.css | 30 + .../DomButtonSilverCircleOrangeButton.less | 28 + .../DomButtonSilverCircleRedCross-compat.css | 8 + .../DomButtonSilverCircleRedCross.css | 41 + .../DomButtonSilverCircleRedCross.less | 39 + .../domButtons/DomButtonTransparent19.css | 6 + .../domButtons/DomButtonTransparent19.less | 7 + .../domButtons/DomButtonTransparent29.css | 6 + .../domButtons/DomButtonTransparent29.less | 7 + .../domButtons/DomButtonTransparent30.css | 6 + .../domButtons/DomButtonTransparent30.less | 7 + .../domButtons/DomButtonWhiteArrow-compat.css | 8 + .../common/domButtons/DomButtonWhiteArrow.css | 21 + .../domButtons/DomButtonWhiteArrow.less | 19 + .../domButtons/DomButtonWhiteCheck-compat.css | 8 + .../common/domButtons/DomButtonWhiteCheck.css | 21 + .../domButtons/DomButtonWhiteCheck.less | 19 + .../domButtons/DomButtonWhiteCheck_rtl.css | 8 + .../domButtons/DomButtonWhiteCheck_rtl.less | 8 + .../domButtons/DomButtonWhiteCross-compat.css | 8 + .../common/domButtons/DomButtonWhiteCross.css | 33 + .../domButtons/DomButtonWhiteCross.less | 33 + .../DomButtonWhiteDownArrow-compat.css | 8 + .../domButtons/DomButtonWhiteDownArrow.css | 23 + .../domButtons/DomButtonWhiteDownArrow.less | 23 + .../DomButtonWhiteDownArrow16-compat.css | 8 + .../domButtons/DomButtonWhiteDownArrow16.css | 23 + .../domButtons/DomButtonWhiteDownArrow16.less | 23 + .../DomButtonWhiteLeftArrow16-compat.css | 8 + .../domButtons/DomButtonWhiteLeftArrow16.css | 23 + .../domButtons/DomButtonWhiteLeftArrow16.less | 23 + .../domButtons/DomButtonWhiteMinus-compat.css | 8 + .../common/domButtons/DomButtonWhiteMinus.css | 18 + .../domButtons/DomButtonWhiteMinus.less | 18 + .../domButtons/DomButtonWhitePlus-compat.css | 8 + .../common/domButtons/DomButtonWhitePlus.css | 30 + .../common/domButtons/DomButtonWhitePlus.less | 29 + .../DomButtonWhiteRightArrow16-compat.css | 8 + .../domButtons/DomButtonWhiteRightArrow16.css | 23 + .../DomButtonWhiteRightArrow16.less | 23 + .../DomButtonWhiteSearch-compat.css | 8 + .../domButtons/DomButtonWhiteSearch.css | 31 + .../domButtons/DomButtonWhiteSearch.less | 31 + .../DomButtonWhiteUpArrow-compat.css | 8 + .../domButtons/DomButtonWhiteUpArrow.css | 23 + .../domButtons/DomButtonWhiteUpArrow.less | 23 + .../DomButtonWhiteUpArrow16-compat.css | 8 + .../domButtons/DomButtonWhiteUpArrow16.css | 23 + .../domButtons/DomButtonWhiteUpArrow16.less | 23 + .../domButtons/DomButtonYellowStar-compat.css | 8 + .../common/domButtons/DomButtonYellowStar.css | 52 + .../domButtons/DomButtonYellowStar.less | 50 + .../domButtons/compat/mblDomButtonArrow.png | Bin 0 -> 955 bytes .../compat/mblDomButtonBlackCircleCross.png | Bin 0 -> 1449 bytes .../compat/mblDomButtonBlackDownArrow16.png | Bin 0 -> 216 bytes .../compat/mblDomButtonBlackLeftArrow16.png | Bin 0 -> 191 bytes .../compat/mblDomButtonBlackRightArrow16.png | Bin 0 -> 194 bytes .../compat/mblDomButtonBlackUpArrow16.png | Bin 0 -> 202 bytes .../compat/mblDomButtonBlueBall.png | Bin 0 -> 347 bytes .../compat/mblDomButtonBlueCircleArrow.png | Bin 0 -> 1500 bytes .../compat/mblDomButtonBlueCircleMinus.png | Bin 0 -> 1379 bytes .../compat/mblDomButtonBlueCirclePlus.png | Bin 0 -> 1373 bytes .../compat/mblDomButtonBlueMinus.png | Bin 0 -> 1055 bytes .../compat/mblDomButtonBluePlus.png | Bin 0 -> 1073 bytes .../domButtons/compat/mblDomButtonCheck.png | Bin 0 -> 990 bytes .../compat/mblDomButtonCheckboxOff.png | Bin 0 -> 1081 bytes .../compat/mblDomButtonCheckboxOn.png | Bin 0 -> 1148 bytes .../compat/mblDomButtonDarkBlueCheck.png | Bin 0 -> 990 bytes .../compat/mblDomButtonDarkBlueMinus.png | Bin 0 -> 1048 bytes .../compat/mblDomButtonDarkBluePlus.png | Bin 0 -> 1065 bytes .../compat/mblDomButtonGrayArrow.png | Bin 0 -> 955 bytes .../compat/mblDomButtonGrayArrow_rtl.png | Bin 0 -> 110 bytes .../compat/mblDomButtonGrayCross.png | Bin 0 -> 284 bytes .../compat/mblDomButtonGrayKnob.png | Bin 0 -> 924 bytes .../compat/mblDomButtonGrayMinus.png | Bin 0 -> 939 bytes .../compat/mblDomButtonGrayPlus.png | Bin 0 -> 964 bytes .../compat/mblDomButtonGrayStar.png | Bin 0 -> 680 bytes .../compat/mblDomButtonGreenBall.png | Bin 0 -> 348 bytes .../compat/mblDomButtonGreenCircleArrow.png | Bin 0 -> 1599 bytes .../compat/mblDomButtonGreenCircleMinus.png | Bin 0 -> 1394 bytes .../compat/mblDomButtonGreenCirclePlus.png | Bin 0 -> 1428 bytes .../compat/mblDomButtonOrangeBall.png | Bin 0 -> 353 bytes .../domButtons/compat/mblDomButtonRedBall.png | Bin 0 -> 348 bytes .../compat/mblDomButtonRedCircleArrow.png | Bin 0 -> 1524 bytes .../compat/mblDomButtonRedCircleMinus.png | Bin 0 -> 1355 bytes .../compat/mblDomButtonRedCirclePlus.png | Bin 0 -> 1395 bytes .../compat/mblDomButtonRedCross.png | Bin 0 -> 293 bytes .../compat/mblDomButtonRedMinus.png | Bin 0 -> 1051 bytes .../domButtons/compat/mblDomButtonRedPlus.png | Bin 0 -> 1069 bytes .../mblDomButtonSilverCircleDownArrow.png | Bin 0 -> 1353 bytes .../mblDomButtonSilverCircleGrayButton.png | Bin 0 -> 1260 bytes .../mblDomButtonSilverCircleGreenButton.png | Bin 0 -> 1438 bytes .../mblDomButtonSilverCircleGreenPlus.png | Bin 0 -> 1065 bytes .../mblDomButtonSilverCircleOrangeButton.png | Bin 0 -> 1422 bytes .../mblDomButtonSilverCircleRedCross.png | Bin 0 -> 1361 bytes .../compat/mblDomButtonWhiteArrow.png | Bin 0 -> 955 bytes .../compat/mblDomButtonWhiteCheck.png | Bin 0 -> 963 bytes .../compat/mblDomButtonWhiteCross.png | Bin 0 -> 224 bytes .../compat/mblDomButtonWhiteDownArrow.png | Bin 0 -> 935 bytes .../compat/mblDomButtonWhiteDownArrow16.png | Bin 0 -> 229 bytes .../compat/mblDomButtonWhiteLeftArrow16.png | Bin 0 -> 205 bytes .../compat/mblDomButtonWhiteMinus.png | Bin 0 -> 158 bytes .../compat/mblDomButtonWhitePlus.png | Bin 0 -> 939 bytes .../compat/mblDomButtonWhiteRightArrow16.png | Bin 0 -> 214 bytes .../compat/mblDomButtonWhiteSearch.png | Bin 0 -> 414 bytes .../compat/mblDomButtonWhiteUpArrow.png | Bin 0 -> 933 bytes .../compat/mblDomButtonWhiteUpArrow16.png | Bin 0 -> 212 bytes .../compat/mblDomButtonYellowStar.png | Bin 0 -> 438 bytes .../mobile/themes/common/transitions.css | 1223 + .../themes/common/transitions/cover.css | 36 + .../themes/common/transitions/cover.less | 27 + .../themes/common/transitions/coverv.css | 36 + .../themes/common/transitions/coverv.less | 27 + .../mobile/themes/common/transitions/cube.css | 473 + .../themes/common/transitions/cube.less | 130 + .../themes/common/transitions/dissolve.css | 48 + .../themes/common/transitions/dissolve.less | 15 + .../mobile/themes/common/transitions/fade.css | 28 + .../themes/common/transitions/fade.less | 23 + .../mobile/themes/common/transitions/flip.css | 44 + .../themes/common/transitions/flip.less | 33 + .../themes/common/transitions/reveal.css | 39 + .../themes/common/transitions/reveal.less | 29 + .../themes/common/transitions/revealv.css | 39 + .../themes/common/transitions/revealv.less | 29 + .../themes/common/transitions/scaleIn.css | 73 + .../themes/common/transitions/scaleIn.less | 21 + .../themes/common/transitions/scaleOut.css | 73 + .../themes/common/transitions/scaleOut.less | 21 + .../themes/common/transitions/slide.css | 33 + .../themes/common/transitions/slide.less | 25 + .../themes/common/transitions/slidev.css | 33 + .../themes/common/transitions/slidev.less | 26 + .../mobile/themes/common/transitions/swap.css | 158 + .../themes/common/transitions/swap.less | 25 + .../themes/common/transitions/swirl.css | 69 + .../themes/common/transitions/swirl.less | 21 + .../themes/common/transitions/zoomIn.css | 73 + .../themes/common/transitions/zoomIn.less | 21 + .../themes/common/transitions/zoomOut.css | 73 + .../themes/common/transitions/zoomOut.less | 21 + .../mobile/themes/custom/Accordion-compat.css | 19 + .../dojox/mobile/themes/custom/Accordion.css | 71 + .../mobile/themes/custom/Accordion_rtl.css | 6 + .../mobile/themes/custom/Button-compat.css | 41 + .../dojox/mobile/themes/custom/Button.css | 48 + .../dojox/mobile/themes/custom/Carousel.css | 77 + .../mobile/themes/custom/Carousel_rtl.css | 13 + .../mobile/themes/custom/CheckBox-compat.css | 38 + .../dojox/mobile/themes/custom/CheckBox.css | 54 + .../mobile/themes/custom/ComboBox-compat.css | 7 + .../dojox/mobile/themes/custom/ComboBox.css | 59 + .../mobile/themes/custom/ComboBox_rtl.css | 4 + .../dojox/mobile/themes/custom/DatePicker.css | 178 + .../themes/custom/EdgeToEdgeCategory.css | 20 + .../mobile/themes/custom/EdgeToEdgeList.css | 9 + .../mobile/themes/custom/FixedSplitter.css | 21 + .../dojox/mobile/themes/custom/FormLayout.css | 160 + .../mobile/themes/custom/FormLayout_rtl.css | 4 + .../dojox/mobile/themes/custom/GridLayout.css | 24 + .../mobile/themes/custom/GridLayout_rtl.css | 4 + .../mobile/themes/custom/Heading-compat.css | 10 + .../dojox/mobile/themes/custom/Heading.css | 39 + .../themes/custom/IconContainer-compat.css | 59 + .../themes/custom/IconContainer-compat.less | 5 + .../mobile/themes/custom/IconContainer.css | 381 + .../mobile/themes/custom/IconContainer.less | 5 + .../themes/custom/IconContainer_rtl.css | 13 + .../mobile/themes/custom/IconMenu-compat.css | 34 + .../dojox/mobile/themes/custom/IconMenu.css | 62 + .../themes/custom/IconMenu_rtl-compat.css | 17 + .../mobile/themes/custom/IconMenu_rtl.css | 23 + .../mobile/themes/custom/ListItem-compat.css | 24 + .../mobile/themes/custom/ListItem-compat.less | 5 + .../dojox/mobile/themes/custom/ListItem.css | 157 + .../dojox/mobile/themes/custom/ListItem.less | 5 + .../themes/custom/ListItem_rtl-compat.css | 6 + .../mobile/themes/custom/ListItem_rtl.css | 40 + .../mobile/themes/custom/ListItem_rtl.less | 4 + .../mobile/themes/custom/Opener-compat.css | 53 + .../dojox/mobile/themes/custom/Opener.css | 244 + .../mobile/themes/custom/Overlay-compat.css | 14 + .../dojox/mobile/themes/custom/Overlay.css | 90 + .../dojox/mobile/themes/custom/Overlay.less | 5 + .../themes/custom/PageIndicator-compat.css | 4 + .../mobile/themes/custom/PageIndicator.css | 23 + .../themes/custom/ProgressBar-compat.css | 9 + .../mobile/themes/custom/ProgressBar.css | 30 + .../custom/ProgressIndicator-compat.css | 83 + .../themes/custom/ProgressIndicator.css | 157 + .../themes/custom/ProgressIndicator_rtl.css | 14 + .../themes/custom/RadioButton-compat.css | 32 + .../mobile/themes/custom/RadioButton.css | 50 + .../mobile/themes/custom/RoundRect-compat.css | 72 + .../dojox/mobile/themes/custom/RoundRect.css | 13 + .../themes/custom/RoundRectCategory.css | 11 + .../themes/custom/RoundRectCategory_rtl.css | 4 + .../themes/custom/RoundRectList-compat.css | 77 + .../mobile/themes/custom/RoundRectList.css | 19 + .../mobile/themes/custom/ScrollablePane.css | 12 + .../mobile/themes/custom/SearchBox-compat.css | 22 + .../dojox/mobile/themes/custom/SearchBox.css | 64 + .../themes/custom/SimpleDialog-compat.css | 4 + .../mobile/themes/custom/SimpleDialog.css | 48 + .../mobile/themes/custom/Slider-compat.css | 40 + .../dojox/mobile/themes/custom/Slider.css | 67 + .../mobile/themes/custom/SpinWheel-compat.css | 36 + .../dojox/mobile/themes/custom/SpinWheel.css | 77 + .../themes/custom/SpinWheel_rtl-compat.css | 4 + .../mobile/themes/custom/SpinWheel_rtl.css | 5 + .../mobile/themes/custom/Switch-compat.css | 109 + .../mobile/themes/custom/Switch-compat.less | 7 + .../dojox/mobile/themes/custom/Switch.css | 223 + .../dojox/mobile/themes/custom/Switch.less | 7 + .../themes/custom/Switch_rtl-compat.css | 37 + .../dojox/mobile/themes/custom/Switch_rtl.css | 110 + .../mobile/themes/custom/TabBar-compat.css | 60 + .../mobile/themes/custom/TabBar-compat.less | 3 + .../dojox/mobile/themes/custom/TabBar.css | 278 + .../dojox/mobile/themes/custom/TabBar.less | 3 + .../themes/custom/TabBar_rtl-compat.css | 19 + .../dojox/mobile/themes/custom/TabBar_rtl.css | 83 + .../mobile/themes/custom/TextArea-compat.css | 7 + .../dojox/mobile/themes/custom/TextArea.css | 14 + .../mobile/themes/custom/TextBox-compat.css | 4 + .../dojox/mobile/themes/custom/TextBox.css | 11 + .../dojox/mobile/themes/custom/TimePicker.css | 178 + .../themes/custom/ToggleButton-compat.css | 42 + .../mobile/themes/custom/ToggleButton.css | 58 + .../mobile/themes/custom/ToggleButton_rtl.css | 7 + .../themes/custom/ToolBarButton-compat.css | 63 + .../mobile/themes/custom/ToolBarButton.css | 94 + .../themes/custom/ToolBarButton_rtl.css | 18 + .../mobile/themes/custom/Tooltip-compat.css | 40 + .../dojox/mobile/themes/custom/Tooltip.css | 151 + .../themes/custom/ValuePicker-compat.css | 19 + .../mobile/themes/custom/ValuePicker.css | 102 + .../mobile/themes/custom/ValuePicker.less | 5 + .../dojo/dojox/mobile/themes/custom/View.css | 123 + .../dojo/dojox/mobile/themes/custom/View.less | 6 + .../mobile/themes/custom/base-compat.css | 449 + .../dojo/dojox/mobile/themes/custom/base.css | 916 + .../mobile/themes/custom/base_rtl-compat.css | 42 + .../dojox/mobile/themes/custom/base_rtl.css | 182 + .../mobile/themes/custom/common-compat.css | 18 + .../dojox/mobile/themes/custom/common.css | 61 + .../dojox/mobile/themes/custom/common.less | 2 + .../custom/compat/arrow-button-bg-sel.png | Bin 0 -> 193 bytes .../themes/custom/compat/arrow-button-bg.png | Bin 0 -> 191 bytes .../custom/compat/arrow-button-head-sel.png | Bin 0 -> 482 bytes .../custom/compat/arrow-button-head.png | Bin 0 -> 452 bytes .../compat/arrow-button-right-head-sel.png | Bin 0 -> 528 bytes .../custom/compat/arrow-button-right-head.png | Bin 0 -> 484 bytes .../themes/custom/compat/blue-button-bg.png | Bin 0 -> 209 bytes .../custom/compat/blue-button-sel-bg.png | Bin 0 -> 191 bytes .../custom/compat/button-arrow-head-bg.gif | Bin 0 -> 340 bytes .../mobile/themes/custom/compat/button-bg.png | Bin 0 -> 141 bytes .../themes/custom/compat/button-chk-bg.png | Bin 0 -> 141 bytes .../themes/custom/compat/button-sel-bg.png | Bin 0 -> 191 bytes .../themes/custom/compat/button-unsel-bg.png | Bin 0 -> 191 bytes .../themes/custom/compat/heading-bg.png | Bin 0 -> 173 bytes .../custom/compat/icon-content-heading-bg.png | Bin 0 -> 193 bytes .../themes/custom/compat/red-button-bg.png | Bin 0 -> 213 bytes .../custom/compat/red-button-sel-bg.png | Bin 0 -> 191 bytes .../themes/custom/compat/slider-h-bar-bg.png | Bin 0 -> 162 bytes .../themes/custom/compat/slider-h-bg.png | Bin 0 -> 141 bytes .../themes/custom/compat/slider-handle-bg.png | Bin 0 -> 171 bytes .../themes/custom/compat/switch-arc1-k.gif | Bin 0 -> 304 bytes .../themes/custom/compat/switch-arc1-l.gif | Bin 0 -> 489 bytes .../themes/custom/compat/switch-arc1-r.gif | Bin 0 -> 351 bytes .../themes/custom/compat/switch-arc2-k.gif | Bin 0 -> 339 bytes .../themes/custom/compat/switch-arc2-l.gif | Bin 0 -> 512 bytes .../themes/custom/compat/switch-arc2-r.gif | Bin 0 -> 367 bytes .../themes/custom/compat/switch-round1-k.gif | Bin 0 -> 334 bytes .../themes/custom/compat/switch-round1-l.gif | Bin 0 -> 500 bytes .../themes/custom/compat/switch-round1-r.gif | Bin 0 -> 374 bytes .../themes/custom/compat/switch-round2-k.gif | Bin 0 -> 380 bytes .../themes/custom/compat/switch-round2-l.gif | Bin 0 -> 476 bytes .../themes/custom/compat/switch-round2-r.gif | Bin 0 -> 397 bytes .../themes/custom/compat/switch-square-k.gif | Bin 0 -> 297 bytes .../themes/custom/compat/switch-square-l.gif | Bin 0 -> 411 bytes .../themes/custom/compat/switch-square-r.gif | Bin 0 -> 321 bytes .../custom/compat/tab-seg-button-bg.png | Bin 0 -> 169 bytes .../custom/compat/tab-seg-sel-button-bg.png | Bin 0 -> 200 bytes .../themes/custom/compat/tab-slim-bar-bg.png | Bin 0 -> 107 bytes .../themes/custom/compat/tab-tall-bar-bg.png | Bin 0 -> 161 bytes .../compat/togglebutton-chk-mark-bg.png | Bin 0 -> 157 bytes .../custom/compat/valuepicker-button-bg.png | Bin 0 -> 265 bytes .../mobile/themes/custom/custom-compat.css | 1222 + .../dojox/mobile/themes/custom/custom.css | 5466 +++ .../themes/custom/custom_rtl-compat.css | 80 + .../dojox/mobile/themes/custom/custom_rtl.css | 327 + .../themes/custom/dijit/Calendar-compat.css | 35 + .../themes/custom/dijit/Calendar-compat.less | 2 + .../mobile/themes/custom/dijit/Calendar.css | 118 + .../mobile/themes/custom/dijit/Calendar.less | 2 + .../compat/calendar-datelabel-act-bg.png | Bin 0 -> 203 bytes .../compat/calendar-datelabel-sel-bg.png | Bin 0 -> 201 bytes .../custom/dijit/compat/calendar-month-bg.png | Bin 0 -> 180 bytes .../custom/dijit/compat/calendar-year-bg.png | Bin 0 -> 180 bytes .../custom/images/thumb-overlay-large.png | Bin 0 -> 3697 bytes .../custom/images/thumb-overlay-small.png | Bin 0 -> 1549 bytes .../themes/custom/images/thumb-overlay.png | Bin 0 -> 2010 bytes .../dojox/mobile/themes/custom/variables.less | 827 + .../mobile/themes/custom/variables_rtl.less | 35 + .../themes/holodark/Accordion-compat.css | 28 + .../mobile/themes/holodark/Accordion.css | 74 + .../mobile/themes/holodark/Accordion_rtl.css | 6 + .../mobile/themes/holodark/Button-compat.css | 59 + .../mobile/themes/holodark/Button-compat.less | 21 + .../dojox/mobile/themes/holodark/Button.css | 86 + .../dojox/mobile/themes/holodark/Button.less | 20 + .../dojox/mobile/themes/holodark/Carousel.css | 77 + .../mobile/themes/holodark/Carousel_rtl.css | 13 + .../themes/holodark/CheckBox-compat.css | 38 + .../dojox/mobile/themes/holodark/CheckBox.css | 85 + .../mobile/themes/holodark/CheckBox.less | 32 + .../themes/holodark/ComboBox-compat.css | 7 + .../dojox/mobile/themes/holodark/ComboBox.css | 59 + .../mobile/themes/holodark/ComboBox_rtl.css | 4 + .../mobile/themes/holodark/DatePicker.css | 181 + .../themes/holodark/EdgeToEdgeCategory.css | 21 + .../mobile/themes/holodark/EdgeToEdgeList.css | 10 + .../mobile/themes/holodark/FixedSplitter.css | 21 + .../mobile/themes/holodark/FormLayout.css | 160 + .../mobile/themes/holodark/FormLayout_rtl.css | 4 + .../mobile/themes/holodark/GridLayout.css | 24 + .../mobile/themes/holodark/GridLayout_rtl.css | 4 + .../mobile/themes/holodark/Heading-compat.css | 13 + .../themes/holodark/Heading-compat.less | 6 + .../dojox/mobile/themes/holodark/Heading.css | 40 + .../themes/holodark/IconContainer-compat.css | 59 + .../themes/holodark/IconContainer-compat.less | 5 + .../mobile/themes/holodark/IconContainer.css | 381 + .../mobile/themes/holodark/IconContainer.less | 5 + .../themes/holodark/IconContainer_rtl.css | 13 + .../themes/holodark/IconMenu-compat.css | 34 + .../dojox/mobile/themes/holodark/IconMenu.css | 62 + .../themes/holodark/IconMenu_rtl-compat.css | 17 + .../mobile/themes/holodark/IconMenu_rtl.css | 23 + .../themes/holodark/ListItem-compat.css | 24 + .../themes/holodark/ListItem-compat.less | 5 + .../dojox/mobile/themes/holodark/ListItem.css | 154 + .../mobile/themes/holodark/ListItem.less | 5 + .../themes/holodark/ListItem_rtl-compat.css | 6 + .../mobile/themes/holodark/ListItem_rtl.css | 40 + .../mobile/themes/holodark/ListItem_rtl.less | 4 + .../mobile/themes/holodark/Opener-compat.css | 53 + .../dojox/mobile/themes/holodark/Opener.css | 245 + .../mobile/themes/holodark/Overlay-compat.css | 14 + .../dojox/mobile/themes/holodark/Overlay.css | 90 + .../dojox/mobile/themes/holodark/Overlay.less | 5 + .../themes/holodark/PageIndicator-compat.css | 4 + .../mobile/themes/holodark/PageIndicator.css | 23 + .../themes/holodark/ProgressBar-compat.css | 17 + .../mobile/themes/holodark/ProgressBar.css | 35 + .../mobile/themes/holodark/ProgressBar.less | 6 + .../holodark/ProgressIndicator-compat.css | 83 + .../themes/holodark/ProgressIndicator.css | 157 + .../themes/holodark/ProgressIndicator_rtl.css | 14 + .../themes/holodark/RadioButton-compat.css | 32 + .../mobile/themes/holodark/RadioButton.css | 87 + .../mobile/themes/holodark/RadioButton.less | 37 + .../themes/holodark/RoundRect-compat.css | 72 + .../mobile/themes/holodark/RoundRect.css | 13 + .../themes/holodark/RoundRectCategory.css | 10 + .../themes/holodark/RoundRectCategory_rtl.css | 4 + .../themes/holodark/RoundRectList-compat.css | 77 + .../mobile/themes/holodark/RoundRectList.css | 19 + .../mobile/themes/holodark/ScrollablePane.css | 12 + .../themes/holodark/SearchBox-compat.css | 22 + .../mobile/themes/holodark/SearchBox.css | 80 + .../themes/holodark/SimpleDialog-compat.css | 10 + .../mobile/themes/holodark/SimpleDialog.css | 54 + .../mobile/themes/holodark/Slider-compat.css | 40 + .../dojox/mobile/themes/holodark/Slider.css | 98 + .../dojox/mobile/themes/holodark/Slider.less | 45 + .../themes/holodark/SpinWheel-compat.css | 36 + .../mobile/themes/holodark/SpinWheel.css | 77 + .../themes/holodark/SpinWheel_rtl-compat.css | 4 + .../mobile/themes/holodark/SpinWheel_rtl.css | 5 + .../mobile/themes/holodark/Switch-compat.css | 109 + .../mobile/themes/holodark/Switch-compat.less | 7 + .../dojox/mobile/themes/holodark/Switch.css | 233 + .../dojox/mobile/themes/holodark/Switch.less | 23 + .../themes/holodark/Switch_rtl-compat.css | 37 + .../mobile/themes/holodark/Switch_rtl.css | 110 + .../mobile/themes/holodark/TabBar-compat.css | 70 + .../mobile/themes/holodark/TabBar-compat.less | 22 + .../dojox/mobile/themes/holodark/TabBar.css | 339 + .../dojox/mobile/themes/holodark/TabBar.less | 37 + .../themes/holodark/TabBar_rtl-compat.css | 19 + .../mobile/themes/holodark/TabBar_rtl.css | 83 + .../themes/holodark/TextArea-compat.css | 7 + .../dojox/mobile/themes/holodark/TextArea.css | 22 + .../mobile/themes/holodark/TextBox-compat.css | 4 + .../dojox/mobile/themes/holodark/TextBox.css | 27 + .../dojox/mobile/themes/holodark/TextBox.less | 13 + .../mobile/themes/holodark/TimePicker.css | 181 + .../themes/holodark/ToggleButton-compat.css | 42 + .../mobile/themes/holodark/ToggleButton.css | 54 + .../themes/holodark/ToggleButton_rtl.css | 7 + .../themes/holodark/ToolBarButton-compat.css | 63 + .../mobile/themes/holodark/ToolBarButton.css | 90 + .../themes/holodark/ToolBarButton_rtl.css | 18 + .../mobile/themes/holodark/Tooltip-compat.css | 40 + .../dojox/mobile/themes/holodark/Tooltip.css | 152 + .../themes/holodark/ValuePicker-compat.css | 22 + .../themes/holodark/ValuePicker-compat.less | 6 + .../mobile/themes/holodark/ValuePicker.css | 105 + .../mobile/themes/holodark/ValuePicker.less | 11 + .../dojox/mobile/themes/holodark/View.css | 123 + .../dojox/mobile/themes/holodark/View.less | 6 + .../mobile/themes/holodark/android-compat.css | 1271 + .../themes/holodark/android_rtl-compat.css | 80 + .../mobile/themes/holodark/base-compat.css | 452 + .../dojox/mobile/themes/holodark/base.css | 915 + .../themes/holodark/base_rtl-compat.css | 42 + .../dojox/mobile/themes/holodark/base_rtl.css | 182 + .../mobile/themes/holodark/common-compat.css | 18 + .../dojox/mobile/themes/holodark/common.css | 55 + .../holodark/compat/arrow-button-bg-sel.png | Bin 0 -> 189 bytes .../holodark/compat/arrow-button-bg.png | Bin 0 -> 157 bytes .../holodark/compat/arrow-button-head-sel.png | Bin 0 -> 1134 bytes .../holodark/compat/arrow-button-head.png | Bin 0 -> 1068 bytes .../compat/arrow-button-right-head-sel.png | Bin 0 -> 1129 bytes .../compat/arrow-button-right-head.png | Bin 0 -> 1073 bytes .../themes/holodark/compat/blue-button-bg.png | Bin 0 -> 199 bytes .../holodark/compat/blue-button-sel-bg.png | Bin 0 -> 207 bytes .../holodark/compat/button-arrow-head-bg.gif | Bin 0 -> 316 bytes .../themes/holodark/compat/button-bg.png | Bin 0 -> 169 bytes .../themes/holodark/compat/button-chk-bg.png | Bin 0 -> 154 bytes .../themes/holodark/compat/button-sel-bg.png | Bin 0 -> 207 bytes .../holodark/compat/button-unsel-bg.png | Bin 0 -> 207 bytes .../themes/holodark/compat/gray-arrow.png | Bin 0 -> 920 bytes .../themes/holodark/compat/heading-bg.png | Bin 0 -> 181 bytes .../compat/icon-content-heading-bg.png | Bin 0 -> 193 bytes .../themes/holodark/compat/red-button-bg.png | Bin 0 -> 248 bytes .../holodark/compat/red-button-sel-bg.png | Bin 0 -> 207 bytes .../holodark/compat/slider-h-bar-bg.png | Bin 0 -> 124 bytes .../themes/holodark/compat/slider-h-bg.png | Bin 0 -> 135 bytes .../holodark/compat/slider-handle-bg.png | Bin 0 -> 156 bytes .../themes/holodark/compat/switch-arc1-k.gif | Bin 0 -> 492 bytes .../themes/holodark/compat/switch-arc1-l.gif | Bin 0 -> 803 bytes .../themes/holodark/compat/switch-arc1-r.gif | Bin 0 -> 691 bytes .../themes/holodark/compat/switch-arc2-k.gif | Bin 0 -> 536 bytes .../themes/holodark/compat/switch-arc2-l.gif | Bin 0 -> 827 bytes .../themes/holodark/compat/switch-arc2-r.gif | Bin 0 -> 728 bytes .../holodark/compat/switch-round1-k.gif | Bin 0 -> 511 bytes .../holodark/compat/switch-round1-l.gif | Bin 0 -> 851 bytes .../holodark/compat/switch-round1-r.gif | Bin 0 -> 936 bytes .../holodark/compat/switch-round2-k.gif | Bin 0 -> 566 bytes .../holodark/compat/switch-round2-l.gif | Bin 0 -> 883 bytes .../holodark/compat/switch-round2-r.gif | Bin 0 -> 974 bytes .../holodark/compat/switch-square-k.gif | Bin 0 -> 388 bytes .../holodark/compat/switch-square-l.gif | Bin 0 -> 578 bytes .../holodark/compat/switch-square-r.gif | Bin 0 -> 686 bytes .../themes/holodark/compat/tab-button-bg.png | Bin 0 -> 277 bytes .../holodark/compat/tab-orange-button-bg.png | Bin 0 -> 197 bytes .../holodark/compat/tab-seg-button-bg.png | Bin 0 -> 157 bytes .../holodark/compat/tab-seg-sel-button-bg.png | Bin 0 -> 178 bytes .../holodark/compat/tab-sel-button-bg.png | Bin 0 -> 286 bytes .../holodark/compat/tab-slim-bar-bg.png | Bin 0 -> 107 bytes .../holodark/compat/tab-tall-bar-bg.png | Bin 0 -> 161 bytes .../holodark/compat/togglebutton-chk-bg.png | Bin 0 -> 154 bytes .../compat/togglebutton-chk-mark-bg.png | Bin 0 -> 150 bytes .../holodark/compat/valuepicker-button-bg.png | Bin 0 -> 246 bytes .../themes/holodark/dijit/Calendar-compat.css | 31 + .../holodark/dijit/Calendar-compat.less | 2 + .../mobile/themes/holodark/dijit/Calendar.css | 112 + .../themes/holodark/dijit/Calendar.less | 9 + .../compat/calendar-datelabel-act-bg.png | Bin 0 -> 209 bytes .../compat/calendar-datelabel-sel-bg.png | Bin 0 -> 144 bytes .../dijit/compat/calendar-month-bg.png | Bin 0 -> 186 bytes .../dijit/compat/calendar-year-bg.png | Bin 0 -> 177 bytes .../dojox/mobile/themes/holodark/holodark.css | 5701 +++ .../mobile/themes/holodark/holodark_rtl.css | 327 + .../holodark/images/thumb-overlay-large.png | Bin 0 -> 3697 bytes .../holodark/images/thumb-overlay-small.png | Bin 0 -> 1549 bytes .../themes/holodark/images/thumb-overlay.png | Bin 0 -> 2010 bytes .../themes/holodark/images/vseparator.png | Bin 0 -> 160 bytes .../mobile/themes/holodark/variables.less | 918 + .../mobile/themes/holodark/variables_rtl.less | 35 + .../mobile/themes/ios7/Accordion-compat.css | 24 + .../dojox/mobile/themes/ios7/Accordion.css | 70 + .../mobile/themes/ios7/Accordion_rtl.css | 6 + .../mobile/themes/ios7/Button-compat.css | 59 + .../mobile/themes/ios7/Button-compat.less | 21 + .../dojo/dojox/mobile/themes/ios7/Button.css | 89 + .../dojo/dojox/mobile/themes/ios7/Button.less | 42 + .../dojox/mobile/themes/ios7/Carousel.css | 77 + .../dojox/mobile/themes/ios7/Carousel_rtl.css | 13 + .../mobile/themes/ios7/CheckBox-compat.css | 38 + .../dojox/mobile/themes/ios7/CheckBox.css | 81 + .../dojox/mobile/themes/ios7/CheckBox.less | 31 + .../mobile/themes/ios7/ComboBox-compat.css | 7 + .../dojox/mobile/themes/ios7/ComboBox.css | 60 + .../dojox/mobile/themes/ios7/ComboBox_rtl.css | 4 + .../dojox/mobile/themes/ios7/DatePicker.css | 191 + .../mobile/themes/ios7/EdgeToEdgeCategory.css | 20 + .../mobile/themes/ios7/EdgeToEdgeList.css | 11 + .../mobile/themes/ios7/FixedSplitter.css | 21 + .../dojox/mobile/themes/ios7/FormLayout.css | 160 + .../mobile/themes/ios7/FormLayout_rtl.css | 4 + .../dojox/mobile/themes/ios7/GridLayout.css | 24 + .../mobile/themes/ios7/GridLayout_rtl.css | 4 + .../mobile/themes/ios7/Heading-compat.css | 13 + .../mobile/themes/ios7/Heading-compat.less | 6 + .../dojo/dojox/mobile/themes/ios7/Heading.css | 39 + .../themes/ios7/IconContainer-compat.css | 59 + .../themes/ios7/IconContainer-compat.less | 5 + .../mobile/themes/ios7/IconContainer.css | 381 + .../mobile/themes/ios7/IconContainer.less | 5 + .../mobile/themes/ios7/IconContainer_rtl.css | 13 + .../mobile/themes/ios7/IconMenu-compat.css | 34 + .../dojox/mobile/themes/ios7/IconMenu.css | 60 + .../themes/ios7/IconMenu_rtl-compat.css | 17 + .../dojox/mobile/themes/ios7/IconMenu_rtl.css | 23 + .../mobile/themes/ios7/ListItem-compat.css | 27 + .../mobile/themes/ios7/ListItem-compat.less | 9 + .../dojox/mobile/themes/ios7/ListItem.css | 165 + .../dojox/mobile/themes/ios7/ListItem.less | 17 + .../themes/ios7/ListItem_rtl-compat.css | 6 + .../dojox/mobile/themes/ios7/ListItem_rtl.css | 40 + .../mobile/themes/ios7/ListItem_rtl.less | 4 + .../mobile/themes/ios7/Opener-compat.css | 53 + .../dojo/dojox/mobile/themes/ios7/Opener.css | 244 + .../mobile/themes/ios7/Overlay-compat.css | 14 + .../dojo/dojox/mobile/themes/ios7/Overlay.css | 90 + .../dojox/mobile/themes/ios7/Overlay.less | 5 + .../themes/ios7/PageIndicator-compat.css | 4 + .../mobile/themes/ios7/PageIndicator.css | 26 + .../mobile/themes/ios7/PageIndicator.less | 6 + .../mobile/themes/ios7/ProgressBar-compat.css | 17 + .../dojox/mobile/themes/ios7/ProgressBar.css | 35 + .../themes/ios7/ProgressIndicator-compat.css | 83 + .../mobile/themes/ios7/ProgressIndicator.css | 157 + .../themes/ios7/ProgressIndicator_rtl.css | 14 + .../mobile/themes/ios7/RadioButton-compat.css | 32 + .../dojox/mobile/themes/ios7/RadioButton.css | 83 + .../dojox/mobile/themes/ios7/RadioButton.less | 37 + .../mobile/themes/ios7/RoundRect-compat.css | 72 + .../dojox/mobile/themes/ios7/RoundRect.css | 14 + .../mobile/themes/ios7/RoundRectCategory.css | 11 + .../themes/ios7/RoundRectCategory_rtl.css | 4 + .../themes/ios7/RoundRectList-compat.css | 77 + .../mobile/themes/ios7/RoundRectList.css | 19 + .../mobile/themes/ios7/ScrollablePane.css | 12 + .../mobile/themes/ios7/SearchBox-compat.css | 22 + .../dojox/mobile/themes/ios7/SearchBox.css | 74 + .../themes/ios7/SimpleDialog-compat.css | 10 + .../dojox/mobile/themes/ios7/SimpleDialog.css | 54 + .../mobile/themes/ios7/Slider-compat.css | 40 + .../dojo/dojox/mobile/themes/ios7/Slider.css | 97 + .../dojo/dojox/mobile/themes/ios7/Slider.less | 42 + .../mobile/themes/ios7/SpinWheel-compat.css | 92 + .../mobile/themes/ios7/SpinWheel-compat.less | 20 + .../dojox/mobile/themes/ios7/SpinWheel.css | 92 + .../dojox/mobile/themes/ios7/SpinWheel.less | 20 + .../themes/ios7/SpinWheel_rtl-compat.css | 4 + .../mobile/themes/ios7/SpinWheel_rtl.css | 5 + .../mobile/themes/ios7/Switch-compat.css | 121 + .../mobile/themes/ios7/Switch-compat.less | 22 + .../dojo/dojox/mobile/themes/ios7/Switch.css | 233 + .../dojo/dojox/mobile/themes/ios7/Switch.less | 22 + .../mobile/themes/ios7/Switch_rtl-compat.css | 37 + .../dojox/mobile/themes/ios7/Switch_rtl.css | 110 + .../mobile/themes/ios7/TabBar-compat.css | 337 + .../mobile/themes/ios7/TabBar-compat.less | 82 + .../dojo/dojox/mobile/themes/ios7/TabBar.css | 337 + .../dojo/dojox/mobile/themes/ios7/TabBar.less | 82 + .../mobile/themes/ios7/TabBar_rtl-compat.css | 19 + .../dojox/mobile/themes/ios7/TabBar_rtl.css | 83 + .../mobile/themes/ios7/TextArea-compat.css | 7 + .../dojox/mobile/themes/ios7/TextArea.css | 18 + .../mobile/themes/ios7/TextBox-compat.css | 4 + .../dojo/dojox/mobile/themes/ios7/TextBox.css | 21 + .../dojox/mobile/themes/ios7/TextBox.less | 13 + .../dojox/mobile/themes/ios7/TimePicker.css | 191 + .../themes/ios7/ToggleButton-compat.css | 42 + .../dojox/mobile/themes/ios7/ToggleButton.css | 57 + .../mobile/themes/ios7/ToggleButton.less | 11 + .../mobile/themes/ios7/ToggleButton_rtl.css | 7 + .../themes/ios7/ToolBarButton-compat.css | 63 + .../mobile/themes/ios7/ToolBarButton.css | 135 + .../mobile/themes/ios7/ToolBarButton.less | 53 + .../mobile/themes/ios7/ToolBarButton_rtl.css | 18 + .../mobile/themes/ios7/Tooltip-compat.css | 40 + .../dojo/dojox/mobile/themes/ios7/Tooltip.css | 151 + .../mobile/themes/ios7/ValuePicker-compat.css | 22 + .../themes/ios7/ValuePicker-compat.less | 6 + .../dojox/mobile/themes/ios7/ValuePicker.css | 100 + .../dojox/mobile/themes/ios7/ValuePicker.less | 6 + .../dojo/dojox/mobile/themes/ios7/View.css | 123 + .../dojo/dojox/mobile/themes/ios7/View.less | 6 + .../mobile/themes/ios7/android-compat.css | 1604 + .../mobile/themes/ios7/android_rtl-compat.css | 80 + .../dojox/mobile/themes/ios7/base-compat.css | 467 + .../dojo/dojox/mobile/themes/ios7/base.css | 972 + .../mobile/themes/ios7/base_rtl-compat.css | 42 + .../dojox/mobile/themes/ios7/base_rtl.css | 182 + .../mobile/themes/ios7/common-compat.css | 18 + .../dojo/dojox/mobile/themes/ios7/common.css | 55 + .../ios7/compat/arrow-button-bg-sel.png | Bin 0 -> 189 bytes .../themes/ios7/compat/arrow-button-bg.png | Bin 0 -> 157 bytes .../ios7/compat/arrow-button-head-sel.png | Bin 0 -> 1134 bytes .../themes/ios7/compat/arrow-button-head.png | Bin 0 -> 1068 bytes .../compat/arrow-button-right-head-sel.png | Bin 0 -> 1129 bytes .../ios7/compat/arrow-button-right-head.png | Bin 0 -> 1073 bytes .../themes/ios7/compat/blue-button-bg.png | Bin 0 -> 199 bytes .../themes/ios7/compat/blue-button-sel-bg.png | Bin 0 -> 207 bytes .../ios7/compat/button-arrow-head-bg.gif | Bin 0 -> 316 bytes .../mobile/themes/ios7/compat/button-bg.png | Bin 0 -> 169 bytes .../themes/ios7/compat/button-chk-bg.png | Bin 0 -> 154 bytes .../themes/ios7/compat/button-sel-bg.png | Bin 0 -> 207 bytes .../themes/ios7/compat/button-unsel-bg.png | Bin 0 -> 207 bytes .../mobile/themes/ios7/compat/gray-arrow.png | Bin 0 -> 920 bytes .../mobile/themes/ios7/compat/heading-bg.png | Bin 0 -> 181 bytes .../ios7/compat/icon-content-heading-bg.png | Bin 0 -> 193 bytes .../themes/ios7/compat/red-button-bg.png | Bin 0 -> 248 bytes .../themes/ios7/compat/red-button-sel-bg.png | Bin 0 -> 207 bytes .../themes/ios7/compat/slider-h-bar-bg.png | Bin 0 -> 124 bytes .../mobile/themes/ios7/compat/slider-h-bg.png | Bin 0 -> 135 bytes .../themes/ios7/compat/slider-handle-bg.png | Bin 0 -> 156 bytes .../themes/ios7/compat/switch-arc1-k.gif | Bin 0 -> 492 bytes .../themes/ios7/compat/switch-arc1-l.gif | Bin 0 -> 803 bytes .../themes/ios7/compat/switch-arc1-r.gif | Bin 0 -> 691 bytes .../themes/ios7/compat/switch-arc2-k.gif | Bin 0 -> 536 bytes .../themes/ios7/compat/switch-arc2-l.gif | Bin 0 -> 827 bytes .../themes/ios7/compat/switch-arc2-r.gif | Bin 0 -> 728 bytes .../themes/ios7/compat/switch-round1-k.gif | Bin 0 -> 511 bytes .../themes/ios7/compat/switch-round1-l.gif | Bin 0 -> 851 bytes .../themes/ios7/compat/switch-round1-r.gif | Bin 0 -> 936 bytes .../themes/ios7/compat/switch-round2-k.gif | Bin 0 -> 566 bytes .../themes/ios7/compat/switch-round2-l.gif | Bin 0 -> 883 bytes .../themes/ios7/compat/switch-round2-r.gif | Bin 0 -> 974 bytes .../themes/ios7/compat/switch-square-k.gif | Bin 0 -> 388 bytes .../themes/ios7/compat/switch-square-l.gif | Bin 0 -> 578 bytes .../themes/ios7/compat/switch-square-r.gif | Bin 0 -> 686 bytes .../themes/ios7/compat/tab-button-bg.png | Bin 0 -> 277 bytes .../ios7/compat/tab-orange-button-bg.png | Bin 0 -> 197 bytes .../themes/ios7/compat/tab-seg-button-bg.png | Bin 0 -> 157 bytes .../ios7/compat/tab-seg-sel-button-bg.png | Bin 0 -> 178 bytes .../themes/ios7/compat/tab-sel-button-bg.png | Bin 0 -> 286 bytes .../themes/ios7/compat/tab-slim-bar-bg.png | Bin 0 -> 107 bytes .../themes/ios7/compat/tab-tall-bar-bg.png | Bin 0 -> 161 bytes .../ios7/compat/togglebutton-chk-bg.png | Bin 0 -> 154 bytes .../ios7/compat/togglebutton-chk-mark-bg.png | Bin 0 -> 150 bytes .../ios7/compat/valuepicker-button-bg.png | Bin 0 -> 246 bytes .../themes/ios7/dijit/Calendar-compat.css | 31 + .../themes/ios7/dijit/Calendar-compat.less | 2 + .../mobile/themes/ios7/dijit/Calendar.css | 112 + .../mobile/themes/ios7/dijit/Calendar.less | 9 + .../compat/calendar-datelabel-act-bg.png | Bin 0 -> 209 bytes .../compat/calendar-datelabel-sel-bg.png | Bin 0 -> 144 bytes .../ios7/dijit/compat/calendar-month-bg.png | Bin 0 -> 186 bytes .../ios7/dijit/compat/calendar-year-bg.png | Bin 0 -> 177 bytes .../ios7/images/thumb-overlay-large.png | Bin 0 -> 3697 bytes .../ios7/images/thumb-overlay-small.png | Bin 0 -> 1549 bytes .../themes/ios7/images/thumb-overlay.png | Bin 0 -> 2010 bytes .../mobile/themes/ios7/images/vseparator.png | Bin 0 -> 160 bytes .../dojo/dojox/mobile/themes/ios7/ios7.css | 5750 +++ .../dojox/mobile/themes/ios7/ios7_rtl.css | 327 + .../dojox/mobile/themes/ios7/variables.less | 957 + .../mobile/themes/ios7/variables_rtl.less | 35 + .../mobile/themes/iphone/Accordion-compat.css | 25 + .../dojox/mobile/themes/iphone/Accordion.css | 73 + .../mobile/themes/iphone/Accordion_rtl.css | 6 + .../mobile/themes/iphone/Button-compat.css | 41 + .../dojox/mobile/themes/iphone/Button.css | 47 + .../dojox/mobile/themes/iphone/Carousel.css | 77 + .../mobile/themes/iphone/Carousel_rtl.css | 13 + .../mobile/themes/iphone/CheckBox-compat.css | 38 + .../dojox/mobile/themes/iphone/CheckBox.css | 49 + .../mobile/themes/iphone/ComboBox-compat.css | 7 + .../dojox/mobile/themes/iphone/ComboBox.css | 57 + .../mobile/themes/iphone/ComboBox_rtl.css | 4 + .../dojox/mobile/themes/iphone/DatePicker.css | 184 + .../iphone/EdgeToEdgeCategory-compat.css | 7 + .../themes/iphone/EdgeToEdgeCategory.css | 20 + .../mobile/themes/iphone/EdgeToEdgeList.css | 9 + .../mobile/themes/iphone/FixedSplitter.css | 21 + .../dojox/mobile/themes/iphone/FormLayout.css | 160 + .../mobile/themes/iphone/FormLayout_rtl.css | 4 + .../dojox/mobile/themes/iphone/GridLayout.css | 24 + .../mobile/themes/iphone/GridLayout_rtl.css | 4 + .../mobile/themes/iphone/Heading-compat.css | 10 + .../dojox/mobile/themes/iphone/Heading.css | 51 + .../dojox/mobile/themes/iphone/Heading.less | 15 + .../themes/iphone/IconContainer-compat.css | 59 + .../themes/iphone/IconContainer-compat.less | 5 + .../mobile/themes/iphone/IconContainer.css | 379 + .../mobile/themes/iphone/IconContainer.less | 5 + .../themes/iphone/IconContainer_rtl.css | 13 + .../mobile/themes/iphone/IconMenu-compat.css | 37 + .../dojox/mobile/themes/iphone/IconMenu.css | 66 + .../themes/iphone/IconMenu_rtl-compat.css | 17 + .../mobile/themes/iphone/IconMenu_rtl.css | 23 + .../mobile/themes/iphone/ListItem-compat.css | 24 + .../mobile/themes/iphone/ListItem-compat.less | 5 + .../dojox/mobile/themes/iphone/ListItem.css | 160 + .../dojox/mobile/themes/iphone/ListItem.less | 17 + .../themes/iphone/ListItem_rtl-compat.css | 6 + .../mobile/themes/iphone/ListItem_rtl.css | 40 + .../mobile/themes/iphone/ListItem_rtl.less | 4 + .../mobile/themes/iphone/Opener-compat.css | 63 + .../dojox/mobile/themes/iphone/Opener.css | 250 + .../mobile/themes/iphone/Overlay-compat.css | 17 + .../dojox/mobile/themes/iphone/Overlay.css | 90 + .../dojox/mobile/themes/iphone/Overlay.less | 5 + .../themes/iphone/PageIndicator-compat.css | 4 + .../mobile/themes/iphone/PageIndicator.css | 23 + .../themes/iphone/ProgressBar-compat.css | 15 + .../mobile/themes/iphone/ProgressBar.css | 33 + .../iphone/ProgressIndicator-compat.css | 83 + .../themes/iphone/ProgressIndicator.css | 157 + .../themes/iphone/ProgressIndicator_rtl.css | 14 + .../themes/iphone/RadioButton-compat.css | 32 + .../mobile/themes/iphone/RadioButton.css | 49 + .../mobile/themes/iphone/RoundRect-compat.css | 72 + .../dojox/mobile/themes/iphone/RoundRect.css | 12 + .../themes/iphone/RoundRectCategory.css | 12 + .../themes/iphone/RoundRectCategory_rtl.css | 4 + .../themes/iphone/RoundRectList-compat.css | 77 + .../mobile/themes/iphone/RoundRectList.css | 19 + .../mobile/themes/iphone/ScrollablePane.css | 12 + .../mobile/themes/iphone/SearchBox-compat.css | 22 + .../dojox/mobile/themes/iphone/SearchBox.css | 63 + .../themes/iphone/SimpleDialog-compat.css | 12 + .../mobile/themes/iphone/SimpleDialog.css | 69 + .../mobile/themes/iphone/SimpleDialog.less | 23 + .../mobile/themes/iphone/Slider-compat.css | 40 + .../dojox/mobile/themes/iphone/Slider.css | 65 + .../mobile/themes/iphone/SpinWheel-compat.css | 36 + .../dojox/mobile/themes/iphone/SpinWheel.css | 80 + .../dojox/mobile/themes/iphone/SpinWheel.less | 8 + .../themes/iphone/SpinWheel_rtl-compat.css | 4 + .../mobile/themes/iphone/SpinWheel_rtl.css | 5 + .../mobile/themes/iphone/Switch-compat.css | 109 + .../mobile/themes/iphone/Switch-compat.less | 7 + .../dojox/mobile/themes/iphone/Switch.css | 231 + .../dojox/mobile/themes/iphone/Switch.less | 15 + .../themes/iphone/Switch_rtl-compat.css | 37 + .../dojox/mobile/themes/iphone/Switch_rtl.css | 110 + .../mobile/themes/iphone/TabBar-compat.css | 63 + .../mobile/themes/iphone/TabBar-compat.less | 3 + .../dojox/mobile/themes/iphone/TabBar.css | 303 + .../dojox/mobile/themes/iphone/TabBar.less | 24 + .../themes/iphone/TabBar_rtl-compat.css | 19 + .../dojox/mobile/themes/iphone/TabBar_rtl.css | 83 + .../mobile/themes/iphone/TextArea-compat.css | 7 + .../dojox/mobile/themes/iphone/TextArea.css | 13 + .../mobile/themes/iphone/TextBox-compat.css | 4 + .../dojox/mobile/themes/iphone/TextBox.css | 10 + .../dojox/mobile/themes/iphone/TimePicker.css | 184 + .../themes/iphone/ToggleButton-compat.css | 42 + .../mobile/themes/iphone/ToggleButton.css | 52 + .../mobile/themes/iphone/ToggleButton_rtl.css | 7 + .../themes/iphone/ToolBarButton-compat.css | 72 + .../mobile/themes/iphone/ToolBarButton.css | 109 + .../mobile/themes/iphone/ToolBarButton.less | 10 + .../themes/iphone/ToolBarButton_rtl.css | 18 + .../mobile/themes/iphone/Tooltip-compat.css | 47 + .../dojox/mobile/themes/iphone/Tooltip.css | 160 + .../themes/iphone/ValuePicker-compat.css | 19 + .../mobile/themes/iphone/ValuePicker.css | 105 + .../mobile/themes/iphone/ValuePicker.less | 5 + .../dojo/dojox/mobile/themes/iphone/View.css | 122 + .../dojo/dojox/mobile/themes/iphone/View.less | 6 + .../mobile/themes/iphone/base-compat.css | 464 + .../dojo/dojox/mobile/themes/iphone/base.css | 995 + .../mobile/themes/iphone/base_rtl-compat.css | 42 + .../dojox/mobile/themes/iphone/base_rtl.css | 182 + .../mobile/themes/iphone/common-compat.css | 18 + .../dojox/mobile/themes/iphone/common.css | 103 + .../dojox/mobile/themes/iphone/common.less | 42 + .../iphone/compat/arrow-button-bg-sel.png | Bin 0 -> 183 bytes .../themes/iphone/compat/arrow-button-bg.png | Bin 0 -> 202 bytes .../iphone/compat/arrow-button-head-sel.png | Bin 0 -> 418 bytes .../iphone/compat/arrow-button-head.png | Bin 0 -> 453 bytes .../compat/arrow-button-right-head-sel.png | Bin 0 -> 373 bytes .../iphone/compat/arrow-button-right-head.png | Bin 0 -> 406 bytes .../themes/iphone/compat/blue-button-bg.png | Bin 0 -> 199 bytes .../iphone/compat/blue-button-sel-bg.png | Bin 0 -> 182 bytes .../iphone/compat/button-arrow-head-bg.gif | Bin 0 -> 316 bytes .../mobile/themes/iphone/compat/button-bg.png | Bin 0 -> 169 bytes .../themes/iphone/compat/button-chk-bg.png | Bin 0 -> 199 bytes .../themes/iphone/compat/button-sel-bg.png | Bin 0 -> 170 bytes .../themes/iphone/compat/button-unsel-bg.png | Bin 0 -> 182 bytes .../themes/iphone/compat/edge-categ-bg.png | Bin 0 -> 130 bytes .../themes/iphone/compat/gray-arrow.png | Bin 0 -> 920 bytes .../themes/iphone/compat/heading-bg.png | Bin 0 -> 207 bytes .../iphone/compat/icon-content-heading-bg.png | Bin 0 -> 193 bytes .../iphone/compat/ipad-arrow-button-bg.png | Bin 0 -> 220 bytes .../compat/ipad-arrow-button-head-sel.png | Bin 0 -> 382 bytes .../iphone/compat/ipad-arrow-button-head.png | Bin 0 -> 393 bytes .../ipad-arrow-button-right-head-sel.png | Bin 0 -> 370 bytes .../compat/ipad-arrow-button-right-head.png | Bin 0 -> 371 bytes .../compat/ipad-arrow-button-sel-bg.png | Bin 0 -> 229 bytes .../themes/iphone/compat/ipad-heading-bg.png | Bin 0 -> 195 bytes .../themes/iphone/compat/red-button-bg.png | Bin 0 -> 248 bytes .../iphone/compat/red-button-sel-bg.png | Bin 0 -> 179 bytes .../themes/iphone/compat/slider-h-bar-bg.png | Bin 0 -> 133 bytes .../themes/iphone/compat/slider-h-bg.png | Bin 0 -> 132 bytes .../themes/iphone/compat/slider-handle-bg.png | Bin 0 -> 163 bytes .../themes/iphone/compat/switch-arc-l.gif | Bin 0 -> 1028 bytes .../themes/iphone/compat/switch-arc-r.gif | Bin 0 -> 683 bytes .../themes/iphone/compat/switch-arc1-k.gif | Bin 0 -> 392 bytes .../themes/iphone/compat/switch-arc1-l.gif | Bin 0 -> 903 bytes .../themes/iphone/compat/switch-arc1-r.gif | Bin 0 -> 474 bytes .../themes/iphone/compat/switch-arc2-k.gif | Bin 0 -> 435 bytes .../themes/iphone/compat/switch-arc2-l.gif | Bin 0 -> 946 bytes .../themes/iphone/compat/switch-arc2-r.gif | Bin 0 -> 492 bytes .../themes/iphone/compat/switch-default-k.gif | Bin 0 -> 566 bytes .../themes/iphone/compat/switch-default-l.gif | Bin 0 -> 745 bytes .../themes/iphone/compat/switch-default-r.gif | Bin 0 -> 595 bytes .../themes/iphone/compat/switch-round-l.gif | Bin 0 -> 1058 bytes .../themes/iphone/compat/switch-round-r.gif | Bin 0 -> 683 bytes .../themes/iphone/compat/switch-round1-k.gif | Bin 0 -> 500 bytes .../themes/iphone/compat/switch-round1-l.gif | Bin 0 -> 925 bytes .../themes/iphone/compat/switch-round1-r.gif | Bin 0 -> 508 bytes .../themes/iphone/compat/switch-round2-k.gif | Bin 0 -> 554 bytes .../themes/iphone/compat/switch-round2-l.gif | Bin 0 -> 968 bytes .../themes/iphone/compat/switch-round2-r.gif | Bin 0 -> 527 bytes .../themes/iphone/compat/switch-square-k.gif | Bin 0 -> 405 bytes .../themes/iphone/compat/switch-square-l.gif | Bin 0 -> 733 bytes .../themes/iphone/compat/switch-square-r.gif | Bin 0 -> 484 bytes .../themes/iphone/compat/tab-button-bg.png | Bin 0 -> 197 bytes .../iphone/compat/tab-seg-button-bg.png | Bin 0 -> 205 bytes .../iphone/compat/tab-seg-sel-button-bg.png | Bin 0 -> 169 bytes .../iphone/compat/tab-sel-button-bg.png | Bin 0 -> 200 bytes .../themes/iphone/compat/tab-slim-bar-bg.png | Bin 0 -> 107 bytes .../themes/iphone/compat/tab-tall-bar-bg.png | Bin 0 -> 126 bytes .../compat/togglebutton-chk-mark-bg.png | Bin 0 -> 150 bytes .../iphone/compat/tooltip-button-bg.png | Bin 0 -> 181 bytes .../iphone/compat/tooltip-heading-bg.png | Bin 0 -> 298 bytes .../iphone/compat/valuepicker-button-bg.png | Bin 0 -> 265 bytes .../themes/iphone/compat/white-arrow.png | Bin 0 -> 920 bytes .../themes/iphone/dijit/Calendar-compat.css | 27 + .../themes/iphone/dijit/Calendar-compat.less | 2 + .../mobile/themes/iphone/dijit/Calendar.css | 122 + .../mobile/themes/iphone/dijit/Calendar.less | 2 + .../dijit/compat/calendar-daylabel-bg.png | Bin 0 -> 130 bytes .../iphone/dijit/compat/calendar-month-bg.png | Bin 0 -> 185 bytes .../iphone/dijit/compat/calendar-year-bg.png | Bin 0 -> 177 bytes .../iphone/images/thumb-overlay-large.png | Bin 0 -> 3697 bytes .../iphone/images/thumb-overlay-small.png | Bin 0 -> 1549 bytes .../themes/iphone/images/thumb-overlay.png | Bin 0 -> 2010 bytes .../mobile/themes/iphone/ipad-compat.css | 69 + .../dojo/dojox/mobile/themes/iphone/ipad.css | 96 + .../themes/iphone/iphone-app-compat.css | 1311 + .../dojox/mobile/themes/iphone/iphone-app.css | 5885 +++ .../mobile/themes/iphone/iphone-compat.css | 1288 + .../dojox/mobile/themes/iphone/iphone.css | 5591 +++ .../themes/iphone/iphone_rtl-compat.css | 80 + .../dojox/mobile/themes/iphone/iphone_rtl.css | 327 + .../dojox/mobile/themes/iphone/variables.less | 779 + .../mobile/themes/iphone/variables_rtl.less | 35 + .../dojo/dojox/mobile/themes/utils/README | 26 + .../dojox/mobile/themes/utils/cleanup.bat | 2 + .../dojo/dojox/mobile/themes/utils/cleanup.js | 46 + .../dojo/dojox/mobile/themes/utils/cleanup.sh | 1 + .../dojox/mobile/themes/utils/compile.bat | 3 + .../dojo/dojox/mobile/themes/utils/compile.js | 117 + .../dojo/dojox/mobile/themes/utils/compile.sh | 2 + .../themes/windows/Accordion-compat.css | 16 + .../dojox/mobile/themes/windows/Accordion.css | 97 + .../mobile/themes/windows/Accordion.less | 31 + .../mobile/themes/windows/Accordion_rtl.css | 6 + .../mobile/themes/windows/Button-compat.css | 41 + .../dojox/mobile/themes/windows/Button.css | 50 + .../dojox/mobile/themes/windows/Button.less | 6 + .../dojox/mobile/themes/windows/Carousel.css | 77 + .../mobile/themes/windows/Carousel_rtl.css | 13 + .../mobile/themes/windows/CheckBox-compat.css | 38 + .../dojox/mobile/themes/windows/CheckBox.css | 83 + .../dojox/mobile/themes/windows/CheckBox.less | 37 + .../mobile/themes/windows/ComboBox-compat.css | 7 + .../dojox/mobile/themes/windows/ComboBox.css | 87 + .../dojox/mobile/themes/windows/ComboBox.less | 28 + .../mobile/themes/windows/ComboBox_rtl.css | 4 + .../mobile/themes/windows/DatePicker.css | 300 + .../themes/windows/EdgeToEdgeCategory.css | 31 + .../themes/windows/EdgeToEdgeCategory.less | 10 + .../mobile/themes/windows/EdgeToEdgeList.css | 10 + .../mobile/themes/windows/EdgeToEdgeList.less | 2 + .../mobile/themes/windows/FixedSplitter.css | 21 + .../mobile/themes/windows/FormLayout.css | 160 + .../mobile/themes/windows/FormLayout_rtl.css | 4 + .../mobile/themes/windows/GridLayout.css | 24 + .../mobile/themes/windows/GridLayout_rtl.css | 4 + .../mobile/themes/windows/Heading-compat.css | 10 + .../dojox/mobile/themes/windows/Heading.css | 74 + .../dojox/mobile/themes/windows/Heading.less | 42 + .../themes/windows/IconContainer-compat.css | 59 + .../themes/windows/IconContainer-compat.less | 5 + .../mobile/themes/windows/IconContainer.css | 468 + .../mobile/themes/windows/IconContainer.less | 51 + .../themes/windows/IconContainer_rtl.css | 13 + .../mobile/themes/windows/IconMenu-compat.css | 31 + .../dojox/mobile/themes/windows/IconMenu.css | 62 + .../themes/windows/IconMenu_rtl-compat.css | 17 + .../mobile/themes/windows/IconMenu_rtl.css | 23 + .../mobile/themes/windows/ListItem-compat.css | 24 + .../themes/windows/ListItem-compat.less | 5 + .../dojox/mobile/themes/windows/ListItem.css | 183 + .../dojox/mobile/themes/windows/ListItem.less | 40 + .../mobile/themes/windows/ListItem_rtl.css | 26 + .../mobile/themes/windows/Opener-compat.css | 53 + .../dojox/mobile/themes/windows/Opener.css | 358 + .../mobile/themes/windows/Overlay-compat.css | 14 + .../dojox/mobile/themes/windows/Overlay.css | 94 + .../dojox/mobile/themes/windows/Overlay.less | 5 + .../themes/windows/PageIndicator-compat.css | 4 + .../mobile/themes/windows/PageIndicator.css | 23 + .../themes/windows/ProgressBar-compat.css | 9 + .../mobile/themes/windows/ProgressBar.css | 48 + .../mobile/themes/windows/ProgressBar.less | 27 + .../windows/ProgressIndicator-compat.css | 83 + .../themes/windows/ProgressIndicator.css | 160 + .../themes/windows/ProgressIndicator.less | 6 + .../themes/windows/ProgressIndicator_rtl.css | 14 + .../themes/windows/RadioButton-compat.css | 32 + .../mobile/themes/windows/RadioButton.css | 74 + .../mobile/themes/windows/RadioButton.less | 33 + .../themes/windows/RoundRect-compat.css | 72 + .../dojox/mobile/themes/windows/RoundRect.css | 17 + .../themes/windows/RoundRectCategory.css | 12 + .../themes/windows/RoundRectCategory_rtl.css | 4 + .../themes/windows/RoundRectList-compat.css | 77 + .../mobile/themes/windows/RoundRectList.css | 28 + .../mobile/themes/windows/RoundRectList.less | 13 + .../mobile/themes/windows/ScrollablePane.css | 19 + .../mobile/themes/windows/ScrollablePane.less | 11 + .../themes/windows/SearchBox-compat.css | 22 + .../dojox/mobile/themes/windows/SearchBox.css | 94 + .../mobile/themes/windows/SearchBox.less | 11 + .../themes/windows/SimpleDialog-compat.css | 4 + .../mobile/themes/windows/SimpleDialog.css | 69 + .../mobile/themes/windows/SimpleDialog.less | 27 + .../mobile/themes/windows/Slider-compat.css | 40 + .../dojox/mobile/themes/windows/Slider.css | 109 + .../dojox/mobile/themes/windows/Slider.less | 52 + .../themes/windows/SpinWheel-compat.css | 36 + .../dojox/mobile/themes/windows/SpinWheel.css | 166 + .../mobile/themes/windows/SpinWheel.less | 112 + .../themes/windows/SpinWheel_rtl-compat.css | 4 + .../mobile/themes/windows/SpinWheel_rtl.css | 5 + .../mobile/themes/windows/Switch-compat.css | 109 + .../mobile/themes/windows/Switch-compat.less | 7 + .../dojox/mobile/themes/windows/Switch.css | 275 + .../dojox/mobile/themes/windows/Switch.less | 73 + .../themes/windows/Switch_rtl-compat.css | 37 + .../mobile/themes/windows/Switch_rtl.css | 110 + .../mobile/themes/windows/TabBar-compat.css | 60 + .../mobile/themes/windows/TabBar-compat.less | 3 + .../dojox/mobile/themes/windows/TabBar.css | 287 + .../dojox/mobile/themes/windows/TabBar.less | 37 + .../themes/windows/TabBar_rtl-compat.css | 19 + .../mobile/themes/windows/TabBar_rtl.css | 83 + .../mobile/themes/windows/TextArea-compat.css | 7 + .../dojox/mobile/themes/windows/TextArea.css | 33 + .../dojox/mobile/themes/windows/TextArea.less | 12 + .../mobile/themes/windows/TextBox-compat.css | 4 + .../dojox/mobile/themes/windows/TextBox.css | 34 + .../dojox/mobile/themes/windows/TextBox.less | 16 + .../mobile/themes/windows/TimePicker.css | 300 + .../themes/windows/ToggleButton-compat.css | 42 + .../mobile/themes/windows/ToggleButton.css | 103 + .../mobile/themes/windows/ToggleButton.less | 49 + .../themes/windows/ToggleButton_rtl.css | 7 + .../themes/windows/ToolBarButton-compat.css | 63 + .../mobile/themes/windows/ToolBarButton.css | 121 + .../mobile/themes/windows/ToolBarButton.less | 22 + .../themes/windows/ToolBarButton_rtl.css | 18 + .../mobile/themes/windows/Tooltip-compat.css | 40 + .../dojox/mobile/themes/windows/Tooltip.css | 261 + .../dojox/mobile/themes/windows/Tooltip.less | 146 + .../themes/windows/ValuePicker-compat.css | 19 + .../mobile/themes/windows/ValuePicker.css | 135 + .../mobile/themes/windows/ValuePicker.less | 55 + .../dojo/dojox/mobile/themes/windows/View.css | 125 + .../dojox/mobile/themes/windows/View.less | 6 + .../mobile/themes/windows/base-compat.css | 449 + .../dojo/dojox/mobile/themes/windows/base.css | 1126 + .../dojox/mobile/themes/windows/base_rtl.css | 168 + .../mobile/themes/windows/common-compat.css | 18 + .../dojox/mobile/themes/windows/common.css | 82 + .../dojox/mobile/themes/windows/common.less | 29 + .../windows/compat/arrow-button-bg-sel.png | Bin 0 -> 189 bytes .../themes/windows/compat/arrow-button-bg.png | Bin 0 -> 157 bytes .../windows/compat/arrow-button-head-sel.png | Bin 0 -> 1134 bytes .../windows/compat/arrow-button-head.png | Bin 0 -> 1068 bytes .../compat/arrow-button-right-head-sel.png | Bin 0 -> 1129 bytes .../compat/arrow-button-right-head.png | Bin 0 -> 1073 bytes .../themes/windows/compat/blue-button-bg.png | Bin 0 -> 199 bytes .../windows/compat/blue-button-sel-bg.png | Bin 0 -> 207 bytes .../windows/compat/button-arrow-head-bg.gif | Bin 0 -> 316 bytes .../themes/windows/compat/button-bg.png | Bin 0 -> 169 bytes .../themes/windows/compat/button-chk-bg.png | Bin 0 -> 154 bytes .../themes/windows/compat/button-sel-bg.png | Bin 0 -> 207 bytes .../themes/windows/compat/button-unsel-bg.png | Bin 0 -> 207 bytes .../themes/windows/compat/gray-arrow.png | Bin 0 -> 920 bytes .../themes/windows/compat/heading-bg.png | Bin 0 -> 181 bytes .../compat/icon-content-heading-bg.png | Bin 0 -> 193 bytes .../themes/windows/compat/red-button-bg.png | Bin 0 -> 248 bytes .../windows/compat/red-button-sel-bg.png | Bin 0 -> 207 bytes .../themes/windows/compat/slider-h-bar-bg.png | Bin 0 -> 124 bytes .../themes/windows/compat/slider-h-bg.png | Bin 0 -> 135 bytes .../windows/compat/slider-handle-bg.png | Bin 0 -> 156 bytes .../themes/windows/compat/switch-arc1-k.gif | Bin 0 -> 492 bytes .../themes/windows/compat/switch-arc1-l.gif | Bin 0 -> 803 bytes .../themes/windows/compat/switch-arc1-r.gif | Bin 0 -> 691 bytes .../themes/windows/compat/switch-arc2-k.gif | Bin 0 -> 536 bytes .../themes/windows/compat/switch-arc2-l.gif | Bin 0 -> 827 bytes .../themes/windows/compat/switch-arc2-r.gif | Bin 0 -> 728 bytes .../themes/windows/compat/switch-round1-k.gif | Bin 0 -> 511 bytes .../themes/windows/compat/switch-round1-l.gif | Bin 0 -> 851 bytes .../themes/windows/compat/switch-round1-r.gif | Bin 0 -> 936 bytes .../themes/windows/compat/switch-round2-k.gif | Bin 0 -> 566 bytes .../themes/windows/compat/switch-round2-l.gif | Bin 0 -> 883 bytes .../themes/windows/compat/switch-round2-r.gif | Bin 0 -> 974 bytes .../themes/windows/compat/switch-square-k.gif | Bin 0 -> 388 bytes .../themes/windows/compat/switch-square-l.gif | Bin 0 -> 578 bytes .../themes/windows/compat/switch-square-r.gif | Bin 0 -> 686 bytes .../themes/windows/compat/tab-button-bg.png | Bin 0 -> 277 bytes .../windows/compat/tab-orange-button-bg.png | Bin 0 -> 197 bytes .../windows/compat/tab-seg-button-bg.png | Bin 0 -> 157 bytes .../windows/compat/tab-seg-sel-button-bg.png | Bin 0 -> 178 bytes .../windows/compat/tab-sel-button-bg.png | Bin 0 -> 286 bytes .../themes/windows/compat/tab-slim-bar-bg.png | Bin 0 -> 107 bytes .../themes/windows/compat/tab-tall-bar-bg.png | Bin 0 -> 161 bytes .../windows/compat/togglebutton-chk-bg.png | Bin 0 -> 154 bytes .../compat/togglebutton-chk-mark-bg.png | Bin 0 -> 150 bytes .../windows/compat/valuepicker-button-bg.png | Bin 0 -> 246 bytes .../themes/windows/dijit/Calendar-compat.css | 23 + .../themes/windows/dijit/Calendar-compat.less | 2 + .../mobile/themes/windows/dijit/Calendar.css | 108 + .../mobile/themes/windows/dijit/Calendar.less | 2 + .../themes/windows/images/check-disabled.png | Bin 0 -> 1178 bytes .../themes/windows/images/dark/back.png | Bin 0 -> 819 bytes .../themes/windows/images/dark/check.png | Bin 0 -> 1034 bytes .../themes/windows/images/dark/radiobtn.png | Bin 0 -> 1156 bytes .../themes/windows/images/light/back.png | Bin 0 -> 641 bytes .../themes/windows/images/light/check.png | Bin 0 -> 1344 bytes .../themes/windows/images/light/radiobtn.png | Bin 0 -> 1085 bytes .../windows/images/radiobtn-disabled.png | Bin 0 -> 1160 bytes .../mobile/themes/windows/variables.less | 994 + .../mobile/themes/windows/variables_rtl.less | 35 + .../mobile/themes/windows/windows-compat.css | 1216 + .../dojox/mobile/themes/windows/windows.css | 6458 +++ .../mobile/themes/windows/windows_rtl.css | 313 + .../DojoApp/dojo/dojox/mobile/transition.js | 11 + .../mobile/transition.js.uncompressed.js | 23 + .../DojoApp/dojo/dojox/mobile/uacss.js | 6 + .../dojox/mobile/uacss.js.uncompressed.js | 34 + .../DojoApp/dojo/dojox/mobile/viewRegistry.js | 44 + .../mobile/viewRegistry.js.uncompressed.js | 94 + .../webroot/DojoApp/dojo/dojox/mvc.js | 4 + .../DojoApp/dojo/dojox/mvc.js.uncompressed.js | 14 + .../webroot/DojoApp/dojo/dojox/mvc/Bind.js | 19 + .../dojo/dojox/mvc/Bind.js.uncompressed.js | 58 + .../dojo/dojox/mvc/EditModelRefController.js | 32 + .../EditModelRefController.js.uncompressed.js | 204 + .../dojo/dojox/mvc/EditStoreRefController.js | 61 + .../EditStoreRefController.js.uncompressed.js | 153 + .../dojox/mvc/EditStoreRefListController.js | 13 + ...tStoreRefListController.js.uncompressed.js | 64 + .../webroot/DojoApp/dojo/dojox/mvc/Element.js | 17 + .../dojo/dojox/mvc/Element.js.uncompressed.js | 31 + .../DojoApp/dojo/dojox/mvc/Generate.js | 74 + .../dojox/mvc/Generate.js.uncompressed.js | 200 + .../webroot/DojoApp/dojo/dojox/mvc/Group.js | 18 + .../dojo/dojox/mvc/Group.js.uncompressed.js | 43 + .../DojoApp/dojo/dojox/mvc/ListController.js | 123 + .../mvc/ListController.js.uncompressed.js | 229 + .../dojo/dojox/mvc/ModelRefController.js | 87 + .../mvc/ModelRefController.js.uncompressed.js | 198 + .../webroot/DojoApp/dojo/dojox/mvc/Output.js | 38 + .../dojo/dojox/mvc/Output.js.uncompressed.js | 104 + .../webroot/DojoApp/dojo/dojox/mvc/README | 83 + .../webroot/DojoApp/dojo/dojox/mvc/Repeat.js | 117 + .../dojo/dojox/mvc/Repeat.js.uncompressed.js | 218 + .../DojoApp/dojo/dojox/mvc/StatefulArray.js | 105 + .../mvc/StatefulArray.js.uncompressed.js | 203 + .../DojoApp/dojo/dojox/mvc/StatefulModel.js | 157 + .../mvc/StatefulModel.js.uncompressed.js | 498 + .../DojoApp/dojo/dojox/mvc/StatefulSeries.js | 41 + .../mvc/StatefulSeries.js.uncompressed.js | 79 + .../dojo/dojox/mvc/StoreRefController.js | 60 + .../mvc/StoreRefController.js.uncompressed.js | 156 + .../DojoApp/dojo/dojox/mvc/Templated.js | 17 + .../dojox/mvc/Templated.js.uncompressed.js | 34 + .../DojoApp/dojo/dojox/mvc/WidgetList.js | 128 + .../dojox/mvc/WidgetList.js.uncompressed.js | 286 + .../DojoApp/dojo/dojox/mvc/_Container.js | 48 + .../dojox/mvc/_Container.js.uncompressed.js | 114 + .../DojoApp/dojo/dojox/mvc/_Controller.js | 77 + .../dojox/mvc/_Controller.js.uncompressed.js | 131 + .../dojo/dojox/mvc/_DataBindingExtension.js | 19 + .../_DataBindingExtension.js.uncompressed.js | 26 + .../dojo/dojox/mvc/_DataBindingMixin.js | 167 + .../mvc/_DataBindingMixin.js.uncompressed.js | 408 + .../dojo/dojox/mvc/_InlineTemplateMixin.js | 21 + .../_InlineTemplateMixin.js.uncompressed.js | 30 + .../dojo/dojox/mvc/_TextBoxExtensions.js | 21 + .../mvc/_TextBoxExtensions.js.uncompressed.js | 33 + .../dojo/dojox/mvc/_atBindingExtension.js | 7 + .../_atBindingExtension.js.uncompressed.js | 11 + .../DojoApp/dojo/dojox/mvc/_atBindingMixin.js | 175 + .../mvc/_atBindingMixin.js.uncompressed.js | 268 + .../webroot/DojoApp/dojo/dojox/mvc/_base.js | 27 + .../dojo/dojox/mvc/_base.js.uncompressed.js | 67 + .../DojoApp/dojo/dojox/mvc/_patches.js | 3 + .../dojox/mvc/_patches.js.uncompressed.js | 5 + .../webroot/DojoApp/dojo/dojox/mvc/at.js | 20 + .../dojo/dojox/mvc/at.js.uncompressed.js | 134 + .../dojo/dojox/mvc/atBindingExtension.js | 37 + .../mvc/atBindingExtension.js.uncompressed.js | 57 + .../webroot/DojoApp/dojo/dojox/mvc/equals.js | 32 + .../dojo/dojox/mvc/equals.js.uncompressed.js | 81 + .../DojoApp/dojo/dojox/mvc/getPlainValue.js | 26 + .../mvc/getPlainValue.js.uncompressed.js | 72 + .../DojoApp/dojo/dojox/mvc/getStateful.js | 24 + .../dojox/mvc/getStateful.js.uncompressed.js | 67 + .../DojoApp/dojo/dojox/mvc/parserExtension.js | 44 + .../mvc/parserExtension.js.uncompressed.js | 75 + .../webroot/DojoApp/dojo/dojox/mvc/resolve.js | 23 + .../dojo/dojox/mvc/resolve.js.uncompressed.js | 36 + .../webroot/DojoApp/dojo/dojox/mvc/sync.js | 111 + .../dojo/dojox/mvc/sync.js.uncompressed.js | 260 + .../webroot/DojoApp/dojo/dojox/package.json | 27 + .../webroot/DojoApp/dojo/dojox/rails.js | 107 + .../dojo/dojox/rails.js.uncompressed.js | 147 + .../webroot/DojoApp/dojo/dojox/rails/README | 40 + .../dojo/dojox/resources/README.template | 42 + .../DojoApp/dojo/dojox/resources/explore.php | 149 + .../webroot/DojoApp/dojo/dojox/robot/README | 59 + .../DojoApp/dojo/dojox/robot/recorder.js | 322 + .../dojox/robot/recorder.js.uncompressed.js | 505 + .../webroot/DojoApp/dojo/dojox/rpc/Client.js | 13 + .../dojo/dojox/rpc/Client.js.uncompressed.js | 28 + .../webroot/DojoApp/dojo/dojox/rpc/JsonRPC.js | 28 + .../dojo/dojox/rpc/JsonRPC.js.uncompressed.js | 56 + .../DojoApp/dojo/dojox/rpc/JsonRest.js | 338 + .../dojox/rpc/JsonRest.js.uncompressed.js | 458 + .../DojoApp/dojo/dojox/rpc/OfflineRest.js | 191 + .../dojox/rpc/OfflineRest.js.uncompressed.js | 258 + .../DojoApp/dojo/dojox/rpc/ProxiedPath.js | 21 + .../dojox/rpc/ProxiedPath.js.uncompressed.js | 28 + .../webroot/DojoApp/dojo/dojox/rpc/README | 56 + .../webroot/DojoApp/dojo/dojox/rpc/Rest.js | 83 + .../dojo/dojox/rpc/Rest.js.uncompressed.js | 144 + .../dojo/dojox/rpc/SMDLibrary/dojo-api.smd | 30 + .../dojo/dojox/rpc/SMDLibrary/friendfeed.smd | 49 + .../dojo/dojox/rpc/SMDLibrary/geonames.smd | 263 + .../dojo/dojox/rpc/SMDLibrary/google.smd | 129 + .../dojo/dojox/rpc/SMDLibrary/twitter.smd | 35 + .../dojo/dojox/rpc/SMDLibrary/wikipedia.smd | 49 + .../dojo/dojox/rpc/SMDLibrary/yahoo.smd | 519 + .../webroot/DojoApp/dojo/dojox/rpc/Service.js | 209 + .../dojo/dojox/rpc/Service.js.uncompressed.js | 321 + .../webroot/DojoApp/dojo/dojox/secure/DOM.js | 227 + .../dojo/dojox/secure/DOM.js.uncompressed.js | 261 + .../webroot/DojoApp/dojo/dojox/secure/README | 50 + .../DojoApp/dojo/dojox/secure/capability.js | 95 + .../secure/capability.js.uncompressed.js | 131 + .../DojoApp/dojo/dojox/secure/fromJson.js | 135 + .../dojox/secure/fromJson.js.uncompressed.js | 242 + .../DojoApp/dojo/dojox/secure/sandbox.js | 225 + .../dojox/secure/sandbox.js.uncompressed.js | 347 + .../webroot/DojoApp/dojo/dojox/sketch.js | 5 + .../dojo/dojox/sketch.js.uncompressed.js | 19 + .../DojoApp/dojo/dojox/sketch/Anchor.js | 59 + .../dojox/sketch/Anchor.js.uncompressed.js | 69 + .../DojoApp/dojo/dojox/sketch/Annotation.js | 237 + .../sketch/Annotation.js.uncompressed.js | 275 + .../dojox/sketch/DoubleArrowAnnotation.js | 168 + .../DoubleArrowAnnotation.js.uncompressed.js | 232 + .../DojoApp/dojo/dojox/sketch/Figure.js | 468 + .../dojox/sketch/Figure.js.uncompressed.js | 541 + .../dojo/dojox/sketch/LeadAnnotation.js | 141 + .../sketch/LeadAnnotation.js.uncompressed.js | 161 + .../dojox/sketch/PreexistingAnnotation.js | 131 + .../PreexistingAnnotation.js.uncompressed.js | 163 + .../webroot/DojoApp/dojo/dojox/sketch/README | 58 + .../dojox/sketch/SingleArrowAnnotation.js | 175 + .../SingleArrowAnnotation.js.uncompressed.js | 226 + .../DojoApp/dojo/dojox/sketch/Slider.js | 29 + .../dojox/sketch/Slider.js.uncompressed.js | 42 + .../DojoApp/dojo/dojox/sketch/Toolbar.js | 74 + .../dojox/sketch/Toolbar.js.uncompressed.js | 103 + .../dojo/dojox/sketch/UnderlineAnnotation.js | 102 + .../UnderlineAnnotation.js.uncompressed.js | 144 + .../DojoApp/dojo/dojox/sketch/UndoStack.js | 62 + .../dojox/sketch/UndoStack.js.uncompressed.js | 105 + .../DojoApp/dojo/dojox/sketch/_Plugin.js | 42 + .../dojox/sketch/_Plugin.js.uncompressed.js | 79 + .../dojox/sketch/resources/images/icons.gif | Bin 0 -> 600 bytes .../dojo/dojox/sketch/resources/sketch.css | 17 + .../webroot/DojoApp/dojo/dojox/socket.js | 111 + .../dojo/dojox/socket.js.uncompressed.js | 228 + .../webroot/DojoApp/dojo/dojox/socket/README | 15 + .../DojoApp/dojo/dojox/socket/Reconnect.js | 36 + .../dojox/socket/Reconnect.js.uncompressed.js | 59 + .../webroot/DojoApp/dojo/dojox/sql.js | 3 + .../DojoApp/dojo/dojox/sql.js.uncompressed.js | 9 + .../webroot/DojoApp/dojo/dojox/sql/LICENSE | 9 + .../webroot/DojoApp/dojo/dojox/sql/README | 32 + .../webroot/DojoApp/dojo/dojox/sql/_base.js | 323 + .../dojo/dojox/sql/_base.js.uncompressed.js | 552 + .../webroot/DojoApp/dojo/dojox/sql/_crypto.js | 286 + .../dojo/dojox/sql/_crypto.js.uncompressed.js | 445 + .../webroot/DojoApp/dojo/dojox/storage.js | 3 + .../dojo/dojox/storage.js.uncompressed.js | 9 + .../dojox/storage/AirDBStorageProvider.js | 170 + .../AirDBStorageProvider.js.uncompressed.js | 251 + .../AirEncryptedLocalStorageProvider.js | 161 + ...tedLocalStorageProvider.js.uncompressed.js | 220 + .../dojox/storage/AirFileStorageProvider.js | 167 + .../AirFileStorageProvider.js.uncompressed.js | 231 + .../dojox/storage/BehaviorStorageProvider.js | 142 + ...BehaviorStorageProvider.js.uncompressed.js | 240 + .../dojox/storage/CookieStorageProvider.js | 112 + .../CookieStorageProvider.js.uncompressed.js | 206 + .../dojox/storage/FlashStorageProvider.js | 204 + .../FlashStorageProvider.js.uncompressed.js | 348 + .../dojox/storage/GearsStorageProvider.js | 223 + .../GearsStorageProvider.js.uncompressed.js | 386 + .../dojox/storage/LocalStorageProvider.js | 112 + .../LocalStorageProvider.js.uncompressed.js | 208 + .../DojoApp/dojo/dojox/storage/Provider.js | 62 + .../dojox/storage/Provider.js.uncompressed.js | 344 + .../webroot/DojoApp/dojo/dojox/storage/README | 115 + .../DojoApp/dojo/dojox/storage/Storage.as | 402 + .../DojoApp/dojo/dojox/storage/Storage.swf | Bin 0 -> 3325 bytes .../dojox/storage/WhatWGStorageProvider.js | 149 + .../WhatWGStorageProvider.js.uncompressed.js | 276 + .../DojoApp/dojo/dojox/storage/_common.js | 13 + .../dojox/storage/_common.js.uncompressed.js | 23 + .../dojo/dojox/storage/buildFlashStorage.sh | 4 + .../DojoApp/dojo/dojox/storage/manager.js | 110 + .../dojox/storage/manager.js.uncompressed.js | 263 + .../dojo/dojox/storage/storage_dialog.fla | Bin 0 -> 344064 bytes .../dojo/dojox/storage/storage_dialog.swf | Bin 0 -> 26980 bytes .../DojoApp/dojo/dojox/store/LocalDB.js | 4 + .../dojox/store/LocalDB.js.uncompressed.js | 8 + .../webroot/DojoApp/dojo/dojox/store/README | 33 + .../DojoApp/dojo/dojox/store/db/IndexedDB.js | 472 + .../store/db/IndexedDB.js.uncompressed.js | 674 + .../DojoApp/dojo/dojox/store/db/SQL.js | 260 + .../dojox/store/db/SQL.js.uncompressed.js | 321 + .../DojoApp/dojo/dojox/store/db/has.js | 5 + .../dojox/store/db/has.js.uncompressed.js | 6 + .../DojoApp/dojo/dojox/store/priority.js | 90 + .../dojox/store/priority.js.uncompressed.js | 140 + .../DojoApp/dojo/dojox/store/transaction.js | 91 + .../store/transaction.js.uncompressed.js | 133 + .../DojoApp/dojo/dojox/string/BidiComplex.js | 238 + .../string/BidiComplex.js.uncompressed.js | 315 + .../DojoApp/dojo/dojox/string/BidiEngine.js | 736 + .../string/BidiEngine.js.uncompressed.js | 1537 + .../DojoApp/dojo/dojox/string/Builder.js | 84 + .../dojox/string/Builder.js.uncompressed.js | 134 + .../webroot/DojoApp/dojo/dojox/string/README | 39 + .../DojoApp/dojo/dojox/string/sprintf.js | 273 + .../dojox/string/sprintf.js.uncompressed.js | 409 + .../DojoApp/dojo/dojox/string/tokenize.js | 34 + .../dojox/string/tokenize.js.uncompressed.js | 44 + .../DojoApp/dojo/dojox/testing/DocTest.js | 80 + .../dojox/testing/DocTest.js.uncompressed.js | 281 + .../webroot/DojoApp/dojo/dojox/testing/README | 41 + .../webroot/DojoApp/dojo/dojox/timing.js | 4 + .../dojo/dojox/timing.js.uncompressed.js | 10 + .../webroot/DojoApp/dojo/dojox/timing/README | 63 + .../DojoApp/dojo/dojox/timing/Sequence.js | 79 + .../dojox/timing/Sequence.js.uncompressed.js | 156 + .../DojoApp/dojo/dojox/timing/Streamer.js | 56 + .../dojox/timing/Streamer.js.uncompressed.js | 94 + .../DojoApp/dojo/dojox/timing/ThreadPool.js | 132 + .../timing/ThreadPool.js.uncompressed.js | 151 + .../DojoApp/dojo/dojox/timing/_base.js | 35 + .../dojox/timing/_base.js.uncompressed.js | 66 + .../DojoApp/dojo/dojox/timing/doLater.js | 17 + .../dojox/timing/doLater.js.uncompressed.js | 43 + .../DojoApp/dojo/dojox/treemap/DrillDownUp.js | 61 + .../treemap/DrillDownUp.js.uncompressed.js | 125 + .../DojoApp/dojo/dojox/treemap/GroupLabel.js | 26 + .../treemap/GroupLabel.js.uncompressed.js | 42 + .../DojoApp/dojo/dojox/treemap/Keyboard.js | 68 + .../dojox/treemap/Keyboard.js.uncompressed.js | 98 + .../webroot/DojoApp/dojo/dojox/treemap/README | 18 + .../DojoApp/dojo/dojox/treemap/ScaledLabel.js | 41 + .../treemap/ScaledLabel.js.uncompressed.js | 56 + .../DojoApp/dojo/dojox/treemap/TreeMap.js | 446 + .../dojox/treemap/TreeMap.js.uncompressed.js | 807 + .../DojoApp/dojo/dojox/treemap/_utils.js | 187 + .../dojox/treemap/_utils.js.uncompressed.js | 253 + .../dojo/dojox/treemap/themes/DrillDownUp.css | 3 + .../dojo/dojox/treemap/themes/GroupLabel.css | 6 + .../dojox/treemap/themes/MobileTreeMap.css | 29 + .../dojo/dojox/treemap/themes/TreeMap.css | 66 + .../webroot/DojoApp/dojo/dojox/uuid.js | 4 + .../dojo/dojox/uuid.js.uncompressed.js | 11 + .../webroot/DojoApp/dojo/dojox/uuid/README | 43 + .../webroot/DojoApp/dojo/dojox/uuid/Uuid.js | 91 + .../dojo/dojox/uuid/Uuid.js.uncompressed.js | 199 + .../webroot/DojoApp/dojo/dojox/uuid/_base.js | 130 + .../dojo/dojox/uuid/_base.js.uncompressed.js | 248 + .../dojo/dojox/uuid/generateRandomUuid.js | 27 + .../generateRandomUuid.js.uncompressed.js | 56 + .../dojo/dojox/uuid/generateTimeBasedUuid.js | 190 + .../generateTimeBasedUuid.js.uncompressed.js | 290 + .../webroot/DojoApp/dojo/dojox/validate.js | 4 + .../dojo/dojox/validate.js.uncompressed.js | 12 + .../DojoApp/dojo/dojox/validate/README | 62 + .../DojoApp/dojo/dojox/validate/_base.js | 58 + .../dojox/validate/_base.js.uncompressed.js | 138 + .../webroot/DojoApp/dojo/dojox/validate/br.js | 203 + .../dojo/dojox/validate/br.js.uncompressed.js | 284 + .../webroot/DojoApp/dojo/dojox/validate/ca.js | 17 + .../dojo/dojox/validate/ca.js.uncompressed.js | 54 + .../DojoApp/dojo/dojox/validate/check.js | 240 + .../dojox/validate/check.js.uncompressed.js | 349 + .../DojoApp/dojo/dojox/validate/creditCard.js | 40 + .../validate/creditCard.js.uncompressed.js | 115 + .../DojoApp/dojo/dojox/validate/isbn.js | 33 + .../dojox/validate/isbn.js.uncompressed.js | 41 + .../DojoApp/dojo/dojox/validate/regexp.js | 155 + .../dojox/validate/regexp.js.uncompressed.js | 289 + .../webroot/DojoApp/dojo/dojox/validate/us.js | 21 + .../dojo/dojox/validate/us.js.uncompressed.js | 72 + .../DojoApp/dojo/dojox/validate/web.js | 32 + .../dojox/validate/web.js.uncompressed.js | 90 + .../DojoApp/dojo/dojox/widget/AnalogGauge.js | 8 + .../widget/AnalogGauge.js.uncompressed.js | 11 + .../DojoApp/dojo/dojox/widget/AutoRotator.js | 97 + .../widget/AutoRotator.js.uncompressed.js | 220 + .../DojoApp/dojo/dojox/widget/BarGauge.js | 8 + .../dojox/widget/BarGauge.js.uncompressed.js | 10 + .../DojoApp/dojo/dojox/widget/Calendar.js | 5 + .../dojox/widget/Calendar.js.uncompressed.js | 15 + .../dojo/dojox/widget/Calendar/Calendar.css | 265 + .../dojo/dojox/widget/Calendar/Calendar.html | 24 + .../dojox/widget/Calendar/CalendarDay.html | 23 + .../dojox/widget/Calendar/CalendarMonth.html | 12 + .../widget/Calendar/CalendarMonthYear.html | 31 + .../dojox/widget/Calendar/CalendarYear.html | 12 + .../dojo/dojox/widget/Calendar2Pane.js | 4 + .../widget/Calendar2Pane.js.uncompressed.js | 11 + .../dojo/dojox/widget/Calendar3Pane.js | 4 + .../widget/Calendar3Pane.js.uncompressed.js | 12 + .../dojo/dojox/widget/CalendarFisheye.js | 4 + .../widget/CalendarFisheye.js.uncompressed.js | 11 + .../DojoApp/dojo/dojox/widget/CalendarFx.js | 5 + .../widget/CalendarFx.js.uncompressed.js | 13 + .../dojo/dojox/widget/CalendarViews.js | 5 + .../widget/CalendarViews.js.uncompressed.js | 6 + .../DojoApp/dojo/dojox/widget/ColorPicker.js | 265 + .../widget/ColorPicker.js.uncompressed.js | 579 + .../dojox/widget/ColorPicker/ColorPicker.css | 102 + .../dojox/widget/ColorPicker/ColorPicker.html | 72 + .../dojox/widget/ColorPicker/images/hue.png | Bin 0 -> 1991 bytes .../widget/ColorPicker/images/hueHandle.png | Bin 0 -> 280 bytes .../ColorPicker/images/hueHandleA11y.png | Bin 0 -> 199 bytes .../ColorPicker/images/pickerPointer.png | Bin 0 -> 228 bytes .../widget/ColorPicker/images/underlay.png | Bin 0 -> 10788 bytes .../dojo/dojox/widget/DailyCalendar.js | 8 + .../widget/DailyCalendar.js.uncompressed.js | 15 + .../dojo/dojox/widget/DataPresentation.js | 413 + .../DataPresentation.js.uncompressed.js | 897 + .../DojoApp/dojo/dojox/widget/Dialog.js | 76 + .../dojox/widget/Dialog.js.uncompressed.js | 253 + .../dojo/dojox/widget/Dialog/Dialog.css | 95 + .../dojo/dojox/widget/Dialog/Dialog.html | 11 + .../Dialog/images/dialogCloseButton.gif | Bin 0 -> 1408 bytes .../Dialog/images/dialogCloseButton.png | Bin 0 -> 1357 bytes .../DojoApp/dojo/dojox/widget/DialogSimple.js | 4 + .../widget/DialogSimple.js.uncompressed.js | 12 + .../DojoApp/dojo/dojox/widget/DocTester.js | 63 + .../dojox/widget/DocTester.js.uncompressed.js | 92 + .../dojo/dojox/widget/DocTester/DocTester.css | 30 + .../dojox/widget/DocTester/DocTester.html | 10 + .../dojo/dojox/widget/DynamicTooltip.js | 37 + .../widget/DynamicTooltip.js.uncompressed.js | 111 + .../DojoApp/dojo/dojox/widget/FeedPortlet.js | 225 + .../widget/FeedPortlet.js.uncompressed.js | 444 + .../DojoApp/dojo/dojox/widget/FilePicker.js | 153 + .../widget/FilePicker.js.uncompressed.js | 233 + .../dojox/widget/FilePicker/FilePicker.css | 207 + .../widget/FilePicker/_FileInfoPane.html | 19 + .../FilePicker/images/nihiloFileIcons.gif | Bin 0 -> 986 bytes .../FilePicker/images/soriaFileIcons.gif | Bin 0 -> 986 bytes .../FilePicker/images/tundraFileIcons.gif | Bin 0 -> 986 bytes .../DojoApp/dojo/dojox/widget/FisheyeList.js | 332 + .../widget/FisheyeList.js.uncompressed.js | 594 + .../dojox/widget/FisheyeList/FisheyeList.css | 24 + .../dojo/dojox/widget/FisheyeListItem.js | 51 + .../widget/FisheyeListItem.js.uncompressed.js | 104 + .../DojoApp/dojo/dojox/widget/FisheyeLite.js | 33 + .../widget/FisheyeLite.js.uncompressed.js | 166 + .../DojoApp/dojo/dojox/widget/Iterator.js | 76 + .../dojox/widget/Iterator.js.uncompressed.js | 177 + .../DojoApp/dojo/dojox/widget/Loader.js | 42 + .../dojox/widget/Loader.js.uncompressed.js | 116 + .../dojo/dojox/widget/Loader/Loader.css | 24 + .../dojox/widget/Loader/icons/loading.gif | Bin 0 -> 751 bytes .../dojox/widget/MonthAndYearlyCalendar.js | 4 + .../MonthAndYearlyCalendar.js.uncompressed.js | 10 + .../dojo/dojox/widget/MonthlyCalendar.js | 8 + .../widget/MonthlyCalendar.js.uncompressed.js | 15 + .../dojo/dojox/widget/MultiSelectCalendar.js | 547 + .../MultiSelectCalendar.js.uncompressed.js | 983 + .../MultiSelectCalendar.html | 38 + .../DojoApp/dojo/dojox/widget/Pager.js | 360 + .../dojox/widget/Pager.js.uncompressed.js | 573 + .../DojoApp/dojo/dojox/widget/Pager/Pager.css | 73 + .../dojo/dojox/widget/Pager/Pager.html | 13 + .../dojo/dojox/widget/Pager/images/hNext.png | Bin 0 -> 496 bytes .../dojox/widget/Pager/images/hPrevious.png | Bin 0 -> 502 bytes .../dojox/widget/Pager/images/pageActive.png | Bin 0 -> 276 bytes .../widget/Pager/images/pageInactive.png | Bin 0 -> 288 bytes .../dojo/dojox/widget/Pager/images/vNext.png | Bin 0 -> 500 bytes .../dojox/widget/Pager/images/vPrevious.png | Bin 0 -> 512 bytes .../DojoApp/dojo/dojox/widget/PagerItem.js | 9 + .../dojox/widget/PagerItem.js.uncompressed.js | 23 + .../dojo/dojox/widget/PlaceholderMenuItem.js | 68 + .../PlaceholderMenuItem.js.uncompressed.js | 110 + .../DojoApp/dojo/dojox/widget/Portlet.js | 189 + .../dojox/widget/Portlet.js.uncompressed.js | 349 + .../dojo/dojox/widget/Portlet/Portlet.css | 150 + .../dojox/widget/Portlet/images/icons.gif | Bin 0 -> 896 bytes .../dojox/widget/Portlet/images/icons.png | Bin 0 -> 593 bytes .../dojox/widget/PortletDialogSettings.js | 19 + .../PortletDialogSettings.js.uncompressed.js | 48 + .../dojo/dojox/widget/PortletSettings.js | 20 + .../widget/PortletSettings.js.uncompressed.js | 72 + .../webroot/DojoApp/dojo/dojox/widget/README | 186 + .../DojoApp/dojo/dojox/widget/Roller.js | 76 + .../dojox/widget/Roller.js.uncompressed.js | 237 + .../DojoApp/dojo/dojox/widget/RollingList.js | 890 + .../widget/RollingList.js.uncompressed.js | 1260 + .../dojox/widget/RollingList/RollingList.css | 140 + .../dojox/widget/RollingList/RollingList.html | 10 + .../DojoApp/dojo/dojox/widget/Rotator.js | 146 + .../dojox/widget/Rotator.js.uncompressed.js | 386 + .../DojoApp/dojo/dojox/widget/Selection.js | 121 + .../dojox/widget/Selection.js.uncompressed.js | 220 + .../DojoApp/dojo/dojox/widget/SortList.js | 79 + .../dojox/widget/SortList.js.uncompressed.js | 163 + .../dojo/dojox/widget/SortList/SortList.css | 57 + .../dojo/dojox/widget/SortList/SortList.html | 9 + .../DojoApp/dojo/dojox/widget/Standby.js | 353 + .../dojox/widget/Standby.js.uncompressed.js | 758 + .../dojox/widget/Standby/images/loading.gif | Bin 0 -> 4178 bytes .../DojoApp/dojo/dojox/widget/TitleGroup.js | 33 + .../widget/TitleGroup.js.uncompressed.js | 84 + .../dojox/widget/TitleGroup/TitleGroup.css | 22 + .../DojoApp/dojo/dojox/widget/Toaster.js | 170 + .../dojox/widget/Toaster.js.uncompressed.js | 296 + .../dojo/dojox/widget/Toaster/Toaster.css | 34 + .../DojoApp/dojo/dojox/widget/UpgradeBar.js | 90 + .../widget/UpgradeBar.js.uncompressed.js | 243 + .../dojox/widget/UpgradeBar/UpgradeBar.css | 61 + .../dojox/widget/UpgradeBar/UpgradeBar.html | 5 + .../DojoApp/dojo/dojox/widget/Wizard.js | 62 + .../dojox/widget/Wizard.js.uncompressed.js | 139 + .../dojo/dojox/widget/Wizard/Wizard.css | 48 + .../dojo/dojox/widget/Wizard/Wizard.html | 9 + .../DojoApp/dojo/dojox/widget/WizardPane.js | 39 + .../widget/WizardPane.js.uncompressed.js | 76 + .../dojo/dojox/widget/YearlyCalendar.js | 8 + .../widget/YearlyCalendar.js.uncompressed.js | 15 + .../dojo/dojox/widget/_CalendarBase.js | 199 + .../widget/_CalendarBase.js.uncompressed.js | 387 + .../DojoApp/dojo/dojox/widget/_CalendarDay.js | 6 + .../widget/_CalendarDay.js.uncompressed.js | 15 + .../dojo/dojox/widget/_CalendarDayView.js | 106 + .../_CalendarDayView.js.uncompressed.js | 190 + .../dojo/dojox/widget/_CalendarMonth.js | 6 + .../widget/_CalendarMonth.js.uncompressed.js | 16 + .../dojo/dojox/widget/_CalendarMonthView.js | 26 + .../_CalendarMonthView.js.uncompressed.js | 71 + .../dojo/dojox/widget/_CalendarMonthYear.js | 6 + .../_CalendarMonthYear.js.uncompressed.js | 16 + .../dojox/widget/_CalendarMonthYearView.js | 188 + .../_CalendarMonthYearView.js.uncompressed.js | 279 + .../dojo/dojox/widget/_CalendarView.js | 30 + .../widget/_CalendarView.js.uncompressed.js | 80 + .../dojo/dojox/widget/_CalendarYear.js | 6 + .../widget/_CalendarYear.js.uncompressed.js | 19 + .../dojo/dojox/widget/_CalendarYearView.js | 23 + .../_CalendarYearView.js.uncompressed.js | 54 + .../DojoApp/dojo/dojox/widget/_FisheyeFX.js | 8 + .../widget/_FisheyeFX.js.uncompressed.js | 23 + .../dojo/dojox/widget/_Invalidating.js | 28 + .../widget/_Invalidating.js.uncompressed.js | 62 + .../dojox/widget/gauge/AnalogArcIndicator.js | 6 + .../AnalogArcIndicator.js.uncompressed.js | 8 + .../widget/gauge/AnalogArrowIndicator.js | 6 + .../AnalogArrowIndicator.js.uncompressed.js | 8 + .../widget/gauge/AnalogNeedleIndicator.js | 6 + .../AnalogNeedleIndicator.js.uncompressed.js | 8 + .../dojo/dojox/widget/gauge/BarIndicator.js | 6 + .../gauge/BarIndicator.js.uncompressed.js | 8 + .../DojoApp/dojo/dojox/widget/gauge/_Gauge.js | 8 + .../widget/gauge/_Gauge.js.uncompressed.js | 10 + .../dojo/dojox/widget/nls/ColorPicker.js | 2 + .../widget/nls/ColorPicker.js.uncompressed.js | 51 + .../dojo/dojox/widget/nls/FilePicker.js | 2 + .../widget/nls/FilePicker.js.uncompressed.js | 44 + .../DojoApp/dojo/dojox/widget/nls/Wizard.js | 2 + .../widget/nls/Wizard.js.uncompressed.js | 44 + .../dojo/dojox/widget/nls/ar/ColorPicker.js | 2 + .../nls/ar/ColorPicker.js.uncompressed.js | 6 + .../dojo/dojox/widget/nls/ar/FilePicker.js | 2 + .../nls/ar/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/ar/Wizard.js | 2 + .../widget/nls/ar/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/az/ColorPicker.js | 2 + .../nls/az/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/az/FilePicker.js | 2 + .../nls/az/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/az/Wizard.js | 2 + .../widget/nls/az/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/bg/ColorPicker.js | 2 + .../nls/bg/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/bg/FilePicker.js | 2 + .../nls/bg/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/bg/Wizard.js | 2 + .../widget/nls/bg/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/ca/ColorPicker.js | 2 + .../nls/ca/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/ca/FilePicker.js | 2 + .../nls/ca/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/ca/Wizard.js | 2 + .../widget/nls/ca/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/cs/ColorPicker.js | 2 + .../nls/cs/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/cs/FilePicker.js | 2 + .../nls/cs/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/cs/Wizard.js | 2 + .../widget/nls/cs/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/da/ColorPicker.js | 2 + .../nls/da/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/da/FilePicker.js | 2 + .../nls/da/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/da/Wizard.js | 2 + .../widget/nls/da/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/de/ColorPicker.js | 2 + .../nls/de/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/de/FilePicker.js | 2 + .../nls/de/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/de/Wizard.js | 2 + .../widget/nls/de/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/el/ColorPicker.js | 2 + .../nls/el/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/el/FilePicker.js | 2 + .../nls/el/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/el/Wizard.js | 2 + .../widget/nls/el/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/es/ColorPicker.js | 2 + .../nls/es/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/es/FilePicker.js | 2 + .../nls/es/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/es/Wizard.js | 2 + .../widget/nls/es/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/fi/ColorPicker.js | 2 + .../nls/fi/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/fi/FilePicker.js | 2 + .../nls/fi/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/fi/Wizard.js | 2 + .../widget/nls/fi/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/fr/ColorPicker.js | 2 + .../nls/fr/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/fr/FilePicker.js | 2 + .../nls/fr/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/fr/Wizard.js | 2 + .../widget/nls/fr/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/he/ColorPicker.js | 2 + .../nls/he/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/he/FilePicker.js | 2 + .../nls/he/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/he/Wizard.js | 2 + .../widget/nls/he/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/hr/ColorPicker.js | 2 + .../nls/hr/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/hr/FilePicker.js | 2 + .../nls/hr/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/hr/Wizard.js | 2 + .../widget/nls/hr/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/hu/ColorPicker.js | 2 + .../nls/hu/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/hu/FilePicker.js | 2 + .../nls/hu/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/hu/Wizard.js | 2 + .../widget/nls/hu/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/id/ColorPicker.js | 2 + .../nls/id/ColorPicker.js.uncompressed.js | 15 + .../dojo/dojox/widget/nls/id/FilePicker.js | 2 + .../nls/id/FilePicker.js.uncompressed.js | 8 + .../dojo/dojox/widget/nls/id/Wizard.js | 2 + .../widget/nls/id/Wizard.js.uncompressed.js | 8 + .../dojo/dojox/widget/nls/it/ColorPicker.js | 2 + .../nls/it/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/it/FilePicker.js | 2 + .../nls/it/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/it/Wizard.js | 2 + .../widget/nls/it/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/ja/ColorPicker.js | 2 + .../nls/ja/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/ja/FilePicker.js | 2 + .../nls/ja/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/ja/Wizard.js | 2 + .../widget/nls/ja/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/kk/ColorPicker.js | 2 + .../nls/kk/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/kk/FilePicker.js | 2 + .../nls/kk/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/kk/Wizard.js | 2 + .../widget/nls/kk/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/ko/ColorPicker.js | 2 + .../nls/ko/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/ko/FilePicker.js | 2 + .../nls/ko/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/ko/Wizard.js | 2 + .../widget/nls/ko/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/nb/ColorPicker.js | 2 + .../nls/nb/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/nb/FilePicker.js | 2 + .../nls/nb/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/nb/Wizard.js | 2 + .../widget/nls/nb/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/nl/ColorPicker.js | 2 + .../nls/nl/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/nl/FilePicker.js | 2 + .../nls/nl/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/nl/Wizard.js | 2 + .../widget/nls/nl/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/pl/ColorPicker.js | 2 + .../nls/pl/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/pl/FilePicker.js | 2 + .../nls/pl/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/pl/Wizard.js | 2 + .../widget/nls/pl/Wizard.js.uncompressed.js | 7 + .../dojox/widget/nls/pt-pt/ColorPicker.js | 2 + .../nls/pt-pt/ColorPicker.js.uncompressed.js | 11 + .../dojo/dojox/widget/nls/pt-pt/FilePicker.js | 2 + .../nls/pt-pt/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/pt-pt/Wizard.js | 2 + .../nls/pt-pt/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/pt/ColorPicker.js | 2 + .../nls/pt/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/pt/FilePicker.js | 2 + .../nls/pt/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/pt/Wizard.js | 2 + .../widget/nls/pt/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/ro/ColorPicker.js | 2 + .../nls/ro/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/ro/FilePicker.js | 2 + .../nls/ro/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/ro/Wizard.js | 2 + .../widget/nls/ro/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/ru/ColorPicker.js | 2 + .../nls/ru/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/ru/FilePicker.js | 2 + .../nls/ru/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/ru/Wizard.js | 2 + .../widget/nls/ru/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/sk/ColorPicker.js | 2 + .../nls/sk/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/sk/FilePicker.js | 2 + .../nls/sk/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/sk/Wizard.js | 2 + .../widget/nls/sk/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/sl/ColorPicker.js | 2 + .../nls/sl/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/sl/FilePicker.js | 2 + .../nls/sl/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/sl/Wizard.js | 2 + .../widget/nls/sl/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/sv/ColorPicker.js | 2 + .../nls/sv/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/sv/FilePicker.js | 2 + .../nls/sv/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/sv/Wizard.js | 2 + .../widget/nls/sv/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/th/ColorPicker.js | 2 + .../nls/th/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/th/FilePicker.js | 2 + .../nls/th/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/th/Wizard.js | 2 + .../widget/nls/th/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/tr/ColorPicker.js | 2 + .../nls/tr/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/tr/FilePicker.js | 2 + .../nls/tr/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/tr/Wizard.js | 2 + .../widget/nls/tr/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/uk/ColorPicker.js | 2 + .../nls/uk/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/uk/FilePicker.js | 2 + .../nls/uk/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/uk/Wizard.js | 2 + .../widget/nls/uk/Wizard.js.uncompressed.js | 7 + .../dojox/widget/nls/zh-tw/ColorPicker.js | 2 + .../nls/zh-tw/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/zh-tw/FilePicker.js | 2 + .../nls/zh-tw/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/zh-tw/Wizard.js | 2 + .../nls/zh-tw/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/zh/ColorPicker.js | 2 + .../nls/zh/ColorPicker.js.uncompressed.js | 14 + .../dojo/dojox/widget/nls/zh/FilePicker.js | 2 + .../nls/zh/FilePicker.js.uncompressed.js | 7 + .../dojo/dojox/widget/nls/zh/Wizard.js | 2 + .../widget/nls/zh/Wizard.js.uncompressed.js | 7 + .../dojo/dojox/widget/rotator/Controller.js | 77 + .../rotator/Controller.js.uncompressed.js | 193 + .../DojoApp/dojo/dojox/widget/rotator/Fade.js | 16 + .../widget/rotator/Fade.js.uncompressed.js | 46 + .../DojoApp/dojo/dojox/widget/rotator/Pan.js | 66 + .../widget/rotator/Pan.js.uncompressed.js | 215 + .../dojo/dojox/widget/rotator/PanFade.js | 67 + .../widget/rotator/PanFade.js.uncompressed.js | 219 + .../dojo/dojox/widget/rotator/Slide.js | 24 + .../widget/rotator/Slide.js.uncompressed.js | 67 + .../widget/rotator/ThumbnailController.js | 38 + .../ThumbnailController.js.uncompressed.js | 101 + .../DojoApp/dojo/dojox/widget/rotator/Wipe.js | 44 + .../widget/rotator/Wipe.js.uncompressed.js | 93 + .../webroot/DojoApp/dojo/dojox/wire.js | 3 + .../dojo/dojox/wire.js.uncompressed.js | 9 + .../DojoApp/dojo/dojox/wire/CompositeWire.js | 37 + .../wire/CompositeWire.js.uncompressed.js | 103 + .../DojoApp/dojo/dojox/wire/DataWire.js | 77 + .../dojox/wire/DataWire.js.uncompressed.js | 178 + .../webroot/DojoApp/dojo/dojox/wire/README | 54 + .../DojoApp/dojo/dojox/wire/TableAdapter.js | 30 + .../wire/TableAdapter.js.uncompressed.js | 88 + .../DojoApp/dojo/dojox/wire/TextAdapter.js | 33 + .../dojox/wire/TextAdapter.js.uncompressed.js | 87 + .../DojoApp/dojo/dojox/wire/TreeAdapter.js | 81 + .../dojox/wire/TreeAdapter.js.uncompressed.js | 188 + .../webroot/DojoApp/dojo/dojox/wire/Wire.js | 244 + .../dojo/dojox/wire/Wire.js.uncompressed.js | 382 + .../DojoApp/dojo/dojox/wire/XmlWire.js | 128 + .../dojox/wire/XmlWire.js.uncompressed.js | 246 + .../webroot/DojoApp/dojo/dojox/wire/_base.js | 95 + .../dojo/dojox/wire/_base.js.uncompressed.js | 196 + .../DojoApp/dojo/dojox/wire/ml/Action.js | 105 + .../dojox/wire/ml/Action.js.uncompressed.js | 224 + .../DojoApp/dojo/dojox/wire/ml/Data.js | 73 + .../dojox/wire/ml/Data.js.uncompressed.js | 146 + .../DojoApp/dojo/dojox/wire/ml/DataStore.js | 38 + .../wire/ml/DataStore.js.uncompressed.js | 116 + .../DojoApp/dojo/dojox/wire/ml/Invocation.js | 102 + .../wire/ml/Invocation.js.uncompressed.js | 177 + .../DojoApp/dojo/dojox/wire/ml/JsonHandler.js | 21 + .../wire/ml/JsonHandler.js.uncompressed.js | 46 + .../DojoApp/dojo/dojox/wire/ml/RestHandler.js | 74 + .../wire/ml/RestHandler.js.uncompressed.js | 147 + .../DojoApp/dojo/dojox/wire/ml/Service.js | 50 + .../dojox/wire/ml/Service.js.uncompressed.js | 112 + .../DojoApp/dojo/dojox/wire/ml/Transfer.js | 111 + .../dojox/wire/ml/Transfer.js.uncompressed.js | 366 + .../DojoApp/dojo/dojox/wire/ml/XmlHandler.js | 36 + .../wire/ml/XmlHandler.js.uncompressed.js | 68 + .../DojoApp/dojo/dojox/wire/ml/util.js | 206 + .../dojox/wire/ml/util.js.uncompressed.js | 299 + .../DojoApp/dojo/dojox/xml/DomParser.js | 319 + .../dojox/xml/DomParser.js.uncompressed.js | 395 + .../webroot/DojoApp/dojo/dojox/xml/README | 40 + .../webroot/DojoApp/dojo/dojox/xml/Script.js | 8 + .../dojo/dojox/xml/Script.js.uncompressed.js | 20 + .../webroot/DojoApp/dojo/dojox/xml/parser.js | 131 + .../dojo/dojox/xml/parser.js.uncompressed.js | 193 + .../DojoApp/dojo/dojox/xml/widgetParser.js | 61 + .../dojox/xml/widgetParser.js.uncompressed.js | 178 + .../DojoApp/dojo/dojox/xmpp/ChatService.js | 83 + .../dojox/xmpp/ChatService.js.uncompressed.js | 145 + .../dojo/dojox/xmpp/PresenceService.js | 156 + .../xmpp/PresenceService.js.uncompressed.js | 311 + .../webroot/DojoApp/dojo/dojox/xmpp/README | 55 + .../DojoApp/dojo/dojox/xmpp/RosterService.js | 203 + .../xmpp/RosterService.js.uncompressed.js | 272 + .../dojo/dojox/xmpp/TransportSession.js | 294 + .../xmpp/TransportSession.js.uncompressed.js | 511 + .../DojoApp/dojo/dojox/xmpp/UserService.js | 69 + .../dojox/xmpp/UserService.js.uncompressed.js | 97 + .../webroot/DojoApp/dojo/dojox/xmpp/bosh.js | 125 + .../dojo/dojox/xmpp/bosh.js.uncompressed.js | 250 + .../webroot/DojoApp/dojo/dojox/xmpp/sasl.js | 112 + .../dojo/dojox/xmpp/sasl.js.uncompressed.js | 186 + .../webroot/DojoApp/dojo/dojox/xmpp/util.js | 129 + .../dojo/dojox/xmpp/util.js.uncompressed.js | 151 + .../dojo/dojox/xmpp/widget/ChatSession.js | 23 + .../widget/ChatSession.js.uncompressed.js | 45 + .../xmpp/widget/templates/ChatSession.html | 5 + .../DojoApp/dojo/dojox/xmpp/xmppSession.js | 550 + .../dojox/xmpp/xmppSession.js.uncompressed.js | 857 + .../webroot/DojoApp/hello.html | 79 + src/hos_deps/cmake/Modules/FindPoco.cmake | 228 +- .../cmake/Modules/Findlibhttpserver.cmake | 23 - src/hos_deps/dependencies_install.sh | 9 +- src/hos_deps/scripts/environment.setup | 4 + src/hos_deps/scripts/libgcrypt_install.sh | 36 - src/hos_deps/scripts/libhttpserver_install.sh | 38 - ...bmicrohttpd_install.sh => poco_install.sh} | 14 +- 9817 files changed, 977868 insertions(+), 312 deletions(-) create mode 100644 src/hos_cosgi_testwebapp/Notes.txt create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/build-report.txt create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/BackgroundIframe.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/BackgroundIframe.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/CONTRIBUTING.md create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Calendar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Calendar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/CalendarLite.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/CalendarLite.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/CheckedMenuItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/CheckedMenuItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/ColorPalette.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/ColorPalette.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/ConfirmDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/ConfirmDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/ConfirmTooltipDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/ConfirmTooltipDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Declaration.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Declaration.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Destroyable.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Destroyable.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Dialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Dialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/DialogUnderlay.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/DialogUnderlay.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/DropDownMenu.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/DropDownMenu.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Editor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Editor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Fieldset.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Fieldset.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/InlineEditBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/InlineEditBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Menu.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Menu.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/MenuBar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/MenuBar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/MenuBarItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/MenuBarItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/MenuItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/MenuItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/MenuSeparator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/MenuSeparator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/PopupMenuBarItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/PopupMenuBarItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/PopupMenuItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/PopupMenuItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/ProgressBar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/ProgressBar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/README.md create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/RadioMenuItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/RadioMenuItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/TitlePane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/TitlePane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Toolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Toolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/ToolbarSeparator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/ToolbarSeparator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Tooltip.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Tooltip.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/TooltipDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/TooltipDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Tree.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Tree.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Viewport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/Viewport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/WidgetSet.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/WidgetSet.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_AttachMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_AttachMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_BidiMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_BidiMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_Calendar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_Calendar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_ConfirmDialogMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_ConfirmDialogMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_Contained.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_Contained.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_Container.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_Container.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_CssStateMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_CssStateMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_DialogMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_DialogMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_FocusMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_FocusMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_HasDropDown.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_HasDropDown.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_KeyNavContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_KeyNavContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_KeyNavMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_KeyNavMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_MenuBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_MenuBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_OnDijitClickMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_OnDijitClickMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_PaletteMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_PaletteMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_Templated.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_Templated.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_TemplatedMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_TemplatedMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_TimePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_TimePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_Widget.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_Widget.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_WidgetBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_WidgetBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_WidgetsInTemplateMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_WidgetsInTemplateMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/focus.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/focus.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/manager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/manager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/place.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/place.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/popup.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/popup.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/scroll.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/scroll.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/sniff.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/sniff.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/typematic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/typematic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/wai.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/wai.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/window.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_base/window.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/RichText.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/RichText.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/_Plugin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/_Plugin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/html.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/html.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ar/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ar/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ar/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ar/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ar/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ar/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/az/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/az/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/az/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/az/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/az/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/az/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/bg/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/bg/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/bg/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/bg/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/bg/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/bg/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ca/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ca/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ca/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ca/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ca/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ca/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/cs/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/cs/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/cs/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/cs/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/cs/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/cs/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/da/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/da/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/da/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/da/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/da/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/da/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/de/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/de/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/de/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/de/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/de/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/de/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/el/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/el/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/el/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/el/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/el/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/el/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/es/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/es/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/es/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/es/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/es/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/es/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/fi/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/fi/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/fi/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/fi/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/fi/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/fi/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/fr/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/fr/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/fr/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/fr/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/fr/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/fr/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/he/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/he/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/he/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/he/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/he/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/he/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/hr/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/hr/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/hr/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/hr/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/hr/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/hr/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/hu/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/hu/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/hu/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/hu/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/hu/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/hu/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/id/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/id/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/id/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/id/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/id/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/id/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/it/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/it/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/it/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/it/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/it/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/it/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ja/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ja/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ja/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ja/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ja/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ja/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/kk/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/kk/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/kk/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/kk/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/kk/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/kk/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ko/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ko/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ko/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ko/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ko/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ko/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/nb/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/nb/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/nb/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/nb/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/nb/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/nb/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/nl/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/nl/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/nl/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/nl/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/nl/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/nl/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pl/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pl/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pl/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pl/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pl/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pl/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pt-pt/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pt-pt/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pt-pt/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pt-pt/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pt-pt/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pt-pt/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pt/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pt/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pt/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pt/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pt/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/pt/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ro/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ro/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ro/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ro/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ro/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ro/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ru/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ru/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ru/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ru/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ru/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/ru/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sk/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sk/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sk/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sk/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sk/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sk/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sl/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sl/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sl/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sl/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sl/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sl/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sv/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sv/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sv/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sv/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sv/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/sv/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/th/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/th/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/th/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/th/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/th/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/th/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/tr/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/tr/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/tr/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/tr/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/tr/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/tr/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/uk/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/uk/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/uk/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/uk/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/uk/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/uk/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/zh-tw/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/zh-tw/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/zh-tw/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/zh-tw/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/zh-tw/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/zh-tw/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/zh/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/zh/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/zh/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/zh/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/zh/commands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/nls/zh/commands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/AlwaysShowToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/AlwaysShowToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/EnterKeyHandling.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/EnterKeyHandling.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/FontChoice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/FontChoice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/FullScreen.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/FullScreen.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/LinkDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/LinkDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/NewPage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/NewPage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/Print.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/Print.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/TabIndent.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/TabIndent.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/ToggleDir.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/ToggleDir.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/ViewSource.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/plugins/ViewSource.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/range.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/range.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/selection.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_editor/selection.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_tree/dndSource.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/_tree/dndSource.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/a11y.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/a11y.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/a11yclick.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/a11yclick.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/dijit-all.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/dijit-all.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/dijit.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/dijit.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/dijit.profile.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/focus.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/focus.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/Button.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/Button.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/CheckBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/CheckBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/ComboBoxMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/ComboBoxMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/ComboButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/ComboButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/CurrencyTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/CurrencyTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/DataList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/DataList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/DateTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/DateTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/DropDownButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/DropDownButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/FilteringSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/FilteringSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/Form.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/Form.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/HorizontalRule.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/HorizontalRule.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/HorizontalRuleLabels.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/HorizontalRuleLabels.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/HorizontalSlider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/HorizontalSlider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/MappedTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/MappedTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/MultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/MultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/NumberSpinner.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/NumberSpinner.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/NumberTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/NumberTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/RadioButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/RadioButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/RangeBoundTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/RangeBoundTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/Select.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/Select.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/SimpleTextarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/SimpleTextarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/Slider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/Slider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/TextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/TextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/TimeTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/TimeTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/ToggleButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/ToggleButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/ValidationTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/ValidationTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/VerticalRule.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/VerticalRule.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/VerticalRuleLabels.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/VerticalRuleLabels.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/VerticalSlider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/VerticalSlider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_AutoCompleterMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_AutoCompleterMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ButtonMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ButtonMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_CheckBoxMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_CheckBoxMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ComboBoxMenu.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ComboBoxMenu.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ComboBoxMenuMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ComboBoxMenuMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_DateTimeTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_DateTimeTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ExpandingTextAreaMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ExpandingTextAreaMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_FormMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_FormMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_FormSelectWidget.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_FormSelectWidget.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_FormValueMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_FormValueMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_FormValueWidget.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_FormValueWidget.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_FormWidget.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_FormWidget.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_FormWidgetMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_FormWidgetMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ListBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ListBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ListMouseMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ListMouseMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_RadioButtonMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_RadioButtonMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_SearchMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_SearchMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_Spinner.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_Spinner.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_TextBoxMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_TextBoxMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ToggleButtonMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/_ToggleButtonMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ar/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ar/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ar/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ar/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ar/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ar/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/az/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/az/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/az/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/az/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/az/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/az/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/bg/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/bg/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/bg/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/bg/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/bg/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/bg/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ca/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ca/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ca/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ca/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ca/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ca/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/cs/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/cs/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/cs/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/cs/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/cs/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/cs/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/da/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/da/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/da/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/da/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/da/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/da/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/de/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/de/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/de/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/de/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/de/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/de/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/el/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/el/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/el/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/el/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/el/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/el/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/es/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/es/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/es/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/es/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/es/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/es/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/fi/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/fi/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/fi/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/fi/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/fi/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/fi/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/fr/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/fr/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/fr/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/fr/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/fr/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/fr/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/he/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/he/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/he/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/he/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/he/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/he/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/hr/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/hr/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/hr/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/hr/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/hr/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/hr/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/hu/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/hu/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/hu/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/hu/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/hu/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/hu/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/id/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/id/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/id/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/id/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/id/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/id/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/it/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/it/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/it/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/it/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/it/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/it/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ja/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ja/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ja/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ja/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ja/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ja/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/kk/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/kk/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/kk/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/kk/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/kk/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/kk/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ko/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ko/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ko/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ko/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ko/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ko/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/nb/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/nb/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/nb/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/nb/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/nb/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/nb/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/nl/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/nl/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/nl/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/nl/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/nl/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/nl/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pl/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pl/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pl/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pl/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pl/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pl/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pt-pt/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pt-pt/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pt-pt/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pt-pt/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pt-pt/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pt-pt/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pt/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pt/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pt/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pt/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pt/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/pt/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ro/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ro/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ro/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ro/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ro/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ro/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ru/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ru/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ru/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ru/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ru/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/ru/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sk/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sk/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sk/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sk/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sk/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sk/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sl/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sl/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sl/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sl/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sl/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sl/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sv/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sv/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sv/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sv/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sv/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/sv/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/th/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/th/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/th/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/th/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/th/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/th/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/tr/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/tr/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/tr/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/tr/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/tr/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/tr/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/uk/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/uk/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/uk/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/uk/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/uk/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/uk/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/zh-tw/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/zh-tw/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/zh-tw/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/zh-tw/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/zh-tw/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/zh-tw/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/zh/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/zh/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/zh/Textarea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/zh/Textarea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/zh/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/nls/zh/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/templates/Button.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/templates/CheckBox.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/templates/ComboButton.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/templates/DropDownBox.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/templates/DropDownButton.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/templates/HorizontalSlider.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/templates/Select.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/templates/Spinner.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/templates/TextBox.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/templates/ValidationTextBox.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/form/templates/VerticalSlider.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/hccss.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/hccss.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/commonIcons.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/commonIcons_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/editorIcons.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/editorIcons_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/images/commonIconsObjActDisabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/images/commonIconsObjActDisabled_rtl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/images/commonIconsObjActEnabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/images/commonIconsObjActEnabled8bit.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/images/commonIconsObjActEnabled8bit_rtl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/images/commonIconsObjActEnabled_rtl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/images/editorIconsDisabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/images/editorIconsDisabled_rtl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/images/editorIconsEnabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/images/editorIconsEnabled_rtl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/icons/images/loadingAnimation_rtl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/AccordionContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/AccordionContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/AccordionPane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/AccordionPane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/BorderContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/BorderContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/ContentPane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/ContentPane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/LayoutContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/LayoutContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/LinkPane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/LinkPane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/ScrollingTabController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/ScrollingTabController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/SplitContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/SplitContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/StackContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/StackContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/StackController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/StackController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/TabContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/TabContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/TabController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/TabController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/_ContentPaneResizeMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/_ContentPaneResizeMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/_LayoutWidget.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/_LayoutWidget.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/_TabContainerBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/_TabContainerBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/templates/AccordionButton.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/templates/ScrollingTabController.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/templates/TabContainer.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/templates/_ScrollingTabControllerButton.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/templates/_TabButton.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/utils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/layout/utils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/main.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/main.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ar/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ar/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ar/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ar/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/az/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/az/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/az/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/az/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/bg/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/bg/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/bg/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/bg/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ca/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ca/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ca/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ca/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/cs/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/cs/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/cs/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/cs/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/da/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/da/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/da/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/da/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/de/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/de/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/de/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/de/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_ROOT.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_ROOT.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_ar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_ar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_ca.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_ca.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_cs.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_cs.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_da.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_da.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_de.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_de.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_el.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_el.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_en-gb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_en-gb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_en-us.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_en-us.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_es-es.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_es-es.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_fi-fi.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_fi-fi.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_fr-fr.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_fr-fr.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_he-il.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_he-il.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_hu.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_hu.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_it-it.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_it-it.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_ja-jp.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_ja-jp.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_ko-kr.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_ko-kr.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_nb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_nb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_nl-nl.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_nl-nl.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_pl.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_pl.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_pt-br.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_pt-br.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_pt-pt.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_pt-pt.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_ru.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_ru.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_sk.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_sk.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_sl.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_sl.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_sv.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_sv.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_th.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_th.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_tr.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_tr.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_zh-cn.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_zh-cn.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_zh-tw.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/dijit-all_zh-tw.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/el/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/el/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/el/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/el/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/es/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/es/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/es/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/es/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/fi/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/fi/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/fi/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/fi/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/fr/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/fr/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/fr/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/fr/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/he/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/he/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/he/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/he/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/hr/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/hr/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/hr/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/hr/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/hu/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/hu/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/hu/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/hu/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/id/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/id/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/id/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/id/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/it/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/it/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/it/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/it/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ja/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ja/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ja/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ja/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/kk/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/kk/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/kk/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/kk/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ko/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ko/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ko/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ko/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/nb/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/nb/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/nb/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/nb/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/nl/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/nl/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/nl/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/nl/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/pl/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/pl/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/pl/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/pl/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/pt-pt/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/pt-pt/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/pt-pt/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/pt-pt/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/pt/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/pt/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/pt/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/pt/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ro/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ro/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ro/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ro/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ru/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ru/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ru/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/ru/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/sk/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/sk/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/sk/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/sk/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/sl/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/sl/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/sl/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/sl/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/sv/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/sv/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/sv/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/sv/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/th/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/th/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/th/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/th/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/tr/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/tr/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/tr/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/tr/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/uk/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/uk/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/uk/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/uk/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/zh-tw/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/zh-tw/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/zh-tw/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/zh-tw/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/zh/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/zh/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/zh/loading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/nls/zh/loading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/package.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/place.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/place.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/popup.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/popup.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/registry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/registry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/selection.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/selection.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/Calendar.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/CheckedMenuItem.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/ColorPalette.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/Dialog.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/Fieldset.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/InlineEditBox.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/Menu.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/MenuBar.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/MenuBarItem.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/MenuItem.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/MenuSeparator.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/ProgressBar.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/TitlePane.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/Tooltip.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/TooltipDialog.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/Tree.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/TreeNode.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/templates/actionBar.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/a11y/README.txt create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/a11y/colors3x4.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/a11y/colors7x10.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/a11y/indeterminate_progress.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Calendar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Calendar_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/ColorPalette.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/ColorPalette.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Common.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Dialog.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Dialog.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Dialog_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Dialog_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Editor.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Editor.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Editor_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Editor_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/InlineEditBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/InlineEditBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Menu.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Menu.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Menu_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Menu_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/ProgressBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/ProgressBar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/ProgressBar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/ProgressBar_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/TimePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/TimePicker.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/TitlePane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/TitlePane.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/TitlePane_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/TitlePane_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Toolbar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Toolbar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Toolbar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Toolbar_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Tree.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/Tree.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/claro.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/claro_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/compile.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/document.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/document.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Button.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Button.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Button_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Button_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Checkbox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Checkbox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Common.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Common_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Common_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/NumberSpinner.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/NumberSpinner.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/RadioButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/RadioButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Select.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Select.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Slider.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Slider.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Slider_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/Slider_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/images/buttonArrows.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/images/buttonDisabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/images/buttonDisabled.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/images/buttonEnabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/images/buttonEnabled.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/images/checkboxAndRadioButtons_IE6.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/images/checkboxRadioButtonStates.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/images/commonFormArrows.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/images/error.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/form/images/sliderThumbs.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/activeGradient.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/activeGradient.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/calendar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/calendarArrows.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/calendarArrows8bit.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/checkmarkNoBorder.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/checkmarkNoBorder.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/dialogCloseIcon.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/dialogCloseIcon8bit.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/dnd.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/loadingAnimation.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/progressBarAnim.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/progressBarFull.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/spriteArrows.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/standardGradient.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/standardGradient.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/tooltip.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/tooltip8bit.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/treeExpandImages.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/images/treeExpandImages8bit.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/AccordionContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/AccordionContainer.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/BorderContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/BorderContainer.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/ContentPane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/ContentPane.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/TabContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/TabContainer.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/TabContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/TabContainer_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabBottomSelected.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabBottomSelected.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabBottomUnselected.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabBottomUnselected.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabClose.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabLeftSelected.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabLeftSelected.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabLeftUnselected.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabLeftUnselected.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabNested.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabRightSelected.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabRightSelected.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabRightUnselected.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabRightUnselected.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabTopSelected.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabTopSelected.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabTopUnselected.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/layout/images/tabTopUnselected.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/claro/variables.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/dijit.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/dijit_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/Calendar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/ColorPalette.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/Dialog.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/Dialog_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/Editor.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/Editor_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/Menu.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/Menu_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/ProgressBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/ProgressBar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/TimePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/TimePicker_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/TitlePane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/TitlePane_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/Toolbar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/Tree.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/Tree_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/form/Button.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/form/Button_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/form/Checkbox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/form/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/form/RadioButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/form/Select.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/form/Slider.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/form/Slider_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/form/TimeTextBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/accordionItemActive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/buttonActive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/buttonDisabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/buttonEnabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/buttonHover.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/dndCopy.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/dndMove.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/dndNoCopy.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/dndNoMove.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/no.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/preciseSliderThumb.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/preciseSliderThumb.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/preciseSliderThumbFocus.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/preciseSliderThumbFocus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/progressBarAnim.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/progressBarEmpty.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/progressBarFull.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/sliderEmpty.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/sliderEmptyVertical.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/sliderFull.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/sliderFullFocus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/sliderFullVertical.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/sliderFullVerticalFocus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/sliderThumb.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/sliderThumb.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/sliderThumbFocus.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/sliderThumbFocus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/splitContainerSizerH-thumb.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/splitContainerSizerH.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/splitContainerSizerV-thumb.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/splitContainerSizerV.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteArrows.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteArrows.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteCheckbox.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteCheckbox.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteDivIcons.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteDivIcons.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteRadio.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteRadio.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteRoundedIconsSmall.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteRoundedIconsSmall.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteTree.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteTree.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteTree_rtl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/spriteTree_rtl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/tabBottomActiveC.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/tabBottomEnabledC.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/tabBottomHoverC.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/tabContainerSprite.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/titleBar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/titleBarActive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/tooltipConnectorDown.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/tooltipConnectorDown.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/tooltipConnectorLeft.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/tooltipConnectorLeft.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/tooltipConnectorRight.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/tooltipConnectorRight.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/tooltipConnectorUp.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/tooltipConnectorUp.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/treeExpand_loading.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/treeHover.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/treeI.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/treeI_half.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/treeI_half_rtl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/treeI_rtl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/validationInputBg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/validationInputBg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/images/warning.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/layout/AccordionContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/layout/AccordionContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/layout/BorderContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/layout/ContentPane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/layout/SplitContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/layout/TabContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/layout/TabContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/nihilo.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/nihilo/nihilo_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/Calendar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/ColorPalette.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/Dialog.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/Dialog_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/Editor.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/Editor_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/Menu.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/Menu_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/ProgressBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/ProgressBar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/TimePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/TimePicker_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/TitlePane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/TitlePane_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/Toolbar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/Tree.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/Tree_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/form/Button.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/form/Button_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/form/Checkbox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/form/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/form/RadioButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/form/Select.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/form/Slider.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/form/Slider_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/form/TimeTextBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/accordionItemActive.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/accordionItemActive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/buttonActive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/buttonDisabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/buttonEnabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/buttonHover.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/dndCopy.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/dndMove.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/dndNoCopy.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/dndNoMove.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/preciseSliderThumb.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/preciseSliderThumb.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/preciseSliderThumbFocus.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/preciseSliderThumbFocus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/progressBarAnim.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/progressBarEmpty.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/progressBarFull.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/sliderEmpty.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/sliderEmptyVertical.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/sliderFull.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/sliderFullFocus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/sliderFullVertical.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/sliderFullVerticalFocus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/sliderThumb.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/sliderThumb.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/sliderThumbFocus.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/sliderThumbFocus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/splitContainerSizerH-thumb.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/splitContainerSizerH.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/splitContainerSizerV-thumb.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/splitContainerSizerV.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteArrows.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteArrows.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteCheckbox.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteCheckbox.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteDivIcons.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteDivIcons.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteRadio.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteRadio.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteRoundedIconsSmall.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteRoundedIconsSmall.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteRoundedIconsSmallBl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteRoundedIconsSmallBl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteTree.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteTree.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteTree_rtl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/spriteTree_rtl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tabBottomActiveC.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tabBottomEnabledC.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tabBottomEnabledSpriteLR.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tabBottomHoverC.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tabContainerSprite.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tabLeftChecked.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tabRightChecked.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/titleBar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/titleBarActive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tooltipConnectorDown.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tooltipConnectorDown.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tooltipConnectorLeft.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tooltipConnectorLeft.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tooltipConnectorRight.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tooltipConnectorRight.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tooltipConnectorUp.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/tooltipConnectorUp.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/treeExpand_loading.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/treeHover.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/treeI.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/treeI_half.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/treeI_half_rtl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/treeI_rtl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/validationInputBg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/validationInputBg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/images/warning.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/layout/AccordionContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/layout/AccordionContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/layout/BorderContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/layout/ContentPane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/layout/SplitContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/layout/TabContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/layout/TabContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/soria.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/soria/soria_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/Calendar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/ColorPalette.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/Dialog.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/Dialog_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/Editor.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/Editor_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/Menu.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/Menu_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/ProgressBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/ProgressBar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/TimePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/TimePicker_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/TitlePane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/TitlePane_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/Toolbar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/Tree.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/Tree_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/form/Button.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/form/Checkbox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/form/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/form/RadioButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/form/Select.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/form/Slider.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/form/Slider_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/accordionItemActive.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/accordionItemHover.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/buttonActive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/buttonDisabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/buttonEnabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/buttonHover.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/calendarDayLabel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/calendarMonthLabel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/calendarYearLabel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/checkmark.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/checkmark.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/checkmarkNoBorder.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/checkmarkNoBorder.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/circleIcon.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/circleIcon.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/comboArrowDown.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/dijitProgressBarAnim.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/dijitProgressBarAnim.psd create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/dndCopy.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/dndMove.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/dndNoCopy.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/dndNoMove.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/dojoTundraGradientBg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/dojoTundraGradientBg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/doubleArrowDown.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/doubleArrowUp.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/folderClosed.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/folderOpened.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/i.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/i_half.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/i_half_rtl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/i_rtl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/leaf.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/loading.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/menu.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/minusButton.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/no.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/noX.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/plusButton.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/popupMenuBg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/preciseSliderThumb.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/preciseSliderThumb.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/preciseSliderThumbFocus.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/preciseSliderThumbFocus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarAnim-1.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarAnim-2.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarAnim-3.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarAnim-4.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarAnim-5.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarAnim-6.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarAnim-7.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarAnim-8.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarAnim-9.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarAnim.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarAnim.psd create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarEmpty.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/progressBarFull.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/radioButtonActive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/radioButtonActiveDisabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/radioButtonActiveHover.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/radioButtonDisabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/radioButtonEnabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/radioButtonHover.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/sliderEmpty.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/sliderEmptyVertical.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/sliderFull.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/sliderFullFocus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/sliderFullVertical.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/sliderFullVerticalFocus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/sliderThumb.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/sliderThumbFocus.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/sliderThumbFocus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/smallArrowDown.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/smallArrowUp.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/splitContainerSizerH-thumb.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/splitContainerSizerH.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/splitContainerSizerV-thumb.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/splitContainerSizerV.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/spriteArrows.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/spriteArrows.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/spriteRoundedIconsSmall.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/spriteRoundedIconsSmall.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tabActive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tabClose.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tabClose.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tabCloseHover.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tabCloseHover.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tabDisabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tabEnabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tabHover.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tabHover.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/titleBar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/titleBarBg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tooltipConnectorDown.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tooltipConnectorDown.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tooltipConnectorLeft.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tooltipConnectorLeft.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tooltipConnectorRight.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tooltipConnectorRight.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tooltipConnectorUp.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/tooltipConnectorUp.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/treeExpand_leaf.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/treeExpand_leaf_rtl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/treeExpand_loading.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/treeExpand_minus.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/treeExpand_minus_rtl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/treeExpand_mius.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/treeExpand_plus.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/treeExpand_plus_rtl.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/treeHover.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/validationInputBg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/validationInputBg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/images/warning.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/layout/AccordionContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/layout/BorderContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/layout/ContentPane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/layout/SplitContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/layout/TabContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/layout/TabContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/tundra.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/themes/tundra/tundra_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/ForestStoreModel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/ForestStoreModel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/ObjectStoreModel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/ObjectStoreModel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/TreeStoreModel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/TreeStoreModel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/_dndContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/_dndContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/_dndSelector.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/_dndSelector.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/dndSource.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/dndSource.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/model.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/tree/model.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/typematic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/typematic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/AdapterRegistry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/AdapterRegistry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/CONTRIBUTING.md create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/Deferred.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/Deferred.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/DeferredList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/DeferredList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/Evented.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/Evented.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList-data.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList-data.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList-dom.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList-dom.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList-fx.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList-fx.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList-html.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList-html.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList-manipulate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList-manipulate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList-traverse.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList-traverse.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/NodeList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/OpenAjax.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/README.md create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/Stateful.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/Stateful.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/Color.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/Color.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/Deferred.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/Deferred.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/NodeList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/NodeList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/array.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/array.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/browser.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/browser.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/config.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/config.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/configFirefoxExtension.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/configNode.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/configRhino.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/configSpidermonkey.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/connect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/connect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/declare.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/declare.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/event.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/event.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/fx.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/fx.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/html.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/html.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/json.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/json.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/kernel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/kernel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/lang.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/lang.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/loader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/loader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/query.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/query.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/sniff.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/sniff.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/unload.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/unload.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/url.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/url.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/window.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/window.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/xhr.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_base/xhr.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_firebug/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_firebug/errorIcon.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_firebug/firebug.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_firebug/firebug.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_firebug/firebug.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_firebug/infoIcon.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_firebug/tab_lft_norm.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_firebug/tab_lft_over.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_firebug/tab_rgt_norm.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_firebug/tab_rgt_over.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/_firebug/warningIcon.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/aspect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/aspect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/back.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/back.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/behavior.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/behavior.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cache.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cache.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/monetary.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/monetary.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ar/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ca/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/cs/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/da/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/dangi.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/dangi.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/de/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/el/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-au/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-ca/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-ca/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-ca/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-ca/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-ca/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-ca/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en-gb/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/en/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/es/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ethiopic-amete-alem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ethiopic-amete-alem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fi/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr-ch/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr-ch/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr-ch/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr-ch/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr-ch/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr-ch/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr-ch/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr-ch/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/dangi.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/dangi.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/fr/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/he/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/hu/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/islamic-civil.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/islamic-civil.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/islamic-rgsa.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/islamic-rgsa.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/islamic-tbla.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/islamic-tbla.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/islamic-umalqura.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/islamic-umalqura.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/it/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/dangi.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/dangi.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ja/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/dangi.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/dangi.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ko/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nb/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/dangi.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/dangi.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/nl/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pl/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt-pt/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/pt/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ro/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/ru/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sk/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sk/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sk/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sk/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sk/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sk/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sk/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sk/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sl/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sl/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sl/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sl/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sl/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sl/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sl/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sl/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/dangi.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/dangi.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/sv/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/dangi.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/dangi.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/th/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/tr/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/dangi.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/dangi.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hant/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hk/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hk/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hk/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hk/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hk/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-hk/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-tw/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-tw/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-tw/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-tw/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-tw/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh-tw/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/chinese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/chinese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/coptic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/coptic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/ethiopic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/ethiopic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/generic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/generic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/gregorian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/gregorian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/indian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/indian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/japanese.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/japanese.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/roc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/nls/zh/roc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/supplemental.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cldr/supplemental.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cookie.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/cookie.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/currency.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/currency.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/ItemFileReadStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/ItemFileReadStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/ItemFileWriteStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/ItemFileWriteStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/ObjectStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/ObjectStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/api/Identity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/api/Identity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/api/Item.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/api/Item.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/api/Notification.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/api/Notification.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/api/Read.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/api/Read.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/api/Request.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/api/Request.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/api/Write.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/api/Write.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/util/filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/util/filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/util/simpleFetch.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/util/simpleFetch.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/util/sorter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/data/util/sorter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/date.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/date.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/date/locale.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/date/locale.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/date/stamp.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/date/stamp.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/debounce.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/debounce.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/AutoSource.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/AutoSource.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Avatar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Avatar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Container.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Container.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Manager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Manager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Moveable.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Moveable.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Mover.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Mover.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Selector.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Selector.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Source.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Source.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Target.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/Target.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/TimedMoveable.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/TimedMoveable.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/autoscroll.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/autoscroll.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/move.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dnd/move.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dojo.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dojo.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dojo.profile.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-attr.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-attr.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-class.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-class.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-construct.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-construct.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-form.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-form.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-geometry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-geometry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-prop.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-prop.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-style.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-style.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/domReady.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/domReady.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/CancelError.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/CancelError.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestError.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestError.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestTimeoutError.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestTimeoutError.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/create.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/create.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/Toggler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/Toggler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/easing.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/easing.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/gears.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/gears.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/has.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/has.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hash.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hash.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hccss.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hccss.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/html.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/html.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/i18n.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/i18n.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io-query.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io-query.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/iframe.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/iframe.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/script.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/script.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/json.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/json.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/keys.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/keys.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/loadInit.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/loadInit.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/main.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/main.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/mouse.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/mouse.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ar/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ar/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/az/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/az/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/bg/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/bg/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ca/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ca/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/cs/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/cs/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/da/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/da/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/de/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/de/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/el/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/el/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/es/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/es/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fi/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fi/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fr/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fr/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/he/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/he/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hr/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hr/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hu/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hu/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/id/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/id/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/it/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/it/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ja/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ja/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/kk/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/kk/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ko/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ko/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nb/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nb/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nl/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nl/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pl/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pl/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt-pt/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt-pt/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ro/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ro/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ru/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ru/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sk/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sk/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sl/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sl/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sv/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sv/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/th/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/th/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/tr/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/tr/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/uk/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/uk/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh-tw/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh-tw/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh/colors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh/colors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/node.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/node.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/number.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/number.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/asyncEventListener.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/asyncEventListener.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/debounce.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/debounce.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/throttle.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/throttle.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/package.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/parser.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/parser.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/Promise.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/Promise.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/all.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/all.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/first.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/first.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/instrumentation.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/instrumentation.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/tracer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/tracer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/query.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/query.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/ready.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/ready.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/regexp.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/regexp.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/default.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/default.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/handlers.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/handlers.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/iframe.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/iframe.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/node.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/node.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/notify.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/notify.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/registry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/registry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/script.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/script.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/util.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/util.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/watch.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/watch.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/xhr.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/xhr.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/require.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/require.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/blank.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/blank.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/dnd.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/dojo.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/iframe_history.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/images/dndCopy.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/images/dndMove.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/images/dndNoCopy.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/images/dndNoMove.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/router.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/router.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/router/RouterBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/router/RouterBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonService.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonService.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonpService.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonpService.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/RpcService.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/RpcService.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/_loader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/_loader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/acme.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/acme.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/lite.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/lite.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/sniff.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/sniff.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Cache.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Cache.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/DataStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/DataStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/JsonRest.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/JsonRest.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Memory.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Memory.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Observable.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Observable.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/api/Store.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/api/Store.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/QueryResults.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/QueryResults.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/SimpleQueryEngine.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/SimpleQueryEngine.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/string.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/string.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/text.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/text.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/throttle.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/throttle.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/topic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/topic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/touch.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/touch.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/uacss.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/uacss.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/when.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/when.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/window.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/window.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/CONTRIBUTING.md create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/NodeList/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/NodeList/delegate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/NodeList/delegate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/README.md create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/Urchin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/Urchin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/logger/JSON.php create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/logger/dojoxAnalytics.php create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/consoleMessages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/consoleMessages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/dojo.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/dojo.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/gestureEvents.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/gestureEvents.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/idle.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/idle.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseClick.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseClick.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseOver.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseOver.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/touchMove.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/touchMove.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/touchPress.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/touchPress.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/window.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/window.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analytics.profile.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analytics.profile.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analyticsInBase.profile.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analyticsInBase.profile.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/CONTRIBUTING.md create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/Controller.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/Controller.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/README.txt create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/View.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/View.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/ViewBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/ViewBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/build/buildControlApp.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/build/discoverAppConfig.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/BorderLayout.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/BorderLayout.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/History.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/History.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/HistoryHash.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/HistoryHash.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Layout.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Layout.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/LayoutBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/LayoutBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Load.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Load.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Transition.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Transition.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/main.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/main.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/env.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/env.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/lifecycle.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/lifecycle.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/application.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/model.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/scene.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/store.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/view.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/config.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/config.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/constraints.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/constraints.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/hash.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/hash.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/layout.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/layout.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/model.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/model.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/mvcModel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/mvcModel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/nls.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/nls.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/simpleModel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/simpleModel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/Container.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/Container.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/_ScrollableMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/_ScrollableMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/io/Connection.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/io/Connection.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/io/model.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/io/model.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryViewer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryViewer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedViewerEntry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedViewerEntry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/PeopleEditor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/PeopleEditor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/EntryHeader.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedEntryEditor.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedEntryViewer.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedViewer.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedViewerEntry.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedViewerGrouping.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/PeopleEditor.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/EntryHeader.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedEntryEditor.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedEntryViewer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedViewer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedViewerEntry.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedViewerGrouping.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLAudio.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLAudio.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLVideo.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLVideo.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/_Media.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/_Media.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/resources/audio.swf create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/resources/version.mov create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/resources/video.swf create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/PlayButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/PlayButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Player.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Player.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/ProgressSlider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/ProgressSlider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Status.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Status.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/VolumeButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/VolumeButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/PlayButton.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/Player.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/Player.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/ProgressSlider.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/Status.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/VolumeButton.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/dojoPlayerIcons.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/playerIcons create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/player_sprite.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/progressLoadedBk.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/progressPositionBk.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/sliderHandleNorm.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/sliderHandleOver.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/sliderHandleSprite.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/FuncGen.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/FuncGen.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/GraphPro.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/GraphPro.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Grapher.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Grapher.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Readme.txt create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Standard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Standard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/_Executor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/_Executor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/_ExecutorIframe.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/resources/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/resources/GraphPro.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/resources/Standard.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/FuncGen.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/GraphPro.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/Grapher.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/Standard.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/toFrac.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/toFrac.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/CONTRIBUTING.md create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Calendar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Calendar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/CalendarBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/CalendarBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnViewSecondarySheet.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnViewSecondarySheet.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/DecorationRenderer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/DecorationRenderer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ExpandRenderer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ExpandRenderer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/HorizontalRenderer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/HorizontalRenderer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Keyboard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Keyboard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/LabelRenderer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/LabelRenderer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MatrixView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MatrixView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileCalendar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileCalendar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileHorizontalRenderer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileHorizontalRenderer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileVerticalRenderer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileVerticalRenderer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MonthColumnView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MonthColumnView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Mouse.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Mouse.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/RendererManager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/RendererManager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/SimpleColumnView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/SimpleColumnView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreManager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreManager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Touch.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Touch.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/VerticalRenderer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/VerticalRenderer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ViewBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ViewBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_RendererMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_RendererMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_ScrollBarBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_ScrollBarBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ar/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ar/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/bg/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/bg/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ca/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ca/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/cs/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/cs/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/da/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/da/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/de/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/de/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/el/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/el/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/es/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/es/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fi/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fi/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fr/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fr/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/he/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/he/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hr/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hr/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hu/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hu/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/id/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/id/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/it/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/it/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ja/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ja/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/kk/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/kk/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ko/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ko/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/lt/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/lt/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nb/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nb/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nl/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nl/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pl/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pl/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt-pt/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt-pt/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ro/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ro/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ru/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ru/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sk/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sk/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sl/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sl/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sv/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sv/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/th/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/th/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/tr/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/tr/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/uk/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/uk/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh-tw/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh-tw/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh/buttons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh/buttons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/Calendar.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/ColumnView.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/ColumnViewSecondarySheet.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/ExpandRenderer.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/HorizontalRenderer.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/LabelRenderer.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MatrixView.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MobileCalendar.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MobileHorizontalRenderer.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MobileVerticalRenderer.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MonthColumnView.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/SimpleMatrixView.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/VerticalRenderer.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/Base.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Common.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/images/titlebar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/Calendar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/Calendar_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/ColumnView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/ColumnView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/ColumnViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/ColumnView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/ColumnView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/Common.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/MatrixView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/MatrixView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/MatrixViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/MatrixView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/MatrixView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/MonthColumnView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/MonthColumnView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/MonthColumnViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/MonthColumnView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/iphone/MonthColumnView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/Calendar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/Calendar_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/ColumnView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/ColumnView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/ColumnViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/ColumnView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/ColumnView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/Common.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/MatrixView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/MatrixView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/MatrixViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/MatrixView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/MatrixView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/MonthColumnView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/MonthColumnView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/MonthColumnViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/MonthColumnView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/MonthColumnView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/images/accordionItemActive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/nihilo/images/titleBar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Common.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/images/accordionItemActive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/images/titleBar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/Calendar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/Calendar_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/ColumnView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/ColumnView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/ColumnViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/ColumnView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/ColumnView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/Common.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/MatrixView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/MatrixView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/MatrixViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/MatrixView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/MatrixView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/MonthColumnView.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/MonthColumnView.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/MonthColumnViewCommon.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/MonthColumnView_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/MonthColumnView_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/images/accordionItemHover.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/images/titleBar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/time.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/time.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport3D.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport3D.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart2D.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart2D.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart3D.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart3D.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataChart.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataChart.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataSeries.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataSeries.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Element.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Element.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Series.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Series.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/SimpleTheme.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/SimpleTheme.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/StoreSeries.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/StoreSeries.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Theme.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Theme.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/ChartAction.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/ChartAction.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Highlight.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Highlight.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Magnify.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Magnify.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseZoomAndPan.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseZoomAndPan.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MoveSlice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MoveSlice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/PlotAction.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/PlotAction.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Shake.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Shake.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Tooltip.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Tooltip.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchZoomAndPan.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchZoomAndPan.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/_IndicatorElement.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/_IndicatorElement.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Default.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Default.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Invisible.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Invisible.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart3D.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart3D.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/_bidiutils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/_bidiutils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/Tooltip.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/Tooltip.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/ZoomAndPan.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/ZoomAndPan.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/axis2d/Default.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/axis2d/Default.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Chart.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Chart.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Legend.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Legend.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Areas.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Areas.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bars.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bars.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bubble.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bubble.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Candlesticks.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Candlesticks.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/CartesianBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/CartesianBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredBars.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredBars.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredColumns.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredColumns.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Columns.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Columns.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Default.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Default.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Grid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Grid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Indicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Indicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Lines.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Lines.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Markers.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Markers.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/MarkersOnly.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/MarkersOnly.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/OHLC.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/OHLC.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Pie.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Pie.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Scatter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Scatter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Spider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Spider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Stacked.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Stacked.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedAreas.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedAreas.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedBars.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedBars.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedColumns.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedColumns.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedLines.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedLines.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/_PlotEvents.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/_PlotEvents.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/commonStacked.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/commonStacked.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Bars.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Bars.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Cylinders.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Cylinders.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/resources/Legend.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/linear.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/linear.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/primitive.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/primitive.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Adobebricks.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Adobebricks.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Algae.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Algae.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Bahamation.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Bahamation.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/BlueDusk.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/BlueDusk.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Charged.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Charged.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Chris.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Chris.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Claro.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Claro.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/CubanShirts.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/CubanShirts.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Desert.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Desert.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Distinctive.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Distinctive.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Dollar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Dollar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Electric.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Electric.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasshopper.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasshopper.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasslands.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasslands.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/GreySkies.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/GreySkies.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Harmony.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Harmony.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/IndigoNation.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/IndigoNation.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Ireland.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Ireland.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Julie.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Julie.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/MiamiNice.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/MiamiNice.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Midwest.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Midwest.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Minty.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Minty.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/blue.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/blue.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/cyan.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/cyan.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/green.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/green.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/orange.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/orange.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/purple.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/purple.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/red.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/red.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PrimaryColors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PrimaryColors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PurpleRain.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PurpleRain.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Renkoo.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Renkoo.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/RoyalPurples.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/RoyalPurples.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/SageToLime.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/SageToLime.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Shrooms.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Shrooms.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/ThreeD.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/ThreeD.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tom.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tom.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tufte.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tufte.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/WatersEdge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/WatersEdge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Wetland.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Wetland.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/gradientGenerator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/gradientGenerator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart2D.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart2D.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Legend.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Legend.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/SelectableLegend.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/SelectableLegend.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Sparkline.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Sparkline.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/ArrayList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/ArrayList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/BinaryTree.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/BinaryTree.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/Dictionary.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/Dictionary.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/Queue.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/Queue.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/Set.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/Set.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/SortedList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/SortedList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/Stack.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/Stack.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/collections/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/Colorspace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/Colorspace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/MeanColorModel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/MeanColorModel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/NeutralColorModel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/NeutralColorModel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/Palette.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/Palette.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/SimpleColorModel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/SimpleColorModel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/api/ColorModel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/color/api/ColorModel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/cometd.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/cometd.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/cometd/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/css3/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/css3/fx.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/css3/fx.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/css3/transit.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/css3/transit.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/css3/transition.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/css3/transition.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/AndOrReadStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/AndOrReadStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/AndOrWriteStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/AndOrWriteStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/AppStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/AppStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/AtomReadStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/AtomReadStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/CdfStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/CdfStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/ClientFilter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/ClientFilter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/CouchDBRestStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/CouchDBRestStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/CssClassStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/CssClassStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/CssRuleStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/CssRuleStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/CsvStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/CsvStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/FileStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/FileStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/FlickrRestStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/FlickrRestStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/FlickrStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/FlickrStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/GoogleFeedStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/GoogleFeedStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/GoogleSearchStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/GoogleSearchStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/HtmlStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/HtmlStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/HtmlTableStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/HtmlTableStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/ItemExplorer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/ItemExplorer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/JsonQueryRestStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/JsonQueryRestStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/JsonRestStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/JsonRestStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/KeyValueStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/KeyValueStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/OpenSearchStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/OpenSearchStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/OpmlStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/OpmlStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/PersevereStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/PersevereStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/PicasaStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/PicasaStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/QueryReadStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/QueryReadStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/RailsStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/RailsStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/S3Store.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/S3Store.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/ServiceStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/ServiceStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/SnapLogicStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/SnapLogicStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/StoreExplorer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/StoreExplorer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/WikipediaStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/WikipediaStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/XmlItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/XmlItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/XmlStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/XmlStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/css.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/css.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/dom.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/dom.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/restListener.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/restListener.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/s3/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/s3/proxy.example-php create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/util/JsonQuery.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/data/util/JsonQuery.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/buddhist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/buddhist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/buddhist/Date.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/buddhist/Date.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/buddhist/locale.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/buddhist/locale.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/hebrew.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/hebrew.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/hebrew/Date.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/hebrew/Date.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/hebrew/locale.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/hebrew/locale.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/hebrew/numerals.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/hebrew/numerals.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/islamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/islamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/islamic/Date.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/islamic/Date.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/islamic/locale.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/islamic/locale.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/persian.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/persian.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/persian/Date.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/persian/Date.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/persian/locale.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/persian/locale.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/php.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/php.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/posix.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/posix.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/relative.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/relative.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/timezone.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/timezone.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/umalqura.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/umalqura.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/umalqura/Date.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/umalqura/Date.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/umalqura/locale.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/umalqura/locale.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/zoneinfo/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/zoneinfo/africa create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/zoneinfo/antarctica create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/zoneinfo/asia create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/zoneinfo/australasia create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/zoneinfo/backward create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/zoneinfo/etcetera create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/zoneinfo/europe create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/zoneinfo/northamerica create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/zoneinfo/pacificnew create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/date/zoneinfo/southamerica create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/CONTRIBUTING.md create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/CircularGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/CircularGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/CircularRangeIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/CircularRangeIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/CircularScale.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/CircularScale.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/CircularValueIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/CircularValueIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/GaugeBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/GaugeBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/IndicatorBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/IndicatorBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/LinearScaler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/LinearScaler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/LogScaler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/LogScaler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/MultiLinearScaler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/MultiLinearScaler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/RectangularGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/RectangularGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/RectangularRangeIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/RectangularRangeIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/RectangularScale.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/RectangularScale.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/RectangularSegmentedRangeIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/RectangularSegmentedRangeIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/RectangularValueIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/RectangularValueIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/ScaleBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/ScaleBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/ScaleIndicatorBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/ScaleIndicatorBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/TextIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/TextIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/_circularUtils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/_circularUtils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/DefaultPropertiesMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/DefaultPropertiesMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/black/CircularLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/black/CircularLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/black/HorizontalLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/black/HorizontalLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/black/SemiCircularLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/black/SemiCircularLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/black/VerticalLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/black/VerticalLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/classic/CircularLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/classic/CircularLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/classic/HorizontalLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/classic/HorizontalLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/classic/SemiCircularLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/classic/SemiCircularLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/classic/VerticalLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/classic/VerticalLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/default/CircularLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/default/CircularLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/default/HorizontalLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/default/HorizontalLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/default/SemiCircularLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/default/SemiCircularLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/default/VerticalLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/default/VerticalLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/green/CircularLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/green/CircularLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/green/HorizontalLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/green/HorizontalLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/green/SemiCircularLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/green/SemiCircularLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/green/VerticalLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/green/VerticalLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/grey/CircularLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/grey/CircularLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/grey/HorizontalLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/grey/HorizontalLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/grey/SemiCircularLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/grey/SemiCircularLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/grey/VerticalLinearGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/grey/VerticalLinearGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/utils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dgauges/components/utils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dnd/BoundingBoxController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dnd/BoundingBoxController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dnd/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dnd/Selector.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dnd/Selector.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dojox.profile.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/Drawing.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/Drawing.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/annotations/Angle.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/annotations/Angle.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/annotations/Arrow.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/annotations/Arrow.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/annotations/BoxShadow.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/annotations/BoxShadow.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/annotations/Label.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/annotations/Label.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/defaults.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/defaults.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/library/greek.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/library/greek.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/library/icons.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/library/icons.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/Anchors.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/Anchors.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/Canvas.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/Canvas.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/Mouse.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/Mouse.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/Stencil.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/Stencil.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/StencilUI.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/StencilUI.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/Undo.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/Undo.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/_registry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/_registry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/keys.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/manager/keys.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/_Plugin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/_Plugin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/drawing/GreekPalette.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/drawing/GreekPalette.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/drawing/Grid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/drawing/Grid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/drawing/Silverlight.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/drawing/Silverlight.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/tools/Iconize.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/tools/Iconize.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/tools/Pan.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/tools/Pan.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/tools/Zoom.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/plugins/tools/Zoom.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/resources/CrazyTruck.jpg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/resources/GreekPalette.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/resources/drawing.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/resources/images/tool_icons.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/resources/images/tool_sprites.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/resources/toolbar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/Ellipse.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/Ellipse.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/Image.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/Image.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/Line.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/Line.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/Path.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/Path.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/Rect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/Rect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/Text.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/Text.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/_Base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/stencil/_Base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/Arrow.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/Arrow.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/Ellipse.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/Ellipse.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/Line.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/Line.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/Path.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/Path.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/Pencil.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/Pencil.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/Rect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/Rect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/TextBlock.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/TextBlock.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/custom/Axes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/custom/Axes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/custom/Equation.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/custom/Equation.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/custom/Vector.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/tools/custom/Vector.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/ui/Button.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/ui/Button.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/ui/Toolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/ui/Toolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/ui/Tooltip.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/ui/Tooltip.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/ui/dom/Pan.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/ui/dom/Pan.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/ui/dom/Toolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/ui/dom/Toolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/ui/dom/Zoom.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/ui/dom/Zoom.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/util/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/util/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/util/oo.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/util/oo.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/util/positioning.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/util/positioning.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/util/typeset.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/drawing/util/typeset.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/Context.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/Context.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/DomInline.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/DomInline.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/Inline.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/Inline.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/_DomTemplated.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/_DomTemplated.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/_Templated.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/_Templated.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/contrib/data.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/contrib/data.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/contrib/dijit.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/contrib/dijit.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/contrib/dom.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/contrib/dom.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/contrib/objects.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/contrib/objects.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/dom.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/dom.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/ext-dojo/NodeList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/ext-dojo/NodeList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/dates.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/dates.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/htmlstrings.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/htmlstrings.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/integers.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/integers.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/lists.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/lists.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/logic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/logic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/misc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/misc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/strings.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/filter/strings.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/render/dom.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/render/dom.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/render/html.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/render/html.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/tag/date.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/tag/date.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/tag/loader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/tag/loader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/tag/logic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/tag/logic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/tag/loop.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/tag/loop.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/tag/misc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/tag/misc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/utils/date.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/dtl/utils/date.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/AutoUrlLink.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/AutoUrlLink.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/EntityPalette.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/EntityPalette.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/NormalizeIndentOutdent.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/NormalizeIndentOutdent.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/NormalizeStyle.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/NormalizeStyle.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/PrettyPrint.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/PrettyPrint.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/ResizeTableColumn.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/ResizeTableColumn.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/StatusBar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/StatusBar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/TablePlugins.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/TablePlugins.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/ToolbarLineBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/ToolbarLineBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/UploadImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/UploadImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/_SmileyPalette.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/_SmileyPalette.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/_SpellCheckParser.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/_SpellCheckParser.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ar/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/az/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/az/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/bg/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ca/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/cs/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/da/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/de/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/el/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/es/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fi/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/fr/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/he/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hr/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/hu/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/id/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/it/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ja/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/kk/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ko/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nb/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/nl/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pl/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt-pt/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/pt/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ro/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/ru/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sk/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sl/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/sv/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/th/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/tr/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/uk/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh-tw/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/AutoSave.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/AutoSave.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/Blockquote.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/Blockquote.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/Breadcrumb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/Breadcrumb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/CollapsibleToolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/CollapsibleToolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/FindReplace.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/FindReplace.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/InsertAnchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/InsertAnchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/InsertEntity.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/InsertEntity.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/LocalImage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/LocalImage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/PageBreak.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/PageBreak.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/PasteFromWord.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/PasteFromWord.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/Preview.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/Preview.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/SafePaste.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/SafePaste.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/Save.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/Save.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/ShowBlockNodes.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/ShowBlockNodes.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/Smiley.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/Smiley.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/SpellCheck.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/SpellCheck.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/TableDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/TableDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/TextColor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/TextColor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/latinEntities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/nls/zh/latinEntities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/AutoSave.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/BidiSupport.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/BidiSupport_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/Blockquote.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/Breadcrumb.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/CollapsibleToolbar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/FindReplace.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/InsertAnchor.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/InsertEntity.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/LocalImage.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/PageBreak.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/PasteFromWord.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/Preview.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/SafePaste.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/Save.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/ShowBlockNodes.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/Smiley.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/SpellCheck.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/StatusBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/css/TextColor.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/editorPlugins.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonAngel.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonAngry.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonCool.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonCrying.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonEyebrow.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonFrown.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonGoofy.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonGrin.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonHalf.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonHappy.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonIdea.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonLaughing.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonNo.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonOops.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonShy.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonSmile.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonTongue.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonWink.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/emoticons/emoticonYes.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/anchor.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/anchorDisabled.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/autoSave.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/blockquote.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/blockquoteDisabled.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/breadcrumbDown.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/claro/close.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/editorIconsFindReplaceDisabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/editorIconsFindReplaceEnabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/insertEntity.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/insertEntityDisabled.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/nihilo/close.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/pageBreak.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/pageBreakDisabled.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/pasteFromWord.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/pasteFromWordDisabled.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/preview.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/previewDisabled.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/save.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/saveDisabled.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/showBlockNodes.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/showBlockNodesDisabled.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/smiley.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/smileyDisabled.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/soria/close.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/spellcheck.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/icons/tundra/close.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/anchor.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/bidiIconsDisabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/bidiIconsDisabled_rtl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/bidiIconsEnabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/bidiIconsEnabled_rtl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/address.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/blockquote.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/button.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/center.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/dd.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/del.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/div.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/dt.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/fieldset.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/form.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/h1.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/h2.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/h3.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/h4.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/h5.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/h6.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/hr.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/iframe.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/ins.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/li.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/map.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/noscript.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/object.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/ol.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/p.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/pre.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/script.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/table.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/blockelems/ul.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/busy.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/cellpad.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/cellspace.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/checking.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/claro/collapse.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/claro/expand.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/nihilo/collapse.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/nihilo/expand.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/nihilo/sidebar.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/soria/collapse.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/soria/expand.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/soria/sidebar.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/tableIcons.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/tableIcons_rtl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/tundra/collapse.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/tundra/expand.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/tundra/sidebar.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/images/uploadImageIcon.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/insertTable.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/editor/plugins/resources/modifyTable.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/embed/Flash.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/embed/Flash.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/embed/Object.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/embed/Object.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/embed/Quicktime.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/embed/Quicktime.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/embed/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/embed/flashVars.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/embed/flashVars.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/embed/resources/version.mov create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/ascii85.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/ascii85.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/base64.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/base64.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/bits.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/bits.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/compression/lzw.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/compression/lzw.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/compression/splay.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/compression/splay.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/crypto/Blowfish.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/crypto/Blowfish.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/crypto/RSAKey-ext.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/crypto/RSAKey-ext.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/crypto/RSAKey.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/crypto/RSAKey.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/crypto/SimpleAES.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/crypto/SimpleAES.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/crypto/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/crypto/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/MD5.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/MD5.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/SHA1.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/SHA1.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/SHA224.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/SHA224.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/SHA256.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/SHA256.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/SHA384.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/SHA384.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/SHA512.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/SHA512.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/_sha-32.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/_sha-32.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/_sha-64.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/_sha-64.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/_sha2.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/digests/_sha2.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/easy64.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/encoding/easy64.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/flash.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/flash.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/flash/DojoExternalInterface.as create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/flash/ExpressInstall.as create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/flash/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/flash/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/flash/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/BusyButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/BusyButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/DateTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/DateTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/DayTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/DayTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/DropDownSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/DropDownSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/DropDownStack.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/DropDownStack.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/FileInput.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/FileInput.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/FileInputAuto.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/FileInputAuto.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/FileInputBlind.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/FileInputBlind.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/FilePickerTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/FilePickerTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/FileUploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/FileUploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/HorizontalRangeSlider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/HorizontalRangeSlider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/ListInput.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/ListInput.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/Manager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/Manager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/MonthTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/MonthTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/MultiComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/MultiComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/RadioStack.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/RadioStack.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/RangeSlider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/RangeSlider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/Rating.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/Rating.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/TimeSpinner.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/TimeSpinner.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/TriStateCheckBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/TriStateCheckBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/VerticalRangeSlider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/VerticalRangeSlider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/YearTextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/YearTextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/_FormSelectWidget.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/_FormSelectWidget.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/_HasDropDown.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/_HasDropDown.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/_RangeSliderMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/_RangeSliderMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/_SelectStackMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/_SelectStackMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_ClassMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_ClassMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_DisplayMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_DisplayMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_EnableMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_EnableMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_FormMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_FormMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_Mixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_Mixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_NodeMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_NodeMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_ValueMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/manager/_ValueMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ar/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ar/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ar/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ar/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ar/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ar/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/az/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/az/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/bg/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/bg/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/bg/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/bg/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/bg/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/bg/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ca/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ca/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ca/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ca/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ca/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ca/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/cs/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/cs/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/cs/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/cs/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/cs/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/cs/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/da/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/da/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/da/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/da/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/da/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/da/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/de/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/de/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/de/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/de/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/de/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/de/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/el/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/el/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/el/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/el/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/el/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/el/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/es/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/es/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/es/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/es/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/es/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/es/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/fi/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/fi/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/fi/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/fi/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/fi/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/fi/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/fr/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/fr/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/fr/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/fr/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/fr/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/fr/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/he/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/he/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/he/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/he/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/he/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/he/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/hr/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/hr/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/hr/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/hr/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/hr/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/hr/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/hu/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/hu/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/hu/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/hu/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/hu/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/hu/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/id/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/id/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/id/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/id/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/id/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/id/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/it/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/it/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/it/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/it/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/it/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/it/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ja/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ja/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ja/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ja/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ja/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ja/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/kk/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/kk/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/kk/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/kk/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/kk/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/kk/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ko/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ko/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ko/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ko/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ko/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ko/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/nb/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/nb/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/nb/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/nb/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/nb/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/nb/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/nl/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/nl/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/nl/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/nl/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/nl/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/nl/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pl/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pl/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pl/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pl/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pl/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pl/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pt-pt/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pt-pt/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pt-pt/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pt-pt/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pt-pt/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pt-pt/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pt/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pt/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pt/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pt/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pt/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/pt/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ro/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ro/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ro/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ro/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ro/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ro/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ru/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ru/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ru/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ru/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ru/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/ru/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sk/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sk/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sk/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sk/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sk/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sk/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sl/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sl/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sl/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sl/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sl/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sl/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sv/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sv/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sv/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sv/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sv/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/sv/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/th/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/th/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/th/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/th/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/th/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/th/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/tr/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/tr/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/tr/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/tr/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/tr/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/tr/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/uk/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/uk/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/uk/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/uk/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/uk/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/uk/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/zh-tw/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/zh-tw/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/zh-tw/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/zh-tw/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/zh-tw/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/zh-tw/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/zh/CheckedMultiSelect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/zh/CheckedMultiSelect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/zh/PasswordValidator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/zh/PasswordValidator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/zh/Uploader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/nls/zh/Uploader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/BusyButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/CheckedMultiSelect.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/CheckedMultiSelect.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/FileInput.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/FileInput.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/FileInputAuto.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/FilePickerTextBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/FilePickerTextBox.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/FileUploader.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/HorizontalRangeSlider.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/ListInput.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/PasswordValidator.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/RangeSlider.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/Rating.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/RecieveFile.php create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/TriStateCheckBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/TriStateCheckBox.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/Uploader.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/UploaderFileList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/UploaderFileList.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/VerticalRangeSlider.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/_CheckedMultiSelectItem.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/_CheckedMultiSelectMenuItem.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/fileuploader.swf create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/images/loading_wheel.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/images/nihiloFolderSprite.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/images/rating_empty.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/images/rating_full.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/images/soriaFolderSprite.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/images/tristatecheckboxStates.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/images/tundraFolderSprite.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/resources/uploader.swf create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/FileList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/FileList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/_Base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/_Base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/_Flash.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/_Flash.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/_HTML5.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/_HTML5.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/_IFrame.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/_IFrame.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/plugins/Flash.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/plugins/Flash.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/plugins/HTML5.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/plugins/HTML5.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/plugins/IFrame.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/form/uploader/plugins/IFrame.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/Shadow.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/Shadow.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/Timeline.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/Timeline.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/_arg.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/_arg.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/_core.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/_core.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/easing.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/easing.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/ext-dojo/NodeList-style.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/ext-dojo/NodeList-style.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/ext-dojo/NodeList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/ext-dojo/NodeList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/ext-dojo/complex.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/ext-dojo/complex.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/ext-dojo/reverse.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/ext-dojo/reverse.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/flip.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/flip.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/resources/shadowB.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/resources/shadowBL.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/resources/shadowBR.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/resources/shadowL.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/resources/shadowR.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/resources/shadowT.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/resources/shadowTL.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/resources/shadowTR.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/scroll.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/scroll.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/split.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/split.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/style.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/style.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/text.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/fx/text.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/GanttChart.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/GanttChart.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/GanttProjectControl.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/GanttProjectControl.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/GanttProjectItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/GanttProjectItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/GanttResourceItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/GanttResourceItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/GanttTaskControl.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/GanttTaskControl.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/GanttTaskItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/GanttTaskItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/TabMenu.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/TabMenu.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/contextMenuTab.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/contextMenuTab.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/gantt.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/am.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/arrow.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/collapse.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/expand.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/load.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/menuHighlight.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/minus.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/ownerBar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/parentnode_bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/parentnode_filled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/plus.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/pm.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/progress_bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/progress_filled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/projProgressBg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/projProgressFilled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/rbg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/resourceBg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/resourceHeader.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/rheader.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/rowHighlight.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/save.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/taskArrow.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/taskBar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/taskProgressBg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/taskProgressFilled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/zoomin.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/zoomintime.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/zoomout.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gantt/resources/images/zoomouttime.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogArcIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogArcIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogArrowIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogArrowIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogCircleIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogCircleIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogIndicatorBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogIndicatorBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogLineIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogLineIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogNeedleIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/AnalogNeedleIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/BarCircleIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/BarCircleIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/BarGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/BarGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/BarIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/BarIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/BarLineIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/BarLineIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/GlossyCircularGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/GlossyCircularGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/GlossyCircularGaugeBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/GlossyCircularGaugeBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/GlossyCircularGaugeNeedle.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/GlossyCircularGaugeNeedle.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/GlossyHorizontalGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/GlossyHorizontalGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/GlossyHorizontalGaugeMarker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/GlossyHorizontalGaugeMarker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/GlossySemiCircularGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/GlossySemiCircularGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/Range.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/Range.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/TextIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/TextIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/_Gauge.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/_Gauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/_Gauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/_Indicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gauges/_Indicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/Feature.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/Feature.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/KeyboardInteractionSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/KeyboardInteractionSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/Map.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/Map.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/MouseInteractionSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/MouseInteractionSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/TouchInteractionSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/TouchInteractionSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/_Marker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/_Marker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/Map.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/data/Americas.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/data/AsiaPacific.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/data/ContinentalEurope.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/data/EuropeMiddleEastAfrica.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/data/NOTICES create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/data/USStates.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/data/WorldCountries.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/data/WorldCountriesMercator.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/img/zoomin.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/img/zoomin.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/img/zoomout.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/img/zoomout.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/resources/markers/USStates.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/widget/Legend.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/widget/Legend.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/widget/Map.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/charting/widget/Map.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Collection.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Collection.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Feature.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Feature.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Geometry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Geometry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/GeometryFeature.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/GeometryFeature.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/GfxLayer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/GfxLayer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/GreatCircle.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/GreatCircle.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/JsonImport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/JsonImport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Layer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Layer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/LineString.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/LineString.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Map.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Map.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Patch.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Patch.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Point.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/Point.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/TouchInteractionSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/TouchInteractionSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/WidgetFeature.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/WidgetFeature.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/widget/Map.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/geo/openlayers/widget/Map.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gesture/Base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gesture/Base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gesture/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gesture/swipe.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gesture/swipe.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gesture/tap.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gesture/tap.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/Moveable.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/Moveable.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/Mover.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/Mover.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/README-svgweb create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/VectorText.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/VectorText.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/_gfxBidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/_gfxBidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/arc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/arc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/attach.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/attach.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/bezierutils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/bezierutils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/canvas.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/canvas.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/canvasWithEvents.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/canvasWithEvents.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/canvas_attach.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/canvas_attach.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/canvasext.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/canvasext.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/decompose.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/decompose.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/filters.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/filters.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/fx.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/fx.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/gradient.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/gradient.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/gradutils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/gradutils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/matrix.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/matrix.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/move.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/move.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/path.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/path.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/registry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/registry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/renderer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/renderer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/resources/Gillius.svg create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/resources/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/resources/gfxSvgProxyFrame.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/resources/svg2gfx-simple.xsl create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/resources/svg2gfx.xsl create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/shape.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/shape.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/silverlight.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/silverlight.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/silverlight_attach.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/silverlight_attach.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/svg.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/svg.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/svg_attach.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/svg_attach.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/svg_mask.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/svg_mask.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/svgext.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/svgext.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/utils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/utils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/vml.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/vml.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/vml_attach.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx/vml_attach.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/gradient.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/gradient.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/lighting.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/lighting.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/matrix.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/matrix.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/object.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/object.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/scheduler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/scheduler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/vector.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/gfx3d/vector.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/BidiSupport.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/BidiSupport.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/DataGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/DataGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/DataSelection.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/DataSelection.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/LazyTreeGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/LazyTreeGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/LazyTreeGridStoreModel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/LazyTreeGridStoreModel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/Selection.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/Selection.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/TreeGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/TreeGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/TreeSelection.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/TreeSelection.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_Builder.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_Builder.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_CheckBoxSelector.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_CheckBoxSelector.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_EditManager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_EditManager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_Events.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_Events.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_FocusManager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_FocusManager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_Grid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_Grid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_Layout.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_Layout.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_RadioSelector.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_RadioSelector.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_RowManager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_RowManager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_RowSelector.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_RowSelector.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_Scroller.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_Scroller.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_SelectionPreserver.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_SelectionPreserver.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_Selector.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_Selector.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_TreeView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_TreeView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_View.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_View.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_ViewManager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/_ViewManager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/bidi/_BidiMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/bidi/_BidiMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/cells.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/cells.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/cells/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/cells/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/cells/dijit.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/cells/dijit.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/cells/tree.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/cells/tree.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/compatGrid.tar.gz create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/_Events.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/_Events.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/_FocusManager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/_FocusManager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/_Plugin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/_Plugin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/_PluginManager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/_PluginManager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ar/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ar/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ar/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ar/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ar/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ar/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/bg/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/bg/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/bg/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/bg/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/bg/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/bg/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ca/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ca/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ca/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ca/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ca/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ca/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/cs/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/cs/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/cs/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/cs/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/cs/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/cs/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/da/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/da/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/da/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/da/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/da/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/da/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/de/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/de/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/de/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/de/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/de/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/de/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/el/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/el/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/el/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/el/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/el/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/el/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/es/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/es/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/es/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/es/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/es/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/es/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/fi/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/fi/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/fi/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/fi/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/fi/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/fi/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/fr/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/fr/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/fr/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/fr/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/fr/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/fr/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/he/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/he/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/he/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/he/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/he/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/he/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/hr/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/hr/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/hr/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/hr/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/hr/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/hr/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/hu/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/hu/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/hu/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/hu/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/hu/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/hu/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/id/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/id/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/id/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/id/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/id/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/id/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/it/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/it/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/it/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/it/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/it/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/it/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ja/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ja/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ja/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ja/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ja/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ja/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/kk/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/kk/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/kk/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/kk/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/kk/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/kk/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ko/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ko/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ko/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ko/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ko/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ko/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/nb/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/nb/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/nb/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/nb/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/nb/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/nb/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/nl/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/nl/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/nl/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/nl/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/nl/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/nl/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pl/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pl/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pl/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pl/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pl/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pl/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pt-pt/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pt-pt/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pt-pt/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pt-pt/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pt-pt/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pt-pt/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pt/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pt/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pt/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pt/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pt/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/pt/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ro/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ro/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ro/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ro/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ro/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ro/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ru/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ru/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ru/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ru/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ru/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/ru/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sk/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sk/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sk/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sk/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sk/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sk/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sl/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sl/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sl/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sl/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sl/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sl/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sv/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sv/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sv/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sv/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sv/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/sv/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/th/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/th/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/th/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/th/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/th/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/th/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/tr/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/tr/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/tr/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/tr/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/tr/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/tr/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/uk/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/uk/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/uk/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/uk/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/uk/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/uk/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/zh-tw/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/zh-tw/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/zh-tw/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/zh-tw/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/zh-tw/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/zh-tw/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/zh/EnhancedGrid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/zh/EnhancedGrid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/zh/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/zh/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/zh/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/nls/zh/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/AutoScroll.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/AutoScroll.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/CellMerge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/CellMerge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Cookie.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Cookie.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Dialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Dialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/DnD.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/DnD.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Exporter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Exporter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/GridSource.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/GridSource.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/IndirectSelection.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/IndirectSelection.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Menu.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Menu.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/NestedSorting.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/NestedSorting.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Pagination.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Pagination.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Printer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Printer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Rearrange.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Rearrange.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Search.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Search.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Selector.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/Selector.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/_RowMapLayer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/_RowMapLayer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/_SelectionPreserver.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/_SelectionPreserver.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/_StoreLayer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/_StoreLayer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/exporter/CSVWriter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/exporter/CSVWriter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/exporter/TableWriter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/exporter/TableWriter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/exporter/_ExportWriter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/exporter/_ExportWriter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/ClearFilterConfirm.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/ClearFilterConfirm.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/FilterBar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/FilterBar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/FilterBuilder.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/FilterBuilder.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/FilterDefDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/FilterDefDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/FilterLayer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/FilterLayer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/FilterStatusTip.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/FilterStatusTip.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/_ConditionExpr.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/_ConditionExpr.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/_DataExprs.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/_DataExprs.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/_FilterExpr.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/plugins/filter/_FilterExpr.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/Common_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/DnD.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/DnD_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/EnhancedGrid.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/EnhancedGrid_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/Filter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/Filter_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/Pagination.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/Pagination_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/Sorter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/Sorter_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/claro/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/claro/EnhancedGrid.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/claro/Filter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/claroEnhancedGrid.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/images/sprite_icons.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/tundra/Common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/tundra/EnhancedGrid.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/tundra/Filter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/tundra/Sorter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/resources/tundraEnhancedGrid.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/templates/ClearFilterConfirmPane.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/templates/CriteriaBox.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/templates/FilterBar.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/templates/FilterBoolValueBox.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/templates/FilterDefPane.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/templates/FilterStatusPane.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/enhanced/templates/Pagination.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_ROOT.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_ROOT.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_ar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_ar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_ca.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_ca.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_cs.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_cs.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_da.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_da.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_de.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_de.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_el.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_el.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_en-gb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_en-gb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_en-us.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_en-us.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_es-es.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_es-es.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_fi-fi.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_fi-fi.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_fr-fr.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_fr-fr.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_he-il.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_he-il.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_hu.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_hu.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_it-it.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_it-it.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_ja-jp.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_ja-jp.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_ko-kr.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_ko-kr.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_nb.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_nb.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_nl-nl.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_nl-nl.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_pl.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_pl.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_pt-br.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_pt-br.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_pt-pt.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_pt-pt.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_ru.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_ru.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_sk.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_sk.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_sl.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_sl.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_sv.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_sv.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_th.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_th.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_tr.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_tr.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_zh-cn.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_zh-cn.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_zh-tw.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/nls/DataGrid_zh-tw.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/Expando.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/Grid.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/Grid_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/View.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/_Grid.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/claroGrid.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/images/grid_dx_gradient.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/images/grid_sort_down.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/images/grid_sort_up.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/images/header.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/images/header_shadow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/images/row_back.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/images/tabEnabled_rotated.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/images/tabHover_rotated.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/images/td_button_down.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/nihiloGrid.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/soriaGrid.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/resources/tundraGrid.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/util.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/grid/util.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/help/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/help/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/help/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/help/console.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/help/console.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/_all.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/_all.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/_dynamic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/_dynamic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/_static.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/_static.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/_www.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/_www.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/cpp.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/cpp.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/css.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/css.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/delphi.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/delphi.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/django.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/django.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/groovy.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/groovy.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/html.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/html.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/java.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/java.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/javascript.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/javascript.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/pygments/_html.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/pygments/_html.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/pygments/_www.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/pygments/_www.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/pygments/css.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/pygments/css.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/pygments/html.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/pygments/html.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/pygments/javascript.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/pygments/javascript.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/pygments/xml.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/pygments/xml.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/python.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/python.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/sql.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/sql.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/xml.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/xml.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/xquery.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/languages/xquery.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/highlight.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/autumn.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/borland.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/colorful.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/default.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/emacs.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/friendly.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/fruity.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/manni.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/murphy.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/native.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/pastie.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/perldoc.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/resources/pygments/trac.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/widget/Code.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/highlight/widget/Code.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/ellipsis.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/ellipsis.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/entities.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/entities.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/ext-dojo/style.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/ext-dojo/style.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/format.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/format.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/metrics.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/metrics.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/resources/ellipsis.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/styles.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/html/styles.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/Badge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/Badge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/FlickrBadge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/FlickrBadge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/Gallery.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/Gallery.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/Lightbox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/Lightbox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/LightboxNano.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/LightboxNano.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/Magnifier.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/Magnifier.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/MagnifierLite.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/MagnifierLite.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/SlideShow.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/SlideShow.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/ThumbnailPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/ThumbnailPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/Badge.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/Gallery.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/Gallery.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/Lightbox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/Lightbox.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/LightboxNano.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/Magnifier.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/SlideShow.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/SlideShow.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/ThumbnailPicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/ThumbnailPicker.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/image.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/images/buttons.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/images/buttons.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/images/close.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/images/close.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/images/close_dark.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/images/left.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/images/left.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/images/loading.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/images/right.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/images/right.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/image/resources/images/warning.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/OAuth.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/OAuth.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/httpParse.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/httpParse.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/proxy/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/proxy/xip.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/proxy/xip.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/proxy/xip_client.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/proxy/xip_server.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/scriptFrame.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/scriptFrame.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/windowName.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/windowName.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/xhrMultiPart.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/xhrMultiPart.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/xhrPlugins.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/xhrPlugins.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/xhrScriptPlugin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/xhrScriptPlugin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/xhrWindowNamePlugin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/xhrWindowNamePlugin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/jq.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/jq.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/jq/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/json/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/json/query.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/json/query.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/json/ref.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/json/ref.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/json/schema.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/json/schema.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/jsonPath.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/jsonPath.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/jsonPath/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/jsonPath/query.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/jsonPath/query.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/cflow.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/cflow.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/counter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/counter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/memoizer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/memoizer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/memoizerGuard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/memoizerGuard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/profiler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/profiler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/timer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/timer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/tracer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/aspect/tracer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/async.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/async.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/async/event.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/async/event.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/async/timeout.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/async/timeout.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/async/topic.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/async/topic.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/docs.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/docs.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/array.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/array.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/binrec.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/binrec.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/curry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/curry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/fold.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/fold.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/lambda.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/lambda.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/linrec.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/linrec.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/listcomp.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/listcomp.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/multirec.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/multirec.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/numrec.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/numrec.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/object.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/object.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/reversed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/reversed.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/scan.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/scan.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/sequence.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/sequence.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/tailrec.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/tailrec.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/util.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/util.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/zip.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/functional/zip.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/observable.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/observable.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Decorator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Decorator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Filter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Filter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/aop.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/aop.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/general.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/general.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/mixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/mixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/rearrange.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/rearrange.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/typed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/typed.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/utils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/utils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/BorderContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/BorderContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ContentPane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ContentPane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/Dock.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/Dock.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/DragPane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/DragPane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ExpandoPane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ExpandoPane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/FloatingPane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/FloatingPane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/GridContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/GridContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/GridContainerLite.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/GridContainerLite.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/RadioGroup.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/RadioGroup.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ResizeHandle.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ResizeHandle.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/RotatorContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/RotatorContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ScrollPane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ScrollPane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/TableContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/TableContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ToggleSplitter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ToggleSplitter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/dnd/Avatar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/dnd/Avatar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/dnd/PlottedDnd.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/dnd/PlottedDnd.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ext-dijit/layout/StackContainer-touch.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ext-dijit/layout/StackContainer-touch.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/DndGridContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/ExpandoPane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/ExpandoPane.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/FloatingPane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/FloatingPane.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/GridContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/GridContainer.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/RadioGroup.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/ResizeHandle.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/RotatorContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/ScrollPane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/ScrollPane.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/ToggleSplitter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/icons/gridcontainer_grip.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/icons/grip_bg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/icons/pixel.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/icons/resize.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/icons/resizeRtl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/icons/rotator.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/icons/splitterToggleH.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/resources/icons/splitterToggleV.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/main.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/main.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/BigInteger-ext.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/BigInteger-ext.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/BigInteger.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/BigInteger.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/curves.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/curves.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/matrix.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/matrix.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/random/Secure.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/random/Secure.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/random/Simple.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/random/Simple.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/random/prng4.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/random/prng4.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/round.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/round.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/stats.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/math/stats.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/AreaManager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/AreaManager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/AutoScroll.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/AutoScroll.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/DropIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/DropIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/LazyManager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/LazyManager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/Moveable.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/Moveable.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/PureSource.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/PureSource.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/adapter/DndFromDojo.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/adapter/DndFromDojo.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/adapter/DndToDojo.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/adapter/DndToDojo.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/dropMode/DefaultDropMode.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/dropMode/DefaultDropMode.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/dropMode/OverDropMode.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/dropMode/OverDropMode.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/dropMode/VerticalDropMode.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/dropMode/VerticalDropMode.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mdnd/resources/dnd.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Accordion.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Accordion.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Audio.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Audio.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Badge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Badge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Button.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Button.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Carousel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Carousel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/CarouselItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/CarouselItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/CheckBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/CheckBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ComboBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ComboBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Container.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Container.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ContentPane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ContentPane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/DataCarousel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/DataCarousel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/DatePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/DatePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/EdgeToEdgeCategory.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/EdgeToEdgeCategory.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/EdgeToEdgeDataList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/EdgeToEdgeDataList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/EdgeToEdgeList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/EdgeToEdgeList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/EdgeToEdgeStoreList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/EdgeToEdgeStoreList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ExpandingTextArea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ExpandingTextArea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/FilteredListMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/FilteredListMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/FixedSplitter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/FixedSplitter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/FixedSplitterPane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/FixedSplitterPane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/FormLayout.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/FormLayout.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/GridLayout.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/GridLayout.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Heading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Heading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Icon.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Icon.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/IconContainer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/IconContainer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/IconItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/IconItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/IconMenu.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/IconMenu.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/IconMenuItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/IconMenuItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ListItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ListItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/LongListMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/LongListMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Opener.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Opener.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Overlay.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Overlay.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/PageIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/PageIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Pane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Pane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ProgressBar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ProgressBar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ProgressIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ProgressIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/RadioButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/RadioButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Rating.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Rating.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/RoundRect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/RoundRect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/RoundRectCategory.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/RoundRectCategory.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/RoundRectDataList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/RoundRectDataList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/RoundRectList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/RoundRectList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/RoundRectStoreList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/RoundRectStoreList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ScreenSizeAware.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ScreenSizeAware.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ScrollablePane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ScrollablePane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ScrollableView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ScrollableView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SearchBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SearchBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SimpleDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SimpleDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Slider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Slider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SpinWheel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SpinWheel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SpinWheelDatePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SpinWheelDatePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SpinWheelSlot.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SpinWheelSlot.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SpinWheelTimePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SpinWheelTimePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/StoreCarousel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/StoreCarousel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SwapView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/SwapView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Switch.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Switch.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TabBar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TabBar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TabBarButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TabBarButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TextArea.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TextArea.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TimePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TimePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ToggleButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ToggleButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ToolBarButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ToolBarButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Tooltip.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Tooltip.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TransitionEvent.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TransitionEvent.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TreeView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/TreeView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ValuePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ValuePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ValuePickerDatePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ValuePickerDatePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ValuePickerSlot.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ValuePickerSlot.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ValuePickerTimePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ValuePickerTimePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Video.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/Video.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/View.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/View.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ViewController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/ViewController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_ComboBoxMenu.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_ComboBoxMenu.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_ContentPaneMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_ContentPaneMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_DataListMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_DataListMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_DataMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_DataMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_DatePickerMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_DatePickerMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_EditableIconMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_EditableIconMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_EditableListMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_EditableListMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_ExecScriptMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_ExecScriptMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_IconItemPane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_IconItemPane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_ItemBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_ItemBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_ListTouchMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_ListTouchMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_PickerBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_PickerBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_PickerChooser.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_PickerChooser.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_ScrollableMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_ScrollableMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_StoreListMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_StoreListMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_StoreMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_StoreMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_TimePickerMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_TimePickerMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_compat.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_compat.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_css3.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_css3.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_maskUtils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/_maskUtils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/AlertDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/AlertDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/ImageThumbView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/ImageThumbView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/ImageView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/ImageView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/List.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/List.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/ListSelector.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/ListSelector.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/SceneAssistant.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/SceneAssistant.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/SceneController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/SceneController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/StageController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/StageController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/TextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/TextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/_FormWidget.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/_FormWidget.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/_Widget.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/_Widget.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/_event.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/_event.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/compat.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/app/compat.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Accordion.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Accordion.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Badge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Badge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Button.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Button.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Carousel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Carousel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/CarouselItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/CarouselItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/FormLayout.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/FormLayout.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Heading.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Heading.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Icon.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Icon.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/IconItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/IconItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/IconMenu.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/IconMenu.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/ListItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/ListItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/ProgressIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/ProgressIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Rating.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Rating.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/RoundRectCategory.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/RoundRectCategory.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Scrollable.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Scrollable.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/SimpleDialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/SimpleDialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/SpinWheelSlot.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/SpinWheelSlot.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/SwapView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/SwapView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Switch.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Switch.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/TabBar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/TabBar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/TabBarButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/TabBarButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/TextBox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/TextBox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/ToolBarButton.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/ToolBarButton.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Tooltip.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/Tooltip.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/TreeView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/TreeView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/ValuePickerSlot.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/ValuePickerSlot.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/_ComboBoxMenu.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/_ComboBoxMenu.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/_ItemBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/_ItemBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/_PickerBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/_PickerBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/_StoreListMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/_StoreListMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bidi/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bookmarkable.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/bookmarkable.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/build/build.bat create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/build/build.sh create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/compat.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/compat.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/deviceTheme.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/deviceTheme.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/ContentTypeMap.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/ContentTypeMap.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/DataHandler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/DataHandler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlContentHandler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlContentHandler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlScriptContentHandler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlScriptContentHandler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/JsonContentHandler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/JsonContentHandler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/PatternFileTypeMap.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/PatternFileTypeMap.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/StringDataSource.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/StringDataSource.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/SuffixFileTypeMap.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/SuffixFileTypeMap.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/UrlDataSource.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/UrlDataSource.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/i18n.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/i18n.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/iconUtils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/iconUtils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/lazyLoadUtils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/lazyLoadUtils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/migrationAssist.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/migrationAssist.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/mobile-all.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/mobile-all.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ar/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ar/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/bg/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/bg/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ca/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ca/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/cs/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/cs/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/da/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/da/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/de/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/de/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/el/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/el/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/es/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/es/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fi/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fi/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fr/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fr/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/he/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/he/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hr/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hr/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hu/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hu/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/id/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/id/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/it/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/it/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ja/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ja/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/kk/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/kk/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ko/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ko/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nb/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nb/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nl/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nl/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pl/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pl/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt-pt/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt-pt/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ro/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ro/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ru/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ru/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sk/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sk/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sl/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sl/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sv/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sv/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/th/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/th/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/tr/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/tr/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/uk/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/uk/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh-tw/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh-tw/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh/messages.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh/messages.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/pageTurningUtils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/pageTurningUtils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/parser.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/parser.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/scrollable.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/scrollable.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/sniff.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/sniff.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Accordion-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Accordion.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Accordion_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Button-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Button.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Carousel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Carousel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/CheckBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/CheckBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ComboBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ComboBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ComboBox_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/DatePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/EdgeToEdgeCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/EdgeToEdgeList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/FixedSplitter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/FormLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/FormLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/GridLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/GridLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Heading-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Heading.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Opener-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Opener.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Overlay-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Overlay.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Overlay.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/PageIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/PageIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressIndicator_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RadioButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RadioButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRect-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRect.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectCategory_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectList-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ScrollablePane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SearchBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SearchBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SimpleDialog-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SimpleDialog.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Slider-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Slider.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextArea-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextArea.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TimePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToggleButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToggleButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToggleButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToolBarButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToolBarButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToolBarButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Tooltip-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Tooltip.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ValuePicker-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ValuePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ValuePicker.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/View.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/View.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android-app-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android-app.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/common-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/arrow-button-bg-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/arrow-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/arrow-button-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/arrow-button-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/arrow-button-right-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/arrow-button-right-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/blue-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/blue-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-arrow-head-bg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-chk-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-unsel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/gray-arrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/icon-content-heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/red-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/red-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/slider-h-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/slider-h-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/slider-handle-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-arc1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-arc1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-arc1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-arc2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-arc2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-arc2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-square-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-square-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-square-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-orange-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-seg-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-seg-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-slim-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-tall-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/togglebutton-chk-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/togglebutton-chk-mark-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/valuepicker-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/Calendar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/Calendar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/compat/calendar-datelabel-act-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/compat/calendar-datelabel-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/compat/calendar-month-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/compat/calendar-year-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/images/thumb-overlay-large.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/images/thumb-overlay-small.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/images/thumb-overlay.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/variables.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/variables_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Accordion-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Accordion.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Accordion_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Button-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Button.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Carousel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Carousel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/CheckBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/CheckBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/DatePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/EdgeToEdgeCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/EdgeToEdgeList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/FixedSplitter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/FormLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/FormLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/GridLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/GridLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Heading-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Heading.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Opener-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Opener.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Overlay-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Overlay.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Overlay.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/PageIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/PageIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressIndicator_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RadioButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RadioButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRect-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRect.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectCategory-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectCategory_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectList-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ScrollablePane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SearchBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SearchBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SimpleDialog-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SimpleDialog.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Slider-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Slider.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextArea-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextArea.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TimePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToggleButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToggleButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToggleButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToolBarButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToolBarButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToolBarButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Tooltip-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Tooltip.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ValuePicker-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ValuePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ValuePicker.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/View.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/View.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/common-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-bg-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-head.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-right-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-right-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/blue-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/blue-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-arrow-head-bg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-chk-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-unsel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/gray-arrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/icon-content-heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/red-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/red-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/slider-h-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/slider-h-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/slider-handle-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-round1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-round1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-round1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-round2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-round2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-round2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-square-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-square-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-square-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-orange-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-seg-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-seg-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-slim-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-tall-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/togglebutton-chk-mark-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/valuepicker-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/compat/calendar-datelabel-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/compat/calendar-month-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/compat/calendar-year-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/images/thumb-overlay-large.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/images/thumb-overlay-small.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/images/thumb-overlay.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/variables.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/variables_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Accordion-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Accordion.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Accordion_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Button-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Button.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Carousel.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Carousel_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/CheckBox-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/CheckBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ComboBox-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ComboBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ComboBox_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/EdgeToEdgeCategory.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/EdgeToEdgeList.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/FixedSplitter.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/FormLayout.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/FormLayout_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/GridLayout.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/GridLayout_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Heading-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Heading.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer_keyframes.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu_rtl-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ListItem-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ListItem.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ListItem_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Overlay-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Overlay.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/PageIndicator.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/PageTurning.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressBar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressBar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressIndicator-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressIndicator.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressIndicator_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RadioButton-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RadioButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRect-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRect.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectCategory.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectCategory_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectList-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectList.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ScrollablePane.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SearchBox-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SearchBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SimpleDialog-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SimpleDialog.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Slider-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Slider.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel_rtl-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch_rtl-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar_rtl-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextArea-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextArea.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextBox-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToggleButton-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToggleButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToggleButton_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToolBarButton-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToolBarButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToolBarButton_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Tooltip-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Tooltip.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ValuePicker-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ValuePicker.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/View.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/common-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/common.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/compat/spinwheel-bar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/compat/spinwheel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/css3.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/dijit/Calendar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/dijit/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/dijit/ColorPalette.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/dijit/ColorPicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/dijit/base.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/dijit/dijit.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBall-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBall.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBall.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonColorButtons-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonColorButtons.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonColorButtons.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayCross-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayCross.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayCross.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayStar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayStar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayStar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBall-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBall.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBall.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBadge-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBadge.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBadge.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBall-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBall.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBall.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCross-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCross.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCross.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent19.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent19.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent29.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent29.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent30.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent30.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonYellowStar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonYellowStar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonYellowStar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonArrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackCircleCross.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackDownArrow16.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackLeftArrow16.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackRightArrow16.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackUpArrow16.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlueBall.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlueCircleArrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlueCircleMinus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlueCirclePlus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlueMinus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBluePlus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonCheck.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonCheckboxOff.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonCheckboxOn.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonDarkBlueCheck.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonDarkBlueMinus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonDarkBluePlus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayArrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayArrow_rtl.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayCross.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayKnob.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayMinus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayPlus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayStar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGreenBall.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGreenCircleArrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGreenCircleMinus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGreenCirclePlus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonOrangeBall.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedBall.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedCircleArrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedCircleMinus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedCirclePlus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedCross.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedMinus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedPlus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleDownArrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleGrayButton.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleGreenButton.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleGreenPlus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleOrangeButton.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleRedCross.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteArrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteCheck.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteCross.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteDownArrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteDownArrow16.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteLeftArrow16.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteMinus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhitePlus.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteRightArrow16.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteSearch.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteUpArrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteUpArrow16.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonYellowStar.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cover.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cover.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/coverv.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/coverv.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cube.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cube.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/dissolve.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/dissolve.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/fade.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/fade.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/flip.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/flip.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/reveal.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/reveal.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/revealv.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/revealv.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleIn.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleIn.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleOut.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleOut.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slide.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slide.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slidev.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slidev.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swap.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swap.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swirl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swirl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomIn.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomIn.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomOut.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomOut.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Accordion-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Accordion.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Accordion_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Button-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Button.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Carousel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Carousel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/CheckBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/CheckBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ComboBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ComboBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ComboBox_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/DatePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/EdgeToEdgeCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/EdgeToEdgeList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/FixedSplitter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/FormLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/FormLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/GridLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/GridLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Heading-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Heading.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Opener-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Opener.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Overlay-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Overlay.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Overlay.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/PageIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/PageIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressIndicator_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RadioButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RadioButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRect-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRect.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectCategory_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectList-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ScrollablePane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SearchBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SearchBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SimpleDialog-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SimpleDialog.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Slider-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Slider.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextArea-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextArea.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TimePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToggleButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToggleButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToggleButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToolBarButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToolBarButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToolBarButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Tooltip-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Tooltip.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ValuePicker-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ValuePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ValuePicker.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/View.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/View.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/common-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/common.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-bg-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-right-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-right-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/blue-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/blue-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-arrow-head-bg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-chk-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-unsel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/icon-content-heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/red-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/red-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/slider-h-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/slider-h-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/slider-handle-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-arc1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-arc1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-arc1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-arc2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-arc2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-arc2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-round1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-round1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-round1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-round2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-round2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-round2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-square-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-square-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-square-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/tab-seg-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/tab-seg-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/tab-slim-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/tab-tall-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/togglebutton-chk-mark-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/valuepicker-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/compat/calendar-datelabel-act-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/compat/calendar-datelabel-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/compat/calendar-month-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/compat/calendar-year-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/images/thumb-overlay-large.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/images/thumb-overlay-small.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/images/thumb-overlay.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/variables.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/variables_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Accordion-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Accordion.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Accordion_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Carousel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Carousel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/CheckBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/CheckBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/CheckBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ComboBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ComboBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ComboBox_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/DatePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/EdgeToEdgeCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/EdgeToEdgeList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/FixedSplitter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/FormLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/FormLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/GridLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/GridLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Heading-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Heading-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Heading.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Opener-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Opener.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Overlay-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Overlay.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Overlay.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/PageIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/PageIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressBar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressIndicator_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RadioButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RadioButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RadioButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRect-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRect.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectCategory_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectList-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ScrollablePane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SearchBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SearchBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SimpleDialog-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SimpleDialog.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Slider-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Slider.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Slider.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextArea-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextArea.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TimePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToggleButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToggleButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToggleButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToolBarButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToolBarButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToolBarButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Tooltip-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Tooltip.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/View.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/View.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/android-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/android_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/common-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/arrow-button-bg-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/arrow-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/arrow-button-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/arrow-button-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/arrow-button-right-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/arrow-button-right-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/blue-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/blue-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-arrow-head-bg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-chk-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-unsel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/gray-arrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/icon-content-heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/red-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/red-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/slider-h-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/slider-h-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/slider-handle-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-arc1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-arc1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-arc1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-arc2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-arc2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-arc2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-square-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-square-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-square-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-orange-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-seg-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-seg-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-slim-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-tall-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/togglebutton-chk-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/togglebutton-chk-mark-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/valuepicker-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/Calendar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/Calendar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/compat/calendar-datelabel-act-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/compat/calendar-datelabel-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/compat/calendar-month-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/compat/calendar-year-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/holodark.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/holodark_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/images/thumb-overlay-large.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/images/thumb-overlay-small.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/images/thumb-overlay.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/images/vseparator.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/variables.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/variables_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Accordion-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Accordion.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Accordion_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Carousel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Carousel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/CheckBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/CheckBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/CheckBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ComboBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ComboBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ComboBox_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/DatePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/EdgeToEdgeCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/EdgeToEdgeList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/FixedSplitter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/FormLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/FormLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/GridLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/GridLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Heading-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Heading-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Heading.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Opener-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Opener.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Overlay-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Overlay.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Overlay.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/PageIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/PageIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/PageIndicator.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressIndicator_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RadioButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RadioButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RadioButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRect-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRect.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectCategory_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectList-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ScrollablePane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SearchBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SearchBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SimpleDialog-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SimpleDialog.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Slider-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Slider.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Slider.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextArea-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextArea.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TimePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Tooltip-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Tooltip.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/View.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/View.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/android-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/android_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/common-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/arrow-button-bg-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/arrow-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/arrow-button-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/arrow-button-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/arrow-button-right-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/arrow-button-right-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/blue-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/blue-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-arrow-head-bg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-chk-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-unsel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/gray-arrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/icon-content-heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/red-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/red-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/slider-h-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/slider-h-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/slider-handle-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-arc1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-arc1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-arc1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-arc2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-arc2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-arc2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-square-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-square-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-square-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-orange-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-seg-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-seg-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-slim-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-tall-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/togglebutton-chk-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/togglebutton-chk-mark-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/valuepicker-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/Calendar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/Calendar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/compat/calendar-datelabel-act-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/compat/calendar-datelabel-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/compat/calendar-month-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/compat/calendar-year-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/images/thumb-overlay-large.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/images/thumb-overlay-small.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/images/thumb-overlay.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/images/vseparator.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ios7.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ios7_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/variables.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/variables_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Accordion-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Accordion.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Accordion_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Button-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Button.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Carousel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Carousel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/CheckBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/CheckBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ComboBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ComboBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ComboBox_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/DatePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/EdgeToEdgeCategory-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/EdgeToEdgeCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/EdgeToEdgeList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/FixedSplitter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/FormLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/FormLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/GridLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/GridLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Heading-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Heading.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Heading.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Opener-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Opener.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Overlay-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Overlay.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Overlay.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/PageIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/PageIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressIndicator_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RadioButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RadioButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRect-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRect.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectCategory_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectList-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ScrollablePane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SearchBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SearchBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SimpleDialog-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SimpleDialog.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SimpleDialog.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Slider-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Slider.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextArea-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextArea.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TimePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToggleButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToggleButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToggleButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Tooltip-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Tooltip.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ValuePicker-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ValuePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ValuePicker.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/View.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/View.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/common-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/common.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/arrow-button-bg-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/arrow-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/arrow-button-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/arrow-button-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/arrow-button-right-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/arrow-button-right-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/blue-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/blue-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-arrow-head-bg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-chk-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-unsel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/edge-categ-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/gray-arrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/icon-content-heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-arrow-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-arrow-button-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-arrow-button-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-arrow-button-right-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-arrow-button-right-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-arrow-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/red-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/red-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/slider-h-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/slider-h-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/slider-handle-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-default-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-default-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-default-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-square-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-square-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-square-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-seg-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-seg-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-slim-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-tall-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/togglebutton-chk-mark-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tooltip-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tooltip-heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/valuepicker-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/white-arrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/dijit/Calendar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/dijit/Calendar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/dijit/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/dijit/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/dijit/compat/calendar-daylabel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/dijit/compat/calendar-month-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/dijit/compat/calendar-year-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/images/thumb-overlay-large.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/images/thumb-overlay-small.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/images/thumb-overlay.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ipad-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ipad.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone-app-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone-app.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/variables.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/variables_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/cleanup.bat create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/cleanup.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/cleanup.sh create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/compile.bat create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/compile.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/compile.sh create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Button-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Button.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Button.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Carousel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Carousel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/CheckBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/CheckBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/CheckBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/DatePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeCategory.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeList.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/FixedSplitter.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/FormLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/FormLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/GridLayout.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/GridLayout_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Heading-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Heading.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Heading.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Opener-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Opener.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Overlay-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Overlay.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Overlay.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/PageIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/PageIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressBar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RadioButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RadioButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RadioButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRect-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRect.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectCategory.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectCategory_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectList-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectList.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ScrollablePane.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ScrollablePane.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SearchBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SearchBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SearchBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SimpleDialog-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SimpleDialog.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SimpleDialog.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Slider-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Slider.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Slider.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar_rtl-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextArea-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextArea.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextArea.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextBox-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextBox.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextBox.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TimePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Tooltip-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Tooltip.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Tooltip.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ValuePicker-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ValuePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ValuePicker.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/View.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/View.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/base-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/base.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/base_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/common-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/common.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/common.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/arrow-button-bg-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/arrow-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/arrow-button-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/arrow-button-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/arrow-button-right-head-sel.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/arrow-button-right-head.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/blue-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/blue-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-arrow-head-bg.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-chk-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-unsel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/gray-arrow.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/icon-content-heading-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/red-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/red-button-sel-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/slider-h-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/slider-h-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/slider-handle-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-arc1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-arc1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-arc1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-arc2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-arc2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-arc2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round1-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round1-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round1-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round2-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round2-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round2-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-square-k.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-square-l.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-square-r.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-orange-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-seg-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-seg-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-sel-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-slim-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-tall-bar-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/togglebutton-chk-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/togglebutton-chk-mark-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/valuepicker-button-bg.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/dijit/Calendar-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/dijit/Calendar-compat.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/dijit/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/dijit/Calendar.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/check-disabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/dark/back.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/dark/check.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/dark/radiobtn.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/light/back.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/light/check.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/light/radiobtn.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/radiobtn-disabled.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/variables.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/variables_rtl.less create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/windows-compat.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/windows.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/windows_rtl.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/transition.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/transition.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/uacss.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/uacss.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/viewRegistry.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/viewRegistry.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Bind.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Bind.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditModelRefController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditModelRefController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditStoreRefController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditStoreRefController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditStoreRefListController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditStoreRefListController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Element.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Element.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Generate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Generate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Group.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Group.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ListController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ListController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ModelRefController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ModelRefController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Output.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Output.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Repeat.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Repeat.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulArray.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulArray.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulModel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulModel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulSeries.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulSeries.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StoreRefController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StoreRefController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Templated.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Templated.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/WidgetList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/WidgetList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Container.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Container.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Controller.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Controller.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingExtension.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingExtension.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_InlineTemplateMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_InlineTemplateMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_TextBoxExtensions.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_TextBoxExtensions.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingExtension.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingExtension.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingMixin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingMixin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_patches.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_patches.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/at.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/at.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/atBindingExtension.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/atBindingExtension.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/equals.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/equals.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getPlainValue.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getPlainValue.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getStateful.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getStateful.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/parserExtension.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/parserExtension.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/resolve.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/resolve.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/sync.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/sync.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/package.json create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rails.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rails.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rails/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/resources/README.template create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/resources/explore.php create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/robot/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/robot/recorder.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/robot/recorder.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Client.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Client.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRPC.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRPC.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRest.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRest.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/OfflineRest.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/OfflineRest.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/ProxiedPath.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/ProxiedPath.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Rest.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Rest.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/dojo-api.smd create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/friendfeed.smd create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/geonames.smd create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/google.smd create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/twitter.smd create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/wikipedia.smd create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/yahoo.smd create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Service.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Service.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/DOM.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/DOM.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/capability.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/capability.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/fromJson.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/fromJson.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/sandbox.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/sandbox.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Anchor.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Anchor.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Annotation.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Annotation.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/DoubleArrowAnnotation.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/DoubleArrowAnnotation.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Figure.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Figure.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/LeadAnnotation.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/LeadAnnotation.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/PreexistingAnnotation.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/PreexistingAnnotation.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/SingleArrowAnnotation.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/SingleArrowAnnotation.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Slider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Slider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Toolbar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Toolbar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UnderlineAnnotation.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UnderlineAnnotation.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UndoStack.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UndoStack.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/_Plugin.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/_Plugin.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/resources/images/icons.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/resources/sketch.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket/Reconnect.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket/Reconnect.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/LICENSE create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_crypto.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_crypto.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirDBStorageProvider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirDBStorageProvider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirEncryptedLocalStorageProvider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirEncryptedLocalStorageProvider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirFileStorageProvider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirFileStorageProvider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/BehaviorStorageProvider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/BehaviorStorageProvider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/CookieStorageProvider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/CookieStorageProvider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/FlashStorageProvider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/FlashStorageProvider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/GearsStorageProvider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/GearsStorageProvider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/LocalStorageProvider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/LocalStorageProvider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/Provider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/Provider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/Storage.as create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/Storage.swf create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/WhatWGStorageProvider.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/WhatWGStorageProvider.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/_common.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/_common.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/buildFlashStorage.sh create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/manager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/manager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/storage_dialog.fla create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/storage_dialog.swf create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/LocalDB.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/LocalDB.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/db/IndexedDB.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/db/IndexedDB.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/db/SQL.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/db/SQL.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/db/has.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/db/has.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/priority.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/priority.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/transaction.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/store/transaction.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/string/BidiComplex.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/string/BidiComplex.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/string/BidiEngine.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/string/BidiEngine.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/string/Builder.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/string/Builder.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/string/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/string/sprintf.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/string/sprintf.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/string/tokenize.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/string/tokenize.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/testing/DocTest.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/testing/DocTest.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/testing/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing/Sequence.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing/Sequence.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing/Streamer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing/Streamer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing/ThreadPool.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing/ThreadPool.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing/doLater.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/timing/doLater.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/DrillDownUp.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/DrillDownUp.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/GroupLabel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/GroupLabel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/Keyboard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/Keyboard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/ScaledLabel.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/ScaledLabel.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/TreeMap.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/TreeMap.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/_utils.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/_utils.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/themes/DrillDownUp.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/themes/GroupLabel.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/themes/MobileTreeMap.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/treemap/themes/TreeMap.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/uuid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/uuid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/uuid/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/uuid/Uuid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/uuid/Uuid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/uuid/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/uuid/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/uuid/generateRandomUuid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/uuid/generateRandomUuid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/uuid/generateTimeBasedUuid.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/uuid/generateTimeBasedUuid.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/br.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/br.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/ca.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/ca.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/check.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/check.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/creditCard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/creditCard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/isbn.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/isbn.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/regexp.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/regexp.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/us.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/us.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/web.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/validate/web.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/AnalogGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/AnalogGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/AutoRotator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/AutoRotator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/BarGauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/BarGauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/Calendar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/Calendar.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarDay.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarMonth.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarMonthYear.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarYear.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar2Pane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar2Pane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar3Pane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar3Pane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFisheye.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFisheye.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFx.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFx.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarViews.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarViews.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/ColorPicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/ColorPicker.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/hue.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/hueHandle.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/hueHandleA11y.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/pickerPointer.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/underlay.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DailyCalendar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DailyCalendar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DataPresentation.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DataPresentation.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/Dialog.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/Dialog.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/images/dialogCloseButton.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/images/dialogCloseButton.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DialogSimple.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DialogSimple.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester/DocTester.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester/DocTester.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DynamicTooltip.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DynamicTooltip.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FeedPortlet.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FeedPortlet.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/FilePicker.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/_FileInfoPane.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/images/nihiloFileIcons.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/images/soriaFileIcons.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/images/tundraFileIcons.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeList/FisheyeList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeListItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeListItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeLite.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeLite.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Iterator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Iterator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader/Loader.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader/icons/loading.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthAndYearlyCalendar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthAndYearlyCalendar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthlyCalendar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthlyCalendar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MultiSelectCalendar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MultiSelectCalendar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MultiSelectCalendar/MultiSelectCalendar.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/Pager.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/Pager.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/images/hNext.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/images/hPrevious.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/images/pageActive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/images/pageInactive.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/images/vNext.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/images/vPrevious.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PagerItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PagerItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PlaceholderMenuItem.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PlaceholderMenuItem.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Portlet.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Portlet.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Portlet/Portlet.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Portlet/images/icons.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Portlet/images/icons.png create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletDialogSettings.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletDialogSettings.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletSettings.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletSettings.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Roller.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Roller.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/RollingList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/RollingList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/RollingList/RollingList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/RollingList/RollingList.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Rotator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Rotator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Selection.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Selection.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/SortList.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/SortList.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/SortList/SortList.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/SortList/SortList.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Standby.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Standby.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Standby/images/loading.gif create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/TitleGroup.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/TitleGroup.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/TitleGroup/TitleGroup.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Toaster.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Toaster.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Toaster/Toaster.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/UpgradeBar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/UpgradeBar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/UpgradeBar/UpgradeBar.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/UpgradeBar/UpgradeBar.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard/Wizard.css create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard/Wizard.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/WizardPane.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/WizardPane.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/YearlyCalendar.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/YearlyCalendar.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarBase.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarBase.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDay.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDay.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDayView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDayView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonth.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonth.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYear.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYear.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYearView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYearView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYear.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYear.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYearView.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYearView.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_FisheyeFX.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_FisheyeFX.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_Invalidating.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_Invalidating.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArcIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArcIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArrowIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArrowIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogNeedleIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogNeedleIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/BarIndicator.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/BarIndicator.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/_Gauge.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/_Gauge.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/ColorPicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/ColorPicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/FilePicker.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/FilePicker.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/Wizard.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/Wizard.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Controller.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Controller.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Fade.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Fade.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Pan.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Pan.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/PanFade.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/PanFade.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Slide.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Slide.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/ThumbnailController.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/ThumbnailController.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Wipe.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Wipe.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/CompositeWire.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/CompositeWire.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/DataWire.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/DataWire.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TableAdapter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TableAdapter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TextAdapter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TextAdapter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TreeAdapter.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TreeAdapter.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/Wire.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/Wire.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/XmlWire.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/XmlWire.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/_base.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/_base.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Action.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Action.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Data.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Data.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/DataStore.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/DataStore.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Invocation.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Invocation.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/JsonHandler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/JsonHandler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/RestHandler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/RestHandler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Service.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Service.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Transfer.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Transfer.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/XmlHandler.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/XmlHandler.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/util.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/util.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/DomParser.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/DomParser.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/Script.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/Script.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/parser.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/parser.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/widgetParser.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/widgetParser.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/ChatService.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/ChatService.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/PresenceService.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/PresenceService.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/README create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/RosterService.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/RosterService.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/TransportSession.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/TransportSession.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/UserService.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/UserService.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/bosh.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/bosh.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/sasl.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/sasl.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/util.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/util.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/widget/ChatSession.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/widget/ChatSession.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/widget/templates/ChatSession.html create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/xmppSession.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/xmppSession.js.uncompressed.js create mode 100644 src/hos_cosgi_testwebapp/webroot/DojoApp/hello.html delete mode 100644 src/hos_deps/cmake/Modules/Findlibhttpserver.cmake delete mode 100755 src/hos_deps/scripts/libgcrypt_install.sh delete mode 100755 src/hos_deps/scripts/libhttpserver_install.sh rename src/hos_deps/scripts/{libmicrohttpd_install.sh => poco_install.sh} (59%) diff --git a/src/hos_cosgi_devicerepository/CMakeLists.txt b/src/hos_cosgi_devicerepository/CMakeLists.txt index fe019be3..d7d84152 100644 --- a/src/hos_cosgi_devicerepository/CMakeLists.txt +++ b/src/hos_cosgi_devicerepository/CMakeLists.txt @@ -65,6 +65,8 @@ target_link_libraries(hos_cosgi_devicerepository ${Poco_LIBRARIES} ) +message("Poco_LIBRARIES: ${Poco_LIBRARIES}") + ############# ## Install ## diff --git a/src/hos_cosgi_testwebapp/CMakeLists.txt b/src/hos_cosgi_testwebapp/CMakeLists.txt index 3f586001..9d8685ee 100644 --- a/src/hos_cosgi_testwebapp/CMakeLists.txt +++ b/src/hos_cosgi_testwebapp/CMakeLists.txt @@ -5,12 +5,14 @@ project(hos_cosgi_testwebapp) find_package(catkin REQUIRED COMPONENTS hos_celix hos_cosgi_webserver + hos_deps ) ## System dependencies are found with CMake's conventions find_package(APR REQUIRED) find_package(CELIX REQUIRED) find_package(Boost REQUIRED) +find_package(Poco REQUIRED COMPONENTS Net NetSSL) ################################### @@ -37,6 +39,7 @@ include_directories( ${catkin_INCLUDE_DIRS} ${APR_INCLUDE_DIR} ${APR_INCLUDE_DIR}/apr-1.0 + ${Poco_INCLUDE_DIRS} ) set(BUNDLE_SYMBOLICNAME "hos.hos_testwebapp") diff --git a/src/hos_cosgi_testwebapp/Notes.txt b/src/hos_cosgi_testwebapp/Notes.txt new file mode 100644 index 00000000..c9fab942 --- /dev/null +++ b/src/hos_cosgi_testwebapp/Notes.txt @@ -0,0 +1,3 @@ + +http://kendo-labs.github.io/angular-kendo + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/build-report.txt b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/build-report.txt new file mode 100644 index 00000000..5b9d46b3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/build-report.txt @@ -0,0 +1,5435 @@ +Build started: Sun Jan 18 2015 19:18:17 GMT-0800 (PST) +Build application version: 1.10.4 (37e1249) +Messages: +info(100) Assumed module uses legacy loader API. + module: dojox/mobile/app/_FormWidget + module: dojox/jsonPath/query + module: dojox/lang/oo/mixin + module: dojox/wire/XmlWire + module: dojox/xmpp/sasl + module: dojox/lang/oo/general + module: dojox/secure/capability + module: dojox/mobile/app/_event + module: dojox/storage/manager + module: dojox/widget/gauge/AnalogArcIndicator + module: dojox/layout/BorderContainer + module: dojox/layout/dnd/PlottedDnd + module: dojox/lang/async/timeout + module: dojox/wire/CompositeWire + module: dojox/secure/fromJson + module: dojox/wire/ml/XmlHandler + module: dojox/lang/aspect/profiler + module: dojox/widget/FilePicker + module: dojox/mobile/app/_base + module: dojox/widget/gauge/AnalogArrowIndicator + module: dojox/lang/async + module: dojox/lang/aspect/timer + module: dojox/lang/oo/rearrange + module: dojox/mobile/app/_Widget + module: dojox/wire/ml/Data + module: dojox/xmpp/TransportSession + module: dojox/lang/typed + module: dojox/wire/ml/Invocation + module: dojox/widget/gauge/AnalogNeedleIndicator + module: dojox/xmpp/ChatService + module: dojox/wire/TreeAdapter + module: dojox/xmpp/PresenceService + module: dojox/lang/aspect/tracer + module: dojox/wire/DataWire + module: dojox/widget/SortList + module: dojox/mobile/app/compat + module: dojox/data/restListener + module: dojox/xmpp/RosterService + module: dojox/drawing/plugins/drawing/Silverlight + module: dojox/widget/DocTester + module: dojox/storage/Provider + module: dojox/lang/observable + module: dojox/data/ItemExplorer + module: dojox/help/console + module: dojox/lang/oo/Decorator + module: dojox/secure/DOM + module: dojox/wire/ml/JsonHandler + module: dojox/widget/DataPresentation + module: dojox/widget/FeedPortlet + module: dojox/lang/async/topic + module: dojox/widget/RollingList + module: dojox/flash/_base + module: dojox/widget/gauge/BarIndicator + module: dojox/image/SlideShow + module: dojox/lang/aspect/memoizer + module: dojox/xmpp/xmppSession + module: dojox/image/Gallery + module: dojox/storage/AirDBStorageProvider + module: dojox/widget/Iterator + module: dojox/storage/AirEncryptedLocalStorageProvider + module: dojox/layout/ext-dijit/layout/StackContainer-touch + module: dojox/lang/functional/listcomp + module: dojox/lang/functional/binrec + module: dojox/rails + module: dojox/wire/ml/DataStore + module: dojox/mobile/app/ImageView + module: dojox/widget/BarGauge + module: dojox/lang/functional/util + module: dojox/storage/BehaviorStorageProvider + module: dojox/lang/aspect/memoizerGuard + module: dojox/mobile/app/TextBox + module: dojox/lang/async/event + module: dojox/wire/ml/Action + module: dojox/storage/GearsStorageProvider + module: dojox/help/_base + module: dojox/mobile/app/ListSelector + module: dojox/lang/oo/aop + module: dojox/lang/functional/tailrec + module: dojox/sql/_crypto + module: dojox/lang/aspect + module: dojox/mobile/app/ImageThumbView + module: dojox/mobile/app/SceneAssistant + module: dojox/lang/aspect/counter + module: dojox/layout/dnd/Avatar + module: dojox/xmpp/util + module: dojox/wire/ml/Transfer + module: dojox/widget/Loader + module: dojox/storage/LocalStorageProvider + module: dojox/wire/TextAdapter + module: dojox/storage/AirFileStorageProvider + module: dojox/lang/functional/curry + module: dojox/storage/CookieStorageProvider + module: dojox/lang/functional/linrec + module: dojox/xmpp/widget/ChatSession + module: dojox/storage/WhatWGStorageProvider + module: dojox/wire/ml/util + module: dojox/widget/AnalogGauge + module: dojox/lang/aspect/cflow + module: dojox/xmpp/bosh + module: dojox/widget/gauge/_Gauge + module: dojox/wire/Wire + module: dojox/wire/_base + module: dojox/lang/functional/numrec + module: dojox/mobile/app/List + module: dojox/secure/sandbox + module: dojox/wire/ml/RestHandler + module: dojox/sql/_base + module: dojox/wire/TableAdapter + module: dojox/storage/_common + module: dojox/jq + module: dojox/mobile/app/StageController + module: dojox/widget/DynamicTooltip + module: dojox/data/StoreExplorer + module: dojox/xmpp/UserService + module: dojox/lang/functional/zip + module: dojox/mobile/app/SceneController + module: dojox/lang/functional/multirec + module: dojox/wire/ml/Service + module: dojox/robot/recorder + module: dojox/mobile/app/AlertDialog + module: dojox/storage/FlashStorageProvider + module: dojox/lang/docs + module: dojox/lang/oo/Filter + module: dojox/image/ThumbnailPicker +info(102) Optimizing module + module: dijit/_editor/nls/sk/FontChoice + module: dijit/form/nls/it/validate + module: dijit/form/nls/da/Textarea + module: dijit/nls/pt-pt/common + module: dijit/selection + module: dijit/form/nls/hr/ComboBox + module: dijit/MenuBar + module: dijit/nls/pt-pt/loading + module: dijit/_editor/nls/pl/LinkDialog + module: dijit/form/nls/ca/ComboBox + module: dijit/Viewport + module: dijit/form/nls/sv/ComboBox + module: dijit/_editor/nls/es/commands + module: dijit/_editor/range + module: dijit/_editor/nls/bg/LinkDialog + module: dijit/form/nls/sl/Textarea + module: dijit/Dialog + module: dijit/nls/fi/common + module: dijit/_ConfirmDialogMixin + module: dijit/_editor/nls/ja/LinkDialog + module: dijit/form/nls/da/ComboBox + module: dijit/form/Slider + module: dijit/_Templated + module: dijit/_editor/nls/az/commands + module: dijit/_editor/RichText + module: dijit/ToolbarSeparator + module: dijit/form/RadioButton + module: dijit/MenuSeparator + module: dijit/form/ToggleButton + module: dijit/nls/ko/common + module: dijit/CheckedMenuItem + module: dijit/form/nls/nl/ComboBox + module: dijit/_tree/dndSource + module: dijit/nls/zh/common + module: dijit/_editor/nls/FontChoice + module: dijit/_editor/nls/id/LinkDialog + module: dijit/form/nls/nb/Textarea + module: dijit/form/nls/el/Textarea + module: dijit/form/nls/de/ComboBox + module: dijit/form/nls/bg/validate + module: dijit/form/nls/he/ComboBox + module: dijit/_DialogMixin + module: dijit/_Widget + module: dijit/form/_SearchMixin + module: dijit/layout/AccordionContainer + module: dijit/form/nls/hu/validate + module: dijit/form/nls/uk/validate + module: dijit/_editor/nls/id/FontChoice + module: dijit/_editor/nls/ko/FontChoice + module: dijit/form/SimpleTextarea + module: dijit/Destroyable + module: dijit/form/nls/fi/Textarea + module: dijit/form/nls/tr/validate + module: dijit/_editor/nls/hu/FontChoice + module: dijit/form/nls/cs/ComboBox + module: dijit/form/MultiSelect + module: dijit/form/nls/zh/validate + module: dijit/tree/model + module: dijit/nls/pt/common + module: dijit/form/nls/fr/validate + module: dijit/form/nls/it/Textarea + module: dijit/tree/ObjectStoreModel + module: dijit/tree/ForestStoreModel + module: dijit/form/nls/ro/validate + module: dijit/nls/sv/common + module: dijit/_Calendar + module: dijit/form/TimeTextBox + module: dijit/layout/SplitContainer + module: dijit/Menu + module: dijit/nls/dijit-all_ar + module: dijit/nls/dijit-all_ca + module: dijit/nls/dijit-all_cs + module: dijit/nls/dijit-all_da + module: dijit/nls/dijit-all_de + module: dijit/nls/dijit-all_el + module: dijit/nls/dijit-all_en-gb + module: dijit/nls/dijit-all_en-us + module: dijit/nls/dijit-all_es-es + module: dijit/nls/dijit-all_fi-fi + module: dijit/nls/dijit-all_fr-fr + module: dijit/nls/dijit-all_he-il + module: dijit/nls/dijit-all_hu + module: dijit/nls/dijit-all_it-it + module: dijit/nls/dijit-all_ja-jp + module: dijit/nls/dijit-all_ko-kr + module: dijit/nls/dijit-all_nl-nl + module: dijit/nls/dijit-all_nb + module: dijit/nls/dijit-all_pl + module: dijit/nls/dijit-all_pt-br + module: dijit/nls/dijit-all_pt-pt + module: dijit/nls/dijit-all_ru + module: dijit/nls/dijit-all_sk + module: dijit/nls/dijit-all_sl + module: dijit/nls/dijit-all_sv + module: dijit/nls/dijit-all_th + module: dijit/nls/dijit-all_tr + module: dijit/nls/dijit-all_zh-tw + module: dijit/nls/dijit-all_zh-cn + module: dijit/nls/dijit-all_ROOT + module: dijit/dijit-all + module: dijit/ConfirmDialog + module: dijit/_base/window + module: dijit/_editor/nls/ru/FontChoice + module: dijit/_editor/nls/pt-pt/LinkDialog + module: dijit/form/nls/pt-pt/ComboBox + module: dijit/form/MappedTextBox + module: dijit/_editor/nls/sv/LinkDialog + module: dijit/form/nls/ko/validate + module: dijit/nls/sl/common + module: dijit/form/nls/pt/ComboBox + module: dijit/form/CheckBox + module: dijit/nls/common + module: dijit/form/Textarea + module: dijit/form/DropDownButton + module: dijit/_base/scroll + module: dijit/nls/sl/loading + module: dijit/nls/az/common + module: dijit/nls/ro/loading + module: dijit/form/nls/it/ComboBox + module: dijit/_TimePicker + module: dijit/form/nls/pl/validate + module: dijit/form/nls/zh-tw/validate + module: dijit/_editor/nls/cs/FontChoice + module: dijit/nls/zh/loading + module: dijit/nls/kk/common + module: dijit/_editor/nls/sk/commands + module: dijit/_Contained + module: dijit/form/nls/el/validate + module: dijit/InlineEditBox + module: dijit/nls/ja/loading + module: dijit/_editor/nls/az/LinkDialog + module: dijit/nls/id/loading + module: dijit/_editor/nls/id/commands + module: dijit/form/nls/bg/Textarea + module: dijit/_Container + module: dijit/_editor/nls/it/LinkDialog + module: dijit/layout/BorderContainer + module: dijit/_base/wai + module: dijit/_editor/nls/sl/LinkDialog + module: dijit/form/nls/es/validate + module: dijit/form/nls/hu/Textarea + module: dijit/form/nls/uk/Textarea + module: dijit/_editor/nls/th/FontChoice + module: dijit/form/nls/tr/Textarea + module: dijit/form/ComboBoxMixin + module: dijit/form/Select + module: dijit/Calendar + module: dijit/form/nls/ru/ComboBox + module: dijit/_editor/nls/it/FontChoice + module: dijit/_editor/nls/hr/commands + module: dijit/_editor/nls/da/LinkDialog + module: dijit/_base/manager + module: dijit/_editor/plugins/AlwaysShowToolbar + module: dijit/nls/es/loading + module: dijit/form/ComboButton + module: dijit/form/nls/zh/Textarea + module: dijit/_editor/nls/sv/commands + module: dijit/_editor/nls/ro/LinkDialog + module: dijit/nls/id/common + module: dijit/WidgetSet + module: dijit/form/RangeBoundTextBox + module: dijit/_editor/nls/ar/commands + module: dijit/form/nls/bg/ComboBox + module: dijit/nls/az/loading + module: dijit/form/nls/kk/Textarea + module: dijit/nls/hr/loading + module: dijit/form/nls/fr/Textarea + module: dijit/_editor/nls/da/commands + module: dijit/DialogUnderlay + module: dijit/nls/th/loading + module: dijit/form/nls/ro/Textarea + module: dijit/_editor/nls/hr/LinkDialog + module: dijit/form/_ToggleButtonMixin + module: dijit/form/nls/tr/ComboBox + module: dijit/form/VerticalSlider + module: dijit/_TemplatedMixin + module: dijit/_editor/nls/nl/commands + module: dijit/form/nls/ko/Textarea + module: dijit/nls/da/loading + module: dijit/nls/de/common + module: dijit/form/nls/ar/ComboBox + module: dijit/form/HorizontalSlider + module: dijit/_editor/nls/hr/FontChoice + module: dijit/_editor/nls/de/commands + module: dijit/_editor/nls/he/commands + module: dijit/nls/he/common + module: dijit/nls/de/loading + module: dijit/_editor/plugins/ToggleDir + module: dijit/_editor/nls/pl/FontChoice + module: dijit/_KeyNavMixin + module: dijit/form/_TextBoxMixin + module: dijit/form/nls/pl/Textarea + module: dijit/_editor/nls/bg/FontChoice + module: dijit/form/nls/zh-tw/Textarea + module: dijit/a11y + module: dijit/nls/ru/loading + module: dijit/form/nls/ro/ComboBox + module: dijit/form/TextBox + module: dijit/_editor/nls/es/LinkDialog + module: dijit/_editor/nls/ja/FontChoice + module: dijit/form/_DateTimeTextBox + module: dijit/_editor/nls/cs/commands + module: dijit/nls/sv/loading + module: dijit/form/_RadioButtonMixin + module: dijit/layout/StackContainer + module: dijit/nls/he/loading + module: dijit/nls/fr/common + module: dijit/form/Form + module: dijit/nls/uk/common + module: dijit/form/nls/sl/ComboBox + module: dijit/nls/it/common + module: dijit/form/_FormWidgetMixin + module: dijit/main + module: dijit/_editor/nls/kk/LinkDialog + module: dijit/_base/place + module: dijit/form/nls/es/Textarea + module: dijit/nls/cs/loading + module: dijit/_BidiMixin + module: dijit/nls/zh-tw/loading + module: dijit/nls/fr/loading + module: dijit/form/nls/el/ComboBox + module: dijit/form/nls/nb/ComboBox + module: dijit/_base/sniff + module: dijit/form/nls/az/Textarea + module: dijit/nls/pl/common + module: dijit/_editor/nls/pt/commands + module: dijit/nls/es/common + module: dijit/form/nls/kk/validate + module: dijit/form/nls/sk/validate + module: dijit/_editor/nls/uk/LinkDialog + module: dijit/nls/hu/common + module: dijit/form/nls/id/validate + module: dijit/_editor/nls/it/commands + module: dijit/_base/popup + module: dijit/form/nls/fi/ComboBox + module: dijit/form/nls/th/validate + module: dijit/_editor/plugins/NewPage + module: dijit/nls/uk/loading + module: dijit/nls/da/common + module: dijit/registry + module: dijit/_base/focus + module: dijit/form/nls/ja/validate + module: dijit/PopupMenuBarItem + module: dijit/form/_FormMixin + module: dijit/BackgroundIframe + module: dijit/_MenuBase + module: dijit/layout/TabController + module: dijit/_editor/nls/fi/LinkDialog + module: dijit/_editor/nls/pt-pt/FontChoice + module: dijit/_editor/_Plugin + module: dijit/layout/ScrollingTabController + module: dijit/_editor/nls/sv/FontChoice + module: dijit/form/_ListMouseMixin + module: dijit/form/nls/ca/validate + module: dijit/form/nls/sv/validate + module: dijit/_OnDijitClickMixin + module: dijit/tree/_dndSelector + module: dijit/form/VerticalRuleLabels + module: dijit/_editor/nls/fr/LinkDialog + module: dijit/_editor/nls/ru/commands + module: dijit/nls/fi/loading + module: dijit/layout/StackController + module: dijit/nls/el/loading + module: dijit/_editor/nls/el/LinkDialog + module: dijit/_editor/nls/ca/LinkDialog + module: dijit/_editor/nls/nl/LinkDialog + module: dijit/form/DateTextBox + module: dijit/form/_FormValueMixin + module: dijit/nls/sk/common + module: dijit/layout/AccordionPane + module: dijit/nls/hr/common + module: dijit/nls/nb/loading + module: dijit/form/_AutoCompleterMixin + module: dijit/TitlePane + module: dijit/form/CurrencyTextBox + module: dijit/place + module: dijit/form/ComboBox + module: dijit/_editor/nls/tr/LinkDialog + module: dijit/layout/_LayoutWidget + module: dijit/form/nls/nl/validate + module: dijit/Fieldset + module: dijit/_editor/nls/bg/commands + module: dijit/_editor/nls/commands + module: dijit/_editor/nls/el/FontChoice + module: dijit/layout/_ContentPaneResizeMixin + module: dijit/_editor/nls/az/FontChoice + module: dijit/form/_ButtonMixin + module: dijit/form/nls/de/validate + module: dijit/_editor/nls/hu/commands + module: dijit/_editor/nls/uk/commands + module: dijit/tree/TreeStoreModel + module: dijit/_editor/nls/tr/commands + module: dijit/a11yclick + module: dijit/_editor/nls/sl/FontChoice + module: dijit/nls/nl/common + module: dijit/form/nls/az/validate + module: dijit/nls/cs/common + module: dijit/nls/it/loading + module: dijit/_editor/plugins/Print + module: dijit/form/HorizontalRule + module: dijit/nls/pl/loading + module: dijit/hccss + module: dijit/_editor/nls/zh/commands + module: dijit/form/HorizontalRuleLabels + module: dijit/Editor + module: dijit/_editor/nls/da/FontChoice + module: dijit/nls/nb/common + module: dijit/form/nls/sk/Textarea + module: dijit/popup + module: dijit/_editor/nls/zh-tw/LinkDialog + module: dijit/layout/TabContainer + module: dijit/_base + module: dijit/_editor/nls/nb/LinkDialog + module: dijit/form/nls/hu/ComboBox + module: dijit/_editor/nls/ro/FontChoice + module: dijit/form/nls/uk/ComboBox + module: dijit/nls/sk/loading + module: dijit/_editor/plugins/EnterKeyHandling + module: dijit/form/nls/id/Textarea + module: dijit/_editor/nls/he/LinkDialog + module: dijit/layout/LinkPane + module: dijit/form/_FormValueWidget + module: dijit/_editor/nls/ro/commands + module: dijit/_BidiSupport + module: dijit/tree/_dndContainer + module: dijit/form/nls/th/Textarea + module: dijit/focus + module: dijit/nls/bg/loading + module: dijit/_editor/nls/de/LinkDialog + module: dijit/form/nls/zh/ComboBox + module: dijit/form/nls/ja/Textarea + module: dijit/_editor/nls/ko/commands + module: dijit/nls/ja/common + module: dijit/_editor/nls/sl/commands + module: dijit/form/nls/pt-pt/validate + module: dijit/ColorPalette + module: dijit/form/nls/kk/ComboBox + module: dijit/form/nls/fr/ComboBox + module: dijit/form/nls/ca/Textarea + module: dijit/form/nls/sv/Textarea + module: dijit/_CssStateMixin + module: dijit/_editor/nls/pl/commands + module: dijit/nls/el/common + module: dijit/form/FilteringSelect + module: dijit/_WidgetBase + module: dijit/form/nls/th/ComboBox + module: dijit/MenuBarItem + module: dijit/form/nls/ko/ComboBox + module: dijit/_editor/nls/el/commands + module: dijit/_editor/nls/nb/commands + module: dijit/_editor/nls/es/FontChoice + module: dijit/_editor/html + module: dijit/form/nls/ja/ComboBox + module: dijit/_editor/nls/zh/LinkDialog + module: dijit/form/nls/validate + module: dijit/form/nls/nl/Textarea + module: dijit/form/_FormWidget + module: dijit/form/nls/pl/ComboBox + module: dijit/form/nls/zh-tw/ComboBox + module: dijit/form/nls/de/Textarea + module: dijit/_editor/nls/fi/commands + module: dijit/form/nls/he/Textarea + module: dijit/nls/nl/loading + module: dijit/_editor/nls/zh/FontChoice + module: dijit/_editor/nls/kk/FontChoice + module: dijit/dijit + module: dijit/nls/hu/loading + module: dijit/form/NumberSpinner + module: dijit/MenuItem + module: dijit/_AttachMixin + module: dijit/_editor/nls/LinkDialog + module: dijit/form/nls/ru/validate + module: dijit/nls/bg/common + module: dijit/_editor/nls/pt/LinkDialog + module: dijit/DropDownMenu + module: dijit/form/nls/cs/Textarea + module: dijit/ConfirmTooltipDialog + module: dijit/_base/typematic + module: dijit/form/nls/es/ComboBox + module: dijit/_editor/nls/ko/LinkDialog + module: dijit/_editor/plugins/LinkDialog + module: dijit/_editor/nls/zh-tw/commands + module: dijit/_editor/nls/pt/FontChoice + module: dijit/_editor/nls/uk/FontChoice + module: dijit/_editor/nls/hu/LinkDialog + module: dijit/nls/ar/common + module: dijit/form/_ListBase + module: dijit/nls/tr/loading + module: dijit/form/nls/az/ComboBox + module: dijit/form/nls/hr/validate + module: dijit/_editor/nls/ar/LinkDialog + module: dijit/typematic + module: dijit/_editor/plugins/FontChoice + module: dijit/form/nls/pt-pt/Textarea + module: dijit/nls/ro/common + module: dijit/_editor/plugins/ViewSource + module: dijit/form/nls/ar/validate + module: dijit/form/nls/pt/Textarea + module: dijit/_editor/nls/ar/FontChoice + module: dijit/_editor/nls/fi/FontChoice + module: dijit/form/_FormSelectWidget + module: dijit/form/_ComboBoxMenu + module: dijit/form/nls/da/validate + module: dijit/layout/_TabContainerBase + module: dijit/nls/zh-tw/common + module: dijit/_KeyNavContainer + module: dijit/_editor/nls/ru/LinkDialog + module: dijit/form/DataList + module: dijit/Tooltip + module: dijit/PopupMenuItem + module: dijit/nls/kk/loading + module: dijit/_editor/nls/fr/FontChoice + module: dijit/layout/ContentPane + module: dijit/_editor/nls/ca/FontChoice + module: dijit/_WidgetsInTemplateMixin + module: dijit/_editor/nls/nl/FontChoice + module: dijit/form/nls/Textarea + module: dijit/form/VerticalRule + module: dijit/nls/ko/loading + module: dijit/_HasDropDown + module: dijit/form/nls/he/validate + module: dijit/_editor/nls/tr/FontChoice + module: dijit/form/nls/sl/validate + module: dijit/_editor/nls/cs/LinkDialog + module: dijit/nls/tr/common + module: dijit/tree/dndSource + module: dijit/form/_CheckBoxMixin + module: dijit/_editor/plugins/FullScreen + module: dijit/nls/ca/loading + module: dijit/nls/ca/common + module: dijit/layout/LayoutContainer + module: dijit/nls/th/common + module: dijit/form/nls/cs/validate + module: dijit/form/nls/ru/Textarea + module: dijit/ProgressBar + module: dijit/layout/utils + module: dijit/_PaletteMixin + module: dijit/_editor/nls/kk/commands + module: dijit/form/nls/ComboBox + module: dijit/Declaration + module: dijit/_editor/selection + module: dijit/nls/pt/loading + module: dijit/_editor/nls/fr/commands + module: dijit/form/nls/nb/validate + module: dijit/_editor/plugins/TextColor + module: dijit/_editor/nls/pt-pt/commands + module: dijit/_FocusMixin + module: dijit/_editor/nls/th/LinkDialog + module: dijit/_editor/nls/zh-tw/FontChoice + module: dijit/form/ValidationTextBox + module: dijit/nls/ru/common + module: dijit/_editor/nls/nb/FontChoice + module: dijit/form/NumberTextBox + module: dijit/_editor/nls/th/commands + module: dijit/_editor/nls/he/FontChoice + module: dijit/form/_ComboBoxMenuMixin + module: dijit/Tree + module: dijit/form/nls/fi/validate + module: dijit/form/Button + module: dijit/form/_ExpandingTextAreaMixin + module: dijit/form/nls/hr/Textarea + module: dijit/_editor/nls/ja/commands + module: dijit/CalendarLite + module: dijit/form/nls/sk/ComboBox + module: dijit/_editor/nls/sk/LinkDialog + module: dijit/RadioMenuItem + module: dijit/Toolbar + module: dijit/nls/ar/loading + module: dijit/_editor/nls/de/FontChoice + module: dijit/form/nls/pt/validate + module: dijit/form/_Spinner + module: dijit/form/nls/id/ComboBox + module: dijit/nls/loading + module: dijit/form/nls/ar/Textarea + module: dijit/_editor/plugins/TabIndent + module: dijit/_editor/nls/ca/commands + module: dijit/TooltipDialog + module: dojox/form/nls/ar/CheckedMultiSelect + module: dojox/grid/enhanced/plugins/Rearrange + module: dojox/editor/plugins/nls/bg/PasteFromWord + module: dojox/widget/nls/sk/ColorPicker + module: dojox/atom/widget/nls/hr/PeopleEditor + module: dojox/grid/enhanced/plugins/IndirectSelection + module: dojox/atom/widget/nls/sv/FeedEntryEditor + module: dojox/gantt/GanttResourceItem + module: dojox/atom/widget/nls/ar/PeopleEditor + module: dojox/editor/plugins/nls/cs/AutoSave + module: dojox/widget/nls/de/ColorPicker + module: dojox/calc/FuncGen + module: dojox/charting/widget/BidiSupport + module: dojox/editor/plugins/nls/id/Smiley + module: dojox/editor/plugins/nls/cs/Blockquote + module: dojox/drawing/stencil/_Base + module: dojox/validate/br + module: dojox/editor/plugins/nls/th/Smiley + module: dojox/calendar/nls/tr/buttons + module: dojox/grid/enhanced/nls/id/Filter + module: dojox/charting/themes/GreySkies + module: dojox/fx/_core + module: dojox/validate/ca + module: dojox/drawing/manager/Anchors + module: dojox/form/nls/ro/PasswordValidator + module: dojox/editor/plugins/nls/nl/InsertEntity + module: dojox/geo/charting/Feature + module: dojox/embed/Quicktime + module: dojox/highlight/languages/pygments/html + module: dojox/calendar/Calendar + module: dojox/grid/enhanced/nls/th/Filter + module: dojox/charting/action2d/Tooltip + module: dojox/encoding/digests/_sha2 + module: dojox/widget/nls/ar/ColorPicker + module: dojox/widget/FisheyeListItem + module: dojox/analytics/plugins/window + module: dojox/mobile/app/_FormWidget + module: dojox/mvc/resolve + module: dojox/form/nls/pt-pt/Uploader + module: dojox/editor/plugins/nls/ar/InsertAnchor + module: dojox/jsonPath/query + module: dojox/editor/plugins/nls/sk/FindReplace + module: dojox/widget/Calendar3Pane + module: dojox/editor/plugins/nls/pt-pt/CollapsibleToolbar + module: dojox/gfx/path + module: dojox/editor/plugins/nls/de/FindReplace + module: dojox/app/utils/mvcModel + module: dojox/editor/plugins/FindReplace + module: dojox/charting/plot2d/Grid + module: dojox/treemap/_utils + module: dojox/mdnd/dropMode/OverDropMode + module: dojox/editor/plugins/nls/ro/CollapsibleToolbar + module: dojox/drawing/manager/keys + module: dojox/mobile/_TimePickerMixin + module: dojox/form/nls/es/Uploader + module: dojox/atom/widget/nls/hu/PeopleEditor + module: dojox/editor/plugins/nls/ar/CollapsibleToolbar + module: dojox/color/api/ColorModel + module: dojox/editor/plugins/PrettyPrint + module: dojox/av/widget/Player + module: dojox/editor/plugins/nls/sv/InsertEntity + module: dojox/editor/plugins/nls/sk/AutoSave + module: dojox/charting/themes/WatersEdge + module: dojox/mobile/uacss + module: dojox/atom/widget/nls/uk/FeedEntryEditor + module: dojox/calendar/Mouse + module: dojox/gfx/vml + module: dojox/editor/plugins/EntityPalette + module: dojox/atom/widget/nls/es/PeopleEditor + module: dojox/widget/WizardPane + module: dojox/data/css + module: dojox/lang/oo/mixin + module: dojox/editor/plugins/nls/ar/FindReplace + module: dojox/editor/plugins/nls/ja/Save + module: dojox/editor/plugins/nls/ca/InsertEntity + module: dojox/calc/toFrac + module: dojox/editor/plugins/nls/pt/InsertEntity + module: dojox/geo/openlayers/GfxLayer + module: dojox/gfx/_gfxBidiSupport + module: dojox/editor/plugins/nls/it/InsertEntity + module: dojox/rpc/JsonRest + module: dojox/editor/plugins/nls/es/TextColor + module: dojox/mobile/dh/DataHandler + module: dojox/atom/widget/nls/pt/FeedViewerEntry + module: dojox/charting/plot2d/StackedColumns + module: dojox/highlight/languages/_dynamic + module: dojox/mvc/Templated + module: dojox/mobile/nls/hu/messages + module: dojox/dtl/_DomTemplated + module: dojox/wire/XmlWire + module: dojox/editor/plugins/nls/fr/SpellCheck + module: dojox/xmpp/sasl + module: dojox/uuid + module: dojox/grid/util + module: dojox/mobile/nls/el/messages + module: dojox/editor/plugins/nls/fr/AutoSave + module: dojox/mobile/_PickerChooser + module: dojox/editor/plugins/nls/nl/Breadcrumb + module: dojox/sketch/_Plugin + module: dojox/editor/plugins/nls/fr/InsertEntity + module: dojox/drawing/util/common + module: dojox/editor/plugins/nls/zh/latinEntities + module: dojox/grid/enhanced/nls/de/EnhancedGrid + module: dojox/editor/plugins/nls/hr/TableDialog + module: dojox/form/nls/uk/Uploader + module: dojox/editor/plugins/nls/pt/PasteFromWord + module: dojox/editor/plugins/nls/da/SafePaste + module: dojox/form/nls/sv/Uploader + module: dojox/grid/_Scroller + module: dojox/data/CssRuleStore + module: dojox/gesture/swipe + module: dojox/collections/ArrayList + module: dojox/editor/plugins/nls/uk/BidiSupport + module: dojox/atom/widget/nls/FeedEntryViewer + module: dojox/mobile/nls/kk/messages + module: dojox/charting/axis2d/Default + module: dojox/grid/enhanced/nls/ru/Pagination + module: dojox/widget/CalendarFisheye + module: dojox/widget/MultiSelectCalendar + module: dojox/gfx3d + module: dojox/atom/widget/nls/cs/FeedViewerEntry + module: dojox/editor/plugins/nls/cs/Preview + module: dojox/xml/widgetParser + module: dojox/sketch/DoubleArrowAnnotation + module: dojox/editor/plugins/nls/ar/TextColor + module: dojox/mobile/bidi/ValuePickerSlot + module: dojox/date/relative + module: dojox/mobile/_EditableIconMixin + module: dojox/editor/plugins/nls/sv/ShowBlockNodes + module: dojox/lang/oo/general + module: dojox/mobile/_DataMixin + module: dojox/editor/plugins/nls/da/Smiley + module: dojox/charting/plot2d/ClusteredColumns + module: dojox/editor/plugins/nls/el/Blockquote + module: dojox/dtl/filter/integers + module: dojox/data/ServiceStore + module: dojox/mobile/TabBarButton + module: dojox/atom/widget/nls/de/FeedEntryEditor + module: dojox/charting/plot2d/Scatter + module: dojox/grid/enhanced/plugins/exporter/CSVWriter + module: dojox/grid/enhanced/nls/da/Filter + module: dojox/drawing/stencil/Image + module: dojox/mobile/nls/da/messages + module: dojox/grid/enhanced/plugins/filter/FilterBar + module: dojox/grid/enhanced/nls/ar/EnhancedGrid + module: dojox/editor/plugins/nls/cs/InsertEntity + module: dojox/editor/plugins/nls/ca/SafePaste + module: dojox/editor/plugins/nls/sv/BidiSupport + module: dojox/editor/plugins/nls/el/InsertEntity + module: dojox/widget/PagerItem + module: dojox/calendar/nls/buttons + module: dojox/secure/capability + module: dojox/editor/plugins/nls/th/Blockquote + module: dojox/widget/nls/az/Wizard + module: dojox/fx/_arg + module: dojox/calendar/_ScrollBarBase + module: dojox/mobile/app/_event + module: dojox/storage/manager + module: dojox/widget/gauge/AnalogArcIndicator + module: dojox/layout/BorderContainer + module: dojox/uuid/_base + module: dojox/layout/dnd/PlottedDnd + module: dojox/editor/plugins/nls/fr/BidiSupport + module: dojox/color/Palette + module: dojox/charting/bidi/Chart + module: dojox/form/nls/sl/Uploader + module: dojox/mobile/CarouselItem + module: dojox/gauges/GlossyCircularGaugeNeedle + module: dojox/editor/plugins/nls/cs/TextColor + module: dojox/geo/openlayers/TouchInteractionSupport + module: dojox/mobile/TextArea + module: dojox/form/nls/CheckedMultiSelect + module: dojox/timing/Sequence + module: dojox/mvc/at + module: dojox/geo/openlayers/LineString + module: dojox/io/scriptFrame + module: dojox/charting/axis2d/Base + module: dojox/editor/plugins/StatusBar + module: dojox/widget/nls/tr/FilePicker + module: dojox/editor/plugins/nls/zh-tw/AutoSave + module: dojox/editor/plugins/nls/es/PageBreak + module: dojox/widget/Toaster + module: dojox/widget/UpgradeBar + module: dojox/encoding/crypto/Blowfish + module: dojox/grid/enhanced/nls/sl/Pagination + module: dojox/jsonPath + module: dojox/lang/async/timeout + module: dojox/editor/plugins/nls/fi/SafePaste + module: dojox/lang/functional/scan + module: dojox/editor/plugins/nls/hu/Save + module: dojox/atom/widget/nls/pl/FeedEntryEditor + module: dojox/calendar/_RendererMixin + module: dojox/widget/rotator/Fade + module: dojox/widget/nls/zh/Wizard + module: dojox/editor/plugins/nls/nl/AutoSave + module: dojox/editor/plugins/nls/de/SafePaste + module: dojox/encoding/digests/SHA224 + module: dojox/editor/plugins/nls/sv/latinEntities + module: dojox/widget/nls/bg/ColorPicker + module: dojox/editor/plugins/nls/sk/TableDialog + module: dojox/mobile/ValuePickerTimePicker + module: dojox/charting/plot2d/CartesianBase + module: dojox/widget/nls/nl/Wizard + module: dojox/editor/plugins/nls/fi/InsertAnchor + module: dojox/editor/plugins/nls/zh/PasteFromWord + module: dojox/form/nls/cs/CheckedMultiSelect + module: dojox/charting/plot2d/OHLC + module: dojox/wire/CompositeWire + module: dojox/validate/regexp + module: dojox/mobile/nls/zh/messages + module: dojox/dtl/filter/dates + module: dojox/form/nls/bg/PasswordValidator + module: dojox/charting/action2d/MouseIndicator + module: dojox/form/RadioStack + module: dojox/atom/widget/nls/da/FeedEntryEditor + module: dojox/mobile/deviceTheme + module: dojox/editor/plugins/nls/ko/Save + module: dojox/editor/plugins/nls/ca/Preview + module: dojox/mobile/ContentPane + module: dojox/grid/cells + module: dojox/editor/plugins/nls/bg/ShowBlockNodes + module: dojox/form/nls/pt/PasswordValidator + module: dojox/gfx/svg_mask + module: dojox/editor/plugins/nls/el/Breadcrumb + module: dojox/editor/plugins/nls/ar/TableDialog + module: dojox/editor/plugins/nls/Smiley + module: dojox/form/nls/pl/Uploader + module: dojox/sketch/Anchor + module: dojox/encoding/digests/SHA256 + module: dojox/form/nls/tr/PasswordValidator + module: dojox/dgauges/components/grey/HorizontalLinearGauge + module: dojox/editor/plugins/nls/bg/FindReplace + module: dojox/mdnd/dropMode/DefaultDropMode + module: dojox/validate/us + module: dojox/widget/nls/pt-pt/ColorPicker + module: dojox/gfx/svgext + module: dojox/geo/openlayers/Layer + module: dojox/editor/plugins/nls/ar/PageBreak + module: dojox/geo/openlayers/WidgetFeature + module: dojox/data/CouchDBRestStore + module: dojox/editor/plugins/nls/uk/InsertEntity + module: dojox/grid/enhanced/nls/sk/Pagination + module: dojox/editor/plugins/nls/uk/Breadcrumb + module: dojox/atom/widget/nls/zh-tw/FeedEntryViewer + module: dojox/store/db/IndexedDB + module: dojox/drawing + module: dojox/gauges/BarCircleIndicator + module: dojox/editor/plugins/nls/kk/SafePaste + module: dojox/mvc/EditModelRefController + module: dojox/analytics/profiles/analytics.profile + module: dojox/av/widget/VolumeButton + module: dojox/secure/fromJson + module: dojox/calendar/Keyboard + module: dojox/gauges/AnalogLineIndicator + module: dojox/editor/plugins/nls/el/Smiley + module: dojox/grid/enhanced/nls/Filter + module: dojox/html/ext-dojo/style + module: dojox/editor/plugins/nls/ko/latinEntities + module: dojox/editor/plugins/nls/cs/CollapsibleToolbar + module: dojox/form/manager/_DisplayMixin + module: dojox/grid/enhanced/nls/el/Filter + module: dojox/form/uploader/FileList + module: dojox/atom/widget/nls/ar/FeedEntryEditor + module: dojox/editor/plugins/nls/uk/TextColor + module: dojox/sketch/Figure + module: dojox/gfx3d/_base + module: dojox/grid/enhanced/nls/da/EnhancedGrid + module: dojox/widget/nls/ca/FilePicker + module: dojox/highlight/languages/html + module: dojox/calendar/nls/id/buttons + module: dojox/charting/action2d/MoveSlice + module: dojox/editor/plugins/nls/nb/TextColor + module: dojox/editor/plugins/nls/ar/latinEntities + module: dojox/editor/plugins/nls/SafePaste + module: dojox/editor/plugins/nls/nb/AutoSave + module: dojox/mobile/Slider + module: dojox/mobile/SimpleDialog + module: dojox/wire/ml/XmlHandler + module: dojox/grid/enhanced/nls/fi/Pagination + module: dojox/form/nls/fi/Uploader + module: dojox/mobile/dh/StringDataSource + module: dojox/editor/plugins/nls/tr/SpellCheck + module: dojox/editor/plugins/nls/cs/PageBreak + module: dojox/drawing/Drawing + module: dojox/charting/plot2d/StackedAreas + module: dojox/mobile/Rating + module: dojox/geo/charting/_Marker + module: dojox/form/DropDownStack + module: dojox/editor/plugins/nls/hr/Smiley + module: dojox/geo/charting/widget/Legend + module: dojox/editor/plugins/nls/nl/PasteFromWord + module: dojox/editor/plugins/nls/AutoSave + module: dojox/lang/aspect/profiler + module: dojox/mobile/PageIndicator + module: dojox/widget/FilePicker + module: dojox/charting/Chart + module: dojox/date/islamic/locale + module: dojox/editor/plugins/nls/sv/Smiley + module: dojox/grid/enhanced/nls/hr/Filter + module: dojox/grid/cells/dijit + module: dojox/atom/widget/nls/es/FeedEntryEditor + module: dojox/widget/nls/es/FilePicker + module: dojox/grid/enhanced/nls/fi/EnhancedGrid + module: dojox/mobile/bidi/Badge + module: dojox/mobile/GridLayout + module: dojox/form/nls/nb/PasswordValidator + module: dojox/mobile/app/_base + module: dojox/grid/enhanced/nls/ko/Pagination + module: dojox/grid/enhanced/nls/sv/Filter + module: dojox/dgauges/TextIndicator + module: dojox/editor/plugins/nls/ja/TextColor + module: dojox/editor/plugins/nls/es/AutoSave + module: dojox/form/nls/pl/CheckedMultiSelect + module: dojox/editor/plugins/nls/hu/BidiSupport + module: dojox/mobile/_base + module: dojox/charting/themes/Tom + module: dojox/editor/plugins/nls/tr/InsertAnchor + module: dojox/charting/plot3d/Bars + module: dojox/atom/widget/nls/id/FeedEntryViewer + module: dojox/mdnd/DropIndicator + module: dojox/encoding/compression/splay + module: dojox/grid/cells/_base + module: dojox/editor/plugins/nls/id/InsertAnchor + module: dojox/calendar/SimpleColumnView + module: dojox/encoding/digests/_sha-32 + module: dojox/drawing/tools/Arrow + module: dojox/widget/gauge/AnalogArrowIndicator + module: dojox/charting/plot3d/Base + module: dojox/editor/plugins/nls/da/BidiSupport + module: dojox/editor/plugins/nls/zh/BidiSupport + module: dojox/charting/action2d/TouchIndicator + module: dojox/editor/plugins/nls/sl/Blockquote + module: dojox/form/nls/pl/PasswordValidator + module: dojox/editor/plugins/nls/pt/SafePaste + module: dojox/widget/nls/bg/FilePicker + module: dojox/mvc/Bind + module: dojox/editor/plugins/nls/ko/SafePaste + module: dojox/mobile/EdgeToEdgeStoreList + module: dojox/mobile/RoundRectDataList + module: dojox/date/hebrew/Date + module: dojox/widget/Selection + module: dojox/editor/plugins/nls/ru/Breadcrumb + module: dojox/gfx/renderer + module: dojox/editor/plugins/nls/pt/BidiSupport + module: dojox/atom/widget/nls/FeedViewerEntry + module: dojox/atom/widget/nls/it/FeedEntryEditor + module: dojox/gfx/filters + module: dojox/grid/enhanced/nls/nb/Pagination + module: dojox/widget/nls/kk/ColorPicker + module: dojox/lang/async + module: dojox/widget/nls/sv/FilePicker + module: dojox/charting/plot2d/Bars + module: dojox/xml/parser + module: dojox/math/random/Secure + module: dojox/encoding/digests/_sha-64 + module: dojox/atom/widget/nls/kk/FeedEntryEditor + module: dojox/dtl/filter/misc + module: dojox/editor/plugins/nls/uk/AutoSave + module: dojox/editor/plugins/nls/sk/TextColor + module: dojox/charting/plot2d/Base + module: dojox/editor/plugins/nls/sv/AutoSave + module: dojox/editor/plugins/nls/pl/CollapsibleToolbar + module: dojox/editor/plugins/NormalizeIndentOutdent + module: dojox/mobile/bidi/FormLayout + module: dojox/data/dom + module: dojox/widget/nls/ja/FilePicker + module: dojox/editor/plugins/nls/ca/SpellCheck + module: dojox/editor/plugins/nls/th/TextColor + module: dojox/lang/aspect/timer + module: dojox/editor/plugins/LocalImage + module: dojox/calendar/ColumnView + module: dojox/embed/flashVars + module: dojox/calendar/HorizontalRenderer + module: dojox/editor/plugins/nls/zh-tw/BidiSupport + module: dojox/editor/plugins/nls/nb/BidiSupport + module: dojox/editor/plugins/nls/uk/PageBreak + module: dojox/charting/themes/Ireland + module: dojox/math + module: dojox/editor/plugins/nls/he/Preview + module: dojox/data/RailsStore + module: dojox/atom/widget/nls/uk/FeedEntryViewer + module: dojox/atom/widget/nls/ro/PeopleEditor + module: dojox/mdnd/Moveable + module: dojox/editor/plugins/nls/nb/PageBreak + module: dojox/analytics/plugins/idle + module: dojox/widget/MonthlyCalendar + module: dojox/editor/plugins/nls/ar/PasteFromWord + module: dojox/editor/plugins/nls/sk/Blockquote + module: dojox/grid/enhanced/nls/cs/Pagination + module: dojox/geo/charting/KeyboardInteractionSupport + module: dojox/atom/widget/nls/th/PeopleEditor + module: dojox/lang/oo/rearrange + module: dojox/editor/plugins/nls/kk/FindReplace + module: dojox/calendar/StoreMixin + module: dojox/editor/plugins/nls/ru/SafePaste + module: dojox/grid/enhanced/plugins/NestedSorting + module: dojox/editor/plugins/nls/bg/TableDialog + module: dojox/calendar/nls/ca/buttons + module: dojox/mvc/StatefulArray + module: dojox/calc/Standard + module: dojox/editor/plugins/nls/ko/BidiSupport + module: dojox/form/DateTextBox + module: dojox/mobile/app/_Widget + module: dojox/grid/enhanced/nls/pt/Pagination + module: dojox/data/CdfStore + module: dojox/dgauges/components/grey/CircularLinearGauge + module: dojox/form/manager/_FormMixin + module: dojox/widget/nls/he/FilePicker + module: dojox/main + module: dojox/html/ellipsis + module: dojox/mobile/EdgeToEdgeList + module: dojox/editor/plugins/nls/sl/Preview + module: dojox/editor/plugins/nls/ko/InsertAnchor + module: dojox/grid/_Grid + module: dojox/editor/plugins/nls/sl/ShowBlockNodes + module: dojox/editor/plugins/nls/es/SpellCheck + module: dojox/widget/nls/th/ColorPicker + module: dojox/geo/openlayers/Collection + module: dojox/grid/enhanced/nls/ro/Pagination + module: dojox/drawing/ui/Button + module: dojox/atom/widget/nls/az/FeedEntryViewer + module: dojox/editor/plugins/nls/pl/InsertEntity + module: dojox/editor/plugins/nls/th/ShowBlockNodes + module: dojox/editor/plugins/nls/el/BidiSupport + module: dojox/form/nls/uk/CheckedMultiSelect + module: dojox/charting/themes/Grasslands + module: dojox/editor/plugins/nls/fi/Blockquote + module: dojox/grid/enhanced/nls/he/Filter + module: dojox/app/module/env + module: dojox/atom/widget/nls/ja/FeedEntryViewer + module: dojox/grid/enhanced/nls/tr/EnhancedGrid + module: dojox/widget/nls/cs/ColorPicker + module: dojox/editor/plugins/nls/sl/Breadcrumb + module: dojox/grid/enhanced/nls/id/EnhancedGrid + module: dojox/mvc/ModelRefController + module: dojox/editor/plugins/nls/pl/Smiley + module: dojox/math/random/Simple + module: dojox/image/Magnifier + module: dojox/layout/ScrollPane + module: dojox/charting/themes/PlotKit/purple + module: dojox/charting/plot2d/Lines + module: dojox/editor/plugins/InsertAnchor + module: dojox/grid/enhanced/nls/pl/Filter + module: dojox/mobile/LongListMixin + module: dojox/json/query + module: dojox/dtl + module: dojox/analytics/plugins/touchMove + module: dojox/charting/action2d/_IndicatorElement + module: dojox/grid/_SelectionPreserver + module: dojox/analytics/plugins/mouseClick + module: dojox/editor/plugins/nls/it/Blockquote + module: dojox/editor/plugins/nls/sl/AutoSave + module: dojox/editor/plugins/nls/InsertEntity + module: dojox/editor/plugins/nls/pl/Save + module: dojox/gfx/silverlight_attach + module: dojox/editor/plugins/nls/th/FindReplace + module: dojox/layout/RotatorContainer + module: dojox/editor/plugins/nls/sk/latinEntities + module: dojox/mobile/bidi/SpinWheelSlot + module: dojox/charting/plot2d/MarkersOnly + module: dojox/editor/plugins/nls/uk/Save + module: dojox/atom/widget/nls/de/FeedEntryViewer + module: dojox/mobile/SpinWheelTimePicker + module: dojox/editor/plugins/nls/ko/Blockquote + module: dojox/mobile/bidi/TabBarButton + module: dojox/mobile/common + module: dojox/editor/plugins/nls/cs/FindReplace + module: dojox/editor/plugins/nls/sv/SpellCheck + module: dojox/editor/plugins/nls/kk/Smiley + module: dojox/socket/Reconnect + module: dojox/widget/MonthAndYearlyCalendar + module: dojox/grid/enhanced/nls/pt-pt/Pagination + module: dojox/wire/ml/Data + module: dojox/form/nls/ca/PasswordValidator + module: dojox/editor/plugins/nls/uk/CollapsibleToolbar + module: dojox/xmpp/TransportSession + module: dojox/lang/typed + module: dojox/editor/plugins/nls/ja/SpellCheck + module: dojox/grid/enhanced/nls/kk/Filter + module: dojox/editor/plugins/nls/Blockquote + module: dojox/atom/widget/nls/nb/FeedEntryViewer + module: dojox/editor/plugins/nls/el/PasteFromWord + module: dojox/wire/ml/Invocation + module: dojox/dgauges/LinearScaler + module: dojox/editor/plugins/nls/de/Smiley + module: dojox/editor/plugins/nls/sk/PageBreak + module: dojox/atom/widget/nls/de/PeopleEditor + module: dojox/gfx3d/matrix + module: dojox/editor/plugins/nls/sk/Breadcrumb + module: dojox/editor/plugins/nls/hr/InsertEntity + module: dojox/editor/plugins/nls/th/PageBreak + module: dojox/widget/gauge/AnalogNeedleIndicator + module: dojox/grid/enhanced/plugins/Printer + module: dojox/grid/enhanced/nls/de/Filter + module: dojox/editor/plugins/nls/ru/InsertAnchor + module: dojox/atom/widget/nls/zh-tw/FeedViewerEntry + module: dojox/image/MagnifierLite + module: dojox/color/Colorspace + module: dojox/grid/enhanced/nls/sl/EnhancedGrid + module: dojox/xmpp/ChatService + module: dojox/editor/plugins/nls/sv/SafePaste + module: dojox/mobile/nls/ro/messages + module: dojox/mobile/bidi/CarouselItem + module: dojox/editor/plugins/nls/pl/AutoSave + module: dojox/app/Controller + module: dojox/editor/plugins/nls/fr/PasteFromWord + module: dojox/editor/plugins/nls/nb/Blockquote + module: dojox/encoding/digests/MD5 + module: dojox/store/db/SQL + module: dojox/analytics/profiles/analyticsInBase.profile + module: dojox/editor/plugins/nls/he/SpellCheck + module: dojox/store/transaction + module: dojox/atom/widget/nls/ru/FeedEntryEditor + module: dojox/drawing/stencil/Line + module: dojox/atom/widget/nls/pl/FeedEntryViewer + module: dojox/calc/Grapher + module: dojox/grid/enhanced/nls/ko/EnhancedGrid + module: dojox/app/controllers/Load + module: dojox/grid/enhanced/nls/kk/Pagination + module: dojox/editor/plugins/nls/fi/Breadcrumb + module: dojox/editor/plugins/nls/sl/TextColor + module: dojox/editor/plugins/nls/ru/ShowBlockNodes + module: dojox/editor/plugins/nls/hu/InsertEntity + module: dojox/editor/plugins/nls/es/BidiSupport + module: dojox/form/nls/id/Uploader + module: dojox/calendar/nls/zh-tw/buttons + module: dojox/wire/TreeAdapter + module: dojox/dgauges/LogScaler + module: dojox/editor/plugins/nls/id/BidiSupport + module: dojox/atom/widget/nls/pt-pt/FeedEntryEditor + module: dojox/layout/GridContainerLite + module: dojox/widget/nls/nl/FilePicker + module: dojox/editor/plugins/nls/pt-pt/InsertEntity + module: dojox/editor/plugins/nls/pl/LocalImage + module: dojox/form/nls/zh/CheckedMultiSelect + module: dojox/editor/plugins/nls/zh-tw/Blockquote + module: dojox/grid/enhanced/nls/th/Pagination + module: dojox/atom/widget/nls/bg/FeedEntryEditor + module: dojox/charting/bidi/_bidiutils + module: dojox/editor/plugins/nls/ro/Smiley + module: dojox/app/utils/constraints + module: dojox/form/FileUploader + module: dojox/analytics/plugins/mouseOver + module: dojox/analytics/Urchin + module: dojox/xmpp/PresenceService + module: dojox/form/nls/it/Uploader + module: dojox/highlight/languages/xquery + module: dojox/widget/nls/nl/ColorPicker + module: dojox/editor/plugins/nls/es/InsertEntity + module: dojox/editor/plugins/nls/PasteFromWord + module: dojox/editor/plugins/nls/it/Breadcrumb + module: dojox/grid/enhanced/nls/ro/Filter + module: dojox/charting/themes/Midwest + module: dojox/lang/utils + module: dojox/layout/ResizeHandle + module: dojox/lang/aspect/tracer + module: dojox/editor/plugins/nls/ca/BidiSupport + module: dojox/mobile/nls/ja/messages + module: dojox/editor/plugins/nls/pt/Blockquote + module: dojox/xml/Script + module: dojox/editor/plugins/nls/kk/TableDialog + module: dojox/cometd + module: dojox/mobile/Tooltip + module: dojox/editor/plugins/nls/fi/AutoSave + module: dojox/wire/DataWire + module: dojox/editor/plugins/nls/ko/Breadcrumb + module: dojox/calendar/nls/he/buttons + module: dojox/widget/SortList + module: dojox/mobile/_maskUtils + module: dojox/gfx/canvas_attach + module: dojox/widget/DialogSimple + module: dojox/date/buddhist/Date + module: dojox/widget/FisheyeList + module: dojox/drawing/ui/dom/Zoom + module: dojox/editor/plugins/nls/zh/InsertAnchor + module: dojox/editor/plugins/nls/ro/Blockquote + module: dojox/dgauges/components/default/CircularLinearGauge + module: dojox/form/nls/el/PasswordValidator + module: dojox/form/MonthTextBox + module: dojox/color/MeanColorModel + module: dojox/treemap/Keyboard + module: dojox/mobile/ScreenSizeAware + module: dojox/calendar/nls/ar/buttons + module: dojox/widget/FisheyeLite + module: dojox/dtl/filter/strings + module: dojox/editor/plugins/nls/Breadcrumb + module: dojox/editor/plugins/nls/nl/FindReplace + module: dojox/editor/plugins/nls/ja/ShowBlockNodes + module: dojox/mobile/_EditableListMixin + module: dojox/dgauges/components/utils + module: dojox/dtl/render/html + module: dojox/editor/plugins/nls/hu/latinEntities + module: dojox/atom/widget/nls/id/FeedViewerEntry + module: dojox/grid/enhanced/plugins/Cookie + module: dojox/charting/action2d/PlotAction + module: dojox/mobile/app/compat + module: dojox/mvc/_Controller + module: dojox/editor/plugins/nls/zh/CollapsibleToolbar + module: dojox/collections/Dictionary + module: dojox/editor/plugins/nls/ar/Smiley + module: dojox/editor/plugins/nls/cs/latinEntities + module: dojox/charting/themes/PlotKit/cyan + module: dojox/editor/plugins/nls/bg/LocalImage + module: dojox/atom/widget/nls/pt-pt/PeopleEditor + module: dojox/gesture/Base + module: dojox/editor/plugins/nls/kk/InsertAnchor + module: dojox/sketch/LeadAnnotation + module: dojox/calendar/nls/sl/buttons + module: dojox/grid/enhanced/nls/ar/Filter + module: dojox/mobile/nls/ru/messages + module: dojox/charting/themes/SageToLime + module: dojox/mvc/_atBindingMixin + module: dojox/grid/enhanced/nls/ru/EnhancedGrid + module: dojox/editor/plugins/nls/es/ShowBlockNodes + module: dojox/gfx/VectorText + module: dojox/widget/nls/fr/Wizard + module: dojox/form/nls/bg/CheckedMultiSelect + module: dojox/widget/nls/id/FilePicker + module: dojox/mobile/nls/ar/messages + module: dojox/editor/plugins/nls/nb/Breadcrumb + module: dojox/mobile/bidi/SimpleDialog + module: dojox/mobile/sniff + module: dojox/atom/widget/nls/th/FeedEntryEditor + module: dojox/atom/widget/nls/ko/FeedEntryViewer + module: dojox/data/restListener + module: dojox/dtl/contrib/data + module: dojox/editor/plugins/nls/bg/SafePaste + module: dojox/dgauges/components/black/VerticalLinearGauge + module: dojox/editor/plugins/nls/it/latinEntities + module: dojox/editor/plugins/nls/th/TableDialog + module: dojox/xmpp/RosterService + module: dojox/editor/plugins/nls/fr/Preview + module: dojox/editor/plugins/nls/id/Preview + module: dojox/editor/plugins/nls/pt/Smiley + module: dojox/drawing/plugins/drawing/Silverlight + module: dojox/grid/enhanced/plugins/Search + module: dojox/encoding/digests/SHA384 + module: dojox/charting/themes/Distinctive + module: dojox/grid/enhanced/nls/pt/Filter + module: dojox/form/_FormSelectWidget + module: dojox/charting/themes/CubanShirts + module: dojox/editor/plugins/nls/cs/TableDialog + module: dojox/editor/plugins/nls/kk/PasteFromWord + module: dojox/dtl/Inline + module: dojox/widget/DocTester + module: dojox/grid/_RadioSelector + module: dojox/editor/plugins/nls/zh-tw/Breadcrumb + module: dojox/lang/functional/object + module: dojox/editor/plugins/nls/pt-pt/LocalImage + module: dojox/grid/enhanced/nls/hu/Pagination + module: dojox/editor/plugins/nls/cs/Breadcrumb + module: dojox/html/format + module: dojox/editor/plugins/nls/zh-tw/latinEntities + module: dojox/editor/plugins/nls/pl/BidiSupport + module: dojox/editor/plugins/nls/nl/SpellCheck + module: dojox/editor/plugins/nls/fi/PasteFromWord + module: dojox/atom/widget/nls/uk/FeedViewerEntry + module: dojox/storage/Provider + module: dojox/encoding/easy64 + module: dojox/editor/plugins/nls/sl/PageBreak + module: dojox/editor/plugins/nls/tr/Smiley + module: dojox/editor/plugins/nls/cs/ShowBlockNodes + module: dojox/dgauges/RectangularScale + module: dojox/date/timezone + module: dojox/mvc/sync + module: dojox/mobile/nls/hr/messages + module: dojox/fx/split + module: dojox/editor/plugins/nls/zh/Blockquote + module: dojox/editor/plugins/nls/pt/Breadcrumb + module: dojox/grid/enhanced/nls/tr/Filter + module: dojox/editor/plugins/nls/bg/CollapsibleToolbar + module: dojox/editor/plugins/nls/ro/Save + module: dojox/dgauges/IndicatorBase + module: dojox/widget/rotator/PanFade + module: dojox/editor/plugins/nls/da/LocalImage + module: dojox/atom/widget/nls/da/PeopleEditor + module: dojox/app/View + module: dojox/editor/plugins/nls/ro/Breadcrumb + module: dojox/editor/plugins/nls/kk/Save + module: dojox/gauges/_Indicator + module: dojox/form/nls/de/Uploader + module: dojox/xml/DomParser + module: dojox/app/controllers/LayoutBase + module: dojox/grid/enhanced/nls/EnhancedGrid + module: dojox/mobile/Accordion + module: dojox/editor/plugins/nls/pt-pt/AutoSave + module: dojox/editor/plugins/nls/kk/Blockquote + module: dojox/grid/bidi/_BidiMixin + module: dojox/layout/ToggleSplitter + module: dojox/grid/enhanced/nls/zh/EnhancedGrid + module: dojox/atom/widget/nls/az/FeedViewerEntry + module: dojox/mobile/Container + module: dojox/gfx/decompose + module: dojox/av/widget/PlayButton + module: dojox/data/GoogleFeedStore + module: dojox/editor/plugins/nls/pl/TextColor + module: dojox/mobile/ToggleButton + module: dojox/atom/widget/nls/ja/FeedViewerEntry + module: dojox/rpc/JsonRPC + module: dojox/widget/ColorPicker + module: dojox/widget/nls/uk/FilePicker + module: dojox/editor/plugins/nls/da/InsertAnchor + module: dojox/editor/plugins/nls/zh/Save + module: dojox/calendar/StoreManager + module: dojox/gauges/GlossyHorizontalGauge + module: dojox/lang/observable + module: dojox/calendar/Touch + module: dojox/widget/nls/bg/Wizard + module: dojox/calendar/nls/uk/buttons + module: dojox/grid/enhanced/nls/kk/EnhancedGrid + module: dojox/atom/widget/FeedEntryViewer + module: dojox/editor/plugins/nls/tr/AutoSave + module: dojox/data/ItemExplorer + module: dojox/editor/plugins/nls/hu/PasteFromWord + module: dojox/atom/widget/nls/fr/FeedEntryViewer + module: dojox/help/console + module: dojox/analytics/plugins/gestureEvents + module: dojox/mobile/ToolBarButton + module: dojox/geo/openlayers/JsonImport + module: dojox/widget/nls/hu/Wizard + module: dojox/editor/plugins/nls/da/ShowBlockNodes + module: dojox/calendar/ColumnViewSecondarySheet + module: dojox/editor/plugins/nls/it/SafePaste + module: dojox/editor/plugins/nls/id/SpellCheck + module: dojox/atom/widget/nls/fi/PeopleEditor + module: dojox/editor/plugins/nls/cs/PasteFromWord + module: dojox/grid/_FocusManager + module: dojox/fx/ext-dojo/complex + module: dojox/charting/action2d/Highlight + module: dojox/lang/oo/Decorator + module: dojox/editor/plugins/nls/el/SafePaste + module: dojox/grid/enhanced/plugins/Selector + module: dojox/form/FileInputBlind + module: dojox/form/YearTextBox + module: dojox/atom/widget/nls/de/FeedViewerEntry + module: dojox/grid/EnhancedGrid + module: dojox/editor/plugins/nls/nl/Preview + module: dojox/rpc/OfflineRest + module: dojox/NodeList/delegate + module: dojox/editor/plugins/nls/nb/Smiley + module: dojox/atom/widget/nls/tr/FeedEntryViewer + module: dojox/grid/enhanced/_PluginManager + module: dojox/secure/DOM + module: dojox/dgauges/CircularGauge + module: dojox/treemap/DrillDownUp + module: dojox/wire/ml/JsonHandler + module: dojox/grid/enhanced/nls/nb/Filter + module: dojox/mobile/Switch + module: dojox/analytics + module: dojox/widget/DataPresentation + module: dojox/editor/plugins/nls/da/latinEntities + module: dojox/editor/plugins/nls/pt-pt/SafePaste + module: dojox/dgauges/components/classic/CircularLinearGauge + module: dojox/atom/widget/nls/nb/FeedViewerEntry + module: dojox/gfx/silverlight + module: dojox/editor/plugins/nls/zh-tw/TextColor + module: dojox/mobile/bidi/ProgressIndicator + module: dojox/form/uploader/_Base + module: dojox/charting/scaler/common + module: dojox/drawing/library/icons + module: dojox/sketch/SingleArrowAnnotation + module: dojox/editor/plugins/nls/nl/TableDialog + module: dojox/mobile/ListItem + module: dojox/editor/plugins/ToolbarLineBreak + module: dojox/widget/rotator/ThumbnailController + module: dojox/editor/plugins/nls/pl/ShowBlockNodes + module: dojox/editor/plugins/nls/zh/Breadcrumb + module: dojox/editor/plugins/nls/zh/SafePaste + module: dojox/atom/widget/nls/sl/FeedEntryEditor + module: dojox/gantt/GanttTaskControl + module: dojox/editor/plugins/nls/fr/LocalImage + module: dojox/geo/charting/Map + module: dojox/widget/FeedPortlet + module: dojox/atom/widget/nls/he/PeopleEditor + module: dojox/charting/plot2d/Default + module: dojox/gauges/BarGauge + module: dojox/dtl/tag/misc + module: dojox/image + module: dojox/lang/async/topic + module: dojox/form/nls/he/Uploader + module: dojox/widget/YearlyCalendar + module: dojox/data/FlickrStore + module: dojox/editor/plugins/nls/kk/Breadcrumb + module: dojox/html/entities + module: dojox/atom/widget/nls/pl/FeedViewerEntry + module: dojox/editor/plugins/nls/cs/Smiley + module: dojox/mobile/SpinWheel + module: dojox/charting/SimpleTheme + module: dojox/calendar/nls/kk/buttons + module: dojox/editor/plugins/nls/th/AutoSave + module: dojox/mvc/StatefulSeries + module: dojox/editor/plugins/nls/nl/LocalImage + module: dojox/gfx/gradutils + module: dojox/editor/plugins/nls/th/Breadcrumb + module: dojox/fx/scroll + module: dojox/grid/enhanced/nls/cs/Filter + module: dojox/mobile/nls/cs/messages + module: dojox/editor/plugins/nls/hu/Blockquote + module: dojox/editor/plugins/nls/nl/TextColor + module: dojox/rpc/Rest + module: dojox/editor/plugins/nls/he/InsertAnchor + module: dojox/app/widgets/_ScrollableMixin + module: dojox/widget/Dialog + module: dojox/validate/web + module: dojox/widget/RollingList + module: dojox/mobile/RoundRectList + module: dojox/atom/widget/nls/he/FeedEntryViewer + module: dojox/widget/nls/uk/ColorPicker + module: dojox/editor/plugins/nls/uk/SpellCheck + module: dojox/editor/plugins/nls/ro/BidiSupport + module: dojox/calendar/nls/da/buttons + module: dojox/editor/plugins/nls/pl/PageBreak + module: dojox/calendar/nls/fr/buttons + module: dojox/grid/enhanced/plugins/filter/FilterStatusTip + module: dojox/mdnd/adapter/DndToDojo + module: dojox/geo/openlayers/Map + module: dojox/mobile/mobile-all + module: dojox/widget/nls/ru/FilePicker + module: dojox/widget/_CalendarMonth + module: dojox/charting/themes/PrimaryColors + module: dojox/charting/action2d/ChartAction + module: dojox/editor/plugins/nls/id/AutoSave + module: dojox/mobile/dh/ContentTypeMap + module: dojox/editor/plugins/nls/ru/Smiley + module: dojox/date/php + module: dojox/app/utils/config + module: dojox/math/_base + module: dojox/grid/_Selector + module: dojox/charting/widget/Sparkline + module: dojox/grid/enhanced/nls/ru/Filter + module: dojox/flash/_base + module: dojox/editor/plugins/nls/ShowBlockNodes + module: dojox/widget/_Invalidating + module: dojox/editor/plugins/nls/it/AutoSave + module: dojox/uuid/generateTimeBasedUuid + module: dojox/atom/widget/nls/zh/FeedEntryViewer + module: dojox/gauges/TextIndicator + module: dojox/charting/themes/IndigoNation + module: dojox/editor/plugins/nls/ko/Smiley + module: dojox/atom/widget/nls/hu/FeedEntryEditor + module: dojox/atom/widget/nls/tr/PeopleEditor + module: dojox/form/nls/ca/CheckedMultiSelect + module: dojox/editor/plugins/nls/uk/FindReplace + module: dojox/sketch/Annotation + module: dojox/charting/Element + module: dojox/grid/enhanced/plugins/_RowMapLayer + module: dojox/atom/widget/nls/fi/FeedEntryEditor + module: dojox/atom/widget/nls/id/PeopleEditor + module: dojox/grid/enhanced/nls/it/Pagination + module: dojox/widget/nls/ja/Wizard + module: dojox/mobile/nls/sk/messages + module: dojox/grid/enhanced/nls/ko/Filter + module: dojox/widget/nls/sl/Wizard + module: dojox/grid/_Layout + module: dojox/mobile/FilteredListMixin + module: dojox/encoding/compression/lzw + module: dojox/grid/_Events + module: dojox/form/manager/_NodeMixin + module: dojox/editor/plugins/nls/ja/InsertAnchor + module: dojox/editor/plugins/nls/ar/Blockquote + module: dojox/editor/plugins/nls/fi/BidiSupport + module: dojox/date/persian + module: dojox/form/nls/id/PasswordValidator + module: dojox/widget/nls/sv/ColorPicker + module: dojox/editor/plugins/nls/sv/PasteFromWord + module: dojox/io/xhrPlugins + module: dojox/dgauges/CircularValueIndicator + module: dojox/editor/plugins/nls/id/TextColor + module: dojox/editor/plugins/nls/zh-tw/Preview + module: dojox/data/AppStore + module: dojox/av/widget/Status + module: dojox/editor/plugins/nls/ca/latinEntities + module: dojox/editor/plugins/nls/id/LocalImage + module: dojox/editor/plugins/nls/zh-tw/PageBreak + module: dojox/charting/bidi/action2d/ZoomAndPan + module: dojox/editor/plugins/nls/da/PasteFromWord + module: dojox/mdnd/AreaManager + module: dojox/widget/_CalendarDay + module: dojox/editor/plugins/nls/he/ShowBlockNodes + module: dojox/editor/plugins/nls/tr/Save + module: dojox/drawing/util/typeset + module: dojox/mobile/nls/fr/messages + module: dojox/mobile/_DataListMixin + module: dojox/atom/widget/nls/sv/FeedEntryViewer + module: dojox/gfx3d/scheduler + module: dojox/atom/widget/nls/ko/FeedViewerEntry + module: dojox/gauges/AnalogNeedleIndicator + module: dojox/editor/plugins/nls/ro/InsertEntity + module: dojox/editor/plugins/nls/zh-tw/InsertAnchor + module: dojox/widget/gauge/BarIndicator + module: dojox/grid/enhanced/nls/pt-pt/EnhancedGrid + module: dojox/editor/plugins/nls/sk/Smiley + module: dojox/image/SlideShow + module: dojox/editor/plugins/nls/th/Preview + module: dojox/gesture/tap + module: dojox/editor/plugins/nls/ca/CollapsibleToolbar + module: dojox/form/nls/nl/PasswordValidator + module: dojox/mobile/Overlay + module: dojox/editor/plugins/nls/th/InsertEntity + module: dojox/mobile/Button + module: dojox/uuid/generateRandomUuid + module: dojox/editor/plugins/nls/sv/FindReplace + module: dojox/lang/aspect/memoizer + module: dojox/grid/enhanced/nls/sk/Filter + module: dojox/html/_base + module: dojox/editor/plugins/nls/pt-pt/BidiSupport + module: dojox/editor/plugins/nls/hu/Breadcrumb + module: dojox/editor/plugins/nls/de/Blockquote + module: dojox/dtl/filter/htmlstrings + module: dojox/mobile/TimePicker + module: dojox/calc/GraphPro + module: dojox/editor/plugins/nls/tr/TextColor + module: dojox/editor/plugins/nls/he/BidiSupport + module: dojox/lang/functional/array + module: dojox/atom/widget/nls/PeopleEditor + module: dojox/editor/plugins/nls/nb/InsertAnchor + module: dojox/atom/widget/nls/sl/PeopleEditor + module: dojox/grid/enhanced/nls/he/EnhancedGrid + module: dojox/editor/plugins/nls/it/Preview + module: dojox/calendar/nls/nl/buttons + module: dojox/mobile/SwapView + module: dojox/editor/plugins/nls/bg/InsertAnchor + module: dojox/editor/plugins/nls/de/Save + module: dojox/editor/plugins/nls/it/Smiley + module: dojox/mobile/FixedSplitterPane + module: dojox/editor/plugins/TextColor + module: dojox/dgauges/ScaleBase + module: dojox/form/FileInput + module: dojox/editor/plugins/nls/ko/PasteFromWord + module: dojox/editor/plugins/nls/ru/SpellCheck + module: dojox/charting/plot2d/Pie + module: dojox/math/stats + module: dojox/editor/plugins/nls/es/Preview + module: dojox/editor/plugins/nls/id/Save + module: dojox/encoding/crypto/_base + module: dojox/xmpp/xmppSession + module: dojox/drawing/defaults + module: dojox/grid/enhanced/nls/it/Filter + module: dojox/calendar/ViewBase + module: dojox/editor/plugins/TablePlugins + module: dojox/atom/widget/nls/ko/PeopleEditor + module: dojox/editor/plugins/nls/hu/SafePaste + module: dojox/lang/functional + module: dojox/mobile/_StoreListMixin + module: dojox/editor/plugins/nls/hr/ShowBlockNodes + module: dojox/form/nls/cs/PasswordValidator + module: dojox/mobile/TransitionEvent + module: dojox/editor/plugins/nls/ar/Preview + module: dojox/editor/plugins/nls/sl/InsertAnchor + module: dojox/drawing/stencil/Path + module: dojox/drawing/tools/TextBlock + module: dojox/highlight/languages/cpp + module: dojox/dtl/tag/loop + module: dojox/mobile/bidi/TextBox + module: dojox/image/Gallery + module: dojox/editor/plugins/nls/ar/Breadcrumb + module: dojox/grid/LazyTreeGrid + module: dojox/form/nls/ko/PasswordValidator + module: dojox/dnd/Selector + module: dojox/editor/plugins/nls/uk/LocalImage + module: dojox/drawing/tools/Line + module: dojox/date/persian/Date + module: dojox/editor/plugins/nls/de/ShowBlockNodes + module: dojox/editor/plugins/nls/hr/Blockquote + module: dojox/charting/themes/Bahamation + module: dojox/grid/enhanced/nls/ja/EnhancedGrid + module: dojox/editor/plugins/nls/ja/BidiSupport + module: dojox/editor/plugins/nls/de/AutoSave + module: dojox/grid/enhanced/nls/pt/EnhancedGrid + module: dojox/widget/_CalendarDayView + module: dojox/editor/plugins/nls/he/Smiley + module: dojox/mvc/_patches + module: dojox/editor/plugins/nls/tr/BidiSupport + module: dojox/form/nls/tr/Uploader + module: dojox/form/nls/es/CheckedMultiSelect + module: dojox/form/nls/sk/PasswordValidator + module: dojox/highlight/languages/pygments/css + module: dojox/string/BidiComplex + module: dojox/validate + module: dojox/atom/widget/nls/fr/FeedViewerEntry + module: dojox/storage/AirDBStorageProvider + module: dojox/charting/themes/RoyalPurples + module: dojox/rpc/Service + module: dojox/mobile/nls/zh-tw/messages + module: dojox/editor/plugins/nls/fr/ShowBlockNodes + module: dojox/editor/plugins/nls/tr/LocalImage + module: dojox/editor/plugins/nls/id/PageBreak + module: dojox/mvc/WidgetList + module: dojox/layout/ContentPane + module: dojox/highlight/languages/css + module: dojox/editor/plugins/nls/zh/Preview + module: dojox/editor/plugins/nls/ja/PageBreak + module: dojox/highlight/languages/delphi + module: dojox/editor/plugins/nls/de/InsertEntity + module: dojox/widget/rotator/Controller + module: dojox/widget/nls/az/FilePicker + module: dojox/mobile/nls/nl/messages + module: dojox/atom/widget/nls/ca/FeedEntryEditor + module: dojox/charting/themes/Julie + module: dojox/editor/plugins/nls/hr/SafePaste + module: dojox/io/OAuth + module: dojox/grid/enhanced/plugins/Filter + module: dojox/widget/nls/fi/FilePicker + module: dojox/editor/plugins/nls/sv/Save + module: dojox/highlight/languages/javascript + module: dojox/string/BidiEngine + module: dojox/form/_HasDropDown + module: dojox/atom/widget/nls/tr/FeedViewerEntry + module: dojox/uuid/Uuid + module: dojox/collections/SortedList + module: dojox/charting/plot2d/Candlesticks + module: dojox/gfx/shape + module: dojox/widget/Iterator + module: dojox/storage/AirEncryptedLocalStorageProvider + module: dojox/editor/plugins/nls/sl/SpellCheck + module: dojox/geo/charting/_base + module: dojox/editor/plugins/nls/uk/TableDialog + module: dojox/mobile/ExpandingTextArea + module: dojox/dtl/tag/logic + module: dojox/editor/plugins/nls/ca/ShowBlockNodes + module: dojox/dtl/DomInline + module: dojox/editor/plugins/nls/nb/latinEntities + module: dojox/atom/widget/nls/ru/PeopleEditor + module: dojox/form/nls/hr/PasswordValidator + module: dojox/form/nls/PasswordValidator + module: dojox/dgauges/components/default/SemiCircularLinearGauge + module: dojox/gfx/bezierutils + module: dojox/html/metrics + module: dojox/grid/enhanced/nls/nb/EnhancedGrid + module: dojox/editor/plugins/nls/es/CollapsibleToolbar + module: dojox/form/nls/hu/CheckedMultiSelect + module: dojox/layout/ext-dijit/layout/StackContainer-touch + module: dojox/editor/plugins/nls/tr/PageBreak + module: dojox/grid/enhanced/nls/bg/EnhancedGrid + module: dojox/editor/plugins/nls/de/latinEntities + module: dojox/form/uploader/_HTML5 + module: dojox/lang/functional/listcomp + module: dojox/highlight/_base + module: dojox/dtl/tag/date + module: dojox/widget/nls/ko/FilePicker + module: dojox/editor/plugins/Save + module: dojox/widget/nls/es/Wizard + module: dojox/charting/bidi/widget/Legend + module: dojox/geo/charting/TouchInteractionSupport + module: dojox/lang/functional/binrec + module: dojox/widget/nls/ColorPicker + module: dojox/date/islamic/Date + module: dojox/editor/plugins/nls/ar/InsertEntity + module: dojox/editor/plugins/nls/uk/ShowBlockNodes + module: dojox/editor/plugins/PageBreak + module: dojox/geo/charting/MouseInteractionSupport + module: dojox/highlight/languages/django + module: dojox/mobile/Carousel + module: dojox/form/nls/fi/CheckedMultiSelect + module: dojox/date/hebrew/numerals + module: dojox/widget/Wizard + module: dojox/form/nls/sl/PasswordValidator + module: dojox/dtl/ext-dojo/NodeList + module: dojox/dgauges/components/black/HorizontalLinearGauge + module: dojox/widget/nls/da/ColorPicker + module: dojox/drawing/stencil/Text + module: dojox/grid/enhanced/nls/zh/Pagination + module: dojox/widget/nls/zh/ColorPicker + module: dojox/io/httpParse + module: dojox/form/nls/th/Uploader + module: dojox/dgauges/ScaleIndicatorBase + module: dojox/encoding/crypto/RSAKey + module: dojox/mobile/SpinWheelSlot + module: dojox/atom/widget/nls/sk/FeedEntryEditor + module: dojox/rails + module: dojox/grid/enhanced/plugins/CellMerge + module: dojox/editor/plugins/nls/hr/Breadcrumb + module: dojox/editor/plugins/nls/sk/SpellCheck + module: dojox/editor/plugins/nls/sv/TableDialog + module: dojox/mobile/Video + module: dojox/grid/DataSelection + module: dojox/editor/plugins/nls/sv/TextColor + module: dojox/gauges/Range + module: dojox/calendar/time + module: dojox/editor/plugins/nls/ca/LocalImage + module: dojox/editor/plugins/nls/he/AutoSave + module: dojox/editor/plugins/nls/uk/Preview + module: dojox/widget/nls/pt-pt/FilePicker + module: dojox/editor/plugins/nls/hu/CollapsibleToolbar + module: dojox/widget/nls/pt/ColorPicker + module: dojox/atom/widget/nls/he/FeedViewerEntry + module: dojox/mobile/nls/nb/messages + module: dojox/drawing/tools/Ellipse + module: dojox/editor/plugins/nls/ru/LocalImage + module: dojox/editor/plugins/nls/ro/TextColor + module: dojox/calendar/nls/th/buttons + module: dojox/editor/plugins/nls/es/Save + module: dojox/editor/plugins/nls/nl/Save + module: dojox/editor/plugins/nls/he/TextColor + module: dojox/widget/nls/nb/FilePicker + module: dojox/mobile/_ComboBoxMenu + module: dojox/mobile/bidi/ListItem + module: dojox/wire/ml/DataStore + module: dojox/charting/Theme + module: dojox/editor/plugins/nls/da/FindReplace + module: dojox/editor/plugins/nls/sk/ShowBlockNodes + module: dojox/gauges/AnalogCircleIndicator + module: dojox/editor/plugins/nls/zh/FindReplace + module: dojox/editor/plugins/nls/ko/Preview + module: dojox/editor/plugins/nls/sk/Save + module: dojox/layout/FloatingPane + module: dojox/form/uploader/_IFrame + module: dojox/charting/themes/Renkoo + module: dojox/charting/bidi/action2d/Tooltip + module: dojox/editor/plugins/nls/sk/BidiSupport + module: dojox/atom/widget/nls/zh/PeopleEditor + module: dojox/mobile/app/ImageView + module: dojox/data/QueryReadStore + module: dojox/editor/plugins/nls/de/BidiSupport + module: dojox/editor/plugins/nls/fi/CollapsibleToolbar + module: dojox/widget/PlaceholderMenuItem + module: dojox/charting/action2d/MouseZoomAndPan + module: dojox/atom/widget/nls/da/FeedEntryViewer + module: dojox/calendar/LabelRenderer + module: dojox/calendar/nls/it/buttons + module: dojox/widget/nls/fi/Wizard + module: dojox/editor/plugins/nls/fr/SafePaste + module: dojox/atom/widget/nls/zh/FeedViewerEntry + module: dojox/dtl/_Templated + module: dojox/editor/plugins/nls/fi/SpellCheck + module: dojox/dgauges/RectangularRangeIndicator + module: dojox/form/nls/he/CheckedMultiSelect + module: dojox/editor/plugins/nls/de/Preview + module: dojox/mvc/Group + module: dojox/editor/plugins/nls/pt/FindReplace + module: dojox/charting/themes/PlotKit/blue + module: dojox/io/xhrScriptPlugin + module: dojox/widget/nls/cs/FilePicker + module: dojox/charting/themes/Desert + module: dojox/editor/plugins/nls/es/LocalImage + module: dojox/calendar/nls/es/buttons + module: dojox/charting/themes/Adobebricks + module: dojox/app/controllers/History + module: dojox/drawing/plugins/tools/Zoom + module: dojox/atom/widget/nls/kk/PeopleEditor + module: dojox/widget/BarGauge + module: dojox/editor/plugins/nls/ar/BidiSupport + module: dojox/lang/functional/reversed + module: dojox/highlight/widget/Code + module: dojox/form/_RangeSliderMixin + module: dojox/mobile/nls/es/messages + module: dojox/lang/functional/util + module: dojox/editor/plugins/nls/sk/PasteFromWord + module: dojox/editor/plugins/nls/zh-tw/FindReplace + module: dojox/editor/plugins/nls/nb/FindReplace + module: dojox/editor/plugins/nls/ru/Preview + module: dojox/calendar/ExpandRenderer + module: dojox/widget/nls/uk/Wizard + module: dojox/mobile/parser + module: dojox/mobile/Pane + module: dojox/timing + module: dojox/mobile/EdgeToEdgeCategory + module: dojox/dtl/_base + module: dojox/mobile/bidi/RoundRectCategory + module: dojox/form/nls/pt/Uploader + module: dojox/widget/nls/ro/FilePicker + module: dojox/dgauges/components/green/CircularLinearGauge + module: dojox/editor/plugins/nls/ko/SpellCheck + module: dojox/mobile/_PickerBase + module: dojox/widget/nls/ca/Wizard + module: dojox/editor/plugins/nls/da/AutoSave + module: dojox/atom/widget/nls/sv/FeedViewerEntry + module: dojox/editor/plugins/PasteFromWord + module: dojox/atom/widget/nls/ar/FeedEntryViewer + module: dojox/form/uploader/_Flash + module: dojox/form/nls/th/CheckedMultiSelect + module: dojox/grid/_TreeView + module: dojox/mobile/nls/messages + module: dojox/editor/plugins/nls/de/PasteFromWord + module: dojox/editor/plugins/nls/kk/Preview + module: dojox/lang/functional/sequence + module: dojox/highlight/languages/_all + module: dojox/editor/plugins/nls/SpellCheck + module: dojox/editor/plugins/nls/he/CollapsibleToolbar + module: dojox/storage/BehaviorStorageProvider + module: dojox/date/hebrew + module: dojox/grid/nls/DataGrid_ar + module: dojox/grid/nls/DataGrid_ca + module: dojox/grid/nls/DataGrid_cs + module: dojox/grid/nls/DataGrid_da + module: dojox/grid/nls/DataGrid_de + module: dojox/grid/nls/DataGrid_el + module: dojox/grid/nls/DataGrid_en-gb + module: dojox/grid/nls/DataGrid_en-us + module: dojox/grid/nls/DataGrid_es-es + module: dojox/grid/nls/DataGrid_fi-fi + module: dojox/grid/nls/DataGrid_fr-fr + module: dojox/grid/nls/DataGrid_he-il + module: dojox/grid/nls/DataGrid_hu + module: dojox/grid/nls/DataGrid_it-it + module: dojox/grid/nls/DataGrid_ja-jp + module: dojox/grid/nls/DataGrid_ko-kr + module: dojox/grid/nls/DataGrid_nl-nl + module: dojox/grid/nls/DataGrid_nb + module: dojox/grid/nls/DataGrid_pl + module: dojox/grid/nls/DataGrid_pt-br + module: dojox/grid/nls/DataGrid_pt-pt + module: dojox/grid/nls/DataGrid_ru + module: dojox/grid/nls/DataGrid_sk + module: dojox/grid/nls/DataGrid_sl + module: dojox/grid/nls/DataGrid_sv + module: dojox/grid/nls/DataGrid_th + module: dojox/grid/nls/DataGrid_tr + module: dojox/grid/nls/DataGrid_zh-tw + module: dojox/grid/nls/DataGrid_zh-cn + module: dojox/grid/nls/DataGrid_ROOT + module: dojox/grid/DataGrid + module: dojox/editor/plugins/nls/fi/ShowBlockNodes + module: dojox/editor/plugins/nls/bg/Preview + module: dojox/grid/_RowManager + module: dojox/form/nls/it/PasswordValidator + module: dojox/grid/enhanced/plugins/filter/FilterLayer + module: dojox/editor/plugins/nls/sv/LocalImage + module: dojox/editor/plugins/nls/sk/InsertAnchor + module: dojox/editor/plugins/CollapsibleToolbar + module: dojox/form/nls/ja/CheckedMultiSelect + module: dojox/mvc/StatefulModel + module: dojox/grid/_View + module: dojox/editor/plugins/nls/th/latinEntities + module: dojox/editor/plugins/nls/da/Preview + module: dojox/calendar/nls/zh/buttons + module: dojox/editor/plugins/nls/da/InsertEntity + module: dojox/form/nls/bg/Uploader + module: dojox/mobile/RoundRectStoreList + module: dojox/mobile/nls/uk/messages + module: dojox/editor/plugins/nls/ja/LocalImage + module: dojox/mobile/nls/sv/messages + module: dojox/mvc/getStateful + module: dojox/color/_base + module: dojox/color/NeutralColorModel + module: dojox/atom/widget/nls/hr/FeedEntryEditor + module: dojox/mobile/ValuePickerDatePicker + module: dojox/layout/Dock + module: dojox/fx/easing + module: dojox/widget/nls/id/Wizard + module: dojox/sketch/PreexistingAnnotation + module: dojox/mobile/bidi/Heading + module: dojox/dtl/filter/lists + module: dojox/editor/plugins/nls/nb/SpellCheck + module: dojox/form/TriStateCheckBox + module: dojox/form/nls/ko/Uploader + module: dojox/date/persian/locale + module: dojox/editor/plugins/nls/da/TextColor + module: dojox/widget/Rotator + module: dojox/widget/nls/th/Wizard + module: dojox/editor/plugins/nls/ro/PageBreak + module: dojox/mobile/_DatePickerMixin + module: dojox/app/utils/layout + module: dojox/atom/widget/nls/nl/FeedEntryEditor + module: dojox/atom/widget/nls/es/FeedEntryViewer + module: dojox/lang/aspect/memoizerGuard + module: dojox/mobile/app/TextBox + module: dojox/editor/plugins/nls/he/PageBreak + module: dojox/atom/widget/nls/ro/FeedEntryEditor + module: dojox/editor/plugins/nls/th/CollapsibleToolbar + module: dojox/gauges/AnalogIndicatorBase + module: dojox/grid/_CheckBoxSelector + module: dojox/mobile/bidi/Rating + module: dojox/geo/openlayers/GeometryFeature + module: dojox/drawing/tools/custom/Equation + module: dojox/analytics/_base + module: dojox/mobile/TreeView + module: dojox/editor/plugins/nls/BidiSupport + module: dojox/data/S3Store + module: dojox/data/XmlItem + module: dojox/editor/plugins/nls/pl/latinEntities + module: dojox/mvc/_TextBoxExtensions + module: dojox/mobile/_ItemBase + module: dojox/dgauges/components/green/HorizontalLinearGauge + module: dojox/editor/plugins/nls/he/LocalImage + module: dojox/widget/nls/it/ColorPicker + module: dojox/editor/plugins/nls/hu/Preview + module: dojox/editor/plugins/nls/zh-tw/SpellCheck + module: dojox/editor/plugins/nls/ja/CollapsibleToolbar + module: dojox/gfx3d/vector + module: dojox/grid/LazyTreeGridStoreModel + module: dojox/editor/plugins/nls/fi/InsertEntity + module: dojox/editor/plugins/nls/cs/SpellCheck + module: dojox/sketch/UnderlineAnnotation + module: dojox/editor/plugins/nls/el/Preview + module: dojox/drawing/manager/_registry + module: dojox/data/AndOrReadStore + module: dojox/form/nls/da/CheckedMultiSelect + module: dojox/widget/CalendarFx + module: dojox/css3/transit + module: dojox/widget/nls/zh-tw/Wizard + module: dojox/drawing/plugins/tools/Pan + module: dojox/sql + module: dojox/mvc/Element + module: dojox/gfx/canvas + module: dojox/widget/nls/el/FilePicker + module: dojox/dgauges/MultiLinearScaler + module: dojox/editor/plugins/nls/sl/BidiSupport + module: dojox/collections/BinaryTree + module: dojox/drawing/util/positioning + module: dojox/form/nls/ca/Uploader + module: dojox/editor/plugins/nls/fr/Smiley + module: dojox/mobile/DataCarousel + module: dojox/atom/widget/nls/it/FeedEntryViewer + module: dojox/mobile/bidi/SwapView + module: dojox/editor/plugins/nls/pt/ShowBlockNodes + module: dojox/editor/plugins/nls/id/ShowBlockNodes + module: dojox/editor/plugins/nls/ca/TextColor + module: dojox/drawing/plugins/drawing/Grid + module: dojox/drawing/annotations/Label + module: dojox/grid/enhanced/nls/ar/Pagination + module: dojox/lang/async/event + module: dojox/editor/plugins/nls/ro/SpellCheck + module: dojox/editor/plugins/nls/it/FindReplace + module: dojox/grid/enhanced/nls/fr/Filter + module: dojox/gfx/utils + module: dojox/wire/ml/Action + module: dojox/grid/enhanced/plugins/DnD + module: dojox/mobile/transition + module: dojox/app/utils/simpleModel + module: dojox/flash + module: dojox/atom/widget/nls/kk/FeedEntryViewer + module: dojox/grid/_Builder + module: dojox/editor/plugins/nls/nb/Preview + module: dojox/editor/plugins/nls/da/TableDialog + module: dojox/editor/plugins/nls/el/Save + module: dojox/editor/plugins/nls/zh/TableDialog + module: dojox/widget/_CalendarYearView + module: dojox/mobile/nls/sl/messages + module: dojox/calendar/MatrixView + module: dojox/validate/isbn + module: dojox/editor/plugins/nls/ar/Save + module: dojox/gauges/AnalogArrowIndicator + module: dojox/widget/nls/th/FilePicker + module: dojox/editor/plugins/nls/ja/Preview + module: dojox/mobile/dh/PatternFileTypeMap + module: dojox/editor/plugins/nls/zh-tw/Save + module: dojox/editor/plugins/nls/he/latinEntities + module: dojox/calendar/nls/ko/buttons + module: dojox/editor/plugins/nls/pt/TableDialog + module: dojox/editor/plugins/_SmileyPalette + module: dojox/editor/plugins/nls/da/CollapsibleToolbar + module: dojox/grid/enhanced/nls/sk/EnhancedGrid + module: dojox/storage/GearsStorageProvider + module: dojox/math/matrix + module: dojox/editor/plugins/nls/Preview + module: dojox/atom/widget/nls/el/FeedEntryEditor + module: dojox/dgauges/components/classic/HorizontalLinearGauge + module: dojox/encoding/digests/SHA512 + module: dojox/gantt/GanttProjectItem + module: dojox/gfx/matrix + module: dojox/editor/plugins/nls/fi/TextColor + module: dojox/editor/plugins/nls/Save + module: dojox/editor/plugins/nls/it/PasteFromWord + module: dojox/grid/enhanced/nls/de/Pagination + module: dojox/calendar/nls/de/buttons + module: dojox/editor/plugins/nls/th/PasteFromWord + module: dojox/editor/plugins/nls/de/TextColor + module: dojox/form/nls/az/PasswordValidator + module: dojox/mobile/_ExecScriptMixin + module: dojox/help/_base + module: dojox/editor/plugins/nls/zh-tw/TableDialog + module: dojox/editor/plugins/nls/nb/TableDialog + module: dojox/math/BigInteger + module: dojox/calendar/CalendarBase + module: dojox/string/Builder + module: dojox/storage + module: dojox/mobile/app/ListSelector + module: dojox/editor/plugins/nls/da/PageBreak + module: dojox/charting/BidiSupport + module: dojox/editor/plugins/nls/bg/Save + module: dojox/lang/oo/aop + module: dojox/widget/_FisheyeFX + module: dojox/mobile/nls/pl/messages + module: dojox/editor/plugins/nls/ru/BidiSupport + module: dojox/editor/plugins/nls/zh-tw/PasteFromWord + module: dojox/editor/plugins/nls/es/SafePaste + module: dojox/mobile/dh/HtmlContentHandler + module: dojox/app/utils/nls + module: dojox/atom/widget/nls/cs/FeedEntryEditor + module: dojox/calendar/nls/ru/buttons + module: dojox/charting/bidi/axis2d/Default + module: dojox/form/nls/de/PasswordValidator + module: dojox/image/Badge + module: dojox/app/utils/hash + module: dojox/atom/widget/nls/ca/FeedEntryViewer + module: dojox/widget/_CalendarMonthYear + module: dojox/drawing/manager/StencilUI + module: dojox/editor/plugins/nls/pl/PasteFromWord + module: dojox/fx/text + module: dojox/grid/TreeGrid + module: dojox/drawing/manager/Canvas + module: dojox/form/nls/zh-tw/Uploader + module: dojox/widget/PortletSettings + module: dojox/editor/plugins/nls/tr/InsertEntity + module: dojox/form/nls/hu/Uploader + module: dojox/editor/plugins/nls/el/SpellCheck + module: dojox/editor/plugins/nls/id/InsertEntity + module: dojox/encoding/digests/_base + module: dojox/form/nls/el/Uploader + module: dojox/editor/plugins/nls/kk/TextColor + module: dojox/calendar/RendererManager + module: dojox/gfx/gradient + module: dojox/editor/plugins/nls/nl/ShowBlockNodes + module: dojox/mobile/TabBar + module: dojox/calendar/nls/bg/buttons + module: dojox/mobile/_IconItemPane + module: dojox/sketch + module: dojox/mobile/dh/UrlDataSource + module: dojox/grid/enhanced/nls/hr/Pagination + module: dojox/grid/enhanced/nls/hu/Filter + module: dojox/editor/plugins/nls/kk/SpellCheck + module: dojox/editor/plugins/nls/nl/InsertAnchor + module: dojox/form/nls/fr/CheckedMultiSelect + module: dojox/mvc/Generate + module: dojox/calc/_Executor + module: dojox/mobile/_ListTouchMixin + module: dojox/editor/plugins/nls/ca/PageBreak + module: dojox/editor/plugins/nls/zh/Smiley + module: dojox/atom/widget/nls/da/FeedViewerEntry + module: dojox/editor/plugins/nls/ar/ShowBlockNodes + module: dojox/form/nls/kk/Uploader + module: dojox/widget/nls/pl/ColorPicker + module: dojox/analytics/plugins/touchPress + module: dojox/charting/widget/Chart + module: dojox/lang/functional/tailrec + module: dojox/data/WikipediaStore + module: dojox/mobile/ValuePicker + module: dojox/mobile/nls/fi/messages + module: dojox/editor/plugins/nls/ar/SafePaste + module: dojox/editor/plugins/Blockquote + module: dojox/editor/plugins/nls/th/SpellCheck + module: dojox/form/nls/el/CheckedMultiSelect + module: dojox/atom/widget/nls/ja/PeopleEditor + module: dojox/grid/enhanced/nls/zh/Filter + module: dojox/charting/plot2d/common + module: dojox/grid/enhanced/_FocusManager + module: dojox/mdnd/LazyManager + module: dojox/atom/widget/nls/pt/PeopleEditor + module: dojox/mobile/bidi/common + module: dojox/editor/plugins/nls/TextColor + module: dojox/widget/Standby + module: dojox/editor/plugins/nls/nl/Smiley + module: dojox/drawing/tools/Path + module: dojox/editor/plugins/nls/da/Save + module: dojox/grid/enhanced/nls/pl/Pagination + module: dojox/mobile/Audio + module: dojox/dgauges/RectangularSegmentedRangeIndicator + module: dojox/grid/enhanced/nls/nl/Filter + module: dojox/editor/plugins/nls/sv/InsertAnchor + module: dojox/calendar/nls/pt-pt/buttons + module: dojox/grid/enhanced/plugins/exporter/_ExportWriter + module: dojox/editor/plugins/nls/he/PasteFromWord + module: dojox/gfx + module: dojox/store/db/has + module: dojox/editor/plugins/nls/pl/FindReplace + module: dojox/app/main + module: dojox/charting/action2d/Base + module: dojox/calendar/nls/hu/buttons + module: dojox/form/nls/da/Uploader + module: dojox/widget/AutoRotator + module: dojox/editor/plugins/nls/ca/InsertAnchor + module: dojox/av/widget/ProgressSlider + module: dojox/editor/plugins/nls/pt/InsertAnchor + module: dojox/atom/widget/nls/ru/FeedEntryViewer + module: dojox/data/OpmlStore + module: dojox/gfx/svg + module: dojox/editor/plugins/nls/ro/latinEntities + module: dojox/calendar/nls/el/buttons + module: dojox/editor/plugins/nls/fi/PageBreak + module: dojox/gauges/BarLineIndicator + module: dojox/editor/plugins/nls/fr/CollapsibleToolbar + module: dojox/form/nls/it/CheckedMultiSelect + module: dojox/atom/widget/nls/ar/FeedViewerEntry + module: dojox/grid/enhanced/plugins/Pagination + module: dojox/charting/DataSeries + module: dojox/grid/enhanced/nls/Pagination + module: dojox/editor/plugins/nls/de/PageBreak + module: dojox/mobile/compat + module: dojox/grid/enhanced/plugins/filter/_DataExprs + module: dojox/form/nls/ar/PasswordValidator + module: dojox/editor/plugins/nls/it/TableDialog + module: dojox/treemap/ScaledLabel + module: dojox/gfx/_base + module: dojox/editor/plugins/nls/el/CollapsibleToolbar + module: dojox/editor/plugins/nls/hr/latinEntities + module: dojox/atom/widget/nls/pt-pt/FeedEntryViewer + module: dojox/editor/plugins/nls/fr/InsertAnchor + module: dojox/editor/plugins/nls/cs/SafePaste + module: dojox/widget/nls/fr/ColorPicker + module: dojox/editor/plugins/nls/pt/AutoSave + module: dojox/atom/widget/nls/nb/PeopleEditor + module: dojox/atom/widget/nls/bg/FeedEntryViewer + module: dojox/drawing/ui/dom/Toolbar + module: dojox/editor/plugins/nls/ko/InsertEntity + module: dojox/mvc + module: dojox/gantt/GanttProjectControl + module: dojox/mvc/Repeat + module: dojox/charting/themes/Minty + module: dojox/atom/widget/nls/bg/PeopleEditor + module: dojox/sql/_crypto + module: dojox/grid/enhanced/nls/bg/Pagination + module: dojox/calendar/nls/nb/buttons + module: dojox/data/FileStore + module: dojox/lang/aspect + module: dojox/editor/plugins/nls/it/Save + module: dojox/form/MultiComboBox + module: dojox/data/AtomReadStore + module: dojox/mobile/IconItem + module: dojox/layout/ExpandoPane + module: dojox/editor/plugins/nls/hr/Preview + module: dojox/grid/enhanced/plugins/filter/FilterBuilder + module: dojox/dgauges/GaugeBase + module: dojox/editor/plugins/nls/pt/TextColor + module: dojox/widget/nls/sl/FilePicker + module: dojox/mobile/SpinWheelDatePicker + module: dojox/editor/plugins/nls/ko/TextColor + module: dojox/date/umalqura/locale + module: dojox/charting/plot2d/StackedLines + module: dojox/charting/plot2d/ClusteredBars + module: dojox/date/posix + module: dojox/calendar/nls/ja/buttons + module: dojox/drawing/annotations/BoxShadow + module: dojox/editor/plugins/nls/bg/AutoSave + module: dojox/drawing/tools/custom/Axes + module: dojox/atom/widget/nls/es/FeedViewerEntry + module: dojox/mobile/migrationAssist + module: dojox/editor/plugins/nls/it/CollapsibleToolbar + module: dojox/editor/plugins/nls/fr/FindReplace + module: dojox/form/nls/tr/CheckedMultiSelect + module: dojox/editor/plugins/InsertEntity + module: dojox/highlight/languages/groovy + module: dojox/editor/plugins/nls/kk/PageBreak + module: dojox/editor/plugins/nls/nl/PageBreak + module: dojox/grid/enhanced/nls/nl/EnhancedGrid + module: dojox/editor/plugins/_SpellCheckParser + module: dojox/editor/plugins/Breadcrumb + module: dojox/editor/plugins/nls/hu/SpellCheck + module: dojox/form/nls/sl/CheckedMultiSelect + module: dojox/editor/plugins/nls/ko/AutoSave + module: dojox/drawing/manager/Undo + module: dojox/json/ref + module: dojox/grid/enhanced/plugins/_SelectionPreserver + module: dojox/editor/plugins/nls/ja/Smiley + module: dojox/charting/themes/PlotKit/red + module: dojox/mobile/app/ImageThumbView + module: dojox/form/nls/he/PasswordValidator + module: dojox/editor/plugins/nls/cs/InsertAnchor + module: dojox/form/nls/zh/Uploader + module: dojox/analytics/plugins/dojo + module: dojox/widget/nls/hr/Wizard + module: dojox/grid/enhanced/nls/ja/Filter + module: dojox/sketch/UndoStack + module: dojox/fx/Timeline + module: dojox/drawing/plugins/_Plugin + module: dojox/editor/plugins/nls/el/LocalImage + module: dojox/dnd/BoundingBoxController + module: dojox/editor/plugins/nls/el/InsertAnchor + module: dojox/timing/_base + module: dojox/editor/plugins/nls/PageBreak + module: dojox/form/nls/id/CheckedMultiSelect + module: dojox/widget/nls/sv/Wizard + module: dojox/form/BusyButton + module: dojox/grid/enhanced/nls/sv/EnhancedGrid + module: dojox/charting/Series + module: dojox/grid/Selection + module: dojox/html/styles + module: dojox/charting/plot2d/Bubble + module: dojox/atom/widget/nls/th/FeedEntryViewer + module: dojox/mobile/dh/JsonContentHandler + module: dojox/widget/nls/sk/FilePicker + module: dojox/dgauges/RectangularGauge + module: dojox/editor/plugins/nls/ru/TextColor + module: dojox/store/priority + module: dojox/grid/enhanced/nls/da/Pagination + module: dojox/atom/widget/nls/it/FeedViewerEntry + module: dojox/grid/enhanced/plugins/exporter/TableWriter + module: dojox/mobile/IconMenuItem + module: dojox/drawing/stencil/Rect + module: dojox/editor/plugins/nls/tr/CollapsibleToolbar + module: dojox/mvc/_Container + module: dojox/drawing/plugins/drawing/GreekPalette + module: dojox/grid/enhanced/nls/ca/EnhancedGrid + module: dojox/editor/plugins/NormalizeStyle + module: dojox/mobile/app/SceneAssistant + module: dojox/lang/aspect/counter + module: dojox/form/nls/zh-tw/PasswordValidator + module: dojox/mobile/nls/tr/messages + module: dojox/editor/plugins/nls/ru/InsertEntity + module: dojox/charting/widget/SelectableLegend + module: dojox/grid/enhanced/nls/it/EnhancedGrid + module: dojox/atom/widget/nls/kk/FeedViewerEntry + module: dojox/drawing/manager/Stencil + module: dojox/editor/plugins/nls/uk/SafePaste + module: dojox/dtl/render/dom + module: dojox/editor/plugins/nls/th/BidiSupport + module: dojox/editor/plugins/nls/ro/AutoSave + module: dojox/editor/plugins/nls/th/LocalImage + module: dojox/editor/plugins/nls/sl/CollapsibleToolbar + module: dojox/editor/plugins/nls/hr/BidiSupport + module: dojox/editor/plugins/nls/nb/SafePaste + module: dojox/layout/dnd/Avatar + module: dojox/form/uploader/plugins/HTML5 + module: dojox/editor/plugins/nls/ca/AutoSave + module: dojox/widget/nls/ro/ColorPicker + module: dojox/editor/plugins/nls/zh-tw/ShowBlockNodes + module: dojox/data/PersevereStore + module: dojox/editor/plugins/nls/ro/PasteFromWord + module: dojox/mobile/ScrollablePane + module: dojox/mobile/bidi/TreeView + module: dojox/grid/enhanced/nls/fr/EnhancedGrid + module: dojox/data/KeyValueStore + module: dojox/editor/plugins/nls/ca/PasteFromWord + module: dojox/mobile/bookmarkable + module: dojox/form/FileInputAuto + module: dojox/editor/plugins/nls/pl/Blockquote + module: dojox/form/Rating + module: dojox/xmpp/util + module: dojox/charting/themes/gradientGenerator + module: dojox/editor/plugins/nls/id/CollapsibleToolbar + module: dojox/geo/openlayers/Patch + module: dojox/editor/plugins/nls/hr/PasteFromWord + module: dojox/mobile/_ScrollableMixin + module: dojox/layout/TableContainer + module: dojox/editor/plugins/nls/de/Breadcrumb + module: dojox/editor/plugins/nls/pl/Preview + module: dojox/form/HorizontalRangeSlider + module: dojox/av/FLVideo + module: dojox/grid/enhanced/plugins/_StoreLayer + module: dojox/treemap/GroupLabel + module: dojox/atom/widget/FeedViewer + module: dojox/mdnd/adapter/DndFromDojo + module: dojox/mobile/bidi/Accordion + module: dojox/editor/plugins/nls/ro/FindReplace + module: dojox/widget/_CalendarMonthView + module: dojox/wire/ml/Transfer + module: dojox/widget/nls/it/FilePicker + module: dojox/encoding/bits + module: dojox/editor/plugins/nls/pt/PageBreak + module: dojox/store/LocalDB + module: dojox/lang/functional/lambda + module: dojox/gfx/move + module: dojox/editor/plugins/nls/pl/TableDialog + module: dojox/editor/plugins/nls/ko/PageBreak + module: dojox/dtl/filter/logic + module: dojox/mobile/RadioButton + module: dojox/image/FlickrBadge + module: dojox/atom/widget/nls/FeedEntryEditor + module: dojox/editor/plugins/nls/ja/AutoSave + module: dojox/math/BigInteger-ext + module: dojox/form/nls/fr/PasswordValidator + module: dojox/highlight/languages/pygments/xml + module: dojox/editor/plugins/nls/sl/latinEntities + module: dojox/sketch/Toolbar + module: dojox/gauges/GlossyHorizontalGaugeMarker + module: dojox/charting/themes/MiamiNice + module: dojox/editor/plugins/nls/ja/SafePaste + module: dojox/geo/openlayers/_base + module: dojox/embed/Object + module: dojox/widget/nls/Wizard + module: dojox/mdnd/PureSource + module: dojox/geo/openlayers/widget/Map + module: dojox/editor/plugins/nls/uk/InsertAnchor + module: dojox/highlight/languages/xml + module: dojox/mobile/dh/HtmlScriptContentHandler + module: dojox/form/nls/zh-tw/CheckedMultiSelect + module: dojox/widget/Loader + module: dojox/date/buddhist/locale + module: dojox/widget/nls/hu/ColorPicker + module: dojox/storage/LocalStorageProvider + module: dojox/grid/enhanced/nls/cs/EnhancedGrid + module: dojox/editor/plugins/nls/zh/InsertEntity + module: dojox/fx/Shadow + module: dojox/editor/plugins/nls/bg/Blockquote + module: dojox/widget/Calendar2Pane + module: dojox/atom/widget/nls/ca/FeedViewerEntry + module: dojox/wire/TextAdapter + module: dojox/drawing/plugins/tools/Iconize + module: dojox/grid/enhanced/nls/el/EnhancedGrid + module: dojox/app/widgets/Container + module: dojox/math/curves + module: dojox/charting/themes/Shrooms + module: dojox/editor/plugins/nls/tr/latinEntities + module: dojox/calendar/nls/pt/buttons + module: dojox/widget/PortletDialogSettings + module: dojox/drawing/annotations/Angle + module: dojox/grid/enhanced/nls/fr/Pagination + module: dojox/mobile/ProgressBar + module: dojox/editor/plugins/nls/sv/Blockquote + module: dojox/rpc/ProxiedPath + module: dojox/form/nls/fi/PasswordValidator + module: dojox/form/nls/zh/PasswordValidator + module: dojox/storage/AirFileStorageProvider + module: dojox/editor/plugins/nls/kk/InsertEntity + module: dojox/io/windowName + module: dojox/editor/plugins/nls/hu/FindReplace + module: dojox/editor/plugins/nls/ru/PageBreak + module: dojox/atom/widget/nls/el/FeedEntryViewer + module: dojox/charting/plot2d/Indicator + module: dojox/editor/plugins/nls/ro/ShowBlockNodes + module: dojox/widget/nls/pl/Wizard + module: dojox/editor/plugins/nls/sk/SafePaste + module: dojox/validate/check + module: dojox/mobile/nls/id/messages + module: dojox/editor/plugins/nls/es/latinEntities + module: dojox/form/nls/sv/PasswordValidator + module: dojox/fx/flip + module: dojox/editor/plugins/nls/hu/AutoSave + module: dojox/editor/plugins/nls/fr/TableDialog + module: dojox/math/random/prng4 + module: dojox/drawing/stencil/Ellipse + module: dojox/editor/plugins/nls/th/SafePaste + module: dojox/form/ListInput + module: dojox/calendar/nls/hr/buttons + module: dojox/editor/plugins/nls/el/AutoSave + module: dojox/charting/themes/Grasshopper + module: dojox/mdnd/AutoScroll + module: dojox/atom/io/Connection + module: dojox/layout/GridContainer + module: dojox/editor/plugins/nls/pl/Breadcrumb + module: dojox/mobile/nls/it/messages + module: dojox/editor/plugins/nls/pt-pt/Blockquote + module: dojox/lang/functional/curry + module: dojox/form/uploader/plugins/Flash + module: dojox/editor/plugins/BidiSupport + module: dojox/charting/axis2d/Invisible + module: dojox/widget/nls/nb/ColorPicker + module: dojox/dgauges/components/black/SemiCircularLinearGauge + module: dojox/validate/_base + module: dojox/atom/widget/nls/sl/FeedEntryViewer + module: dojox/mobile/app + module: dojox/widget/nls/pt-pt/Wizard + module: dojox/mobile/bidi/Switch + module: dojox/editor/plugins/nls/nb/ShowBlockNodes + module: dojox/editor/plugins/nls/nl/BidiSupport + module: dojox/editor/plugins/nls/pt-pt/FindReplace + module: dojox/charting/plot2d/Areas + module: dojox/editor/plugins/nls/kk/AutoSave + module: dojox/data/OpenSearchStore + module: dojox/calendar/MobileCalendar + module: dojox/collections/Set + module: dojox/gfx3d/lighting + module: dojox/grid/enhanced/_Plugin + module: dojox/widget/nls/kk/Wizard + module: dojox/atom/widget/nls/sk/FeedViewerEntry + module: dojox/date/umalqura/Date + module: dojox/grid/enhanced/plugins/GridSource + module: dojox/charting/widget/Legend + module: dojox/editor/plugins/nls/he/FindReplace + module: dojox/editor/plugins/nls/da/Blockquote + module: dojox/mobile/ComboBox + module: dojox/widget/nls/ko/ColorPicker + module: dojox/gauges/AnalogArcIndicator + module: dojox/widget/_CalendarBase + module: dojox/editor/plugins/nls/pt-pt/ShowBlockNodes + module: dojox/atom/widget/nls/ru/FeedViewerEntry + module: dojox/widget/nls/pt/FilePicker + module: dojox/editor/plugins/nls/it/SpellCheck + module: dojox/data/SnapLogicStore + module: dojox/widget/nls/de/Wizard + module: dojox/mobile/IconMenu + module: dojox/gfx/vml_attach + module: dojox/widget/nls/ja/ColorPicker + module: dojox/atom/widget/nls/sk/PeopleEditor + module: dojox/editor/plugins/nls/nb/PasteFromWord + module: dojox/atom/widget/nls/pt-pt/FeedViewerEntry + module: dojox/widget/nls/tr/ColorPicker + module: dojox/form/nls/pt-pt/CheckedMultiSelect + module: dojox/editor/plugins/nls/pt-pt/latinEntities + module: dojox/dgauges/components/default/VerticalLinearGauge + module: dojox/grid/enhanced/nls/uk/EnhancedGrid + module: dojox/widget/nls/el/ColorPicker + module: dojox/gfx/canvasWithEvents + module: dojox/editor/plugins/nls/bg/Breadcrumb + module: dojox/atom/widget/nls/bg/FeedViewerEntry + module: dojox/mobile/_StoreMixin + module: dojox/storage/CookieStorageProvider + module: dojox/gfx/Moveable + module: dojox/charting/plot2d/_PlotEvents + module: dojox/lang/functional/linrec + module: dojox/widget/Calendar + module: dojox/date/umalqura + module: dojox/editor/plugins/nls/cs/Save + module: dojox/mvc/_DataBindingMixin + module: dojox/editor/plugins/nls/ko/FindReplace + module: dojox/editor/plugins/nls/sl/LocalImage + module: dojox/fx/ext-dojo/NodeList-style + module: dojox/mobile/ProgressIndicator + module: dojox/grid/enhanced/nls/id/Pagination + module: dojox/fx/style + module: dojox/widget/CalendarViews + module: dojox/editor/plugins/nls/hr/Save + module: dojox/form/Manager + module: dojox/dtl/tag/loader + module: dojox/editor/plugins/nls/ja/FindReplace + module: dojox/widget/rotator/Slide + module: dojox/editor/plugins/nls/pt-pt/Preview + module: dojox/gantt/GanttTaskItem + module: dojox/encoding/ascii85 + module: dojox/xmpp/widget/ChatSession + module: dojox/editor/plugins/nls/tr/FindReplace + module: dojox/atom/widget/nls/hu/FeedEntryViewer + module: dojox/editor/plugins/nls/el/FindReplace + module: dojox/charting/themes/BlueDusk + module: dojox/editor/plugins/nls/bg/TextColor + module: dojox/atom/widget/nls/fi/FeedEntryViewer + module: dojox/editor/plugins/nls/ro/TableDialog + module: dojox/editor/plugins/nls/sv/PageBreak + module: dojox/widget/nls/ro/Wizard + module: dojox/grid/enhanced/plugins/AutoScroll + module: dojox/app/controllers/Layout + module: dojox/form/nls/pt/CheckedMultiSelect + module: dojox/calendar/nls/pl/buttons + module: dojox/highlight/languages/pygments/_html + module: dojox/charting/themes/Wetland + module: dojox/storage/WhatWGStorageProvider + module: dojox/data/util/JsonQuery + module: dojox/editor/plugins/nls/pt-pt/Breadcrumb + module: dojox/grid/enhanced/nls/zh-tw/Pagination + module: dojox/charting/themes/PlotKit/base + module: dojox/charting/themes/Claro + module: dojox/calendar/MobileHorizontalRenderer + module: dojox/geo/openlayers/Feature + module: dojox/editor/plugins/nls/sk/LocalImage + module: dojox/editor/plugins/nls/da/Breadcrumb + module: dojox/editor/plugins/nls/fr/Blockquote + module: dojox/collections/_base + module: dojox/mobile/bidi/_StoreListMixin + module: dojox/atom/widget/nls/th/FeedViewerEntry + module: dojox/layout/DragPane + module: dojox/charting/plot2d/Markers + module: dojox/mobile/nls/de/messages + module: dojox/editor/plugins/nls/zh/AutoSave + module: dojox/mobile/bidi/IconItem + module: dojox/wire/ml/util + module: dojox/widget/nls/zh/FilePicker + module: dojox/widget/TitleGroup + module: dojox/editor/plugins/nls/pl/InsertAnchor + module: dojox/editor/plugins/nls/pt/latinEntities + module: dojox/drawing/ui/dom/Pan + module: dojox/charting/Chart2D + module: dojox/calendar/nls/ro/buttons + module: dojox/editor/plugins/nls/pt/SpellCheck + module: dojox/widget/nls/ar/Wizard + module: dojox/form/nls/ro/Uploader + module: dojox/string/sprintf + module: dojox/grid/enhanced/nls/ca/Filter + module: dojox/data/CsvStore + module: dojox/editor/plugins/nls/pt/CollapsibleToolbar + module: dojox/form/nls/sv/CheckedMultiSelect + module: dojox/charting/bidi/widget/Chart + module: dojox/editor/plugins/nls/sl/SafePaste + module: dojox/analytics/plugins/consoleMessages + module: dojox/charting/Chart3D + module: dojox/editor/plugins/nls/hu/TableDialog + module: dojox/form/nls/hu/PasswordValidator + module: dojox/editor/plugins/nls/nl/Blockquote + module: dojox/gfx/arc + module: dojox/charting/themes/PurpleRain + module: dojox/mobile/scrollable + module: dojox/widget/nls/kk/FilePicker + module: dojox/widget/AnalogGauge + module: dojox/mobile/bidi/Button + module: dojox/widget/nls/es/ColorPicker + module: dojox/editor/plugins/nls/fi/LocalImage + module: dojox/editor/plugins/nls/InsertAnchor + module: dojox/widget/nls/id/ColorPicker + module: dojox/atom/widget/nls/id/FeedEntryEditor + module: dojox/mvc/_base + module: dojox/editor/plugins/nls/kk/ShowBlockNodes + module: dojox/dtl/dom + module: dojox/widget/nls/pt/Wizard + module: dojox/editor/plugins/nls/pt-pt/PasteFromWord + module: dojox/css3/transition + module: dojox/charting/action2d/Magnify + module: dojox/layout/RadioGroup + module: dojox/mobile/TextBox + module: dojox/editor/plugins/nls/he/InsertEntity + module: dojox/color + module: dojox/editor/plugins/nls/pt-pt/TableDialog + module: dojox/editor/plugins/nls/el/ShowBlockNodes + module: dojox/editor/plugins/AutoSave + module: dojox/editor/plugins/nls/it/LocalImage + module: dojox/grid/enhanced/nls/tr/Pagination + module: dojox/charting/bidi/Chart3D + module: dojox/widget/nls/ca/ColorPicker + module: dojox/editor/plugins/nls/it/TextColor + module: dojox/atom/widget/nls/pt/FeedEntryEditor + module: dojox/charting/themes/Electric + module: dojox/mvc/_InlineTemplateMixin + module: dojox/app/utils/model + module: dojox/fx/ext-dojo/NodeList + module: dojox/lang/aspect/cflow + module: dojox/charting/StoreSeries + module: dojox/form/CheckedMultiSelect + module: dojox/editor/plugins/nls/zh-tw/Smiley + module: dojox/mobile/FormLayout + module: dojox/editor/plugins/nls/he/TableDialog + module: dojox/data/PicasaStore + module: dojox/form/nls/ja/Uploader + module: dojox/editor/plugins/nls/el/TextColor + module: dojox/editor/plugins/nls/es/FindReplace + module: dojox/gauges/GlossySemiCircularGauge + module: dojox/editor/plugins/nls/sv/CollapsibleToolbar + module: dojox/drawing/library/greek + module: dojox/encoding/_base + module: dojox/editor/plugins/nls/id/FindReplace + module: dojox/charting/themes/ThreeD + module: dojox/data/ClientFilter + module: dojox/xmpp/bosh + module: dojox/editor/plugins/nls/ko/LocalImage + module: dojox/image/_base + module: dojox/widget/nls/tr/Wizard + module: dojox/editor/plugins/nls/hr/InsertAnchor + module: dojox/editor/plugins/nls/bg/BidiSupport + module: dojox/editor/plugins/nls/bg/PageBreak + module: dojox/editor/plugins/nls/hu/ShowBlockNodes + module: dojox/gauges/BarIndicator + module: dojox/grid/_EditManager + module: dojox/grid/enhanced/nls/zh-tw/Filter + module: dojox/editor/plugins/nls/LocalImage + module: dojox/gauges/AnalogGauge + module: dojox/charting/plot2d/commonStacked + module: dojox/editor/plugins/nls/pt-pt/TextColor + module: dojox/widget/_CalendarYear + module: dojox/widget/nls/da/Wizard + module: dojox/editor/plugins/nls/id/latinEntities + module: dojox/editor/plugins/nls/ca/FindReplace + module: dojox/timing/ThreadPool + module: dojox/mobile/View + module: dojox/editor/plugins/nls/fi/Preview + module: dojox/mvc/getPlainValue + module: dojox/dgauges/components/classic/VerticalLinearGauge + module: dojox/editor/plugins/nls/fr/Breadcrumb + module: dojox/editor/plugins/nls/id/Blockquote + module: dojox/form/nls/kk/CheckedMultiSelect + module: dojox/geo/openlayers/Geometry + module: dojox/grid/BidiSupport + module: dojox/editor/plugins/nls/zh/TextColor + module: dojox/dgauges/components/black/CircularLinearGauge + module: dojox/editor/plugins/nls/ja/InsertEntity + module: dojox/editor/plugins/nls/ko/TableDialog + module: dojox/mobile/nls/he/messages + module: dojox/encoding/base64 + module: dojox/av/FLAudio + module: dojox/form/nls/ru/Uploader + module: dojox/atom/widget/nls/nl/PeopleEditor + module: dojox/treemap/TreeMap + module: dojox/gfx/Mover + module: dojox/mobile/_css3 + module: dojox/editor/plugins/nls/zh/SpellCheck + module: dojox/editor/plugins/nls/hu/InsertAnchor + module: dojox/encoding/crypto/SimpleAES + module: dojox/grid/enhanced/nls/pl/EnhancedGrid + module: dojox/charting/scaler/primitive + module: dojox/editor/plugins/nls/nb/LocalImage + module: dojox/mobile/viewRegistry + module: dojox/form/nls/ar/Uploader + module: dojox/editor/plugins/nls/ja/TableDialog + module: dojox/editor/plugins/nls/bg/Smiley + module: dojox/atom/widget/nls/el/FeedViewerEntry + module: dojox/highlight/languages/_static + module: dojox/editor/plugins/nls/pt-pt/InsertAnchor + module: dojox/gfx/svg_attach + module: dojox/charting/axis2d/common + module: dojox/mobile/DatePicker + module: dojox/editor/plugins/nls/tr/TableDialog + module: dojox/editor/plugins/nls/pt/Save + module: dojox/editor/plugins/nls/hu/Smiley + module: dojox/calendar/nls/sv/buttons + module: dojox/grid/enhanced/nls/bg/Filter + module: dojox/form/nls/ja/PasswordValidator + module: dojox/editor/plugins/nls/el/TableDialog + module: dojox/editor/plugins/nls/es/InsertAnchor + module: dojox/charting/action2d/TouchZoomAndPan + module: dojox/widget/gauge/_Gauge + module: dojox/collections/Queue + module: dojox/wire/Wire + module: dojox/atom/widget/nls/az/FeedEntryEditor + module: dojox/dtl/contrib/objects + module: dojox/editor/plugins/nls/zh-tw/InsertEntity + module: dojox/atom/widget/nls/sv/PeopleEditor + module: dojox/drawing/ui/Tooltip + module: dojox/grid/enhanced/nls/ca/Pagination + module: dojox/atom/widget/nls/sl/FeedViewerEntry + module: dojox/io/xhrMultiPart + module: dojox/atom/widget/nls/ja/FeedEntryEditor + module: dojox/widget/nls/hu/FilePicker + module: dojox/editor/plugins/nls/zh-tw/LocalImage + module: dojox/editor/plugins/nls/kk/CollapsibleToolbar + module: dojox/wire/_base + module: dojox/editor/plugins/nls/cs/LocalImage + module: dojox/form/nls/nl/CheckedMultiSelect + module: dojox/mobile/bidi/Carousel + module: dojox/widget/nls/nb/Wizard + module: dojox/editor/plugins/ResizeTableColumn + module: dojox/atom/widget/nls/ca/PeopleEditor + module: dojox/charting/DataChart + module: dojox/form/PasswordValidator + module: dojox/form/nls/kk/PasswordValidator + module: dojox/atom/widget/nls/it/PeopleEditor + module: dojox/data/JsonRestStore + module: dojox/grid/enhanced/plugins/Exporter + module: dojox/io/proxy/xip + module: dojox/editor/plugins/nls/nb/InsertEntity + module: dojox/editor/plugins/UploadImage + module: dojox/editor/plugins/nls/pt/LocalImage + module: dojox/form/nls/hr/Uploader + module: dojox/lang/functional/numrec + module: dojox/drawing/annotations/Arrow + module: dojox/form/nls/de/CheckedMultiSelect + module: dojox/editor/plugins/nls/bg/InsertEntity + module: dojox/mobile/bidi/ToolBarButton + module: dojox/app/module/lifecycle + module: dojox/atom/widget/nls/fr/PeopleEditor + module: dojox/atom/widget/nls/sk/FeedEntryViewer + module: dojox/form/FilePickerTextBox + module: dojox/mobile/app/List + module: dojox/editor/plugins/nls/tr/ShowBlockNodes + module: dojox/editor/plugins/nls/it/PageBreak + module: dojox/editor/plugins/nls/ro/LocalImage + module: dojox/mobile/FixedSplitter + module: dojox/dgauges/components/default/HorizontalLinearGauge + module: dojox/widget/_CalendarMonthYearView + module: dojox/form/manager/_ValueMixin + module: dojox/grid/enhanced/nls/hr/EnhancedGrid + module: dojox/mobile/Opener + module: dojox/drawing/tools/Rect + module: dojox/editor/plugins/nls/pl/SafePaste + module: dojox/gantt/GanttChart + module: dojox/form/nls/ru/CheckedMultiSelect + module: dojox/editor/plugins/nls/el/PageBreak + module: dojox/socket + module: dojox/editor/plugins/nls/uk/Blockquote + module: dojox/editor/plugins/nls/it/InsertAnchor + module: dojox/grid/_ViewManager + module: dojox/grid/enhanced/nls/es/Pagination + module: dojox/widget/nls/sl/ColorPicker + module: dojox/grid/cells/tree + module: dojox/editor/plugins/nls/sl/InsertEntity + module: dojox/editor/plugins/nls/FindReplace + module: dojox/mobile/IconContainer + module: dojox/atom/widget/nls/nb/FeedEntryEditor + module: dojox/secure/sandbox + module: dojox/atom/widget/nls/zh-tw/PeopleEditor + module: dojox/editor/plugins/nls/id/Breadcrumb + module: dojox/dtl/utils/date + module: dojox/geo/openlayers/GreatCircle + module: dojox/editor/plugins/nls/pt/Preview + module: dojox/data/XmlStore + module: dojox/editor/plugins/nls/nl/CollapsibleToolbar + module: dojox/form/DayTextBox + module: dojox/widget/nls/ar/FilePicker + module: dojox/editor/plugins/nls/ca/Save + module: dojox/wire/ml/RestHandler + module: dojox/mobile/SearchBox + module: dojox/widget/rotator/Wipe + module: dojox/editor/plugins/nls/pt-pt/PageBreak + module: dojox/calendar/DecorationRenderer + module: dojox/date/islamic + module: dojox/drawing/_base + module: dojox/editor/plugins/nls/tr/Blockquote + module: dojox/gauges/GlossyCircularGaugeBase + module: dojox/editor/plugins/nls/id/PasteFromWord + module: dojox/widget/nls/cs/Wizard + module: dojox/editor/plugins/nls/de/CollapsibleToolbar + module: dojox/gfx/fx + module: dojox/widget/nls/el/Wizard + module: dojox/editor/plugins/nls/zh/PageBreak + module: dojox/atom/widget/nls/az/PeopleEditor + module: dojox/editor/plugins/nls/sl/FindReplace + module: dojox/grid/_RowSelector + module: dojox/grid/enhanced/nls/hu/EnhancedGrid + module: dojox/atom/widget/nls/hu/FeedViewerEntry + module: dojox/data/FlickrRestStore + module: dojox/rpc/Client + module: dojox/atom/widget/nls/fi/FeedViewerEntry + module: dojox/editor/plugins/Preview + module: dojox/charting/plot2d/Spider + module: dojox/editor/plugins/nls/nl/latinEntities + module: dojox/mobile/CheckBox + module: dojox/timing/doLater + module: dojox/collections + module: dojox/atom/widget/nls/cs/PeopleEditor + module: dojox/gfx/attach + module: dojox/form/nls/pt-pt/PasswordValidator + module: dojox/drawing/tools/Pencil + module: dojox/editor/plugins/nls/ru/CollapsibleToolbar + module: dojox/editor/plugins/nls/es/TableDialog + module: dojox/charting/widget/Chart2D + module: dojox/mobile/bidi/IconMenu + module: dojox/editor/plugins/nls/id/TableDialog + module: dojox/widget/nls/FilePicker + module: dojox/charting/BidiSupport3D + module: dojox/editor/plugins/nls/zh-tw/SafePaste + module: dojox/gauges/_Gauge + module: dojox/editor/plugins/nls/kk/BidiSupport + module: dojox/mobile/_ContentPaneMixin + module: dojox/grid/enhanced/nls/sv/Pagination + module: dojox/grid/enhanced/nls/es/EnhancedGrid + module: dojox/widget/nls/ru/Wizard + module: dojox/atom/widget/nls/el/PeopleEditor + module: dojox/html + module: dojox/form/nls/th/PasswordValidator + module: dojox/widget/nls/de/FilePicker + module: dojox/mobile/Icon + module: dojox/editor/plugins/nls/de/TableDialog + module: dojox/gfx/canvasext + module: dojox/grid/enhanced/nls/ja/Pagination + module: dojox/data/AndOrWriteStore + module: dojox/fx/ext-dojo/reverse + module: dojox/charting/themes/Charged + module: dojox/editor/plugins/nls/ja/latinEntities + module: dojox/form/nls/ko/CheckedMultiSelect + module: dojox/form/nls/sk/CheckedMultiSelect + module: dojox/editor/plugins/nls/sl/Smiley + module: dojox/widget/nls/ko/Wizard + module: dojox/editor/plugins/nls/ca/TableDialog + module: dojox/editor/plugins/nls/zh/LocalImage + module: dojox/mvc/_atBindingExtension + module: dojox/geo/charting/widget/Map + module: dojox/charting/plot2d/Columns + module: dojox/editor/plugins/nls/th/Save + module: dojox/sql/_base + module: dojox/mobile/nls/pt-pt/messages + module: dojox/editor/plugins/nls/he/Save + module: dojox/grid/enhanced/nls/sl/Filter + module: dojox/editor/plugins/nls/uk/latinEntities + module: dojox/widget/nls/ru/ColorPicker + module: dojox/grid/enhanced/plugins/filter/FilterDefDialog + module: dojox/testing/DocTest + module: dojox/editor/plugins/nls/hu/TextColor + module: dojox/wire/TableAdapter + module: dojox/editor/plugins/SpellCheck + module: dojox/fx + module: dojox/calendar/nls/fi/buttons + module: dojox/editor/plugins/nls/ko/ShowBlockNodes + module: dojox/charting/plot2d/StackedBars + module: dojox/encoding/digests/SHA1 + module: dojox/editor/plugins/nls/kk/LocalImage + module: dojox/charting/plot2d/Stacked + module: dojox/mvc/Output + module: dojox/grid/enhanced/nls/he/Pagination + module: dojox/mobile/Heading + module: dojox/editor/plugins/nls/nl/SafePaste + module: dojox/mobile/bidi/Tooltip + module: dojox/editor/plugins/nls/ca/Blockquote + module: dojox/editor/plugins/nls/CollapsibleToolbar + module: dojox/atom/widget/nls/hr/FeedEntryViewer + module: dojox/data/GoogleSearchStore + module: dojox/editor/plugins/nls/sk/Preview + module: dojox/drawing/util/oo + module: dojox/form/nls/Uploader + module: dojox/data/HtmlStore + module: dojox/editor/plugins/nls/ru/Blockquote + module: dojox/editor/plugins/nls/ru/FindReplace + module: dojox/storage/_common + module: dojox/dgauges/components/grey/VerticalLinearGauge + module: dojox/editor/plugins/nls/ko/CollapsibleToolbar + module: dojox/form/nls/cs/Uploader + module: dojox/editor/plugins/nls/sk/CollapsibleToolbar + module: dojox/widget/nls/hr/FilePicker + module: dojox/widget/nls/zh-tw/ColorPicker + module: dojox/editor/plugins/nls/ar/SpellCheck + module: dojox/widget/nls/sk/Wizard + module: dojox/editor/plugins/nls/tr/Breadcrumb + module: dojox/dtl/contrib/dom + module: dojox/atom/widget/nls/nl/FeedEntryViewer + module: dojox/mobile/bidi/_PickerBase + module: dojox/mvc/atBindingExtension + module: dojox/dgauges/components/classic/SemiCircularLinearGauge + module: dojox/image/Lightbox + module: dojox/editor/plugins/nls/cs/BidiSupport + module: dojox/highlight/languages/pygments/_www + module: dojox/mobile/RoundRect + module: dojox/av/_Media + module: dojox/atom/widget/nls/ro/FeedEntryViewer + module: dojox/widget/_CalendarView + module: dojox/charting/scaler/linear + module: dojox/highlight/languages/java + module: dojox/mvc/ListController + module: dojox/gantt/TabMenu + module: dojox/mdnd/dropMode/VerticalDropMode + module: dojox/geo/openlayers/Point + module: dojox/jq + module: dojox/widget/nls/az/ColorPicker + module: dojox/mobile/bidi/_ItemBase + module: dojox/mobile/pageTurningUtils + module: dojox/gfx3d/object + module: dojox/atom/widget/nls/ko/FeedEntryEditor + module: dojox/mobile/RoundRectCategory + module: dojox/atom/widget/nls/uk/PeopleEditor + module: dojox/editor/plugins/nls/hr/TextColor + module: dojox/dtl/contrib/dijit + module: dojox/mobile/app/StageController + module: dojox/form/nls/ru/PasswordValidator + module: dojox/widget/nls/pl/FilePicker + module: dojox/editor/plugins/nls/ru/latinEntities + module: dojox/widget/DynamicTooltip + module: dojox/widget/nls/it/Wizard + module: dojox/editor/plugins/nls/es/Blockquote + module: dojox/editor/plugins/nls/zh/ShowBlockNodes + module: dojox/calendar/nls/cs/buttons + module: dojox/charting/action2d/Shake + module: dojox/editor/plugins/nls/pt-pt/Save + module: dojox/dgauges/CircularRangeIndicator + module: dojox/mobile/StoreCarousel + module: dojox/editor/plugins/nls/id/SafePaste + module: dojox/widget/nls/fi/ColorPicker + module: dojox/editor/plugins/nls/de/SpellCheck + module: dojox/form/nls/sk/Uploader + module: dojox/editor/plugins/AutoUrlLink + module: dojox/wire + module: dojox/string/tokenize + module: dojox/editor/plugins/nls/TableDialog + module: dojox/drawing/manager/Mouse + module: dojox/grid/enhanced/_Events + module: dojox/form/nls/hr/CheckedMultiSelect + module: dojox/mobile/bidi/Scrollable + module: dojox/data/HtmlTableStore + module: dojox/mvc/equals + module: dojox/data/StoreExplorer + module: dojox/gauges/GlossyCircularGauge + module: dojox/data/JsonQueryRestStore + module: dojox/calendar/MobileVerticalRenderer + module: dojox/math/round + module: dojox/mobile/_compat + module: dojox/charting/themes/Dollar + module: dojox/editor/plugins/nls/ro/Preview + module: dojox/form/Uploader + module: dojox/editor/plugins/nls/ja/PasteFromWord + module: dojox/mvc/EditStoreRefListController + module: dojox/xmpp/UserService + module: dojox/highlight/languages/sql + module: dojox/mobile/nls/th/messages + module: dojox/charting/themes/Tufte + module: dojox/lang/functional/zip + module: dojox/mvc/EditStoreRefController + module: dojox/form/nls/fr/Uploader + module: dojox/form/nls/nb/CheckedMultiSelect + module: dojox/editor/plugins/nls/sl/Save + module: dojox/editor/plugins/nls/fi/FindReplace + module: dojox/io/xhrWindowNamePlugin + module: dojox/editor/plugins/ShowBlockNodes + module: dojox/widget/nls/he/Wizard + module: dojox/form/manager/_Mixin + module: dojox/editor/plugins/nls/uk/PasteFromWord + module: dojox/editor/plugins/nls/sl/TableDialog + module: dojox/collections/Stack + module: dojox/dtl/Context + module: dojox/editor/plugins/nls/hu/PageBreak + module: dojox/mobile/dh/SuffixFileTypeMap + module: dojox/editor/plugins/nls/ru/AutoSave + module: dojox/charting/themes/PlotKit/green + module: dojox/editor/plugins/nls/ca/Breadcrumb + module: dojox/atom/widget/nls/pt/FeedEntryViewer + module: dojox/editor/plugins/nls/tr/SafePaste + module: dojox/charting/themes/Algae + module: dojox/form/RangeSlider + module: dojox/drawing/tools/custom/Vector + module: dojox/editor/plugins/nls/hu/LocalImage + module: dojox/editor/plugins/nls/ja/Blockquote + module: dojox/editor/plugins/nls/ar/AutoSave + module: dojox/mobile/Badge + module: dojox/widget/nls/he/ColorPicker + module: dojox/editor/plugins/nls/el/latinEntities + module: dojox/encoding/crypto/RSAKey-ext + module: dojox/calendar/MonthColumnView + module: dojox/editor/plugins/nls/hr/CollapsibleToolbar + module: dojox/editor/plugins/SafePaste + module: dojox/app/controllers/BorderLayout + module: dojox/dgauges/_circularUtils + module: dojox/mobile/app/SceneController + module: dojox/editor/plugins/nls/hr/SpellCheck + module: dojox/highlight/languages/python + module: dojox/editor/plugins/nls/tr/Preview + module: dojox/editor/plugins/nls/sk/InsertEntity + module: dojox/dgauges/components/grey/SemiCircularLinearGauge + module: dojox/grid/enhanced/nls/nl/Pagination + module: dojox/embed/Flash + module: dojox/calendar/VerticalRenderer + module: dojox/atom/widget/FeedEntryEditor + module: dojox/dgauges/components/green/SemiCircularLinearGauge + module: dojox/atom/widget/nls/fr/FeedEntryEditor + module: dojox/lang/functional/multirec + module: dojox/editor/plugins/nls/fi/Save + module: dojox/mobile/ValuePickerSlot + module: dojox/validate/creditCard + module: dojox/atom/io/model + module: dojox/form/nls/es/PasswordValidator + module: dojox/json/schema + module: dojox/editor/plugins/nls/nb/CollapsibleToolbar + module: dojox/atom/widget/nls/cs/FeedEntryViewer + module: dojox/editor/plugins/nls/fr/latinEntities + module: dojox/editor/plugins/nls/fr/TextColor + module: dojox/editor/plugins/nls/he/Blockquote + module: dojox/editor/plugins/nls/es/Breadcrumb + module: dojox/widget/Portlet + module: dojox/charting/themes/Harmony + module: dojox/editor/plugins/nls/pl/SpellCheck + module: dojox/mobile/iconUtils + module: dojox/editor/plugins/Smiley + module: dojox/dgauges/RectangularValueIndicator + module: dojox/wire/ml/Service + module: dojox/editor/plugins/nls/es/Smiley + module: dojox/atom/widget/nls/tr/FeedEntryEditor + module: dojox/editor/plugins/nls/hr/AutoSave + module: dojox/grid/TreeSelection + module: dojox/editor/plugins/nls/it/ShowBlockNodes + module: dojox/editor/plugins/nls/hr/PageBreak + module: dojox/mobile/i18n + module: dojox/grid/enhanced/nls/es/Filter + module: dojox/widget/DailyCalendar + module: dojox/editor/plugins/nls/ar/LocalImage + module: dojox/mobile/ViewController + module: dojox/highlight + module: dojox/widget/nls/da/FilePicker + module: dojox/editor/plugins/nls/ru/PasteFromWord + module: dojox/gantt/contextMenuTab + module: dojox/editor/plugins/nls/ro/InsertAnchor + module: dojox/editor/plugins/nls/bg/latinEntities + module: dojox/mobile/nls/pt/messages + module: dojox/charting/plot3d/Cylinders + module: dojox/color/SimpleColorModel + module: dojox/charting/themes/PlotKit/orange + module: dojox/form/nls/uk/PasswordValidator + module: dojox/dgauges/components/DefaultPropertiesMixin + module: dojox/editor/plugins/nls/nb/Save + module: dojox/editor/plugins/nls/ru/TableDialog + module: dojox/editor/plugins/nls/th/InsertAnchor + module: dojox/widget/nls/hr/ColorPicker + module: dojox/editor/plugins/nls/sl/PasteFromWord + module: dojox/editor/plugins/nls/pt-pt/Smiley + module: dojox/editor/plugins/nls/latinEntities + module: dojox/app/controllers/HistoryHash + module: dojox/form/_SelectStackMixin + module: dojox/mobile/lazyLoadUtils + module: dojox/drawing/ui/Toolbar + module: dojox/gfx/registry + module: dojox/timing/Streamer + module: dojox/grid/enhanced/nls/zh-tw/EnhancedGrid + module: dojox/grid/enhanced/plugins/Menu + module: dojox/mobile/bidi/TabBar + module: dojox/calendar/nls/sk/buttons + module: dojox/editor/plugins/nls/sv/Preview + module: dojox/dgauges/components/green/VerticalLinearGauge + module: dojox/mobile/ScrollableView + module: dojox/dgauges/CircularScale + module: dojox/image/LightboxNano + module: dojox/charting/themes/Chris + module: dojox/editor/plugins/nls/sv/Breadcrumb + module: dojox/atom/widget/nls/zh-tw/FeedEntryEditor + module: dojox/data/CssClassStore + module: dojox/mobile/nls/bg/messages + module: dojox/form/nls/nl/Uploader + module: dojox/grid/enhanced/nls/pt-pt/Filter + module: dojox/editor/plugins/nls/bg/SpellCheck + module: dojox/editor/plugins/nls/de/LocalImage + module: dojox/editor/plugins/nls/ja/Breadcrumb + module: dojox/grid/enhanced/plugins/filter/ClearFilterConfirm + module: dojox/sketch/Slider + module: dojox/editor/plugins/nls/tr/PasteFromWord + module: dojox/mvc/parserExtension + module: dojox/highlight/languages/pygments/javascript + module: dojox/editor/plugins/nls/hr/FindReplace + module: dojox/charting/themes/common + module: dojox/editor/plugins/nls/fi/Smiley + module: dojox/robot/recorder + module: dojox/lang/functional/fold + module: dojox/mobile/nls/ko/messages + module: dojox/date/hebrew/locale + module: dojox/form/uploader/plugins/IFrame + module: dojox/grid/enhanced/plugins/filter/_FilterExpr + module: dojox/gfx3d/gradient + module: dojox/atom/widget/nls/he/FeedEntryEditor + module: dojox/grid/enhanced/nls/fi/Filter + module: dojox/editor/plugins/nls/zh-tw/CollapsibleToolbar + module: dojox/form/VerticalRangeSlider + module: dojox/form/nls/da/PasswordValidator + module: dojox/fx/_base + module: dojox/form/manager/_EnableMixin + module: dojox/mvc/_DataBindingExtension + module: dojox/atom/widget/nls/pl/PeopleEditor + module: dojox/date/buddhist + module: dojox/mobile/app/AlertDialog + module: dojox/widget/Pager + module: dojox/editor/plugins/nls/az/TableDialog + module: dojox/grid/enhanced/plugins/Dialog + module: dojox/form/manager/_ClassMixin + module: dojox/editor/plugins/nls/es/PasteFromWord + module: dojox/mobile/EdgeToEdgeDataList + module: dojox/form/DropDownSelect + module: dojox/widget/Roller + module: dojox/mobile/bidi/_ComboBoxMenu + module: dojox/storage/FlashStorageProvider + module: dojox/app/controllers/Transition + module: dojox/editor/plugins/nls/he/Breadcrumb + module: dojox/form/TimeSpinner + module: dojox/editor/plugins/nls/uk/Smiley + module: dojox/editor/plugins/nls/it/BidiSupport + module: dojox/editor/plugins/nls/pt-pt/SpellCheck + module: dojox/atom/widget/nls/zh/FeedEntryEditor + module: dojox/grid/enhanced/plugins/filter/_ConditionExpr + module: dojox/editor/plugins/nls/ca/Smiley + module: dojox/grid/enhanced/nls/uk/Filter + module: dojox/editor/plugins/nls/fi/TableDialog + module: dojox/editor/plugins/nls/fr/PageBreak + module: dojox/widget/nls/fr/FilePicker + module: dojox/css3/fx + module: dojox/editor/plugins/nls/hr/LocalImage + module: dojox/calendar/nls/lt/buttons + module: dojox/lang/docs + module: dojox/editor/plugins/nls/ro/SafePaste + module: dojox/atom/widget/nls/hr/FeedViewerEntry + module: dojox/mobile/nls/ca/messages + module: dojox/grid/enhanced/nls/el/Pagination + module: dojox/lang/oo/Filter + module: dojox/editor/plugins/nls/ru/Save + module: dojox/editor/plugins/nls/kk/latinEntities + module: dojox/highlight/languages/_www + module: dojox/editor/plugins/nls/de/InsertAnchor + module: dojox/editor/plugins/nls/da/SpellCheck + module: dojox/editor/plugins/nls/he/SafePaste + module: dojox/image/ThumbnailPicker + module: dojox/editor/plugins/nls/fr/Save + module: dojox/widget/nls/zh-tw/FilePicker + module: dojox/app/ViewBase + module: dojox/mobile + module: dojox/grid/enhanced/nls/ro/EnhancedGrid + module: dojox/widget/rotator/Pan + module: dojox/editor/plugins/nls/fi/latinEntities + module: dojox/atom/widget/nls/nl/FeedViewerEntry + module: dojox/grid/enhanced/nls/uk/Pagination + module: dojox/form/nls/nb/Uploader + module: dojox/form/nls/ro/CheckedMultiSelect + module: dojox/mvc/StoreRefController + module: dojox/mobile/bidi/Icon + module: dojox/atom/widget/nls/ro/FeedViewerEntry + module: dojox/grid/enhanced/nls/th/EnhancedGrid + module: dojo/cldr/nls/pt/ethiopic + module: dojo/nls/ja/colors + module: dojo/nls/uk/colors + module: dojo/cldr/nls/pl/number + module: dojo/_base/lang + module: dojo/cldr/nls/roc + module: dojo/cldr/nls/persian + module: dojo/cldr/nls/sl/number + module: dojo/date/stamp + module: dojo/cldr/nls/nl/hebrew + module: dojo/_base/xhr + module: dojo/cldr/nls/de/chinese + module: dojo/Evented + module: dojo/cldr/nls/ja/indian + module: dojo/cldr/nls/cs/currency + module: dojo/_base/NodeList + module: dojo/cldr/nls/it/number + module: dojo/cldr/nls/ru/currency + module: dojo/loadInit + module: dojo/cldr/nls/pl/roc + module: dojo/cldr/nls/zh-hant/indian + module: dojo/errors/RequestTimeoutError + module: dojo/cldr/nls/ja/currency + module: dojo/date/locale + module: dojo/cldr/nls/nl/generic + module: dojo/cldr/nls/ru/generic + module: dojo/cldr/nls/zh/islamic + module: dojo/request/xhr + module: dojo/cldr/nls/en/japanese + module: dojo/cldr/monetary + module: dojo/cldr/nls/ca/number + module: dojo/request/node + module: dojo/cldr/nls/es/islamic + module: dojo/cldr/nls/fr/chinese + module: dojo/nls/ru/colors + module: dojo/cldr/nls/ro/islamic + module: dojo/data/util/sorter + module: dojo/cldr/nls/en/buddhist + module: dojo/cldr/nls/number + module: dojo/nls/fr/colors + module: dojo/cldr/nls/ca/generic + module: dojo/cldr/nls/hu/gregorian + module: dojo/dnd/AutoSource + module: dojo/cldr/nls/da/hebrew + module: dojo/rpc/JsonService + module: dojo/cldr/nls/sv/number + module: dojo/cldr/nls/th/chinese + module: dojo/cldr/nls/ca/buddhist + module: dojo/cldr/nls/th/currency + module: dojo/cldr/nls/ru/indian + module: dojo/cldr/nls/ro/hebrew + module: dojo/nls/th/colors + module: dojo/nls/pt-pt/colors + module: dojo/cldr/nls/pt/gregorian + module: dojo/cldr/nls/fr/indian + module: dojo/mouse + module: dojo/nls/he/colors + module: dojo/cldr/nls/fr/currency + module: dojo/dnd/Avatar + module: dojo/cldr/nls/th/indian + module: dojo/topic + module: dojo/cldr/nls/de/currency + module: dojo/NodeList-traverse + module: dojo/cldr/nls/en-gb/indian + module: dojo/uacss + module: dojo/store/DataStore + module: dojo/data/api/Request + module: dojo/html + module: dojo/touch + module: dojo/cldr/nls/zh/chinese + module: dojo/cldr/nls/en/generic + module: dojo/nls/pt/colors + module: dojo/cldr/nls/th/roc + module: dojo/cldr/nls/en-ca/currency + module: dojo/io/iframe + module: dojo/cldr/nls/sl/currency + module: dojo/cldr/nls/ro/chinese + module: dojo/cldr/nls/zh-tw/number + module: dojo/store/Cache + module: dojo/cldr/nls/en-au/generic + module: dojo/cldr/nls/it/islamic + module: dojo/cldr/nls/pt/indian + module: dojo/cldr/nls/nl/currency + module: dojo/cldr/nls/th/dangi + module: dojo/cldr/nls/el/roc + module: dojo/cldr/nls/sv/persian + module: dojo/request/util + module: dojo/cldr/nls/ko/ethiopic + module: dojo/cldr/nls/de/number + module: dojo/data/ItemFileReadStore + module: dojo/nls/tr/colors + module: dojo/dnd/Selector + module: dojo/cldr/nls/nb/number + module: dojo/cldr/nls/da/roc + module: dojo/cldr/nls/zh/japanese + module: dojo/cldr/nls/currency + module: dojo/cldr/nls/zh-hant/ethiopic + module: dojo/cldr/nls/pt/roc + module: dojo/cldr/nls/hu/generic + module: dojo/nls/fi/colors + module: dojo/cldr/nls/pl/japanese + module: dojo/cldr/nls/zh/buddhist + module: dojo/cldr/nls/ru/coptic + module: dojo/request/script + module: dojo/request/default + module: dojo/cldr/nls/fr/coptic + module: dojo/cldr/nls/sv/dangi + module: dojo/keys + module: dojo/cldr/nls/en-au/number + module: dojo/cldr/nls/zh-hant/generic + module: dojo/on/asyncEventListener + module: dojo/cldr/nls/pl/buddhist + module: dojo/cldr/nls/sv/roc + module: dojo/cldr/nls/ro/gregorian + module: dojo/cldr/nls/th/coptic + module: dojo/cldr/nls/hu/currency + module: dojo/cldr/nls/en/hebrew + module: dojo/cldr/nls/nl/roc + module: dojo/cldr/nls/zh-hant/islamic + module: dojo/cldr/nls/nl/islamic + module: dojo/cldr/nls/ru/islamic + module: dojo/data/api/Item + module: dojo/cldr/nls/nb/gregorian + module: dojo/AdapterRegistry + module: dojo/NodeList-data + module: dojo/store/JsonRest + module: dojo/cldr/nls/fr-ch/currency + module: dojo/cldr/nls/ja/hebrew + module: dojo/cldr/nls/pt-pt/generic + module: dojo/cldr/nls/nl/number + module: dojo/aspect + module: dojo/cldr/nls/pt-pt/roc + module: dojo/cldr/nls/th/persian + module: dojo/cldr/nls/en-ca/generic + module: dojo/cldr/nls/pt/coptic + module: dojo/cldr/nls/es/hebrew + module: dojo/nls/zh/colors + module: dojo/nls/cs/colors + module: dojo/node + module: dojo/cldr/nls/da/generic + module: dojo/_base/window + module: dojo/_base/html + module: dojo/cldr/nls/it/gregorian + module: dojo/cldr/nls/ar/currency + module: dojo/_base/event + module: dojo/cldr/nls/zh-hant/hebrew + module: dojo/cldr/nls/ca/roc + module: dojo/cldr/nls/el/currency + module: dojo/dnd/Moveable + module: dojo/cldr/nls/zh/indian + module: dojo/dom-style + module: dojo/cldr/nls/pt/currency + module: dojo/ready + module: dojo/cldr/nls/nb/currency + module: dojo/cldr/nls/el/gregorian + module: dojo/dnd/Container + module: dojo/cldr/nls/ja/coptic + module: dojo/cldr/nls/tr/coptic + module: dojo/cldr/nls/es/chinese + module: dojo/dnd/common + module: dojo/data/ObjectStore + module: dojo/cldr/nls/en-au/currency + module: dojo/cldr/nls/it/japanese + module: dojo/cldr/nls/ja/generic + module: dojo/nls/bg/colors + module: dojo/cldr/nls/en/islamic + module: dojo/cldr/nls/da/number + module: dojo/dojo + module: dojo/cldr/nls/he/currency + module: dojo/cldr/nls/zh-hant/coptic + module: dojo/cldr/nls/it/buddhist + module: dojo/cldr/nls/ru/hebrew + module: dojo/nls/ar/colors + module: dojo/nls/id/colors + module: dojo/cldr/nls/fr/hebrew + module: dojo/cldr/nls/sv/japanese + module: dojo/cldr/nls/ro/number + module: dojo/dom + module: dojo/cldr/nls/en-au/islamic + module: dojo/cldr/nls/ca/chinese + module: dojo/cldr/nls/ro/buddhist + module: dojo/nls/ko/colors + module: dojo/cldr/nls/islamic-tbla + module: dojo/cldr/nls/en-gb/generic + module: dojo/cldr/nls/th/hebrew + module: dojo/cldr/nls/sv/buddhist + module: dojo/_base/sniff + module: dojo/cldr/nls/pt/generic + module: dojo/cldr/nls/cs/japanese + module: dojo/number + module: dojo/cldr/nls/zh-hant/gregorian + module: dojo/DeferredList + module: dojo/cldr/nls/ru/japanese + module: dojo/promise/Promise + module: dojo/_base/url + module: dojo/_base/browser + module: dojo/cldr/nls/en-gb/currency + module: dojo/hash + module: dojo/json + module: dojo/cldr/nls/hu/islamic + module: dojo/cldr/nls/el/generic + module: dojo/cldr/nls/it/chinese + module: dojo/cldr/nls/pt/hebrew + module: dojo/cldr/nls/ar/roc + module: dojo/cldr/nls/en/chinese + module: dojo/cldr/nls/ar/persian + module: dojo/cldr/nls/en-ca/gregorian + module: dojo/cldr/nls/zh-hk/currency + module: dojo/cldr/nls/zh/coptic + module: dojo/regexp + module: dojo/cldr/nls/ko/gregorian + module: dojo/cldr/nls/fr/persian + module: dojo/fx + module: dojo/cldr/nls/en-au/chinese + module: dojo/nls/hu/colors + module: dojo/cldr/nls/fr-ch/number + module: dojo/nls/sk/colors + module: dojo/cldr/nls/tr/hebrew + module: dojo/cldr/nls/pt-pt/currency + module: dojo/cldr/nls/fi/currency + module: dojo/cldr/nls/zh-hk/number + module: dojo/nls/colors + module: dojo/cldr/nls/tr/generic + module: dojo/cldr/nls/pl/generic + module: dojo/store/Observable + module: dojo/cldr/nls/tr/gregorian + module: dojo/dnd/Mover + module: dojo/cldr/nls/ko/roc + module: dojo/io/script + module: dojo/cldr/nls/pt-pt/islamic + module: dojo/store/util/SimpleQueryEngine + module: dojo/nls/pl/colors + module: dojo/cldr/nls/tr/japanese + module: dojo/_base/kernel + module: dojo/cldr/nls/ko/currency + module: dojo/_base/unload + module: dojo/cldr/nls/da/currency + module: dojo/cldr/nls/da/islamic + module: dojo/cldr/nls/ar/coptic + module: dojo/data/api/Read + module: dojo/_firebug/firebug + module: dojo/currency + module: dojo/cldr/nls/zh/persian + module: dojo/cldr/nls/tr/buddhist + module: dojo/colors + module: dojo/behavior + module: dojo/cldr/nls/en/number + module: dojo/_base/Deferred + module: dojo/dnd/move + module: dojo/cldr/nls/zh-hant/chinese + module: dojo/cldr/nls/ko/coptic + module: dojo/cldr/nls/en/roc + module: dojo/cldr/nls/zh/gregorian + module: dojo/cldr/nls/zh-hant/currency + module: dojo/cldr/nls/nl/chinese + module: dojo/cldr/nls/ru/chinese + module: dojo/cldr/nls/ja/number + module: dojo/cldr/nls/ja/islamic + module: dojo/nls/kk/colors + module: dojo/promise/instrumentation + module: dojo/cldr/nls/zh/ethiopic + module: dojo/router/RouterBase + module: dojo/nls/ca/colors + module: dojo/cldr/supplemental + module: dojo/cldr/nls/es/number + module: dojo/cldr/nls/sv/gregorian + module: dojo/cldr/nls/ja/dangi + module: dojo/cache + module: dojo/cldr/nls/generic + module: dojo/cldr/nls/es/currency + module: dojo/cldr/nls/he/hebrew + module: dojo/cldr/nls/pl/ethiopic + module: dojo/cldr/nls/zh-hant/dangi + module: dojo/dom-prop + module: dojo/cldr/nls/he/generic + module: dojo/cldr/nls/zh/hebrew + module: dojo/cldr/nls/cs/hebrew + module: dojo/nls/el/colors + module: dojo/data/api/Identity + module: dojo/cldr/nls/zh-hant/number + module: dojo/NodeList-manipulate + module: dojo/_base/json + module: dojo/main + module: dojo/cldr/nls/en-gb/islamic + module: dojo/cldr/nls/cs/buddhist + module: dojo/cldr/nls/pt/islamic + module: dojo/store/api/Store + module: dojo/cldr/nls/pt-pt/hebrew + module: dojo/cldr/nls/ru/buddhist + module: dojo/cldr/nls/ja/roc + module: dojo/nls/zh-tw/colors + module: dojo/cldr/nls/ja/japanese + module: dojo/cldr/nls/nb/generic + module: dojo/router + module: dojo/NodeList + module: dojo/i18n + module: dojo/cldr/nls/islamic-umalqura + module: dojo/selector/acme + module: dojo/store/Memory + module: dojo/promise/tracer + module: dojo/cldr/nls/ja/buddhist + module: dojo/cldr/nls/ru/number + module: dojo/cldr/nls/fi/generic + module: dojo/request + module: dojo/cldr/nls/hu/roc + module: dojo/cldr/nls/pt-pt/gregorian + module: dojo/cldr/nls/fr/number + module: dojo/cldr/nls/ja/gregorian + module: dojo/cldr/nls/ar/hebrew + module: dojo/has + module: dojo/data/ItemFileWriteStore + module: dojo/cldr/nls/th/japanese + module: dojo/cldr/nls/th/number + module: dojo/cldr/nls/hu/indian + module: dojo/cldr/nls/ko/generic + module: dojo/cldr/nls/he/number + module: dojo/cldr/nls/fr/japanese + module: dojo/cldr/nls/ko/hebrew + module: dojo/cldr/nls/tr/roc + module: dojo/on + module: dojo/cldr/nls/cs/generic + module: dojo/window + module: dojo/cldr/nls/th/buddhist + module: dojo/cldr/nls/ethiopic-amete-alem + module: dojo/cldr/nls/de/japanese + module: dojo/cldr/nls/fi/hebrew + module: dojo/cldr/nls/fr/buddhist + module: dojo/when + module: dojo/nls/sl/colors + module: dojo/_base/loader + module: dojo/cldr/nls/hu/chinese + module: dojo/cldr/nls/el/japanese + module: dojo/cldr/nls/fr/dangi + module: dojo/cldr/nls/tr/islamic + module: dojo/cldr/nls/pt/japanese + module: dojo/cldr/nls/pl/islamic + module: dojo/back + module: dojo/cldr/nls/pt/number + module: dojo/cldr/nls/de/buddhist + module: dojo/cldr/nls/pl/indian + module: dojo/dom-form + module: dojo/nls/it/colors + module: dojo/cldr/nls/ro/ethiopic + module: dojo/promise/all + module: dojo/fx/easing + module: dojo/cldr/nls/nl/japanese + module: dojo/cldr/nls/sv/ethiopic + module: dojo/cldr/nls/nl/persian + module: dojo/cldr/nls/ru/persian + module: dojo/cldr/nls/zh-tw/gregorian + module: dojo/cldr/nls/he/japanese + module: dojo/cldr/nls/zh/roc + module: dojo/cldr/nls/gregorian + module: dojo/cldr/nls/nl/buddhist + module: dojo/cldr/nls/en/currency + module: dojo/cldr/nls/tr/number + module: dojo/cldr/nls/sv/generic + module: dojo/sniff + module: dojo/cldr/nls/pt-pt/chinese + module: dojo/cldr/nls/ca/currency + module: dojo/cldr/nls/ru/ethiopic + module: dojo/on/throttle + module: dojo/cldr/nls/japanese + module: dojo/fx/Toggler + module: dojo/on/debounce + module: dojo/NodeList-html + module: dojo/cldr/nls/fr-ch/gregorian + module: dojo/gears + module: dojo/dnd/autoscroll + module: dojo/nls/sv/colors + module: dojo/cldr/nls/de/generic + module: dojo/cldr/nls/buddhist + module: dojo/cldr/nls/islamic + module: dojo/cldr/nls/hu/coptic + module: dojo/cldr/nls/indian + module: dojo/_base/query + module: dojo/dom-construct + module: dojo/cldr/nls/es/roc + module: dojo/cldr/nls/he/islamic + module: dojo/cldr/nls/ru/roc + module: dojo/cldr/nls/sv/indian + module: dojo/promise/first + module: dojo/rpc/JsonpService + module: dojo/NodeList-fx + module: dojo/NodeList-dom + module: dojo/cldr/nls/hu/japanese + module: dojo/cldr/nls/fr-ch/generic + module: dojo/cldr/nls/ja/chinese + module: dojo/cldr/nls/hu/buddhist + module: dojo/cldr/nls/pl/coptic + module: dojo/dnd/TimedMoveable + module: dojo/cldr/nls/nb/islamic + module: dojo/selector/_loader + module: dojo/cldr/nls/sk/generic + module: dojo/cldr/nls/fr/generic + module: dojo/cldr/nls/fi/islamic + module: dojo/cldr/nls/zh/number + module: dojo/cldr/nls/cs/number + module: dojo/string + module: dojo/dnd/Manager + module: dojo/cldr/nls/tr/ethiopic + module: dojo/cldr/nls/en-gb/chinese + module: dojo/cldr/nls/es/gregorian + module: dojo/cldr/nls/th/generic + module: dojo/_base/declare + module: dojo/nls/de/colors + module: dojo/cldr/nls/ar/japanese + module: dojo/cldr/nls/el/hebrew + module: dojo/nls/ro/colors + module: dojo/cldr/nls/pt/chinese + module: dojo/cldr/nls/ko/islamic + module: dojo/dom-attr + module: dojo/cldr/nls/nb/japanese + module: dojo/cldr/nls/pt-pt/number + module: dojo/nls/nb/colors + module: dojo/cldr/nls/cs/islamic + module: dojo/cldr/nls/hu/persian + module: dojo/cldr/nls/ar/buddhist + module: dojo/cldr/nls/zh/currency + module: dojo/cldr/nls/th/gregorian + module: dojo/hccss + module: dojo/cldr/nls/el/buddhist + module: dojo/date + module: dojo/cldr/nls/pt/buddhist + module: dojo/cldr/nls/nb/buddhist + module: dojo/cldr/nls/en-au/japanese + module: dojo/cldr/nls/pl/currency + module: dojo/request/watch + module: dojo/cldr/nls/zh-hant/persian + module: dojo/cldr/nls/de/roc + module: dojo/cldr/nls/islamic-civil + module: dojo/cldr/nls/cs/gregorian + module: dojo/cldr/nls/ar/number + module: dojo/cldr/nls/sv/coptic + module: dojo/cldr/nls/hu/hebrew + module: dojo/cldr/nls/fi/chinese + module: dojo/cldr/nls/zh-hk/gregorian + module: dojo/cldr/nls/he/gregorian + module: dojo/cldr/nls/ko/number + module: dojo/cldr/nls/fr/roc + module: dojo/cldr/nls/islamic-rgsa + module: dojo/_base/connect + module: dojo/cldr/nls/fi/number + module: dojo/cldr/nls/pl/chinese + module: dojo/cldr/nls/sv/islamic + module: dojo/cldr/nls/cs/chinese + module: dojo/dom-geometry + module: dojo/cldr/nls/pl/hebrew + module: dojo/nls/nl/colors + module: dojo/data/api/Write + module: dojo/cldr/nls/en-gb/japanese + module: dojo/cldr/nls/sl/gregorian + module: dojo/cldr/nls/ja/ethiopic + module: dojo/cldr/nls/it/roc + module: dojo/cldr/nls/zh-hant/roc + module: dojo/cldr/nls/nb/roc + module: dojo/store/util/QueryResults + module: dojo/data/util/simpleFetch + module: dojo/cldr/nls/nl/indian + module: dojo/cldr/nls/sk/currency + module: dojo/cldr/nls/de/islamic + module: dojo/cldr/nls/it/hebrew + module: dojo/cldr/nls/nl/dangi + module: dojo/cldr/nls/da/gregorian + module: dojo/cldr/nls/ar/generic + module: dojo/cldr/nls/cs/roc + module: dojo/cldr/nls/hu/number + module: dojo/cldr/nls/th/ethiopic + module: dojo/dnd/Target + module: dojo/cldr/nls/it/currency + module: dojo/cldr/nls/fr/ethiopic + module: dojo/cldr/nls/sk/number + module: dojo/cldr/nls/pt-pt/japanese + module: dojo/cldr/nls/ca/gregorian + module: dojo/errors/RequestError + module: dojo/nls/hr/colors + module: dojo/cldr/nls/ru/gregorian + module: dojo/cldr/nls/fi/japanese + module: dojo/nls/da/colors + module: dojo/text + module: dojo/cldr/nls/ro/currency + module: dojo/dom-class + module: dojo/cldr/nls/fi/gregorian + module: dojo/cldr/nls/chinese + module: dojo/cldr/nls/fr/islamic + module: dojo/cldr/nls/hebrew + module: dojo/cldr/nls/pt-pt/buddhist + module: dojo/cldr/nls/sv/currency + module: dojo/cldr/nls/zh-tw/currency + module: dojo/cldr/nls/de/gregorian + module: dojo/cldr/nls/fi/buddhist + module: dojo/cldr/nls/sv/hebrew + module: dojo/cldr/nls/pl/gregorian + module: dojo/cldr/nls/en/gregorian + module: dojo/cldr/nls/ko/japanese + module: dojo/nls/es/colors + module: dojo/cldr/nls/pt/persian + module: dojo/nls/az/colors + module: dojo/cldr/nls/ko/dangi + module: dojo/cldr/nls/da/japanese + module: dojo/cldr/nls/th/islamic + module: dojo/errors/CancelError + module: dojo/cldr/nls/fr/gregorian + module: dojo/cldr/nls/nl/ethiopic + module: dojo/cldr/nls/ko/buddhist + module: dojo/cldr/nls/da/buddhist + module: dojo/cldr/nls/zh/generic + module: dojo/cldr/nls/zh-hant/japanese + module: dojo/request/handlers + module: dojo/rpc/RpcService + module: dojo/cldr/nls/coptic + module: dojo/io-query + module: dojo/cldr/nls/es/generic + module: dojo/selector/lite + module: dojo/domReady + module: dojo/cldr/nls/ro/generic + module: dojo/cldr/nls/zh-hant/buddhist + module: dojo/data/util/filter + module: dojo/data/api/Notification + module: dojo/Deferred + module: dojo/request/registry + module: dojo/cldr/nls/nl/coptic + module: dojo/cldr/nls/nl/gregorian + module: dojo/request/iframe + module: dojo/cldr/nls/ethiopic + module: dojo/cldr/nls/en-au/gregorian + module: dojo/_base/fx + module: dojo/cldr/nls/sl/generic + module: dojo/cldr/nls/en-gb/gregorian + module: dojo/throttle + module: dojo/cldr/nls/es/japanese + module: dojo/debounce + module: dojo/cldr/nls/ko/chinese + module: dojo/cldr/nls/el/number + module: dojo/cldr/nls/de/hebrew + module: dojo/cldr/nls/dangi + module: dojo/cldr/nls/es/buddhist + module: dojo/cldr/nls/tr/persian + module: dojo/query + module: dojo/_base/array + module: dojo/cldr/nls/pl/persian + module: dojo/cldr/nls/hu/ethiopic + module: dojo/cldr/nls/nb/hebrew + module: dojo/request/notify + module: dojo/cookie + module: dojo/cldr/nls/tr/currency + module: dojo/Stateful + module: dojo/_base/Color + module: dojo/dnd/Source + module: dojo/cldr/nls/it/generic + module: dojo/cldr/nls/ja/persian + module: dojo/errors/create + module: dojo/_base/config + module: dojo/cldr/nls/ro/coptic + module: dojo/cldr/nls/fi/roc + module: dojo/parser + module: dojo/cldr/nls/ar/islamic + module: dojo/cldr/nls/sk/gregorian + module: dojo/require + module: dojo/cldr/nls/ar/ethiopic + module: dojo/cldr/nls/ar/gregorian +info(106) Optimizing CSS. + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/Dialog_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/layout/TabContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/layout/AccordionContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/layout/AccordionContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/form/Slider_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/form/Slider_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/form/TimeTextBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/layout/AccordionContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/soria.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/nihilo.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/ColorPalette.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/Editor.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/form/Common_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/form/Checkbox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/layout/TabContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/TimePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/icons/editorIcons.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/form/Slider.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/Calendar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/form/Slider.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/Dialog.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/Tree.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/tundra.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/TitlePane_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/form/Checkbox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/form/Slider_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/ColorPalette.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/Editor.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/claro_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/Menu.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/Toolbar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/icons/editorIcons_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/Menu_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/TitlePane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/Calendar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/TitlePane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/layout/AccordionContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/Menu_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/Dialog.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/Editor_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/Toolbar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/Menu_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/TitlePane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/ColorPalette.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/Tree.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/form/Button.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/soria_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/form/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/Menu.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/layout/TabContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/TimePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/form/Button_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/form/TimeTextBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/ColorPalette.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/TitlePane_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/claro.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/ProgressBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/form/Button_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/layout/TabContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/Toolbar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/layout/TabContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/InlineEditBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/Menu_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/Dialog_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/Editor_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/layout/SplitContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/form/Select.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/Editor.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/form/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/layout/BorderContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/layout/TabContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/form/Checkbox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/layout/ContentPane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/layout/AccordionContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/layout/ContentPane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/Dialog.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/Tree_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/layout/TabContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/dijit_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/layout/BorderContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/TitlePane_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/ProgressBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/Toolbar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/ProgressBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/Editor.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/form/Button_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/form/RadioButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/form/Button.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/icons/commonIcons_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/icons/commonIcons.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/TimePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/document.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/tundra_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/form/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/form/Button.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/Tree.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/form/Button.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/TimePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/form/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/Dialog_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/layout/TabContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/Menu.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/Dialog.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/layout/ContentPane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/ProgressBar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/Tree_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/Tree.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/ProgressBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/form/Slider.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/Menu.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/Editor_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/Tree_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/Editor_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/TimePicker_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/dijit.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/layout/BorderContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/layout/AccordionContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/TitlePane_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/form/NumberSpinner.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/form/Select.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/ProgressBar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/ProgressBar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/form/Checkbox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/form/Select.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/layout/BorderContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/form/Select.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/Calendar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/nihilo_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/layout/SplitContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/form/Slider_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/TitlePane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/claro/form/RadioButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/TimePicker_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/TimePicker_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/layout/SplitContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/form/Slider.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/form/RadioButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/form/RadioButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/ProgressBar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/Dialog_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/soria/Toolbar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/nihilo/Calendar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dijit/themes/tundra/layout/ContentPane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/TimePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonTransparent30.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ListItem_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/RoundRectCategory_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ToggleButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/FormLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/FilePicker/FilePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/swirl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/form/resources/CheckedMultiSelect.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ListItem-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/claro/ColumnView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/SearchBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ProgressIndicator_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Switch_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/TabBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/BidiSupport.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/soria/Calendar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/atom/widget/templates/css/HtmlFeedEntryEditor.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/FormLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/DocTester/DocTester.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/android_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/SpinWheel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/tundra/MatrixView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonRedBadge.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/PageIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/CheckBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ProgressIndicator_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/base_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Slider-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/base.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/SpinWheel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Tooltip.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/View.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Carousel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Heading-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Opener.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Accordion_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ProgressBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Accordion.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/PageIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/View.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ProgressIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/dijit/Calendar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/FormLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Switch_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ListItem.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/common-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/SpinWheel_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/claro/Calendar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/IconContainer-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ComboBox_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/form/resources/ListInput.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/layout/resources/RadioGroup.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/iphone/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ListItem_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Accordion.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ValuePicker-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ToolBarButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/IconContainer_keyframes.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/RoundRectCategory-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ToggleButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Heading.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/TabBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/TextArea-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/TextBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/DnD_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/claro/MatrixView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/base_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ValuePicker-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Tooltip-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Button-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Tooltip.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/RoundRectList-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/dijit/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Overlay-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/soria/ColumnView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ValuePicker-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/drawing/resources/GreekPalette.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ProgressIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/soria/MonthColumnView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/FixedSplitter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/SpinWheel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Switch.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ListItem_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/EdgeToEdgeCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/nihilo/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonRedBadge-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Slider-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/default.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/iphone.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/IconMenu-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ToolBarButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Slider.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/tundra/MatrixView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Switch_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/TabBar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ListItem_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/layout/resources/ScrollPane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Opener-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ScrollablePane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/RadioButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ProgressIndicator_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ListItem.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/SimpleDialog.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/IconMenu_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ToolBarButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/TextBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/TabBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/layout/resources/ResizeHandle.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/base-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ToolBarButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/RadioButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Overlay.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ToggleButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ProgressBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/PageIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Opener.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/RoundRectCategory_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Overlay.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ProgressIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Switch_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/TabBar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonRedCross-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/RoundRect.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/tundra/MonthColumnView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ProgressBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/SpinWheel-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/RoundRect-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ToggleButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/TabBar_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/EdgeToEdgeList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/DatePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/LocalImage.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/blackberry_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/soria/ColumnView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/SearchBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ToolBarButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Opener-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/RoundRectCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/FormLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/FixedSplitter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/IconContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/autumn.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/DatePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/SpinWheel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ToggleButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ListItem.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/reveal.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ValuePicker-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Tooltip-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mdnd/resources/dnd.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/GridLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/revealv.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ProgressIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/TextBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/IconMenu.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Accordion-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/dissolve.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/SpinWheel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/RadioButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Overlay.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/android-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Tooltip.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/EdgeToEdgeCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/GridLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/holodark_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/IconContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ComboBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/CheckBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Switch-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/GridLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ComboBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/SimpleDialog-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/EdgeToEdgeCategory-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/TabBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/IconContainer-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/FormLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Tooltip.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/base_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ListItem.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/RadioButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ProgressIndicator_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/IconContainer-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/claro/MonthColumnView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/CheckBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ListItem_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ProgressIndicator_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/form/resources/FileInput.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Carousel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ComboBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/iphone/Calendar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/SearchBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/TextBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/RadioButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ToggleButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/RollingList/RollingList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ToolBarButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/RadioButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/RoundRectCategory_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/base.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ios7.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ListItem_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ComboBox_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/IconContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/base.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/base_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Slider.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/Blockquote.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/dijit/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Switch.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ProgressBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Button.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ProgressIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ListItem_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/gauges/_Gauge.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonRedBall-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/dijit/dijit.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/TextArea-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/iphone/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ListItem_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/View.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ComboBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/IconContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/dijit/ColorPalette.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/gantt/resources/gantt.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/scaleIn.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/TabBar_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/cube.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ProgressIndicator_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/SearchBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Button.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/base-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/nihilo/ColumnView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/SearchBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calc/resources/Standard.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Button-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/SimpleDialog-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/TextArea.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/iphone-app-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/DnD.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/treemap/themes/MobileTreeMap.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/resources/Grid_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/layout/resources/ToggleSplitter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/SimpleDialog.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Button-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/IconMenu_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/CheckBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/TextBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/PageIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/RoundRectList-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/SpinWheel-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/RoundRect-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/SearchBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/layout/resources/FloatingPane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/GridLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/EdgeToEdgeCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ToggleButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/PageIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/RoundRectCategory_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/SpinWheel_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/image/resources/Badge.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/common-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/IconMenu-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/iphone/ColumnView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/RoundRectCategory_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/editorPlugins.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/GridLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/iphone/MonthColumnView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/base_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/base_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/CheckBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/FormLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/SpinWheel_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/windows-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/dijit/base.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/TabBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ToolBarButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/SearchBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/FormLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/android-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/av/widget/resources/Player.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/android_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/form/resources/FileUploader.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/RadioButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlueBall.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Accordion-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ComboBox_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ProgressIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/IconMenu_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Heading-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/TextArea-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/perldoc.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/TextBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/iphone-app.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Accordion_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ScrollablePane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/RoundRectCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/PageIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/TabBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/PageTurning.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/SpinWheel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Button-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/RoundRectList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ListItem_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/common-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ToggleButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ListItem-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Switch_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/fruity.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Accordion-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ProgressIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/CheckBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Heading.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Switch_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/TabBar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/RoundRectCategory_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Overlay-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/form/resources/UploaderFileList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/base_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/Wizard/Wizard.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/GridLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/TitleGroup/TitleGroup.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Slider.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Heading.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/image/resources/image.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Overlay-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Opener.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/TabBar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Switch_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/IconMenu-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/EdgeToEdgeList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calc/resources/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/RoundRectCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/Pagination_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/dijit/Calendar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Switch-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/soria/MatrixView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/FormLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ScrollablePane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/SimpleDialog.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/IconMenu_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/SpinWheel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/resources/claroGrid.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Overlay.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/custom-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/charting/resources/Legend.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/manni.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonTransparent19.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/TextArea.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Slider-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ToggleButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/RoundRect.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/form/resources/FilePickerTextBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Opener.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/custom_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/IconMenu.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/claro/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/IconMenu.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/nihilo/Calendar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Overlay.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/FindReplace.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/TextArea-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/IconContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ToolBarButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/IconContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/base-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Opener-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ComboBox_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/CheckBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/claro/MatrixView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Accordion_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/PageIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/image/resources/SlideShow.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Heading-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/EdgeToEdgeList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/CheckBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Carousel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/Sorter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/SpinWheel-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/RoundRect-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/View.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/Pager/Pager.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/RoundRectList-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/RoundRectList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonTransparent29.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Carousel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Heading-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/SimpleDialog-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/RoundRectList-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/base.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/TimePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/IconMenu-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ProgressBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/Loader/Loader.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ComboBox_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlueBall-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/TimePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Tooltip-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/TimePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/PageIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Tooltip-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/FixedSplitter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/RoundRect.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/claroEnhancedGrid.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Accordion.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/SpinWheel_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/IconContainer-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/slide.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ComboBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/dijit/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/GridLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/RoundRect.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ToolBarButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/resources/tundraGrid.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ComboBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/TextArea-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ToolBarButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/image/resources/Magnifier.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/base_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Overlay-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ProgressBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/EdgeToEdgeCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ProgressIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ValuePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ScrollablePane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/SimpleDialog.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/IconMenu_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/base_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/EdgeToEdgeCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/dijit/ColorPicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Tooltip.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonColorButtons-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/layout/resources/GridContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/EdgeToEdgeCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/RoundRectCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ToolBarButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/SimpleDialog-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Accordion-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ComboBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/RadioButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/soria/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Switch.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/base.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/base_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ValuePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ToolBarButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/TabBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/RoundRect.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/TextArea.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/form/resources/BusyButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/TabBar_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/RadioButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/Breadcrumb.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/EdgeToEdgeList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/GridLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/IconContainer-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/tundra/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ListItem-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/atom/widget/templates/css/HtmlFeedEntryViewer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/image/resources/Gallery.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/RadioButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/android_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/soria/MatrixView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/IconContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/IconMenu_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Heading.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Button.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ComboBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Switch_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/SearchBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/PageBreak.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/base_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/FixedSplitter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/FormLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/SearchBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/TextBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/TabBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayStar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Switch.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Carousel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/atom/widget/templates/css/HtmlFeedViewerEntry.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/IconMenu-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/GridLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Tooltip-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ToolBarButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/SortList/SortList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/TextColor.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/TextBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/SearchBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/custom_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/form/resources/TriStateCheckBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ToggleButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/nihilo/MatrixView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/treemap/themes/GroupLabel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Switch_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/IconMenu_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/Filter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/EdgeToEdgeCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/SpinWheel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Switch-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/nihilo/ColumnView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/InsertAnchor.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Button.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/friendly.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/CheckBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonColorButtons.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/base_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Overlay.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/treemap/themes/DrillDownUp.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ToolBarButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/DatePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Switch-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/iphone_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/Filter_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ToggleButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ToolBarButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonRedBall.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/SpinWheel_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/IconContainer-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/AutoSave.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Slider-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ComboBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Carousel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/TextBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/base-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/borland.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/PageIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ProgressIndicator_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/TabBar_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/tundraEnhancedGrid.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/RadioButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/TabBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/iphone/MatrixView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ToggleButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/DatePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/TextBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Opener-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/tundra/Calendar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/windows.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ListItem-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/TextBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/Calendar/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/flip.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ProgressBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/SimpleDialog.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/IconMenu_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/Smiley.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGreenBall-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/dijit/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Overlay-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Switch.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/soria/MonthColumnView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/Sorter_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ListItem_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/RoundRectList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/tundra/ColumnView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/claro/MonthColumnView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/SpinWheel_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Accordion_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ToggleButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/StatusBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Heading.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/base-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Tooltip.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/FormLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/IconMenu_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/iphone/ColumnView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/TabBar_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/RoundRectList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Slider.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/TimePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/SimpleDialog-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/base-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Heading.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Button-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/Save.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/View.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/base_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/SpinWheel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/claro/EnhancedGrid.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/highlight.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Switch-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/CheckBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Button.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/CheckBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ValuePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ToggleButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ListItem_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ProgressIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Accordion-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/TabBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Carousel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/tundra/Sorter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ListItem.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Opener.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/ShowBlockNodes.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/iphone/MonthColumnView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/SpinWheel-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/TextArea.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/RoundRect-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/custom.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/TabBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/IconMenu.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ComboBox_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ListItem-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/IconMenu.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/PageIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGreenBall.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Heading-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Switch_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Accordion_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/SearchBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ProgressIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Slider.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/ColorPicker/ColorPicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/cover.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/atom/widget/templates/css/HtmlFeedViewer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/TextArea-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ProgressIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/dijit/Calendar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/RoundRectList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Carousel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/murphy.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/RoundRectList-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ToggleButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/CheckBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ValuePicker-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/CheckBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/RoundRectCategory_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/TabBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/holodark.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/tundra/EnhancedGrid.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/android-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Tooltip-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/FisheyeList/FisheyeList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Button-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/atom/widget/templates/css/EntryHeader.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/dijit/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/android_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/blackberry-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/IconMenu.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/SpinWheel-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/common-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/DatePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/android-app-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/IconMenu-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/base.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Accordion.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/claro/ColumnView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/RadioButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/IconContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/base-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/SearchBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calc/resources/GraphPro.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/image/resources/Lightbox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Accordion_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/zoomIn.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/CheckBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/form/resources/RangeSlider.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/nihilo/MonthColumnView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/Pagination.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/RoundRect.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/TextArea.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/SimpleDialog.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/TextBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/IconMenu_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/GridLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/RoundRectCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/geo/charting/resources/Map.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/TextArea-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ListItem-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ToggleButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayCross.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/IconMenu.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/FixedSplitter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/tundra/ColumnView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/IconContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/RadioButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/GridLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ToggleButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/treemap/themes/TreeMap.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/layout/resources/RotatorContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/drawing/resources/toolbar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/RoundRect.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/View.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonRedCross.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Slider.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/UpgradeBar/UpgradeBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ComboBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/swap.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ToolBarButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ScrollablePane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/tundra/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ProgressBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/IconContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Switch.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/claro/Common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Accordion.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/native.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ToggleButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/IconMenu_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/android-app.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ipad-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Accordion.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/SimpleDialog-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/TimePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ListItem.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Slider-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/SpinWheel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ValuePicker-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Opener.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/TextArea.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Carousel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/DatePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/PageIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ProgressIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/common-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonYellowStar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/SimpleDialog-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/sketch/resources/sketch.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/Common_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Slider-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Opener-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Button.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Heading-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/TabBar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Switch_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/FixedSplitter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ProgressIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/SafePaste.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ipad.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/tundra/Filter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Opener-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/colorful.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/SpellCheck.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/TabBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ProgressIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Switch_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/TabBar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/TextArea.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/RoundRect-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/dijit/Calendar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/zoomOut.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Accordion.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/resources/nihiloGrid.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Carousel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Opener.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/base.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ToolBarButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/RoundRectList-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/RoundRectCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/SpinWheel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/PasteFromWord.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/nihilo/MonthColumnView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/SpinWheel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/GridLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Overlay.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ToolBarButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/pastie.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ComboBox_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/FixedSplitter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ListItem_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Overlay-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/EnhancedGrid.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ToolBarButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayStar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ComboBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/SpinWheel_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/IconContainer-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ProgressBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/TextBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/FormLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/SpinWheel-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/RoundRect-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/SearchBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/slidev.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Slider-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/Portlet/Portlet.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/iphone-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/View.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ios7_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ScrollablePane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/fade.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Carousel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/RoundRectList-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/RoundRectCategory.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/FormLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ToggleButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Opener-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ScrollablePane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/FormLayout.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/html/resources/ellipsis.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ValuePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/form/resources/Rating.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/trac.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayCross-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/EnhancedGrid_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/ToolBarButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/SpinWheel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/CollapsibleToolbar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/PageIndicator-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/IconContainer_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/coverv.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/RadioButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Carousel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/atom/widget/templates/css/HtmlFeedViewerGrouping.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/InsertEntity.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/layout/resources/ExpandoPane.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ListItem.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/iphone_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ListItem_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/Switch-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/image/resources/ThumbnailPicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ValuePicker-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/SimpleDialog.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/IconMenu_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/BidiSupport_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Slider.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/EdgeToEdgeList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/TimePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/dijit/Calendar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ProgressBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/IconContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/windows_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/resources/Grid.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/EdgeToEdgeList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Accordion-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/common.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ToggleButton_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ToggleButton.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/IconMenu_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/FormLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/IconContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Carousel_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ProgressBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Switch_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/TabBar_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Tooltip.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ComboBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/enhanced/resources/claro/Filter.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Tooltip-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/blackberry.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/DatePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/Heading.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/Dialog/Dialog.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Switch_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/IconMenu_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/highlight/resources/pygments/emacs.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/TabBar_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/GridLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/Accordion-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/IconMenu-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/SpinWheel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/Carousel.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Switch-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/nihilo/MatrixView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/ValuePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/RoundRectList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ProgressBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/GridLayout_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/widget/Toaster/Toaster.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/ProgressBar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/transitions/scaleOut.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/TabBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/SearchBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Heading-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ValuePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonYellowStar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ComboBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/ProgressBar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/ListItem-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/grid/resources/soriaGrid.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Switch.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/layout/resources/DndGridContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ValuePicker.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/Accordion_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/PageIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/IconContainer.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/custom/common-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/ComboBox-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/android.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/dijit/Calendar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/RoundRectList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/dijit/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/dijit/Calendar-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/SpinWheel-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/RoundRect-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/image/resources/LightboxNano.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/PageIndicator.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/ios7/TextBox.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/windows/dijit/Calendar.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/android/ToolBarButton-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/common-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/iphone/MatrixView_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/drawing/resources/drawing.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/Overlay-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Button.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/calendar/themes/tundra/MonthColumnView.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/iphone/Button-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/editor/plugins/resources/css/Preview.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/holodark/EdgeToEdgeList.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/blackberry_rtl.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojox/mobile/themes/blackberry/TabBar_rtl-compat.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojo/_firebug/firebug.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojo/resources/dojo.css + file: /home/csnover/dojo-trunk/util/buildscripts/build/dojo-release-1.10.4-src/dojo/resources/dnd.css +info(107) Package Version: + package: dijit; version: 1.10.4 + package: dojox; version: 1.10.4 + package: dojo; version: 1.10.4 +warn(216) dojo/has plugin resource could not be resolved during build-time. + plugin resource id: dojo-bidi?./_BidiMixin; reference module id: dijit/_WidgetBase + plugin resource id: dojo-bidi?../bidi/action2d/Tooltip; reference module id: dojox/charting/action2d/Tooltip + plugin resource id: dojo-bidi?../bidi/axis2d/Default; reference module id: dojox/charting/axis2d/Default + plugin resource id: dojo-bidi?dojox/mobile/bidi/TabBarButton; reference module id: dojox/mobile/TabBarButton + plugin resource id: dojo-bidi?dojox/mobile/bidi/CarouselItem; reference module id: dojox/mobile/CarouselItem + plugin resource id: dojo-bidi?dojox/mobile/bidi/SimpleDialog; reference module id: dojox/mobile/SimpleDialog + plugin resource id: dojo-bidi?dojox/mobile/bidi/Rating; reference module id: dojox/mobile/Rating + plugin resource id: dojo-bidi?./bidi/Chart; reference module id: dojox/charting/Chart + plugin resource id: dojo-bidi?dojox/mobile/bidi/Tooltip; reference module id: dojox/mobile/Tooltip + plugin resource id: dojo-bidi?dojox/mobile/bidi/Accordion; reference module id: dojox/mobile/Accordion + plugin resource id: dojo-bidi?dojox/mobile/bidi/ToolBarButton; reference module id: dojox/mobile/ToolBarButton + plugin resource id: touch?dojox/gesture/tap; reference module id: dojox/treemap/DrillDownUp + plugin resource id: dojo-bidi?dojox/mobile/bidi/Switch; reference module id: dojox/mobile/Switch + plugin resource id: dojo-bidi?dojox/mobile/bidi/ListItem; reference module id: dojox/mobile/ListItem + plugin resource id: dojo-bidi?dojox/mobile/bidi/_StoreListMixin; reference module id: dojox/mobile/_DataListMixin + plugin resource id: dojo-bidi?dojox/mobile/bidi/Button; reference module id: dojox/mobile/Button + plugin resource id: dojo-bidi?dojox/mobile/bidi/SwapView; reference module id: dojox/mobile/SwapView + plugin resource id: dojo-bidi?dojox/mobile/bidi/_StoreListMixin; reference module id: dojox/mobile/_StoreListMixin + plugin resource id: dojo-bidi?dojox/mobile/bidi/Carousel; reference module id: dojox/mobile/Carousel + plugin resource id: dojo-bidi?dojox/mobile/bidi/SpinWheelSlot; reference module id: dojox/mobile/SpinWheelSlot + plugin resource id: dojo-bidi?dojox/mobile/bidi/_ComboBoxMenu; reference module id: dojox/mobile/_ComboBoxMenu + plugin resource id: dojo-bidi?../bidi/action2d/ZoomAndPan; reference module id: dojox/charting/action2d/MouseZoomAndPan + plugin resource id: dojo-bidi?dojox/mobile/bidi/_PickerBase; reference module id: dojox/mobile/_PickerBase + plugin resource id: dojo-bidi?./bidi/_BidiMixin; reference module id: dojox/grid/DataGrid + plugin resource id: dojo-bidi?dojox/mobile/bidi/TreeView; reference module id: dojox/mobile/TreeView + plugin resource id: dojo-bidi?dojox/mobile/bidi/_ItemBase; reference module id: dojox/mobile/_ItemBase + plugin resource id: dojo-bidi?dojox/mobile/bidi/TabBar; reference module id: dojox/mobile/TabBar + plugin resource id: dojo-bidi?../bidi/widget/Chart; reference module id: dojox/charting/widget/Chart + plugin resource id: dojo-bidi?dojox/mobile/bidi/IconItem; reference module id: dojox/mobile/IconItem + plugin resource id: dojo-bidi?../bidi/widget/Legend; reference module id: dojox/charting/widget/Legend + plugin resource id: dojo-bidi?dojox/mobile/bidi/IconMenu; reference module id: dojox/mobile/IconMenu + plugin resource id: dojo-bidi?dojox/mobile/bidi/ProgressIndicator; reference module id: dojox/mobile/ProgressIndicator + plugin resource id: dojo-bidi?./bidi/Chart3D; reference module id: dojox/charting/Chart3D + plugin resource id: dojo-bidi?dojox/mobile/bidi/Scrollable; reference module id: dojox/mobile/scrollable + plugin resource id: dojo-bidi?dojox/mobile/bidi/TextBox; reference module id: dojox/mobile/TextBox + plugin resource id: dojo-bidi?dojox/mobile/bidi/FormLayout; reference module id: dojox/mobile/FormLayout + plugin resource id: dojo-bidi?../bidi/action2d/ZoomAndPan; reference module id: dojox/charting/action2d/TouchZoomAndPan + plugin resource id: dojo-bidi?dojox/mobile/bidi/Icon; reference module id: dojox/mobile/Icon + plugin resource id: dojo-bidi?dojox/mobile/bidi/Heading; reference module id: dojox/mobile/Heading + plugin resource id: dojo-bidi?dojox/mobile/bidi/RoundRectCategory; reference module id: dojox/mobile/RoundRectCategory + plugin resource id: dojo-bidi?dojox/mobile/bidi/Badge; reference module id: dojox/mobile/Badge + plugin resource id: dojo-bidi?dojox/mobile/bidi/ValuePickerSlot; reference module id: dojox/mobile/ValuePickerSlot + plugin resource id: dojo-parser?:dojo/_base/window; reference module id: dojox/mvc/parserExtension + plugin resource id: dojo-mobile-parser?:dojo/parser; reference module id: dojox/mvc/parserExtension + plugin resource id: dojo-parser?:dojox/mobile/parser; reference module id: dojox/mvc/parserExtension + plugin resource id: dojo-firebug?./_firebug/firebug; reference module id: dojo/main + plugin resource id: dom-addeventlistener?:./aspect; reference module id: dojo/on + plugin resource id: host-browser?dom-addeventlistener?:../on:; reference module id: dojo/request/watch +warn(224) A plugin dependency was encountered but there was no build-time plugin resolver. + module: dijit/form/_RadioButtonMixin; plugin: dojo/query + module: dijit/Fieldset; plugin: dojo/query + module: dijit/Tree; plugin: dojo/query + module: dijit/RadioMenuItem; plugin: dojo/query + module: dojox/mobile/TimePicker; plugin: dojox/mobile/_PickerChooser + module: dojox/store/LocalDB; plugin: dojox/store/db/has + module: dojox/mobile/DatePicker; plugin: dojox/mobile/_PickerChooser + module: dojo/request/node; plugin: dojo/node + module: dojo/request/node; plugin: dojo/node + module: dojo/request/node; plugin: dojo/node + module: dojo/request/node; plugin: dojo/node + module: dojo/request; plugin: dojo/request/default + module: dojo/request/registry; plugin: dojo/request/default +Layer Contents: +dojo/dojo: + dojo/request/default + dojo/_base/fx + dojo/dom-form + dojo/i18n + dojo/promise/tracer + dojo/errors/RequestError + dojo/_base/html + dojo/_base/kernel + dojo/io-query + dojo/_base/Deferred + dojo/NodeList-dom + dojo/query + dojo/has + dojo/_base/loader + dojo/json + dojo/_base/declare + dojo/dom + dojo/_base/browser + dojo/selector/acme + dojo/errors/RequestTimeoutError + dojo/dom-geometry + dojo/dom-style + dojo/dom-prop + dojo/when + dojo/dom-attr + dojo/dom-construct + dojo/request/xhr + dojo/text + dojo/keys + dojo/domReady + dojo/_base/lang + dojo/request/util + dojo/Evented + dojo/mouse + dojo/_base/xhr + dojo/topic + dojo/loadInit + dojo/dojo + dojo/_base/unload + dojo/Deferred + dojo/_base/NodeList + dojo/request + dojo/_base/Color + dojo/promise/instrumentation + dojo/selector/_loader + dojo/promise/Promise + dojo/request/watch + dojo/on + dojo/_base/sniff + dojo/errors/create + dojo/_base/array + dojo/_base/json + dojo/_base/window + dojo/dom-class + dojo/_base/config + dojo/main + dojo/_base/event + dojo/sniff + dojo/request/handlers + dojo/aspect + dojo/ready + dojo/_base/connect + dojo/errors/CancelError + +dijit/dijit: + dojo/uacss + dijit/hccss + dijit/_Contained + dijit/Viewport + dojo/parser + dijit/_Container + dijit/a11yclick + dijit/_base/scroll + dijit/layout/_LayoutWidget + dijit/_base + dijit/form/_FormWidgetMixin + dijit/BackgroundIframe + dijit/form/_FormValueMixin + dojo/Stateful + dojo/touch + dijit/_CssStateMixin + dojo/_base/url + dojo/hccss + dojo/string + dijit/form/_FormValueWidget + dijit/_AttachMixin + dijit/registry + dijit/Destroyable + dijit/_base/manager + dijit/_base/place + dijit/WidgetSet + dijit/a11y + dijit/typematic + dijit/_base/focus + dijit/place + dijit/_Widget + dijit/_OnDijitClickMixin + dijit/_FocusMixin + dojo/cache + dijit/focus + dijit/_base/sniff + dijit/dijit + dijit/main + dojo/date/stamp + dijit/form/_FormWidget + dijit/_base/typematic + dijit/_base/popup + dojo/promise/all + dijit/_TemplatedMixin + dijit/_base/wai + dojo/window + dijit/selection + dijit/popup + dijit/_base/window + dijit/_WidgetBase + +dojox/mobile/app: + dojo/uacss + dojox/mobile/app/_Widget + dojox/mobile/app/ImageThumbView + dojox/mobile/TransitionEvent + dojox/mobile/ViewController + dojox/mobile/_ItemBase + dojox/mobile/ToolBarButton + dijit/hccss + dojox/mobile/Container + dijit/_Contained + dijit/form/_TextBoxMixin + dijit/Viewport + dojox/mobile/parser + dijit/_Container + dojox/mobile/app/SceneController + dojox/mobile/app/_base + dijit/_base/scroll + dojox/mobile/_maskUtils + dojo/fx + dijit/_base + dojox/mobile/sniff + dojox/mobile/ProgressIndicator + dijit/form/_FormWidgetMixin + dijit/BackgroundIframe + dojox/mobile + dijit/form/_FormValueMixin + dojox/mobile/common + dojox/mobile/iconUtils + dojox/mobile/Heading + dojox/main + dojox/mobile/RoundRectList + dojo/Stateful + dojox/mobile/viewRegistry + dojo/touch + dojox/mobile/app/List + dojo/require + dojox/mobile/app/ListSelector + dojo/hccss + dojox/mobile/EdgeToEdgeCategory + dojo/string + dojox/mobile/TextBox + dijit/registry + dijit/Destroyable + dijit/_base/manager + dijit/_base/place + dojox/mobile/View + dijit/WidgetSet + dojo/fx/easing + dijit/a11y + dijit/typematic + dojox/mobile/app/ImageView + dijit/_base/focus + dojox/mobile/ListItem + dojox/mobile/app/StageController + dojox/mobile/app + dijit/place + dojox/mobile/app/_event + dojox/mobile/_base + dojox/mobile/Button + dojox/mobile/Switch + dijit/focus + dijit/_base/sniff + dojox/mobile/Pane + dijit/main + dojox/mobile/RoundRect + dijit/form/_ButtonMixin + dijit/_base/typematic + dojox/mobile/RoundRectCategory + dojox/mobile/app/TextBox + dojox/mobile/app/SceneAssistant + dijit/_base/popup + dojox/mobile/transition + dijit/_base/wai + dojo/window + dijit/selection + dojox/mobile/_css3 + dojox/mobile/EdgeToEdgeList + dijit/popup + dojox/mobile/uacss + dijit/_base/window + dijit/_WidgetBase + dojox/mobile/app/AlertDialog + +dojox/mobile/app/compat: + dojox/mobile/app/compat + dojox/main + dojox/mobile/compat + dojo/require + dijit/main + +dojox/charting/widget/Chart2D: + dojox/charting/plot2d/_PlotEvents + dojo/uacss + dojox/charting/axis2d/Invisible + dojox/lang/utils + dojox/charting/plot2d/Pie + dojox/charting/action2d/Shake + dijit/hccss + dojox/lang/functional/lambda + dojox/lang/functional/reversed + dojox/charting/scaler/primitive + dojox/charting/plot2d/Candlesticks + dojox/charting/widget/Sparkline + dojox/gfx/matrix + dojox/charting/plot2d/Scatter + dojox/lang/functional/scan + dijit/Viewport + dojox/color/_base + dojox/charting/plot2d/OHLC + dijit/a11yclick + dojox/charting/plot2d/ClusteredColumns + dojox/charting/Chart + dojox/charting/plot2d/MarkersOnly + dojox/charting/plot2d/Areas + dojox/charting/action2d/Base + dojo/fx + dojox/gfx/fx + dojox/charting/plot2d/commonStacked + dojox/charting/action2d/PlotAction + dijit/BackgroundIframe + dojox/main + dojox/charting/action2d/Magnify + dojo/Stateful + dojox/charting/plot2d/Markers + dojox/charting/plot2d/Bubble + dojo/touch + dojox/gfx/gradutils + dojo/hccss + dojo/string + dijit/_AttachMixin + dijit/registry + dojox/charting/plot2d/Lines + dijit/Destroyable + dojox/charting/plot2d/StackedAreas + dijit/_base/manager + dojox/charting/plot2d/Stacked + dojo/fx/easing + dojox/charting/action2d/Highlight + dojox/charting/axis2d/Base + dojox/charting/plot2d/Grid + dijit/a11y + dojox/lang/functional/fold + dijit/templates/Tooltip.html + dojox/charting/plot2d/Spider + dojox/charting/plot2d/StackedBars + dojox/charting/themes/GreySkies + dojox/charting/plot2d/Columns + dijit/place + dojox/lang/functional/array + dojox/charting/themes/common + dojox/charting/plot2d/common + dijit/_Widget + dijit/_OnDijitClickMixin + dijit/_FocusMixin + dojo/cache + dojox/charting/plot2d/Bars + dojox/gfx/_base + dojox/charting/plot2d/CartesianBase + dijit/focus + dojox/charting/widget/Legend + dojox/charting/plot2d/StackedLines + dojox/charting/plot2d/StackedColumns + dojox/charting/widget/Chart2D + dojox/charting/Series + dojox/charting/plot2d/Default + dijit/main + dojox/charting/plot2d/Base + dojox/charting/action2d/Tooltip + dojox/gfx + dojox/gfx/shape + dojox/charting/Chart2D + dojox/charting/scaler/linear + dojox/gfx/renderer + dojox/charting/widget/Chart + dojox/lang/functional + dojox/charting/scaler/common + dojox/charting/axis2d/common + dijit/_TemplatedMixin + dojox/lang/functional/object + dojo/window + dojox/charting/axis2d/Default + dojox/charting/plot2d/ClusteredBars + dojox/charting/action2d/MoveSlice + dojo/colors + dojox/charting/SimpleTheme + dijit/Tooltip + dojox/charting/Element + dijit/_WidgetBase + +dojox/dtl: + dojox/dtl/_base + dojox/dtl/tag/loader + dojo/date + dojox/date/php + dojox/dtl + dojox/dtl/ext-dojo/NodeList + dojox/dtl/utils/date + dojox/dtl/tag/loop + dojox/string/tokenize + dojox/string/Builder + dojox/dtl/tag/misc + dojox/dtl/Context + dojox/dtl/tag/logic + dojox/dtl/tag/date + +dojox/grid/DataGrid: + dojo/uacss + dijit/hccss + dojox/grid/_View + dijit/_Contained + dojo/dnd/Selector + dojox/grid/DataSelection + dijit/templates/CheckedMenuItem.html + dojo/dnd/Manager + dijit/a11yclick + dojox/grid/_RowSelector + dojox/grid/_Layout + dojox/grid/_Grid + dijit/nls/loading + dojox/main + dojo/dnd/Mover + dojo/Stateful + dojo/touch + dojox/grid/Selection + dijit/_CssStateMixin + dojox/grid/resources/_Grid.html + dojox/grid/_RowManager + dojo/hccss + dojo/string + dojo/dnd/Avatar + dojox/grid/_Scroller + dojox/grid/_Events + dijit/_AttachMixin + dojo/dnd/autoscroll + dijit/registry + dijit/Destroyable + dojox/html/metrics + dojox/grid/_EditManager + dijit/a11y + dijit/CheckedMenuItem + dojo/dnd/Container + dojo/dnd/common + dojox/grid/_ViewManager + dojox/grid/cells + dijit/_Widget + dijit/_FocusMixin + dijit/_OnDijitClickMixin + dojo/cache + dijit/focus + dojox/grid/util + dojox/grid/DataGrid + dijit/templates/MenuItem.html + dijit/main + dojox/grid/resources/View.html + dojox/grid/_FocusManager + dijit/MenuItem + dijit/_TemplatedMixin + dojox/grid/_SelectionPreserver + dojo/window + dojox/grid/_Builder + dojo/dnd/Source + dojox/grid/cells/_base + dijit/_WidgetBase + dojo/dnd/Moveable + +dijit/dijit-all: + dijit/_editor/plugins/FontChoice + dijit/form/nls/validate + dijit/templates/CheckedMenuItem.html + dijit/form/TextBox + dojo/currency + dijit/DialogUnderlay + dijit/form/templates/ComboButton.html + dijit/layout/ScrollingTabController + dijit/_editor/html + dijit/_editor/nls/commands + dijit/_HasDropDown + dijit/tree/TreeStoreModel + dijit/_editor/plugins/EnterKeyHandling + dijit/_MenuBase + dijit/PopupMenuBarItem + dijit/tree/ForestStoreModel + dijit/layout/templates/AccordionButton.html + dijit/TitlePane + dijit/form/_ComboBoxMenuMixin + dijit/form/_SearchMixin + dijit/form/templates/DropDownButton.html + dijit/form/ToggleButton + dijit/form/NumberSpinner + dijit/form/Textarea + dijit/form/DateTextBox + dijit/form/ComboButton + dijit/layout/AccordionContainer + dijit/layout/SplitContainer + dijit/templates/Calendar.html + dijit/form/_AutoCompleterMixin + dijit/dijit-all + dijit/templates/ColorPalette.html + dijit/layout/templates/_ScrollingTabControllerButton.html + dijit/form/MappedTextBox + dijit/form/ComboBoxMixin + dijit/form/_TextBoxMixin + dijit/form/SimpleTextarea + dijit/layout/templates/_TabButton.html + dijit/PopupMenuItem + dijit/_TimePicker + dijit/form/RadioButton + dijit/form/templates/HorizontalSlider.html + dijit/InlineEditBox + dojo/dnd/autoscroll + dijit/form/_RadioButtonMixin + dijit/templates/TreeNode.html + dojo/dnd/TimedMoveable + dijit/layout/LinkPane + dijit/form/_ListMouseMixin + dijit/templates/Tree.html + dojo/cldr/monetary + dojo/cookie + dijit/form/templates/DropDownBox.html + dijit/ProgressBar + dijit/form/NumberTextBox + dijit/form/TimeTextBox + dijit/ColorPalette + dijit/form/templates/Button.html + dijit/form/CurrencyTextBox + dijit/templates/MenuItem.html + dijit/form/templates/CheckBox.html + dojo/cldr/nls/gregorian + dijit/form/templates/VerticalSlider.html + dijit/layout/LayoutContainer + dijit/Tooltip + dijit/templates/MenuSeparator.html + dijit/form/VerticalSlider + dijit/form/DropDownButton + dijit/templates/ProgressBar.html + dojo/date + dijit/layout/_ContentPaneResizeMixin + dijit/form/RangeBoundTextBox + dijit/nls/loading + dijit/_editor/RichText + dojo/dnd/Moveable + dijit/TooltipDialog + dojo/nls/colors + dojo/store/util/SimpleQueryEngine + dojo/cldr/nls/number + dijit/form/_ExpandingTextAreaMixin + dijit/MenuItem + dijit/MenuBarItem + dijit/layout/TabController + dojo/cldr/supplemental + dijit/MenuBar + dijit/ToolbarSeparator + dijit/layout/StackController + dijit/templates/TooltipDialog.html + dojo/dnd/Mover + dijit/form/HorizontalRule + dijit/layout/TabContainer + dijit/templates/Menu.html + dijit/_editor/nls/FontChoice + dijit/form/_Spinner + dijit/form/Button + dijit/layout/templates/TabContainer.html + dojo/dnd/move + dijit/form/Form + dijit/layout/_TabContainerBase + dojo/store/Memory + dijit/templates/Tooltip.html + dijit/Editor + dojo/cldr/nls/currency + dijit/Toolbar + dijit/layout/StackContainer + dojo/regexp + dijit/form/ComboBox + dijit/form/_FormMixin + dijit/_editor/plugins/LinkDialog + dijit/DropDownMenu + dijit/Menu + dijit/form/_CheckBoxMixin + dijit/layout/ContentPane + dijit/form/templates/ValidationTextBox.html + dijit/_KeyNavContainer + dijit/layout/utils + dijit/form/templates/TextBox.html + dijit/form/DataList + dijit/templates/Dialog.html + dijit/_editor/_Plugin + dijit/form/CheckBox + dijit/templates/MenuBar.html + dijit/tree/_dndSelector + dojo/html + dijit/_PaletteMixin + dijit/templates/TitlePane.html + dijit/form/ValidationTextBox + dijit/layout/BorderContainer + dojo/number + dijit/_WidgetsInTemplateMixin + dijit/form/HorizontalRuleLabels + dijit/templates/MenuBarItem.html + dijit/form/FilteringSelect + dojo/data/util/sorter + dijit/form/_ButtonMixin + dojo/colors + dijit/form/templates/Spinner.html + dijit/tree/_dndContainer + dojo/date/locale + dijit/templates/InlineEditBox.html + dijit/form/VerticalRule + dijit/form/_FormSelectWidget + dijit/form/Select + dijit/_editor/range + dijit/_KeyNavMixin + dojo/store/util/QueryResults + dijit/form/_ListBase + dojo/dnd/common + dijit/CalendarLite + dijit/CheckedMenuItem + dijit/form/VerticalRuleLabels + dijit/Declaration + dijit/MenuSeparator + dijit/form/_ComboBoxMenu + dijit/layout/templates/ScrollingTabController.html + dijit/Dialog + dijit/form/MultiSelect + dijit/form/_DateTimeTextBox + dijit/form/_ToggleButtonMixin + dijit/Calendar + dijit/form/templates/Select.html + dijit/form/nls/ComboBox + dojo/fx + dijit/_DialogMixin + dijit/nls/common + dijit/Tree + dijit/form/HorizontalSlider + +dojox/mobile: + dojox/mobile/ViewController + dojox/mobile/RoundRect + dojox/mobile/RoundRectList + dojox/mobile/sniff + dojox/mobile/viewRegistry + dojox/mobile/TransitionEvent + dijit/_WidgetBase + dojox/mobile + dojox/mobile/View + dojox/main + dojox/mobile/transition + dojo/touch + dojo/Stateful + dojox/mobile/Heading + dojox/mobile/Switch + dojox/mobile/_maskUtils + dojox/mobile/ListItem + dijit/registry + dojox/mobile/Pane + dojox/mobile/common + dojox/mobile/iconUtils + dojox/mobile/uacss + dojox/mobile/RoundRectCategory + dojox/mobile/ProgressIndicator + dojox/mobile/EdgeToEdgeList + dojox/mobile/EdgeToEdgeCategory + dojox/mobile/Container + dojox/mobile/ToolBarButton + dojox/mobile/_ItemBase + dijit/_Contained + dojox/mobile/_base + dijit/main + dijit/Destroyable + dijit/_Container + dojox/mobile/_css3 + +dojox/mobile/compat: + dojox/mobile/compat + +dojox/gfx: + dojox/gfx + dojox/gfx/_base + dojox/gfx/renderer + + + +Process finished normally + errors: 0 + warnings: 61 + build time: 280.6 seconds \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/BackgroundIframe.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/BackgroundIframe.js new file mode 100644 index 00000000..79fc6c77 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dijit/BackgroundIframe.js @@ -0,0 +1,63 @@ +//>>built +define("dijit/BackgroundIframe",["require","./main","dojo/_base/config","dojo/dom-construct","dojo/dom-style","dojo/_base/lang","dojo/on","dojo/sniff"],function(_1,_2,_3,_4,_5,_6,on,_7){ +_7.add("config-bgIframe",(_7("ie")&&!/IEMobile\/10\.0/.test(navigator.userAgent))||(_7("trident")&&/Windows NT 6.[01]/.test(navigator.userAgent))); +var _8=new function(){ +var _9=[]; +this.pop=function(){ +var _a; +if(_9.length){ +_a=_9.pop(); +_a.style.display=""; +}else{ +if(_7("ie")<9){ +var _b=_3["dojoBlankHtmlUrl"]||_1.toUrl("dojo/resources/blank.html")||"javascript:\"\""; +var _c=""); +} +}; +_8.setInitialState=function(_23){ +_e=_1b(_c,_23,_d); +}; +_8.addToHistory=function(_24){ +_12=[]; +var _25=null; +var url=null; +if(!_11){ +if(_1["useXDomain"]&&!_1["dojoIframeHistoryUrl"]){ +console.warn("dojo/back: When using cross-domain Dojo builds,"+" please save iframe_history.html to your domain and set djConfig.dojoIframeHistoryUrl"+" to the path on your domain to iframe_history.html"); +} +_11=window.frames["dj_history"]; +} +if(!_10){ +_10=_5.create("a",{style:{display:"none"}},_6.body()); +} +if(_24["changeUrl"]){ +_25=""+((_24["changeUrl"]!==true)?_24["changeUrl"]:(new Date()).getTime()); +if(_13.length==0&&_e.urlHash==_25){ +_e=_1b(url,_24,_25); +return; +}else{ +if(_13.length>0&&_13[_13.length-1].urlHash==_25){ +_13[_13.length-1]=_1b(url,_24,_25); +return; +} +} +_15=true; +setTimeout(function(){ +_a(_25); +_15=false; +},1); +_10.href=_25; +if(_3("ie")){ +url=_20(); +var _26=_24["back"]||_24["backButton"]||_24["handle"]; +var tcb=function(_27){ +if(_9()!=""){ +setTimeout(function(){ +_a(_25); +},1); +} +_26.apply(this,[_27]); +}; +if(_24["back"]){ +_24.back=tcb; +}else{ +if(_24["backButton"]){ +_24.backButton=tcb; +}else{ +if(_24["handle"]){ +_24.handle=tcb; +} +} +} +var _28=_24["forward"]||_24["forwardButton"]||_24["handle"]; +var tfw=function(_29){ +if(_9()!=""){ +_a(_25); +} +if(_28){ +_28.apply(this,[_29]); +} +}; +if(_24["forward"]){ +_24.forward=tfw; +}else{ +if(_24["forwardButton"]){ +_24.forwardButton=tfw; +}else{ +if(_24["handle"]){ +_24.handle=tfw; +} +} +} +}else{ +if(!_3("ie")){ +if(!_f){ +_f=setInterval(_21,200); +} +} +} +}else{ +url=_20(); +} +_13.push(_1b(url,_24,_25)); +}; +_8._iframeLoaded=function(evt,_2a){ +var _2b=_1e(_2a.href); +if(_2b==null){ +if(_13.length==1){ +_16(); +} +return; +} +if(_14){ +_14=false; +return; +} +if(_13.length>=2&&_2b==_1e(_13[_13.length-2].url)){ +_16(); +}else{ +if(_12.length>0&&_2b==_1e(_12[_12.length-1].url)){ +_19(); +} +} +}; +return _8; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/back.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/back.js.uncompressed.js new file mode 100644 index 00000000..f19052b9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/back.js.uncompressed.js @@ -0,0 +1,397 @@ +define("dojo/back", ["./_base/config", "./_base/lang", "./sniff", "./dom", "./dom-construct", "./_base/window", "require"], + function(config, lang, has, dom, domConstruct, baseWindow, require){ + // module: + // dojo/back + + var back = { + // summary: + // Browser history management resources + }; + 1 && lang.setObject("dojo.back", back); + + // everyone deals with encoding the hash slightly differently + + var getHash = back.getHash = function(){ + var h = window.location.hash; + if(h.charAt(0) == "#"){ h = h.substring(1); } + return has("mozilla") ? h : decodeURIComponent(h); + }, + + setHash = back.setHash = function(h){ + if(!h){ h = ""; } + window.location.hash = encodeURIComponent(h); + historyCounter = history.length; + }; + + var initialHref = (typeof(window) !== "undefined") ? window.location.href : ""; + var initialHash = (typeof(window) !== "undefined") ? getHash() : ""; + var initialState = null; + + var locationTimer = null; + var bookmarkAnchor = null; + var historyIframe = null; + var forwardStack = []; + var historyStack = []; + var moveForward = false; + var changingUrl = false; + var historyCounter; + + function handleBackButton(){ + // summary: + // private method. Do not call this directly. + + //The "current" page is always at the top of the history stack. + var current = historyStack.pop(); + if(!current){ return; } + var last = historyStack[historyStack.length-1]; + if(!last && historyStack.length == 0){ + last = initialState; + } + if(last){ + if(last.kwArgs["back"]){ + last.kwArgs["back"](); + }else if(last.kwArgs["backButton"]){ + last.kwArgs["backButton"](); + }else if(last.kwArgs["handle"]){ + last.kwArgs.handle("back"); + } + } + forwardStack.push(current); + } + + back.goBack = handleBackButton; + + function handleForwardButton(){ + // summary: + // private method. Do not call this directly. + var last = forwardStack.pop(); + if(!last){ return; } + if(last.kwArgs["forward"]){ + last.kwArgs.forward(); + }else if(last.kwArgs["forwardButton"]){ + last.kwArgs.forwardButton(); + }else if(last.kwArgs["handle"]){ + last.kwArgs.handle("forward"); + } + historyStack.push(last); + } + + back.goForward = handleForwardButton; + + function createState(url, args, hash){ + // summary: + // private method. Do not call this directly. + return {"url": url, "kwArgs": args, "urlHash": hash}; //Object + } + + function getUrlQuery(url){ + // summary: + // private method. Do not call this directly. + var segments = url.split("?"); + if(segments.length < 2){ + return null; //null + } + else{ + return segments[1]; //String + } + } + + function loadIframeHistory(){ + // summary: + // private method. Do not call this directly. + var url = (config["dojoIframeHistoryUrl"] || require.toUrl("./resources/iframe_history.html")) + "?" + (new Date()).getTime(); + moveForward = true; + if(historyIframe){ + has("webkit") ? historyIframe.location = url : window.frames[historyIframe.name].location = url; + }else{ + //console.warn("dojo/back: Not initialised. You need to call back.init() from a + // + return new NodeList(); // dojo/NodeList + }; + =====*/ + + // the query that is returned from this module is slightly different than dojo.query, + // because dojo.query has to maintain backwards compatibility with returning a + // true array which has performance problems. The query returned from the module + // does not use true arrays, but rather inherits from Array, making it much faster to + // instantiate. + dojo.query = queryForEngine(defaultEngine, function(array){ + // call it without the new operator to invoke the back-compat behavior that returns a true array + return NodeList(array); // dojo/NodeList + }); + + query.load = function(id, parentRequire, loaded){ + // summary: + // can be used as AMD plugin to conditionally load new query engine + // example: + // | require(["dojo/query!custom"], function(qsa){ + // | // loaded selector/custom.js as engine + // | qsa("#foobar").forEach(...); + // | }); + loader.load(id, parentRequire, function(engine){ + loaded(queryForEngine(engine, NodeList)); + }); + }; + + dojo._filterQueryResult = query._filterResult = function(nodes, selector, root){ + return new NodeList(query.filter(nodes, selector, root)); + }; + dojo.NodeList = query.NodeList = NodeList; + return query; +}); + +}, +'dojo/has':function(){ +define(["require", "module"], function(require, module){ + // module: + // dojo/has + // summary: + // Defines the has.js API and several feature tests used by dojo. + // description: + // This module defines the has API as described by the project has.js with the following additional features: + // + // - the has test cache is exposed at has.cache. + // - the method has.add includes a forth parameter that controls whether or not existing tests are replaced + // - the loader's has cache may be optionally copied into this module's has cahce. + // + // This module adopted from https://github.com/phiggins42/has.js; thanks has.js team! + + // try to pull the has implementation from the loader; both the dojo loader and bdLoad provide one + // if using a foreign loader, then the has cache may be initialized via the config object for this module + // WARNING: if a foreign loader defines require.has to be something other than the has.js API, then this implementation fail + var has = require.has || function(){}; + if(! 1 ){ + var + isBrowser = + // the most fundamental decision: are we in the browser? + typeof window != "undefined" && + typeof location != "undefined" && + typeof document != "undefined" && + window.location == location && window.document == document, + + // has API variables + global = (function () { return this; })(), + doc = isBrowser && document, + element = doc && doc.createElement("DiV"), + cache = (module.config && module.config()) || {}; + + has = function(name){ + // summary: + // Return the current value of the named feature. + // + // name: String|Integer + // The name (if a string) or identifier (if an integer) of the feature to test. + // + // description: + // Returns the value of the feature named by name. The feature must have been + // previously added to the cache by has.add. + + return typeof cache[name] == "function" ? (cache[name] = cache[name](global, doc, element)) : cache[name]; // Boolean + }; + + has.cache = cache; + + has.add = function(name, test, now, force){ + // summary: + // Register a new feature test for some named feature. + // name: String|Integer + // The name (if a string) or identifier (if an integer) of the feature to test. + // test: Function + // A test function to register. If a function, queued for testing until actually + // needed. The test function should return a boolean indicating + // the presence of a feature or bug. + // now: Boolean? + // Optional. Omit if `test` is not a function. Provides a way to immediately + // run the test and cache the result. + // force: Boolean? + // Optional. If the test already exists and force is truthy, then the existing + // test will be replaced; otherwise, add does not replace an existing test (that + // is, by default, the first test advice wins). + // example: + // A redundant test, testFn with immediate execution: + // | has.add("javascript", function(){ return true; }, true); + // + // example: + // Again with the redundantness. You can do this in your tests, but we should + // not be doing this in any internal has.js tests + // | has.add("javascript", true); + // + // example: + // Three things are passed to the testFunction. `global`, `document`, and a generic element + // from which to work your test should the need arise. + // | has.add("bug-byid", function(g, d, el){ + // | // g == global, typically window, yadda yadda + // | // d == document object + // | // el == the generic element. a `has` element. + // | return false; // fake test, byid-when-form-has-name-matching-an-id is slightly longer + // | }); + + (typeof cache[name]=="undefined" || force) && (cache[name]= test); + return now && has(name); + }; + + // since we're operating under a loader that doesn't provide a has API, we must explicitly initialize + // has as it would have otherwise been initialized by the dojo loader; use has.add to the builder + // can optimize these away iff desired + 1 || has.add("host-browser", isBrowser); + 0 && has.add("host-node", (typeof process == "object" && process.versions && process.versions.node && process.versions.v8)); + 0 && has.add("host-rhino", (typeof load == "function" && (typeof Packages == "function" || typeof Packages == "object"))); + 1 || has.add("dom", isBrowser); + 1 || has.add("dojo-dom-ready-api", 1); + 1 || has.add("dojo-sniff", 1); + } + + if( 1 ){ + // Common application level tests + has.add("dom-addeventlistener", !!document.addEventListener); + + // Do the device and browser have touch capability? + has.add("touch", "ontouchstart" in document + || ("onpointerdown" in document && navigator.maxTouchPoints > 0) + || window.navigator.msMaxTouchPoints); + + // Touch events support + has.add("touch-events", "ontouchstart" in document); + + // Pointer Events support + has.add("pointer-events", "onpointerdown" in document); + has.add("MSPointer", "msMaxTouchPoints" in navigator); //IE10 (+IE11 preview) + + // I don't know if any of these tests are really correct, just a rough guess + has.add("device-width", screen.availWidth || innerWidth); + + // Tests for DOMNode.attributes[] behavior: + // - dom-attributes-explicit - attributes[] only lists explicitly user specified attributes + // - dom-attributes-specified-flag (IE8) - need to check attr.specified flag to skip attributes user didn't specify + // - Otherwise, in IE6-7. attributes[] will list hundreds of values, so need to do outerHTML to get attrs instead. + var form = document.createElement("form"); + has.add("dom-attributes-explicit", form.attributes.length == 0); // W3C + has.add("dom-attributes-specified-flag", form.attributes.length > 0 && form.attributes.length < 40); // IE8 + } + + has.clearElement = function(element){ + // summary: + // Deletes the contents of the element passed to test functions. + element.innerHTML= ""; + return element; + }; + + has.normalize = function(id, toAbsMid){ + // summary: + // Resolves id into a module id based on possibly-nested tenary expression that branches on has feature test value(s). + // + // toAbsMid: Function + // Resolves a relative module id into an absolute module id + var + tokens = id.match(/[\?:]|[^:\?]*/g), i = 0, + get = function(skip){ + var term = tokens[i++]; + if(term == ":"){ + // empty string module name, resolves to 0 + return 0; + }else{ + // postfixed with a ? means it is a feature to branch on, the term is the name of the feature + if(tokens[i++] == "?"){ + if(!skip && has(term)){ + // matched the feature, get the first value from the options + return get(); + }else{ + // did not match, get the second value, passing over the first + get(true); + return get(skip); + } + } + // a module + return term || 0; + } + }; + id = get(); + return id && toAbsMid(id); + }; + + has.load = function(id, parentRequire, loaded){ + // summary: + // Conditional loading of AMD modules based on a has feature test value. + // id: String + // Gives the resolved module id to load. + // parentRequire: Function + // The loader require function with respect to the module that contained the plugin resource in it's + // dependency list. + // loaded: Function + // Callback to loader that consumes result of plugin demand. + + if(id){ + parentRequire([id], loaded); + }else{ + loaded(); + } + }; + + return has; +}); + +}, +'dojo/_base/loader':function(){ +define(["./kernel", "../has", "require", "module", "../json", "./lang", "./array"], function(dojo, has, require, thisModule, json, lang, array) { + // module: + // dojo/_base/loader + + // This module defines the v1.x synchronous loader API. + + // signal the loader in sync mode... + //>>pure-amd + + if (! 1 ){ + console.error("cannot load the Dojo v1.x loader with a foreign loader"); + return 0; + } + + 1 || has.add("dojo-fast-sync-require", 1); + + + var makeErrorToken = function(id){ + return {src:thisModule.id, id:id}; + }, + + slashName = function(name){ + return name.replace(/\./g, "/"); + }, + + buildDetectRe = /\/\/>>built/, + + dojoRequireCallbacks = [], + dojoRequireModuleStack = [], + + dojoRequirePlugin = function(mid, require, loaded){ + dojoRequireCallbacks.push(loaded); + array.forEach(mid.split(","), function(mid){ + var module = getModule(mid, require.module); + dojoRequireModuleStack.push(module); + injectModule(module); + }); + checkDojoRequirePlugin(); + }, + + checkDojoRequirePlugin = ( 1 ? + // This version of checkDojoRequirePlugin makes the observation that all dojoRequireCallbacks can be released + // when all *non-dojo/require!, dojo/loadInit!* modules are either executed, not requested, or arrived. This is + // the case since there are no more modules the loader is waiting for, therefore, dojo/require! must have + // everything it needs on board. + // + // The potential weakness of this algorithm is that dojo/require will not execute callbacks until *all* dependency + // trees are ready. It is possible that some trees may be ready earlier than others, and this extra wait is non-optimal. + // Still, for big projects, this seems better than the original algorithm below that proved slow in some cases. + // Note, however, the original algorithm had the potential to execute partial trees, but that potential was never enabled. + // There are also other optimization available with the original algorithm that have not been explored. + function(){ + var module, mid; + for(mid in modules){ + module = modules[mid]; + if(module.noReqPluginCheck===undefined){ + // tag the module as either a loadInit or require plugin or not for future reference + module.noReqPluginCheck = /loadInit\!/.test(mid) || /require\!/.test(mid) ? 1 : 0; + } + if(!module.executed && !module.noReqPluginCheck && module.injected==requested){ + return; + } + } + + guardCheckComplete(function(){ + var oldCallbacks = dojoRequireCallbacks; + dojoRequireCallbacks = []; + array.forEach(oldCallbacks, function(cb){cb(1);}); + }); + } : (function(){ + // Note: this is the original checkDojoRequirePlugin that is much slower than the algorithm above. However, we know it + // works, so we leave it here in case the algorithm above fails in some corner case. + // + // checkDojoRequirePlugin inspects all of the modules demanded by a dojo/require! dependency + // to see if they have arrived. The loader does not release *any* of these modules to be instantiated + // until *all* of these modules are on board, thereby preventing the evaluation of a module with dojo.require's + // that reference modules that are not available. + // + // The algorithm works by traversing the dependency graphs (remember, there can be cycles so they are not trees) + // of each module in the dojoRequireModuleStack array (which contains the list of modules demanded by dojo/require!). + // The moment a single module is discovered that is missing, the algorithm gives up and indicates that not all + // modules are on board. dojo/loadInit! and dojo/require! are ignored because there dependencies are inserted + // directly in dojoRequireModuleStack. For example, if "your/module" module depends on "dojo/require!my/module", then + // *both* "dojo/require!my/module" and "my/module" will be in dojoRequireModuleStack. Obviously, if "my/module" + // is on board, then "dojo/require!my/module" is also satisfied, so the algorithm doesn't check for "dojo/require!my/module". + // + // Note: inserting a dojo/require! dependency in the dojoRequireModuleStack achieves nothing + // with the current algorithm; however, having such modules present makes it possible to optimize the algorithm + // + // Note: prior versions of this algorithm had an optimization that signaled loaded on dojo/require! dependencies + // individually (rather than waiting for them all to be resolved). The implementation proved problematic with cycles + // and plugins. However, it is possible to reattach that strategy in the future. + + // a set from module-id to {undefined | 1 | 0}, where... + // undefined => the module has not been inspected + // 0 => the module or at least one of its dependencies has not arrived + // 1 => the module is a loadInit! or require! plugin resource, or is currently being traversed (therefore, assume + // OK until proven otherwise), or has been completely traversed and all dependencies have arrived + + var touched, + traverse = function(m){ + touched[m.mid] = 1; + for(var t, module, deps = m.deps || [], i= 0; i a built module, always AMD + // extractResult==0 => no sync API + return 0; + } + + // manufacture a synthetic module id that can never be a real mdule id (just like require does) + id = module.mid + "-*loadInit"; + + // construct the dojo/loadInit names vector which causes any relocated names to be defined as lexical variables under their not-relocated name + // the dojo/loadInit plugin assumes the first name in names is "dojo" + + for(var p in getModule("dojo", module).result.scopeMap){ + names.push(p); + namesAsStrings.push('"' + p + '"'); + } + + // rewrite the module as a synthetic dojo/loadInit plugin resource + the module expressed as an AMD module that depends on this synthetic resource + // don't have to map dojo/init since that will occur when the dependency is resolved + return "// xdomain rewrite of " + module.mid + "\n" + + "define('" + id + "',{\n" + + "\tnames:" + json.stringify(names) + ",\n" + + "\tdef:function(" + names.join(",") + "){" + extractResult[1] + "}" + + "});\n\n" + + "define(" + json.stringify(names.concat(["dojo/loadInit!"+id])) + ", function(" + names.join(",") + "){\n" + extractResult[0] + "});"; + }, + + loaderVars = require.initSyncLoader(dojoRequirePlugin, checkDojoRequirePlugin, transformToAmd), + + sync = + loaderVars.sync, + + requested = + loaderVars.requested, + + arrived = + loaderVars.arrived, + + nonmodule = + loaderVars.nonmodule, + + executing = + loaderVars.executing, + + executed = + loaderVars.executed, + + syncExecStack = + loaderVars.syncExecStack, + + modules = + loaderVars.modules, + + execQ = + loaderVars.execQ, + + getModule = + loaderVars.getModule, + + injectModule = + loaderVars.injectModule, + + setArrived = + loaderVars.setArrived, + + signal = + loaderVars.signal, + + finishExec = + loaderVars.finishExec, + + execModule = + loaderVars.execModule, + + getLegacyMode = + loaderVars.getLegacyMode, + + guardCheckComplete = + loaderVars.guardCheckComplete; + + // there is exactly one dojoRequirePlugin among possibly-many dojo/_base/loader's (owing to mapping) + dojoRequirePlugin = loaderVars.dojoRequirePlugin; + + dojo.provide = function(mid){ + var executingModule = syncExecStack[0], + module = lang.mixin(getModule(slashName(mid), require.module), { + executed:executing, + result:lang.getObject(mid, true) + }); + setArrived(module); + if(executingModule){ + (executingModule.provides || (executingModule.provides = [])).push(function(){ + module.result = lang.getObject(mid); + delete module.provides; + module.executed!==executed && finishExec(module); + }); + }// else dojo.provide called not consequent to loading; therefore, give up trying to publish module value to loader namespace + return module.result; + }; + + has.add("config-publishRequireResult", 1, 0, 0); + + dojo.require = function(moduleName, omitModuleCheck) { + // summary: + // loads a Javascript module from the appropriate URI + // + // moduleName: String + // module name to load, using periods for separators, + // e.g. "dojo.date.locale". Module paths are de-referenced by dojo's + // internal mapping of locations to names and are disambiguated by + // longest prefix. See `dojo.registerModulePath()` for details on + // registering new modules. + // + // omitModuleCheck: Boolean? + // if `true`, omitModuleCheck skips the step of ensuring that the + // loaded file actually defines the symbol it is referenced by. + // For example if it called as `dojo.require("a.b.c")` and the + // file located at `a/b/c.js` does not define an object `a.b.c`, + // and exception will be throws whereas no exception is raised + // when called as `dojo.require("a.b.c", true)` + // + // description: + // Modules are loaded via dojo.require by using one of two loaders: the normal loader + // and the xdomain loader. The xdomain loader is used when dojo was built with a + // custom build that specified loader=xdomain and the module lives on a modulePath + // that is a whole URL, with protocol and a domain. The versions of Dojo that are on + // the Google and AOL CDNs use the xdomain loader. + // + // If the module is loaded via the xdomain loader, it is an asynchronous load, since + // the module is added via a dynamically created script tag. This + // means that dojo.require() can return before the module has loaded. However, this + // should only happen in the case where you do dojo.require calls in the top-level + // HTML page, or if you purposely avoid the loader checking for dojo.require + // dependencies in your module by using a syntax like dojo["require"] to load the module. + // + // Sometimes it is useful to not have the loader detect the dojo.require calls in the + // module so that you can dynamically load the modules as a result of an action on the + // page, instead of right at module load time. + // + // Also, for script blocks in an HTML page, the loader does not pre-process them, so + // it does not know to download the modules before the dojo.require calls occur. + // + // So, in those two cases, when you want on-the-fly module loading or for script blocks + // in the HTML page, special care must be taken if the dojo.required code is loaded + // asynchronously. To make sure you can execute code that depends on the dojo.required + // modules, be sure to add the code that depends on the modules in a dojo.addOnLoad() + // callback. dojo.addOnLoad waits for all outstanding modules to finish loading before + // executing. + // + // This type of syntax works with both xdomain and normal loaders, so it is good + // practice to always use this idiom for on-the-fly code loading and in HTML script + // blocks. If at some point you change loaders and where the code is loaded from, + // it will all still work. + // + // More on how dojo.require + // `dojo.require("A.B")` first checks to see if symbol A.B is + // defined. If it is, it is simply returned (nothing to do). + // + // If it is not defined, it will look for `A/B.js` in the script root + // directory. + // + // `dojo.require` throws an exception if it cannot find a file + // to load, or if the symbol `A.B` is not defined after loading. + // + // It returns the object `A.B`, but note the caveats above about on-the-fly loading and + // HTML script blocks when the xdomain loader is loading a module. + // + // `dojo.require()` does nothing about importing symbols into + // the current namespace. It is presumed that the caller will + // take care of that. + // + // example: + // To use dojo.require in conjunction with dojo.ready: + // + // | dojo.require("foo"); + // | dojo.require("bar"); + // | dojo.addOnLoad(function(){ + // | //you can now safely do something with foo and bar + // | }); + // + // example: + // For example, to import all symbols into a local block, you might write: + // + // | with (dojo.require("A.B")) { + // | ... + // | } + // + // And to import just the leaf symbol to a local variable: + // + // | var B = dojo.require("A.B"); + // | ... + // + // returns: + // the required namespace object + function doRequire(mid, omitModuleCheck){ + var module = getModule(slashName(mid), require.module); + if(syncExecStack.length && syncExecStack[0].finish){ + // switched to async loading in the middle of evaluating a legacy module; stop + // applying dojo.require so the remaining dojo.requires are applied in order + syncExecStack[0].finish.push(mid); + return undefined; + } + + // recall module.executed has values {0, executing, executed}; therefore, truthy indicates executing or executed + if(module.executed){ + return module.result; + } + omitModuleCheck && (module.result = nonmodule); + + // rcg...why here and in two lines?? + var currentMode = getLegacyMode(); + + // recall, in sync mode to inject is to *eval* the module text + // if the module is a legacy module, this is the same as executing + // but if the module is an AMD module, this means defining, not executing + injectModule(module); + // the inject may have changed the mode + currentMode = getLegacyMode(); + + // in sync mode to dojo.require is to execute + if(module.executed!==executed && module.injected===arrived){ + // the module was already here before injectModule was called probably finishing up a xdomain + // load, but maybe a module given to the loader directly rather than having the loader retrieve it + + loaderVars.guardCheckComplete(function(){ + execModule(module); + }); + } + if(module.executed){ + return module.result; + } + + if(currentMode==sync){ + // the only way to get here is in sync mode and dojo.required a module that + // * was loaded async in the injectModule application a few lines up + // * was an AMD module that had deps that are being loaded async and therefore couldn't execute + if(module.cjs){ + // the module was an AMD module; unshift, not push, which causes the current traversal to be reattempted from the top + execQ.unshift(module); + }else{ + // the module was a legacy module + syncExecStack.length && (syncExecStack[0].finish= [mid]); + } + }else{ + // the loader wasn't in sync mode on entry; probably async mode; therefore, no expectation of getting + // the module value synchronously; make sure it gets executed though + execQ.push(module); + } + + return undefined; + } + + var result = doRequire(moduleName, omitModuleCheck); + if(has("config-publishRequireResult") && !lang.exists(moduleName) && result!==undefined){ + lang.setObject(moduleName, result); + } + return result; + }; + + dojo.loadInit = function(f) { + f(); + }; + + dojo.registerModulePath = function(/*String*/moduleName, /*String*/prefix){ + // summary: + // Maps a module name to a path + // description: + // An unregistered module is given the default path of ../[module], + // relative to Dojo root. For example, module acme is mapped to + // ../acme. If you want to use a different module name, use + // dojo.registerModulePath. + // example: + // If your dojo.js is located at this location in the web root: + // | /myapp/js/dojo/dojo/dojo.js + // and your modules are located at: + // | /myapp/js/foo/bar.js + // | /myapp/js/foo/baz.js + // | /myapp/js/foo/thud/xyzzy.js + // Your application can tell Dojo to locate the "foo" namespace by calling: + // | dojo.registerModulePath("foo", "../../foo"); + // At which point you can then use dojo.require() to load the + // modules (assuming they provide() the same things which are + // required). The full code might be: + // | + // | + + var paths = {}; + paths[moduleName.replace(/\./g, "/")] = prefix; + require({paths:paths}); + }; + + dojo.platformRequire = function(/*Object*/modMap){ + // summary: + // require one or more modules based on which host environment + // Dojo is currently operating in + // description: + // This method takes a "map" of arrays which one can use to + // optionally load dojo modules. The map is indexed by the + // possible dojo.name_ values, with two additional values: + // "default" and "common". The items in the "default" array will + // be loaded if none of the other items have been chosen based on + // dojo.name_, set by your host environment. The items in the + // "common" array will *always* be loaded, regardless of which + // list is chosen. + // example: + // | dojo.platformRequire({ + // | browser: [ + // | "foo.sample", // simple module + // | "foo.test", + // | ["foo.bar.baz", true] // skip object check in _loadModule (dojo.require) + // | ], + // | default: [ "foo.sample._base" ], + // | common: [ "important.module.common" ] + // | }); + + var result = (modMap.common || []).concat(modMap[dojo._name] || modMap["default"] || []), + temp; + while(result.length){ + if(lang.isArray(temp = result.shift())){ + dojo.require.apply(dojo, temp); + }else{ + dojo.require(temp); + } + } + }; + + dojo.requireIf = dojo.requireAfterIf = function(/*Boolean*/ condition, /*String*/ moduleName, /*Boolean?*/omitModuleCheck){ + // summary: + // If the condition is true then call `dojo.require()` for the specified + // resource + // + // example: + // | dojo.requireIf(dojo.isBrowser, "my.special.Module"); + + if(condition){ + dojo.require(moduleName, omitModuleCheck); + } + }; + + dojo.requireLocalization = function(/*String*/moduleName, /*String*/bundleName, /*String?*/locale){ + require(["../i18n"], function(i18n){ + i18n.getLocalization(moduleName, bundleName, locale); + }); + }; + + return { + // summary: + // This module defines the v1.x synchronous loader API. + + extractLegacyApiApplications:extractLegacyApiApplications, + require:dojoRequirePlugin, + loadInit:dojoLoadInitPlugin + }; +}); + +}, +'dojo/json':function(){ +define(["./has"], function(has){ + "use strict"; + var hasJSON = typeof JSON != "undefined"; + has.add("json-parse", hasJSON); // all the parsers work fine + // Firefox 3.5/Gecko 1.9 fails to use replacer in stringify properly https://bugzilla.mozilla.org/show_bug.cgi?id=509184 + has.add("json-stringify", hasJSON && JSON.stringify({a:0}, function(k,v){return v||1;}) == '{"a":1}'); + + /*===== + return { + // summary: + // Functions to parse and serialize JSON + + parse: function(str, strict){ + // summary: + // Parses a [JSON](http://json.org) string to return a JavaScript object. + // description: + // This function follows [native JSON API](https://developer.mozilla.org/en/JSON) + // Throws for invalid JSON strings. This delegates to eval() if native JSON + // support is not available. By default this will evaluate any valid JS expression. + // With the strict parameter set to true, the parser will ensure that only + // valid JSON strings are parsed (otherwise throwing an error). Without the strict + // parameter, the content passed to this method must come + // from a trusted source. + // str: + // a string literal of a JSON item, for instance: + // `'{ "foo": [ "bar", 1, { "baz": "thud" } ] }'` + // strict: + // When set to true, this will ensure that only valid, secure JSON is ever parsed. + // Make sure this is set to true for untrusted content. Note that on browsers/engines + // without native JSON support, setting this to true will run slower. + }, + stringify: function(value, replacer, spacer){ + // summary: + // Returns a [JSON](http://json.org) serialization of an object. + // description: + // Returns a [JSON](http://json.org) serialization of an object. + // This function follows [native JSON API](https://developer.mozilla.org/en/JSON) + // Note that this doesn't check for infinite recursion, so don't do that! + // value: + // A value to be serialized. + // replacer: + // A replacer function that is called for each value and can return a replacement + // spacer: + // A spacer string to be used for pretty printing of JSON + // example: + // simple serialization of a trivial object + // | define(["dojo/json"], function(JSON){ + // | var jsonStr = JSON.stringify({ howdy: "stranger!", isStrange: true }); + // | doh.is('{"howdy":"stranger!","isStrange":true}', jsonStr); + } + }; + =====*/ + + if(has("json-stringify")){ + return JSON; + }else{ + var escapeString = function(/*String*/str){ + // summary: + // Adds escape sequences for non-visual characters, double quote and + // backslash and surrounds with double quotes to form a valid string + // literal. + return ('"' + str.replace(/(["\\])/g, '\\$1') + '"'). + replace(/[\f]/g, "\\f").replace(/[\b]/g, "\\b").replace(/[\n]/g, "\\n"). + replace(/[\t]/g, "\\t").replace(/[\r]/g, "\\r"); // string + }; + return { + parse: has("json-parse") ? JSON.parse : function(str, strict){ + if(strict && !/^([\s\[\{]*(?:"(?:\\.|[^"])*"|-?\d[\d\.]*(?:[Ee][+-]?\d+)?|null|true|false|)[\s\]\}]*(?:,|:|$))+$/.test(str)){ + throw new SyntaxError("Invalid characters in JSON"); + } + return eval('(' + str + ')'); + }, + stringify: function(value, replacer, spacer){ + var undef; + if(typeof replacer == "string"){ + spacer = replacer; + replacer = null; + } + function stringify(it, indent, key){ + if(replacer){ + it = replacer(key, it); + } + var val, objtype = typeof it; + if(objtype == "number"){ + return isFinite(it) ? it + "" : "null"; + } + if(objtype == "boolean"){ + return it + ""; + } + if(it === null){ + return "null"; + } + if(typeof it == "string"){ + return escapeString(it); + } + if(objtype == "function" || objtype == "undefined"){ + return undef; // undefined + } + // short-circuit for objects that support "json" serialization + // if they return "self" then just pass-through... + if(typeof it.toJSON == "function"){ + return stringify(it.toJSON(key), indent, key); + } + if(it instanceof Date){ + return '"{FullYear}-{Month+}-{Date}T{Hours}:{Minutes}:{Seconds}Z"'.replace(/\{(\w+)(\+)?\}/g, function(t, prop, plus){ + var num = it["getUTC" + prop]() + (plus ? 1 : 0); + return num < 10 ? "0" + num : num; + }); + } + if(it.valueOf() !== it){ + // primitive wrapper, try again unwrapped: + return stringify(it.valueOf(), indent, key); + } + var nextIndent= spacer ? (indent + spacer) : ""; + /* we used to test for DOM nodes and throw, but FF serializes them as {}, so cross-browser consistency is probably not efficiently attainable */ + + var sep = spacer ? " " : ""; + var newLine = spacer ? "\n" : ""; + + // array + if(it instanceof Array){ + var itl = it.length, res = []; + for(key = 0; key < itl; key++){ + var obj = it[key]; + val = stringify(obj, nextIndent, key); + if(typeof val != "string"){ + val = "null"; + } + res.push(newLine + nextIndent + val); + } + return "[" + res.join(",") + newLine + indent + "]"; + } + // generic object code path + var output = []; + for(key in it){ + var keyStr; + if(it.hasOwnProperty(key)){ + if(typeof key == "number"){ + keyStr = '"' + key + '"'; + }else if(typeof key == "string"){ + keyStr = escapeString(key); + }else{ + // skip non-string or number keys + continue; + } + val = stringify(it[key], nextIndent, key); + if(typeof val != "string"){ + // skip non-serializable values + continue; + } + // At this point, the most non-IE browsers don't get in this branch + // (they have native JSON), so push is definitely the way to + output.push(newLine + nextIndent + keyStr + ":" + sep + val); + } + } + return "{" + output.join(",") + newLine + indent + "}"; // String + } + return stringify(value, "", ""); + } + }; + } +}); + +}, +'dojo/_base/declare':function(){ +define(["./kernel", "../has", "./lang"], function(dojo, has, lang){ + // module: + // dojo/_base/declare + + var mix = lang.mixin, op = Object.prototype, opts = op.toString, + xtor = new Function, counter = 0, cname = "constructor"; + + function err(msg, cls){ throw new Error("declare" + (cls ? " " + cls : "") + ": " + msg); } + + // C3 Method Resolution Order (see http://www.python.org/download/releases/2.3/mro/) + function c3mro(bases, className){ + var result = [], roots = [{cls: 0, refs: []}], nameMap = {}, clsCount = 1, + l = bases.length, i = 0, j, lin, base, top, proto, rec, name, refs; + + // build a list of bases naming them if needed + for(; i < l; ++i){ + base = bases[i]; + if(!base){ + err("mixin #" + i + " is unknown. Did you use dojo.require to pull it in?", className); + }else if(opts.call(base) != "[object Function]"){ + err("mixin #" + i + " is not a callable constructor.", className); + } + lin = base._meta ? base._meta.bases : [base]; + top = 0; + // add bases to the name map + for(j = lin.length - 1; j >= 0; --j){ + proto = lin[j].prototype; + if(!proto.hasOwnProperty("declaredClass")){ + proto.declaredClass = "uniqName_" + (counter++); + } + name = proto.declaredClass; + if(!nameMap.hasOwnProperty(name)){ + nameMap[name] = {count: 0, refs: [], cls: lin[j]}; + ++clsCount; + } + rec = nameMap[name]; + if(top && top !== rec){ + rec.refs.push(top); + ++top.count; + } + top = rec; + } + ++top.count; + roots[0].refs.push(top); + } + + // remove classes without external references recursively + while(roots.length){ + top = roots.pop(); + result.push(top.cls); + --clsCount; + // optimization: follow a single-linked chain + while(refs = top.refs, refs.length == 1){ + top = refs[0]; + if(!top || --top.count){ + // branch or end of chain => do not end to roots + top = 0; + break; + } + result.push(top.cls); + --clsCount; + } + if(top){ + // branch + for(i = 0, l = refs.length; i < l; ++i){ + top = refs[i]; + if(!--top.count){ + roots.push(top); + } + } + } + } + if(clsCount){ + err("can't build consistent linearization", className); + } + + // calculate the superclass offset + base = bases[0]; + result[0] = base ? + base._meta && base === result[result.length - base._meta.bases.length] ? + base._meta.bases.length : 1 : 0; + + return result; + } + + function inherited(args, a, f){ + var name, chains, bases, caller, meta, base, proto, opf, pos, + cache = this._inherited = this._inherited || {}; + + // crack arguments + if(typeof args == "string"){ + name = args; + args = a; + a = f; + } + f = 0; + + caller = args.callee; + name = name || caller.nom; + if(!name){ + err("can't deduce a name to call inherited()", this.declaredClass); + } + + meta = this.constructor._meta; + bases = meta.bases; + + pos = cache.p; + if(name != cname){ + // method + if(cache.c !== caller){ + // cache bust + pos = 0; + base = bases[0]; + meta = base._meta; + if(meta.hidden[name] !== caller){ + // error detection + chains = meta.chains; + if(chains && typeof chains[name] == "string"){ + err("calling chained method with inherited: " + name, this.declaredClass); + } + // find caller + do{ + meta = base._meta; + proto = base.prototype; + if(meta && (proto[name] === caller && proto.hasOwnProperty(name) || meta.hidden[name] === caller)){ + break; + } + }while(base = bases[++pos]); // intentional assignment + pos = base ? pos : -1; + } + } + // find next + base = bases[++pos]; + if(base){ + proto = base.prototype; + if(base._meta && proto.hasOwnProperty(name)){ + f = proto[name]; + }else{ + opf = op[name]; + do{ + proto = base.prototype; + f = proto[name]; + if(f && (base._meta ? proto.hasOwnProperty(name) : f !== opf)){ + break; + } + }while(base = bases[++pos]); // intentional assignment + } + } + f = base && f || op[name]; + }else{ + // constructor + if(cache.c !== caller){ + // cache bust + pos = 0; + meta = bases[0]._meta; + if(meta && meta.ctor !== caller){ + // error detection + chains = meta.chains; + if(!chains || chains.constructor !== "manual"){ + err("calling chained constructor with inherited", this.declaredClass); + } + // find caller + while(base = bases[++pos]){ // intentional assignment + meta = base._meta; + if(meta && meta.ctor === caller){ + break; + } + } + pos = base ? pos : -1; + } + } + // find next + while(base = bases[++pos]){ // intentional assignment + meta = base._meta; + f = meta ? meta.ctor : base; + if(f){ + break; + } + } + f = base && f; + } + + // cache the found super method + cache.c = f; + cache.p = pos; + + // now we have the result + if(f){ + return a === true ? f : f.apply(this, a || args); + } + // intentionally no return if a super method was not found + } + + function getInherited(name, args){ + if(typeof name == "string"){ + return this.__inherited(name, args, true); + } + return this.__inherited(name, true); + } + + function inherited__debug(args, a1, a2){ + var f = this.getInherited(args, a1); + if(f){ return f.apply(this, a2 || a1 || args); } + // intentionally no return if a super method was not found + } + + var inheritedImpl = dojo.config.isDebug ? inherited__debug : inherited; + + // emulation of "instanceof" + function isInstanceOf(cls){ + var bases = this.constructor._meta.bases; + for(var i = 0, l = bases.length; i < l; ++i){ + if(bases[i] === cls){ + return true; + } + } + return this instanceof cls; + } + + function mixOwn(target, source){ + // add props adding metadata for incoming functions skipping a constructor + for(var name in source){ + if(name != cname && source.hasOwnProperty(name)){ + target[name] = source[name]; + } + } + if(has("bug-for-in-skips-shadowed")){ + for(var extraNames= lang._extraNames, i= extraNames.length; i;){ + name = extraNames[--i]; + if(name != cname && source.hasOwnProperty(name)){ + target[name] = source[name]; + } + } + } + } + + // implementation of safe mixin function + function safeMixin(target, source){ + // summary: + // Mix in properties skipping a constructor and decorating functions + // like it is done by declare(). + // target: Object + // Target object to accept new properties. + // source: Object + // Source object for new properties. + // description: + // This function is used to mix in properties like lang.mixin does, + // but it skips a constructor property and decorates functions like + // declare() does. + // + // It is meant to be used with classes and objects produced with + // declare. Functions mixed in with dojo.safeMixin can use + // this.inherited() like normal methods. + // + // This function is used to implement extend() method of a constructor + // produced with declare(). + // + // example: + // | var A = declare(null, { + // | m1: function(){ + // | console.log("A.m1"); + // | }, + // | m2: function(){ + // | console.log("A.m2"); + // | } + // | }); + // | var B = declare(A, { + // | m1: function(){ + // | this.inherited(arguments); + // | console.log("B.m1"); + // | } + // | }); + // | B.extend({ + // | m2: function(){ + // | this.inherited(arguments); + // | console.log("B.m2"); + // | } + // | }); + // | var x = new B(); + // | dojo.safeMixin(x, { + // | m1: function(){ + // | this.inherited(arguments); + // | console.log("X.m1"); + // | }, + // | m2: function(){ + // | this.inherited(arguments); + // | console.log("X.m2"); + // | } + // | }); + // | x.m2(); + // | // prints: + // | // A.m1 + // | // B.m1 + // | // X.m1 + + var name, t; + // add props adding metadata for incoming functions skipping a constructor + for(name in source){ + t = source[name]; + if((t !== op[name] || !(name in op)) && name != cname){ + if(opts.call(t) == "[object Function]"){ + // non-trivial function method => attach its name + t.nom = name; + } + target[name] = t; + } + } + if(has("bug-for-in-skips-shadowed")){ + for(var extraNames= lang._extraNames, i= extraNames.length; i;){ + name = extraNames[--i]; + t = source[name]; + if((t !== op[name] || !(name in op)) && name != cname){ + if(opts.call(t) == "[object Function]"){ + // non-trivial function method => attach its name + t.nom = name; + } + target[name] = t; + } + } + } + return target; + } + + function extend(source){ + declare.safeMixin(this.prototype, source); + return this; + } + + function createSubclass(mixins, props){ + // crack parameters + if(!(mixins instanceof Array || typeof mixins == 'function')){ + props = mixins; + mixins = undefined; + } + + props = props || {}; + mixins = mixins || []; + + return declare([this].concat(mixins), props); + } + + // chained constructor compatible with the legacy declare() + function chainedConstructor(bases, ctorSpecial){ + return function(){ + var a = arguments, args = a, a0 = a[0], f, i, m, + l = bases.length, preArgs; + + if(!(this instanceof a.callee)){ + // not called via new, so force it + return applyNew(a); + } + + //this._inherited = {}; + // perform the shaman's rituals of the original declare() + // 1) call two types of the preamble + if(ctorSpecial && (a0 && a0.preamble || this.preamble)){ + // full blown ritual + preArgs = new Array(bases.length); + // prepare parameters + preArgs[0] = a; + for(i = 0;;){ + // process the preamble of the 1st argument + a0 = a[0]; + if(a0){ + f = a0.preamble; + if(f){ + a = f.apply(this, a) || a; + } + } + // process the preamble of this class + f = bases[i].prototype; + f = f.hasOwnProperty("preamble") && f.preamble; + if(f){ + a = f.apply(this, a) || a; + } + // one peculiarity of the preamble: + // it is called if it is not needed, + // e.g., there is no constructor to call + // let's watch for the last constructor + // (see ticket #9795) + if(++i == l){ + break; + } + preArgs[i] = a; + } + } + // 2) call all non-trivial constructors using prepared arguments + for(i = l - 1; i >= 0; --i){ + f = bases[i]; + m = f._meta; + f = m ? m.ctor : f; + if(f){ + f.apply(this, preArgs ? preArgs[i] : a); + } + } + // 3) continue the original ritual: call the postscript + f = this.postscript; + if(f){ + f.apply(this, args); + } + }; + } + + + // chained constructor compatible with the legacy declare() + function singleConstructor(ctor, ctorSpecial){ + return function(){ + var a = arguments, t = a, a0 = a[0], f; + + if(!(this instanceof a.callee)){ + // not called via new, so force it + return applyNew(a); + } + + //this._inherited = {}; + // perform the shaman's rituals of the original declare() + // 1) call two types of the preamble + if(ctorSpecial){ + // full blown ritual + if(a0){ + // process the preamble of the 1st argument + f = a0.preamble; + if(f){ + t = f.apply(this, t) || t; + } + } + f = this.preamble; + if(f){ + // process the preamble of this class + f.apply(this, t); + // one peculiarity of the preamble: + // it is called even if it is not needed, + // e.g., there is no constructor to call + // let's watch for the last constructor + // (see ticket #9795) + } + } + // 2) call a constructor + if(ctor){ + ctor.apply(this, a); + } + // 3) continue the original ritual: call the postscript + f = this.postscript; + if(f){ + f.apply(this, a); + } + }; + } + + // plain vanilla constructor (can use inherited() to call its base constructor) + function simpleConstructor(bases){ + return function(){ + var a = arguments, i = 0, f, m; + + if(!(this instanceof a.callee)){ + // not called via new, so force it + return applyNew(a); + } + + //this._inherited = {}; + // perform the shaman's rituals of the original declare() + // 1) do not call the preamble + // 2) call the top constructor (it can use this.inherited()) + for(; f = bases[i]; ++i){ // intentional assignment + m = f._meta; + f = m ? m.ctor : f; + if(f){ + f.apply(this, a); + break; + } + } + // 3) call the postscript + f = this.postscript; + if(f){ + f.apply(this, a); + } + }; + } + + function chain(name, bases, reversed){ + return function(){ + var b, m, f, i = 0, step = 1; + if(reversed){ + i = bases.length - 1; + step = -1; + } + for(; b = bases[i]; i += step){ // intentional assignment + m = b._meta; + f = (m ? m.hidden : b.prototype)[name]; + if(f){ + f.apply(this, arguments); + } + } + }; + } + + // forceNew(ctor) + // return a new object that inherits from ctor.prototype but + // without actually running ctor on the object. + function forceNew(ctor){ + // create object with correct prototype using a do-nothing + // constructor + xtor.prototype = ctor.prototype; + var t = new xtor; + xtor.prototype = null; // clean up + return t; + } + + // applyNew(args) + // just like 'new ctor()' except that the constructor and its arguments come + // from args, which must be an array or an arguments object + function applyNew(args){ + // create an object with ctor's prototype but without + // calling ctor on it. + var ctor = args.callee, t = forceNew(ctor); + // execute the real constructor on the new object + ctor.apply(t, args); + return t; + } + + function declare(className, superclass, props){ + // summary: + // Create a feature-rich constructor from compact notation. + // className: String? + // The optional name of the constructor (loosely, a "class") + // stored in the "declaredClass" property in the created prototype. + // It will be used as a global name for a created constructor. + // superclass: Function|Function[] + // May be null, a Function, or an Array of Functions. This argument + // specifies a list of bases (the left-most one is the most deepest + // base). + // props: Object + // An object whose properties are copied to the created prototype. + // Add an instance-initialization function by making it a property + // named "constructor". + // returns: dojo/_base/declare.__DeclareCreatedObject + // New constructor function. + // description: + // Create a constructor using a compact notation for inheritance and + // prototype extension. + // + // Mixin ancestors provide a type of multiple inheritance. + // Prototypes of mixin ancestors are copied to the new class: + // changes to mixin prototypes will not affect classes to which + // they have been mixed in. + // + // Ancestors can be compound classes created by this version of + // declare(). In complex cases all base classes are going to be + // linearized according to C3 MRO algorithm + // (see http://www.python.org/download/releases/2.3/mro/ for more + // details). + // + // "className" is cached in "declaredClass" property of the new class, + // if it was supplied. The immediate super class will be cached in + // "superclass" property of the new class. + // + // Methods in "props" will be copied and modified: "nom" property + // (the declared name of the method) will be added to all copied + // functions to help identify them for the internal machinery. Be + // very careful, while reusing methods: if you use the same + // function under different names, it can produce errors in some + // cases. + // + // It is possible to use constructors created "manually" (without + // declare()) as bases. They will be called as usual during the + // creation of an instance, their methods will be chained, and even + // called by "this.inherited()". + // + // Special property "-chains-" governs how to chain methods. It is + // a dictionary, which uses method names as keys, and hint strings + // as values. If a hint string is "after", this method will be + // called after methods of its base classes. If a hint string is + // "before", this method will be called before methods of its base + // classes. + // + // If "constructor" is not mentioned in "-chains-" property, it will + // be chained using the legacy mode: using "after" chaining, + // calling preamble() method before each constructor, if available, + // and calling postscript() after all constructors were executed. + // If the hint is "after", it is chained as a regular method, but + // postscript() will be called after the chain of constructors. + // "constructor" cannot be chained "before", but it allows + // a special hint string: "manual", which means that constructors + // are not going to be chained in any way, and programmer will call + // them manually using this.inherited(). In the latter case + // postscript() will be called after the construction. + // + // All chaining hints are "inherited" from base classes and + // potentially can be overridden. Be very careful when overriding + // hints! Make sure that all chained methods can work in a proposed + // manner of chaining. + // + // Once a method was chained, it is impossible to unchain it. The + // only exception is "constructor". You don't need to define a + // method in order to supply a chaining hint. + // + // If a method is chained, it cannot use this.inherited() because + // all other methods in the hierarchy will be called automatically. + // + // Usually constructors and initializers of any kind are chained + // using "after" and destructors of any kind are chained as + // "before". Note that chaining assumes that chained methods do not + // return any value: any returned value will be discarded. + // + // example: + // | declare("my.classes.bar", my.classes.foo, { + // | // properties to be added to the class prototype + // | someValue: 2, + // | // initialization function + // | constructor: function(){ + // | this.myComplicatedObject = new ReallyComplicatedObject(); + // | }, + // | // other functions + // | someMethod: function(){ + // | doStuff(); + // | } + // | }); + // + // example: + // | var MyBase = declare(null, { + // | // constructor, properties, and methods go here + // | // ... + // | }); + // | var MyClass1 = declare(MyBase, { + // | // constructor, properties, and methods go here + // | // ... + // | }); + // | var MyClass2 = declare(MyBase, { + // | // constructor, properties, and methods go here + // | // ... + // | }); + // | var MyDiamond = declare([MyClass1, MyClass2], { + // | // constructor, properties, and methods go here + // | // ... + // | }); + // + // example: + // | var F = function(){ console.log("raw constructor"); }; + // | F.prototype.method = function(){ + // | console.log("raw method"); + // | }; + // | var A = declare(F, { + // | constructor: function(){ + // | console.log("A.constructor"); + // | }, + // | method: function(){ + // | console.log("before calling F.method..."); + // | this.inherited(arguments); + // | console.log("...back in A"); + // | } + // | }); + // | new A().method(); + // | // will print: + // | // raw constructor + // | // A.constructor + // | // before calling F.method... + // | // raw method + // | // ...back in A + // + // example: + // | var A = declare(null, { + // | "-chains-": { + // | destroy: "before" + // | } + // | }); + // | var B = declare(A, { + // | constructor: function(){ + // | console.log("B.constructor"); + // | }, + // | destroy: function(){ + // | console.log("B.destroy"); + // | } + // | }); + // | var C = declare(B, { + // | constructor: function(){ + // | console.log("C.constructor"); + // | }, + // | destroy: function(){ + // | console.log("C.destroy"); + // | } + // | }); + // | new C().destroy(); + // | // prints: + // | // B.constructor + // | // C.constructor + // | // C.destroy + // | // B.destroy + // + // example: + // | var A = declare(null, { + // | "-chains-": { + // | constructor: "manual" + // | } + // | }); + // | var B = declare(A, { + // | constructor: function(){ + // | // ... + // | // call the base constructor with new parameters + // | this.inherited(arguments, [1, 2, 3]); + // | // ... + // | } + // | }); + // + // example: + // | var A = declare(null, { + // | "-chains-": { + // | m1: "before" + // | }, + // | m1: function(){ + // | console.log("A.m1"); + // | }, + // | m2: function(){ + // | console.log("A.m2"); + // | } + // | }); + // | var B = declare(A, { + // | "-chains-": { + // | m2: "after" + // | }, + // | m1: function(){ + // | console.log("B.m1"); + // | }, + // | m2: function(){ + // | console.log("B.m2"); + // | } + // | }); + // | var x = new B(); + // | x.m1(); + // | // prints: + // | // B.m1 + // | // A.m1 + // | x.m2(); + // | // prints: + // | // A.m2 + // | // B.m2 + + // crack parameters + if(typeof className != "string"){ + props = superclass; + superclass = className; + className = ""; + } + props = props || {}; + + var proto, i, t, ctor, name, bases, chains, mixins = 1, parents = superclass; + + // build a prototype + if(opts.call(superclass) == "[object Array]"){ + // C3 MRO + bases = c3mro(superclass, className); + t = bases[0]; + mixins = bases.length - t; + superclass = bases[mixins]; + }else{ + bases = [0]; + if(superclass){ + if(opts.call(superclass) == "[object Function]"){ + t = superclass._meta; + bases = bases.concat(t ? t.bases : superclass); + }else{ + err("base class is not a callable constructor.", className); + } + }else if(superclass !== null){ + err("unknown base class. Did you use dojo.require to pull it in?", className); + } + } + if(superclass){ + for(i = mixins - 1;; --i){ + proto = forceNew(superclass); + if(!i){ + // stop if nothing to add (the last base) + break; + } + // mix in properties + t = bases[i]; + (t._meta ? mixOwn : mix)(proto, t.prototype); + // chain in new constructor + ctor = new Function; + ctor.superclass = superclass; + ctor.prototype = proto; + superclass = proto.constructor = ctor; + } + }else{ + proto = {}; + } + // add all properties + declare.safeMixin(proto, props); + // add constructor + t = props.constructor; + if(t !== op.constructor){ + t.nom = cname; + proto.constructor = t; + } + + // collect chains and flags + for(i = mixins - 1; i; --i){ // intentional assignment + t = bases[i]._meta; + if(t && t.chains){ + chains = mix(chains || {}, t.chains); + } + } + if(proto["-chains-"]){ + chains = mix(chains || {}, proto["-chains-"]); + } + + // build ctor + t = !chains || !chains.hasOwnProperty(cname); + bases[0] = ctor = (chains && chains.constructor === "manual") ? simpleConstructor(bases) : + (bases.length == 1 ? singleConstructor(props.constructor, t) : chainedConstructor(bases, t)); + + // add meta information to the constructor + ctor._meta = {bases: bases, hidden: props, chains: chains, + parents: parents, ctor: props.constructor}; + ctor.superclass = superclass && superclass.prototype; + ctor.extend = extend; + ctor.createSubclass = createSubclass; + ctor.prototype = proto; + proto.constructor = ctor; + + // add "standard" methods to the prototype + proto.getInherited = getInherited; + proto.isInstanceOf = isInstanceOf; + proto.inherited = inheritedImpl; + proto.__inherited = inherited; + + // add name if specified + if(className){ + proto.declaredClass = className; + lang.setObject(className, ctor); + } + + // build chains and add them to the prototype + if(chains){ + for(name in chains){ + if(proto[name] && typeof chains[name] == "string" && name != cname){ + t = proto[name] = chain(name, bases, chains[name] === "after"); + t.nom = name; + } + } + } + // chained methods do not return values + // no need to chain "invisible" functions + + return ctor; // Function + } + + /*===== + declare.__DeclareCreatedObject = { + // summary: + // dojo/_base/declare() returns a constructor `C`. `new C()` returns an Object with the following + // methods, in addition to the methods and properties specified via the arguments passed to declare(). + + inherited: function(name, args, newArgs){ + // summary: + // Calls a super method. + // name: String? + // The optional method name. Should be the same as the caller's + // name. Usually "name" is specified in complex dynamic cases, when + // the calling method was dynamically added, undecorated by + // declare(), and it cannot be determined. + // args: Arguments + // The caller supply this argument, which should be the original + // "arguments". + // newArgs: Object? + // If "true", the found function will be returned without + // executing it. + // If Array, it will be used to call a super method. Otherwise + // "args" will be used. + // returns: + // Whatever is returned by a super method, or a super method itself, + // if "true" was specified as newArgs. + // description: + // This method is used inside method of classes produced with + // declare() to call a super method (next in the chain). It is + // used for manually controlled chaining. Consider using the regular + // chaining, because it is faster. Use "this.inherited()" only in + // complex cases. + // + // This method cannot me called from automatically chained + // constructors including the case of a special (legacy) + // constructor chaining. It cannot be called from chained methods. + // + // If "this.inherited()" cannot find the next-in-chain method, it + // does nothing and returns "undefined". The last method in chain + // can be a default method implemented in Object, which will be + // called last. + // + // If "name" is specified, it is assumed that the method that + // received "args" is the parent method for this call. It is looked + // up in the chain list and if it is found the next-in-chain method + // is called. If it is not found, the first-in-chain method is + // called. + // + // If "name" is not specified, it will be derived from the calling + // method (using a methoid property "nom"). + // + // example: + // | var B = declare(A, { + // | method1: function(a, b, c){ + // | this.inherited(arguments); + // | }, + // | method2: function(a, b){ + // | return this.inherited(arguments, [a + b]); + // | } + // | }); + // | // next method is not in the chain list because it is added + // | // manually after the class was created. + // | B.prototype.method3 = function(){ + // | console.log("This is a dynamically-added method."); + // | this.inherited("method3", arguments); + // | }; + // example: + // | var B = declare(A, { + // | method: function(a, b){ + // | var super = this.inherited(arguments, true); + // | // ... + // | if(!super){ + // | console.log("there is no super method"); + // | return 0; + // | } + // | return super.apply(this, arguments); + // | } + // | }); + return {}; // Object + }, + + getInherited: function(name, args){ + // summary: + // Returns a super method. + // name: String? + // The optional method name. Should be the same as the caller's + // name. Usually "name" is specified in complex dynamic cases, when + // the calling method was dynamically added, undecorated by + // declare(), and it cannot be determined. + // args: Arguments + // The caller supply this argument, which should be the original + // "arguments". + // returns: + // Returns a super method (Function) or "undefined". + // description: + // This method is a convenience method for "this.inherited()". + // It uses the same algorithm but instead of executing a super + // method, it returns it, or "undefined" if not found. + // + // example: + // | var B = declare(A, { + // | method: function(a, b){ + // | var super = this.getInherited(arguments); + // | // ... + // | if(!super){ + // | console.log("there is no super method"); + // | return 0; + // | } + // | return super.apply(this, arguments); + // | } + // | }); + return {}; // Object + }, + + isInstanceOf: function(cls){ + // summary: + // Checks the inheritance chain to see if it is inherited from this + // class. + // cls: Function + // Class constructor. + // returns: + // "true", if this object is inherited from this class, "false" + // otherwise. + // description: + // This method is used with instances of classes produced with + // declare() to determine of they support a certain interface or + // not. It models "instanceof" operator. + // + // example: + // | var A = declare(null, { + // | // constructor, properties, and methods go here + // | // ... + // | }); + // | var B = declare(null, { + // | // constructor, properties, and methods go here + // | // ... + // | }); + // | var C = declare([A, B], { + // | // constructor, properties, and methods go here + // | // ... + // | }); + // | var D = declare(A, { + // | // constructor, properties, and methods go here + // | // ... + // | }); + // | + // | var a = new A(), b = new B(), c = new C(), d = new D(); + // | + // | console.log(a.isInstanceOf(A)); // true + // | console.log(b.isInstanceOf(A)); // false + // | console.log(c.isInstanceOf(A)); // true + // | console.log(d.isInstanceOf(A)); // true + // | + // | console.log(a.isInstanceOf(B)); // false + // | console.log(b.isInstanceOf(B)); // true + // | console.log(c.isInstanceOf(B)); // true + // | console.log(d.isInstanceOf(B)); // false + // | + // | console.log(a.isInstanceOf(C)); // false + // | console.log(b.isInstanceOf(C)); // false + // | console.log(c.isInstanceOf(C)); // true + // | console.log(d.isInstanceOf(C)); // false + // | + // | console.log(a.isInstanceOf(D)); // false + // | console.log(b.isInstanceOf(D)); // false + // | console.log(c.isInstanceOf(D)); // false + // | console.log(d.isInstanceOf(D)); // true + return {}; // Object + }, + + extend: function(source){ + // summary: + // Adds all properties and methods of source to constructor's + // prototype, making them available to all instances created with + // constructor. This method is specific to constructors created with + // declare(). + // source: Object + // Source object which properties are going to be copied to the + // constructor's prototype. + // description: + // Adds source properties to the constructor's prototype. It can + // override existing properties. + // + // This method is similar to dojo.extend function, but it is specific + // to constructors produced by declare(). It is implemented + // using dojo.safeMixin, and it skips a constructor property, + // and properly decorates copied functions. + // + // example: + // | var A = declare(null, { + // | m1: function(){}, + // | s1: "Popokatepetl" + // | }); + // | A.extend({ + // | m1: function(){}, + // | m2: function(){}, + // | f1: true, + // | d1: 42 + // | }); + }, + + createSubclass: function(mixins, props){ + // summary: + // Create a subclass of the declared class from a list of base classes. + // mixins: Function[] + // Specifies a list of bases (the left-most one is the most deepest + // base). + // props: Object? + // An optional object whose properties are copied to the created prototype. + // returns: dojo/_base/declare.__DeclareCreatedObject + // New constructor function. + // description: + // Create a constructor using a compact notation for inheritance and + // prototype extension. + // + // Mixin ancestors provide a type of multiple inheritance. + // Prototypes of mixin ancestors are copied to the new class: + // changes to mixin prototypes will not affect classes to which + // they have been mixed in. + // + // example: + // | var A = declare(null, { + // | m1: function(){}, + // | s1: "bar" + // | }); + // | var B = declare(null, { + // | m2: function(){}, + // | s2: "foo" + // | }); + // | var C = declare(null, { + // | }); + // | var D1 = A.createSubclass([B, C], { + // | m1: function(){}, + // | d1: 42 + // | }); + // | var d1 = new D1(); + // | + // | // this is equivalent to: + // | var D2 = declare([A, B, C], { + // | m1: function(){}, + // | d1: 42 + // | }); + // | var d2 = new D2(); + } + }; + =====*/ + + // For back-compat, remove for 2.0 + dojo.safeMixin = declare.safeMixin = safeMixin; + dojo.declare = declare; + + return declare; +}); + +}, +'dojo/dom':function(){ +define(["./sniff", "./_base/window"], + function(has, win){ + // module: + // dojo/dom + + // FIXME: need to add unit tests for all the semi-public methods + + if(has("ie") <= 7){ + try{ + document.execCommand("BackgroundImageCache", false, true); + }catch(e){ + // sane browsers don't have cache "issues" + } + } + + // ============================= + // DOM Functions + // ============================= + + // the result object + var dom = { + // summary: + // This module defines the core dojo DOM API. + }; + + if(has("ie")){ + dom.byId = function(id, doc){ + if(typeof id != "string"){ + return id; + } + var _d = doc || win.doc, te = id && _d.getElementById(id); + // attributes.id.value is better than just id in case the + // user has a name=id inside a form + if(te && (te.attributes.id.value == id || te.id == id)){ + return te; + }else{ + var eles = _d.all[id]; + if(!eles || eles.nodeName){ + eles = [eles]; + } + // if more than 1, choose first with the correct id + var i = 0; + while((te = eles[i++])){ + if((te.attributes && te.attributes.id && te.attributes.id.value == id) || te.id == id){ + return te; + } + } + } + }; + }else{ + dom.byId = function(id, doc){ + // inline'd type check. + // be sure to return null per documentation, to match IE branch. + return ((typeof id == "string") ? (doc || win.doc).getElementById(id) : id) || null; // DOMNode + }; + } + /*===== + dom.byId = function(id, doc){ + // summary: + // Returns DOM node with matching `id` attribute or falsy value (ex: null or undefined) + // if not found. If `id` is a DomNode, this function is a no-op. + // + // id: String|DOMNode + // A string to match an HTML id attribute or a reference to a DOM Node + // + // doc: Document? + // Document to work in. Defaults to the current value of + // dojo/_base/window.doc. Can be used to retrieve + // node references from other documents. + // + // example: + // Look up a node by ID: + // | require(["dojo/dom"], function(dom){ + // | var n = dom.byId("foo"); + // | }); + // + // example: + // Check if a node exists, and use it. + // | require(["dojo/dom"], function(dom){ + // | var n = dom.byId("bar"); + // | if(n){ doStuff() ... } + // | }); + // + // example: + // Allow string or DomNode references to be passed to a custom function: + // | require(["dojo/dom"], function(dom){ + // | var foo = function(nodeOrId){ + // | nodeOrId = dom.byId(nodeOrId); + // | // ... more stuff + // | } + // | }); + }; + =====*/ + + dom.isDescendant = function(/*DOMNode|String*/ node, /*DOMNode|String*/ ancestor){ + // summary: + // Returns true if node is a descendant of ancestor + // node: DOMNode|String + // string id or node reference to test + // ancestor: DOMNode|String + // string id or node reference of potential parent to test against + // + // example: + // Test is node id="bar" is a descendant of node id="foo" + // | require(["dojo/dom"], function(dom){ + // | if(dom.isDescendant("bar", "foo")){ ... } + // | }); + + try{ + node = dom.byId(node); + ancestor = dom.byId(ancestor); + while(node){ + if(node == ancestor){ + return true; // Boolean + } + node = node.parentNode; + } + }catch(e){ /* squelch, return false */ } + return false; // Boolean + }; + + + // TODO: do we need setSelectable in the base? + + // Add feature test for user-select CSS property + // (currently known to work in all but IE < 10 and Opera) + // TODO: The user-select CSS property as of May 2014 is no longer part of + // any CSS specification. In IE, -ms-user-select does not do the same thing + // as the unselectable attribute on elements; namely, dijit Editor buttons + // do not properly prevent the content of the editable content frame from + // unblurring. As a result, the -ms- prefixed version is omitted here. + has.add("css-user-select", function(global, doc, element){ + // Avoid exception when dom.js is loaded in non-browser environments + if(!element){ return false; } + + var style = element.style; + var prefixes = ["Khtml", "O", "Moz", "Webkit"], + i = prefixes.length, + name = "userSelect", + prefix; + + // Iterate prefixes from most to least likely + do{ + if(typeof style[name] !== "undefined"){ + // Supported; return property name + return name; + } + }while(i-- && (name = prefixes[i] + "UserSelect")); + + // Not supported if we didn't return before now + return false; + }); + + /*===== + dom.setSelectable = function(node, selectable){ + // summary: + // Enable or disable selection on a node + // node: DOMNode|String + // id or reference to node + // selectable: Boolean + // state to put the node in. false indicates unselectable, true + // allows selection. + // example: + // Make the node id="bar" unselectable + // | require(["dojo/dom"], function(dom){ + // | dom.setSelectable("bar"); + // | }); + // example: + // Make the node id="bar" selectable + // | require(["dojo/dom"], function(dom){ + // | dom.setSelectable("bar", true); + // | }); + }; + =====*/ + + var cssUserSelect = has("css-user-select"); + dom.setSelectable = cssUserSelect ? function(node, selectable){ + // css-user-select returns a (possibly vendor-prefixed) CSS property name + dom.byId(node).style[cssUserSelect] = selectable ? "" : "none"; + } : function(node, selectable){ + node = dom.byId(node); + + // (IE < 10 / Opera) Fall back to setting/removing the + // unselectable attribute on the element and all its children + var nodes = node.getElementsByTagName("*"), + i = nodes.length; + + if(selectable){ + node.removeAttribute("unselectable"); + while(i--){ + nodes[i].removeAttribute("unselectable"); + } + }else{ + node.setAttribute("unselectable", "on"); + while(i--){ + nodes[i].setAttribute("unselectable", "on"); + } + } + }; + + return dom; +}); + +}, +'dojo/_base/browser':function(){ +if(require.has){ + require.has.add("config-selectorEngine", "acme"); +} +define([ + "../ready", + "./kernel", + "./connect", // until we decide if connect is going back into non-browser environments + "./unload", + "./window", + "./event", + "./html", + "./NodeList", + "../query", + "./xhr", + "./fx"], function(dojo){ + + // module: + // dojo/_base/browser + + /*===== + return { + // summary: + // This module causes the browser-only base modules to be loaded. + }; + =====*/ + + return dojo; +}); + +}, +'dojo/selector/acme':function(){ +define([ + "../dom", "../sniff", "../_base/array", "../_base/lang", "../_base/window" +], function(dom, has, array, lang, win){ + + // module: + // dojo/selector/acme + +/* + acme architectural overview: + + acme is a relatively full-featured CSS3 query library. It is + designed to take any valid CSS3 selector and return the nodes matching + the selector. To do this quickly, it processes queries in several + steps, applying caching where profitable. + + The steps (roughly in reverse order of the way they appear in the code): + 1.) check to see if we already have a "query dispatcher" + - if so, use that with the given parameterization. Skip to step 4. + 2.) attempt to determine which branch to dispatch the query to: + - JS (optimized DOM iteration) + - native (FF3.1+, Safari 3.1+, IE 8+) + 3.) tokenize and convert to executable "query dispatcher" + - this is where the lion's share of the complexity in the + system lies. In the DOM version, the query dispatcher is + assembled as a chain of "yes/no" test functions pertaining to + a section of a simple query statement (".blah:nth-child(odd)" + but not "div div", which is 2 simple statements). Individual + statement dispatchers are cached (to prevent re-definition) + as are entire dispatch chains (to make re-execution of the + same query fast) + 4.) the resulting query dispatcher is called in the passed scope + (by default the top-level document) + - for DOM queries, this results in a recursive, top-down + evaluation of nodes based on each simple query section + - for native implementations, this may mean working around spec + bugs. So be it. + 5.) matched nodes are pruned to ensure they are unique (if necessary) +*/ + + + //////////////////////////////////////////////////////////////////////// + // Toolkit aliases + //////////////////////////////////////////////////////////////////////// + + // if you are extracting acme for use in your own system, you will + // need to provide these methods and properties. No other porting should be + // necessary, save for configuring the system to use a class other than + // dojo/NodeList as the return instance instantiator + var trim = lang.trim; + var each = array.forEach; + + var getDoc = function(){ return win.doc; }; + // NOTE(alex): the spec is idiotic. CSS queries should ALWAYS be case-sensitive, but nooooooo + var cssCaseBug = (getDoc().compatMode) == "BackCompat"; + + //////////////////////////////////////////////////////////////////////// + // Global utilities + //////////////////////////////////////////////////////////////////////// + + + var specials = ">~+"; + + // global thunk to determine whether we should treat the current query as + // case sensitive or not. This switch is flipped by the query evaluator + // based on the document passed as the context to search. + var caseSensitive = false; + + // how high? + var yesman = function(){ return true; }; + + //////////////////////////////////////////////////////////////////////// + // Tokenizer + //////////////////////////////////////////////////////////////////////// + + var getQueryParts = function(query){ + // summary: + // state machine for query tokenization + // description: + // instead of using a brittle and slow regex-based CSS parser, + // acme implements an AST-style query representation. This + // representation is only generated once per query. For example, + // the same query run multiple times or under different root nodes + // does not re-parse the selector expression but instead uses the + // cached data structure. The state machine implemented here + // terminates on the last " " (space) character and returns an + // ordered array of query component structures (or "parts"). Each + // part represents an operator or a simple CSS filtering + // expression. The structure for parts is documented in the code + // below. + + + // NOTE: + // this code is designed to run fast and compress well. Sacrifices + // to readability and maintainability have been made. Your best + // bet when hacking the tokenizer is to put The Donnas on *really* + // loud (may we recommend their "Spend The Night" release?) and + // just assume you're gonna make mistakes. Keep the unit tests + // open and run them frequently. Knowing is half the battle ;-) + if(specials.indexOf(query.slice(-1)) >= 0){ + // if we end with a ">", "+", or "~", that means we're implicitly + // searching all children, so make it explicit + query += " * "; + }else{ + // if you have not provided a terminator, one will be provided for + // you... + query += " "; + } + + var ts = function(/*Integer*/ s, /*Integer*/ e){ + // trim and slice. + + // take an index to start a string slice from and an end position + // and return a trimmed copy of that sub-string + return trim(query.slice(s, e)); + }; + + // the overall data graph of the full query, as represented by queryPart objects + var queryParts = []; + + + // state keeping vars + var inBrackets = -1, inParens = -1, inMatchFor = -1, + inPseudo = -1, inClass = -1, inId = -1, inTag = -1, currentQuoteChar, + lc = "", cc = "", pStart; + + // iteration vars + var x = 0, // index in the query + ql = query.length, + currentPart = null, // data structure representing the entire clause + _cp = null; // the current pseudo or attr matcher + + // several temporary variables are assigned to this structure during a + // potential sub-expression match: + // attr: + // a string representing the current full attribute match in a + // bracket expression + // type: + // if there's an operator in a bracket expression, this is + // used to keep track of it + // value: + // the internals of parenthetical expression for a pseudo. for + // :nth-child(2n+1), value might be "2n+1" + + var endTag = function(){ + // called when the tokenizer hits the end of a particular tag name. + // Re-sets state variables for tag matching and sets up the matcher + // to handle the next type of token (tag or operator). + if(inTag >= 0){ + var tv = (inTag == x) ? null : ts(inTag, x); // .toLowerCase(); + currentPart[ (specials.indexOf(tv) < 0) ? "tag" : "oper" ] = tv; + inTag = -1; + } + }; + + var endId = function(){ + // called when the tokenizer might be at the end of an ID portion of a match + if(inId >= 0){ + currentPart.id = ts(inId, x).replace(/\\/g, ""); + inId = -1; + } + }; + + var endClass = function(){ + // called when the tokenizer might be at the end of a class name + // match. CSS allows for multiple classes, so we augment the + // current item with another class in its list + if(inClass >= 0){ + currentPart.classes.push(ts(inClass + 1, x).replace(/\\/g, "")); + inClass = -1; + } + }; + + var endAll = function(){ + // at the end of a simple fragment, so wall off the matches + endId(); + endTag(); + endClass(); + }; + + var endPart = function(){ + endAll(); + if(inPseudo >= 0){ + currentPart.pseudos.push({ name: ts(inPseudo + 1, x) }); + } + // hint to the selector engine to tell it whether or not it + // needs to do any iteration. Many simple selectors don't, and + // we can avoid significant construction-time work by advising + // the system to skip them + currentPart.loops = ( + currentPart.pseudos.length || + currentPart.attrs.length || + currentPart.classes.length ); + + currentPart.oquery = currentPart.query = ts(pStart, x); // save the full expression as a string + + + // otag/tag are hints to suggest to the system whether or not + // it's an operator or a tag. We save a copy of otag since the + // tag name is cast to upper-case in regular HTML matches. The + // system has a global switch to figure out if the current + // expression needs to be case sensitive or not and it will use + // otag or tag accordingly + currentPart.otag = currentPart.tag = (currentPart["oper"]) ? null : (currentPart.tag || "*"); + + if(currentPart.tag){ + // if we're in a case-insensitive HTML doc, we likely want + // the toUpperCase when matching on element.tagName. If we + // do it here, we can skip the string op per node + // comparison + currentPart.tag = currentPart.tag.toUpperCase(); + } + + // add the part to the list + if(queryParts.length && (queryParts[queryParts.length-1].oper)){ + // operators are always infix, so we remove them from the + // list and attach them to the next match. The evaluator is + // responsible for sorting out how to handle them. + currentPart.infixOper = queryParts.pop(); + currentPart.query = currentPart.infixOper.query + " " + currentPart.query; + /* + console.debug( "swapping out the infix", + currentPart.infixOper, + "and attaching it to", + currentPart); + */ + } + queryParts.push(currentPart); + + currentPart = null; + }; + + // iterate over the query, character by character, building up a + // list of query part objects + for(; lc=cc, cc=query.charAt(x), x < ql; x++){ + // cc: the current character in the match + // lc: the last character (if any) + + // someone is trying to escape something, so don't try to match any + // fragments. We assume we're inside a literal. + if(lc == "\\"){ continue; } + if(!currentPart){ // a part was just ended or none has yet been created + // NOTE: I hate all this alloc, but it's shorter than writing tons of if's + pStart = x; + // rules describe full CSS sub-expressions, like: + // #someId + // .className:first-child + // but not: + // thinger > div.howdy[type=thinger] + // the indidual components of the previous query would be + // split into 3 parts that would be represented a structure like: + // [ + // { + // query: "thinger", + // tag: "thinger", + // }, + // { + // query: "div.howdy[type=thinger]", + // classes: ["howdy"], + // infixOper: { + // query: ">", + // oper: ">", + // } + // }, + // ] + currentPart = { + query: null, // the full text of the part's rule + pseudos: [], // CSS supports multiple pseud-class matches in a single rule + attrs: [], // CSS supports multi-attribute match, so we need an array + classes: [], // class matches may be additive, e.g.: .thinger.blah.howdy + tag: null, // only one tag... + oper: null, // ...or operator per component. Note that these wind up being exclusive. + id: null, // the id component of a rule + getTag: function(){ + return caseSensitive ? this.otag : this.tag; + } + }; + + // if we don't have a part, we assume we're going to start at + // the beginning of a match, which should be a tag name. This + // might fault a little later on, but we detect that and this + // iteration will still be fine. + inTag = x; + } + + // Skip processing all quoted characters. + // If we are inside quoted text then currentQuoteChar stores the character that began the quote, + // thus that character that will end it. + if(currentQuoteChar){ + if(cc == currentQuoteChar){ + currentQuoteChar = null; + } + continue; + }else if (cc == "'" || cc == '"'){ + currentQuoteChar = cc; + continue; + } + + if(inBrackets >= 0){ + // look for a the close first + if(cc == "]"){ // if we're in a [...] clause and we end, do assignment + if(!_cp.attr){ + // no attribute match was previously begun, so we + // assume this is an attribute existence match in the + // form of [someAttributeName] + _cp.attr = ts(inBrackets+1, x); + }else{ + // we had an attribute already, so we know that we're + // matching some sort of value, as in [attrName=howdy] + _cp.matchFor = ts((inMatchFor||inBrackets+1), x); + } + var cmf = _cp.matchFor; + if(cmf){ + // try to strip quotes from the matchFor value. We want + // [attrName=howdy] to match the same + // as [attrName = 'howdy' ] + if( (cmf.charAt(0) == '"') || (cmf.charAt(0) == "'") ){ + _cp.matchFor = cmf.slice(1, -1); + } + } + // remove backslash escapes from an attribute match, since DOM + // querying will get attribute values without backslashes + if(_cp.matchFor){ + _cp.matchFor = _cp.matchFor.replace(/\\/g, ""); + } + + // end the attribute by adding it to the list of attributes. + currentPart.attrs.push(_cp); + _cp = null; // necessary? + inBrackets = inMatchFor = -1; + }else if(cc == "="){ + // if the last char was an operator prefix, make sure we + // record it along with the "=" operator. + var addToCc = ("|~^$*".indexOf(lc) >=0 ) ? lc : ""; + _cp.type = addToCc+cc; + _cp.attr = ts(inBrackets+1, x-addToCc.length); + inMatchFor = x+1; + } + // now look for other clause parts + }else if(inParens >= 0){ + // if we're in a parenthetical expression, we need to figure + // out if it's attached to a pseudo-selector rule like + // :nth-child(1) + if(cc == ")"){ + if(inPseudo >= 0){ + _cp.value = ts(inParens+1, x); + } + inPseudo = inParens = -1; + } + }else if(cc == "#"){ + // start of an ID match + endAll(); + inId = x+1; + }else if(cc == "."){ + // start of a class match + endAll(); + inClass = x; + }else if(cc == ":"){ + // start of a pseudo-selector match + endAll(); + inPseudo = x; + }else if(cc == "["){ + // start of an attribute match. + endAll(); + inBrackets = x; + // provide a new structure for the attribute match to fill-in + _cp = { + /*===== + attr: null, type: null, matchFor: null + =====*/ + }; + }else if(cc == "("){ + // we really only care if we've entered a parenthetical + // expression if we're already inside a pseudo-selector match + if(inPseudo >= 0){ + // provide a new structure for the pseudo match to fill-in + _cp = { + name: ts(inPseudo+1, x), + value: null + }; + currentPart.pseudos.push(_cp); + } + inParens = x; + }else if( + (cc == " ") && + // if it's a space char and the last char is too, consume the + // current one without doing more work + (lc != cc) + ){ + endPart(); + } + } + return queryParts; + }; + + + //////////////////////////////////////////////////////////////////////// + // DOM query infrastructure + //////////////////////////////////////////////////////////////////////// + + var agree = function(first, second){ + // the basic building block of the yes/no chaining system. agree(f1, + // f2) generates a new function which returns the boolean results of + // both of the passed functions to a single logical-anded result. If + // either are not passed, the other is used exclusively. + if(!first){ return second; } + if(!second){ return first; } + + return function(){ + return first.apply(window, arguments) && second.apply(window, arguments); + }; + }; + + var getArr = function(i, arr){ + // helps us avoid array alloc when we don't need it + var r = arr||[]; // FIXME: should this be 'new d._NodeListCtor()' ? + if(i){ r.push(i); } + return r; + }; + + var _isElement = function(n){ return (1 == n.nodeType); }; + + // FIXME: need to coalesce _getAttr with defaultGetter + var blank = ""; + var _getAttr = function(elem, attr){ + if(!elem){ return blank; } + if(attr == "class"){ + return elem.className || blank; + } + if(attr == "for"){ + return elem.htmlFor || blank; + } + if(attr == "style"){ + return elem.style.cssText || blank; + } + return (caseSensitive ? elem.getAttribute(attr) : elem.getAttribute(attr, 2)) || blank; + }; + + var attrs = { + "*=": function(attr, value){ + return function(elem){ + // E[foo*="bar"] + // an E element whose "foo" attribute value contains + // the substring "bar" + return (_getAttr(elem, attr).indexOf(value)>=0); + }; + }, + "^=": function(attr, value){ + // E[foo^="bar"] + // an E element whose "foo" attribute value begins exactly + // with the string "bar" + return function(elem){ + return (_getAttr(elem, attr).indexOf(value)==0); + }; + }, + "$=": function(attr, value){ + // E[foo$="bar"] + // an E element whose "foo" attribute value ends exactly + // with the string "bar" + return function(elem){ + var ea = " "+_getAttr(elem, attr); + var lastIndex = ea.lastIndexOf(value); + return lastIndex > -1 && (lastIndex==(ea.length-value.length)); + }; + }, + "~=": function(attr, value){ + // E[foo~="bar"] + // an E element whose "foo" attribute value is a list of + // space-separated values, one of which is exactly equal + // to "bar" + + // return "[contains(concat(' ',@"+attr+",' '), ' "+ value +" ')]"; + var tval = " "+value+" "; + return function(elem){ + var ea = " "+_getAttr(elem, attr)+" "; + return (ea.indexOf(tval)>=0); + }; + }, + "|=": function(attr, value){ + // E[hreflang|="en"] + // an E element whose "hreflang" attribute has a + // hyphen-separated list of values beginning (from the + // left) with "en" + var valueDash = value+"-"; + return function(elem){ + var ea = _getAttr(elem, attr); + return ( + (ea == value) || + (ea.indexOf(valueDash)==0) + ); + }; + }, + "=": function(attr, value){ + return function(elem){ + return (_getAttr(elem, attr) == value); + }; + } + }; + + // avoid testing for node type if we can. Defining this in the negative + // here to avoid negation in the fast path. + var _noNES = (typeof getDoc().firstChild.nextElementSibling == "undefined"); + var _ns = !_noNES ? "nextElementSibling" : "nextSibling"; + var _ps = !_noNES ? "previousElementSibling" : "previousSibling"; + var _simpleNodeTest = (_noNES ? _isElement : yesman); + + var _lookLeft = function(node){ + // look left + while(node = node[_ps]){ + if(_simpleNodeTest(node)){ return false; } + } + return true; + }; + + var _lookRight = function(node){ + // look right + while(node = node[_ns]){ + if(_simpleNodeTest(node)){ return false; } + } + return true; + }; + + var getNodeIndex = function(node){ + var root = node.parentNode; + root = root.nodeType != 7 ? root : root.nextSibling; // PROCESSING_INSTRUCTION_NODE + var i = 0, + tret = root.children || root.childNodes, + ci = (node["_i"]||node.getAttribute("_i")||-1), + cl = (root["_l"]|| (typeof root.getAttribute !== "undefined" ? root.getAttribute("_l") : -1)); + + if(!tret){ return -1; } + var l = tret.length; + + // we calculate the parent length as a cheap way to invalidate the + // cache. It's not 100% accurate, but it's much more honest than what + // other libraries do + if( cl == l && ci >= 0 && cl >= 0 ){ + // if it's legit, tag and release + return ci; + } + + // else re-key things + if(has("ie") && typeof root.setAttribute !== "undefined"){ + root.setAttribute("_l", l); + }else{ + root["_l"] = l; + } + ci = -1; + for(var te = root["firstElementChild"]||root["firstChild"]; te; te = te[_ns]){ + if(_simpleNodeTest(te)){ + if(has("ie")){ + te.setAttribute("_i", ++i); + }else{ + te["_i"] = ++i; + } + if(node === te){ + // NOTE: + // shortcutting the return at this step in indexing works + // very well for benchmarking but we avoid it here since + // it leads to potential O(n^2) behavior in sequential + // getNodexIndex operations on a previously un-indexed + // parent. We may revisit this at a later time, but for + // now we just want to get the right answer more often + // than not. + ci = i; + } + } + } + return ci; + }; + + var isEven = function(elem){ + return !((getNodeIndex(elem)) % 2); + }; + + var isOdd = function(elem){ + return ((getNodeIndex(elem)) % 2); + }; + + var pseudos = { + "checked": function(name, condition){ + return function(elem){ + return !!("checked" in elem ? elem.checked : elem.selected); + }; + }, + "disabled": function(name, condition){ + return function(elem){ + return elem.disabled; + }; + }, + "enabled": function(name, condition){ + return function(elem){ + return !elem.disabled; + }; + }, + "first-child": function(){ return _lookLeft; }, + "last-child": function(){ return _lookRight; }, + "only-child": function(name, condition){ + return function(node){ + return _lookLeft(node) && _lookRight(node); + }; + }, + "empty": function(name, condition){ + return function(elem){ + // DomQuery and jQuery get this wrong, oddly enough. + // The CSS 3 selectors spec is pretty explicit about it, too. + var cn = elem.childNodes; + var cnl = elem.childNodes.length; + // if(!cnl){ return true; } + for(var x=cnl-1; x >= 0; x--){ + var nt = cn[x].nodeType; + if((nt === 1)||(nt == 3)){ return false; } + } + return true; + }; + }, + "contains": function(name, condition){ + var cz = condition.charAt(0); + if( cz == '"' || cz == "'" ){ //remove quote + condition = condition.slice(1, -1); + } + return function(elem){ + return (elem.innerHTML.indexOf(condition) >= 0); + }; + }, + "not": function(name, condition){ + var p = getQueryParts(condition)[0]; + var ignores = { el: 1 }; + if(p.tag != "*"){ + ignores.tag = 1; + } + if(!p.classes.length){ + ignores.classes = 1; + } + var ntf = getSimpleFilterFunc(p, ignores); + return function(elem){ + return (!ntf(elem)); + }; + }, + "nth-child": function(name, condition){ + var pi = parseInt; + // avoid re-defining function objects if we can + if(condition == "odd"){ + return isOdd; + }else if(condition == "even"){ + return isEven; + } + // FIXME: can we shorten this? + if(condition.indexOf("n") != -1){ + var tparts = condition.split("n", 2); + var pred = tparts[0] ? ((tparts[0] == '-') ? -1 : pi(tparts[0])) : 1; + var idx = tparts[1] ? pi(tparts[1]) : 0; + var lb = 0, ub = -1; + if(pred > 0){ + if(idx < 0){ + idx = (idx % pred) && (pred + (idx % pred)); + }else if(idx>0){ + if(idx >= pred){ + lb = idx - idx % pred; + } + idx = idx % pred; + } + }else if(pred<0){ + pred *= -1; + // idx has to be greater than 0 when pred is negative; + // shall we throw an error here? + if(idx > 0){ + ub = idx; + idx = idx % pred; + } + } + if(pred > 0){ + return function(elem){ + var i = getNodeIndex(elem); + return (i>=lb) && (ub<0 || i<=ub) && ((i % pred) == idx); + }; + }else{ + condition = idx; + } + } + var ncount = pi(condition); + return function(elem){ + return (getNodeIndex(elem) == ncount); + }; + } + }; + + var defaultGetter = (has("ie") < 9 || has("ie") == 9 && has("quirks")) ? function(cond){ + var clc = cond.toLowerCase(); + if(clc == "class"){ cond = "className"; } + return function(elem){ + return (caseSensitive ? elem.getAttribute(cond) : elem[cond]||elem[clc]); + }; + } : function(cond){ + return function(elem){ + return (elem && elem.getAttribute && elem.hasAttribute(cond)); + }; + }; + + var getSimpleFilterFunc = function(query, ignores){ + // generates a node tester function based on the passed query part. The + // query part is one of the structures generated by the query parser + // when it creates the query AST. The "ignores" object specifies which + // (if any) tests to skip, allowing the system to avoid duplicating + // work where it may have already been taken into account by other + // factors such as how the nodes to test were fetched in the first + // place + if(!query){ return yesman; } + ignores = ignores||{}; + + var ff = null; + + if(!("el" in ignores)){ + ff = agree(ff, _isElement); + } + + if(!("tag" in ignores)){ + if(query.tag != "*"){ + ff = agree(ff, function(elem){ + return (elem && ((caseSensitive ? elem.tagName : elem.tagName.toUpperCase()) == query.getTag())); + }); + } + } + + if(!("classes" in ignores)){ + each(query.classes, function(cname, idx, arr){ + // get the class name + /* + var isWildcard = cname.charAt(cname.length-1) == "*"; + if(isWildcard){ + cname = cname.substr(0, cname.length-1); + } + // I dislike the regex thing, even if memoized in a cache, but it's VERY short + var re = new RegExp("(?:^|\\s)" + cname + (isWildcard ? ".*" : "") + "(?:\\s|$)"); + */ + var re = new RegExp("(?:^|\\s)" + cname + "(?:\\s|$)"); + ff = agree(ff, function(elem){ + return re.test(elem.className); + }); + ff.count = idx; + }); + } + + if(!("pseudos" in ignores)){ + each(query.pseudos, function(pseudo){ + var pn = pseudo.name; + if(pseudos[pn]){ + ff = agree(ff, pseudos[pn](pn, pseudo.value)); + } + }); + } + + if(!("attrs" in ignores)){ + each(query.attrs, function(attr){ + var matcher; + var a = attr.attr; + // type, attr, matchFor + if(attr.type && attrs[attr.type]){ + matcher = attrs[attr.type](a, attr.matchFor); + }else if(a.length){ + matcher = defaultGetter(a); + } + if(matcher){ + ff = agree(ff, matcher); + } + }); + } + + if(!("id" in ignores)){ + if(query.id){ + ff = agree(ff, function(elem){ + return (!!elem && (elem.id == query.id)); + }); + } + } + + if(!ff){ + if(!("default" in ignores)){ + ff = yesman; + } + } + return ff; + }; + + var _nextSibling = function(filterFunc){ + return function(node, ret, bag){ + while(node = node[_ns]){ + if(_noNES && (!_isElement(node))){ continue; } + if( + (!bag || _isUnique(node, bag)) && + filterFunc(node) + ){ + ret.push(node); + } + break; + } + return ret; + }; + }; + + var _nextSiblings = function(filterFunc){ + return function(root, ret, bag){ + var te = root[_ns]; + while(te){ + if(_simpleNodeTest(te)){ + if(bag && !_isUnique(te, bag)){ + break; + } + if(filterFunc(te)){ + ret.push(te); + } + } + te = te[_ns]; + } + return ret; + }; + }; + + // get an array of child *elements*, skipping text and comment nodes + var _childElements = function(filterFunc){ + filterFunc = filterFunc||yesman; + return function(root, ret, bag){ + // get an array of child elements, skipping text and comment nodes + var te, x = 0, tret = root.children || root.childNodes; + while(te = tret[x++]){ + if( + _simpleNodeTest(te) && + (!bag || _isUnique(te, bag)) && + (filterFunc(te, x)) + ){ + ret.push(te); + } + } + return ret; + }; + }; + + // test to see if node is below root + var _isDescendant = function(node, root){ + var pn = node.parentNode; + while(pn){ + if(pn == root){ + break; + } + pn = pn.parentNode; + } + return !!pn; + }; + + var _getElementsFuncCache = {}; + + var getElementsFunc = function(query){ + var retFunc = _getElementsFuncCache[query.query]; + // if we've got a cached dispatcher, just use that + if(retFunc){ return retFunc; } + // else, generate a new on + + // NOTE: + // this function returns a function that searches for nodes and + // filters them. The search may be specialized by infix operators + // (">", "~", or "+") else it will default to searching all + // descendants (the " " selector). Once a group of children is + // found, a test function is applied to weed out the ones we + // don't want. Many common cases can be fast-pathed. We spend a + // lot of cycles to create a dispatcher that doesn't do more work + // than necessary at any point since, unlike this function, the + // dispatchers will be called every time. The logic of generating + // efficient dispatchers looks like this in pseudo code: + // + // # if it's a purely descendant query (no ">", "+", or "~" modifiers) + // if infixOperator == " ": + // if only(id): + // return def(root): + // return d.byId(id, root); + // + // elif id: + // return def(root): + // return filter(d.byId(id, root)); + // + // elif cssClass && getElementsByClassName: + // return def(root): + // return filter(root.getElementsByClassName(cssClass)); + // + // elif only(tag): + // return def(root): + // return root.getElementsByTagName(tagName); + // + // else: + // # search by tag name, then filter + // return def(root): + // return filter(root.getElementsByTagName(tagName||"*")); + // + // elif infixOperator == ">": + // # search direct children + // return def(root): + // return filter(root.children); + // + // elif infixOperator == "+": + // # search next sibling + // return def(root): + // return filter(root.nextElementSibling); + // + // elif infixOperator == "~": + // # search rightward siblings + // return def(root): + // return filter(nextSiblings(root)); + + var io = query.infixOper; + var oper = (io ? io.oper : ""); + // the default filter func which tests for all conditions in the query + // part. This is potentially inefficient, so some optimized paths may + // re-define it to test fewer things. + var filterFunc = getSimpleFilterFunc(query, { el: 1 }); + var qt = query.tag; + var wildcardTag = ("*" == qt); + var ecs = getDoc()["getElementsByClassName"]; + + if(!oper){ + // if there's no infix operator, then it's a descendant query. ID + // and "elements by class name" variants can be accelerated so we + // call them out explicitly: + if(query.id){ + // testing shows that the overhead of yesman() is acceptable + // and can save us some bytes vs. re-defining the function + // everywhere. + filterFunc = (!query.loops && wildcardTag) ? + yesman : + getSimpleFilterFunc(query, { el: 1, id: 1 }); + + retFunc = function(root, arr){ + var te = dom.byId(query.id, (root.ownerDocument||root)); + if(!te || !filterFunc(te)){ return; } + if(9 == root.nodeType){ // if root's a doc, we just return directly + return getArr(te, arr); + }else{ // otherwise check ancestry + if(_isDescendant(te, root)){ + return getArr(te, arr); + } + } + }; + }else if( + ecs && + // isAlien check. Workaround for Prototype.js being totally evil/dumb. + /\{\s*\[native code\]\s*\}/.test(String(ecs)) && + query.classes.length && + !cssCaseBug + ){ + // it's a class-based query and we've got a fast way to run it. + + // ignore class and ID filters since we will have handled both + filterFunc = getSimpleFilterFunc(query, { el: 1, classes: 1, id: 1 }); + var classesString = query.classes.join(" "); + retFunc = function(root, arr, bag){ + var ret = getArr(0, arr), te, x=0; + var tret = root.getElementsByClassName(classesString); + while((te = tret[x++])){ + if(filterFunc(te, root) && _isUnique(te, bag)){ + ret.push(te); + } + } + return ret; + }; + + }else if(!wildcardTag && !query.loops){ + // it's tag only. Fast-path it. + retFunc = function(root, arr, bag){ + var ret = getArr(0, arr), te, x=0; + var tag = query.getTag(), + tret = tag ? root.getElementsByTagName(tag) : []; + while((te = tret[x++])){ + if(_isUnique(te, bag)){ + ret.push(te); + } + } + return ret; + }; + }else{ + // the common case: + // a descendant selector without a fast path. By now it's got + // to have a tag selector, even if it's just "*" so we query + // by that and filter + filterFunc = getSimpleFilterFunc(query, { el: 1, tag: 1, id: 1 }); + retFunc = function(root, arr, bag){ + var ret = getArr(0, arr), te, x=0; + // we use getTag() to avoid case sensitivity issues + var tag = query.getTag(), + tret = tag ? root.getElementsByTagName(tag) : []; + while((te = tret[x++])){ + if(filterFunc(te, root) && _isUnique(te, bag)){ + ret.push(te); + } + } + return ret; + }; + } + }else{ + // the query is scoped in some way. Instead of querying by tag we + // use some other collection to find candidate nodes + var skipFilters = { el: 1 }; + if(wildcardTag){ + skipFilters.tag = 1; + } + filterFunc = getSimpleFilterFunc(query, skipFilters); + if("+" == oper){ + retFunc = _nextSibling(filterFunc); + }else if("~" == oper){ + retFunc = _nextSiblings(filterFunc); + }else if(">" == oper){ + retFunc = _childElements(filterFunc); + } + } + // cache it and return + return _getElementsFuncCache[query.query] = retFunc; + }; + + var filterDown = function(root, queryParts){ + // NOTE: + // this is the guts of the DOM query system. It takes a list of + // parsed query parts and a root and finds children which match + // the selector represented by the parts + var candidates = getArr(root), qp, x, te, qpl = queryParts.length, bag, ret; + + for(var i = 0; i < qpl; i++){ + ret = []; + qp = queryParts[i]; + x = candidates.length - 1; + if(x > 0){ + // if we have more than one root at this level, provide a new + // hash to use for checking group membership but tell the + // system not to post-filter us since we will already have been + // guaranteed to be unique + bag = {}; + ret.nozip = true; + } + var gef = getElementsFunc(qp); + for(var j = 0; (te = candidates[j]); j++){ + // for every root, get the elements that match the descendant + // selector, adding them to the "ret" array and filtering them + // via membership in this level's bag. If there are more query + // parts, then this level's return will be used as the next + // level's candidates + gef(te, ret, bag); + } + if(!ret.length){ break; } + candidates = ret; + } + return ret; + }; + + //////////////////////////////////////////////////////////////////////// + // the query runner + //////////////////////////////////////////////////////////////////////// + + // these are the primary caches for full-query results. The query + // dispatcher functions are generated then stored here for hash lookup in + // the future + var _queryFuncCacheDOM = {}, + _queryFuncCacheQSA = {}; + + // this is the second level of splitting, from full-length queries (e.g., + // "div.foo .bar") into simple query expressions (e.g., ["div.foo", + // ".bar"]) + var getStepQueryFunc = function(query){ + var qparts = getQueryParts(trim(query)); + + // if it's trivial, avoid iteration and zipping costs + if(qparts.length == 1){ + // we optimize this case here to prevent dispatch further down the + // chain, potentially slowing things down. We could more elegantly + // handle this in filterDown(), but it's slower for simple things + // that need to be fast (e.g., "#someId"). + var tef = getElementsFunc(qparts[0]); + return function(root){ + var r = tef(root, []); + if(r){ r.nozip = true; } + return r; + }; + } + + // otherwise, break it up and return a runner that iterates over the parts recursively + return function(root){ + return filterDown(root, qparts); + }; + }; + + // NOTES: + // * we can't trust QSA for anything but document-rooted queries, so + // caching is split into DOM query evaluators and QSA query evaluators + // * caching query results is dirty and leak-prone (or, at a minimum, + // prone to unbounded growth). Other toolkits may go this route, but + // they totally destroy their own ability to manage their memory + // footprint. If we implement it, it should only ever be with a fixed + // total element reference # limit and an LRU-style algorithm since JS + // has no weakref support. Caching compiled query evaluators is also + // potentially problematic, but even on large documents the size of the + // query evaluators is often < 100 function objects per evaluator (and + // LRU can be applied if it's ever shown to be an issue). + // * since IE's QSA support is currently only for HTML documents and even + // then only in IE 8's "standards mode", we have to detect our dispatch + // route at query time and keep 2 separate caches. Ugg. + + // we need to determine if we think we can run a given query via + // querySelectorAll or if we'll need to fall back on DOM queries to get + // there. We need a lot of information about the environment and the query + // to make the determination (e.g. does it support QSA, does the query in + // question work in the native QSA impl, etc.). + + // IE QSA queries may incorrectly include comment nodes, so we throw the + // zipping function into "remove" comments mode instead of the normal "skip + // it" which every other QSA-clued browser enjoys + var noZip = has("ie") ? "commentStrip" : "nozip"; + + var qsa = "querySelectorAll"; + var qsaAvail = !!getDoc()[qsa]; + + //Don't bother with n+3 type of matches, IE complains if we modify those. + var infixSpaceRe = /\\[>~+]|n\+\d|([^ \\])?([>~+])([^ =])?/g; + var infixSpaceFunc = function(match, pre, ch, post){ + return ch ? (pre ? pre + " " : "") + ch + (post ? " " + post : "") : /*n+3*/ match; + }; + + //Don't apply the infixSpaceRe to attribute value selectors + var attRe = /([^[]*)([^\]]*])?/g; + var attFunc = function(match, nonAtt, att){ + return nonAtt.replace(infixSpaceRe, infixSpaceFunc) + (att||""); + }; + var getQueryFunc = function(query, forceDOM){ + //Normalize query. The CSS3 selectors spec allows for omitting spaces around + //infix operators, >, ~ and + + //Do the work here since detection for spaces is used as a simple "not use QSA" + //test below. + query = query.replace(attRe, attFunc); + + if(qsaAvail){ + // if we've got a cached variant and we think we can do it, run it! + var qsaCached = _queryFuncCacheQSA[query]; + if(qsaCached && !forceDOM){ return qsaCached; } + } + + // else if we've got a DOM cached variant, assume that we already know + // all we need to and use it + var domCached = _queryFuncCacheDOM[query]; + if(domCached){ return domCached; } + + // TODO: + // today we're caching DOM and QSA branches separately so we + // recalc useQSA every time. If we had a way to tag root+query + // efficiently, we'd be in good shape to do a global cache. + + var qcz = query.charAt(0); + var nospace = (-1 == query.indexOf(" ")); + + // byId searches are wicked fast compared to QSA, even when filtering + // is required + if( (query.indexOf("#") >= 0) && (nospace) ){ + forceDOM = true; + } + + var useQSA = ( + qsaAvail && (!forceDOM) && + // as per CSS 3, we can't currently start w/ combinator: + // http://www.w3.org/TR/css3-selectors/#w3cselgrammar + (specials.indexOf(qcz) == -1) && + // IE's QSA impl sucks on pseudos + (!has("ie") || (query.indexOf(":") == -1)) && + + (!(cssCaseBug && (query.indexOf(".") >= 0))) && + + // FIXME: + // need to tighten up browser rules on ":contains" and "|=" to + // figure out which aren't good + // Latest webkit (around 531.21.8) does not seem to do well with :checked on option + // elements, even though according to spec, selected options should + // match :checked. So go nonQSA for it: + // http://bugs.dojotoolkit.org/ticket/5179 + (query.indexOf(":contains") == -1) && (query.indexOf(":checked") == -1) && + (query.indexOf("|=") == -1) // some browsers don't grok it + ); + + // TODO: + // if we've got a descendant query (e.g., "> .thinger" instead of + // just ".thinger") in a QSA-able doc, but are passed a child as a + // root, it should be possible to give the item a synthetic ID and + // trivially rewrite the query to the form "#synid > .thinger" to + // use the QSA branch + + + if(useQSA){ + var tq = (specials.indexOf(query.charAt(query.length-1)) >= 0) ? + (query + " *") : query; + return _queryFuncCacheQSA[query] = function(root){ + try{ + // the QSA system contains an egregious spec bug which + // limits us, effectively, to only running QSA queries over + // entire documents. See: + // http://ejohn.org/blog/thoughts-on-queryselectorall/ + // despite this, we can also handle QSA runs on simple + // selectors, but we don't want detection to be expensive + // so we're just checking for the presence of a space char + // right now. Not elegant, but it's cheaper than running + // the query parser when we might not need to + if(!((9 == root.nodeType) || nospace)){ throw ""; } + var r = root[qsa](tq); + // skip expensive duplication checks and just wrap in a NodeList + r[noZip] = true; + return r; + }catch(e){ + // else run the DOM branch on this query, ensuring that we + // default that way in the future + return getQueryFunc(query, true)(root); + } + }; + }else{ + // DOM branch + var parts = query.match(/([^\s,](?:"(?:\\.|[^"])+"|'(?:\\.|[^'])+'|[^,])*)/g); + return _queryFuncCacheDOM[query] = ((parts.length < 2) ? + // if not a compound query (e.g., ".foo, .bar"), cache and return a dispatcher + getStepQueryFunc(query) : + // if it *is* a complex query, break it up into its + // constituent parts and return a dispatcher that will + // merge the parts when run + function(root){ + var pindex = 0, // avoid array alloc for every invocation + ret = [], + tp; + while((tp = parts[pindex++])){ + ret = ret.concat(getStepQueryFunc(tp)(root)); + } + return ret; + } + ); + } + }; + + var _zipIdx = 0; + + // NOTE: + // this function is Moo inspired, but our own impl to deal correctly + // with XML in IE + var _nodeUID = has("ie") ? function(node){ + if(caseSensitive){ + // XML docs don't have uniqueID on their nodes + return (node.getAttribute("_uid") || node.setAttribute("_uid", ++_zipIdx) || _zipIdx); + + }else{ + return node.uniqueID; + } + } : + function(node){ + return (node._uid || (node._uid = ++_zipIdx)); + }; + + // determine if a node in is unique in a "bag". In this case we don't want + // to flatten a list of unique items, but rather just tell if the item in + // question is already in the bag. Normally we'd just use hash lookup to do + // this for us but IE's DOM is busted so we can't really count on that. On + // the upside, it gives us a built in unique ID function. + var _isUnique = function(node, bag){ + if(!bag){ return 1; } + var id = _nodeUID(node); + if(!bag[id]){ return bag[id] = 1; } + return 0; + }; + + // attempt to efficiently determine if an item in a list is a dupe, + // returning a list of "uniques", hopefully in document order + var _zipIdxName = "_zipIdx"; + var _zip = function(arr){ + if(arr && arr.nozip){ return arr; } + + if(!arr || !arr.length){ return []; } + if(arr.length < 2){ return [arr[0]]; } + + var ret = []; + + _zipIdx++; + + // we have to fork here for IE and XML docs because we can't set + // expandos on their nodes (apparently). *sigh* + var x, te; + if(has("ie") && caseSensitive){ + var szidx = _zipIdx+""; + for(x = 0; x < arr.length; x++){ + if((te = arr[x]) && te.getAttribute(_zipIdxName) != szidx){ + ret.push(te); + te.setAttribute(_zipIdxName, szidx); + } + } + }else if(has("ie") && arr.commentStrip){ + try{ + for(x = 0; x < arr.length; x++){ + if((te = arr[x]) && _isElement(te)){ + ret.push(te); + } + } + }catch(e){ /* squelch */ } + }else{ + for(x = 0; x < arr.length; x++){ + if((te = arr[x]) && te[_zipIdxName] != _zipIdx){ + ret.push(te); + te[_zipIdxName] = _zipIdx; + } + } + } + return ret; + }; + + // the main executor + var query = function(/*String*/ query, /*String|DOMNode?*/ root){ + // summary: + // Returns nodes which match the given CSS3 selector, searching the + // entire document by default but optionally taking a node to scope + // the search by. Returns an array. + // description: + // dojo.query() is the swiss army knife of DOM node manipulation in + // Dojo. Much like Prototype's "$$" (bling-bling) function or JQuery's + // "$" function, dojo.query provides robust, high-performance + // CSS-based node selector support with the option of scoping searches + // to a particular sub-tree of a document. + // + // Supported Selectors: + // -------------------- + // + // acme supports a rich set of CSS3 selectors, including: + // + // - class selectors (e.g., `.foo`) + // - node type selectors like `span` + // - ` ` descendant selectors + // - `>` child element selectors + // - `#foo` style ID selectors + // - `*` universal selector + // - `~`, the preceded-by sibling selector + // - `+`, the immediately preceded-by sibling selector + // - attribute queries: + // - `[foo]` attribute presence selector + // - `[foo='bar']` attribute value exact match + // - `[foo~='bar']` attribute value list item match + // - `[foo^='bar']` attribute start match + // - `[foo$='bar']` attribute end match + // - `[foo*='bar']` attribute substring match + // - `:first-child`, `:last-child`, and `:only-child` positional selectors + // - `:empty` content emtpy selector + // - `:checked` pseudo selector + // - `:nth-child(n)`, `:nth-child(2n+1)` style positional calculations + // - `:nth-child(even)`, `:nth-child(odd)` positional selectors + // - `:not(...)` negation pseudo selectors + // + // Any legal combination of these selectors will work with + // `dojo.query()`, including compound selectors ("," delimited). + // Very complex and useful searches can be constructed with this + // palette of selectors and when combined with functions for + // manipulation presented by dojo/NodeList, many types of DOM + // manipulation operations become very straightforward. + // + // Unsupported Selectors: + // ---------------------- + // + // While dojo.query handles many CSS3 selectors, some fall outside of + // what's reasonable for a programmatic node querying engine to + // handle. Currently unsupported selectors include: + // + // - namespace-differentiated selectors of any form + // - all `::` pseduo-element selectors + // - certain pseudo-selectors which don't get a lot of day-to-day use: + // - `:root`, `:lang()`, `:target`, `:focus` + // - all visual and state selectors: + // - `:root`, `:active`, `:hover`, `:visited`, `:link`, + // `:enabled`, `:disabled` + // - `:*-of-type` pseudo selectors + // + // dojo.query and XML Documents: + // ----------------------------- + // + // `dojo.query` (as of dojo 1.2) supports searching XML documents + // in a case-sensitive manner. If an HTML document is served with + // a doctype that forces case-sensitivity (e.g., XHTML 1.1 + // Strict), dojo.query() will detect this and "do the right + // thing". Case sensitivity is dependent upon the document being + // searched and not the query used. It is therefore possible to + // use case-sensitive queries on strict sub-documents (iframes, + // etc.) or XML documents while still assuming case-insensitivity + // for a host/root document. + // + // Non-selector Queries: + // --------------------- + // + // If something other than a String is passed for the query, + // `dojo.query` will return a new `dojo/NodeList` instance + // constructed from that parameter alone and all further + // processing will stop. This means that if you have a reference + // to a node or NodeList, you can quickly construct a new NodeList + // from the original by calling `dojo.query(node)` or + // `dojo.query(list)`. + // + // query: + // The CSS3 expression to match against. For details on the syntax of + // CSS3 selectors, see + // root: + // A DOMNode (or node id) to scope the search from. Optional. + // returns: Array + // example: + // search the entire document for elements with the class "foo": + // | require(["dojo/query"], function(query) { + // | query(".foo").forEach(function(q) { console.log(q); }); + // | }); + // these elements will match: + // | + // | + // |

+ // example: + // search the entire document for elements with the classes "foo" *and* "bar": + // | require(["dojo/query"], function(query) { + // | query(".foo.bar").forEach(function(q) { console.log(q); }); + // | }); + + // these elements will match: + // | + // while these will not: + // | + // |

+ // example: + // find `` elements which are descendants of paragraphs and + // which have a "highlighted" class: + // | require(["dojo/query"], function(query) { + // | query("p span.highlighted").forEach(function(q) { console.log(q); }); + // | }); + // the innermost span in this fragment matches: + // |

+ // | ... + // | ... + // | + // |

+ // example: + // set an "odd" class on all odd table rows inside of the table + // `#tabular_data`, using the `>` (direct child) selector to avoid + // affecting any nested tables: + // | require(["dojo/query"], function(query) { + // | query("#tabular_data > tbody > tr:nth-child(odd)").addClass("odd"); + // | ); + // example: + // remove all elements with the class "error" from the document: + // | require(["dojo/query"], function(query) { + // | query(".error").orphan(); + // | ); + // example: + // add an onclick handler to every submit button in the document + // which causes the form to be sent via Ajax instead: + // | require(["dojo/query", "dojo/request", "dojo/dom-construct", "dojo/dom-style" + // | ], function (query, request, domConstruct, domStyle) { + // | query("input[type='submit']").on("click", function (e) { + // | e.stopPropagation(); + // | e.preventDefault(); + // | var btn = e.target; + // | request.post("", { data: btn.form, timeout: 2000 }) + // | .then(function (data) { + // | // replace the form with the response + // | domConstruct.create("div", { innerHTML: data }, btn.form, "after"); + // | domStyle.set(btn.form, "display", "none"); + // | }); + // | }); + // | }); + + + root = root || getDoc(); + + // throw the big case sensitivity switch + var od = root.ownerDocument || root; // root is either Document or a node inside the document + caseSensitive = (od.createElement("div").tagName === "div"); + + // NOTE: + // adding "true" as the 2nd argument to getQueryFunc is useful for + // testing the DOM branch without worrying about the + // behavior/performance of the QSA branch. + var r = getQueryFunc(query)(root); + + // FIXME: + // need to investigate this branch WRT #8074 and #8075 + if(r && r.nozip){ + return r; + } + return _zip(r); // dojo/NodeList + }; + query.filter = function(/*Node[]*/ nodeList, /*String*/ filter, /*String|DOMNode?*/ root){ + // summary: + // function for filtering a NodeList based on a selector, optimized for simple selectors + var tmpNodeList = [], + parts = getQueryParts(filter), + filterFunc = + (parts.length == 1 && !/[^\w#\.]/.test(filter)) ? + getSimpleFilterFunc(parts[0]) : + function(node){ + return array.indexOf(query(filter, dom.byId(root)), node) != -1; + }; + for(var x = 0, te; te = nodeList[x]; x++){ + if(filterFunc(te)){ tmpNodeList.push(te); } + } + return tmpNodeList; + }; + return query; +}); + +}, +'dojo/errors/RequestTimeoutError':function(){ +define(['./create', './RequestError'], function(create, RequestError){ + // module: + // dojo/errors/RequestTimeoutError + + /*===== + return function(){ + // summary: + // TODOC + }; + =====*/ + + return create("RequestTimeoutError", null, RequestError, { + dojoType: "timeout" + }); +}); + +}, +'dojo/dom-style':function(){ +define(["./sniff", "./dom"], function(has, dom){ + // module: + // dojo/dom-style + + // ============================= + // Style Functions + // ============================= + + // getComputedStyle drives most of the style code. + // Wherever possible, reuse the returned object. + // + // API functions below that need to access computed styles accept an + // optional computedStyle parameter. + // If this parameter is omitted, the functions will call getComputedStyle themselves. + // This way, calling code can access computedStyle once, and then pass the reference to + // multiple API functions. + + // Although we normally eschew argument validation at this + // level, here we test argument 'node' for (duck)type, + // by testing nodeType, ecause 'document' is the 'parentNode' of 'body' + // it is frequently sent to this function even + // though it is not Element. + var getComputedStyle, style = { + // summary: + // This module defines the core dojo DOM style API. + }; + if(has("webkit")){ + getComputedStyle = function(/*DomNode*/ node){ + var s; + if(node.nodeType == 1){ + var dv = node.ownerDocument.defaultView; + s = dv.getComputedStyle(node, null); + if(!s && node.style){ + node.style.display = ""; + s = dv.getComputedStyle(node, null); + } + } + return s || {}; + }; + }else if(has("ie") && (has("ie") < 9 || has("quirks"))){ + getComputedStyle = function(node){ + // IE (as of 7) doesn't expose Element like sane browsers + // currentStyle can be null on IE8! + return node.nodeType == 1 /* ELEMENT_NODE*/ && node.currentStyle ? node.currentStyle : {}; + }; + }else{ + getComputedStyle = function(node){ + return node.nodeType == 1 /* ELEMENT_NODE*/ ? + node.ownerDocument.defaultView.getComputedStyle(node, null) : {}; + }; + } + style.getComputedStyle = getComputedStyle; + /*===== + style.getComputedStyle = function(node){ + // summary: + // Returns a "computed style" object. + // + // description: + // Gets a "computed style" object which can be used to gather + // information about the current state of the rendered node. + // + // Note that this may behave differently on different browsers. + // Values may have different formats and value encodings across + // browsers. + // + // Note also that this method is expensive. Wherever possible, + // reuse the returned object. + // + // Use the dojo/dom-style.get() method for more consistent (pixelized) + // return values. + // + // node: DOMNode + // A reference to a DOM node. Does NOT support taking an + // ID string for speed reasons. + // example: + // | require(["dojo/dom-style", "dojo/dom"], function(domStyle, dom){ + // | domStyle.getComputedStyle(dom.byId('foo')).borderWidth; + // | }); + // + // example: + // Reusing the returned object, avoiding multiple lookups: + // | require(["dojo/dom-style", "dojo/dom"], function(domStyle, dom){ + // | var cs = domStyle.getComputedStyle(dom.byId("someNode")); + // | var w = cs.width, h = cs.height; + // | }); + return; // CSS2Properties + }; + =====*/ + + var toPixel; + if(!has("ie")){ + toPixel = function(element, value){ + // style values can be floats, client code may want + // to round for integer pixels. + return parseFloat(value) || 0; + }; + }else{ + toPixel = function(element, avalue){ + if(!avalue){ return 0; } + // on IE7, medium is usually 4 pixels + if(avalue == "medium"){ return 4; } + // style values can be floats, client code may + // want to round this value for integer pixels. + if(avalue.slice && avalue.slice(-2) == 'px'){ return parseFloat(avalue); } + var s = element.style, rs = element.runtimeStyle, cs = element.currentStyle, + sLeft = s.left, rsLeft = rs.left; + rs.left = cs.left; + try{ + // 'avalue' may be incompatible with style.left, which can cause IE to throw + // this has been observed for border widths using "thin", "medium", "thick" constants + // those particular constants could be trapped by a lookup + // but perhaps there are more + s.left = avalue; + avalue = s.pixelLeft; + }catch(e){ + avalue = 0; + } + s.left = sLeft; + rs.left = rsLeft; + return avalue; + }; + } + style.toPixelValue = toPixel; + /*===== + style.toPixelValue = function(node, value){ + // summary: + // converts style value to pixels on IE or return a numeric value. + // node: DOMNode + // value: String + // returns: Number + }; + =====*/ + + // FIXME: there opacity quirks on FF that we haven't ported over. Hrm. + + var astr = "DXImageTransform.Microsoft.Alpha"; + var af = function(n, f){ + try{ + return n.filters.item(astr); + }catch(e){ + return f ? {} : null; + } + }; + + var _getOpacity = + has("ie") < 9 || (has("ie") < 10 && has("quirks")) ? function(node){ + try{ + return af(node).Opacity / 100; // Number + }catch(e){ + return 1; // Number + } + } : + function(node){ + return getComputedStyle(node).opacity; + }; + + var _setOpacity = + has("ie") < 9 || (has("ie") < 10 && has("quirks")) ? function(/*DomNode*/ node, /*Number*/ opacity){ + if(opacity === ""){ opacity = 1; } + var ov = opacity * 100, fullyOpaque = opacity === 1; + + // on IE7 Alpha(Filter opacity=100) makes text look fuzzy so disable it altogether (bug #2661), + // but still update the opacity value so we can get a correct reading if it is read later: + // af(node, 1).Enabled = !fullyOpaque; + + if(fullyOpaque){ + node.style.zoom = ""; + if(af(node)){ + node.style.filter = node.style.filter.replace( + new RegExp("\\s*progid:" + astr + "\\([^\\)]+?\\)", "i"), ""); + } + }else{ + node.style.zoom = 1; + if(af(node)){ + af(node, 1).Opacity = ov; + }else{ + node.style.filter += " progid:" + astr + "(Opacity=" + ov + ")"; + } + af(node, 1).Enabled = true; + } + + if(node.tagName.toLowerCase() == "tr"){ + for(var td = node.firstChild; td; td = td.nextSibling){ + if(td.tagName.toLowerCase() == "td"){ + _setOpacity(td, opacity); + } + } + } + return opacity; + } : + function(node, opacity){ + return node.style.opacity = opacity; + }; + + var _pixelNamesCache = { + left: true, top: true + }; + var _pixelRegExp = /margin|padding|width|height|max|min|offset/; // |border + function _toStyleValue(node, type, value){ + //TODO: should we really be doing string case conversion here? Should we cache it? Need to profile! + type = type.toLowerCase(); + if(has("ie") || has("trident")){ + if(value == "auto"){ + if(type == "height"){ return node.offsetHeight; } + if(type == "width"){ return node.offsetWidth; } + } + if(type == "fontweight"){ + switch(value){ + case 700: return "bold"; + case 400: + default: return "normal"; + } + } + } + if(!(type in _pixelNamesCache)){ + _pixelNamesCache[type] = _pixelRegExp.test(type); + } + return _pixelNamesCache[type] ? toPixel(node, value) : value; + } + + var _floatAliases = {cssFloat: 1, styleFloat: 1, "float": 1}; + + // public API + + style.get = function getStyle(/*DOMNode|String*/ node, /*String?*/ name){ + // summary: + // Accesses styles on a node. + // description: + // Getting the style value uses the computed style for the node, so the value + // will be a calculated value, not just the immediate node.style value. + // Also when getting values, use specific style names, + // like "borderBottomWidth" instead of "border" since compound values like + // "border" are not necessarily reflected as expected. + // If you want to get node dimensions, use `dojo/dom-geometry.getMarginBox()`, + // `dojo/dom-geometry.getContentBox()` or `dojo/dom-geometry.getPosition()`. + // node: DOMNode|String + // id or reference to node to get style for + // name: String? + // the style property to get + // example: + // Passing only an ID or node returns the computed style object of + // the node: + // | require(["dojo/dom-style", "dojo/dom"], function(domStyle, dom){ + // | domStyle.get("thinger"); + // | }); + // example: + // Passing a node and a style property returns the current + // normalized, computed value for that property: + // | require(["dojo/dom-style", "dojo/dom"], function(domStyle, dom){ + // | domStyle.get("thinger", "opacity"); // 1 by default + // | }); + + var n = dom.byId(node), l = arguments.length, op = (name == "opacity"); + if(l == 2 && op){ + return _getOpacity(n); + } + name = _floatAliases[name] ? "cssFloat" in n.style ? "cssFloat" : "styleFloat" : name; + var s = style.getComputedStyle(n); + return (l == 1) ? s : _toStyleValue(n, name, s[name] || n.style[name]); /* CSS2Properties||String||Number */ + }; + + style.set = function setStyle(/*DOMNode|String*/ node, /*String|Object*/ name, /*String?*/ value){ + // summary: + // Sets styles on a node. + // node: DOMNode|String + // id or reference to node to set style for + // name: String|Object + // the style property to set in DOM-accessor format + // ("borderWidth", not "border-width") or an object with key/value + // pairs suitable for setting each property. + // value: String? + // If passed, sets value on the node for style, handling + // cross-browser concerns. When setting a pixel value, + // be sure to include "px" in the value. For instance, top: "200px". + // Otherwise, in some cases, some browsers will not apply the style. + // + // example: + // Passing a node, a style property, and a value changes the + // current display of the node and returns the new computed value + // | require(["dojo/dom-style"], function(domStyle){ + // | domStyle.set("thinger", "opacity", 0.5); // == 0.5 + // | }); + // + // example: + // Passing a node, an object-style style property sets each of the values in turn and returns the computed style object of the node: + // | require(["dojo/dom-style"], function(domStyle){ + // | domStyle.set("thinger", { + // | "opacity": 0.5, + // | "border": "3px solid black", + // | "height": "300px" + // | }); + // | }); + // + // example: + // When the CSS style property is hyphenated, the JavaScript property is camelCased. + // font-size becomes fontSize, and so on. + // | require(["dojo/dom-style", "dojo/dom"], function(domStyle, dom){ + // | domStyle.set("thinger",{ + // | fontSize:"14pt", + // | letterSpacing:"1.2em" + // | }); + // | }); + // + // example: + // dojo/NodeList implements .style() using the same syntax, omitting the "node" parameter, calling + // dojo/dom-style.get() on every element of the list. See: `dojo/query` and `dojo/NodeList` + // | require(["dojo/dom-style", "dojo/query", "dojo/NodeList-dom"], + // | function(domStyle, query){ + // | query(".someClassName").style("visibility","hidden"); + // | // or + // | query("#baz > div").style({ + // | opacity:0.75, + // | fontSize:"13pt" + // | }); + // | }); + + var n = dom.byId(node), l = arguments.length, op = (name == "opacity"); + name = _floatAliases[name] ? "cssFloat" in n.style ? "cssFloat" : "styleFloat" : name; + if(l == 3){ + return op ? _setOpacity(n, value) : n.style[name] = value; // Number + } + for(var x in name){ + style.set(node, x, name[x]); + } + return style.getComputedStyle(n); + }; + + return style; +}); + +}, +'dojo/dom-geometry':function(){ +define(["./sniff", "./_base/window","./dom", "./dom-style"], + function(has, win, dom, style){ + // module: + // dojo/dom-geometry + + // the result object + var geom = { + // summary: + // This module defines the core dojo DOM geometry API. + }; + + // Box functions will assume this model. + // On IE/Opera, BORDER_BOX will be set if the primary document is in quirks mode. + // Can be set to change behavior of box setters. + + // can be either: + // "border-box" + // "content-box" (default) + geom.boxModel = "content-box"; + + // We punt per-node box mode testing completely. + // If anybody cares, we can provide an additional (optional) unit + // that overrides existing code to include per-node box sensitivity. + + // Opera documentation claims that Opera 9 uses border-box in BackCompat mode. + // but experiments (Opera 9.10.8679 on Windows Vista) indicate that it actually continues to use content-box. + // IIRC, earlier versions of Opera did in fact use border-box. + // Opera guys, this is really confusing. Opera being broken in quirks mode is not our fault. + + if(has("ie") /*|| has("opera")*/){ + // client code may have to adjust if compatMode varies across iframes + geom.boxModel = document.compatMode == "BackCompat" ? "border-box" : "content-box"; + } + + geom.getPadExtents = function getPadExtents(/*DomNode*/ node, /*Object*/ computedStyle){ + // summary: + // Returns object with special values specifically useful for node + // fitting. + // description: + // Returns an object with `w`, `h`, `l`, `t` properties: + // | l/t/r/b = left/top/right/bottom padding (respectively) + // | w = the total of the left and right padding + // | h = the total of the top and bottom padding + // If 'node' has position, l/t forms the origin for child nodes. + // The w/h are used for calculating boxes. + // Normally application code will not need to invoke this + // directly, and will use the ...box... functions instead. + // node: DOMNode + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var s = computedStyle || style.getComputedStyle(node), px = style.toPixelValue, + l = px(node, s.paddingLeft), t = px(node, s.paddingTop), r = px(node, s.paddingRight), b = px(node, s.paddingBottom); + return {l: l, t: t, r: r, b: b, w: l + r, h: t + b}; + }; + + var none = "none"; + + geom.getBorderExtents = function getBorderExtents(/*DomNode*/ node, /*Object*/ computedStyle){ + // summary: + // returns an object with properties useful for noting the border + // dimensions. + // description: + // - l/t/r/b = the sum of left/top/right/bottom border (respectively) + // - w = the sum of the left and right border + // - h = the sum of the top and bottom border + // + // The w/h are used for calculating boxes. + // Normally application code will not need to invoke this + // directly, and will use the ...box... functions instead. + // node: DOMNode + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var px = style.toPixelValue, s = computedStyle || style.getComputedStyle(node), + l = s.borderLeftStyle != none ? px(node, s.borderLeftWidth) : 0, + t = s.borderTopStyle != none ? px(node, s.borderTopWidth) : 0, + r = s.borderRightStyle != none ? px(node, s.borderRightWidth) : 0, + b = s.borderBottomStyle != none ? px(node, s.borderBottomWidth) : 0; + return {l: l, t: t, r: r, b: b, w: l + r, h: t + b}; + }; + + geom.getPadBorderExtents = function getPadBorderExtents(/*DomNode*/ node, /*Object*/ computedStyle){ + // summary: + // Returns object with properties useful for box fitting with + // regards to padding. + // description: + // - l/t/r/b = the sum of left/top/right/bottom padding and left/top/right/bottom border (respectively) + // - w = the sum of the left and right padding and border + // - h = the sum of the top and bottom padding and border + // + // The w/h are used for calculating boxes. + // Normally application code will not need to invoke this + // directly, and will use the ...box... functions instead. + // node: DOMNode + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var s = computedStyle || style.getComputedStyle(node), + p = geom.getPadExtents(node, s), + b = geom.getBorderExtents(node, s); + return { + l: p.l + b.l, + t: p.t + b.t, + r: p.r + b.r, + b: p.b + b.b, + w: p.w + b.w, + h: p.h + b.h + }; + }; + + geom.getMarginExtents = function getMarginExtents(node, computedStyle){ + // summary: + // returns object with properties useful for box fitting with + // regards to box margins (i.e., the outer-box). + // + // - l/t = marginLeft, marginTop, respectively + // - w = total width, margin inclusive + // - h = total height, margin inclusive + // + // The w/h are used for calculating boxes. + // Normally application code will not need to invoke this + // directly, and will use the ...box... functions instead. + // node: DOMNode + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var s = computedStyle || style.getComputedStyle(node), px = style.toPixelValue, + l = px(node, s.marginLeft), t = px(node, s.marginTop), r = px(node, s.marginRight), b = px(node, s.marginBottom); + return {l: l, t: t, r: r, b: b, w: l + r, h: t + b}; + }; + + // Box getters work in any box context because offsetWidth/clientWidth + // are invariant wrt box context + // + // They do *not* work for display: inline objects that have padding styles + // because the user agent ignores padding (it's bogus styling in any case) + // + // Be careful with IMGs because they are inline or block depending on + // browser and browser mode. + + // Although it would be easier to read, there are not separate versions of + // _getMarginBox for each browser because: + // 1. the branching is not expensive + // 2. factoring the shared code wastes cycles (function call overhead) + // 3. duplicating the shared code wastes bytes + + geom.getMarginBox = function getMarginBox(/*DomNode*/ node, /*Object*/ computedStyle){ + // summary: + // returns an object that encodes the width, height, left and top + // positions of the node's margin box. + // node: DOMNode + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var s = computedStyle || style.getComputedStyle(node), me = geom.getMarginExtents(node, s), + l = node.offsetLeft - me.l, t = node.offsetTop - me.t, p = node.parentNode, px = style.toPixelValue, pcs; + if(has("mozilla")){ + // Mozilla: + // If offsetParent has a computed overflow != visible, the offsetLeft is decreased + // by the parent's border. + // We don't want to compute the parent's style, so instead we examine node's + // computed left/top which is more stable. + var sl = parseFloat(s.left), st = parseFloat(s.top); + if(!isNaN(sl) && !isNaN(st)){ + l = sl; + t = st; + }else{ + // If child's computed left/top are not parseable as a number (e.g. "auto"), we + // have no choice but to examine the parent's computed style. + if(p && p.style){ + pcs = style.getComputedStyle(p); + if(pcs.overflow != "visible"){ + l += pcs.borderLeftStyle != none ? px(node, pcs.borderLeftWidth) : 0; + t += pcs.borderTopStyle != none ? px(node, pcs.borderTopWidth) : 0; + } + } + } + }else if(has("opera") || (has("ie") == 8 && !has("quirks"))){ + // On Opera and IE 8, offsetLeft/Top includes the parent's border + if(p){ + pcs = style.getComputedStyle(p); + l -= pcs.borderLeftStyle != none ? px(node, pcs.borderLeftWidth) : 0; + t -= pcs.borderTopStyle != none ? px(node, pcs.borderTopWidth) : 0; + } + } + return {l: l, t: t, w: node.offsetWidth + me.w, h: node.offsetHeight + me.h}; + }; + + geom.getContentBox = function getContentBox(node, computedStyle){ + // summary: + // Returns an object that encodes the width, height, left and top + // positions of the node's content box, irrespective of the + // current box model. + // node: DOMNode + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + // clientWidth/Height are important since the automatically account for scrollbars + // fallback to offsetWidth/Height for special cases (see #3378) + node = dom.byId(node); + var s = computedStyle || style.getComputedStyle(node), w = node.clientWidth, h, + pe = geom.getPadExtents(node, s), be = geom.getBorderExtents(node, s); + if(!w){ + w = node.offsetWidth; + h = node.offsetHeight; + }else{ + h = node.clientHeight; + be.w = be.h = 0; + } + // On Opera, offsetLeft includes the parent's border + if(has("opera")){ + pe.l += be.l; + pe.t += be.t; + } + return {l: pe.l, t: pe.t, w: w - pe.w - be.w, h: h - pe.h - be.h}; + }; + + // Box setters depend on box context because interpretation of width/height styles + // vary wrt box context. + // + // The value of boxModel is used to determine box context. + // boxModel can be set directly to change behavior. + // + // Beware of display: inline objects that have padding styles + // because the user agent ignores padding (it's a bogus setup anyway) + // + // Be careful with IMGs because they are inline or block depending on + // browser and browser mode. + // + // Elements other than DIV may have special quirks, like built-in + // margins or padding, or values not detectable via computedStyle. + // In particular, margins on TABLE do not seems to appear + // at all in computedStyle on Mozilla. + + function setBox(/*DomNode*/ node, /*Number?*/ l, /*Number?*/ t, /*Number?*/ w, /*Number?*/ h, /*String?*/ u){ + // summary: + // sets width/height/left/top in the current (native) box-model + // dimensions. Uses the unit passed in u. + // node: + // DOM Node reference. Id string not supported for performance + // reasons. + // l: + // left offset from parent. + // t: + // top offset from parent. + // w: + // width in current box model. + // h: + // width in current box model. + // u: + // unit measure to use for other measures. Defaults to "px". + u = u || "px"; + var s = node.style; + if(!isNaN(l)){ + s.left = l + u; + } + if(!isNaN(t)){ + s.top = t + u; + } + if(w >= 0){ + s.width = w + u; + } + if(h >= 0){ + s.height = h + u; + } + } + + function isButtonTag(/*DomNode*/ node){ + // summary: + // True if the node is BUTTON or INPUT.type="button". + return node.tagName.toLowerCase() == "button" || + node.tagName.toLowerCase() == "input" && (node.getAttribute("type") || "").toLowerCase() == "button"; // boolean + } + + function usesBorderBox(/*DomNode*/ node){ + // summary: + // True if the node uses border-box layout. + + // We could test the computed style of node to see if a particular box + // has been specified, but there are details and we choose not to bother. + + // TABLE and BUTTON (and INPUT type=button) are always border-box by default. + // If you have assigned a different box to either one via CSS then + // box functions will break. + + return geom.boxModel == "border-box" || node.tagName.toLowerCase() == "table" || isButtonTag(node); // boolean + } + + geom.setContentSize = function setContentSize(/*DomNode*/ node, /*Object*/ box, /*Object*/ computedStyle){ + // summary: + // Sets the size of the node's contents, irrespective of margins, + // padding, or borders. + // node: DOMNode + // box: Object + // hash with optional "w", and "h" properties for "width", and "height" + // respectively. All specified properties should have numeric values in whole pixels. + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var w = box.w, h = box.h; + if(usesBorderBox(node)){ + var pb = geom.getPadBorderExtents(node, computedStyle); + if(w >= 0){ + w += pb.w; + } + if(h >= 0){ + h += pb.h; + } + } + setBox(node, NaN, NaN, w, h); + }; + + var nilExtents = {l: 0, t: 0, w: 0, h: 0}; + + geom.setMarginBox = function setMarginBox(/*DomNode*/ node, /*Object*/ box, /*Object*/ computedStyle){ + // summary: + // sets the size of the node's margin box and placement + // (left/top), irrespective of box model. Think of it as a + // passthrough to setBox that handles box-model vagaries for + // you. + // node: DOMNode + // box: Object + // hash with optional "l", "t", "w", and "h" properties for "left", "right", "width", and "height" + // respectively. All specified properties should have numeric values in whole pixels. + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var s = computedStyle || style.getComputedStyle(node), w = box.w, h = box.h, + // Some elements have special padding, margin, and box-model settings. + // To use box functions you may need to set padding, margin explicitly. + // Controlling box-model is harder, in a pinch you might set dojo/dom-geometry.boxModel. + pb = usesBorderBox(node) ? nilExtents : geom.getPadBorderExtents(node, s), + mb = geom.getMarginExtents(node, s); + if(has("webkit")){ + // on Safari (3.1.2), button nodes with no explicit size have a default margin + // setting an explicit size eliminates the margin. + // We have to swizzle the width to get correct margin reading. + if(isButtonTag(node)){ + var ns = node.style; + if(w >= 0 && !ns.width){ + ns.width = "4px"; + } + if(h >= 0 && !ns.height){ + ns.height = "4px"; + } + } + } + if(w >= 0){ + w = Math.max(w - pb.w - mb.w, 0); + } + if(h >= 0){ + h = Math.max(h - pb.h - mb.h, 0); + } + setBox(node, box.l, box.t, w, h); + }; + + // ============================= + // Positioning + // ============================= + + geom.isBodyLtr = function isBodyLtr(/*Document?*/ doc){ + // summary: + // Returns true if the current language is left-to-right, and false otherwise. + // doc: Document? + // Optional document to query. If unspecified, use win.doc. + // returns: Boolean + + doc = doc || win.doc; + return (win.body(doc).dir || doc.documentElement.dir || "ltr").toLowerCase() == "ltr"; // Boolean + }; + + geom.docScroll = function docScroll(/*Document?*/ doc){ + // summary: + // Returns an object with {node, x, y} with corresponding offsets. + // doc: Document? + // Optional document to query. If unspecified, use win.doc. + // returns: Object + + doc = doc || win.doc; + var node = win.doc.parentWindow || win.doc.defaultView; // use UI window, not dojo.global window. TODO: use dojo/window::get() except for circular dependency problem + return "pageXOffset" in node ? {x: node.pageXOffset, y: node.pageYOffset } : + (node = has("quirks") ? win.body(doc) : doc.documentElement) && + {x: geom.fixIeBiDiScrollLeft(node.scrollLeft || 0, doc), y: node.scrollTop || 0 }; + }; + + if(has("ie")){ + geom.getIeDocumentElementOffset = function getIeDocumentElementOffset(/*Document?*/ doc){ + // summary: + // returns the offset in x and y from the document body to the + // visual edge of the page for IE + // doc: Document? + // Optional document to query. If unspecified, use win.doc. + // description: + // The following values in IE contain an offset: + // | event.clientX + // | event.clientY + // | node.getBoundingClientRect().left + // | node.getBoundingClientRect().top + // But other position related values do not contain this offset, + // such as node.offsetLeft, node.offsetTop, node.style.left and + // node.style.top. The offset is always (2, 2) in LTR direction. + // When the body is in RTL direction, the offset counts the width + // of left scroll bar's width. This function computes the actual + // offset. + + //NOTE: assumes we're being called in an IE browser + + doc = doc || win.doc; + var de = doc.documentElement; // only deal with HTML element here, position() handles body/quirks + + if(has("ie") < 8){ + var r = de.getBoundingClientRect(), // works well for IE6+ + l = r.left, t = r.top; + if(has("ie") < 7){ + l += de.clientLeft; // scrollbar size in strict/RTL, or, + t += de.clientTop; // HTML border size in strict + } + return { + x: l < 0 ? 0 : l, // FRAME element border size can lead to inaccurate negative values + y: t < 0 ? 0 : t + }; + }else{ + return { + x: 0, + y: 0 + }; + } + }; + } + + geom.fixIeBiDiScrollLeft = function fixIeBiDiScrollLeft(/*Integer*/ scrollLeft, /*Document?*/ doc){ + // summary: + // In RTL direction, scrollLeft should be a negative value, but IE + // returns a positive one. All codes using documentElement.scrollLeft + // must call this function to fix this error, otherwise the position + // will offset to right when there is a horizontal scrollbar. + // scrollLeft: Number + // doc: Document? + // Optional document to query. If unspecified, use win.doc. + // returns: Number + + // In RTL direction, scrollLeft should be a negative value, but IE + // returns a positive one. All codes using documentElement.scrollLeft + // must call this function to fix this error, otherwise the position + // will offset to right when there is a horizontal scrollbar. + + doc = doc || win.doc; + var ie = has("ie"); + if(ie && !geom.isBodyLtr(doc)){ + var qk = has("quirks"), + de = qk ? win.body(doc) : doc.documentElement, + pwin = win.global; // TODO: use winUtils.get(doc) after resolving circular dependency b/w dom-geometry.js and dojo/window.js + if(ie == 6 && !qk && pwin.frameElement && de.scrollHeight > de.clientHeight){ + scrollLeft += de.clientLeft; // workaround ie6+strict+rtl+iframe+vertical-scrollbar bug where clientWidth is too small by clientLeft pixels + } + return (ie < 8 || qk) ? (scrollLeft + de.clientWidth - de.scrollWidth) : -scrollLeft; // Integer + } + return scrollLeft; // Integer + }; + + geom.position = function(/*DomNode*/ node, /*Boolean?*/ includeScroll){ + // summary: + // Gets the position and size of the passed element relative to + // the viewport (if includeScroll==false), or relative to the + // document root (if includeScroll==true). + // + // description: + // Returns an object of the form: + // `{ x: 100, y: 300, w: 20, h: 15 }`. + // If includeScroll==true, the x and y values will include any + // document offsets that may affect the position relative to the + // viewport. + // Uses the border-box model (inclusive of border and padding but + // not margin). Does not act as a setter. + // node: DOMNode|String + // includeScroll: Boolean? + // returns: Object + + node = dom.byId(node); + var db = win.body(node.ownerDocument), + ret = node.getBoundingClientRect(); + ret = {x: ret.left, y: ret.top, w: ret.right - ret.left, h: ret.bottom - ret.top}; + + if(has("ie") < 9){ + // On IE<9 there's a 2px offset that we need to adjust for, see dojo.getIeDocumentElementOffset() + var offset = geom.getIeDocumentElementOffset(node.ownerDocument); + + // fixes the position in IE, quirks mode + ret.x -= offset.x + (has("quirks") ? db.clientLeft + db.offsetLeft : 0); + ret.y -= offset.y + (has("quirks") ? db.clientTop + db.offsetTop : 0); + } + + // account for document scrolling + // if offsetParent is used, ret value already includes scroll position + // so we may have to actually remove that value if !includeScroll + if(includeScroll){ + var scroll = geom.docScroll(node.ownerDocument); + ret.x += scroll.x; + ret.y += scroll.y; + } + + return ret; // Object + }; + + // random "private" functions wildly used throughout the toolkit + + geom.getMarginSize = function getMarginSize(/*DomNode*/ node, /*Object*/ computedStyle){ + // summary: + // returns an object that encodes the width and height of + // the node's margin box + // node: DOMNode|String + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var me = geom.getMarginExtents(node, computedStyle || style.getComputedStyle(node)); + var size = node.getBoundingClientRect(); + return { + w: (size.right - size.left) + me.w, + h: (size.bottom - size.top) + me.h + }; + }; + + geom.normalizeEvent = function(event){ + // summary: + // Normalizes the geometry of a DOM event, normalizing the pageX, pageY, + // offsetX, offsetY, layerX, and layerX properties + // event: Object + if(!("layerX" in event)){ + event.layerX = event.offsetX; + event.layerY = event.offsetY; + } + if(!has("dom-addeventlistener")){ + // old IE version + // FIXME: scroll position query is duped from dojo/_base/html to + // avoid dependency on that entire module. Now that HTML is in + // Base, we should convert back to something similar there. + var se = event.target; + var doc = (se && se.ownerDocument) || document; + // DO NOT replace the following to use dojo/_base/window.body(), in IE, document.documentElement should be used + // here rather than document.body + var docBody = has("quirks") ? doc.body : doc.documentElement; + var offset = geom.getIeDocumentElementOffset(doc); + event.pageX = event.clientX + geom.fixIeBiDiScrollLeft(docBody.scrollLeft || 0, doc) - offset.x; + event.pageY = event.clientY + (docBody.scrollTop || 0) - offset.y; + } + }; + + // TODO: evaluate separate getters/setters for position and sizes? + + return geom; +}); + +}, +'dojo/dom-prop':function(){ +define(["exports", "./_base/kernel", "./sniff", "./_base/lang", "./dom", "./dom-style", "./dom-construct", "./_base/connect"], + function(exports, dojo, has, lang, dom, style, ctr, conn){ + // module: + // dojo/dom-prop + // summary: + // This module defines the core dojo DOM properties API. + + // TODOC: summary not showing up in output, see https://github.com/csnover/js-doc-parse/issues/42 + + // ============================= + // Element properties Functions + // ============================= + + // helper to connect events + var _evtHdlrMap = {}, _ctr = 0, _attrId = dojo._scopeName + "attrid"; + has.add('dom-textContent', function (global, doc, element) { return 'textContent' in element; }); + + exports.names = { + // properties renamed to avoid clashes with reserved words + "class": "className", + "for": "htmlFor", + // properties written as camelCase + tabindex: "tabIndex", + readonly: "readOnly", + colspan: "colSpan", + frameborder: "frameBorder", + rowspan: "rowSpan", + textcontent: "textContent", + valuetype: "valueType" + }; + + function getText(/*DOMNode*/node){ + // summary: + // recursion method for get('textContent') to use. Gets text value for a node. + // description: + // Juse uses nodedValue so things like
tags do not end up in + // the text as any sort of line return. + var text = "", ch = node.childNodes; + for(var i = 0, n; n = ch[i]; i++){ + //Skip comments. + if(n.nodeType != 8){ + if(n.nodeType == 1){ + text += getText(n); + }else{ + text += n.nodeValue; + } + } + } + return text; + } + + exports.get = function getProp(/*DOMNode|String*/ node, /*String*/ name){ + // summary: + // Gets a property on an HTML element. + // description: + // Handles normalized getting of properties on DOM nodes. + // + // node: DOMNode|String + // id or reference to the element to get the property on + // name: String + // the name of the property to get. + // returns: + // the value of the requested property or its default value + // + // example: + // | // get the current value of the "foo" property on a node + // | require(["dojo/dom-prop", "dojo/dom"], function(domProp, dom){ + // | domProp.get(dom.byId("nodeId"), "foo"); + // | // or we can just pass the id: + // | domProp.get("nodeId", "foo"); + // | }); + + node = dom.byId(node); + var lc = name.toLowerCase(), propName = exports.names[lc] || name; + + if(propName == "textContent" && !has("dom-textContent")){ + return getText(node); + } + + return node[propName]; // Anything + }; + + exports.set = function setProp(/*DOMNode|String*/ node, /*String|Object*/ name, /*String?*/ value){ + // summary: + // Sets a property on an HTML element. + // description: + // Handles normalized setting of properties on DOM nodes. + // + // When passing functions as values, note that they will not be + // directly assigned to slots on the node, but rather the default + // behavior will be removed and the new behavior will be added + // using `dojo.connect()`, meaning that event handler properties + // will be normalized and that some caveats with regards to + // non-standard behaviors for onsubmit apply. Namely that you + // should cancel form submission using `dojo.stopEvent()` on the + // passed event object instead of returning a boolean value from + // the handler itself. + // node: DOMNode|String + // id or reference to the element to set the property on + // name: String|Object + // the name of the property to set, or a hash object to set + // multiple properties at once. + // value: String? + // The value to set for the property + // returns: + // the DOM node + // + // example: + // | // use prop() to set the tab index + // | require(["dojo/dom-prop"], function(domProp){ + // | domProp.set("nodeId", "tabIndex", 3); + // | }); + // + // example: + // Set multiple values at once, including event handlers: + // | require(["dojo/dom-prop"], function(domProp){ + // | domProp.set("formId", { + // | "foo": "bar", + // | "tabIndex": -1, + // | "method": "POST", + // | }); + // | }); + + node = dom.byId(node); + var l = arguments.length; + if(l == 2 && typeof name != "string"){ // inline'd type check + // the object form of setter: the 2nd argument is a dictionary + for(var x in name){ + exports.set(node, x, name[x]); + } + return node; // DomNode + } + var lc = name.toLowerCase(), propName = exports.names[lc] || name; + if(propName == "style" && typeof value != "string"){ // inline'd type check + // special case: setting a style + style.set(node, value); + return node; // DomNode + } + if(propName == "innerHTML"){ + // special case: assigning HTML + // the hash lists elements with read-only innerHTML on IE + if(has("ie") && node.tagName.toLowerCase() in {col: 1, colgroup: 1, + table: 1, tbody: 1, tfoot: 1, thead: 1, tr: 1, title: 1}){ + ctr.empty(node); + node.appendChild(ctr.toDom(value, node.ownerDocument)); + }else{ + node[propName] = value; + } + return node; // DomNode + } + if(propName == "textContent" && !has("dom-textContent")) { + ctr.empty(node); + node.appendChild(node.ownerDocument.createTextNode(value)); + return node; + } + if(lang.isFunction(value)){ + // special case: assigning an event handler + // clobber if we can + var attrId = node[_attrId]; + if(!attrId){ + attrId = _ctr++; + node[_attrId] = attrId; + } + if(!_evtHdlrMap[attrId]){ + _evtHdlrMap[attrId] = {}; + } + var h = _evtHdlrMap[attrId][propName]; + if(h){ + //h.remove(); + conn.disconnect(h); + }else{ + try{ + delete node[propName]; + }catch(e){} + } + // ensure that event objects are normalized, etc. + if(value){ + //_evtHdlrMap[attrId][propName] = on(node, propName, value); + _evtHdlrMap[attrId][propName] = conn.connect(node, propName, value); + }else{ + node[propName] = null; + } + return node; // DomNode + } + node[propName] = value; + return node; // DomNode + }; +}); + +}, +'dojo/when':function(){ +define([ + "./Deferred", + "./promise/Promise" +], function(Deferred, Promise){ + "use strict"; + + // module: + // dojo/when + + return function when(valueOrPromise, callback, errback, progback){ + // summary: + // Transparently applies callbacks to values and/or promises. + // description: + // Accepts promises but also transparently handles non-promises. If no + // callbacks are provided returns a promise, regardless of the initial + // value. Foreign promises are converted. + // + // If callbacks are provided and the initial value is not a promise, + // the callback is executed immediately with no error handling. Returns + // a promise if the initial value is a promise, or the result of the + // callback otherwise. + // valueOrPromise: + // Either a regular value or an object with a `then()` method that + // follows the Promises/A specification. + // callback: Function? + // Callback to be invoked when the promise is resolved, or a non-promise + // is received. + // errback: Function? + // Callback to be invoked when the promise is rejected. + // progback: Function? + // Callback to be invoked when the promise emits a progress update. + // returns: dojo/promise/Promise + // Promise, or if a callback is provided, the result of the callback. + + var receivedPromise = valueOrPromise && typeof valueOrPromise.then === "function"; + var nativePromise = receivedPromise && valueOrPromise instanceof Promise; + + if(!receivedPromise){ + if(arguments.length > 1){ + return callback ? callback(valueOrPromise) : valueOrPromise; + }else{ + return new Deferred().resolve(valueOrPromise); + } + }else if(!nativePromise){ + var deferred = new Deferred(valueOrPromise.cancel); + valueOrPromise.then(deferred.resolve, deferred.reject, deferred.progress); + valueOrPromise = deferred.promise; + } + + if(callback || errback || progback){ + return valueOrPromise.then(callback, errback, progback); + } + return valueOrPromise; + }; +}); + +}, +'dojo/dom-attr':function(){ +define(["exports", "./sniff", "./_base/lang", "./dom", "./dom-style", "./dom-prop"], + function(exports, has, lang, dom, style, prop){ + // module: + // dojo/dom-attr + // summary: + // This module defines the core dojo DOM attributes API. + + // TODOC: summary not showing up in output see https://github.com/csnover/js-doc-parse/issues/42 + + // ============================= + // Element attribute Functions + // ============================= + + // This module will be obsolete soon. Use dojo/prop instead. + + // dojo/dom-attr.get() should conform to http://www.w3.org/TR/DOM-Level-2-Core/ + + // attribute-related functions (to be obsolete soon) + var forcePropNames = { + innerHTML: 1, + textContent:1, + className: 1, + htmlFor: has("ie"), + value: 1 + }, + attrNames = { + // original attribute names + classname: "class", + htmlfor: "for", + // for IE + tabindex: "tabIndex", + readonly: "readOnly" + }; + + function _hasAttr(node, name){ + var attr = node.getAttributeNode && node.getAttributeNode(name); + return !!attr && attr.specified; // Boolean + } + + // There is a difference in the presence of certain properties and their default values + // between browsers. For example, on IE "disabled" is present on all elements, + // but it is value is "false"; "tabIndex" of
returns 0 by default on IE, yet other browsers + // can return -1. + + exports.has = function hasAttr(/*DOMNode|String*/ node, /*String*/ name){ + // summary: + // Returns true if the requested attribute is specified on the + // given element, and false otherwise. + // node: DOMNode|String + // id or reference to the element to check + // name: String + // the name of the attribute + // returns: Boolean + // true if the requested attribute is specified on the + // given element, and false otherwise + + var lc = name.toLowerCase(); + return forcePropNames[prop.names[lc] || name] || _hasAttr(dom.byId(node), attrNames[lc] || name); // Boolean + }; + + exports.get = function getAttr(/*DOMNode|String*/ node, /*String*/ name){ + // summary: + // Gets an attribute on an HTML element. + // description: + // Handles normalized getting of attributes on DOM Nodes. + // node: DOMNode|String + // id or reference to the element to get the attribute on + // name: String + // the name of the attribute to get. + // returns: + // the value of the requested attribute or null if that attribute does not have a specified or + // default value; + // + // example: + // | // get the current value of the "foo" attribute on a node + // | require(["dojo/dom-attr", "dojo/dom"], function(domAttr, dom){ + // | domAttr.get(dom.byId("nodeId"), "foo"); + // | // or we can just pass the id: + // | domAttr.get("nodeId", "foo"); + // | }); + // | + + node = dom.byId(node); + var lc = name.toLowerCase(), + propName = prop.names[lc] || name, + forceProp = forcePropNames[propName], + value = node[propName]; // should we access this attribute via a property or via getAttribute()? + + if(forceProp && typeof value != "undefined"){ + // node's property + return value; // Anything + } + + if(propName == "textContent"){ + return prop.get(node, propName); + } + + if(propName != "href" && (typeof value == "boolean" || lang.isFunction(value))){ + // node's property + return value; // Anything + } + // node's attribute + // we need _hasAttr() here to guard against IE returning a default value + var attrName = attrNames[lc] || name; + return _hasAttr(node, attrName) ? node.getAttribute(attrName) : null; // Anything + }; + + exports.set = function setAttr(/*DOMNode|String*/ node, /*String|Object*/ name, /*String?*/ value){ + // summary: + // Sets an attribute on an HTML element. + // description: + // Handles normalized setting of attributes on DOM Nodes. + // + // When passing functions as values, note that they will not be + // directly assigned to slots on the node, but rather the default + // behavior will be removed and the new behavior will be added + // using `dojo.connect()`, meaning that event handler properties + // will be normalized and that some caveats with regards to + // non-standard behaviors for onsubmit apply. Namely that you + // should cancel form submission using `dojo.stopEvent()` on the + // passed event object instead of returning a boolean value from + // the handler itself. + // node: DOMNode|String + // id or reference to the element to set the attribute on + // name: String|Object + // the name of the attribute to set, or a hash of key-value pairs to set. + // value: String? + // the value to set for the attribute, if the name is a string. + // returns: + // the DOM node + // + // example: + // | // use attr() to set the tab index + // | require(["dojo/dom-attr"], function(domAttr){ + // | domAttr.set("nodeId", "tabIndex", 3); + // | }); + // + // example: + // Set multiple values at once, including event handlers: + // | require(["dojo/dom-attr"], + // | function(domAttr){ + // | domAttr.set("formId", { + // | "foo": "bar", + // | "tabIndex": -1, + // | "method": "POST" + // | } + // | }); + + node = dom.byId(node); + if(arguments.length == 2){ // inline'd type check + // the object form of setter: the 2nd argument is a dictionary + for(var x in name){ + exports.set(node, x, name[x]); + } + return node; // DomNode + } + var lc = name.toLowerCase(), + propName = prop.names[lc] || name, + forceProp = forcePropNames[propName]; + if(propName == "style" && typeof value != "string"){ // inline'd type check + // special case: setting a style + style.set(node, value); + return node; // DomNode + } + if(forceProp || typeof value == "boolean" || lang.isFunction(value)){ + return prop.set(node, name, value); + } + // node's attribute + node.setAttribute(attrNames[lc] || name, value); + return node; // DomNode + }; + + exports.remove = function removeAttr(/*DOMNode|String*/ node, /*String*/ name){ + // summary: + // Removes an attribute from an HTML element. + // node: DOMNode|String + // id or reference to the element to remove the attribute from + // name: String + // the name of the attribute to remove + + dom.byId(node).removeAttribute(attrNames[name.toLowerCase()] || name); + }; + + exports.getNodeProp = function getNodeProp(/*DomNode|String*/ node, /*String*/ name){ + // summary: + // Returns an effective value of a property or an attribute. + // node: DOMNode|String + // id or reference to the element to remove the attribute from + // name: String + // the name of the attribute + // returns: + // the value of the attribute + + node = dom.byId(node); + var lc = name.toLowerCase(), propName = prop.names[lc] || name; + if((propName in node) && propName != "href"){ + // node's property + return node[propName]; // Anything + } + // node's attribute + var attrName = attrNames[lc] || name; + return _hasAttr(node, attrName) ? node.getAttribute(attrName) : null; // Anything + }; +}); + +}, +'dojo/dom-construct':function(){ +define(["exports", "./_base/kernel", "./sniff", "./_base/window", "./dom", "./dom-attr"], + function(exports, dojo, has, win, dom, attr){ + // module: + // dojo/dom-construct + // summary: + // This module defines the core dojo DOM construction API. + + // TODOC: summary not showing up in output, see https://github.com/csnover/js-doc-parse/issues/42 + + // support stuff for toDom() + var tagWrap = { + option: ["select"], + tbody: ["table"], + thead: ["table"], + tfoot: ["table"], + tr: ["table", "tbody"], + td: ["table", "tbody", "tr"], + th: ["table", "thead", "tr"], + legend: ["fieldset"], + caption: ["table"], + colgroup: ["table"], + col: ["table", "colgroup"], + li: ["ul"] + }, + reTag = /<\s*([\w\:]+)/, + masterNode = {}, masterNum = 0, + masterName = "__" + dojo._scopeName + "ToDomId"; + + // generate start/end tag strings to use + // for the injection for each special tag wrap case. + for(var param in tagWrap){ + if(tagWrap.hasOwnProperty(param)){ + var tw = tagWrap[param]; + tw.pre = param == "option" ? '":"<"+tw.join("><")+">"; +tw.post=""; +} +} +var _d; +if(_3("ie")<=8){ +_d=function(_e){ +_e.__dojo_html5_tested="yes"; +var _f=_10("div",{innerHTML:"",style:{visibility:"hidden"}},_e.body); +if(_f.childNodes.length!==1){ +("abbr article aside audio canvas details figcaption figure footer header "+"hgroup mark meter nav output progress section summary time video").replace(/\b\w+\b/g,function(n){ +_e.createElement(n); +}); +} +_11(_f); +}; +} +function _12(_13,ref){ +var _14=ref.parentNode; +if(_14){ +_14.insertBefore(_13,ref); +} +}; +function _15(_16,ref){ +var _17=ref.parentNode; +if(_17){ +if(_17.lastChild==ref){ +_17.appendChild(_16); +}else{ +_17.insertBefore(_16,ref.nextSibling); +} +} +}; +_1.toDom=function toDom(_18,doc){ +doc=doc||_4.doc; +var _19=doc[_b]; +if(!_19){ +doc[_b]=_19=++_a+""; +_9[_19]=doc.createElement("div"); +} +if(_3("ie")<=8){ +if(!doc.__dojo_html5_tested&&doc.body){ +_d(doc); +} +} +_18+=""; +var _1a=_18.match(_8),tag=_1a?_1a[1].toLowerCase():"",_1b=_9[_19],_1c,i,fc,df; +if(_1a&&_7[tag]){ +_1c=_7[tag]; +_1b.innerHTML=_1c.pre+_18+_1c.post; +for(i=_1c.length;i;--i){ +_1b=_1b.firstChild; +} +}else{ +_1b.innerHTML=_18; +} +if(_1b.childNodes.length==1){ +return _1b.removeChild(_1b.firstChild); +} +df=doc.createDocumentFragment(); +while((fc=_1b.firstChild)){ +df.appendChild(fc); +} +return df; +}; +_1.place=function place(_1d,_1e,_1f){ +_1e=_5.byId(_1e); +if(typeof _1d=="string"){ +_1d=/^\s*' : "<" + tw.join("><") + ">"; + tw.post = ""; + // the last line is destructive: it reverses the array, + // but we don't care at this point + } + } + + var html5domfix; + if(has("ie") <= 8){ + html5domfix = function(doc){ + doc.__dojo_html5_tested = "yes"; + var div = create('div', {innerHTML: "", style: {visibility: "hidden"}}, doc.body); + if(div.childNodes.length !== 1){ + ('abbr article aside audio canvas details figcaption figure footer header ' + + 'hgroup mark meter nav output progress section summary time video').replace( + /\b\w+\b/g, function(n){ + doc.createElement(n); + } + ); + } + destroy(div); + } + } + + function _insertBefore(/*DomNode*/ node, /*DomNode*/ ref){ + var parent = ref.parentNode; + if(parent){ + parent.insertBefore(node, ref); + } + } + + function _insertAfter(/*DomNode*/ node, /*DomNode*/ ref){ + // summary: + // Try to insert node after ref + var parent = ref.parentNode; + if(parent){ + if(parent.lastChild == ref){ + parent.appendChild(node); + }else{ + parent.insertBefore(node, ref.nextSibling); + } + } + } + + exports.toDom = function toDom(frag, doc){ + // summary: + // instantiates an HTML fragment returning the corresponding DOM. + // frag: String + // the HTML fragment + // doc: DocumentNode? + // optional document to use when creating DOM nodes, defaults to + // dojo/_base/window.doc if not specified. + // returns: + // Document fragment, unless it's a single node in which case it returns the node itself + // example: + // Create a table row: + // | require(["dojo/dom-construct"], function(domConstruct){ + // | var tr = domConstruct.toDom("First!"); + // | }); + + doc = doc || win.doc; + var masterId = doc[masterName]; + if(!masterId){ + doc[masterName] = masterId = ++masterNum + ""; + masterNode[masterId] = doc.createElement("div"); + } + + if(has("ie") <= 8){ + if(!doc.__dojo_html5_tested && doc.body){ + html5domfix(doc); + } + } + + // make sure the frag is a string. + frag += ""; + + // find the starting tag, and get node wrapper + var match = frag.match(reTag), + tag = match ? match[1].toLowerCase() : "", + master = masterNode[masterId], + wrap, i, fc, df; + if(match && tagWrap[tag]){ + wrap = tagWrap[tag]; + master.innerHTML = wrap.pre + frag + wrap.post; + for(i = wrap.length; i; --i){ + master = master.firstChild; + } + }else{ + master.innerHTML = frag; + } + + // one node shortcut => return the node itself + if(master.childNodes.length == 1){ + return master.removeChild(master.firstChild); // DOMNode + } + + // return multiple nodes as a document fragment + df = doc.createDocumentFragment(); + while((fc = master.firstChild)){ // intentional assignment + df.appendChild(fc); + } + return df; // DocumentFragment + }; + + exports.place = function place(node, refNode, position){ + // summary: + // Attempt to insert node into the DOM, choosing from various positioning options. + // Returns the first argument resolved to a DOM node. + // node: DOMNode|DocumentFragment|String + // id or node reference, or HTML fragment starting with "<" to place relative to refNode + // refNode: DOMNode|String + // id or node reference to use as basis for placement + // position: String|Number? + // string noting the position of node relative to refNode or a + // number indicating the location in the childNodes collection of refNode. + // Accepted string values are: + // + // - before + // - after + // - replace + // - only + // - first + // - last + // + // "first" and "last" indicate positions as children of refNode, "replace" replaces refNode, + // "only" replaces all children. position defaults to "last" if not specified + // returns: DOMNode + // Returned values is the first argument resolved to a DOM node. + // + // .place() is also a method of `dojo/NodeList`, allowing `dojo/query` node lookups. + // example: + // Place a node by string id as the last child of another node by string id: + // | require(["dojo/dom-construct"], function(domConstruct){ + // | domConstruct.place("someNode", "anotherNode"); + // | }); + // example: + // Place a node by string id before another node by string id + // | require(["dojo/dom-construct"], function(domConstruct){ + // | domConstruct.place("someNode", "anotherNode", "before"); + // | }); + // example: + // Create a Node, and place it in the body element (last child): + // | require(["dojo/dom-construct", "dojo/_base/window" + // | ], function(domConstruct, win){ + // | domConstruct.place("
", win.body()); + // | }); + // example: + // Put a new LI as the first child of a list by id: + // | require(["dojo/dom-construct"], function(domConstruct){ + // | domConstruct.place("
  • ", "someUl", "first"); + // | }); + + refNode = dom.byId(refNode); + if(typeof node == "string"){ // inline'd type check + node = /^\s*hi

    " }); + // | }); + // + // example: + // Place a new DIV in the BODY, with no attributes set + // | require(["dojo/dom-construct", "dojo/_base/window"], function(domConstruct, win){ + // | var n = domConstruct.create("div", null, win.body()); + // | }); + // + // example: + // Create an UL, and populate it with LI's. Place the list as the first-child of a + // node with id="someId": + // | require(["dojo/dom-construct", "dojo/_base/array"], + // | function(domConstruct, arrayUtil){ + // | var ul = domConstruct.create("ul", null, "someId", "first"); + // | var items = ["one", "two", "three", "four"]; + // | arrayUtil.forEach(items, function(data){ + // | domConstruct.create("li", { innerHTML: data }, ul); + // | }); + // | }); + // + // example: + // Create an anchor, with an href. Place in BODY: + // | require(["dojo/dom-construct", "dojo/_base/window"], function(domConstruct, win){ + // | domConstruct.create("a", { href:"foo.html", title:"Goto FOO!" }, win.body()); + // | }); + + var doc = win.doc; + if(refNode){ + refNode = dom.byId(refNode); + doc = refNode.ownerDocument; + } + if(typeof tag == "string"){ // inline'd type check + tag = doc.createElement(tag); + } + if(attrs){ attr.set(tag, attrs); } + if(refNode){ exports.place(tag, refNode, pos); } + return tag; // DomNode + }; + + function _empty(/*DomNode*/ node){ + // TODO: remove this if() block in 2.0 when we no longer have to worry about IE memory leaks, + // and then uncomment the emptyGrandchildren() test case from html.html. + // Note that besides fixing #16957, using removeChild() is actually faster than setting node.innerHTML, + // see http://jsperf.com/clear-dom-node. + if("innerHTML" in node){ + try{ + // fast path + node.innerHTML = ""; + return; + }catch(e){ + // innerHTML is readOnly (e.g. TABLE (sub)elements in quirks mode) + // Fall through (saves bytes) + } + } + + // SVG/strict elements don't support innerHTML + for(var c; c = node.lastChild;){ // intentional assignment + node.removeChild(c); + } + } + + exports.empty = function empty(/*DOMNode|String*/ node){ + // summary: + // safely removes all children of the node. + // node: DOMNode|String + // a reference to a DOM node or an id. + // example: + // Destroy node's children byId: + // | require(["dojo/dom-construct"], function(domConstruct){ + // | domConstruct.empty("someId"); + // | }); + + _empty(dom.byId(node)); + }; + + + function _destroy(/*DomNode*/ node, /*DomNode*/ parent){ + // in IE quirks, node.canHaveChildren can be false but firstChild can be non-null (OBJECT/APPLET) + if(node.firstChild){ + _empty(node); + } + if(parent){ + // removeNode(false) doesn't leak in IE 6+, but removeChild() and removeNode(true) are known to leak under IE 8- while 9+ is TBD. + // In IE quirks mode, PARAM nodes as children of OBJECT/APPLET nodes have a removeNode method that does nothing and + // the parent node has canHaveChildren=false even though removeChild correctly removes the PARAM children. + // In IE, SVG/strict nodes don't have a removeNode method nor a canHaveChildren boolean. + has("ie") && parent.canHaveChildren && "removeNode" in node ? node.removeNode(false) : parent.removeChild(node); + } + } + var destroy = exports.destroy = function destroy(/*DOMNode|String*/ node){ + // summary: + // Removes a node from its parent, clobbering it and all of its + // children. + // + // description: + // Removes a node from its parent, clobbering it and all of its + // children. Function only works with DomNodes, and returns nothing. + // + // node: DOMNode|String + // A String ID or DomNode reference of the element to be destroyed + // + // example: + // Destroy a node byId: + // | require(["dojo/dom-construct"], function(domConstruct){ + // | domConstruct.destroy("someId"); + // | }); + + node = dom.byId(node); + if(!node){ return; } + _destroy(node, node.parentNode); + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-form.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-form.js new file mode 100644 index 00000000..ebada3dc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-form.js @@ -0,0 +1,81 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/dom-form",["./_base/lang","./dom","./io-query","./json"],function(_1,_2,_3,_4){ +function _5(_6,_7,_8){ +if(_8===null){ +return; +} +var _9=_6[_7]; +if(typeof _9=="string"){ +_6[_7]=[_9,_8]; +}else{ +if(_1.isArray(_9)){ +_9.push(_8); +}else{ +_6[_7]=_8; +} +} +}; +var _a="file|submit|image|reset|button"; +var _b={fieldToObject:function fieldToObject(_c){ +var _d=null; +_c=_2.byId(_c); +if(_c){ +var _e=_c.name,_f=(_c.type||"").toLowerCase(); +if(_e&&_f&&!_c.disabled){ +if(_f=="radio"||_f=="checkbox"){ +if(_c.checked){ +_d=_c.value; +} +}else{ +if(_c.multiple){ +_d=[]; +var _10=[_c.firstChild]; +while(_10.length){ +for(var _11=_10.pop();_11;_11=_11.nextSibling){ +if(_11.nodeType==1&&_11.tagName.toLowerCase()=="option"){ +if(_11.selected){ +_d.push(_11.value); +} +}else{ +if(_11.nextSibling){ +_10.push(_11.nextSibling); +} +if(_11.firstChild){ +_10.push(_11.firstChild); +} +break; +} +} +} +}else{ +_d=_c.value; +} +} +} +} +return _d; +},toObject:function formToObject(_12){ +var ret={},_13=_2.byId(_12).elements; +for(var i=0,l=_13.length;i + // | + // | + // | + // | + // | + // + // yields this object structure as the result of a call to + // formToObject(): + // + // | { + // | blah: "blah", + // | multi: [ + // | "thud", + // | "thonk" + // | ] + // | }; + + var ret = {}, elems = dom.byId(formNode).elements; + for(var i = 0, l = elems.length; i < l; ++i){ + var item = elems[i], _in = item.name, type = (item.type || "").toLowerCase(); + if(_in && type && exclude.indexOf(type) < 0 && !item.disabled){ + setValue(ret, _in, form.fieldToObject(item)); + if(type == "image"){ + ret[_in + ".x"] = ret[_in + ".y"] = ret[_in].x = ret[_in].y = 0; + } + } + } + return ret; // Object + }, + + toQuery: function formToQuery(/*DOMNode|String*/ formNode){ + // summary: + // Returns a URL-encoded string representing the form passed as either a + // node or string ID identifying the form to serialize + // formNode: DOMNode|String + // returns: String + + return ioq.objectToQuery(form.toObject(formNode)); // String + }, + + toJson: function formToJson(/*DOMNode|String*/ formNode, /*Boolean?*/ prettyPrint){ + // summary: + // Create a serialized JSON string from a form node or string + // ID identifying the form to serialize + // formNode: DOMNode|String + // prettyPrint: Boolean? + // returns: String + + return json.stringify(form.toObject(formNode), null, prettyPrint ? 4 : 0); // String + } + }; + + return form; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-geometry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-geometry.js new file mode 100644 index 00000000..8db891f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-geometry.js @@ -0,0 +1,212 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/dom-geometry",["./sniff","./_base/window","./dom","./dom-style"],function(_1,_2,_3,_4){ +var _5={}; +_5.boxModel="content-box"; +if(_1("ie")){ +_5.boxModel=document.compatMode=="BackCompat"?"border-box":"content-box"; +} +_5.getPadExtents=function getPadExtents(_6,_7){ +_6=_3.byId(_6); +var s=_7||_4.getComputedStyle(_6),px=_4.toPixelValue,l=px(_6,s.paddingLeft),t=px(_6,s.paddingTop),r=px(_6,s.paddingRight),b=px(_6,s.paddingBottom); +return {l:l,t:t,r:r,b:b,w:l+r,h:t+b}; +}; +var _8="none"; +_5.getBorderExtents=function getBorderExtents(_9,_a){ +_9=_3.byId(_9); +var px=_4.toPixelValue,s=_a||_4.getComputedStyle(_9),l=s.borderLeftStyle!=_8?px(_9,s.borderLeftWidth):0,t=s.borderTopStyle!=_8?px(_9,s.borderTopWidth):0,r=s.borderRightStyle!=_8?px(_9,s.borderRightWidth):0,b=s.borderBottomStyle!=_8?px(_9,s.borderBottomWidth):0; +return {l:l,t:t,r:r,b:b,w:l+r,h:t+b}; +}; +_5.getPadBorderExtents=function getPadBorderExtents(_b,_c){ +_b=_3.byId(_b); +var s=_c||_4.getComputedStyle(_b),p=_5.getPadExtents(_b,s),b=_5.getBorderExtents(_b,s); +return {l:p.l+b.l,t:p.t+b.t,r:p.r+b.r,b:p.b+b.b,w:p.w+b.w,h:p.h+b.h}; +}; +_5.getMarginExtents=function getMarginExtents(_d,_e){ +_d=_3.byId(_d); +var s=_e||_4.getComputedStyle(_d),px=_4.toPixelValue,l=px(_d,s.marginLeft),t=px(_d,s.marginTop),r=px(_d,s.marginRight),b=px(_d,s.marginBottom); +return {l:l,t:t,r:r,b:b,w:l+r,h:t+b}; +}; +_5.getMarginBox=function getMarginBox(_f,_10){ +_f=_3.byId(_f); +var s=_10||_4.getComputedStyle(_f),me=_5.getMarginExtents(_f,s),l=_f.offsetLeft-me.l,t=_f.offsetTop-me.t,p=_f.parentNode,px=_4.toPixelValue,pcs; +if(_1("mozilla")){ +var sl=parseFloat(s.left),st=parseFloat(s.top); +if(!isNaN(sl)&&!isNaN(st)){ +l=sl; +t=st; +}else{ +if(p&&p.style){ +pcs=_4.getComputedStyle(p); +if(pcs.overflow!="visible"){ +l+=pcs.borderLeftStyle!=_8?px(_f,pcs.borderLeftWidth):0; +t+=pcs.borderTopStyle!=_8?px(_f,pcs.borderTopWidth):0; +} +} +} +}else{ +if(_1("opera")||(_1("ie")==8&&!_1("quirks"))){ +if(p){ +pcs=_4.getComputedStyle(p); +l-=pcs.borderLeftStyle!=_8?px(_f,pcs.borderLeftWidth):0; +t-=pcs.borderTopStyle!=_8?px(_f,pcs.borderTopWidth):0; +} +} +} +return {l:l,t:t,w:_f.offsetWidth+me.w,h:_f.offsetHeight+me.h}; +}; +_5.getContentBox=function getContentBox(_11,_12){ +_11=_3.byId(_11); +var s=_12||_4.getComputedStyle(_11),w=_11.clientWidth,h,pe=_5.getPadExtents(_11,s),be=_5.getBorderExtents(_11,s); +if(!w){ +w=_11.offsetWidth; +h=_11.offsetHeight; +}else{ +h=_11.clientHeight; +be.w=be.h=0; +} +if(_1("opera")){ +pe.l+=be.l; +pe.t+=be.t; +} +return {l:pe.l,t:pe.t,w:w-pe.w-be.w,h:h-pe.h-be.h}; +}; +function _13(_14,l,t,w,h,u){ +u=u||"px"; +var s=_14.style; +if(!isNaN(l)){ +s.left=l+u; +} +if(!isNaN(t)){ +s.top=t+u; +} +if(w>=0){ +s.width=w+u; +} +if(h>=0){ +s.height=h+u; +} +}; +function _15(_16){ +return _16.tagName.toLowerCase()=="button"||_16.tagName.toLowerCase()=="input"&&(_16.getAttribute("type")||"").toLowerCase()=="button"; +}; +function _17(_18){ +return _5.boxModel=="border-box"||_18.tagName.toLowerCase()=="table"||_15(_18); +}; +_5.setContentSize=function setContentSize(_19,box,_1a){ +_19=_3.byId(_19); +var w=box.w,h=box.h; +if(_17(_19)){ +var pb=_5.getPadBorderExtents(_19,_1a); +if(w>=0){ +w+=pb.w; +} +if(h>=0){ +h+=pb.h; +} +} +_13(_19,NaN,NaN,w,h); +}; +var _1b={l:0,t:0,w:0,h:0}; +_5.setMarginBox=function setMarginBox(_1c,box,_1d){ +_1c=_3.byId(_1c); +var s=_1d||_4.getComputedStyle(_1c),w=box.w,h=box.h,pb=_17(_1c)?_1b:_5.getPadBorderExtents(_1c,s),mb=_5.getMarginExtents(_1c,s); +if(_1("webkit")){ +if(_15(_1c)){ +var ns=_1c.style; +if(w>=0&&!ns.width){ +ns.width="4px"; +} +if(h>=0&&!ns.height){ +ns.height="4px"; +} +} +} +if(w>=0){ +w=Math.max(w-pb.w-mb.w,0); +} +if(h>=0){ +h=Math.max(h-pb.h-mb.h,0); +} +_13(_1c,box.l,box.t,w,h); +}; +_5.isBodyLtr=function isBodyLtr(doc){ +doc=doc||_2.doc; +return (_2.body(doc).dir||doc.documentElement.dir||"ltr").toLowerCase()=="ltr"; +}; +_5.docScroll=function docScroll(doc){ +doc=doc||_2.doc; +var _1e=_2.doc.parentWindow||_2.doc.defaultView; +return "pageXOffset" in _1e?{x:_1e.pageXOffset,y:_1e.pageYOffset}:(_1e=_1("quirks")?_2.body(doc):doc.documentElement)&&{x:_5.fixIeBiDiScrollLeft(_1e.scrollLeft||0,doc),y:_1e.scrollTop||0}; +}; +if(_1("ie")){ +_5.getIeDocumentElementOffset=function getIeDocumentElementOffset(doc){ +doc=doc||_2.doc; +var de=doc.documentElement; +if(_1("ie")<8){ +var r=de.getBoundingClientRect(),l=r.left,t=r.top; +if(_1("ie")<7){ +l+=de.clientLeft; +t+=de.clientTop; +} +return {x:l<0?0:l,y:t<0?0:t}; +}else{ +return {x:0,y:0}; +} +}; +} +_5.fixIeBiDiScrollLeft=function fixIeBiDiScrollLeft(_1f,doc){ +doc=doc||_2.doc; +var ie=_1("ie"); +if(ie&&!_5.isBodyLtr(doc)){ +var qk=_1("quirks"),de=qk?_2.body(doc):doc.documentElement,_20=_2.global; +if(ie==6&&!qk&&_20.frameElement&&de.scrollHeight>de.clientHeight){ +_1f+=de.clientLeft; +} +return (ie<8||qk)?(_1f+de.clientWidth-de.scrollWidth):-_1f; +} +return _1f; +}; +_5.position=function(_21,_22){ +_21=_3.byId(_21); +var db=_2.body(_21.ownerDocument),ret=_21.getBoundingClientRect(); +ret={x:ret.left,y:ret.top,w:ret.right-ret.left,h:ret.bottom-ret.top}; +if(_1("ie")<9){ +var _23=_5.getIeDocumentElementOffset(_21.ownerDocument); +ret.x-=_23.x+(_1("quirks")?db.clientLeft+db.offsetLeft:0); +ret.y-=_23.y+(_1("quirks")?db.clientTop+db.offsetTop:0); +} +if(_22){ +var _24=_5.docScroll(_21.ownerDocument); +ret.x+=_24.x; +ret.y+=_24.y; +} +return ret; +}; +_5.getMarginSize=function getMarginSize(_25,_26){ +_25=_3.byId(_25); +var me=_5.getMarginExtents(_25,_26||_4.getComputedStyle(_25)); +var _27=_25.getBoundingClientRect(); +return {w:(_27.right-_27.left)+me.w,h:(_27.bottom-_27.top)+me.h}; +}; +_5.normalizeEvent=function(_28){ +if(!("layerX" in _28)){ +_28.layerX=_28.offsetX; +_28.layerY=_28.offsetY; +} +if(!_1("dom-addeventlistener")){ +var se=_28.target; +var doc=(se&&se.ownerDocument)||document; +var _29=_1("quirks")?doc.body:doc.documentElement; +var _2a=_5.getIeDocumentElementOffset(doc); +_28.pageX=_28.clientX+_5.fixIeBiDiScrollLeft(_29.scrollLeft||0,doc)-_2a.x; +_28.pageY=_28.clientY+(_29.scrollTop||0)-_2a.y; +} +}; +return _5; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-geometry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-geometry.js.uncompressed.js new file mode 100644 index 00000000..a5d75182 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-geometry.js.uncompressed.js @@ -0,0 +1,605 @@ +define("dojo/dom-geometry", ["./sniff", "./_base/window","./dom", "./dom-style"], + function(has, win, dom, style){ + // module: + // dojo/dom-geometry + + // the result object + var geom = { + // summary: + // This module defines the core dojo DOM geometry API. + }; + + // Box functions will assume this model. + // On IE/Opera, BORDER_BOX will be set if the primary document is in quirks mode. + // Can be set to change behavior of box setters. + + // can be either: + // "border-box" + // "content-box" (default) + geom.boxModel = "content-box"; + + // We punt per-node box mode testing completely. + // If anybody cares, we can provide an additional (optional) unit + // that overrides existing code to include per-node box sensitivity. + + // Opera documentation claims that Opera 9 uses border-box in BackCompat mode. + // but experiments (Opera 9.10.8679 on Windows Vista) indicate that it actually continues to use content-box. + // IIRC, earlier versions of Opera did in fact use border-box. + // Opera guys, this is really confusing. Opera being broken in quirks mode is not our fault. + + if(has("ie") /*|| has("opera")*/){ + // client code may have to adjust if compatMode varies across iframes + geom.boxModel = document.compatMode == "BackCompat" ? "border-box" : "content-box"; + } + + geom.getPadExtents = function getPadExtents(/*DomNode*/ node, /*Object*/ computedStyle){ + // summary: + // Returns object with special values specifically useful for node + // fitting. + // description: + // Returns an object with `w`, `h`, `l`, `t` properties: + // | l/t/r/b = left/top/right/bottom padding (respectively) + // | w = the total of the left and right padding + // | h = the total of the top and bottom padding + // If 'node' has position, l/t forms the origin for child nodes. + // The w/h are used for calculating boxes. + // Normally application code will not need to invoke this + // directly, and will use the ...box... functions instead. + // node: DOMNode + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var s = computedStyle || style.getComputedStyle(node), px = style.toPixelValue, + l = px(node, s.paddingLeft), t = px(node, s.paddingTop), r = px(node, s.paddingRight), b = px(node, s.paddingBottom); + return {l: l, t: t, r: r, b: b, w: l + r, h: t + b}; + }; + + var none = "none"; + + geom.getBorderExtents = function getBorderExtents(/*DomNode*/ node, /*Object*/ computedStyle){ + // summary: + // returns an object with properties useful for noting the border + // dimensions. + // description: + // - l/t/r/b = the sum of left/top/right/bottom border (respectively) + // - w = the sum of the left and right border + // - h = the sum of the top and bottom border + // + // The w/h are used for calculating boxes. + // Normally application code will not need to invoke this + // directly, and will use the ...box... functions instead. + // node: DOMNode + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var px = style.toPixelValue, s = computedStyle || style.getComputedStyle(node), + l = s.borderLeftStyle != none ? px(node, s.borderLeftWidth) : 0, + t = s.borderTopStyle != none ? px(node, s.borderTopWidth) : 0, + r = s.borderRightStyle != none ? px(node, s.borderRightWidth) : 0, + b = s.borderBottomStyle != none ? px(node, s.borderBottomWidth) : 0; + return {l: l, t: t, r: r, b: b, w: l + r, h: t + b}; + }; + + geom.getPadBorderExtents = function getPadBorderExtents(/*DomNode*/ node, /*Object*/ computedStyle){ + // summary: + // Returns object with properties useful for box fitting with + // regards to padding. + // description: + // - l/t/r/b = the sum of left/top/right/bottom padding and left/top/right/bottom border (respectively) + // - w = the sum of the left and right padding and border + // - h = the sum of the top and bottom padding and border + // + // The w/h are used for calculating boxes. + // Normally application code will not need to invoke this + // directly, and will use the ...box... functions instead. + // node: DOMNode + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var s = computedStyle || style.getComputedStyle(node), + p = geom.getPadExtents(node, s), + b = geom.getBorderExtents(node, s); + return { + l: p.l + b.l, + t: p.t + b.t, + r: p.r + b.r, + b: p.b + b.b, + w: p.w + b.w, + h: p.h + b.h + }; + }; + + geom.getMarginExtents = function getMarginExtents(node, computedStyle){ + // summary: + // returns object with properties useful for box fitting with + // regards to box margins (i.e., the outer-box). + // + // - l/t = marginLeft, marginTop, respectively + // - w = total width, margin inclusive + // - h = total height, margin inclusive + // + // The w/h are used for calculating boxes. + // Normally application code will not need to invoke this + // directly, and will use the ...box... functions instead. + // node: DOMNode + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var s = computedStyle || style.getComputedStyle(node), px = style.toPixelValue, + l = px(node, s.marginLeft), t = px(node, s.marginTop), r = px(node, s.marginRight), b = px(node, s.marginBottom); + return {l: l, t: t, r: r, b: b, w: l + r, h: t + b}; + }; + + // Box getters work in any box context because offsetWidth/clientWidth + // are invariant wrt box context + // + // They do *not* work for display: inline objects that have padding styles + // because the user agent ignores padding (it's bogus styling in any case) + // + // Be careful with IMGs because they are inline or block depending on + // browser and browser mode. + + // Although it would be easier to read, there are not separate versions of + // _getMarginBox for each browser because: + // 1. the branching is not expensive + // 2. factoring the shared code wastes cycles (function call overhead) + // 3. duplicating the shared code wastes bytes + + geom.getMarginBox = function getMarginBox(/*DomNode*/ node, /*Object*/ computedStyle){ + // summary: + // returns an object that encodes the width, height, left and top + // positions of the node's margin box. + // node: DOMNode + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var s = computedStyle || style.getComputedStyle(node), me = geom.getMarginExtents(node, s), + l = node.offsetLeft - me.l, t = node.offsetTop - me.t, p = node.parentNode, px = style.toPixelValue, pcs; + if(has("mozilla")){ + // Mozilla: + // If offsetParent has a computed overflow != visible, the offsetLeft is decreased + // by the parent's border. + // We don't want to compute the parent's style, so instead we examine node's + // computed left/top which is more stable. + var sl = parseFloat(s.left), st = parseFloat(s.top); + if(!isNaN(sl) && !isNaN(st)){ + l = sl; + t = st; + }else{ + // If child's computed left/top are not parseable as a number (e.g. "auto"), we + // have no choice but to examine the parent's computed style. + if(p && p.style){ + pcs = style.getComputedStyle(p); + if(pcs.overflow != "visible"){ + l += pcs.borderLeftStyle != none ? px(node, pcs.borderLeftWidth) : 0; + t += pcs.borderTopStyle != none ? px(node, pcs.borderTopWidth) : 0; + } + } + } + }else if(has("opera") || (has("ie") == 8 && !has("quirks"))){ + // On Opera and IE 8, offsetLeft/Top includes the parent's border + if(p){ + pcs = style.getComputedStyle(p); + l -= pcs.borderLeftStyle != none ? px(node, pcs.borderLeftWidth) : 0; + t -= pcs.borderTopStyle != none ? px(node, pcs.borderTopWidth) : 0; + } + } + return {l: l, t: t, w: node.offsetWidth + me.w, h: node.offsetHeight + me.h}; + }; + + geom.getContentBox = function getContentBox(node, computedStyle){ + // summary: + // Returns an object that encodes the width, height, left and top + // positions of the node's content box, irrespective of the + // current box model. + // node: DOMNode + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + // clientWidth/Height are important since the automatically account for scrollbars + // fallback to offsetWidth/Height for special cases (see #3378) + node = dom.byId(node); + var s = computedStyle || style.getComputedStyle(node), w = node.clientWidth, h, + pe = geom.getPadExtents(node, s), be = geom.getBorderExtents(node, s); + if(!w){ + w = node.offsetWidth; + h = node.offsetHeight; + }else{ + h = node.clientHeight; + be.w = be.h = 0; + } + // On Opera, offsetLeft includes the parent's border + if(has("opera")){ + pe.l += be.l; + pe.t += be.t; + } + return {l: pe.l, t: pe.t, w: w - pe.w - be.w, h: h - pe.h - be.h}; + }; + + // Box setters depend on box context because interpretation of width/height styles + // vary wrt box context. + // + // The value of boxModel is used to determine box context. + // boxModel can be set directly to change behavior. + // + // Beware of display: inline objects that have padding styles + // because the user agent ignores padding (it's a bogus setup anyway) + // + // Be careful with IMGs because they are inline or block depending on + // browser and browser mode. + // + // Elements other than DIV may have special quirks, like built-in + // margins or padding, or values not detectable via computedStyle. + // In particular, margins on TABLE do not seems to appear + // at all in computedStyle on Mozilla. + + function setBox(/*DomNode*/ node, /*Number?*/ l, /*Number?*/ t, /*Number?*/ w, /*Number?*/ h, /*String?*/ u){ + // summary: + // sets width/height/left/top in the current (native) box-model + // dimensions. Uses the unit passed in u. + // node: + // DOM Node reference. Id string not supported for performance + // reasons. + // l: + // left offset from parent. + // t: + // top offset from parent. + // w: + // width in current box model. + // h: + // width in current box model. + // u: + // unit measure to use for other measures. Defaults to "px". + u = u || "px"; + var s = node.style; + if(!isNaN(l)){ + s.left = l + u; + } + if(!isNaN(t)){ + s.top = t + u; + } + if(w >= 0){ + s.width = w + u; + } + if(h >= 0){ + s.height = h + u; + } + } + + function isButtonTag(/*DomNode*/ node){ + // summary: + // True if the node is BUTTON or INPUT.type="button". + return node.tagName.toLowerCase() == "button" || + node.tagName.toLowerCase() == "input" && (node.getAttribute("type") || "").toLowerCase() == "button"; // boolean + } + + function usesBorderBox(/*DomNode*/ node){ + // summary: + // True if the node uses border-box layout. + + // We could test the computed style of node to see if a particular box + // has been specified, but there are details and we choose not to bother. + + // TABLE and BUTTON (and INPUT type=button) are always border-box by default. + // If you have assigned a different box to either one via CSS then + // box functions will break. + + return geom.boxModel == "border-box" || node.tagName.toLowerCase() == "table" || isButtonTag(node); // boolean + } + + geom.setContentSize = function setContentSize(/*DomNode*/ node, /*Object*/ box, /*Object*/ computedStyle){ + // summary: + // Sets the size of the node's contents, irrespective of margins, + // padding, or borders. + // node: DOMNode + // box: Object + // hash with optional "w", and "h" properties for "width", and "height" + // respectively. All specified properties should have numeric values in whole pixels. + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var w = box.w, h = box.h; + if(usesBorderBox(node)){ + var pb = geom.getPadBorderExtents(node, computedStyle); + if(w >= 0){ + w += pb.w; + } + if(h >= 0){ + h += pb.h; + } + } + setBox(node, NaN, NaN, w, h); + }; + + var nilExtents = {l: 0, t: 0, w: 0, h: 0}; + + geom.setMarginBox = function setMarginBox(/*DomNode*/ node, /*Object*/ box, /*Object*/ computedStyle){ + // summary: + // sets the size of the node's margin box and placement + // (left/top), irrespective of box model. Think of it as a + // passthrough to setBox that handles box-model vagaries for + // you. + // node: DOMNode + // box: Object + // hash with optional "l", "t", "w", and "h" properties for "left", "right", "width", and "height" + // respectively. All specified properties should have numeric values in whole pixels. + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var s = computedStyle || style.getComputedStyle(node), w = box.w, h = box.h, + // Some elements have special padding, margin, and box-model settings. + // To use box functions you may need to set padding, margin explicitly. + // Controlling box-model is harder, in a pinch you might set dojo/dom-geometry.boxModel. + pb = usesBorderBox(node) ? nilExtents : geom.getPadBorderExtents(node, s), + mb = geom.getMarginExtents(node, s); + if(has("webkit")){ + // on Safari (3.1.2), button nodes with no explicit size have a default margin + // setting an explicit size eliminates the margin. + // We have to swizzle the width to get correct margin reading. + if(isButtonTag(node)){ + var ns = node.style; + if(w >= 0 && !ns.width){ + ns.width = "4px"; + } + if(h >= 0 && !ns.height){ + ns.height = "4px"; + } + } + } + if(w >= 0){ + w = Math.max(w - pb.w - mb.w, 0); + } + if(h >= 0){ + h = Math.max(h - pb.h - mb.h, 0); + } + setBox(node, box.l, box.t, w, h); + }; + + // ============================= + // Positioning + // ============================= + + geom.isBodyLtr = function isBodyLtr(/*Document?*/ doc){ + // summary: + // Returns true if the current language is left-to-right, and false otherwise. + // doc: Document? + // Optional document to query. If unspecified, use win.doc. + // returns: Boolean + + doc = doc || win.doc; + return (win.body(doc).dir || doc.documentElement.dir || "ltr").toLowerCase() == "ltr"; // Boolean + }; + + geom.docScroll = function docScroll(/*Document?*/ doc){ + // summary: + // Returns an object with {node, x, y} with corresponding offsets. + // doc: Document? + // Optional document to query. If unspecified, use win.doc. + // returns: Object + + doc = doc || win.doc; + var node = win.doc.parentWindow || win.doc.defaultView; // use UI window, not dojo.global window. TODO: use dojo/window::get() except for circular dependency problem + return "pageXOffset" in node ? {x: node.pageXOffset, y: node.pageYOffset } : + (node = has("quirks") ? win.body(doc) : doc.documentElement) && + {x: geom.fixIeBiDiScrollLeft(node.scrollLeft || 0, doc), y: node.scrollTop || 0 }; + }; + + if(has("ie")){ + geom.getIeDocumentElementOffset = function getIeDocumentElementOffset(/*Document?*/ doc){ + // summary: + // returns the offset in x and y from the document body to the + // visual edge of the page for IE + // doc: Document? + // Optional document to query. If unspecified, use win.doc. + // description: + // The following values in IE contain an offset: + // | event.clientX + // | event.clientY + // | node.getBoundingClientRect().left + // | node.getBoundingClientRect().top + // But other position related values do not contain this offset, + // such as node.offsetLeft, node.offsetTop, node.style.left and + // node.style.top. The offset is always (2, 2) in LTR direction. + // When the body is in RTL direction, the offset counts the width + // of left scroll bar's width. This function computes the actual + // offset. + + //NOTE: assumes we're being called in an IE browser + + doc = doc || win.doc; + var de = doc.documentElement; // only deal with HTML element here, position() handles body/quirks + + if(has("ie") < 8){ + var r = de.getBoundingClientRect(), // works well for IE6+ + l = r.left, t = r.top; + if(has("ie") < 7){ + l += de.clientLeft; // scrollbar size in strict/RTL, or, + t += de.clientTop; // HTML border size in strict + } + return { + x: l < 0 ? 0 : l, // FRAME element border size can lead to inaccurate negative values + y: t < 0 ? 0 : t + }; + }else{ + return { + x: 0, + y: 0 + }; + } + }; + } + + geom.fixIeBiDiScrollLeft = function fixIeBiDiScrollLeft(/*Integer*/ scrollLeft, /*Document?*/ doc){ + // summary: + // In RTL direction, scrollLeft should be a negative value, but IE + // returns a positive one. All codes using documentElement.scrollLeft + // must call this function to fix this error, otherwise the position + // will offset to right when there is a horizontal scrollbar. + // scrollLeft: Number + // doc: Document? + // Optional document to query. If unspecified, use win.doc. + // returns: Number + + // In RTL direction, scrollLeft should be a negative value, but IE + // returns a positive one. All codes using documentElement.scrollLeft + // must call this function to fix this error, otherwise the position + // will offset to right when there is a horizontal scrollbar. + + doc = doc || win.doc; + var ie = has("ie"); + if(ie && !geom.isBodyLtr(doc)){ + var qk = has("quirks"), + de = qk ? win.body(doc) : doc.documentElement, + pwin = win.global; // TODO: use winUtils.get(doc) after resolving circular dependency b/w dom-geometry.js and dojo/window.js + if(ie == 6 && !qk && pwin.frameElement && de.scrollHeight > de.clientHeight){ + scrollLeft += de.clientLeft; // workaround ie6+strict+rtl+iframe+vertical-scrollbar bug where clientWidth is too small by clientLeft pixels + } + return (ie < 8 || qk) ? (scrollLeft + de.clientWidth - de.scrollWidth) : -scrollLeft; // Integer + } + return scrollLeft; // Integer + }; + + geom.position = function(/*DomNode*/ node, /*Boolean?*/ includeScroll){ + // summary: + // Gets the position and size of the passed element relative to + // the viewport (if includeScroll==false), or relative to the + // document root (if includeScroll==true). + // + // description: + // Returns an object of the form: + // `{ x: 100, y: 300, w: 20, h: 15 }`. + // If includeScroll==true, the x and y values will include any + // document offsets that may affect the position relative to the + // viewport. + // Uses the border-box model (inclusive of border and padding but + // not margin). Does not act as a setter. + // node: DOMNode|String + // includeScroll: Boolean? + // returns: Object + + node = dom.byId(node); + var db = win.body(node.ownerDocument), + ret = node.getBoundingClientRect(); + ret = {x: ret.left, y: ret.top, w: ret.right - ret.left, h: ret.bottom - ret.top}; + + if(has("ie") < 9){ + // On IE<9 there's a 2px offset that we need to adjust for, see dojo.getIeDocumentElementOffset() + var offset = geom.getIeDocumentElementOffset(node.ownerDocument); + + // fixes the position in IE, quirks mode + ret.x -= offset.x + (has("quirks") ? db.clientLeft + db.offsetLeft : 0); + ret.y -= offset.y + (has("quirks") ? db.clientTop + db.offsetTop : 0); + } + + // account for document scrolling + // if offsetParent is used, ret value already includes scroll position + // so we may have to actually remove that value if !includeScroll + if(includeScroll){ + var scroll = geom.docScroll(node.ownerDocument); + ret.x += scroll.x; + ret.y += scroll.y; + } + + return ret; // Object + }; + + // random "private" functions wildly used throughout the toolkit + + geom.getMarginSize = function getMarginSize(/*DomNode*/ node, /*Object*/ computedStyle){ + // summary: + // returns an object that encodes the width and height of + // the node's margin box + // node: DOMNode|String + // computedStyle: Object? + // This parameter accepts computed styles object. + // If this parameter is omitted, the functions will call + // dojo/dom-style.getComputedStyle to get one. It is a better way, calling + // dojo/dom-style.getComputedStyle once, and then pass the reference to this + // computedStyle parameter. Wherever possible, reuse the returned + // object of dojo/dom-style.getComputedStyle(). + + node = dom.byId(node); + var me = geom.getMarginExtents(node, computedStyle || style.getComputedStyle(node)); + var size = node.getBoundingClientRect(); + return { + w: (size.right - size.left) + me.w, + h: (size.bottom - size.top) + me.h + }; + }; + + geom.normalizeEvent = function(event){ + // summary: + // Normalizes the geometry of a DOM event, normalizing the pageX, pageY, + // offsetX, offsetY, layerX, and layerX properties + // event: Object + if(!("layerX" in event)){ + event.layerX = event.offsetX; + event.layerY = event.offsetY; + } + if(!has("dom-addeventlistener")){ + // old IE version + // FIXME: scroll position query is duped from dojo/_base/html to + // avoid dependency on that entire module. Now that HTML is in + // Base, we should convert back to something similar there. + var se = event.target; + var doc = (se && se.ownerDocument) || document; + // DO NOT replace the following to use dojo/_base/window.body(), in IE, document.documentElement should be used + // here rather than document.body + var docBody = has("quirks") ? doc.body : doc.documentElement; + var offset = geom.getIeDocumentElementOffset(doc); + event.pageX = event.clientX + geom.fixIeBiDiScrollLeft(docBody.scrollLeft || 0, doc) - offset.x; + event.pageY = event.clientY + (docBody.scrollTop || 0) - offset.y; + } + }; + + // TODO: evaluate separate getters/setters for position and sizes? + + return geom; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-prop.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-prop.js new file mode 100644 index 00000000..1f61a0f6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-prop.js @@ -0,0 +1,92 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/dom-prop",["exports","./_base/kernel","./sniff","./_base/lang","./dom","./dom-style","./dom-construct","./_base/connect"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +var _9={},_a=0,_b=_2._scopeName+"attrid"; +_3.add("dom-textContent",function(_c,_d,_e){ +return "textContent" in _e; +}); +_1.names={"class":"className","for":"htmlFor",tabindex:"tabIndex",readonly:"readOnly",colspan:"colSpan",frameborder:"frameBorder",rowspan:"rowSpan",textcontent:"textContent",valuetype:"valueType"}; +function _f(_10){ +var _11="",ch=_10.childNodes; +for(var i=0,n;n=ch[i];i++){ +if(n.nodeType!=8){ +if(n.nodeType==1){ +_11+=_f(n); +}else{ +_11+=n.nodeValue; +} +} +} +return _11; +}; +_1.get=function getProp(_12,_13){ +_12=_5.byId(_12); +var lc=_13.toLowerCase(),_14=_1.names[lc]||_13; +if(_14=="textContent"&&!_3("dom-textContent")){ +return _f(_12); +} +return _12[_14]; +}; +_1.set=function setProp(_15,_16,_17){ +_15=_5.byId(_15); +var l=arguments.length; +if(l==2&&typeof _16!="string"){ +for(var x in _16){ +_1.set(_15,x,_16[x]); +} +return _15; +} +var lc=_16.toLowerCase(),_18=_1.names[lc]||_16; +if(_18=="style"&&typeof _17!="string"){ +_6.set(_15,_17); +return _15; +} +if(_18=="innerHTML"){ +if(_3("ie")&&_15.tagName.toLowerCase() in {col:1,colgroup:1,table:1,tbody:1,tfoot:1,thead:1,tr:1,title:1}){ +_7.empty(_15); +_15.appendChild(_7.toDom(_17,_15.ownerDocument)); +}else{ +_15[_18]=_17; +} +return _15; +} +if(_18=="textContent"&&!_3("dom-textContent")){ +_7.empty(_15); +_15.appendChild(_15.ownerDocument.createTextNode(_17)); +return _15; +} +if(_4.isFunction(_17)){ +var _19=_15[_b]; +if(!_19){ +_19=_a++; +_15[_b]=_19; +} +if(!_9[_19]){ +_9[_19]={}; +} +var h=_9[_19][_18]; +if(h){ +_8.disconnect(h); +}else{ +try{ +delete _15[_18]; +} +catch(e){ +} +} +if(_17){ +_9[_19][_18]=_8.connect(_15,_18,_17); +}else{ +_15[_18]=null; +} +return _15; +} +_15[_18]=_17; +return _15; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-prop.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-prop.js.uncompressed.js new file mode 100644 index 00000000..1a84b55d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-prop.js.uncompressed.js @@ -0,0 +1,188 @@ +define("dojo/dom-prop", ["exports", "./_base/kernel", "./sniff", "./_base/lang", "./dom", "./dom-style", "./dom-construct", "./_base/connect"], + function(exports, dojo, has, lang, dom, style, ctr, conn){ + // module: + // dojo/dom-prop + // summary: + // This module defines the core dojo DOM properties API. + + // TODOC: summary not showing up in output, see https://github.com/csnover/js-doc-parse/issues/42 + + // ============================= + // Element properties Functions + // ============================= + + // helper to connect events + var _evtHdlrMap = {}, _ctr = 0, _attrId = dojo._scopeName + "attrid"; + has.add('dom-textContent', function (global, doc, element) { return 'textContent' in element; }); + + exports.names = { + // properties renamed to avoid clashes with reserved words + "class": "className", + "for": "htmlFor", + // properties written as camelCase + tabindex: "tabIndex", + readonly: "readOnly", + colspan: "colSpan", + frameborder: "frameBorder", + rowspan: "rowSpan", + textcontent: "textContent", + valuetype: "valueType" + }; + + function getText(/*DOMNode*/node){ + // summary: + // recursion method for get('textContent') to use. Gets text value for a node. + // description: + // Juse uses nodedValue so things like
    tags do not end up in + // the text as any sort of line return. + var text = "", ch = node.childNodes; + for(var i = 0, n; n = ch[i]; i++){ + //Skip comments. + if(n.nodeType != 8){ + if(n.nodeType == 1){ + text += getText(n); + }else{ + text += n.nodeValue; + } + } + } + return text; + } + + exports.get = function getProp(/*DOMNode|String*/ node, /*String*/ name){ + // summary: + // Gets a property on an HTML element. + // description: + // Handles normalized getting of properties on DOM nodes. + // + // node: DOMNode|String + // id or reference to the element to get the property on + // name: String + // the name of the property to get. + // returns: + // the value of the requested property or its default value + // + // example: + // | // get the current value of the "foo" property on a node + // | require(["dojo/dom-prop", "dojo/dom"], function(domProp, dom){ + // | domProp.get(dom.byId("nodeId"), "foo"); + // | // or we can just pass the id: + // | domProp.get("nodeId", "foo"); + // | }); + + node = dom.byId(node); + var lc = name.toLowerCase(), propName = exports.names[lc] || name; + + if(propName == "textContent" && !has("dom-textContent")){ + return getText(node); + } + + return node[propName]; // Anything + }; + + exports.set = function setProp(/*DOMNode|String*/ node, /*String|Object*/ name, /*String?*/ value){ + // summary: + // Sets a property on an HTML element. + // description: + // Handles normalized setting of properties on DOM nodes. + // + // When passing functions as values, note that they will not be + // directly assigned to slots on the node, but rather the default + // behavior will be removed and the new behavior will be added + // using `dojo.connect()`, meaning that event handler properties + // will be normalized and that some caveats with regards to + // non-standard behaviors for onsubmit apply. Namely that you + // should cancel form submission using `dojo.stopEvent()` on the + // passed event object instead of returning a boolean value from + // the handler itself. + // node: DOMNode|String + // id or reference to the element to set the property on + // name: String|Object + // the name of the property to set, or a hash object to set + // multiple properties at once. + // value: String? + // The value to set for the property + // returns: + // the DOM node + // + // example: + // | // use prop() to set the tab index + // | require(["dojo/dom-prop"], function(domProp){ + // | domProp.set("nodeId", "tabIndex", 3); + // | }); + // + // example: + // Set multiple values at once, including event handlers: + // | require(["dojo/dom-prop"], function(domProp){ + // | domProp.set("formId", { + // | "foo": "bar", + // | "tabIndex": -1, + // | "method": "POST", + // | }); + // | }); + + node = dom.byId(node); + var l = arguments.length; + if(l == 2 && typeof name != "string"){ // inline'd type check + // the object form of setter: the 2nd argument is a dictionary + for(var x in name){ + exports.set(node, x, name[x]); + } + return node; // DomNode + } + var lc = name.toLowerCase(), propName = exports.names[lc] || name; + if(propName == "style" && typeof value != "string"){ // inline'd type check + // special case: setting a style + style.set(node, value); + return node; // DomNode + } + if(propName == "innerHTML"){ + // special case: assigning HTML + // the hash lists elements with read-only innerHTML on IE + if(has("ie") && node.tagName.toLowerCase() in {col: 1, colgroup: 1, + table: 1, tbody: 1, tfoot: 1, thead: 1, tr: 1, title: 1}){ + ctr.empty(node); + node.appendChild(ctr.toDom(value, node.ownerDocument)); + }else{ + node[propName] = value; + } + return node; // DomNode + } + if(propName == "textContent" && !has("dom-textContent")) { + ctr.empty(node); + node.appendChild(node.ownerDocument.createTextNode(value)); + return node; + } + if(lang.isFunction(value)){ + // special case: assigning an event handler + // clobber if we can + var attrId = node[_attrId]; + if(!attrId){ + attrId = _ctr++; + node[_attrId] = attrId; + } + if(!_evtHdlrMap[attrId]){ + _evtHdlrMap[attrId] = {}; + } + var h = _evtHdlrMap[attrId][propName]; + if(h){ + //h.remove(); + conn.disconnect(h); + }else{ + try{ + delete node[propName]; + }catch(e){} + } + // ensure that event objects are normalized, etc. + if(value){ + //_evtHdlrMap[attrId][propName] = on(node, propName, value); + _evtHdlrMap[attrId][propName] = conn.connect(node, propName, value); + }else{ + node[propName] = null; + } + return node; // DomNode + } + node[propName] = value; + return node; // DomNode + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-style.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-style.js new file mode 100644 index 00000000..86d4e309 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-style.js @@ -0,0 +1,165 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/dom-style",["./sniff","./dom"],function(_1,_2){ +var _3,_4={}; +if(_1("webkit")){ +_3=function(_5){ +var s; +if(_5.nodeType==1){ +var dv=_5.ownerDocument.defaultView; +s=dv.getComputedStyle(_5,null); +if(!s&&_5.style){ +_5.style.display=""; +s=dv.getComputedStyle(_5,null); +} +} +return s||{}; +}; +}else{ +if(_1("ie")&&(_1("ie")<9||_1("quirks"))){ +_3=function(_6){ +return _6.nodeType==1&&_6.currentStyle?_6.currentStyle:{}; +}; +}else{ +_3=function(_7){ +return _7.nodeType==1?_7.ownerDocument.defaultView.getComputedStyle(_7,null):{}; +}; +} +} +_4.getComputedStyle=_3; +var _8; +if(!_1("ie")){ +_8=function(_9,_a){ +return parseFloat(_a)||0; +}; +}else{ +_8=function(_b,_c){ +if(!_c){ +return 0; +} +if(_c=="medium"){ +return 4; +} +if(_c.slice&&_c.slice(-2)=="px"){ +return parseFloat(_c); +} +var s=_b.style,rs=_b.runtimeStyle,cs=_b.currentStyle,_d=s.left,_e=rs.left; +rs.left=cs.left; +try{ +s.left=_c; +_c=s.pixelLeft; +} +catch(e){ +_c=0; +} +s.left=_d; +rs.left=_e; +return _c; +}; +} +_4.toPixelValue=_8; +var _f="DXImageTransform.Microsoft.Alpha"; +var af=function(n,f){ +try{ +return n.filters.item(_f); +} +catch(e){ +return f?{}:null; +} +}; +var _10=_1("ie")<9||(_1("ie")<10&&_1("quirks"))?function(_11){ +try{ +return af(_11).Opacity/100; +} +catch(e){ +return 1; +} +}:function(_12){ +return _3(_12).opacity; +}; +var _13=_1("ie")<9||(_1("ie")<10&&_1("quirks"))?function(_14,_15){ +if(_15===""){ +_15=1; +} +var ov=_15*100,_16=_15===1; +if(_16){ +_14.style.zoom=""; +if(af(_14)){ +_14.style.filter=_14.style.filter.replace(new RegExp("\\s*progid:"+_f+"\\([^\\)]+?\\)","i"),""); +} +}else{ +_14.style.zoom=1; +if(af(_14)){ +af(_14,1).Opacity=ov; +}else{ +_14.style.filter+=" progid:"+_f+"(Opacity="+ov+")"; +} +af(_14,1).Enabled=true; +} +if(_14.tagName.toLowerCase()=="tr"){ +for(var td=_14.firstChild;td;td=td.nextSibling){ +if(td.tagName.toLowerCase()=="td"){ +_13(td,_15); +} +} +} +return _15; +}:function(_17,_18){ +return _17.style.opacity=_18; +}; +var _19={left:true,top:true}; +var _1a=/margin|padding|width|height|max|min|offset/; +function _1b(_1c,_1d,_1e){ +_1d=_1d.toLowerCase(); +if(_1("ie")||_1("trident")){ +if(_1e=="auto"){ +if(_1d=="height"){ +return _1c.offsetHeight; +} +if(_1d=="width"){ +return _1c.offsetWidth; +} +} +if(_1d=="fontweight"){ +switch(_1e){ +case 700: +return "bold"; +case 400: +default: +return "normal"; +} +} +} +if(!(_1d in _19)){ +_19[_1d]=_1a.test(_1d); +} +return _19[_1d]?_8(_1c,_1e):_1e; +}; +var _1f={cssFloat:1,styleFloat:1,"float":1}; +_4.get=function getStyle(_20,_21){ +var n=_2.byId(_20),l=arguments.length,op=(_21=="opacity"); +if(l==2&&op){ +return _10(n); +} +_21=_1f[_21]?"cssFloat" in n.style?"cssFloat":"styleFloat":_21; +var s=_4.getComputedStyle(n); +return (l==1)?s:_1b(n,_21,s[_21]||n.style[_21]); +}; +_4.set=function setStyle(_22,_23,_24){ +var n=_2.byId(_22),l=arguments.length,op=(_23=="opacity"); +_23=_1f[_23]?"cssFloat" in n.style?"cssFloat":"styleFloat":_23; +if(l==3){ +return op?_13(n,_24):n.style[_23]=_24; +} +for(var x in _23){ +_4.set(_22,x,_23[x]); +} +return _4.getComputedStyle(n); +}; +return _4; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-style.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-style.js.uncompressed.js new file mode 100644 index 00000000..cfcb47e5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom-style.js.uncompressed.js @@ -0,0 +1,329 @@ +define("dojo/dom-style", ["./sniff", "./dom"], function(has, dom){ + // module: + // dojo/dom-style + + // ============================= + // Style Functions + // ============================= + + // getComputedStyle drives most of the style code. + // Wherever possible, reuse the returned object. + // + // API functions below that need to access computed styles accept an + // optional computedStyle parameter. + // If this parameter is omitted, the functions will call getComputedStyle themselves. + // This way, calling code can access computedStyle once, and then pass the reference to + // multiple API functions. + + // Although we normally eschew argument validation at this + // level, here we test argument 'node' for (duck)type, + // by testing nodeType, ecause 'document' is the 'parentNode' of 'body' + // it is frequently sent to this function even + // though it is not Element. + var getComputedStyle, style = { + // summary: + // This module defines the core dojo DOM style API. + }; + if(has("webkit")){ + getComputedStyle = function(/*DomNode*/ node){ + var s; + if(node.nodeType == 1){ + var dv = node.ownerDocument.defaultView; + s = dv.getComputedStyle(node, null); + if(!s && node.style){ + node.style.display = ""; + s = dv.getComputedStyle(node, null); + } + } + return s || {}; + }; + }else if(has("ie") && (has("ie") < 9 || has("quirks"))){ + getComputedStyle = function(node){ + // IE (as of 7) doesn't expose Element like sane browsers + // currentStyle can be null on IE8! + return node.nodeType == 1 /* ELEMENT_NODE*/ && node.currentStyle ? node.currentStyle : {}; + }; + }else{ + getComputedStyle = function(node){ + return node.nodeType == 1 /* ELEMENT_NODE*/ ? + node.ownerDocument.defaultView.getComputedStyle(node, null) : {}; + }; + } + style.getComputedStyle = getComputedStyle; + /*===== + style.getComputedStyle = function(node){ + // summary: + // Returns a "computed style" object. + // + // description: + // Gets a "computed style" object which can be used to gather + // information about the current state of the rendered node. + // + // Note that this may behave differently on different browsers. + // Values may have different formats and value encodings across + // browsers. + // + // Note also that this method is expensive. Wherever possible, + // reuse the returned object. + // + // Use the dojo/dom-style.get() method for more consistent (pixelized) + // return values. + // + // node: DOMNode + // A reference to a DOM node. Does NOT support taking an + // ID string for speed reasons. + // example: + // | require(["dojo/dom-style", "dojo/dom"], function(domStyle, dom){ + // | domStyle.getComputedStyle(dom.byId('foo')).borderWidth; + // | }); + // + // example: + // Reusing the returned object, avoiding multiple lookups: + // | require(["dojo/dom-style", "dojo/dom"], function(domStyle, dom){ + // | var cs = domStyle.getComputedStyle(dom.byId("someNode")); + // | var w = cs.width, h = cs.height; + // | }); + return; // CSS2Properties + }; + =====*/ + + var toPixel; + if(!has("ie")){ + toPixel = function(element, value){ + // style values can be floats, client code may want + // to round for integer pixels. + return parseFloat(value) || 0; + }; + }else{ + toPixel = function(element, avalue){ + if(!avalue){ return 0; } + // on IE7, medium is usually 4 pixels + if(avalue == "medium"){ return 4; } + // style values can be floats, client code may + // want to round this value for integer pixels. + if(avalue.slice && avalue.slice(-2) == 'px'){ return parseFloat(avalue); } + var s = element.style, rs = element.runtimeStyle, cs = element.currentStyle, + sLeft = s.left, rsLeft = rs.left; + rs.left = cs.left; + try{ + // 'avalue' may be incompatible with style.left, which can cause IE to throw + // this has been observed for border widths using "thin", "medium", "thick" constants + // those particular constants could be trapped by a lookup + // but perhaps there are more + s.left = avalue; + avalue = s.pixelLeft; + }catch(e){ + avalue = 0; + } + s.left = sLeft; + rs.left = rsLeft; + return avalue; + }; + } + style.toPixelValue = toPixel; + /*===== + style.toPixelValue = function(node, value){ + // summary: + // converts style value to pixels on IE or return a numeric value. + // node: DOMNode + // value: String + // returns: Number + }; + =====*/ + + // FIXME: there opacity quirks on FF that we haven't ported over. Hrm. + + var astr = "DXImageTransform.Microsoft.Alpha"; + var af = function(n, f){ + try{ + return n.filters.item(astr); + }catch(e){ + return f ? {} : null; + } + }; + + var _getOpacity = + has("ie") < 9 || (has("ie") < 10 && has("quirks")) ? function(node){ + try{ + return af(node).Opacity / 100; // Number + }catch(e){ + return 1; // Number + } + } : + function(node){ + return getComputedStyle(node).opacity; + }; + + var _setOpacity = + has("ie") < 9 || (has("ie") < 10 && has("quirks")) ? function(/*DomNode*/ node, /*Number*/ opacity){ + if(opacity === ""){ opacity = 1; } + var ov = opacity * 100, fullyOpaque = opacity === 1; + + // on IE7 Alpha(Filter opacity=100) makes text look fuzzy so disable it altogether (bug #2661), + // but still update the opacity value so we can get a correct reading if it is read later: + // af(node, 1).Enabled = !fullyOpaque; + + if(fullyOpaque){ + node.style.zoom = ""; + if(af(node)){ + node.style.filter = node.style.filter.replace( + new RegExp("\\s*progid:" + astr + "\\([^\\)]+?\\)", "i"), ""); + } + }else{ + node.style.zoom = 1; + if(af(node)){ + af(node, 1).Opacity = ov; + }else{ + node.style.filter += " progid:" + astr + "(Opacity=" + ov + ")"; + } + af(node, 1).Enabled = true; + } + + if(node.tagName.toLowerCase() == "tr"){ + for(var td = node.firstChild; td; td = td.nextSibling){ + if(td.tagName.toLowerCase() == "td"){ + _setOpacity(td, opacity); + } + } + } + return opacity; + } : + function(node, opacity){ + return node.style.opacity = opacity; + }; + + var _pixelNamesCache = { + left: true, top: true + }; + var _pixelRegExp = /margin|padding|width|height|max|min|offset/; // |border + function _toStyleValue(node, type, value){ + //TODO: should we really be doing string case conversion here? Should we cache it? Need to profile! + type = type.toLowerCase(); + if(has("ie") || has("trident")){ + if(value == "auto"){ + if(type == "height"){ return node.offsetHeight; } + if(type == "width"){ return node.offsetWidth; } + } + if(type == "fontweight"){ + switch(value){ + case 700: return "bold"; + case 400: + default: return "normal"; + } + } + } + if(!(type in _pixelNamesCache)){ + _pixelNamesCache[type] = _pixelRegExp.test(type); + } + return _pixelNamesCache[type] ? toPixel(node, value) : value; + } + + var _floatAliases = {cssFloat: 1, styleFloat: 1, "float": 1}; + + // public API + + style.get = function getStyle(/*DOMNode|String*/ node, /*String?*/ name){ + // summary: + // Accesses styles on a node. + // description: + // Getting the style value uses the computed style for the node, so the value + // will be a calculated value, not just the immediate node.style value. + // Also when getting values, use specific style names, + // like "borderBottomWidth" instead of "border" since compound values like + // "border" are not necessarily reflected as expected. + // If you want to get node dimensions, use `dojo/dom-geometry.getMarginBox()`, + // `dojo/dom-geometry.getContentBox()` or `dojo/dom-geometry.getPosition()`. + // node: DOMNode|String + // id or reference to node to get style for + // name: String? + // the style property to get + // example: + // Passing only an ID or node returns the computed style object of + // the node: + // | require(["dojo/dom-style", "dojo/dom"], function(domStyle, dom){ + // | domStyle.get("thinger"); + // | }); + // example: + // Passing a node and a style property returns the current + // normalized, computed value for that property: + // | require(["dojo/dom-style", "dojo/dom"], function(domStyle, dom){ + // | domStyle.get("thinger", "opacity"); // 1 by default + // | }); + + var n = dom.byId(node), l = arguments.length, op = (name == "opacity"); + if(l == 2 && op){ + return _getOpacity(n); + } + name = _floatAliases[name] ? "cssFloat" in n.style ? "cssFloat" : "styleFloat" : name; + var s = style.getComputedStyle(n); + return (l == 1) ? s : _toStyleValue(n, name, s[name] || n.style[name]); /* CSS2Properties||String||Number */ + }; + + style.set = function setStyle(/*DOMNode|String*/ node, /*String|Object*/ name, /*String?*/ value){ + // summary: + // Sets styles on a node. + // node: DOMNode|String + // id or reference to node to set style for + // name: String|Object + // the style property to set in DOM-accessor format + // ("borderWidth", not "border-width") or an object with key/value + // pairs suitable for setting each property. + // value: String? + // If passed, sets value on the node for style, handling + // cross-browser concerns. When setting a pixel value, + // be sure to include "px" in the value. For instance, top: "200px". + // Otherwise, in some cases, some browsers will not apply the style. + // + // example: + // Passing a node, a style property, and a value changes the + // current display of the node and returns the new computed value + // | require(["dojo/dom-style"], function(domStyle){ + // | domStyle.set("thinger", "opacity", 0.5); // == 0.5 + // | }); + // + // example: + // Passing a node, an object-style style property sets each of the values in turn and returns the computed style object of the node: + // | require(["dojo/dom-style"], function(domStyle){ + // | domStyle.set("thinger", { + // | "opacity": 0.5, + // | "border": "3px solid black", + // | "height": "300px" + // | }); + // | }); + // + // example: + // When the CSS style property is hyphenated, the JavaScript property is camelCased. + // font-size becomes fontSize, and so on. + // | require(["dojo/dom-style", "dojo/dom"], function(domStyle, dom){ + // | domStyle.set("thinger",{ + // | fontSize:"14pt", + // | letterSpacing:"1.2em" + // | }); + // | }); + // + // example: + // dojo/NodeList implements .style() using the same syntax, omitting the "node" parameter, calling + // dojo/dom-style.get() on every element of the list. See: `dojo/query` and `dojo/NodeList` + // | require(["dojo/dom-style", "dojo/query", "dojo/NodeList-dom"], + // | function(domStyle, query){ + // | query(".someClassName").style("visibility","hidden"); + // | // or + // | query("#baz > div").style({ + // | opacity:0.75, + // | fontSize:"13pt" + // | }); + // | }); + + var n = dom.byId(node), l = arguments.length, op = (name == "opacity"); + name = _floatAliases[name] ? "cssFloat" in n.style ? "cssFloat" : "styleFloat" : name; + if(l == 3){ + return op ? _setOpacity(n, value) : n.style[name] = value; // Number + } + for(var x in name){ + style.set(node, x, name[x]); + } + return style.getComputedStyle(n); + }; + + return style; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom.js new file mode 100644 index 00000000..d228d1ae --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom.js @@ -0,0 +1,90 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/dom",["./sniff","./_base/window"],function(_1,_2){ +if(_1("ie")<=7){ +try{ +document.execCommand("BackgroundImageCache",false,true); +} +catch(e){ +} +} +var _3={}; +if(_1("ie")){ +_3.byId=function(id,_4){ +if(typeof id!="string"){ +return id; +} +var _5=_4||_2.doc,te=id&&_5.getElementById(id); +if(te&&(te.attributes.id.value==id||te.id==id)){ +return te; +}else{ +var _6=_5.all[id]; +if(!_6||_6.nodeName){ +_6=[_6]; +} +var i=0; +while((te=_6[i++])){ +if((te.attributes&&te.attributes.id&&te.attributes.id.value==id)||te.id==id){ +return te; +} +} +} +}; +}else{ +_3.byId=function(id,_7){ +return ((typeof id=="string")?(_7||_2.doc).getElementById(id):id)||null; +}; +} +_3.isDescendant=function(_8,_9){ +try{ +_8=_3.byId(_8); +_9=_3.byId(_9); +while(_8){ +if(_8==_9){ +return true; +} +_8=_8.parentNode; +} +} +catch(e){ +} +return false; +}; +_1.add("css-user-select",function(_a,_b,_c){ +if(!_c){ +return false; +} +var _d=_c.style; +var _e=["Khtml","O","Moz","Webkit"],i=_e.length,_f="userSelect",_10; +do{ +if(typeof _d[_f]!=="undefined"){ +return _f; +} +}while(i--&&(_f=_e[i]+"UserSelect")); +return false; +}); +var _11=_1("css-user-select"); +_3.setSelectable=_11?function(_12,_13){ +_3.byId(_12).style[_11]=_13?"":"none"; +}:function(_14,_15){ +_14=_3.byId(_14); +var _16=_14.getElementsByTagName("*"),i=_16.length; +if(_15){ +_14.removeAttribute("unselectable"); +while(i--){ +_16[i].removeAttribute("unselectable"); +} +}else{ +_14.setAttribute("unselectable","on"); +while(i--){ +_16[i].setAttribute("unselectable","on"); +} +} +}; +return _3; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom.js.uncompressed.js new file mode 100644 index 00000000..59f583e4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/dom.js.uncompressed.js @@ -0,0 +1,202 @@ +define("dojo/dom", ["./sniff", "./_base/window"], + function(has, win){ + // module: + // dojo/dom + + // FIXME: need to add unit tests for all the semi-public methods + + if(has("ie") <= 7){ + try{ + document.execCommand("BackgroundImageCache", false, true); + }catch(e){ + // sane browsers don't have cache "issues" + } + } + + // ============================= + // DOM Functions + // ============================= + + // the result object + var dom = { + // summary: + // This module defines the core dojo DOM API. + }; + + if(has("ie")){ + dom.byId = function(id, doc){ + if(typeof id != "string"){ + return id; + } + var _d = doc || win.doc, te = id && _d.getElementById(id); + // attributes.id.value is better than just id in case the + // user has a name=id inside a form + if(te && (te.attributes.id.value == id || te.id == id)){ + return te; + }else{ + var eles = _d.all[id]; + if(!eles || eles.nodeName){ + eles = [eles]; + } + // if more than 1, choose first with the correct id + var i = 0; + while((te = eles[i++])){ + if((te.attributes && te.attributes.id && te.attributes.id.value == id) || te.id == id){ + return te; + } + } + } + }; + }else{ + dom.byId = function(id, doc){ + // inline'd type check. + // be sure to return null per documentation, to match IE branch. + return ((typeof id == "string") ? (doc || win.doc).getElementById(id) : id) || null; // DOMNode + }; + } + /*===== + dom.byId = function(id, doc){ + // summary: + // Returns DOM node with matching `id` attribute or falsy value (ex: null or undefined) + // if not found. If `id` is a DomNode, this function is a no-op. + // + // id: String|DOMNode + // A string to match an HTML id attribute or a reference to a DOM Node + // + // doc: Document? + // Document to work in. Defaults to the current value of + // dojo/_base/window.doc. Can be used to retrieve + // node references from other documents. + // + // example: + // Look up a node by ID: + // | require(["dojo/dom"], function(dom){ + // | var n = dom.byId("foo"); + // | }); + // + // example: + // Check if a node exists, and use it. + // | require(["dojo/dom"], function(dom){ + // | var n = dom.byId("bar"); + // | if(n){ doStuff() ... } + // | }); + // + // example: + // Allow string or DomNode references to be passed to a custom function: + // | require(["dojo/dom"], function(dom){ + // | var foo = function(nodeOrId){ + // | nodeOrId = dom.byId(nodeOrId); + // | // ... more stuff + // | } + // | }); + }; + =====*/ + + dom.isDescendant = function(/*DOMNode|String*/ node, /*DOMNode|String*/ ancestor){ + // summary: + // Returns true if node is a descendant of ancestor + // node: DOMNode|String + // string id or node reference to test + // ancestor: DOMNode|String + // string id or node reference of potential parent to test against + // + // example: + // Test is node id="bar" is a descendant of node id="foo" + // | require(["dojo/dom"], function(dom){ + // | if(dom.isDescendant("bar", "foo")){ ... } + // | }); + + try{ + node = dom.byId(node); + ancestor = dom.byId(ancestor); + while(node){ + if(node == ancestor){ + return true; // Boolean + } + node = node.parentNode; + } + }catch(e){ /* squelch, return false */ } + return false; // Boolean + }; + + + // TODO: do we need setSelectable in the base? + + // Add feature test for user-select CSS property + // (currently known to work in all but IE < 10 and Opera) + // TODO: The user-select CSS property as of May 2014 is no longer part of + // any CSS specification. In IE, -ms-user-select does not do the same thing + // as the unselectable attribute on elements; namely, dijit Editor buttons + // do not properly prevent the content of the editable content frame from + // unblurring. As a result, the -ms- prefixed version is omitted here. + has.add("css-user-select", function(global, doc, element){ + // Avoid exception when dom.js is loaded in non-browser environments + if(!element){ return false; } + + var style = element.style; + var prefixes = ["Khtml", "O", "Moz", "Webkit"], + i = prefixes.length, + name = "userSelect", + prefix; + + // Iterate prefixes from most to least likely + do{ + if(typeof style[name] !== "undefined"){ + // Supported; return property name + return name; + } + }while(i-- && (name = prefixes[i] + "UserSelect")); + + // Not supported if we didn't return before now + return false; + }); + + /*===== + dom.setSelectable = function(node, selectable){ + // summary: + // Enable or disable selection on a node + // node: DOMNode|String + // id or reference to node + // selectable: Boolean + // state to put the node in. false indicates unselectable, true + // allows selection. + // example: + // Make the node id="bar" unselectable + // | require(["dojo/dom"], function(dom){ + // | dom.setSelectable("bar"); + // | }); + // example: + // Make the node id="bar" selectable + // | require(["dojo/dom"], function(dom){ + // | dom.setSelectable("bar", true); + // | }); + }; + =====*/ + + var cssUserSelect = has("css-user-select"); + dom.setSelectable = cssUserSelect ? function(node, selectable){ + // css-user-select returns a (possibly vendor-prefixed) CSS property name + dom.byId(node).style[cssUserSelect] = selectable ? "" : "none"; + } : function(node, selectable){ + node = dom.byId(node); + + // (IE < 10 / Opera) Fall back to setting/removing the + // unselectable attribute on the element and all its children + var nodes = node.getElementsByTagName("*"), + i = nodes.length; + + if(selectable){ + node.removeAttribute("unselectable"); + while(i--){ + nodes[i].removeAttribute("unselectable"); + } + }else{ + node.setAttribute("unselectable", "on"); + while(i--){ + nodes[i].setAttribute("unselectable", "on"); + } + } + }; + + return dom; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/domReady.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/domReady.js new file mode 100644 index 00000000..d8850fe6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/domReady.js @@ -0,0 +1,113 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/domReady",["./has"],function(_1){ +var _2=(function(){ +return this; +})(),_3=document,_4={"loaded":1,"complete":1},_5=typeof _3.readyState!="string",_6=!!_4[_3.readyState],_7=[],_8; +function _9(_a){ +_7.push(_a); +if(_6){ +_b(); +} +}; +_9.load=function(id,_c,_d){ +_9(_d); +}; +_9._Q=_7; +_9._onQEmpty=function(){ +}; +if(_5){ +_3.readyState="loading"; +} +function _b(){ +if(_8){ +return; +} +_8=true; +while(_7.length){ +try{ +(_7.shift())(_3); +} +catch(err){ +console.error(err,"in domReady callback",err.stack); +} +} +_8=false; +_9._onQEmpty(); +}; +if(!_6){ +var _e=[],_f=function(evt){ +evt=evt||_2.event; +if(_6||(evt.type=="readystatechange"&&!_4[_3.readyState])){ +return; +} +if(_5){ +_3.readyState="complete"; +} +_6=1; +_b(); +},on=function(_10,_11){ +_10.addEventListener(_11,_f,false); +_7.push(function(){ +_10.removeEventListener(_11,_f,false); +}); +}; +if(!_1("dom-addeventlistener")){ +on=function(_12,_13){ +_13="on"+_13; +_12.attachEvent(_13,_f); +_7.push(function(){ +_12.detachEvent(_13,_f); +}); +}; +var div=_3.createElement("div"); +try{ +if(div.doScroll&&_2.frameElement===null){ +_e.push(function(){ +try{ +div.doScroll("left"); +return 1; +} +catch(e){ +} +}); +} +} +catch(e){ +} +} +on(_3,"DOMContentLoaded"); +on(_2,"load"); +if("onreadystatechange" in _3){ +on(_3,"readystatechange"); +}else{ +if(!_5){ +_e.push(function(){ +return _4[_3.readyState]; +}); +} +} +if(_e.length){ +var _14=function(){ +if(_6){ +return; +} +var i=_e.length; +while(i--){ +if(_e[i]()){ +_f("poller"); +return; +} +} +setTimeout(_14,30); +}; +_14(); +} +} +return _9; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/domReady.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/domReady.js.uncompressed.js new file mode 100644 index 00000000..7284ddee --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/domReady.js.uncompressed.js @@ -0,0 +1,124 @@ +define("dojo/domReady", ['./has'], function(has){ + var global = (function () { return this; })(), + doc = document, + readyStates = { 'loaded': 1, 'complete': 1 }, + fixReadyState = typeof doc.readyState != "string", + ready = !!readyStates[doc.readyState], + readyQ = [], + recursiveGuard; + + function domReady(callback){ + // summary: + // Plugin to delay require()/define() callback from firing until the DOM has finished loading. + readyQ.push(callback); + if(ready){ processQ(); } + } + domReady.load = function(id, req, load){ + domReady(load); + }; + + // Export queue so that ready() can check if it's empty or not. + domReady._Q = readyQ; + domReady._onQEmpty = function(){ + // summary: + // Private method overridden by dojo/ready, to notify when everything in the + // domReady queue has been processed. Do not use directly. + // Will be removed in 2.0, along with domReady._Q. + }; + + // For FF <= 3.5 + if(fixReadyState){ doc.readyState = "loading"; } + + function processQ(){ + // Calls all functions in the queue in order, unless processQ() is already running, in which case just return + + if(recursiveGuard){ return; } + recursiveGuard = true; + + while(readyQ.length){ + try{ + (readyQ.shift())(doc); + }catch(err){ + console.error(err, "in domReady callback", err.stack); + } + } + + recursiveGuard = false; + + // Notification for dojo/ready. Remove for 2.0. + // Note that this could add more tasks to the ready queue. + domReady._onQEmpty(); + } + + if(!ready){ + var tests = [], + detectReady = function(evt){ + evt = evt || global.event; + if(ready || (evt.type == "readystatechange" && !readyStates[doc.readyState])){ return; } + + // For FF <= 3.5 + if(fixReadyState){ doc.readyState = "complete"; } + + ready = 1; + processQ(); + }, + on = function(node, event){ + node.addEventListener(event, detectReady, false); + readyQ.push(function(){ node.removeEventListener(event, detectReady, false); }); + }; + + if(!has("dom-addeventlistener")){ + on = function(node, event){ + event = "on" + event; + node.attachEvent(event, detectReady); + readyQ.push(function(){ node.detachEvent(event, detectReady); }); + }; + + var div = doc.createElement("div"); + try{ + if(div.doScroll && global.frameElement === null){ + // the doScroll test is only useful if we're in the top-most frame + tests.push(function(){ + // Derived with permission from Diego Perini's IEContentLoaded + // http://javascript.nwbox.com/IEContentLoaded/ + try{ + div.doScroll("left"); + return 1; + }catch(e){} + }); + } + }catch(e){} + } + + on(doc, "DOMContentLoaded"); + on(global, "load"); + + if("onreadystatechange" in doc){ + on(doc, "readystatechange"); + }else if(!fixReadyState){ + // if the ready state property exists and there's + // no readystatechange event, poll for the state + // to change + tests.push(function(){ + return readyStates[doc.readyState]; + }); + } + + if(tests.length){ + var poller = function(){ + if(ready){ return; } + var i = tests.length; + while(i--){ + if(tests[i]()){ + detectReady("poller"); + return; + } + } + setTimeout(poller, 30); + }; + poller(); + } + } + + return domReady; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/CancelError.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/CancelError.js new file mode 100644 index 00000000..81812d1b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/CancelError.js @@ -0,0 +1,10 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/errors/CancelError",["./create"],function(_1){ +return _1("CancelError",null,null,{dojoType:"cancel"}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/CancelError.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/CancelError.js.uncompressed.js new file mode 100644 index 00000000..2d96b052 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/CancelError.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojo/errors/CancelError", ["./create"], function(create){ + // module: + // dojo/errors/CancelError + + /*===== + return function(){ + // summary: + // Default error if a promise is canceled without a reason. + }; + =====*/ + + return create("CancelError", null, null, { dojoType: "cancel" }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestError.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestError.js new file mode 100644 index 00000000..bedeb555 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestError.js @@ -0,0 +1,12 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/errors/RequestError",["./create"],function(_1){ +return _1("RequestError",function(_2,_3){ +this.response=_3; +}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestError.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestError.js.uncompressed.js new file mode 100644 index 00000000..f476cd82 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestError.js.uncompressed.js @@ -0,0 +1,15 @@ +define("dojo/errors/RequestError", ['./create'], function(create){ + // module: + // dojo/errors/RequestError + + /*===== + return function(){ + // summary: + // TODOC + }; + =====*/ + + return create("RequestError", function(message, response){ + this.response = response; + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestTimeoutError.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestTimeoutError.js new file mode 100644 index 00000000..2d1250f3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestTimeoutError.js @@ -0,0 +1,10 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/errors/RequestTimeoutError",["./create","./RequestError"],function(_1,_2){ +return _1("RequestTimeoutError",null,_2,{dojoType:"timeout"}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestTimeoutError.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestTimeoutError.js.uncompressed.js new file mode 100644 index 00000000..91e986a3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/RequestTimeoutError.js.uncompressed.js @@ -0,0 +1,15 @@ +define("dojo/errors/RequestTimeoutError", ['./create', './RequestError'], function(create, RequestError){ + // module: + // dojo/errors/RequestTimeoutError + + /*===== + return function(){ + // summary: + // TODOC + }; + =====*/ + + return create("RequestTimeoutError", null, RequestError, { + dojoType: "timeout" + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/create.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/create.js new file mode 100644 index 00000000..8690b97d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/create.js @@ -0,0 +1,36 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/errors/create",["../_base/lang"],function(_1){ +return function(_2,_3,_4,_5){ +_4=_4||Error; +var _6=function(_7){ +if(_4===Error){ +if(Error.captureStackTrace){ +Error.captureStackTrace(this,_6); +} +var _8=Error.call(this,_7),_9; +for(_9 in _8){ +if(_8.hasOwnProperty(_9)){ +this[_9]=_8[_9]; +} +} +this.message=_7; +this.stack=_8.stack; +}else{ +_4.apply(this,arguments); +} +if(_3){ +_3.apply(this,arguments); +} +}; +_6.prototype=_1.delegate(_4.prototype,_5); +_6.prototype.name=_2; +_6.prototype.constructor=_6; +return _6; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/create.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/create.js.uncompressed.js new file mode 100644 index 00000000..d303a6a7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/errors/create.js.uncompressed.js @@ -0,0 +1,41 @@ +define("dojo/errors/create", ["../_base/lang"], function(lang){ + return function(name, ctor, base, props){ + base = base || Error; + + var ErrorCtor = function(message){ + if(base === Error){ + if(Error.captureStackTrace){ + Error.captureStackTrace(this, ErrorCtor); + } + + // Error.call() operates on the returned error + // object rather than operating on |this| + var err = Error.call(this, message), + prop; + + // Copy own properties from err to |this| + for(prop in err){ + if(err.hasOwnProperty(prop)){ + this[prop] = err[prop]; + } + } + + // messsage is non-enumerable in ES5 + this.message = message; + // stack is non-enumerable in at least Firefox + this.stack = err.stack; + }else{ + base.apply(this, arguments); + } + if(ctor){ + ctor.apply(this, arguments); + } + }; + + ErrorCtor.prototype = lang.delegate(base.prototype, props); + ErrorCtor.prototype.name = name; + ErrorCtor.prototype.constructor = ErrorCtor; + + return ErrorCtor; + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx.js new file mode 100644 index 00000000..57dc0e1a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx.js @@ -0,0 +1,268 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/fx",["./_base/lang","./Evented","./_base/kernel","./_base/array","./aspect","./_base/fx","./dom","./dom-style","./dom-geometry","./ready","require"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b){ +if(!_3.isAsync){ +_a(0,function(){ +var _c=["./fx/Toggler"]; +_b(_c); +}); +} +var _d=_3.fx={}; +var _e={_fire:function(_f,_10){ +if(this[_f]){ +this[_f].apply(this,_10||[]); +} +return this; +}}; +var _11=function(_12){ +this._index=-1; +this._animations=_12||[]; +this._current=this._onAnimateCtx=this._onEndCtx=null; +this.duration=0; +_4.forEach(this._animations,function(a){ +this.duration+=a.duration; +if(a.delay){ +this.duration+=a.delay; +} +},this); +}; +_11.prototype=new _2(); +_1.extend(_11,{_onAnimate:function(){ +this._fire("onAnimate",arguments); +},_onEnd:function(){ +this._onAnimateCtx.remove(); +this._onEndCtx.remove(); +this._onAnimateCtx=this._onEndCtx=null; +if(this._index+1==this._animations.length){ +this._fire("onEnd"); +}else{ +this._current=this._animations[++this._index]; +this._onAnimateCtx=_5.after(this._current,"onAnimate",_1.hitch(this,"_onAnimate"),true); +this._onEndCtx=_5.after(this._current,"onEnd",_1.hitch(this,"_onEnd"),true); +this._current.play(0,true); +} +},play:function(_13,_14){ +if(!this._current){ +this._current=this._animations[this._index=0]; +} +if(!_14&&this._current.status()=="playing"){ +return this; +} +var _15=_5.after(this._current,"beforeBegin",_1.hitch(this,function(){ +this._fire("beforeBegin"); +}),true),_16=_5.after(this._current,"onBegin",_1.hitch(this,function(arg){ +this._fire("onBegin",arguments); +}),true),_17=_5.after(this._current,"onPlay",_1.hitch(this,function(arg){ +this._fire("onPlay",arguments); +_15.remove(); +_16.remove(); +_17.remove(); +})); +if(this._onAnimateCtx){ +this._onAnimateCtx.remove(); +} +this._onAnimateCtx=_5.after(this._current,"onAnimate",_1.hitch(this,"_onAnimate"),true); +if(this._onEndCtx){ +this._onEndCtx.remove(); +} +this._onEndCtx=_5.after(this._current,"onEnd",_1.hitch(this,"_onEnd"),true); +this._current.play.apply(this._current,arguments); +return this; +},pause:function(){ +if(this._current){ +var e=_5.after(this._current,"onPause",_1.hitch(this,function(arg){ +this._fire("onPause",arguments); +e.remove(); +}),true); +this._current.pause(); +} +return this; +},gotoPercent:function(_18,_19){ +this.pause(); +var _1a=this.duration*_18; +this._current=null; +_4.some(this._animations,function(a,_1b){ +if(_1a<=a.duration){ +this._current=a; +this._index=_1b; +return true; +} +_1a-=a.duration; +return false; +},this); +if(this._current){ +this._current.gotoPercent(_1a/this._current.duration); +} +if(_19){ +this.play(); +} +return this; +},stop:function(_1c){ +if(this._current){ +if(_1c){ +for(;this._index+1this._animations.length){ +this._fire("onEnd"); +} +},_call:function(_24,_25){ +var t=this._pseudoAnimation; +t[_24].apply(t,_25); +},play:function(_26,_27){ +this._finished=0; +this._doAction("play",arguments); +this._call("play",arguments); +return this; +},pause:function(){ +this._doAction("pause",arguments); +this._call("pause",arguments); +return this; +},gotoPercent:function(_28,_29){ +var ms=this.duration*_28; +_4.forEach(this._animations,function(a){ +a.gotoPercent(a.duration this._animations.length){ + this._fire("onEnd"); + } + }, + _call: function(action, args){ + var t = this._pseudoAnimation; + t[action].apply(t, args); + }, + play: function(/*int?*/ delay, /*Boolean?*/ gotoStart){ + this._finished = 0; + this._doAction("play", arguments); + this._call("play", arguments); + return this; + }, + pause: function(){ + this._doAction("pause", arguments); + this._call("pause", arguments); + return this; + }, + gotoPercent: function(/*Decimal*/percent, /*Boolean?*/ andPlay){ + var ms = this.duration * percent; + arrayUtil.forEach(this._animations, function(a){ + a.gotoPercent(a.duration < ms ? 1 : (ms / a.duration), andPlay); + }); + this._call("gotoPercent", arguments); + return this; + }, + stop: function(/*boolean?*/ gotoEnd){ + this._doAction("stop", arguments); + this._call("stop", arguments); + return this; + }, + status: function(){ + return this._pseudoAnimation.status(); + }, + destroy: function(){ + this.stop(); + arrayUtil.forEach(this._connects, function(handle){ + handle.remove(); + }); + } + }); + lang.extend(_combine, _baseObj); + + coreFx.combine = function(/*dojo/_base/fx.Animation[]*/ animations){ + // summary: + // Combine a list of `dojo/_base/fx.Animation`s to run in parallel + // + // description: + // Combine an array of `dojo/_base/fx.Animation`s to run in parallel, + // providing a new `dojo/_base/fx.Animation` instance encompasing each + // animation, firing standard animation events. + // + // example: + // Fade out `node` while fading in `otherNode` simultaneously + // | require(["dojo/fx"], function(fx){ + // | fx.combine([ + // | fx.fadeIn({ node:node }), + // | fx.fadeOut({ node:otherNode }) + // | ]).play(); + // | }); + // + // example: + // When the longest animation ends, execute a function: + // | require(["dojo/fx"], function(fx){ + // | var anim = fx.combine([ + // | fx.fadeIn({ node: n, duration:700 }), + // | fx.fadeOut({ node: otherNode, duration: 300 }) + // | ]); + // | aspect.after(anim, "onEnd", function(){ + // | // overall animation is done. + // | }, true); + // | anim.play(); // play the animation + // | }); + // + return new _combine(animations); // dojo/_base/fx.Animation + }; + + coreFx.wipeIn = function(/*Object*/ args){ + // summary: + // Expand a node to it's natural height. + // + // description: + // Returns an animation that will expand the + // node defined in 'args' object from it's current height to + // it's natural height (with no scrollbar). + // Node must have no margin/border/padding. + // + // args: Object + // A hash-map of standard `dojo/_base/fx.Animation` constructor properties + // (such as easing: node: duration: and so on) + // + // example: + // | require(["dojo/fx"], function(fx){ + // | fx.wipeIn({ + // | node:"someId" + // | }).play() + // | }); + + var node = args.node = dom.byId(args.node), s = node.style, o; + + var anim = baseFx.animateProperty(lang.mixin({ + properties: { + height: { + // wrapped in functions so we wait till the last second to query (in case value has changed) + start: function(){ + // start at current [computed] height, but use 1px rather than 0 + // because 0 causes IE to display the whole panel + o = s.overflow; + s.overflow = "hidden"; + if(s.visibility == "hidden" || s.display == "none"){ + s.height = "1px"; + s.display = ""; + s.visibility = ""; + return 1; + }else{ + var height = domStyle.get(node, "height"); + return Math.max(height, 1); + } + }, + end: function(){ + return node.scrollHeight; + } + } + } + }, args)); + + var fini = function(){ + s.height = "auto"; + s.overflow = o; + }; + aspect.after(anim, "onStop", fini, true); + aspect.after(anim, "onEnd", fini, true); + + return anim; // dojo/_base/fx.Animation + }; + + coreFx.wipeOut = function(/*Object*/ args){ + // summary: + // Shrink a node to nothing and hide it. + // + // description: + // Returns an animation that will shrink node defined in "args" + // from it's current height to 1px, and then hide it. + // + // args: Object + // A hash-map of standard `dojo/_base/fx.Animation` constructor properties + // (such as easing: node: duration: and so on) + // + // example: + // | require(["dojo/fx"], function(fx){ + // | fx.wipeOut({ node:"someId" }).play() + // | }); + + var node = args.node = dom.byId(args.node), s = node.style, o; + + var anim = baseFx.animateProperty(lang.mixin({ + properties: { + height: { + end: 1 // 0 causes IE to display the whole panel + } + } + }, args)); + + aspect.after(anim, "beforeBegin", function(){ + o = s.overflow; + s.overflow = "hidden"; + s.display = ""; + }, true); + var fini = function(){ + s.overflow = o; + s.height = "auto"; + s.display = "none"; + }; + aspect.after(anim, "onStop", fini, true); + aspect.after(anim, "onEnd", fini, true); + + return anim; // dojo/_base/fx.Animation + }; + + coreFx.slideTo = function(/*Object*/ args){ + // summary: + // Slide a node to a new top/left position + // + // description: + // Returns an animation that will slide "node" + // defined in args Object from its current position to + // the position defined by (args.left, args.top). + // + // args: Object + // A hash-map of standard `dojo/_base/fx.Animation` constructor properties + // (such as easing: node: duration: and so on). Special args members + // are `top` and `left`, which indicate the new position to slide to. + // + // example: + // | .slideTo({ node: node, left:"40", top:"50", units:"px" }).play() + + var node = args.node = dom.byId(args.node), + top = null, left = null; + + var init = (function(n){ + return function(){ + var cs = domStyle.getComputedStyle(n); + var pos = cs.position; + top = (pos == 'absolute' ? n.offsetTop : parseInt(cs.top) || 0); + left = (pos == 'absolute' ? n.offsetLeft : parseInt(cs.left) || 0); + if(pos != 'absolute' && pos != 'relative'){ + var ret = geom.position(n, true); + top = ret.y; + left = ret.x; + n.style.position="absolute"; + n.style.top=top+"px"; + n.style.left=left+"px"; + } + }; + })(node); + init(); + + var anim = baseFx.animateProperty(lang.mixin({ + properties: { + top: args.top || 0, + left: args.left || 0 + } + }, args)); + aspect.after(anim, "beforeBegin", init, true); + + return anim; // dojo/_base/fx.Animation + }; + + return coreFx; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/Toggler.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/Toggler.js new file mode 100644 index 00000000..49f91b13 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/Toggler.js @@ -0,0 +1,28 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/fx/Toggler",["../_base/lang","../_base/declare","../_base/fx","../aspect"],function(_1,_2,_3,_4){ +return _2("dojo.fx.Toggler",null,{node:null,showFunc:_3.fadeIn,hideFunc:_3.fadeOut,showDuration:200,hideDuration:200,constructor:function(_5){ +var _6=this; +_1.mixin(_6,_5); +_6.node=_5.node; +_6._showArgs=_1.mixin({},_5); +_6._showArgs.node=_6.node; +_6._showArgs.duration=_6.showDuration; +_6.showAnim=_6.showFunc(_6._showArgs); +_6._hideArgs=_1.mixin({},_5); +_6._hideArgs.node=_6.node; +_6._hideArgs.duration=_6.hideDuration; +_6.hideAnim=_6.hideFunc(_6._hideArgs); +_4.after(_6.showAnim,"beforeBegin",_1.hitch(_6.hideAnim,"stop",true),true); +_4.after(_6.hideAnim,"beforeBegin",_1.hitch(_6.showAnim,"stop",true),true); +},show:function(_7){ +return this.showAnim.play(_7||0); +},hide:function(_8){ +return this.hideAnim.play(_8||0); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/Toggler.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/Toggler.js.uncompressed.js new file mode 100644 index 00000000..7c4b6355 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/Toggler.js.uncompressed.js @@ -0,0 +1,101 @@ +define("dojo/fx/Toggler", ["../_base/lang","../_base/declare","../_base/fx", "../aspect"], + function(lang, declare, baseFx, aspect){ + // module: + // dojo/fx/Toggler + +return declare("dojo.fx.Toggler", null, { + // summary: + // A simple `dojo.Animation` toggler API. + // description: + // class constructor for an animation toggler. It accepts a packed + // set of arguments about what type of animation to use in each + // direction, duration, etc. All available members are mixed into + // these animations from the constructor (for example, `node`, + // `showDuration`, `hideDuration`). + // example: + // | var t = new dojo/fx/Toggler({ + // | node: "nodeId", + // | showDuration: 500, + // | // hideDuration will default to "200" + // | showFunc: dojo/fx/wipeIn, + // | // hideFunc will default to "fadeOut" + // | }); + // | t.show(100); // delay showing for 100ms + // | // ...time passes... + // | t.hide(); + + // node: DomNode + // the node to target for the showing and hiding animations + node: null, + + // showFunc: Function + // The function that returns the `dojo.Animation` to show the node + showFunc: baseFx.fadeIn, + + // hideFunc: Function + // The function that returns the `dojo.Animation` to hide the node + hideFunc: baseFx.fadeOut, + + // showDuration: + // Time in milliseconds to run the show Animation + showDuration: 200, + + // hideDuration: + // Time in milliseconds to run the hide Animation + hideDuration: 200, + + // FIXME: need a policy for where the toggler should "be" the next + // time show/hide are called if we're stopped somewhere in the + // middle. + // FIXME: also would be nice to specify individual showArgs/hideArgs mixed into + // each animation individually. + // FIXME: also would be nice to have events from the animations exposed/bridged + + /*===== + _showArgs: null, + _showAnim: null, + + _hideArgs: null, + _hideAnim: null, + + _isShowing: false, + _isHiding: false, + =====*/ + + constructor: function(args){ + var _t = this; + + lang.mixin(_t, args); + _t.node = args.node; + _t._showArgs = lang.mixin({}, args); + _t._showArgs.node = _t.node; + _t._showArgs.duration = _t.showDuration; + _t.showAnim = _t.showFunc(_t._showArgs); + + _t._hideArgs = lang.mixin({}, args); + _t._hideArgs.node = _t.node; + _t._hideArgs.duration = _t.hideDuration; + _t.hideAnim = _t.hideFunc(_t._hideArgs); + + aspect.after(_t.showAnim, "beforeBegin", lang.hitch(_t.hideAnim, "stop", true), true); + aspect.after(_t.hideAnim, "beforeBegin", lang.hitch(_t.showAnim, "stop", true), true); + }, + + show: function(delay){ + // summary: + // Toggle the node to showing + // delay: Integer? + // Amount of time to stall playing the show animation + return this.showAnim.play(delay || 0); + }, + + hide: function(delay){ + // summary: + // Toggle the node to hidden + // delay: Integer? + // Amount of time to stall playing the hide animation + return this.hideAnim.play(delay || 0); + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/easing.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/easing.js new file mode 100644 index 00000000..c1e74b6b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/easing.js @@ -0,0 +1,166 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/fx/easing",["../_base/lang"],function(_1){ +var _2={linear:function(n){ +return n; +},quadIn:function(n){ +return Math.pow(n,2); +},quadOut:function(n){ +return n*(n-2)*-1; +},quadInOut:function(n){ +n=n*2; +if(n<1){ +return Math.pow(n,2)/2; +} +return -1*((--n)*(n-2)-1)/2; +},cubicIn:function(n){ +return Math.pow(n,3); +},cubicOut:function(n){ +return Math.pow(n-1,3)+1; +},cubicInOut:function(n){ +n=n*2; +if(n<1){ +return Math.pow(n,3)/2; +} +n-=2; +return (Math.pow(n,3)+2)/2; +},quartIn:function(n){ +return Math.pow(n,4); +},quartOut:function(n){ +return -1*(Math.pow(n-1,4)-1); +},quartInOut:function(n){ +n=n*2; +if(n<1){ +return Math.pow(n,4)/2; +} +n-=2; +return -1/2*(Math.pow(n,4)-2); +},quintIn:function(n){ +return Math.pow(n,5); +},quintOut:function(n){ +return Math.pow(n-1,5)+1; +},quintInOut:function(n){ +n=n*2; +if(n<1){ +return Math.pow(n,5)/2; +} +n-=2; +return (Math.pow(n,5)+2)/2; +},sineIn:function(n){ +return -1*Math.cos(n*(Math.PI/2))+1; +},sineOut:function(n){ +return Math.sin(n*(Math.PI/2)); +},sineInOut:function(n){ +return -1*(Math.cos(Math.PI*n)-1)/2; +},expoIn:function(n){ +return (n==0)?0:Math.pow(2,10*(n-1)); +},expoOut:function(n){ +return (n==1)?1:(-1*Math.pow(2,-10*n)+1); +},expoInOut:function(n){ +if(n==0){ +return 0; +} +if(n==1){ +return 1; +} +n=n*2; +if(n<1){ +return Math.pow(2,10*(n-1))/2; +} +--n; +return (-1*Math.pow(2,-10*n)+2)/2; +},circIn:function(n){ +return -1*(Math.sqrt(1-Math.pow(n,2))-1); +},circOut:function(n){ +n=n-1; +return Math.sqrt(1-Math.pow(n,2)); +},circInOut:function(n){ +n=n*2; +if(n<1){ +return -1/2*(Math.sqrt(1-Math.pow(n,2))-1); +} +n-=2; +return 1/2*(Math.sqrt(1-Math.pow(n,2))+1); +},backIn:function(n){ +var s=1.70158; +return Math.pow(n,2)*((s+1)*n-s); +},backOut:function(n){ +n=n-1; +var s=1.70158; +return Math.pow(n,2)*((s+1)*n+s)+1; +},backInOut:function(n){ +var s=1.70158*1.525; +n=n*2; +if(n<1){ +return (Math.pow(n,2)*((s+1)*n-s))/2; +} +n-=2; +return (Math.pow(n,2)*((s+1)*n+s)+2)/2; +},elasticIn:function(n){ +if(n==0||n==1){ +return n; +} +var p=0.3; +var s=p/4; +n=n-1; +return -1*Math.pow(2,10*n)*Math.sin((n-s)*(2*Math.PI)/p); +},elasticOut:function(n){ +if(n==0||n==1){ +return n; +} +var p=0.3; +var s=p/4; +return Math.pow(2,-10*n)*Math.sin((n-s)*(2*Math.PI)/p)+1; +},elasticInOut:function(n){ +if(n==0){ +return 0; +} +n=n*2; +if(n==2){ +return 1; +} +var p=0.3*1.5; +var s=p/4; +if(n<1){ +n-=1; +return -0.5*(Math.pow(2,10*n)*Math.sin((n-s)*(2*Math.PI)/p)); +} +n-=1; +return 0.5*(Math.pow(2,-10*n)*Math.sin((n-s)*(2*Math.PI)/p))+1; +},bounceIn:function(n){ +return (1-_2.bounceOut(1-n)); +},bounceOut:function(n){ +var s=7.5625; +var p=2.75; +var l; +if(n<(1/p)){ +l=s*Math.pow(n,2); +}else{ +if(n<(2/p)){ +n-=(1.5/p); +l=s*Math.pow(n,2)+0.75; +}else{ +if(n<(2.5/p)){ +n-=(2.25/p); +l=s*Math.pow(n,2)+0.9375; +}else{ +n-=(2.625/p); +l=s*Math.pow(n,2)+0.984375; +} +} +} +return l; +},bounceInOut:function(n){ +if(n<0.5){ +return _2.bounceIn(n*2)/2; +} +return (_2.bounceOut(n*2-1)/2)+0.5; +}}; +_1.setObject("dojo.fx.easing",_2); +return _2; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/easing.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/easing.js.uncompressed.js new file mode 100644 index 00000000..d899bce4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/fx/easing.js.uncompressed.js @@ -0,0 +1,276 @@ +define("dojo/fx/easing", ["../_base/lang"], function(lang){ + +// module: +// dojo/fx/easing + +var easingFuncs = { + // summary: + // Collection of easing functions to use beyond the default + // `dojo._defaultEasing` function. + // description: + // Easing functions are used to manipulate the iteration through + // an `dojo.Animation`s _Line. _Line being the properties of an Animation, + // and the easing function progresses through that Line determining + // how quickly (or slowly) it should go. Or more accurately: modify + // the value of the _Line based on the percentage of animation completed. + // + // All functions follow a simple naming convention of "ease type" + "when". + // If the name of the function ends in Out, the easing described appears + // towards the end of the animation. "In" means during the beginning, + // and InOut means both ranges of the Animation will applied, both + // beginning and end. + // + // One does not call the easing function directly, it must be passed to + // the `easing` property of an animation. + // example: + // | dojo.require("dojo.fx.easing"); + // | var anim = dojo.fadeOut({ + // | node: 'node', + // | duration: 2000, + // | // note there is no () + // | easing: dojo.fx.easing.quadIn + // | }).play(); + // + + linear: function(/* Decimal? */n){ + // summary: + // A linear easing function + return n; + }, + + quadIn: function(/* Decimal? */n){ + return Math.pow(n, 2); + }, + + quadOut: function(/* Decimal? */n){ + return n * (n - 2) * -1; + }, + + quadInOut: function(/* Decimal? */n){ + n = n * 2; + if(n < 1){ return Math.pow(n, 2) / 2; } + return -1 * ((--n) * (n - 2) - 1) / 2; + }, + + cubicIn: function(/* Decimal? */n){ + return Math.pow(n, 3); + }, + + cubicOut: function(/* Decimal? */n){ + return Math.pow(n - 1, 3) + 1; + }, + + cubicInOut: function(/* Decimal? */n){ + n = n * 2; + if(n < 1){ return Math.pow(n, 3) / 2; } + n -= 2; + return (Math.pow(n, 3) + 2) / 2; + }, + + quartIn: function(/* Decimal? */n){ + return Math.pow(n, 4); + }, + + quartOut: function(/* Decimal? */n){ + return -1 * (Math.pow(n - 1, 4) - 1); + }, + + quartInOut: function(/* Decimal? */n){ + n = n * 2; + if(n < 1){ return Math.pow(n, 4) / 2; } + n -= 2; + return -1 / 2 * (Math.pow(n, 4) - 2); + }, + + quintIn: function(/* Decimal? */n){ + return Math.pow(n, 5); + }, + + quintOut: function(/* Decimal? */n){ + return Math.pow(n - 1, 5) + 1; + }, + + quintInOut: function(/* Decimal? */n){ + n = n * 2; + if(n < 1){ return Math.pow(n, 5) / 2; } + n -= 2; + return (Math.pow(n, 5) + 2) / 2; + }, + + sineIn: function(/* Decimal? */n){ + return -1 * Math.cos(n * (Math.PI / 2)) + 1; + }, + + sineOut: function(/* Decimal? */n){ + return Math.sin(n * (Math.PI / 2)); + }, + + sineInOut: function(/* Decimal? */n){ + return -1 * (Math.cos(Math.PI * n) - 1) / 2; + }, + + expoIn: function(/* Decimal? */n){ + return (n == 0) ? 0 : Math.pow(2, 10 * (n - 1)); + }, + + expoOut: function(/* Decimal? */n){ + return (n == 1) ? 1 : (-1 * Math.pow(2, -10 * n) + 1); + }, + + expoInOut: function(/* Decimal? */n){ + if(n == 0){ return 0; } + if(n == 1){ return 1; } + n = n * 2; + if(n < 1){ return Math.pow(2, 10 * (n - 1)) / 2; } + --n; + return (-1 * Math.pow(2, -10 * n) + 2) / 2; + }, + + circIn: function(/* Decimal? */n){ + return -1 * (Math.sqrt(1 - Math.pow(n, 2)) - 1); + }, + + circOut: function(/* Decimal? */n){ + n = n - 1; + return Math.sqrt(1 - Math.pow(n, 2)); + }, + + circInOut: function(/* Decimal? */n){ + n = n * 2; + if(n < 1){ return -1 / 2 * (Math.sqrt(1 - Math.pow(n, 2)) - 1); } + n -= 2; + return 1 / 2 * (Math.sqrt(1 - Math.pow(n, 2)) + 1); + }, + + backIn: function(/* Decimal? */n){ + // summary: + // An easing function that starts away from the target, + // and quickly accelerates towards the end value. + // + // Use caution when the easing will cause values to become + // negative as some properties cannot be set to negative values. + var s = 1.70158; + return Math.pow(n, 2) * ((s + 1) * n - s); + }, + + backOut: function(/* Decimal? */n){ + // summary: + // An easing function that pops past the range briefly, and slowly comes back. + // description: + // An easing function that pops past the range briefly, and slowly comes back. + // + // Use caution when the easing will cause values to become negative as some + // properties cannot be set to negative values. + + n = n - 1; + var s = 1.70158; + return Math.pow(n, 2) * ((s + 1) * n + s) + 1; + }, + + backInOut: function(/* Decimal? */n){ + // summary: + // An easing function combining the effects of `backIn` and `backOut` + // description: + // An easing function combining the effects of `backIn` and `backOut`. + // Use caution when the easing will cause values to become negative + // as some properties cannot be set to negative values. + var s = 1.70158 * 1.525; + n = n * 2; + if(n < 1){ return (Math.pow(n, 2) * ((s + 1) * n - s)) / 2; } + n-=2; + return (Math.pow(n, 2) * ((s + 1) * n + s) + 2) / 2; + }, + + elasticIn: function(/* Decimal? */n){ + // summary: + // An easing function the elastically snaps from the start value + // description: + // An easing function the elastically snaps from the start value + // + // Use caution when the elasticity will cause values to become negative + // as some properties cannot be set to negative values. + if(n == 0 || n == 1){ return n; } + var p = .3; + var s = p / 4; + n = n - 1; + return -1 * Math.pow(2, 10 * n) * Math.sin((n - s) * (2 * Math.PI) / p); + }, + + elasticOut: function(/* Decimal? */n){ + // summary: + // An easing function that elasticly snaps around the target value, + // near the end of the Animation + // description: + // An easing function that elasticly snaps around the target value, + // near the end of the Animation + // + // Use caution when the elasticity will cause values to become + // negative as some properties cannot be set to negative values. + if(n==0 || n == 1){ return n; } + var p = .3; + var s = p / 4; + return Math.pow(2, -10 * n) * Math.sin((n - s) * (2 * Math.PI) / p) + 1; + }, + + elasticInOut: function(/* Decimal? */n){ + // summary: + // An easing function that elasticly snaps around the value, near + // the beginning and end of the Animation. + // description: + // An easing function that elasticly snaps around the value, near + // the beginning and end of the Animation. + // + // Use caution when the elasticity will cause values to become + // negative as some properties cannot be set to negative values. + if(n == 0) return 0; + n = n * 2; + if(n == 2) return 1; + var p = .3 * 1.5; + var s = p / 4; + if(n < 1){ + n -= 1; + return -.5 * (Math.pow(2, 10 * n) * Math.sin((n - s) * (2 * Math.PI) / p)); + } + n -= 1; + return .5 * (Math.pow(2, -10 * n) * Math.sin((n - s) * (2 * Math.PI) / p)) + 1; + }, + + bounceIn: function(/* Decimal? */n){ + // summary: + // An easing function that 'bounces' near the beginning of an Animation + return (1 - easingFuncs.bounceOut(1 - n)); // Decimal + }, + + bounceOut: function(/* Decimal? */n){ + // summary: + // An easing function that 'bounces' near the end of an Animation + var s = 7.5625; + var p = 2.75; + var l; + if(n < (1 / p)){ + l = s * Math.pow(n, 2); + }else if(n < (2 / p)){ + n -= (1.5 / p); + l = s * Math.pow(n, 2) + .75; + }else if(n < (2.5 / p)){ + n -= (2.25 / p); + l = s * Math.pow(n, 2) + .9375; + }else{ + n -= (2.625 / p); + l = s * Math.pow(n, 2) + .984375; + } + return l; + }, + + bounceInOut: function(/* Decimal? */n){ + // summary: + // An easing function that 'bounces' at the beginning and end of the Animation + if(n < 0.5){ return easingFuncs.bounceIn(n * 2) / 2; } + return (easingFuncs.bounceOut(n * 2 - 1) / 2) + 0.5; // Decimal + } +}; + +lang.setObject("dojo.fx.easing", easingFuncs); + +return easingFuncs; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/gears.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/gears.js new file mode 100644 index 00000000..aa41710b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/gears.js @@ -0,0 +1,45 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/gears",["./_base/lang","./sniff"],function(_1,_2){ +var _3={}; +_1.setObject("dojo.gears",_3); +_3._gearsObject=function(){ +var _4; +var _5=_1.getObject("google.gears"); +if(_5){ +return _5; +} +if(typeof GearsFactory!="undefined"){ +_4=new GearsFactory(); +}else{ +if(_2("ie")){ +try{ +_4=new ActiveXObject("Gears.Factory"); +} +catch(e){ +} +}else{ +if(navigator.mimeTypes["application/x-googlegears"]){ +_4=document.createElement("object"); +_4.setAttribute("type","application/x-googlegears"); +_4.setAttribute("width",0); +_4.setAttribute("height",0); +_4.style.display="none"; +document.documentElement.appendChild(_4); +} +} +} +if(!_4){ +return null; +} +_1.setObject("google.gears.factory",_4); +return _1.getObject("google.gears"); +}; +_3.available=(!!_3._gearsObject())||0; +return _3; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/gears.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/gears.js.uncompressed.js new file mode 100644 index 00000000..4507f05c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/gears.js.uncompressed.js @@ -0,0 +1,65 @@ +define("dojo/gears", ["./_base/lang", "./sniff"], function(lang, has){ + +// module: +// dojo/gears + +var gears = { + // summary: + // TODOC +}; +lang.setObject("dojo.gears", gears); + +gears._gearsObject = function(){ + // summary: + // factory method to get a Google Gears plugin instance to + // expose in the browser runtime environment, if present + var factory; + + var gearsObj = lang.getObject("google.gears"); + if(gearsObj){ return gearsObj; } // already defined elsewhere + + if(typeof GearsFactory != "undefined"){ // Firefox + factory = new GearsFactory(); + }else{ + if(has("ie")){ + // IE + try{ + factory = new ActiveXObject("Gears.Factory"); + }catch(e){ + // ok to squelch; there's no gears factory. move on. + } + }else if(navigator.mimeTypes["application/x-googlegears"]){ + // Safari? + factory = document.createElement("object"); + factory.setAttribute("type", "application/x-googlegears"); + factory.setAttribute("width", 0); + factory.setAttribute("height", 0); + factory.style.display = "none"; + document.documentElement.appendChild(factory); + } + } + + // still nothing? + if(!factory){ return null; } + + // define the global objects now; don't overwrite them though if they + // were somehow set internally by the Gears plugin, which is on their + // dev roadmap for the future + lang.setObject("google.gears.factory", factory); + return lang.getObject("google.gears"); +}; + + +// see if we have Google Gears installed, and if +// so, make it available in the runtime environment +// and in the Google standard 'google.gears' global object +gears.available = (!!gears._gearsObject())||0; +/*===== + gears.available = { + // summary: + // True if client is using Google Gears + }; + =====*/ + +return gears; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/has.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/has.js new file mode 100644 index 00000000..5c0ff394 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/has.js @@ -0,0 +1,73 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/has",["require","module"],function(_1,_2){ +var _3=_1.has||function(){ +}; +if(!1){ +var _4=typeof window!="undefined"&&typeof location!="undefined"&&typeof document!="undefined"&&window.location==location&&window.document==document,_5=(function(){ +return this; +})(),_6=_4&&document,_7=_6&&_6.createElement("DiV"),_8=(_2.config&&_2.config())||{}; +_3=function(_9){ +return typeof _8[_9]=="function"?(_8[_9]=_8[_9](_5,_6,_7)):_8[_9]; +}; +_3.cache=_8; +_3.add=function(_a,_b,_c,_d){ +(typeof _8[_a]=="undefined"||_d)&&(_8[_a]=_b); +return _c&&_3(_a); +}; +1||_3.add("host-browser",_4); +0&&_3.add("host-node",(typeof process=="object"&&process.versions&&process.versions.node&&process.versions.v8)); +0&&_3.add("host-rhino",(typeof load=="function"&&(typeof Packages=="function"||typeof Packages=="object"))); +1||_3.add("dom",_4); +1||_3.add("dojo-dom-ready-api",1); +1||_3.add("dojo-sniff",1); +} +if(1){ +_3.add("dom-addeventlistener",!!document.addEventListener); +_3.add("touch","ontouchstart" in document||("onpointerdown" in document&&navigator.maxTouchPoints>0)||window.navigator.msMaxTouchPoints); +_3.add("touch-events","ontouchstart" in document); +_3.add("pointer-events","onpointerdown" in document); +_3.add("MSPointer","msMaxTouchPoints" in navigator); +_3.add("device-width",screen.availWidth||innerWidth); +var _e=document.createElement("form"); +_3.add("dom-attributes-explicit",_e.attributes.length==0); +_3.add("dom-attributes-specified-flag",_e.attributes.length>0&&_e.attributes.length<40); +} +_3.clearElement=function(_f){ +_f.innerHTML=""; +return _f; +}; +_3.normalize=function(id,_10){ +var _11=id.match(/[\?:]|[^:\?]*/g),i=0,get=function(_12){ +var _13=_11[i++]; +if(_13==":"){ +return 0; +}else{ +if(_11[i++]=="?"){ +if(!_12&&_3(_13)){ +return get(); +}else{ +get(true); +return get(_12); +} +} +return _13||0; +} +}; +id=get(); +return id&&_10(id); +}; +_3.load=function(id,_14,_15){ +if(id){ +_14([id],_15); +}else{ +_15(); +} +}; +return _3; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/has.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/has.js.uncompressed.js new file mode 100644 index 00000000..12679e7d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/has.js.uncompressed.js @@ -0,0 +1,187 @@ +define("dojo/has", ["require", "module"], function(require, module){ + // module: + // dojo/has + // summary: + // Defines the has.js API and several feature tests used by dojo. + // description: + // This module defines the has API as described by the project has.js with the following additional features: + // + // - the has test cache is exposed at has.cache. + // - the method has.add includes a forth parameter that controls whether or not existing tests are replaced + // - the loader's has cache may be optionally copied into this module's has cahce. + // + // This module adopted from https://github.com/phiggins42/has.js; thanks has.js team! + + // try to pull the has implementation from the loader; both the dojo loader and bdLoad provide one + // if using a foreign loader, then the has cache may be initialized via the config object for this module + // WARNING: if a foreign loader defines require.has to be something other than the has.js API, then this implementation fail + var has = require.has || function(){}; + if(! 1 ){ + var + isBrowser = + // the most fundamental decision: are we in the browser? + typeof window != "undefined" && + typeof location != "undefined" && + typeof document != "undefined" && + window.location == location && window.document == document, + + // has API variables + global = (function () { return this; })(), + doc = isBrowser && document, + element = doc && doc.createElement("DiV"), + cache = (module.config && module.config()) || {}; + + has = function(name){ + // summary: + // Return the current value of the named feature. + // + // name: String|Integer + // The name (if a string) or identifier (if an integer) of the feature to test. + // + // description: + // Returns the value of the feature named by name. The feature must have been + // previously added to the cache by has.add. + + return typeof cache[name] == "function" ? (cache[name] = cache[name](global, doc, element)) : cache[name]; // Boolean + }; + + has.cache = cache; + + has.add = function(name, test, now, force){ + // summary: + // Register a new feature test for some named feature. + // name: String|Integer + // The name (if a string) or identifier (if an integer) of the feature to test. + // test: Function + // A test function to register. If a function, queued for testing until actually + // needed. The test function should return a boolean indicating + // the presence of a feature or bug. + // now: Boolean? + // Optional. Omit if `test` is not a function. Provides a way to immediately + // run the test and cache the result. + // force: Boolean? + // Optional. If the test already exists and force is truthy, then the existing + // test will be replaced; otherwise, add does not replace an existing test (that + // is, by default, the first test advice wins). + // example: + // A redundant test, testFn with immediate execution: + // | has.add("javascript", function(){ return true; }, true); + // + // example: + // Again with the redundantness. You can do this in your tests, but we should + // not be doing this in any internal has.js tests + // | has.add("javascript", true); + // + // example: + // Three things are passed to the testFunction. `global`, `document`, and a generic element + // from which to work your test should the need arise. + // | has.add("bug-byid", function(g, d, el){ + // | // g == global, typically window, yadda yadda + // | // d == document object + // | // el == the generic element. a `has` element. + // | return false; // fake test, byid-when-form-has-name-matching-an-id is slightly longer + // | }); + + (typeof cache[name]=="undefined" || force) && (cache[name]= test); + return now && has(name); + }; + + // since we're operating under a loader that doesn't provide a has API, we must explicitly initialize + // has as it would have otherwise been initialized by the dojo loader; use has.add to the builder + // can optimize these away iff desired + 1 || has.add("host-browser", isBrowser); + 0 && has.add("host-node", (typeof process == "object" && process.versions && process.versions.node && process.versions.v8)); + 0 && has.add("host-rhino", (typeof load == "function" && (typeof Packages == "function" || typeof Packages == "object"))); + 1 || has.add("dom", isBrowser); + 1 || has.add("dojo-dom-ready-api", 1); + 1 || has.add("dojo-sniff", 1); + } + + if( 1 ){ + // Common application level tests + has.add("dom-addeventlistener", !!document.addEventListener); + + // Do the device and browser have touch capability? + has.add("touch", "ontouchstart" in document + || ("onpointerdown" in document && navigator.maxTouchPoints > 0) + || window.navigator.msMaxTouchPoints); + + // Touch events support + has.add("touch-events", "ontouchstart" in document); + + // Pointer Events support + has.add("pointer-events", "onpointerdown" in document); + has.add("MSPointer", "msMaxTouchPoints" in navigator); //IE10 (+IE11 preview) + + // I don't know if any of these tests are really correct, just a rough guess + has.add("device-width", screen.availWidth || innerWidth); + + // Tests for DOMNode.attributes[] behavior: + // - dom-attributes-explicit - attributes[] only lists explicitly user specified attributes + // - dom-attributes-specified-flag (IE8) - need to check attr.specified flag to skip attributes user didn't specify + // - Otherwise, in IE6-7. attributes[] will list hundreds of values, so need to do outerHTML to get attrs instead. + var form = document.createElement("form"); + has.add("dom-attributes-explicit", form.attributes.length == 0); // W3C + has.add("dom-attributes-specified-flag", form.attributes.length > 0 && form.attributes.length < 40); // IE8 + } + + has.clearElement = function(element){ + // summary: + // Deletes the contents of the element passed to test functions. + element.innerHTML= ""; + return element; + }; + + has.normalize = function(id, toAbsMid){ + // summary: + // Resolves id into a module id based on possibly-nested tenary expression that branches on has feature test value(s). + // + // toAbsMid: Function + // Resolves a relative module id into an absolute module id + var + tokens = id.match(/[\?:]|[^:\?]*/g), i = 0, + get = function(skip){ + var term = tokens[i++]; + if(term == ":"){ + // empty string module name, resolves to 0 + return 0; + }else{ + // postfixed with a ? means it is a feature to branch on, the term is the name of the feature + if(tokens[i++] == "?"){ + if(!skip && has(term)){ + // matched the feature, get the first value from the options + return get(); + }else{ + // did not match, get the second value, passing over the first + get(true); + return get(skip); + } + } + // a module + return term || 0; + } + }; + id = get(); + return id && toAbsMid(id); + }; + + has.load = function(id, parentRequire, loaded){ + // summary: + // Conditional loading of AMD modules based on a has feature test value. + // id: String + // Gives the resolved module id to load. + // parentRequire: Function + // The loader require function with respect to the module that contained the plugin resource in it's + // dependency list. + // loaded: Function + // Callback to loader that consumes result of plugin demand. + + if(id){ + parentRequire([id], loaded); + }else{ + loaded(); + } + }; + + return has; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hash.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hash.js new file mode 100644 index 00000000..76d4c7cc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hash.js @@ -0,0 +1,137 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/hash",["./_base/kernel","require","./_base/config","./aspect","./_base/lang","./topic","./domReady","./sniff"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +_1.hash=function(_9,_a){ +if(!arguments.length){ +return _b(); +} +if(_9.charAt(0)=="#"){ +_9=_9.substring(1); +} +if(_a){ +_c(_9); +}else{ +location.href="#"+_9; +} +return _9; +}; +var _d,_e,_f,_10=_3.hashPollFrequency||100; +function _11(str,_12){ +var i=str.indexOf(_12); +return (i>=0)?str.substring(i+1):""; +}; +function _b(){ +return _11(location.href,"#"); +}; +function _13(){ +_6.publish("/dojo/hashchange",_b()); +}; +function _14(){ +if(_b()===_d){ +return; +} +_d=_b(); +_13(); +}; +function _c(_15){ +if(_e){ +if(_e.isTransitioning()){ +setTimeout(_5.hitch(null,_c,_15),_10); +return; +} +var _16=_e.iframe.location.href; +var _17=_16.indexOf("?"); +_e.iframe.location.replace(_16.substring(0,_17)+"?"+_15); +return; +} +location.replace("#"+_15); +!_f&&_14(); +}; +function _18(){ +var ifr=document.createElement("iframe"),_19="dojo-hash-iframe",_1a=_3.dojoBlankHtmlUrl||_2.toUrl("./resources/blank.html"); +if(_3.useXDomain&&!_3.dojoBlankHtmlUrl){ +console.warn("dojo/hash: When using cross-domain Dojo builds,"+" please save dojo/resources/blank.html to your domain and set djConfig.dojoBlankHtmlUrl"+" to the path on your domain to blank.html"); +} +ifr.id=_19; +ifr.src=_1a+"?"+_b(); +ifr.style.display="none"; +document.body.appendChild(ifr); +this.iframe=_1.global[_19]; +var _1b,_1c,_1d,_1e,_1f,_20=this.iframe.location; +function _21(){ +_d=_b(); +_1b=_1f?_d:_11(_20.href,"?"); +_1c=false; +_1d=null; +}; +this.isTransitioning=function(){ +return _1c; +}; +this.pollLocation=function(){ +if(!_1f){ +try{ +var _22=_11(_20.href,"?"); +if(document.title!=_1e){ +_1e=this.iframe.document.title=document.title; +} +} +catch(e){ +_1f=true; +console.error("dojo/hash: Error adding history entry. Server unreachable."); +} +} +var _23=_b(); +if(_1c&&_d===_23){ +if(_1f||_22===_1d){ +_21(); +_13(); +}else{ +setTimeout(_5.hitch(this,this.pollLocation),0); +return; +} +}else{ +if(_d===_23&&(_1f||_1b===_22)){ +}else{ +if(_d!==_23){ +_d=_23; +_1c=true; +_1d=_23; +ifr.src=_1a+"?"+_1d; +_1f=false; +setTimeout(_5.hitch(this,this.pollLocation),0); +return; +}else{ +if(!_1f){ +location.href="#"+_20.search.substring(1); +_21(); +_13(); +} +} +} +} +setTimeout(_5.hitch(this,this.pollLocation),_10); +}; +_21(); +setTimeout(_5.hitch(this,this.pollLocation),_10); +}; +_7(function(){ +if("onhashchange" in _1.global&&(!_8("ie")||(_8("ie")>=8&&document.compatMode!="BackCompat"))){ +_f=_4.after(_1.global,"onhashchange",_13,true); +}else{ +if(document.addEventListener){ +_d=_b(); +setInterval(_14,_10); +}else{ +if(document.attachEvent){ +_e=new _18(); +} +} +} +}); +return _1.hash; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hash.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hash.js.uncompressed.js new file mode 100644 index 00000000..dacd5552 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hash.js.uncompressed.js @@ -0,0 +1,256 @@ +define("dojo/hash", ["./_base/kernel", "require", "./_base/config", "./aspect", "./_base/lang", "./topic", "./domReady", "./sniff"], + function(dojo, require, config, aspect, lang, topic, domReady, has){ + + // module: + // dojo/hash + + dojo.hash = function(/* String? */ hash, /* Boolean? */ replace){ + // summary: + // Gets or sets the hash string in the browser URL. + // description: + // Handles getting and setting of location.hash. + // + // - If no arguments are passed, acts as a getter. + // - If a string is passed, acts as a setter. + // hash: + // the hash is set - #string. + // replace: + // If true, updates the hash value in the current history + // state instead of creating a new history state. + // returns: + // when used as a getter, returns the current hash string. + // when used as a setter, returns the new hash string. + // example: + // | topic.subscribe("/dojo/hashchange", context, callback); + // | + // | function callback (hashValue){ + // | // do something based on the hash value. + // | } + + // getter + if(!arguments.length){ + return _getHash(); + } + // setter + if(hash.charAt(0) == "#"){ + hash = hash.substring(1); + } + if(replace){ + _replace(hash); + }else{ + location.href = "#" + hash; + } + return hash; // String + }; + + // Global vars + var _recentHash, _ieUriMonitor, _connect, + _pollFrequency = config.hashPollFrequency || 100; + + //Internal functions + function _getSegment(str, delimiter){ + var i = str.indexOf(delimiter); + return (i >= 0) ? str.substring(i+1) : ""; + } + + function _getHash(){ + return _getSegment(location.href, "#"); + } + + function _dispatchEvent(){ + topic.publish("/dojo/hashchange", _getHash()); + } + + function _pollLocation(){ + if(_getHash() === _recentHash){ + return; + } + _recentHash = _getHash(); + _dispatchEvent(); + } + + function _replace(hash){ + if(_ieUriMonitor){ + if(_ieUriMonitor.isTransitioning()){ + setTimeout(lang.hitch(null,_replace,hash), _pollFrequency); + return; + } + var href = _ieUriMonitor.iframe.location.href; + var index = href.indexOf('?'); + // main frame will detect and update itself + _ieUriMonitor.iframe.location.replace(href.substring(0, index) + "?" + hash); + return; + } + location.replace("#"+hash); + !_connect && _pollLocation(); + } + + function IEUriMonitor(){ + // summary: + // Determine if the browser's URI has changed or if the user has pressed the + // back or forward button. If so, call _dispatchEvent. + // + // description: + // IE doesn't add changes to the URI's hash into the history unless the hash + // value corresponds to an actual named anchor in the document. To get around + // this IE difference, we use a background IFrame to maintain a back-forward + // history, by updating the IFrame's query string to correspond to the + // value of the main browser location's hash value. + // + // E.g. if the value of the browser window's location changes to + // + // #action=someAction + // + // ... then we'd update the IFrame's source to: + // + // ?action=someAction + // + // This design leads to a somewhat complex state machine, which is + // described below: + // + // ####s1 + // + // Stable state - neither the window's location has changed nor + // has the IFrame's location. Note that this is the 99.9% case, so + // we optimize for it. + // + // Transitions: s1, s2, s3 + // + // ####s2 + // + // Window's location changed - when a user clicks a hyperlink or + // code programmatically changes the window's URI. + // + // Transitions: s4 + // + // ####s3 + // + // Iframe's location changed as a result of user pressing back or + // forward - when the user presses back or forward, the location of + // the background's iframe changes to the previous or next value in + // its history. + // + // Transitions: s1 + // + // ####s4 + // + // IEUriMonitor has programmatically changed the location of the + // background iframe, but it's location hasn't yet changed. In this + // case we do nothing because we need to wait for the iframe's + // location to reflect its actual state. + // + // Transitions: s4, s5 + // + // ####s5 + // + // IEUriMonitor has programmatically changed the location of the + // background iframe, and the iframe's location has caught up with + // reality. In this case we need to transition to s1. + // + // Transitions: s1 + // + // The hashchange event is always dispatched on the transition back to s1. + + + // create and append iframe + var ifr = document.createElement("iframe"), + IFRAME_ID = "dojo-hash-iframe", + ifrSrc = config.dojoBlankHtmlUrl || require.toUrl("./resources/blank.html"); + + if(config.useXDomain && !config.dojoBlankHtmlUrl){ + console.warn("dojo/hash: When using cross-domain Dojo builds," + + " please save dojo/resources/blank.html to your domain and set djConfig.dojoBlankHtmlUrl" + + " to the path on your domain to blank.html"); + } + + ifr.id = IFRAME_ID; + ifr.src = ifrSrc + "?" + _getHash(); + ifr.style.display = "none"; + document.body.appendChild(ifr); + + this.iframe = dojo.global[IFRAME_ID]; + var recentIframeQuery, transitioning, expectedIFrameQuery, docTitle, ifrOffline, + iframeLoc = this.iframe.location; + + function resetState(){ + _recentHash = _getHash(); + recentIframeQuery = ifrOffline ? _recentHash : _getSegment(iframeLoc.href, "?"); + transitioning = false; + expectedIFrameQuery = null; + } + + this.isTransitioning = function(){ + return transitioning; + }; + + this.pollLocation = function(){ + if(!ifrOffline){ + try{ + //see if we can access the iframe's location without a permission denied error + var iframeSearch = _getSegment(iframeLoc.href, "?"); + //good, the iframe is same origin (no thrown exception) + if(document.title != docTitle){ //sync title of main window with title of iframe. + docTitle = this.iframe.document.title = document.title; + } + }catch(e){ + //permission denied - server cannot be reached. + ifrOffline = true; + console.error("dojo/hash: Error adding history entry. Server unreachable."); + } + } + var hash = _getHash(); + if(transitioning && _recentHash === hash){ + // we're in an iframe transition (s4 or s5) + if(ifrOffline || iframeSearch === expectedIFrameQuery){ + // s5 (iframe caught up to main window or iframe offline), transition back to s1 + resetState(); + _dispatchEvent(); + }else{ + // s4 (waiting for iframe to catch up to main window) + setTimeout(lang.hitch(this,this.pollLocation),0); + return; + } + }else if(_recentHash === hash && (ifrOffline || recentIframeQuery === iframeSearch)){ + // we're in stable state (s1, iframe query == main window hash), do nothing + }else{ + // the user has initiated a URL change somehow. + // sync iframe query <-> main window hash + if(_recentHash !== hash){ + // s2 (main window location changed), set iframe url and transition to s4 + _recentHash = hash; + transitioning = true; + expectedIFrameQuery = hash; + ifr.src = ifrSrc + "?" + expectedIFrameQuery; + ifrOffline = false; //we're updating the iframe src - set offline to false so we can check again on next poll. + setTimeout(lang.hitch(this,this.pollLocation),0); //yielded transition to s4 while iframe reloads. + return; + }else if(!ifrOffline){ + // s3 (iframe location changed via back/forward button), set main window url and transition to s1. + location.href = "#" + iframeLoc.search.substring(1); + resetState(); + _dispatchEvent(); + } + } + setTimeout(lang.hitch(this,this.pollLocation), _pollFrequency); + }; + resetState(); // initialize state (transition to s1) + setTimeout(lang.hitch(this,this.pollLocation), _pollFrequency); + } + domReady(function(){ + if("onhashchange" in dojo.global && (!has("ie") || (has("ie") >= 8 && document.compatMode != "BackCompat"))){ //need this IE browser test because "onhashchange" exists in IE8 in IE7 mode + _connect = aspect.after(dojo.global,"onhashchange",_dispatchEvent, true); + }else{ + if(document.addEventListener){ // Non-IE + _recentHash = _getHash(); + setInterval(_pollLocation, _pollFrequency); //Poll the window location for changes + }else if(document.attachEvent){ // IE7- + //Use hidden iframe in versions of IE that don't have onhashchange event + _ieUriMonitor = new IEUriMonitor(); + } + // else non-supported browser, do nothing. + } + }); + + return dojo.hash; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hccss.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hccss.js new file mode 100644 index 00000000..2854f7cf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hccss.js @@ -0,0 +1,27 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/hccss",["require","./_base/config","./dom-class","./dom-style","./has","./domReady","./_base/window"],function(_1,_2,_3,_4,_5,_6,_7){ +_5.add("highcontrast",function(){ +var _8=_7.doc.createElement("div"); +_8.style.cssText="border: 1px solid; border-color:red green; position: absolute; height: 5px; top: -999px;"+"background-image: url(\""+(_2.blankGif||_1.toUrl("./resources/blank.gif"))+"\");"; +_7.body().appendChild(_8); +var cs=_4.getComputedStyle(_8),_9=cs.backgroundImage,hc=(cs.borderTopColor==cs.borderRightColor)||(_9&&(_9=="none"||_9=="url(invalid-url:)")); +if(_5("ie")<=8){ +_8.outerHTML=""; +}else{ +_7.body().removeChild(_8); +} +return hc; +}); +_6(function(){ +if(_5("highcontrast")){ +_3.add(_7.body(),"dj_a11y"); +} +}); +return _5; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hccss.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hccss.js.uncompressed.js new file mode 100644 index 00000000..0109b35a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/hccss.js.uncompressed.js @@ -0,0 +1,52 @@ +define("dojo/hccss", [ + "require", // require, require.toUrl + "./_base/config", // config.blankGif + "./dom-class", // domClass.add + "./dom-style", // domStyle.getComputedStyle + "./has", + "./domReady", + "./_base/window" // win.body +], function(require, config, domClass, domStyle, has, domReady, win){ + + // module: + // dojo/hccss + + /*===== + return function(){ + // summary: + // Test if computer is in high contrast mode (i.e. if browser is not displaying background images). + // Defines `has("highcontrast")` and sets `dj_a11y` CSS class on `` if machine is in high contrast mode. + // Returns `has()` method; + }; + =====*/ + + // Has() test for when background images aren't displayed. Don't call has("highcontrast") before dojo/domReady!. + has.add("highcontrast", function(){ + // note: if multiple documents, doesn't matter which one we use + var div = win.doc.createElement("div"); + div.style.cssText = "border: 1px solid; border-color:red green; position: absolute; height: 5px; top: -999px;" + + "background-image: url(\"" + (config.blankGif || require.toUrl("./resources/blank.gif")) + "\");"; + win.body().appendChild(div); + + var cs = domStyle.getComputedStyle(div), + bkImg = cs.backgroundImage, + hc = (cs.borderTopColor == cs.borderRightColor) || + (bkImg && (bkImg == "none" || bkImg == "url(invalid-url:)" )); + + if(has("ie") <= 8){ + div.outerHTML = ""; // prevent mixed-content warning, see http://support.microsoft.com/kb/925014 + }else{ + win.body().removeChild(div); + } + + return hc; + }); + + domReady(function(){ + if(has("highcontrast")){ + domClass.add(win.body(), "dj_a11y"); + } + }); + + return has; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/html.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/html.js new file mode 100644 index 00000000..9f14a2d2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/html.js @@ -0,0 +1,162 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/html",["./_base/kernel","./_base/lang","./_base/array","./_base/declare","./dom","./dom-construct","./parser"],function(_1,_2,_3,_4,_5,_6,_7){ +var _8=0; +var _9={_secureForInnerHtml:function(_a){ +return _a.replace(/(?:\s*]+>|]*>[\s\S]*?<\/title>)/ig,""); +},_emptyNode:_6.empty,_setNodeContent:function(_b,_c){ +_6.empty(_b); +if(_c){ +if(typeof _c=="string"){ +_c=_6.toDom(_c,_b.ownerDocument); +} +if(!_c.nodeType&&_2.isArrayLike(_c)){ +for(var _d=_c.length,i=0;i<_c.length;i=_d==_c.length?i+1:0){ +_6.place(_c[i],_b,"last"); +} +}else{ +_6.place(_c,_b,"last"); +} +} +return _b; +},_ContentSetter:_4("dojo.html._ContentSetter",null,{node:"",content:"",id:"",cleanContent:false,extractContent:false,parseContent:false,parserScope:_1._scopeName,startup:true,constructor:function(_e,_f){ +_2.mixin(this,_e||{}); +_f=this.node=_5.byId(this.node||_f); +if(!this.id){ +this.id=["Setter",(_f)?_f.id||_f.tagName:"",_8++].join("_"); +} +},set:function(_10,_11){ +if(undefined!==_10){ +this.content=_10; +} +if(_11){ +this._mixin(_11); +} +this.onBegin(); +this.setContent(); +var ret=this.onEnd(); +if(ret&&ret.then){ +return ret; +}else{ +return this.node; +} +},setContent:function(){ +var _12=this.node; +if(!_12){ +throw new Error(this.declaredClass+": setContent given no node"); +} +try{ +_12=_9._setNodeContent(_12,this.content); +} +catch(e){ +var _13=this.onContentError(e); +try{ +_12.innerHTML=_13; +} +catch(e){ +console.error("Fatal "+this.declaredClass+".setContent could not change content due to "+e.message,e); +} +} +this.node=_12; +},empty:function(){ +if(this.parseDeferred){ +if(!this.parseDeferred.isResolved()){ +this.parseDeferred.cancel(); +} +delete this.parseDeferred; +} +if(this.parseResults&&this.parseResults.length){ +_3.forEach(this.parseResults,function(w){ +if(w.destroy){ +w.destroy(); +} +}); +delete this.parseResults; +} +_6.empty(this.node); +},onBegin:function(){ +var _14=this.content; +if(_2.isString(_14)){ +if(this.cleanContent){ +_14=_9._secureForInnerHtml(_14); +} +if(this.extractContent){ +var _15=_14.match(/]*>\s*([\s\S]+)\s*<\/body>/im); +if(_15){ +_14=_15[1]; +} +} +} +this.empty(); +this.content=_14; +return this.node; +},onEnd:function(){ +if(this.parseContent){ +this._parse(); +} +return this.node; +},tearDown:function(){ +delete this.parseResults; +delete this.parseDeferred; +delete this.node; +delete this.content; +},onContentError:function(err){ +return "Error occurred setting content: "+err; +},onExecError:function(err){ +return "Error occurred executing scripts: "+err; +},_mixin:function(_16){ +var _17={},key; +for(key in _16){ +if(key in _17){ +continue; +} +this[key]=_16[key]; +} +},_parse:function(){ +var _18=this.node; +try{ +var _19={}; +_3.forEach(["dir","lang","textDir"],function(_1a){ +if(this[_1a]){ +_19[_1a]=this[_1a]; +} +},this); +var _1b=this; +this.parseDeferred=_7.parse({rootNode:_18,noStart:!this.startup,inherited:_19,scope:this.parserScope}).then(function(_1c){ +return _1b.parseResults=_1c; +},function(e){ +_1b._onError("Content",e,"Error parsing in _ContentSetter#"+this.id); +}); +} +catch(e){ +this._onError("Content",e,"Error parsing in _ContentSetter#"+this.id); +} +},_onError:function(_1d,err,_1e){ +var _1f=this["on"+_1d+"Error"].call(this,err); +if(_1e){ +console.error(_1e,err); +}else{ +if(_1f){ +_9._setNodeContent(this.node,_1f,true); +} +} +}}),set:function(_20,_21,_22){ +if(undefined==_21){ +console.warn("dojo.html.set: no cont argument provided, using empty string"); +_21=""; +} +if(!_22){ +return _9._setNodeContent(_20,_21,true); +}else{ +var op=new _9._ContentSetter(_2.mixin(_22,{content:_21,node:_20})); +return op.set(); +} +}}; +_2.setObject("dojo.html",_9); +return _9; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/html.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/html.js.uncompressed.js new file mode 100644 index 00000000..543c75c2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/html.js.uncompressed.js @@ -0,0 +1,370 @@ +define("dojo/html", ["./_base/kernel", "./_base/lang", "./_base/array", "./_base/declare", "./dom", "./dom-construct", "./parser"], + function(kernel, lang, darray, declare, dom, domConstruct, parser){ + // module: + // dojo/html + + // the parser might be needed.. + + // idCounter is incremented with each instantiation to allow assignment of a unique id for tracking, logging purposes + var idCounter = 0; + + var html = { + // summary: + // TODOC + + _secureForInnerHtml: function(/*String*/ cont){ + // summary: + // removes !DOCTYPE and title elements from the html string. + // + // khtml is picky about dom faults, you can't attach a style or `` node as child of body + // must go into head, so we need to cut out those tags + // cont: + // An html string for insertion into the dom + // + return cont.replace(/(?:\s*<!DOCTYPE\s[^>]+>|<title[^>]*>[\s\S]*?<\/title>)/ig, ""); // String + }, + + // Deprecated, should use dojo/dom-constuct.empty() directly, remove in 2.0. + _emptyNode: domConstruct.empty, + + _setNodeContent: function(/*DomNode*/ node, /*String|DomNode|NodeList*/ cont){ + // summary: + // inserts the given content into the given node + // node: + // the parent element + // content: + // the content to be set on the parent element. + // This can be an html string, a node reference or a NodeList, dojo/NodeList, Array or other enumerable list of nodes + + // always empty + domConstruct.empty(node); + + if(cont){ + if(typeof cont == "string"){ + cont = domConstruct.toDom(cont, node.ownerDocument); + } + if(!cont.nodeType && lang.isArrayLike(cont)){ + // handle as enumerable, but it may shrink as we enumerate it + for(var startlen=cont.length, i=0; i<cont.length; i=startlen==cont.length ? i+1 : 0){ + domConstruct.place( cont[i], node, "last"); + } + }else{ + // pass nodes, documentFragments and unknowns through to dojo.place + domConstruct.place(cont, node, "last"); + } + } + + // return DomNode + return node; + }, + + // we wrap up the content-setting operation in a object + _ContentSetter: declare("dojo.html._ContentSetter", null, { + // node: DomNode|String + // An node which will be the parent element that we set content into + node: "", + + // content: String|DomNode|DomNode[] + // The content to be placed in the node. Can be an HTML string, a node reference, or a enumerable list of nodes + content: "", + + // id: String? + // Usually only used internally, and auto-generated with each instance + id: "", + + // cleanContent: Boolean + // Should the content be treated as a full html document, + // and the real content stripped of <html>, <body> wrapper before injection + cleanContent: false, + + // extractContent: Boolean + // Should the content be treated as a full html document, + // and the real content stripped of `<html> <body>` wrapper before injection + extractContent: false, + + // parseContent: Boolean + // Should the node by passed to the parser after the new content is set + parseContent: false, + + // parserScope: String + // Flag passed to parser. Root for attribute names to search for. If scopeName is dojo, + // will search for data-dojo-type (or dojoType). For backwards compatibility + // reasons defaults to dojo._scopeName (which is "dojo" except when + // multi-version support is used, when it will be something like dojo16, dojo20, etc.) + parserScope: kernel._scopeName, + + // startup: Boolean + // Start the child widgets after parsing them. Only obeyed if parseContent is true. + startup: true, + + // lifecycle methods + constructor: function(/*Object*/ params, /*String|DomNode*/ node){ + // summary: + // Provides a configurable, extensible object to wrap the setting on content on a node + // call the set() method to actually set the content.. + + // the original params are mixed directly into the instance "this" + lang.mixin(this, params || {}); + + // give precedence to params.node vs. the node argument + // and ensure its a node, not an id string + node = this.node = dom.byId( this.node || node ); + + if(!this.id){ + this.id = [ + "Setter", + (node) ? node.id || node.tagName : "", + idCounter++ + ].join("_"); + } + }, + set: function(/* String|DomNode|NodeList? */ cont, /*Object?*/ params){ + // summary: + // front-end to the set-content sequence + // cont: + // An html string, node or enumerable list of nodes for insertion into the dom + // If not provided, the object's content property will be used + if(undefined !== cont){ + this.content = cont; + } + // in the re-use scenario, set needs to be able to mixin new configuration + if(params){ + this._mixin(params); + } + + this.onBegin(); + this.setContent(); + + var ret = this.onEnd(); + + if(ret && ret.then){ + // Make dojox/html/_ContentSetter.set() return a Promise that resolves when load and parse complete. + return ret; + }else{ + // Vanilla dojo/html._ContentSetter.set() returns a DOMNode for back compat. For 2.0, switch it to + // return a Deferred like above. + return this.node; + } + }, + + setContent: function(){ + // summary: + // sets the content on the node + + var node = this.node; + if(!node){ + // can't proceed + throw new Error(this.declaredClass + ": setContent given no node"); + } + try{ + node = html._setNodeContent(node, this.content); + }catch(e){ + // check if a domfault occurs when we are appending this.errorMessage + // like for instance if domNode is a UL and we try append a DIV + + // FIXME: need to allow the user to provide a content error message string + var errMess = this.onContentError(e); + try{ + node.innerHTML = errMess; + }catch(e){ + console.error('Fatal ' + this.declaredClass + '.setContent could not change content due to '+e.message, e); + } + } + // always put back the node for the next method + this.node = node; // DomNode + }, + + empty: function(){ + // summary: + // cleanly empty out existing content + + // If there is a parse in progress, cancel it. + if(this.parseDeferred){ + if(!this.parseDeferred.isResolved()){ + this.parseDeferred.cancel(); + } + delete this.parseDeferred; + } + + // destroy any widgets from a previous run + // NOTE: if you don't want this you'll need to empty + // the parseResults array property yourself to avoid bad things happening + if(this.parseResults && this.parseResults.length){ + darray.forEach(this.parseResults, function(w){ + if(w.destroy){ + w.destroy(); + } + }); + delete this.parseResults; + } + // this is fast, but if you know its already empty or safe, you could + // override empty to skip this step + domConstruct.empty(this.node); + }, + + onBegin: function(){ + // summary: + // Called after instantiation, but before set(); + // It allows modification of any of the object properties - + // including the node and content provided - before the set operation actually takes place + // This default implementation checks for cleanContent and extractContent flags to + // optionally pre-process html string content + var cont = this.content; + + if(lang.isString(cont)){ + if(this.cleanContent){ + cont = html._secureForInnerHtml(cont); + } + + if(this.extractContent){ + var match = cont.match(/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im); + if(match){ cont = match[1]; } + } + } + + // clean out the node and any cruft associated with it - like widgets + this.empty(); + + this.content = cont; + return this.node; // DomNode + }, + + onEnd: function(){ + // summary: + // Called after set(), when the new content has been pushed into the node + // It provides an opportunity for post-processing before handing back the node to the caller + // This default implementation checks a parseContent flag to optionally run the dojo parser over the new content + if(this.parseContent){ + // populates this.parseResults and this.parseDeferred if you need those.. + this._parse(); + } + return this.node; // DomNode + // TODO: for 2.0 return a Promise indicating that the parse completed. + }, + + tearDown: function(){ + // summary: + // manually reset the Setter instance if its being re-used for example for another set() + // description: + // tearDown() is not called automatically. + // In normal use, the Setter instance properties are simply allowed to fall out of scope + // but the tearDown method can be called to explicitly reset this instance. + delete this.parseResults; + delete this.parseDeferred; + delete this.node; + delete this.content; + }, + + onContentError: function(err){ + return "Error occurred setting content: " + err; + }, + + onExecError: function(err){ + return "Error occurred executing scripts: " + err; + }, + + _mixin: function(params){ + // mix properties/methods into the instance + // TODO: the intention with tearDown is to put the Setter's state + // back to that of the original constructor (vs. deleting/resetting everything regardless of ctor params) + // so we could do something here to move the original properties aside for later restoration + var empty = {}, key; + for(key in params){ + if(key in empty){ continue; } + // TODO: here's our opportunity to mask the properties we don't consider configurable/overridable + // .. but history shows we'll almost always guess wrong + this[key] = params[key]; + } + }, + _parse: function(){ + // summary: + // runs the dojo parser over the node contents, storing any results in this.parseResults + // and the parse promise in this.parseDeferred + // Any errors resulting from parsing are passed to _onError for handling + + var rootNode = this.node; + try{ + // store the results (widgets, whatever) for potential retrieval + var inherited = {}; + darray.forEach(["dir", "lang", "textDir"], function(name){ + if(this[name]){ + inherited[name] = this[name]; + } + }, this); + var self = this; + this.parseDeferred = parser.parse({ + rootNode: rootNode, + noStart: !this.startup, + inherited: inherited, + scope: this.parserScope + }).then(function(results){ + return self.parseResults = results; + }, function(e){ + self._onError('Content', e, "Error parsing in _ContentSetter#" + this.id); + }); + }catch(e){ + this._onError('Content', e, "Error parsing in _ContentSetter#" + this.id); + } + }, + + _onError: function(type, err, consoleText){ + // summary: + // shows user the string that is returned by on[type]Error + // override/implement on[type]Error and return your own string to customize + var errText = this['on' + type + 'Error'].call(this, err); + if(consoleText){ + console.error(consoleText, err); + }else if(errText){ // a empty string won't change current content + html._setNodeContent(this.node, errText, true); + } + } + }), // end declare() + + set: function(/*DomNode*/ node, /*String|DomNode|NodeList*/ cont, /*Object?*/ params){ + // summary: + // inserts (replaces) the given content into the given node. dojo/dom-construct.place(cont, node, "only") + // may be a better choice for simple HTML insertion. + // description: + // Unless you need to use the params capabilities of this method, you should use + // dojo/dom-construct.place(cont, node, "only"). dojo/dom-construct..place() has more robust support for injecting + // an HTML string into the DOM, but it only handles inserting an HTML string as DOM + // elements, or inserting a DOM node. dojo/dom-construct..place does not handle NodeList insertions + // dojo/dom-construct.place(cont, node, "only"). dojo/dom-construct.place() has more robust support for injecting + // an HTML string into the DOM, but it only handles inserting an HTML string as DOM + // elements, or inserting a DOM node. dojo/dom-construct.place does not handle NodeList insertions + // or the other capabilities as defined by the params object for this method. + // node: + // the parent element that will receive the content + // cont: + // the content to be set on the parent element. + // This can be an html string, a node reference or a NodeList, dojo/NodeList, Array or other enumerable list of nodes + // params: + // Optional flags/properties to configure the content-setting. See dojo/html/_ContentSetter + // example: + // A safe string/node/nodelist content replacement/injection with hooks for extension + // Example Usage: + // | html.set(node, "some string"); + // | html.set(node, contentNode, {options}); + // | html.set(node, myNode.childNodes, {options}); + if(undefined == cont){ + console.warn("dojo.html.set: no cont argument provided, using empty string"); + cont = ""; + } + if(!params){ + // simple and fast + return html._setNodeContent(node, cont, true); + }else{ + // more options but slower + // note the arguments are reversed in order, to match the convention for instantiation via the parser + var op = new html._ContentSetter(lang.mixin( + params, + { content: cont, node: node } + )); + return op.set(); + } + } + }; + lang.setObject("dojo.html", html); + + return html; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/i18n.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/i18n.js new file mode 100644 index 00000000..9cdc73da --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/i18n.js @@ -0,0 +1,279 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/i18n",["./_base/kernel","require","./has","./_base/array","./_base/config","./_base/lang","./_base/xhr","./json","module"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9){ +_3.add("dojo-preload-i18n-Api",1); +1||_3.add("dojo-v1x-i18n-Api",1); +var _a=_1.i18n={},_b=/(^.*(^|\/)nls)(\/|$)([^\/]*)\/?([^\/]*)/,_c=function(_d,_e,_f,_10){ +for(var _11=[_f+_10],_12=_e.split("-"),_13="",i=0;i<_12.length;i++){ +_13+=(_13?"-":"")+_12[i]; +if(!_d||_d[_13]){ +_11.push(_f+_13+"/"+_10); +_11.specificity=_13; +} +} +return _11; +},_14={},_15=function(_16,_17,_18){ +_18=_18?_18.toLowerCase():_1.locale; +_16=_16.replace(/\./g,"/"); +_17=_17.replace(/\./g,"/"); +return (/root/i.test(_18))?(_16+"/nls/"+_17):(_16+"/nls/"+_18+"/"+_17); +},_19=_1.getL10nName=function(_1a,_1b,_1c){ +return _1a=_9.id+"!"+_15(_1a,_1b,_1c); +},_1d=function(_1e,_1f,_20,_21,_22,_23){ +_1e([_1f],function(_24){ +var _25=_6.clone(_24.root||_24.ROOT),_26=_c(!_24._v1x&&_24,_22,_20,_21); +_1e(_26,function(){ +for(var i=1;i<_26.length;i++){ +_25=_6.mixin(_6.clone(_25),arguments[i]); +} +var _27=_1f+"/"+_22; +_14[_27]=_25; +_25.$locale=_26.specificity; +_23(); +}); +}); +},_28=function(id,_29){ +return /^\./.test(id)?_29(id):id; +},_2a=function(_2b){ +var _2c=_5.extraLocale||[]; +_2c=_6.isArray(_2c)?_2c:[_2c]; +_2c.push(_2b); +return _2c; +},_2d=function(id,_2e,_2f){ +if(_3("dojo-preload-i18n-Api")){ +var _30=id.split("*"),_31=_30[1]=="preload"; +if(_31){ +if(!_14[id]){ +_14[id]=1; +_32(_30[2],_8.parse(_30[3]),1,_2e); +} +_2f(1); +} +if(_31||_33(id,_2e,_2f)){ +return; +} +} +var _34=_b.exec(id),_35=_34[1]+"/",_36=_34[5]||_34[4],_37=_35+_36,_38=(_34[5]&&_34[4]),_39=_38||_1.locale||"",_3a=_37+"/"+_39,_3b=_38?[_39]:_2a(_39),_3c=_3b.length,_3d=function(){ +if(!--_3c){ +_2f(_6.delegate(_14[_3a])); +} +}; +_4.forEach(_3b,function(_3e){ +var _3f=_37+"/"+_3e; +if(_3("dojo-preload-i18n-Api")){ +_40(_3f); +} +if(!_14[_3f]){ +_1d(_2e,_37,_35,_36,_3e,_3d); +}else{ +_3d(); +} +}); +}; +if(_3("dojo-unit-tests")){ +var _41=_a.unitTests=[]; +} +if(_3("dojo-preload-i18n-Api")||1){ +var _42=_a.normalizeLocale=function(_43){ +var _44=_43?_43.toLowerCase():_1.locale; +return _44=="root"?"ROOT":_44; +},_45=function(mid,_46){ +return (1&&1)?_46.isXdUrl(_2.toUrl(mid+".js")):true; +},_47=0,_48=[],_32=_a._preloadLocalizations=function(_49,_4a,_4b,_4c){ +_4c=_4c||_2; +function _4d(mid,_4e){ +if(_45(mid,_4c)||_4b){ +_4c([mid],_4e); +}else{ +_6d([mid],_4e,_4c); +} +}; +function _4f(_50,_51){ +var _52=_50.split("-"); +while(_52.length){ +if(_51(_52.join("-"))){ +return; +} +_52.pop(); +} +_51("ROOT"); +}; +function _53(){ +_47++; +}; +function _54(){ +--_47; +while(!_47&&_48.length){ +_2d.apply(null,_48.shift()); +} +}; +function _55(_56,_57,loc,_58){ +return _58.toAbsMid(_56+_57+"/"+loc); +}; +function _59(_5a){ +_5a=_42(_5a); +_4f(_5a,function(loc){ +if(_4.indexOf(_4a,loc)>=0){ +var mid=_49.replace(/\./g,"/")+"_"+loc; +_53(); +_4d(mid,function(_5b){ +for(var p in _5b){ +var _5c=_5b[p],_5d=p.match(/(.+)\/([^\/]+)$/),_5e,_5f; +if(!_5d){ +continue; +} +_5e=_5d[2]; +_5f=_5d[1]+"/"; +_5c._localized=_5c._localized||{}; +var _60; +if(loc==="ROOT"){ +var _61=_60=_5c._localized; +delete _5c._localized; +_61.root=_5c; +_14[_2.toAbsMid(p)]=_61; +}else{ +_60=_5c._localized; +_14[_55(_5f,_5e,loc,_2)]=_5c; +} +if(loc!==_5a){ +function _62(_63,_64,_65,_66){ +var _67=[],_68=[]; +_4f(_5a,function(loc){ +if(_66[loc]){ +_67.push(_2.toAbsMid(_63+loc+"/"+_64)); +_68.push(_55(_63,_64,loc,_2)); +} +}); +if(_67.length){ +_53(); +_4c(_67,function(){ +for(var i=0;i<_67.length;i++){ +_65=_6.mixin(_6.clone(_65),arguments[i]); +_14[_68[i]]=_65; +} +_14[_55(_63,_64,_5a,_2)]=_6.clone(_65); +_54(); +}); +}else{ +_14[_55(_63,_64,_5a,_2)]=_65; +} +}; +_62(_5f,_5e,_5c,_60); +} +} +_54(); +}); +return true; +} +return false; +}); +}; +_59(); +_4.forEach(_1.config.extraLocale,_59); +},_33=function(id,_69,_6a){ +if(_47){ +_48.push([id,_69,_6a]); +} +return _47; +},_40=function(){ +}; +} +if(1){ +var _6b={},_6c=new Function("__bundle","__checkForLegacyModules","__mid","__amdValue","var define = function(mid, factory){define.called = 1; __amdValue.result = factory || mid;},"+"\t require = function(){define.called = 1;};"+"try{"+"define.called = 0;"+"eval(__bundle);"+"if(define.called==1)"+"return __amdValue;"+"if((__checkForLegacyModules = __checkForLegacyModules(__mid)))"+"return __checkForLegacyModules;"+"}catch(e){}"+"try{"+"return eval('('+__bundle+')');"+"}catch(e){"+"return e;"+"}"),_6d=function(_6e,_6f,_70){ +var _71=[]; +_4.forEach(_6e,function(mid){ +var url=_70.toUrl(mid+".js"); +function _2d(_72){ +var _73=_6c(_72,_40,mid,_6b); +if(_73===_6b){ +_71.push(_14[url]=_6b.result); +}else{ +if(_73 instanceof Error){ +console.error("failed to evaluate i18n bundle; url="+url,_73); +_73={}; +} +_71.push(_14[url]=(/nls\/[^\/]+\/[^\/]+$/.test(url)?_73:{root:_73,_v1x:1})); +} +}; +if(_14[url]){ +_71.push(_14[url]); +}else{ +var _74=_70.syncLoadNls(mid); +if(_74){ +_71.push(_74); +}else{ +if(!_7){ +try{ +_70.getText(url,true,_2d); +} +catch(e){ +_71.push(_14[url]={}); +} +}else{ +_7.get({url:url,sync:true,load:_2d,error:function(){ +_71.push(_14[url]={}); +}}); +} +} +} +}); +_6f&&_6f.apply(null,_71); +}; +_40=function(_75){ +for(var _76,_77=_75.split("/"),_78=_1.global[_77[0]],i=1;_78&&i<_77.length-1;_78=_78[_77[i++]]){ +} +if(_78){ +_76=_78[_77[i]]; +if(!_76){ +_76=_78[_77[i].replace(/-/g,"_")]; +} +if(_76){ +_14[_75]=_76; +} +} +return _76; +}; +_a.getLocalization=function(_79,_7a,_7b){ +var _7c,_7d=_15(_79,_7a,_7b); +_2d(_7d,(!_45(_7d,_2)?function(_7e,_7f){ +_6d(_7e,_7f,_2); +}:_2),function(_80){ +_7c=_80; +}); +return _7c; +}; +if(_3("dojo-unit-tests")){ +_41.push(function(doh){ +doh.register("tests.i18n.unit",function(t){ +var _81; +_81=_6c("{prop:1}",_40,"nonsense",_6b); +t.is({prop:1},_81); +t.is(undefined,_81[1]); +_81=_6c("({prop:1})",_40,"nonsense",_6b); +t.is({prop:1},_81); +t.is(undefined,_81[1]); +_81=_6c("{'prop-x':1}",_40,"nonsense",_6b); +t.is({"prop-x":1},_81); +t.is(undefined,_81[1]); +_81=_6c("({'prop-x':1})",_40,"nonsense",_6b); +t.is({"prop-x":1},_81); +t.is(undefined,_81[1]); +_81=_6c("define({'prop-x':1})",_40,"nonsense",_6b); +t.is(_6b,_81); +t.is({"prop-x":1},_6b.result); +_81=_6c("define('some/module', {'prop-x':1})",_40,"nonsense",_6b); +t.is(_6b,_81); +t.is({"prop-x":1},_6b.result); +_81=_6c("this is total nonsense and should throw an error",_40,"nonsense",_6b); +t.is(_81 instanceof Error,true); +}); +}); +} +} +return _6.mixin(_a,{dynamic:true,normalize:_28,load:_2d,cache:_14,getL10nName:_19}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/i18n.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/i18n.js.uncompressed.js new file mode 100644 index 00000000..7c874fd0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/i18n.js.uncompressed.js @@ -0,0 +1,636 @@ +define("dojo/i18n", ["./_base/kernel", "require", "./has", "./_base/array", "./_base/config", "./_base/lang", "./_base/xhr", "./json", "module"], + function(dojo, require, has, array, config, lang, xhr, json, module){ + + // module: + // dojo/i18n + + has.add("dojo-preload-i18n-Api", + // if true, define the preload localizations machinery + 1 + ); + + 1 || has.add("dojo-v1x-i18n-Api", + // if true, define the v1.x i18n functions + 1 + ); + + var + thisModule = dojo.i18n = + { + // summary: + // This module implements the dojo/i18n! plugin and the v1.6- i18n API + // description: + // We choose to include our own plugin to leverage functionality already contained in dojo + // and thereby reduce the size of the plugin compared to various loader implementations. Also, this + // allows foreign AMD loaders to be used without their plugins. + }, + + nlsRe = + // regexp for reconstructing the master bundle name from parts of the regexp match + // nlsRe.exec("foo/bar/baz/nls/en-ca/foo") gives: + // ["foo/bar/baz/nls/en-ca/foo", "foo/bar/baz/nls/", "/", "/", "en-ca", "foo"] + // nlsRe.exec("foo/bar/baz/nls/foo") gives: + // ["foo/bar/baz/nls/foo", "foo/bar/baz/nls/", "/", "/", "foo", ""] + // so, if match[5] is blank, it means this is the top bundle definition. + // courtesy of http://requirejs.org + /(^.*(^|\/)nls)(\/|$)([^\/]*)\/?([^\/]*)/, + + getAvailableLocales = function( + root, + locale, + bundlePath, + bundleName + ){ + // summary: + // return a vector of module ids containing all available locales with respect to the target locale + // For example, assuming: + // + // - the root bundle indicates specific bundles for "fr" and "fr-ca", + // - bundlePath is "myPackage/nls" + // - bundleName is "myBundle" + // + // Then a locale argument of "fr-ca" would return + // + // ["myPackage/nls/myBundle", "myPackage/nls/fr/myBundle", "myPackage/nls/fr-ca/myBundle"] + // + // Notice that bundles are returned least-specific to most-specific, starting with the root. + // + // If root===false indicates we're working with a pre-AMD i18n bundle that doesn't tell about the available locales; + // therefore, assume everything is available and get 404 errors that indicate a particular localization is not available + + for(var result = [bundlePath + bundleName], localeParts = locale.split("-"), current = "", i = 0; i<localeParts.length; i++){ + current += (current ? "-" : "") + localeParts[i]; + if(!root || root[current]){ + result.push(bundlePath + current + "/" + bundleName); + result.specificity = current; + } + } + return result; + }, + + cache = {}, + + getBundleName = function(moduleName, bundleName, locale){ + locale = locale ? locale.toLowerCase() : dojo.locale; + moduleName = moduleName.replace(/\./g, "/"); + bundleName = bundleName.replace(/\./g, "/"); + return (/root/i.test(locale)) ? + (moduleName + "/nls/" + bundleName) : + (moduleName + "/nls/" + locale + "/" + bundleName); + }, + + getL10nName = dojo.getL10nName = function(moduleName, bundleName, locale){ + return moduleName = module.id + "!" + getBundleName(moduleName, bundleName, locale); + }, + + doLoad = function(require, bundlePathAndName, bundlePath, bundleName, locale, load){ + // summary: + // get the root bundle which instructs which other bundles are required to construct the localized bundle + require([bundlePathAndName], function(root){ + var current = lang.clone(root.root || root.ROOT),// 1.6 built bundle defined ROOT + availableLocales = getAvailableLocales(!root._v1x && root, locale, bundlePath, bundleName); + require(availableLocales, function(){ + for (var i = 1; i<availableLocales.length; i++){ + current = lang.mixin(lang.clone(current), arguments[i]); + } + // target may not have been resolve (e.g., maybe only "fr" exists when "fr-ca" was requested) + var target = bundlePathAndName + "/" + locale; + cache[target] = current; + current.$locale = availableLocales.specificity; + load(); + }); + }); + }, + + normalize = function(id, toAbsMid){ + // summary: + // id may be relative. + // preload has form `*preload*<path>/nls/<module>*<flattened locales>` and + // therefore never looks like a relative + return /^\./.test(id) ? toAbsMid(id) : id; + }, + + getLocalesToLoad = function(targetLocale){ + var list = config.extraLocale || []; + list = lang.isArray(list) ? list : [list]; + list.push(targetLocale); + return list; + }, + + load = function(id, require, load){ + // summary: + // id is in one of the following formats + // + // 1. <path>/nls/<bundle> + // => load the bundle, localized to config.locale; load all bundles localized to + // config.extraLocale (if any); return the loaded bundle localized to config.locale. + // + // 2. <path>/nls/<locale>/<bundle> + // => load then return the bundle localized to <locale> + // + // 3. *preload*<path>/nls/<module>*<JSON array of available locales> + // => for config.locale and all config.extraLocale, load all bundles found + // in the best-matching bundle rollup. A value of 1 is returned, which + // is meaningless other than to say the plugin is executing the requested + // preloads + // + // In cases 1 and 2, <path> is always normalized to an absolute module id upon entry; see + // normalize. In case 3, it <path> is assumed to be absolute; this is arranged by the builder. + // + // To load a bundle means to insert the bundle into the plugin's cache and publish the bundle + // value to the loader. Given <path>, <bundle>, and a particular <locale>, the cache key + // + // <path>/nls/<bundle>/<locale> + // + // will hold the value. Similarly, then plugin will publish this value to the loader by + // + // define("<path>/nls/<bundle>/<locale>", <bundle-value>); + // + // Given this algorithm, other machinery can provide fast load paths be preplacing + // values in the plugin's cache, which is public. When a load is demanded the + // cache is inspected before starting any loading. Explicitly placing values in the plugin + // cache is an advanced/experimental feature that should not be needed; use at your own risk. + // + // For the normal AMD algorithm, the root bundle is loaded first, which instructs the + // plugin what additional localized bundles are required for a particular locale. These + // additional locales are loaded and a mix of the root and each progressively-specific + // locale is returned. For example: + // + // 1. The client demands "dojo/i18n!some/path/nls/someBundle + // + // 2. The loader demands load(some/path/nls/someBundle) + // + // 3. This plugin require's "some/path/nls/someBundle", which is the root bundle. + // + // 4. Assuming config.locale is "ab-cd-ef" and the root bundle indicates that localizations + // are available for "ab" and "ab-cd-ef" (note the missing "ab-cd", then the plugin + // requires "some/path/nls/ab/someBundle" and "some/path/nls/ab-cd-ef/someBundle" + // + // 5. Upon receiving all required bundles, the plugin constructs the value of the bundle + // ab-cd-ef as... + // + // mixin(mixin(mixin({}, require("some/path/nls/someBundle"), + // require("some/path/nls/ab/someBundle")), + // require("some/path/nls/ab-cd-ef/someBundle")); + // + // This value is inserted into the cache and published to the loader at the + // key/module-id some/path/nls/someBundle/ab-cd-ef. + // + // The special preload signature (case 3) instructs the plugin to stop servicing all normal requests + // (further preload requests will be serviced) until all ongoing preloading has completed. + // + // The preload signature instructs the plugin that a special rollup module is available that contains + // one or more flattened, localized bundles. The JSON array of available locales indicates which locales + // are available. Here is an example: + // + // *preload*some/path/nls/someModule*["root", "ab", "ab-cd-ef"] + // + // This indicates the following rollup modules are available: + // + // some/path/nls/someModule_ROOT + // some/path/nls/someModule_ab + // some/path/nls/someModule_ab-cd-ef + // + // Each of these modules is a normal AMD module that contains one or more flattened bundles in a hash. + // For example, assume someModule contained the bundles some/bundle/path/someBundle and + // some/bundle/path/someOtherBundle, then some/path/nls/someModule_ab would be expressed as follows: + // + // define({ + // some/bundle/path/someBundle:<value of someBundle, flattened with respect to locale ab>, + // some/bundle/path/someOtherBundle:<value of someOtherBundle, flattened with respect to locale ab>, + // }); + // + // E.g., given this design, preloading for locale=="ab" can execute the following algorithm: + // + // require(["some/path/nls/someModule_ab"], function(rollup){ + // for(var p in rollup){ + // var id = p + "/ab", + // cache[id] = rollup[p]; + // define(id, rollup[p]); + // } + // }); + // + // Similarly, if "ab-cd" is requested, the algorithm can determine that "ab" is the best available and + // load accordingly. + // + // The builder will write such rollups for every layer if a non-empty localeList profile property is + // provided. Further, the builder will include the following cache entry in the cache associated with + // any layer. + // + // "*now":function(r){r(['dojo/i18n!*preload*<path>/nls/<module>*<JSON array of available locales>']);} + // + // The *now special cache module instructs the loader to apply the provided function to context-require + // with respect to the particular layer being defined. This causes the plugin to hold all normal service + // requests until all preloading is complete. + // + // Notice that this algorithm is rarely better than the standard AMD load algorithm. Consider the normal case + // where the target locale has a single segment and a layer depends on a single bundle: + // + // Without Preloads: + // + // 1. Layer loads root bundle. + // 2. bundle is demanded; plugin loads single localized bundle. + // + // With Preloads: + // + // 1. Layer causes preloading of target bundle. + // 2. bundle is demanded; service is delayed until preloading complete; bundle is returned. + // + // In each case a single transaction is required to load the target bundle. In cases where multiple bundles + // are required and/or the locale has multiple segments, preloads still requires a single transaction whereas + // the normal path requires an additional transaction for each additional bundle/locale-segment. However all + // of these additional transactions can be done concurrently. Owing to this analysis, the entire preloading + // algorithm can be discard during a build by setting the has feature dojo-preload-i18n-Api to false. + + if(has("dojo-preload-i18n-Api")){ + var split = id.split("*"), + preloadDemand = split[1] == "preload"; + if(preloadDemand){ + if(!cache[id]){ + // use cache[id] to prevent multiple preloads of the same preload; this shouldn't happen, but + // who knows what over-aggressive human optimizers may attempt + cache[id] = 1; + preloadL10n(split[2], json.parse(split[3]), 1, require); + } + // don't stall the loader! + load(1); + } + if(preloadDemand || waitForPreloads(id, require, load)){ + return; + } + } + + var match = nlsRe.exec(id), + bundlePath = match[1] + "/", + bundleName = match[5] || match[4], + bundlePathAndName = bundlePath + bundleName, + localeSpecified = (match[5] && match[4]), + targetLocale = localeSpecified || dojo.locale || "", + loadTarget = bundlePathAndName + "/" + targetLocale, + loadList = localeSpecified ? [targetLocale] : getLocalesToLoad(targetLocale), + remaining = loadList.length, + finish = function(){ + if(!--remaining){ + load(lang.delegate(cache[loadTarget])); + } + }; + array.forEach(loadList, function(locale){ + var target = bundlePathAndName + "/" + locale; + if(has("dojo-preload-i18n-Api")){ + checkForLegacyModules(target); + } + if(!cache[target]){ + doLoad(require, bundlePathAndName, bundlePath, bundleName, locale, finish); + }else{ + finish(); + } + }); + }; + + if(has("dojo-unit-tests")){ + var unitTests = thisModule.unitTests = []; + } + + if(has("dojo-preload-i18n-Api") || 1 ){ + var normalizeLocale = thisModule.normalizeLocale = function(locale){ + var result = locale ? locale.toLowerCase() : dojo.locale; + return result == "root" ? "ROOT" : result; + }, + + isXd = function(mid, contextRequire){ + return ( 1 && 1 ) ? + contextRequire.isXdUrl(require.toUrl(mid + ".js")) : + true; + }, + + preloading = 0, + + preloadWaitQueue = [], + + preloadL10n = thisModule._preloadLocalizations = function(/*String*/bundlePrefix, /*Array*/localesGenerated, /*boolean?*/ guaranteedAmdFormat, /*function?*/ contextRequire){ + // summary: + // Load available flattened resource bundles associated with a particular module for dojo/locale and all dojo/config.extraLocale (if any) + // description: + // Only called by built layer files. The entire locale hierarchy is loaded. For example, + // if locale=="ab-cd", then ROOT, "ab", and "ab-cd" are loaded. This is different than v1.6- + // in that the v1.6- would only load ab-cd...which was *always* flattened. + // + // If guaranteedAmdFormat is true, then the module can be loaded with require thereby circumventing the detection algorithm + // and the extra possible extra transaction. + + // If this function is called from legacy code, then guaranteedAmdFormat and contextRequire will be undefined. Since the function + // needs a require in order to resolve module ids, fall back to the context-require associated with this dojo/i18n module, which + // itself may have been mapped. + contextRequire = contextRequire || require; + + function doRequire(mid, callback){ + if(isXd(mid, contextRequire) || guaranteedAmdFormat){ + contextRequire([mid], callback); + }else{ + syncRequire([mid], callback, contextRequire); + } + } + + function forEachLocale(locale, func){ + // given locale= "ab-cd-ef", calls func on "ab-cd-ef", "ab-cd", "ab", "ROOT"; stops calling the first time func returns truthy + var parts = locale.split("-"); + while(parts.length){ + if(func(parts.join("-"))){ + return; + } + parts.pop(); + } + func("ROOT"); + } + + function preloadingAddLock(){ + preloading++; + } + + function preloadingRelLock(){ + --preloading; + while(!preloading && preloadWaitQueue.length){ + load.apply(null, preloadWaitQueue.shift()); + } + } + + function cacheId(path, name, loc, require){ + // path is assumed to have a trailing "/" + return require.toAbsMid(path + name + "/" + loc) + } + + function preload(locale){ + locale = normalizeLocale(locale); + forEachLocale(locale, function(loc){ + if(array.indexOf(localesGenerated, loc) >= 0){ + var mid = bundlePrefix.replace(/\./g, "/") + "_" + loc; + preloadingAddLock(); + doRequire(mid, function(rollup){ + for(var p in rollup){ + var bundle = rollup[p], + match = p.match(/(.+)\/([^\/]+)$/), + bundleName, bundlePath; + + // If there is no match, the bundle is not a regular bundle from an AMD layer. + if (!match){continue;} + + bundleName = match[2]; + bundlePath = match[1] + "/"; + + // backcompat + bundle._localized = bundle._localized || {}; + + var localized; + if(loc === "ROOT"){ + var root = localized = bundle._localized; + delete bundle._localized; + root.root = bundle; + cache[require.toAbsMid(p)] = root; + }else{ + localized = bundle._localized; + cache[cacheId(bundlePath, bundleName, loc, require)] = bundle; + } + + if(loc !== locale){ + // capture some locale variables + function improveBundle(bundlePath, bundleName, bundle, localized){ + // locale was not flattened and we've fallen back to a less-specific locale that was flattened + // for example, we had a flattened 'fr', a 'fr-ca' is available for at least this bundle, and + // locale==='fr-ca'; therefore, we must improve the bundle as retrieved from the rollup by + // manually loading the fr-ca version of the bundle and mixing this into the already-retrieved 'fr' + // version of the bundle. + // + // Remember, different bundles may have different sets of locales available. + // + // we are really falling back on the regular algorithm here, but--hopefully--starting with most + // of the required bundles already on board as given by the rollup and we need to "manually" load + // only one locale from a few bundles...or even better...we won't find anything better to load. + // This algorithm ensures there is nothing better to load even when we can only load a less-specific rollup. + // + // note: this feature is only available in async mode + + // inspect the loaded bundle that came from the rollup to see if something better is available + // for any bundle in a rollup, more-specific available locales are given at localized. + var requiredBundles = [], + cacheIds = []; + forEachLocale(locale, function(loc){ + if(localized[loc]){ + requiredBundles.push(require.toAbsMid(bundlePath + loc + "/" + bundleName)); + cacheIds.push(cacheId(bundlePath, bundleName, loc, require)); + } + }); + + if(requiredBundles.length){ + preloadingAddLock(); + contextRequire(requiredBundles, function(){ + for(var i = 0; i < requiredBundles.length; i++){ + bundle = lang.mixin(lang.clone(bundle), arguments[i]); + cache[cacheIds[i]] = bundle; + } + // this is the best possible (maybe a perfect match, maybe not), accept it + cache[cacheId(bundlePath, bundleName, locale, require)] = lang.clone(bundle); + preloadingRelLock(); + }); + }else{ + // this is the best possible (definitely not a perfect match), accept it + cache[cacheId(bundlePath, bundleName, locale, require)] = bundle; + } + } + improveBundle(bundlePath, bundleName, bundle, localized); + } + } + preloadingRelLock(); + }); + return true; + } + return false; + }); + } + + preload(); + array.forEach(dojo.config.extraLocale, preload); + }, + + waitForPreloads = function(id, require, load){ + if(preloading){ + preloadWaitQueue.push([id, require, load]); + } + return preloading; + }, + + checkForLegacyModules = function() + {}; + } + + if( 1 ){ + // this code path assumes the dojo loader and won't work with a standard AMD loader + var amdValue = {}, + evalBundle = + // use the function ctor to keep the minifiers away (also come close to global scope, but this is secondary) + new Function( + "__bundle", // the bundle to evalutate + "__checkForLegacyModules", // a function that checks if __bundle defined __mid in the global space + "__mid", // the mid that __bundle is intended to define + "__amdValue", + + // returns one of: + // 1 => the bundle was an AMD bundle + // a legacy bundle object that is the value of __mid + // instance of Error => could not figure out how to evaluate bundle + + // used to detect when __bundle calls define + "var define = function(mid, factory){define.called = 1; __amdValue.result = factory || mid;}," + + " require = function(){define.called = 1;};" + + + "try{" + + "define.called = 0;" + + "eval(__bundle);" + + "if(define.called==1)" + // bundle called define; therefore signal it's an AMD bundle + + "return __amdValue;" + + + "if((__checkForLegacyModules = __checkForLegacyModules(__mid)))" + // bundle was probably a v1.6- built NLS flattened NLS bundle that defined __mid in the global space + + "return __checkForLegacyModules;" + + + "}catch(e){}" + // evaulating the bundle was *neither* an AMD *nor* a legacy flattened bundle + // either way, re-eval *after* surrounding with parentheses + + + "try{" + + "return eval('('+__bundle+')');" + + "}catch(e){" + + "return e;" + + "}" + ), + + syncRequire = function(deps, callback, require){ + var results = []; + array.forEach(deps, function(mid){ + var url = require.toUrl(mid + ".js"); + + function load(text){ + var result = evalBundle(text, checkForLegacyModules, mid, amdValue); + if(result===amdValue){ + // the bundle was an AMD module; re-inject it through the normal AMD path + // we gotta do this since it could be an anonymous module and simply evaluating + // the text here won't provide the loader with the context to know what + // module is being defined()'d. With browser caching, this should be free; further + // this entire code path can be circumvented by using the AMD format to begin with + results.push(cache[url] = amdValue.result); + }else{ + if(result instanceof Error){ + console.error("failed to evaluate i18n bundle; url=" + url, result); + result = {}; + } + // nls/<locale>/<bundle-name> indicates not the root. + results.push(cache[url] = (/nls\/[^\/]+\/[^\/]+$/.test(url) ? result : {root:result, _v1x:1})); + } + } + + if(cache[url]){ + results.push(cache[url]); + }else{ + var bundle = require.syncLoadNls(mid); + // don't need to check for legacy since syncLoadNls returns a module if the module + // (1) was already loaded, or (2) was in the cache. In case 1, if syncRequire is called + // from getLocalization --> load, then load will have called checkForLegacyModules() before + // calling syncRequire; if syncRequire is called from preloadLocalizations, then we + // don't care about checkForLegacyModules() because that will be done when a particular + // bundle is actually demanded. In case 2, checkForLegacyModules() is never relevant + // because cached modules are always v1.7+ built modules. + if(bundle){ + results.push(bundle); + }else{ + if(!xhr){ + try{ + require.getText(url, true, load); + }catch(e){ + results.push(cache[url] = {}); + } + }else{ + xhr.get({ + url:url, + sync:true, + load:load, + error:function(){ + results.push(cache[url] = {}); + } + }); + } + } + } + }); + callback && callback.apply(null, results); + }; + + checkForLegacyModules = function(target){ + // legacy code may have already loaded [e.g] the raw bundle x/y/z at x.y.z; when true, push into the cache + for(var result, names = target.split("/"), object = dojo.global[names[0]], i = 1; object && i<names.length-1; object = object[names[i++]]){} + if(object){ + result = object[names[i]]; + if(!result){ + // fallback for incorrect bundle build of 1.6 + result = object[names[i].replace(/-/g,"_")]; + } + if(result){ + cache[target] = result; + } + } + return result; + }; + + thisModule.getLocalization = function(moduleName, bundleName, locale){ + var result, + l10nName = getBundleName(moduleName, bundleName, locale); + load( + l10nName, + + // isXd() and syncRequire() need a context-require in order to resolve the mid with respect to a reference module. + // Since this legacy function does not have the concept of a reference module, resolve with respect to this + // dojo/i18n module, which, itself may have been mapped. + (!isXd(l10nName, require) ? function(deps, callback){ syncRequire(deps, callback, require); } : require), + + function(result_){ result = result_; } + ); + return result; + }; + + if(has("dojo-unit-tests")){ + unitTests.push(function(doh){ + doh.register("tests.i18n.unit", function(t){ + var check; + + check = evalBundle("{prop:1}", checkForLegacyModules, "nonsense", amdValue); + t.is({prop:1}, check); t.is(undefined, check[1]); + + check = evalBundle("({prop:1})", checkForLegacyModules, "nonsense", amdValue); + t.is({prop:1}, check); t.is(undefined, check[1]); + + check = evalBundle("{'prop-x':1}", checkForLegacyModules, "nonsense", amdValue); + t.is({'prop-x':1}, check); t.is(undefined, check[1]); + + check = evalBundle("({'prop-x':1})", checkForLegacyModules, "nonsense", amdValue); + t.is({'prop-x':1}, check); t.is(undefined, check[1]); + + check = evalBundle("define({'prop-x':1})", checkForLegacyModules, "nonsense", amdValue); + t.is(amdValue, check); t.is({'prop-x':1}, amdValue.result); + + check = evalBundle("define('some/module', {'prop-x':1})", checkForLegacyModules, "nonsense", amdValue); + t.is(amdValue, check); t.is({'prop-x':1}, amdValue.result); + + check = evalBundle("this is total nonsense and should throw an error", checkForLegacyModules, "nonsense", amdValue); + t.is(check instanceof Error, true); + }); + }); + } + } + + return lang.mixin(thisModule, { + dynamic:true, + normalize:normalize, + load:load, + cache:cache, + getL10nName: getL10nName + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io-query.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io-query.js new file mode 100644 index 00000000..02f74822 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io-query.js @@ -0,0 +1,51 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/io-query",["./_base/lang"],function(_1){ +var _2={}; +return {objectToQuery:function objectToQuery(_3){ +var _4=encodeURIComponent,_5=[]; +for(var _6 in _3){ +var _7=_3[_6]; +if(_7!=_2[_6]){ +var _8=_4(_6)+"="; +if(_1.isArray(_7)){ +for(var i=0,l=_7.length;i<l;++i){ +_5.push(_8+_4(_7[i])); +} +}else{ +_5.push(_8+_4(_7)); +} +} +} +return _5.join("&"); +},queryToObject:function queryToObject(_9){ +var _a=decodeURIComponent,qp=_9.split("&"),_b={},_c,_d; +for(var i=0,l=qp.length,_e;i<l;++i){ +_e=qp[i]; +if(_e.length){ +var s=_e.indexOf("="); +if(s<0){ +_c=_a(_e); +_d=""; +}else{ +_c=_a(_e.slice(0,s)); +_d=_a(_e.slice(s+1)); +} +if(typeof _b[_c]=="string"){ +_b[_c]=[_b[_c]]; +} +if(_1.isArray(_b[_c])){ +_b[_c].push(_d); +}else{ +_b[_c]=_d; +} +} +} +return _b; +}}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io-query.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io-query.js.uncompressed.js new file mode 100644 index 00000000..1e9de934 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io-query.js.uncompressed.js @@ -0,0 +1,97 @@ +define("dojo/io-query", ["./_base/lang"], function(lang){ + +// module: +// dojo/io-query + +var backstop = {}; + +return { +// summary: +// This module defines query string processing functions. + + objectToQuery: function objectToQuery(/*Object*/ map){ + // summary: + // takes a name/value mapping object and returns a string representing + // a URL-encoded version of that object. + // example: + // this object: + // + // | { + // | blah: "blah", + // | multi: [ + // | "thud", + // | "thonk" + // | ] + // | }; + // + // yields the following query string: + // + // | "blah=blah&multi=thud&multi=thonk" + + // FIXME: need to implement encodeAscii!! + var enc = encodeURIComponent, pairs = []; + for(var name in map){ + var value = map[name]; + if(value != backstop[name]){ + var assign = enc(name) + "="; + if(lang.isArray(value)){ + for(var i = 0, l = value.length; i < l; ++i){ + pairs.push(assign + enc(value[i])); + } + }else{ + pairs.push(assign + enc(value)); + } + } + } + return pairs.join("&"); // String + }, + + queryToObject: function queryToObject(/*String*/ str){ + // summary: + // Create an object representing a de-serialized query section of a + // URL. Query keys with multiple values are returned in an array. + // + // example: + // This string: + // + // | "foo=bar&foo=baz&thinger=%20spaces%20=blah&zonk=blarg&" + // + // results in this object structure: + // + // | { + // | foo: [ "bar", "baz" ], + // | thinger: " spaces =blah", + // | zonk: "blarg" + // | } + // + // Note that spaces and other urlencoded entities are correctly + // handled. + + // FIXME: should we grab the URL string if we're not passed one? + var dec = decodeURIComponent, qp = str.split("&"), ret = {}, name, val; + for(var i = 0, l = qp.length, item; i < l; ++i){ + item = qp[i]; + if(item.length){ + var s = item.indexOf("="); + if(s < 0){ + name = dec(item); + val = ""; + }else{ + name = dec(item.slice(0, s)); + val = dec(item.slice(s + 1)); + } + if(typeof ret[name] == "string"){ // inline'd type check + ret[name] = [ret[name]]; + } + + if(lang.isArray(ret[name])){ + ret[name].push(val); + }else{ + ret[name] = val; + } + } + } + return ret; // Object + } +}; +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/iframe.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/iframe.js new file mode 100644 index 00000000..3f0aafc8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/iframe.js @@ -0,0 +1,72 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/io/iframe",["../_base/config","../_base/json","../_base/kernel","../_base/lang","../_base/xhr","../sniff","../_base/window","../dom","../dom-construct","../query","require","../aspect","../request/iframe"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d){ +_3.deprecated("dojo/io/iframe","Use dojo/request/iframe.","2.0"); +var _e=_d._iframeName; +_e=_e.substring(0,_e.lastIndexOf("_")); +var _f=_4.delegate(_d,{create:function(){ +return _f._frame=_d.create.apply(_d,arguments); +},get:null,post:null,send:function(_10){ +var _11; +var dfd=_5._ioSetArgs(_10,function(dfd){ +_11&&_11.cancel(); +},function(dfd){ +var _12=null,_13=dfd.ioArgs; +try{ +var _14=_13.handleAs; +if(_14==="xml"||_14==="html"){ +_12=_11.response.data; +}else{ +_12=_11.response.text; +if(_14==="json"){ +_12=_2.fromJson(_12); +}else{ +if(_14==="javascript"){ +_12=_3.eval(_12); +} +} +} +} +catch(e){ +_12=e; +} +return _12; +},function(_15,dfd){ +dfd.ioArgs._hasError=true; +return _15; +}); +var _16=dfd.ioArgs; +var _17="GET",_18=_8.byId(_10.form); +if(_10.method&&_10.method.toUpperCase()==="POST"&&_18){ +_17="POST"; +} +var _19={method:_17,handleAs:_10.handleAs==="json"||_10.handleAs==="javascript"?"text":_10.handleAs,form:_10.form,query:_18?null:_10.content,data:_18?_10.content:null,timeout:_10.timeout,ioArgs:_16}; +if(_19.method){ +_19.method=_19.method.toUpperCase(); +} +if(_1.ioPublish&&_3.publish&&_16.args.ioPublish!==false){ +var _1a=_c.after(_d,"_notifyStart",function(_1b){ +if(_1b.options.ioArgs===_16){ +_1a.remove(); +_5._ioNotifyStart(dfd); +} +},true); +} +_11=_d(_16.url,_19,true); +_16._callNext=_11._callNext; +_11.then(function(){ +dfd.resolve(dfd); +}).otherwise(function(_1c){ +dfd.ioArgs.error=_1c; +dfd.reject(_1c); +}); +return dfd; +},_iframeOnload:_7.global[_e+"_onload"]}); +_4.setObject("dojo.io.iframe",_f); +return _f; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/iframe.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/iframe.js.uncompressed.js new file mode 100644 index 00000000..3ce93e0b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/iframe.js.uncompressed.js @@ -0,0 +1,190 @@ +define("dojo/io/iframe", [ + "../_base/config", "../_base/json", "../_base/kernel", /*===== "../_base/declare", =====*/ "../_base/lang", + "../_base/xhr", "../sniff", "../_base/window", + "../dom", "../dom-construct", "../query", "require", "../aspect", "../request/iframe" +], function(config, json, kernel, /*===== declare, =====*/ lang, xhr, has, win, dom, domConstruct, query, require, aspect, _iframe){ + +// module: +// dojo/io/iframe + +kernel.deprecated("dojo/io/iframe", "Use dojo/request/iframe.", "2.0"); + +/*===== +var __ioArgs = declare(kernel.__IoArgs, { + // method: String? + // The HTTP method to use. "GET" or "POST" are the only supported + // values. It will try to read the value from the form node's + // method, then try this argument. If neither one exists, then it + // defaults to POST. + // handleAs: String? + // Specifies what format the result data should be given to the + // load/handle callback. Valid values are: text, html, xml, json, + // javascript. IMPORTANT: For all values EXCEPT html and xml, The + // server response should be an HTML file with a textarea element. + // The response data should be inside the textarea element. Using an + // HTML document the only reliable, cross-browser way this + // transport can know when the response has loaded. For the html + // handleAs value, just return a normal HTML document. NOTE: xml + // is now supported with this transport (as of 1.1+); a known issue + // is if the XML document in question is malformed, Internet Explorer + // will throw an uncatchable error. + // content: Object? + // If "form" is one of the other args properties, then the content + // object properties become hidden form form elements. For + // instance, a content object of {name1 : "value1"} is converted + // to a hidden form element with a name of "name1" and a value of + // "value1". If there is not a "form" property, then the content + // object is converted into a name=value&name=value string, by + // using xhr.objectToQuery(). +}); +=====*/ + +/*===== +return kernel.io.iframe = { + // summary: + // Deprecated, use dojo/request/iframe instead. + // Sends an Ajax I/O call using and Iframe (for instance, to upload files) + + create: function(fname, onloadstr, uri){ + // summary: + // Creates a hidden iframe in the page. Used mostly for IO + // transports. You do not need to call this to start a + // dojo/io/iframe request. Just call send(). + // fname: String + // The name of the iframe. Used for the name attribute on the + // iframe. + // onloadstr: String + // A string of JavaScript that will be executed when the content + // in the iframe loads. + // uri: String + // The value of the src attribute on the iframe element. If a + // value is not given, then dojo/resources/blank.html will be + // used. + }, + setSrc: function(iframe, src, replace){ + // summary: + // Sets the URL that is loaded in an IFrame. The replace parameter + // indicates whether location.replace() should be used when + // changing the location of the iframe. + }, + doc: function(iframeNode){ + // summary: + // Returns the document object associated with the iframe DOM Node argument. + } +}; +=====*/ + + +var mid = _iframe._iframeName; +mid = mid.substring(0, mid.lastIndexOf('_')); + +var iframe = lang.delegate(_iframe, { + // summary: + // Deprecated, use dojo/request/iframe instead. + // Sends an Ajax I/O call using and Iframe (for instance, to upload files) + + create: function(){ + return iframe._frame = _iframe.create.apply(_iframe, arguments); + }, + + // cover up delegated methods + get: null, + post: null, + + send: function(/*__ioArgs*/args){ + // summary: + // Function that sends the request to the server. + // This transport can only process one send() request at a time, so if send() is called + // multiple times, it will queue up the calls and only process one at a time. + var rDfd; + + //Set up the deferred. + var dfd = xhr._ioSetArgs(args, + function(/*Deferred*/dfd){ + // summary: + // canceller function for xhr._ioSetArgs call. + rDfd && rDfd.cancel(); + }, + function(/*Deferred*/dfd){ + // summary: + // okHandler function for xhr._ioSetArgs call. + var value = null, + ioArgs = dfd.ioArgs; + try{ + var handleAs = ioArgs.handleAs; + + //Assign correct value based on handleAs value. + if(handleAs === "xml" || handleAs === "html"){ + value = rDfd.response.data; + }else{ + value = rDfd.response.text; + if(handleAs === "json"){ + value = json.fromJson(value); + }else if(handleAs === "javascript"){ + value = kernel.eval(value); + } + } + }catch(e){ + value = e; + } + return value; + }, + function(/*Error*/error, /*Deferred*/dfd){ + // summary: + // errHandler function for xhr._ioSetArgs call. + dfd.ioArgs._hasError = true; + return error; + } + ); + + var ioArgs = dfd.ioArgs; + + var method = "GET", + form = dom.byId(args.form); + if(args.method && args.method.toUpperCase() === "POST" && form){ + method = "POST"; + } + + var options = { + method: method, + handleAs: args.handleAs === "json" || args.handleAs === "javascript" ? "text" : args.handleAs, + form: args.form, + query: form ? null : args.content, + data: form ? args.content : null, + timeout: args.timeout, + ioArgs: ioArgs + }; + + if(options.method){ + options.method = options.method.toUpperCase(); + } + + if(config.ioPublish && kernel.publish && ioArgs.args.ioPublish !== false){ + var start = aspect.after(_iframe, "_notifyStart", function(data){ + if(data.options.ioArgs === ioArgs){ + start.remove(); + xhr._ioNotifyStart(dfd); + } + }, true); + } + rDfd = _iframe(ioArgs.url, options, true); + + ioArgs._callNext = rDfd._callNext; + + rDfd.then(function(){ + dfd.resolve(dfd); + }).otherwise(function(error){ + dfd.ioArgs.error = error; + dfd.reject(error); + }); + + return dfd; + }, + + _iframeOnload: win.global[mid + '_onload'] +}); + +lang.setObject("dojo.io.iframe", iframe); + +return iframe; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/script.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/script.js new file mode 100644 index 00000000..7ee30c1c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/script.js @@ -0,0 +1,113 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/io/script",["../_base/connect","../_base/kernel","../_base/lang","../sniff","../_base/window","../_base/xhr","../dom","../dom-construct","../request/script","../aspect"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a){ +_2.deprecated("dojo/io/script","Use dojo/request/script.","2.0"); +var _b={get:function(_c){ +var _d; +var _e=this._makeScriptDeferred(_c,function(_f){ +_d&&_d.cancel(); +}); +var _10=_e.ioArgs; +_6._ioAddQueryToUrl(_10); +_6._ioNotifyStart(_e); +_d=_9.get(_10.url,{timeout:_c.timeout,jsonp:_10.jsonp,checkString:_c.checkString,ioArgs:_10,frameDoc:_c.frameDoc,canAttach:function(_11){ +_10.requestId=_11.id; +_10.scriptId=_11.scriptId; +_10.canDelete=_11.canDelete; +return _b._canAttach(_10); +}},true); +_a.around(_d,"isValid",function(_12){ +return function(_13){ +_b._validCheck(_e); +return _12.call(this,_13); +}; +}); +_d.then(function(){ +_e.resolve(_e); +}).otherwise(function(_14){ +_e.ioArgs.error=_14; +_e.reject(_14); +}); +return _e; +},attach:_9._attach,remove:_9._remove,_makeScriptDeferred:function(_15,_16){ +var dfd=_6._ioSetArgs(_15,_16||this._deferredCancel,this._deferredOk,this._deferredError); +var _17=dfd.ioArgs; +_17.id=_2._scopeName+"IoScript"+(this._counter++); +_17.canDelete=false; +_17.jsonp=_15.callbackParamName||_15.jsonp; +if(_17.jsonp){ +_17.query=_17.query||""; +if(_17.query.length>0){ +_17.query+="&"; +} +_17.query+=_17.jsonp+"="+(_15.frameDoc?"parent.":"")+_2._scopeName+".io.script.jsonp_"+_17.id+"._jsonpCallback"; +_17.frameDoc=_15.frameDoc; +_17.canDelete=true; +dfd._jsonpCallback=this._jsonpCallback; +this["jsonp_"+_17.id]=dfd; +} +dfd.addBoth(function(_18){ +if(_17.canDelete){ +if(_18 instanceof Error){ +_b["jsonp_"+_17.id]._jsonpCallback=function(){ +delete _b["jsonp_"+_17.id]; +if(_17.requestId){ +_2.global[_9._callbacksProperty][_17.requestId](); +} +}; +}else{ +_b._addDeadScript(_17); +} +} +}); +return dfd; +},_deferredCancel:function(dfd){ +dfd.canceled=true; +},_deferredOk:function(dfd){ +var _19=dfd.ioArgs; +return _19.json||_19.scriptLoaded||_19; +},_deferredError:function(_1a,dfd){ +return _1a; +},_deadScripts:[],_counter:1,_addDeadScript:function(_1b){ +_b._deadScripts.push({id:_1b.id,frameDoc:_1b.frameDoc}); +_1b.frameDoc=null; +},_validCheck:function(dfd){ +var _1c=_b._deadScripts; +if(_1c&&_1c.length>0){ +for(var i=0;i<_1c.length;i++){ +_b.remove(_1c[i].id,_1c[i].frameDoc); +delete _b["jsonp_"+_1c[i].id]; +_1c[i].frameDoc=null; +} +_b._deadScripts=[]; +} +return true; +},_ioCheck:function(dfd){ +var _1d=dfd.ioArgs; +if(_1d.json||(_1d.scriptLoaded&&!_1d.args.checkString)){ +return true; +} +var _1e=_1d.args.checkString; +return _1e&&eval("typeof("+_1e+") != 'undefined'"); +},_resHandle:function(dfd){ +if(_b._ioCheck(dfd)){ +dfd.callback(dfd); +}else{ +dfd.errback(new Error("inconceivable dojo.io.script._resHandle error")); +} +},_canAttach:function(){ +return true; +},_jsonpCallback:function(_1f){ +this.ioArgs.json=_1f; +if(this.ioArgs.requestId){ +_2.global[_9._callbacksProperty][this.ioArgs.requestId](_1f); +} +}}; +_3.setObject("dojo.io.script",_b); +return _b; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/script.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/script.js.uncompressed.js new file mode 100644 index 00000000..bc302ca7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/io/script.js.uncompressed.js @@ -0,0 +1,280 @@ +define("dojo/io/script", [ + "../_base/connect", /*===== "../_base/declare", =====*/ "../_base/kernel", "../_base/lang", + "../sniff", "../_base/window","../_base/xhr", + "../dom", "../dom-construct", "../request/script", "../aspect" +], function(connect, /*===== declare, =====*/ kernel, lang, has, win, xhr, dom, domConstruct, _script, aspect){ + + // module: + // dojo/io/script + + kernel.deprecated("dojo/io/script", "Use dojo/request/script.", "2.0"); + + /*===== + var __ioArgs = declare(kernel.__IoArgs, { + // summary: + // All the properties described in the dojo.__ioArgs type, apply to this + // type as well, EXCEPT "handleAs". It is not applicable to + // dojo/io/script.get() calls, since it is implied by the usage of + // "jsonp" (response will be a JSONP call returning JSON) + // or the response is pure JavaScript defined in + // the body of the script that was attached. + // callbackParamName: String + // Deprecated as of Dojo 1.4 in favor of "jsonp", but still supported for + // legacy code. See notes for jsonp property. + // jsonp: String + // The URL parameter name that indicates the JSONP callback string. + // For instance, when using Yahoo JSONP calls it is normally, + // jsonp: "callback". For AOL JSONP calls it is normally + // jsonp: "c". + // checkString: String + // A string of JavaScript that when evaluated like so: + // "typeof(" + checkString + ") != 'undefined'" + // being true means that the script fetched has been loaded. + // Do not use this if doing a JSONP type of call (use callbackParamName instead). + // frameDoc: Document + // The Document object for a child iframe. If this is passed in, the script + // will be attached to that document. This can be helpful in some comet long-polling + // scenarios with Firefox and Opera. + }); + =====*/ + + var script = { + // summary: + // TODOC + + get: function(/*__ioArgs*/ args){ + // summary: + // sends a get request using a dynamically created script tag. + var rDfd; + var dfd = this._makeScriptDeferred(args, function(dfd){ + rDfd && rDfd.cancel(); + }); + var ioArgs = dfd.ioArgs; + xhr._ioAddQueryToUrl(ioArgs); + + xhr._ioNotifyStart(dfd); + + rDfd = _script.get(ioArgs.url, { + timeout: args.timeout, + jsonp: ioArgs.jsonp, + checkString: args.checkString, + ioArgs: ioArgs, + frameDoc: args.frameDoc, + canAttach: function(rDfd){ + // sync values + ioArgs.requestId = rDfd.id; + ioArgs.scriptId = rDfd.scriptId; + ioArgs.canDelete = rDfd.canDelete; + + return script._canAttach(ioArgs); + } + }, true); + + // Run _validCheck at the same time dojo/request/watch runs the + // rDfd.isValid function + aspect.around(rDfd, "isValid", function(isValid){ + return function(response){ + script._validCheck(dfd); + return isValid.call(this, response); + }; + }); + + rDfd.then(function(){ + dfd.resolve(dfd); + }).otherwise(function(error){ + dfd.ioArgs.error = error; + dfd.reject(error); + }); + + return dfd; + }, + + attach: _script._attach, + remove: _script._remove, + + _makeScriptDeferred: function(/*Object*/ args, /*Function?*/ cancel){ + // summary: + // sets up a Deferred object for an IO request. + var dfd = xhr._ioSetArgs(args, cancel || this._deferredCancel, this._deferredOk, this._deferredError); + + var ioArgs = dfd.ioArgs; + ioArgs.id = kernel._scopeName + "IoScript" + (this._counter++); + ioArgs.canDelete = false; + + //Special setup for jsonp case + ioArgs.jsonp = args.callbackParamName || args.jsonp; + if(ioArgs.jsonp){ + //Add the jsonp parameter. + ioArgs.query = ioArgs.query || ""; + if(ioArgs.query.length > 0){ + ioArgs.query += "&"; + } + ioArgs.query += ioArgs.jsonp + + "=" + (args.frameDoc ? "parent." : "") + + kernel._scopeName + ".io.script.jsonp_" + ioArgs.id + "._jsonpCallback"; + + ioArgs.frameDoc = args.frameDoc; + + //Setup the Deferred to have the jsonp callback. + ioArgs.canDelete = true; + dfd._jsonpCallback = this._jsonpCallback; + this["jsonp_" + ioArgs.id] = dfd; + } + // Make sure this runs no matter what happens to clean things up if need be + dfd.addBoth(function(value){ + if(ioArgs.canDelete){ + if(value instanceof Error){ + // Set up a callback that will clean things up for timeouts and cancels + script["jsonp_" + ioArgs.id]._jsonpCallback = function(){ + // Delete the cached deferred + delete script["jsonp_" + ioArgs.id]; + if(ioArgs.requestId){ + // Call the dojo/request/script callback to clean itself up as well + kernel.global[_script._callbacksProperty][ioArgs.requestId](); + } + }; + }else{ + script._addDeadScript(ioArgs); + } + } + }); + return dfd; // dojo/_base/Deferred + }, + + _deferredCancel: function(/*Deferred*/ dfd){ + // summary: + // canceller function for xhr._ioSetArgs call. + + //DO NOT use "this" and expect it to be script. + dfd.canceled = true; + }, + + _deferredOk: function(/*Deferred*/ dfd){ + // summary: + // okHandler function for xhr._ioSetArgs call. + + //DO NOT use "this" and expect it to be script. + var ioArgs = dfd.ioArgs; + + //Favor JSONP responses, script load events then lastly ioArgs. + //The ioArgs are goofy, but cannot return the dfd since that stops + //the callback chain in Deferred. The return value is not that important + //in that case, probably a checkString case. + return ioArgs.json || ioArgs.scriptLoaded || ioArgs; + }, + + _deferredError: function(/*Error*/ error, /*Deferred*/ dfd){ + // summary: + // errHandler function for xhr._ioSetArgs call. + + console.log("dojo.io.script error", error); + return error; + }, + + _deadScripts: [], + _counter: 1, + + _addDeadScript: function(/*Object*/ ioArgs){ + // summary: + // sets up an entry in the deadScripts array. + script._deadScripts.push({id: ioArgs.id, frameDoc: ioArgs.frameDoc}); + //Being extra paranoid about leaks: + ioArgs.frameDoc = null; + }, + + _validCheck: function(/*Deferred*/ dfd){ + // summary: + // inflight check function to see if dfd is still valid. + + // TODO: why isn't dfd accessed? + + //Do script cleanup here. We wait for one inflight pass + //to make sure we don't get any weird things by trying to remove a script + //tag that is part of the call chain (IE 6 has been known to + //crash in that case). + var deadScripts = script._deadScripts; + if(deadScripts && deadScripts.length > 0){ + for(var i = 0; i < deadScripts.length; i++){ + //Remove the script tag + script.remove(deadScripts[i].id, deadScripts[i].frameDoc); + //Clean up the deferreds + delete script["jsonp_" + deadScripts[i].id]; + deadScripts[i].frameDoc = null; + } + script._deadScripts = []; + } + + return true; + }, + + _ioCheck: function(dfd){ + // summary: + // inflight check function to see if IO finished. + // dfd: Deferred + var ioArgs = dfd.ioArgs; + //Check for finished jsonp + if(ioArgs.json || (ioArgs.scriptLoaded && !ioArgs.args.checkString)){ + return true; + } + + //Check for finished "checkString" case. + var checkString = ioArgs.args.checkString; + return checkString && eval("typeof(" + checkString + ") != 'undefined'"); + + + }, + + _resHandle: function(/*Deferred*/ dfd){ + // summary: + // inflight function to handle a completed response. + if(script._ioCheck(dfd)){ + dfd.callback(dfd); + }else{ + //This path should never happen since the only way we can get + //to _resHandle is if _ioCheck is true. + dfd.errback(new Error("inconceivable dojo.io.script._resHandle error")); + } + }, + + _canAttach: function(/*===== ioArgs =====*/ ){ + // summary: + // A method that can be overridden by other modules + // to control when the script attachment occurs. + // ioArgs: Object + return true; + }, + + _jsonpCallback: function(/*JSON Object*/ json){ + // summary: + // generic handler for jsonp callback. A pointer to this function + // is used for all jsonp callbacks. NOTE: the "this" in this + // function will be the Deferred object that represents the script + // request. + this.ioArgs.json = json; + if(this.ioArgs.requestId){ + kernel.global[_script._callbacksProperty][this.ioArgs.requestId](json); + } + } + }; + + lang.setObject("dojo.io.script", script); + + /*===== + script.attach = function(id, url, frameDocument){ + // summary: + // creates a new `<script>` tag pointing to the specified URL and + // adds it to the document. + // description: + // Attaches the script element to the DOM. Use this method if you + // just want to attach a script to the DOM and do not care when or + // if it loads. + }; + script.remove = function(id, frameDocument){ + // summary: + // removes the script element with the given id, from the given frameDocument. + // If no frameDocument is passed, the current document is used. + }; + =====*/ + + return script; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/json.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/json.js new file mode 100644 index 00000000..3dd4d48f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/json.js @@ -0,0 +1,104 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/json",["./has"],function(_1){ +"use strict"; +var _2=typeof JSON!="undefined"; +_1.add("json-parse",_2); +_1.add("json-stringify",_2&&JSON.stringify({a:0},function(k,v){ +return v||1; +})=="{\"a\":1}"); +if(_1("json-stringify")){ +return JSON; +}else{ +var _3=function(_4){ +return ("\""+_4.replace(/(["\\])/g,"\\$1")+"\"").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r"); +}; +return {parse:_1("json-parse")?JSON.parse:function(_5,_6){ +if(_6&&!/^([\s\[\{]*(?:"(?:\\.|[^"])*"|-?\d[\d\.]*(?:[Ee][+-]?\d+)?|null|true|false|)[\s\]\}]*(?:,|:|$))+$/.test(_5)){ +throw new SyntaxError("Invalid characters in JSON"); +} +return eval("("+_5+")"); +},stringify:function(_7,_8,_9){ +var _a; +if(typeof _8=="string"){ +_9=_8; +_8=null; +} +function _b(it,_c,_d){ +if(_8){ +it=_8(_d,it); +} +var _e,_f=typeof it; +if(_f=="number"){ +return isFinite(it)?it+"":"null"; +} +if(_f=="boolean"){ +return it+""; +} +if(it===null){ +return "null"; +} +if(typeof it=="string"){ +return _3(it); +} +if(_f=="function"||_f=="undefined"){ +return _a; +} +if(typeof it.toJSON=="function"){ +return _b(it.toJSON(_d),_c,_d); +} +if(it instanceof Date){ +return "\"{FullYear}-{Month+}-{Date}T{Hours}:{Minutes}:{Seconds}Z\"".replace(/\{(\w+)(\+)?\}/g,function(t,_10,_11){ +var num=it["getUTC"+_10]()+(_11?1:0); +return num<10?"0"+num:num; +}); +} +if(it.valueOf()!==it){ +return _b(it.valueOf(),_c,_d); +} +var _12=_9?(_c+_9):""; +var sep=_9?" ":""; +var _13=_9?"\n":""; +if(it instanceof Array){ +var itl=it.length,res=[]; +for(_d=0;_d<itl;_d++){ +var obj=it[_d]; +_e=_b(obj,_12,_d); +if(typeof _e!="string"){ +_e="null"; +} +res.push(_13+_12+_e); +} +return "["+res.join(",")+_13+_c+"]"; +} +var _14=[]; +for(_d in it){ +var _15; +if(it.hasOwnProperty(_d)){ +if(typeof _d=="number"){ +_15="\""+_d+"\""; +}else{ +if(typeof _d=="string"){ +_15=_3(_d); +}else{ +continue; +} +} +_e=_b(it[_d],_12,_d); +if(typeof _e!="string"){ +continue; +} +_14.push(_13+_12+_15+":"+sep+_e); +} +} +return "{"+_14.join(",")+_13+_c+"}"; +}; +return _b(_7,"",""); +}}; +} +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/json.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/json.js.uncompressed.js new file mode 100644 index 00000000..86f6a73c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/json.js.uncompressed.js @@ -0,0 +1,162 @@ +define("dojo/json", ["./has"], function(has){ + "use strict"; + var hasJSON = typeof JSON != "undefined"; + has.add("json-parse", hasJSON); // all the parsers work fine + // Firefox 3.5/Gecko 1.9 fails to use replacer in stringify properly https://bugzilla.mozilla.org/show_bug.cgi?id=509184 + has.add("json-stringify", hasJSON && JSON.stringify({a:0}, function(k,v){return v||1;}) == '{"a":1}'); + + /*===== + return { + // summary: + // Functions to parse and serialize JSON + + parse: function(str, strict){ + // summary: + // Parses a [JSON](http://json.org) string to return a JavaScript object. + // description: + // This function follows [native JSON API](https://developer.mozilla.org/en/JSON) + // Throws for invalid JSON strings. This delegates to eval() if native JSON + // support is not available. By default this will evaluate any valid JS expression. + // With the strict parameter set to true, the parser will ensure that only + // valid JSON strings are parsed (otherwise throwing an error). Without the strict + // parameter, the content passed to this method must come + // from a trusted source. + // str: + // a string literal of a JSON item, for instance: + // `'{ "foo": [ "bar", 1, { "baz": "thud" } ] }'` + // strict: + // When set to true, this will ensure that only valid, secure JSON is ever parsed. + // Make sure this is set to true for untrusted content. Note that on browsers/engines + // without native JSON support, setting this to true will run slower. + }, + stringify: function(value, replacer, spacer){ + // summary: + // Returns a [JSON](http://json.org) serialization of an object. + // description: + // Returns a [JSON](http://json.org) serialization of an object. + // This function follows [native JSON API](https://developer.mozilla.org/en/JSON) + // Note that this doesn't check for infinite recursion, so don't do that! + // value: + // A value to be serialized. + // replacer: + // A replacer function that is called for each value and can return a replacement + // spacer: + // A spacer string to be used for pretty printing of JSON + // example: + // simple serialization of a trivial object + // | define(["dojo/json"], function(JSON){ + // | var jsonStr = JSON.stringify({ howdy: "stranger!", isStrange: true }); + // | doh.is('{"howdy":"stranger!","isStrange":true}', jsonStr); + } + }; + =====*/ + + if(has("json-stringify")){ + return JSON; + }else{ + var escapeString = function(/*String*/str){ + // summary: + // Adds escape sequences for non-visual characters, double quote and + // backslash and surrounds with double quotes to form a valid string + // literal. + return ('"' + str.replace(/(["\\])/g, '\\$1') + '"'). + replace(/[\f]/g, "\\f").replace(/[\b]/g, "\\b").replace(/[\n]/g, "\\n"). + replace(/[\t]/g, "\\t").replace(/[\r]/g, "\\r"); // string + }; + return { + parse: has("json-parse") ? JSON.parse : function(str, strict){ + if(strict && !/^([\s\[\{]*(?:"(?:\\.|[^"])*"|-?\d[\d\.]*(?:[Ee][+-]?\d+)?|null|true|false|)[\s\]\}]*(?:,|:|$))+$/.test(str)){ + throw new SyntaxError("Invalid characters in JSON"); + } + return eval('(' + str + ')'); + }, + stringify: function(value, replacer, spacer){ + var undef; + if(typeof replacer == "string"){ + spacer = replacer; + replacer = null; + } + function stringify(it, indent, key){ + if(replacer){ + it = replacer(key, it); + } + var val, objtype = typeof it; + if(objtype == "number"){ + return isFinite(it) ? it + "" : "null"; + } + if(objtype == "boolean"){ + return it + ""; + } + if(it === null){ + return "null"; + } + if(typeof it == "string"){ + return escapeString(it); + } + if(objtype == "function" || objtype == "undefined"){ + return undef; // undefined + } + // short-circuit for objects that support "json" serialization + // if they return "self" then just pass-through... + if(typeof it.toJSON == "function"){ + return stringify(it.toJSON(key), indent, key); + } + if(it instanceof Date){ + return '"{FullYear}-{Month+}-{Date}T{Hours}:{Minutes}:{Seconds}Z"'.replace(/\{(\w+)(\+)?\}/g, function(t, prop, plus){ + var num = it["getUTC" + prop]() + (plus ? 1 : 0); + return num < 10 ? "0" + num : num; + }); + } + if(it.valueOf() !== it){ + // primitive wrapper, try again unwrapped: + return stringify(it.valueOf(), indent, key); + } + var nextIndent= spacer ? (indent + spacer) : ""; + /* we used to test for DOM nodes and throw, but FF serializes them as {}, so cross-browser consistency is probably not efficiently attainable */ + + var sep = spacer ? " " : ""; + var newLine = spacer ? "\n" : ""; + + // array + if(it instanceof Array){ + var itl = it.length, res = []; + for(key = 0; key < itl; key++){ + var obj = it[key]; + val = stringify(obj, nextIndent, key); + if(typeof val != "string"){ + val = "null"; + } + res.push(newLine + nextIndent + val); + } + return "[" + res.join(",") + newLine + indent + "]"; + } + // generic object code path + var output = []; + for(key in it){ + var keyStr; + if(it.hasOwnProperty(key)){ + if(typeof key == "number"){ + keyStr = '"' + key + '"'; + }else if(typeof key == "string"){ + keyStr = escapeString(key); + }else{ + // skip non-string or number keys + continue; + } + val = stringify(it[key], nextIndent, key); + if(typeof val != "string"){ + // skip non-serializable values + continue; + } + // At this point, the most non-IE browsers don't get in this branch + // (they have native JSON), so push is definitely the way to + output.push(newLine + nextIndent + keyStr + ":" + sep + val); + } + } + return "{" + output.join(",") + newLine + indent + "}"; // String + } + return stringify(value, "", ""); + } + }; + } +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/keys.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/keys.js new file mode 100644 index 00000000..78d53f34 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/keys.js @@ -0,0 +1,10 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/keys",["./_base/kernel","./sniff"],function(_1,_2){ +return _1.keys={BACKSPACE:8,TAB:9,CLEAR:12,ENTER:13,SHIFT:16,CTRL:17,ALT:18,META:_2("webkit")?91:224,PAUSE:19,CAPS_LOCK:20,ESCAPE:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT_ARROW:37,UP_ARROW:38,RIGHT_ARROW:39,DOWN_ARROW:40,INSERT:45,DELETE:46,HELP:47,LEFT_WINDOW:91,RIGHT_WINDOW:92,SELECT:93,NUMPAD_0:96,NUMPAD_1:97,NUMPAD_2:98,NUMPAD_3:99,NUMPAD_4:100,NUMPAD_5:101,NUMPAD_6:102,NUMPAD_7:103,NUMPAD_8:104,NUMPAD_9:105,NUMPAD_MULTIPLY:106,NUMPAD_PLUS:107,NUMPAD_ENTER:108,NUMPAD_MINUS:109,NUMPAD_PERIOD:110,NUMPAD_DIVIDE:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,F13:124,F14:125,F15:126,NUM_LOCK:144,SCROLL_LOCK:145,UP_DPAD:175,DOWN_DPAD:176,LEFT_DPAD:177,RIGHT_DPAD:178,copyKey:_2("mac")&&!_2("air")?(_2("safari")?91:224):17}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/keys.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/keys.js.uncompressed.js new file mode 100644 index 00000000..65567a2a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/keys.js.uncompressed.js @@ -0,0 +1,77 @@ +define("dojo/keys", ["./_base/kernel", "./sniff"], function(dojo, has){ + + // module: + // dojo/keys + + return dojo.keys = { + // summary: + // Definitions for common key values. Client code should test keyCode against these named constants, + // as the actual codes can vary by browser. + + BACKSPACE: 8, + TAB: 9, + CLEAR: 12, + ENTER: 13, + SHIFT: 16, + CTRL: 17, + ALT: 18, + META: has("webkit") ? 91 : 224, // the apple key on macs + PAUSE: 19, + CAPS_LOCK: 20, + ESCAPE: 27, + SPACE: 32, + PAGE_UP: 33, + PAGE_DOWN: 34, + END: 35, + HOME: 36, + LEFT_ARROW: 37, + UP_ARROW: 38, + RIGHT_ARROW: 39, + DOWN_ARROW: 40, + INSERT: 45, + DELETE: 46, + HELP: 47, + LEFT_WINDOW: 91, + RIGHT_WINDOW: 92, + SELECT: 93, + NUMPAD_0: 96, + NUMPAD_1: 97, + NUMPAD_2: 98, + NUMPAD_3: 99, + NUMPAD_4: 100, + NUMPAD_5: 101, + NUMPAD_6: 102, + NUMPAD_7: 103, + NUMPAD_8: 104, + NUMPAD_9: 105, + NUMPAD_MULTIPLY: 106, + NUMPAD_PLUS: 107, + NUMPAD_ENTER: 108, + NUMPAD_MINUS: 109, + NUMPAD_PERIOD: 110, + NUMPAD_DIVIDE: 111, + F1: 112, + F2: 113, + F3: 114, + F4: 115, + F5: 116, + F6: 117, + F7: 118, + F8: 119, + F9: 120, + F10: 121, + F11: 122, + F12: 123, + F13: 124, + F14: 125, + F15: 126, + NUM_LOCK: 144, + SCROLL_LOCK: 145, + UP_DPAD: 175, + DOWN_DPAD: 176, + LEFT_DPAD: 177, + RIGHT_DPAD: 178, + // virtual key mapping + copyKey: has("mac") && !has("air") ? (has("safari") ? 91 : 224 ) : 17 + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/loadInit.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/loadInit.js new file mode 100644 index 00000000..95032899 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/loadInit.js @@ -0,0 +1,12 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/loadInit",["./_base/loader"],function(_1){ +return {dynamic:0,normalize:function(id){ +return id; +},load:_1.loadInit}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/loadInit.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/loadInit.js.uncompressed.js new file mode 100644 index 00000000..373931d1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/loadInit.js.uncompressed.js @@ -0,0 +1,7 @@ +define("dojo/loadInit", ["./_base/loader"], function(loader){ + return { + dynamic:0, + normalize:function(id){return id;}, + load:loader.loadInit + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/main.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/main.js new file mode 100644 index 00000000..3cb012bd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/main.js @@ -0,0 +1,29 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/main",["./_base/kernel","./has","require","./sniff","./_base/lang","./_base/array","./_base/config","./ready","./_base/declare","./_base/connect","./_base/Deferred","./_base/json","./_base/Color","./has!dojo-firebug?./_firebug/firebug","./_base/browser","./_base/loader"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +if(_7.isDebug){ +_3(["./_firebug/firebug"]); +} +1||_2.add("dojo-config-require",1); +if(1){ +var _9=_7.require; +if(_9){ +_9=_6.map(_5.isArray(_9)?_9:[_9],function(_a){ +return _a.replace(/\./g,"/"); +}); +if(_1.isAsync){ +_3(_9); +}else{ +_8(1,function(){ +_3(_9); +}); +} +} +} +return _1; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/main.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/main.js.uncompressed.js new file mode 100644 index 00000000..a3dd8056 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/main.js.uncompressed.js @@ -0,0 +1,52 @@ +define("dojo/main", [ + "./_base/kernel", // kernel.isAsync + "./has", + "require", + "./sniff", + "./_base/lang", + "./_base/array", + "./_base/config", + "./ready", + "./_base/declare", + "./_base/connect", + "./_base/Deferred", + "./_base/json", + "./_base/Color", + "./has!dojo-firebug?./_firebug/firebug", + "./_base/browser", + "./_base/loader" +], function(kernel, has, require, sniff, lang, array, config, ready){ + // module: + // dojo/main + // summary: + // This is the package main module for the dojo package; it loads dojo base appropriate for the execution environment. + + // the preferred way to load the dojo firebug console is by setting has("dojo-firebug") true in dojoConfig + // the isDebug config switch is for backcompat and will work fine in sync loading mode; it works in + // async mode too, but there's no guarantee when the module is loaded; therefore, if you need a firebug + // console guaranteed at a particular spot in an app, either set config.has["dojo-firebug"] true before + // loading dojo.js or explicitly include dojo/_firebug/firebug in a dependency list. + if(config.isDebug){ + require(["./_firebug/firebug"]); + } + + // dojoConfig.require is deprecated; use the loader configuration property deps + 1 || has.add("dojo-config-require", 1); + if( 1 ){ + var deps= config.require; + if(deps){ + // config.require may be dot notation + deps= array.map(lang.isArray(deps) ? deps : [deps], function(item){ return item.replace(/\./g, "/"); }); + if(kernel.isAsync){ + require(deps); + }else{ + // this is a bit janky; in 1.6- dojo is defined before these requires are applied; but in 1.7+ + // dojo isn't defined until returning from this module; this is only a problem in sync mode + // since we're in sync mode, we know we've got our loader with its priority ready queue + ready(1, function(){require(deps);}); + } + } + } + + return kernel; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/mouse.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/mouse.js new file mode 100644 index 00000000..7dd55405 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/mouse.js @@ -0,0 +1,69 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/mouse",["./_base/kernel","./on","./has","./dom","./_base/window"],function(_1,on,_2,_3,_4){ +_2.add("dom-quirks",_4.doc&&_4.doc.compatMode=="BackCompat"); +_2.add("events-mouseenter",_4.doc&&"onmouseenter" in _4.doc.createElement("div")); +_2.add("events-mousewheel",_4.doc&&"onmousewheel" in _4.doc); +var _5; +if((_2("dom-quirks")&&_2("ie"))||!_2("dom-addeventlistener")){ +_5={LEFT:1,MIDDLE:4,RIGHT:2,isButton:function(e,_6){ +return e.button&_6; +},isLeft:function(e){ +return e.button&1; +},isMiddle:function(e){ +return e.button&4; +},isRight:function(e){ +return e.button&2; +}}; +}else{ +_5={LEFT:0,MIDDLE:1,RIGHT:2,isButton:function(e,_7){ +return e.button==_7; +},isLeft:function(e){ +return e.button==0; +},isMiddle:function(e){ +return e.button==1; +},isRight:function(e){ +return e.button==2; +}}; +} +_1.mouseButtons=_5; +function _8(_9,_a){ +var _b=function(_c,_d){ +return on(_c,_9,function(_e){ +if(_a){ +return _a(_e,_d); +} +if(!_3.isDescendant(_e.relatedTarget,_c)){ +return _d.call(this,_e); +} +}); +}; +_b.bubble=function(_f){ +return _8(_9,function(evt,_10){ +var _11=_f(evt.target); +var _12=evt.relatedTarget; +if(_11&&(_11!=(_12&&_12.nodeType==1&&_f(_12)))){ +return _10.call(_11,evt); +} +}); +}; +return _b; +}; +var _13; +if(_2("events-mousewheel")){ +_13="mousewheel"; +}else{ +_13=function(_14,_15){ +return on(_14,"DOMMouseScroll",function(evt){ +evt.wheelDelta=-evt.detail; +_15.call(this,evt); +}); +}; +} +return {_eventHandler:_8,enter:_8("mouseover"),leave:_8("mouseout"),wheel:_13,isLeft:_5.isLeft,isMiddle:_5.isMiddle,isRight:_5.isRight}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/mouse.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/mouse.js.uncompressed.js new file mode 100644 index 00000000..a9ac06bd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/mouse.js.uncompressed.js @@ -0,0 +1,171 @@ +define("dojo/mouse", ["./_base/kernel", "./on", "./has", "./dom", "./_base/window"], function(dojo, on, has, dom, win){ + + // module: + // dojo/mouse + + has.add("dom-quirks", win.doc && win.doc.compatMode == "BackCompat"); + has.add("events-mouseenter", win.doc && "onmouseenter" in win.doc.createElement("div")); + has.add("events-mousewheel", win.doc && 'onmousewheel' in win.doc); + + var mouseButtons; + if((has("dom-quirks") && has("ie")) || !has("dom-addeventlistener")){ + mouseButtons = { + LEFT: 1, + MIDDLE: 4, + RIGHT: 2, + // helper functions + isButton: function(e, button){ return e.button & button; }, + isLeft: function(e){ return e.button & 1; }, + isMiddle: function(e){ return e.button & 4; }, + isRight: function(e){ return e.button & 2; } + }; + }else{ + mouseButtons = { + LEFT: 0, + MIDDLE: 1, + RIGHT: 2, + // helper functions + isButton: function(e, button){ return e.button == button; }, + isLeft: function(e){ return e.button == 0; }, + isMiddle: function(e){ return e.button == 1; }, + isRight: function(e){ return e.button == 2; } + }; + } + dojo.mouseButtons = mouseButtons; + +/*===== + dojo.mouseButtons = { + // LEFT: Number + // Numeric value of the left mouse button for the platform. + LEFT: 0, + // MIDDLE: Number + // Numeric value of the middle mouse button for the platform. + MIDDLE: 1, + // RIGHT: Number + // Numeric value of the right mouse button for the platform. + RIGHT: 2, + + isButton: function(e, button){ + // summary: + // Checks an event object for a pressed button + // e: Event + // Event object to examine + // button: Number + // The button value (example: dojo.mouseButton.LEFT) + return e.button == button; // Boolean + }, + isLeft: function(e){ + // summary: + // Checks an event object for the pressed left button + // e: Event + // Event object to examine + return e.button == 0; // Boolean + }, + isMiddle: function(e){ + // summary: + // Checks an event object for the pressed middle button + // e: Event + // Event object to examine + return e.button == 1; // Boolean + }, + isRight: function(e){ + // summary: + // Checks an event object for the pressed right button + // e: Event + // Event object to examine + return e.button == 2; // Boolean + } + }; +=====*/ + + function eventHandler(type, selectHandler){ + // emulation of mouseenter/leave with mouseover/out using descendant checking + var handler = function(node, listener){ + return on(node, type, function(evt){ + if(selectHandler){ + return selectHandler(evt, listener); + } + if(!dom.isDescendant(evt.relatedTarget, node)){ + return listener.call(this, evt); + } + }); + }; + handler.bubble = function(select){ + return eventHandler(type, function(evt, listener){ + // using a selector, use the select function to determine if the mouse moved inside the selector and was previously outside the selector + var target = select(evt.target); + var relatedTarget = evt.relatedTarget; + if(target && (target != (relatedTarget && relatedTarget.nodeType == 1 && select(relatedTarget)))){ + return listener.call(target, evt); + } + }); + }; + return handler; + } + var wheel; + if(has("events-mousewheel")){ + wheel = 'mousewheel'; + }else{ //firefox + wheel = function(node, listener){ + return on(node, 'DOMMouseScroll', function(evt){ + evt.wheelDelta = -evt.detail; + listener.call(this, evt); + }); + }; + } + return { + // summary: + // This module provide mouse event handling utility functions and exports + // mouseenter and mouseleave event emulation. + // example: + // To use these events, you register a mouseenter like this: + // | define(["dojo/on", "dojo/mouse"], function(on, mouse){ + // | on(targetNode, mouse.enter, function(event){ + // | dojo.addClass(targetNode, "highlighted"); + // | }); + // | on(targetNode, mouse.leave, function(event){ + // | dojo.removeClass(targetNode, "highlighted"); + // | }); + + _eventHandler: eventHandler, // for dojo/touch + + // enter: Synthetic Event + // This is an extension event for the mouseenter that IE provides, emulating the + // behavior on other browsers. + enter: eventHandler("mouseover"), + + // leave: Synthetic Event + // This is an extension event for the mouseleave that IE provides, emulating the + // behavior on other browsers. + leave: eventHandler("mouseout"), + + // wheel: Normalized Mouse Wheel Event + // This is an extension event for the mousewheel that non-Mozilla browsers provide, + // emulating the behavior on Mozilla based browsers. + wheel: wheel, + + isLeft: mouseButtons.isLeft, + /*===== + isLeft: function(){ + // summary: + // Test an event object (from a mousedown event) to see if the left button was pressed. + }, + =====*/ + + isMiddle: mouseButtons.isMiddle, + /*===== + isMiddle: function(){ + // summary: + // Test an event object (from a mousedown event) to see if the middle button was pressed. + }, + =====*/ + + isRight: mouseButtons.isRight + /*===== + , isRight: function(){ + // summary: + // Test an event object (from a mousedown event) to see if the right button was pressed. + } + =====*/ + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ar/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ar/colors.js new file mode 100644 index 00000000..7e8becad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ar/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/ar/colors",({aliceblue:"أزرق فاتح",antiquewhite:"أبيض عتيق",aqua:"أزرق مائي",aquamarine:"أزرق مائل للأخضر (زبرجد)",azure:"أزرق سماوي",beige:"بيج",bisque:"أصفر برتقالي الى رمادي مصفر",black:"أسود",blanchedalmond:"أخضر مائل للبياض",blue:"أزرق",blueviolet:"أزرق-بنفسجي",brown:"بني",burlywood:"خشبي",cadetblue:"أزرق ملون بالرمادي",chartreuse:"أخضر مائل للصفرة",chocolate:"بني غامق",coral:"مرجاني",cornflowerblue:"أزرق عنبري",cornsilk:"حريري",crimson:"قرمزي",cyan:"أزرق سماوي",darkblue:"أزرق داكن",darkcyan:"أزرق سماوي داكن",darkgoldenrod:"أصفر ذهبي داكن",darkgray:"رمادي داكن",darkgreen:"أخضر داكن",darkgrey:"رمادي داكن",darkkhaki:"كاكي داكن",darkmagenta:"قرمزي داكن",darkolivegreen:"أخضر زيتوني داكن",darkorange:"برتقالي داكن",darkorchid:"أرجواني داكن",darkred:"أحمر داكن",darksalmon:"فضي داكن",darkseagreen:"أخضر مائل للأزرق داكن",darkslateblue:"أزرق اردوازي داكن",darkslategray:"رمادي اردوازي داكن",darkslategrey:"رمادي اردوازي داكن",darkturquoise:"تركواز داكن",darkviolet:"بنفسجي داكن",deeppink:"أحمر وردي غامق",deepskyblue:"أزرق سماوي غامق",dimgray:"رمادي شاحب",dimgrey:"رمادي شاحب",dodgerblue:"أزرق عنبري",firebrick:"أصفر زاهي",floralwhite:"أبيض زهري",forestgreen:"أخضر بلون أشجار الغابات",fuchsia:"فوشيا",gainsboro:"رمادي مائل للأزرق فاتح",ghostwhite:"أبيض شفاف",gold:"ذهبي",goldenrod:"أصفر ذهبي",gray:"رمادي",green:"أخضر",greenyellow:"أخضر مائل للأصفر",grey:"رمادي",honeydew:"أبيض مائل للأخضر",hotpink:"أحمر وردي زاهي",indianred:"أحمر هندي",indigo:"نيلي",ivory:"عاجي",khaki:"كاكي",lavender:"أرجواني شاحب",lavenderblush:"أحمر أرجواني",lawngreen:"أخضر بلون العشب",lemonchiffon:"أصفر شفاف",lightblue:"أزرق فاتح",lightcoral:"مرجاني فاتح",lightcyan:"سماوي فاتح",lightgoldenrodyellow:"أصفر ذهبي فاتح",lightgray:"رمادي فاتح",lightgreen:"أخضر فاتح",lightgrey:"رمادي فاتح",lightpink:"وردي فاتح",lightsalmon:"فضي فاتح",lightseagreen:"أخضر مائل للأزرق فاتح",lightskyblue:"أزرق سماوي فاتح",lightslategray:"رمادي اردوازي فاتح",lightslategrey:"رمادي اردوازي فاتح",lightsteelblue:"أزرق معدني فاتح",lightyellow:"أصفر فاتح",lime:"ليموني",limegreen:"أخضر ليموني",linen:"كتاني",magenta:"أحمر قرمزي",maroon:"أحمر داكن",mediumaquamarine:"أزرق مائل للأخضر (زبرجد) متوسط",mediumblue:"أزرق متوسط",mediumorchid:"أرجواني متوسط",mediumpurple:"قرمزي متوسط",mediumseagreen:"أخضر مائل للأزرق متوسط",mediumslateblue:"أزرق اردوازي متوسط",mediumspringgreen:"أخضر ربيعي متوسط",mediumturquoise:"تركواز متوسط",mediumvioletred:"أحمر-بنفسجي متوسط",midnightblue:"أزرق بحري",mintcream:"أصفر شاحب مائل للأخضر الزرعي",mistyrose:"وردي",moccasin:"نحاسي أحمر",navajowhite:"أبيض ملاحي",navy:"أزرق داكن",oldlace:"برتقالي مائل للأصفر شاحب",olive:"أخضر زيتوني داكن",olivedrab:"أسود فاتح",orange:"برتقالي",orangered:"أحمر مائل للبرتقالي",orchid:"أرجواني فاتح",palegoldenrod:"أصفر ذهبي شاحب",palegreen:"أخضر شاحب",paleturquoise:"تركواز شاحب",palevioletred:"أحمر-بنفسجي شاحب",papayawhip:"خوخي فاتح",peachpuff:"خوخي مائل للأصفر",peru:"بني جملي",pink:"وردي",plum:"أرجواني داكن",powderblue:"أزرق مائل للأصفر",purple:"ارجواني",red:"أحمر",rosybrown:"بني وردي",royalblue:"أزرق ملكي",saddlebrown:"بني فاتح",salmon:"برتقالي وردي شاحب",sandybrown:"بني مائل للصفرة",seagreen:"أخضر مائل للأزرق",seashell:"أبيض مائل للأصفر فاتح",sienna:"بني محروق",silver:"فضي",skyblue:"أزرق سماوي",slateblue:"أزرق اردوازي",slategray:"رمادي اردوازي",slategrey:"رمادي اردوازي",snow:"أبيض ثلجي",springgreen:"أخضر ربيعي",steelblue:"أزرق معدني",tan:"خمري",teal:"بترولي",thistle:"ارجواني شاحب",tomato:"أحمر مائل للأصفر",transparent:"شفاف",turquoise:"تركواز",violet:"بنفسجي",wheat:"أخضر قمحي",white:"أبيض",whitesmoke:"دخان أبيض",yellow:"أصفر",yellowgreen:"أخضر مائل للأصفر"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ar/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ar/colors.js.uncompressed.js new file mode 100644 index 00000000..0b7fa59d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ar/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/ar/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "أزرق فاتح", + antiquewhite: "أبيض عتيق", + aqua: "أزرق مائي", + aquamarine: "أزرق مائل للأخضر (زبرجد)", + azure: "أزرق سماوي", + beige: "بيج", + bisque: "أصفر برتقالي الى رمادي مصفر", + black: "أسود", + blanchedalmond: "أخضر مائل للبياض", + blue: "أزرق", + blueviolet: "أزرق-بنفسجي", + brown: "بني", + burlywood: "خشبي", + cadetblue: "أزرق ملون بالرمادي", + chartreuse: "أخضر مائل للصفرة", + chocolate: "بني غامق", + coral: "مرجاني", + cornflowerblue: "أزرق عنبري", + cornsilk: "حريري", + crimson: "قرمزي", + cyan: "أزرق سماوي", + darkblue: "أزرق داكن", + darkcyan: "أزرق سماوي داكن", + darkgoldenrod: "أصفر ذهبي داكن", + darkgray: "رمادي داكن", + darkgreen: "أخضر داكن", + darkgrey: "رمادي داكن", // same as darkgray + darkkhaki: "كاكي داكن", + darkmagenta: "قرمزي داكن", + darkolivegreen: "أخضر زيتوني داكن", + darkorange: "برتقالي داكن", + darkorchid: "أرجواني داكن", + darkred: "أحمر داكن", + darksalmon: "فضي داكن", + darkseagreen: "أخضر مائل للأزرق داكن", + darkslateblue: "أزرق اردوازي داكن", + darkslategray: "رمادي اردوازي داكن", + darkslategrey: "رمادي اردوازي داكن", // same as darkslategray + darkturquoise: "تركواز داكن", + darkviolet: "بنفسجي داكن", + deeppink: "أحمر وردي غامق", + deepskyblue: "أزرق سماوي غامق", + dimgray: "رمادي شاحب", + dimgrey: "رمادي شاحب", // same as dimgray + dodgerblue: "أزرق عنبري", + firebrick: "أصفر زاهي", + floralwhite: "أبيض زهري", + forestgreen: "أخضر بلون أشجار الغابات", + fuchsia: "فوشيا", + gainsboro: "رمادي مائل للأزرق فاتح", + ghostwhite: "أبيض شفاف", + gold: "ذهبي", + goldenrod: "أصفر ذهبي", + gray: "رمادي", + green: "أخضر", + greenyellow: "أخضر مائل للأصفر", + grey: "رمادي", // same as gray + honeydew: "أبيض مائل للأخضر", + hotpink: "أحمر وردي زاهي", + indianred: "أحمر هندي", + indigo: "نيلي", + ivory: "عاجي", + khaki: "كاكي", + lavender: "أرجواني شاحب", + lavenderblush: "أحمر أرجواني", + lawngreen: "أخضر بلون العشب", + lemonchiffon: "أصفر شفاف", + lightblue: "أزرق فاتح", + lightcoral: "مرجاني فاتح", + lightcyan: "سماوي فاتح", + lightgoldenrodyellow: "أصفر ذهبي فاتح", + lightgray: "رمادي فاتح", + lightgreen: "أخضر فاتح", + lightgrey: "رمادي فاتح", // same as lightgray + lightpink: "وردي فاتح", + lightsalmon: "فضي فاتح", + lightseagreen: "أخضر مائل للأزرق فاتح", + lightskyblue: "أزرق سماوي فاتح", + lightslategray: "رمادي اردوازي فاتح", + lightslategrey: "رمادي اردوازي فاتح", // same as lightslategray + lightsteelblue: "أزرق معدني فاتح", + lightyellow: "أصفر فاتح", + lime: "ليموني", + limegreen: "أخضر ليموني", + linen: "كتاني", + magenta: "أحمر قرمزي", + maroon: "أحمر داكن", + mediumaquamarine: "أزرق مائل للأخضر (زبرجد) متوسط", + mediumblue: "أزرق متوسط", + mediumorchid: "أرجواني متوسط", + mediumpurple: "قرمزي متوسط", + mediumseagreen: "أخضر مائل للأزرق متوسط", + mediumslateblue: "أزرق اردوازي متوسط", + mediumspringgreen: "أخضر ربيعي متوسط", + mediumturquoise: "تركواز متوسط", + mediumvioletred: "أحمر-بنفسجي متوسط", + midnightblue: "أزرق بحري", + mintcream: "أصفر شاحب مائل للأخضر الزرعي", + mistyrose: "وردي", + moccasin: "نحاسي أحمر", + navajowhite: "أبيض ملاحي", + navy: "أزرق داكن", + oldlace: "برتقالي مائل للأصفر شاحب", + olive: "أخضر زيتوني داكن", + olivedrab: "أسود فاتح", + orange: "برتقالي", + orangered: "أحمر مائل للبرتقالي", + orchid: "أرجواني فاتح", + palegoldenrod: "أصفر ذهبي شاحب", + palegreen: "أخضر شاحب", + paleturquoise: "تركواز شاحب", + palevioletred: "أحمر-بنفسجي شاحب", + papayawhip: "خوخي فاتح", + peachpuff: "خوخي مائل للأصفر", + peru: "بني جملي", + pink: "وردي", + plum: "أرجواني داكن", + powderblue: "أزرق مائل للأصفر", + purple: "ارجواني", + red: "أحمر", + rosybrown: "بني وردي", + royalblue: "أزرق ملكي", + saddlebrown: "بني فاتح", + salmon: "برتقالي وردي شاحب", + sandybrown: "بني مائل للصفرة", + seagreen: "أخضر مائل للأزرق", + seashell: "أبيض مائل للأصفر فاتح", + sienna: "بني محروق", + silver: "فضي", + skyblue: "أزرق سماوي", + slateblue: "أزرق اردوازي", + slategray: "رمادي اردوازي", + slategrey: "رمادي اردوازي", // same as slategray + snow: "أبيض ثلجي", + springgreen: "أخضر ربيعي", + steelblue: "أزرق معدني", + tan: "خمري", + teal: "بترولي", + thistle: "ارجواني شاحب", + tomato: "أحمر مائل للأصفر", + transparent: "شفاف", + turquoise: "تركواز", + violet: "بنفسجي", + wheat: "أخضر قمحي", + white: "أبيض", + whitesmoke: "دخان أبيض", + yellow: "أصفر", + yellowgreen: "أخضر مائل للأصفر" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/az/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/az/colors.js new file mode 100644 index 00000000..f942ebbb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/az/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/az/colors",({"lightsteelblue":"açıq metal mavi","orangered":"narıncı qırmızı","midnightblue":"gecə mavisi","cadetblue":"dəniz mavisi","seashell":"dəniz səthi","slategrey":"boz şifer rəngi","coral":"mərcan","darkturquoise":"tünd firuzəyi","antiquewhite":"antik ağ","mediumspringgreen":"orta bahar yaşılı","salmon":"somon","darkgrey":"tünd boz","ivory":"fil dişi","greenyellow":"yaşıl-sarı","mistyrose":"gül qurusu","lightsalmon":"açıq somon","silver":"gümüşü","dimgrey":"açıq boz","orange":"narıncı","white":"ağ","navajowhite":"navajo ağı","royalblue":"parlaq tünd mavi","deeppink":"tünd çəhrayı","lime":"lomon yaşılı","oldlace":"köhnə krujeva","chartreuse":"chartreuse","darkcyan":"tünd firuzəyi","yellow":"sarı","linen":"kətan","olive":"zeytun","gold":"qızıl","lawngreen":"çəmən yaşılı","lightyellow":"açıq sarı","tan":"günəş yanığı","darkviolet":"tünd bənövşəyi","lightslategrey":"tünd şifer bozu","grey":"boz","darkkhaki":"tünd haki","green":"yaşıl","deepskyblue":"tünd səma mavisi","aqua":"dəniz mavisi","sienna":"tünd qəhvəyi","mintcream":"nanəli krem","rosybrown":"çəhrayımsı qəhvəyi","mediumslateblue":"orta şıfer bozu","magenta":"magenta","lightseagreen":"açıq dəniz yaşılı","cyan":"firuzəyi","olivedrab":"əsgər yaşılı","darkgoldenrod":"tünd sarı","slateblue":"şifer mavisi","mediumaquamarine":"orta akvamarin","lavender":"lavanta","mediumseagreen":"orta dəniz yaşılı","maroon":"tünd qırmızı","darkslategray":"tünd şifer bozu","mediumturquoise":"orta firuzəyi","ghostwhite":"ala","darkblue":"tünd mavi","mediumvioletred":"orta bənövşəyi-qırmızı","brown":"qəhvəyi","lightgray":"açıq boz","sandybrown":"qum rəngi","pink":"çəhrayı","firebrick":"yanmış kərpic rəngi","indigo":"indigo","snow":"qar","darkorchid":"tünd orkide","turquoise":"firuzəyi","chocolate":"şokolad","springgreen":"bahar yaşılı","moccasin":"mokosen","navy":"tünd göy","lemonchiffon":"limon rəngi","teal":"teal mavi","floralwhite":"çiçək ağı","cornflowerblue":"peyğəmbər çiçək mavisi","paleturquoise":"solğun firuzəyi","purple":"tünd qırmızı","gainsboro":"gainsboro","plum":"gavalı","red":"qırmızı","blue":"göy","forestgreen":"tünd dəniz yaşılı","darkgreen":"tünd yaşıl","honeydew":"bal saqqızı","darkseagreen":"tünd dəniz yaşılı","lightcoral":"açıq mərcan","palevioletred":"solğun bənövşəyi-qırmızı","mediumpurple":"orta tünd qırmızı","saddlebrown":"açıq qəhvəyi","darkmagenta":"tünd magenta","thistle":"dəvə tikanı","whitesmoke":"ağ duman","wheat":"buğdayı","violet":"bənövşəyi","lightskyblue":"açıq səma mavisi","goldenrod":"sapsarı","mediumblue":"orta göy","skyblue":"göy mavisi","crimson":"crimson","darksalmon":"tünd somon","darkred":"tünd qırmızı","darkslategrey":"tünd şifer bozu","peru":"peru","lightgrey":"açıq boz","lightgoldenrodyellow":"açıq qızılı","blanchedalmond":"solğun badamı","aliceblue":"alice mavisi","bisque":"biskvit","slategray":"şifer bozu","palegoldenrod":"açıq qızılı","darkorange":"tünd narıncı","aquamarine":"akvamarin","lightgreen":"açıq yaşıl","burlywood":"sarımsı qəhvə rəngi","dodgerblue":"toz mavisi","darkgray":"tünd boz","lightcyan":"açıq firuzəyi","powderblue":"pudra mavisi","blueviolet":"mavi-bənövşəyi","orchid":"orkide","dimgray":"solğun boz","beige":"bej","fuchsia":"fuşya","lavenderblush":"lavanta tünd qırmızısı","hotpink":"tünd çəhrayı","steelblue":"metal mavisi","tomato":"pomidor","lightpink":"açıq çəhrayı","limegreen":"əhəng yaşılı","indianred":"qızıldərili qırmızısı","papayawhip":"papaya qamçısı","lightslategray":"açıq şifer bozu","gray":"boz","mediumorchid":"orta orkide","cornsilk":"qarğıdalı rəngi","black":"qara","seagreen":"dəniz yaşılı","darkslateblue":"tünd şifer bozu","khaki":"haki","lightblue":"açıq mavi","palegreen":"solğun yaşıl","azure":"azur mavisi","peachpuff":"açıq şaftalı","darkolivegreen":"tünd zeytun yaşılı","yellowgreen":"sarı-yaşıl"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/az/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/az/colors.js.uncompressed.js new file mode 100644 index 00000000..5092b468 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/az/colors.js.uncompressed.js @@ -0,0 +1,151 @@ +define( +"dojo/nls/az/colors", ({ + "lightsteelblue":"açıq metal mavi", + "orangered" :"narıncı qırmızı", + "midnightblue" :"gecə mavisi", + "cadetblue" :"dəniz mavisi" , + "seashell" :"dəniz səthi", + "slategrey" :"boz şifer rəngi", + "coral" :"mərcan", + "darkturquoise" :"tünd firuzəyi", + "antiquewhite" :"antik ağ", + "mediumspringgreen" :"orta bahar yaşılı", + "salmon" :"somon", + "darkgrey" :"tünd boz", + "ivory" :"fil dişi", + "greenyellow" :"yaşıl-sarı", + "mistyrose" :"gül qurusu", + "lightsalmon" :"açıq somon", + "silver" :"gümüşü", + "dimgrey" :"açıq boz", + "orange" :"narıncı", + "white" :"ağ", + "navajowhite" :"navajo ağı", + "royalblue" :"parlaq tünd mavi" , + "deeppink" :"tünd çəhrayı", + "lime" :"lomon yaşılı", + "oldlace" :"köhnə krujeva", + "chartreuse" :"chartreuse", + "darkcyan" :"tünd firuzəyi", + "yellow" :"sarı", + "linen" :"kətan", + "olive" :"zeytun", + "gold" :"qızıl", + "lawngreen" :"çəmən yaşılı", + "lightyellow" :"açıq sarı", + "tan" :"günəş yanığı", + "darkviolet" :"tünd bənövşəyi", + "lightslategrey" :"tünd şifer bozu", + "grey" :"boz", + "darkkhaki" :"tünd haki", + "green" :"yaşıl", + "deepskyblue" :"tünd səma mavisi", + "aqua" :"dəniz mavisi", + "sienna" :"tünd qəhvəyi", + "mintcream" :"nanəli krem", + "rosybrown" :"çəhrayımsı qəhvəyi", + "mediumslateblue" :"orta şıfer bozu", + "magenta" :"magenta", + "lightseagreen" :"açıq dəniz yaşılı", + "cyan" :"firuzəyi", + "olivedrab" :"əsgər yaşılı", + "darkgoldenrod" :"tünd sarı", + "slateblue" :"şifer mavisi", + "mediumaquamarine" :"orta akvamarin", + "lavender" :"lavanta", + "mediumseagreen" :"orta dəniz yaşılı", + "maroon" :"tünd qırmızı", + "darkslategray" :"tünd şifer bozu", + "mediumturquoise" :"orta firuzəyi", + "ghostwhite" :"ala", + "darkblue" :"tünd mavi", + "mediumvioletred" :"orta bənövşəyi-qırmızı", + "brown" :"qəhvəyi", + "lightgray" :"açıq boz", + "sandybrown" :"qum rəngi", + "pink" :"çəhrayı", + "firebrick" :"yanmış kərpic rəngi", + "indigo" :"indigo", + "snow" :"qar", + "darkorchid" :"tünd orkide", + "turquoise" :"firuzəyi", + "chocolate" :"şokolad", + "springgreen" :"bahar yaşılı", + "moccasin" :"mokosen", + "navy" :"tünd göy", + "lemonchiffon" :"limon rəngi", + "teal" :"teal mavi", + "floralwhite" :"çiçək ağı", + "cornflowerblue" :"peyğəmbər çiçək mavisi", + "paleturquoise" :"solğun firuzəyi", + "purple" :"tünd qırmızı", + "gainsboro" :"gainsboro", + "plum" :"gavalı", + "red" :"qırmızı", + "blue" :"göy", + "forestgreen" :"tünd dəniz yaşılı", + "darkgreen" :"tünd yaşıl", + "honeydew" :"bal saqqızı", + "darkseagreen" :"tünd dəniz yaşılı", + "lightcoral" :"açıq mərcan", + "palevioletred" :"solğun bənövşəyi-qırmızı", + "mediumpurple" :"orta tünd qırmızı", + "saddlebrown" :"açıq qəhvəyi", + "darkmagenta" :"tünd magenta", + "thistle" :"dəvə tikanı", + "whitesmoke" :"ağ duman", + "wheat" :"buğdayı", + "violet" :"bənövşəyi", + "lightskyblue" :"açıq səma mavisi" , + "goldenrod" :"sapsarı", + "mediumblue" :"orta göy", + "skyblue" :"göy mavisi", + "crimson" :"crimson", + "darksalmon" :"tünd somon", + "darkred" :"tünd qırmızı", + "darkslategrey" :"tünd şifer bozu", + "peru" :"peru", + "lightgrey" :"açıq boz", + "lightgoldenrodyellow" :"açıq qızılı", + "blanchedalmond" :"solğun badamı", + "aliceblue" :"alice mavisi", + "bisque" :"biskvit", + "slategray" :"şifer bozu", + "palegoldenrod" :"açıq qızılı", + "darkorange" :"tünd narıncı", + "aquamarine" :"akvamarin", + "lightgreen" :"açıq yaşıl", + "burlywood" :"sarımsı qəhvə rəngi", + "dodgerblue" :"toz mavisi", + "darkgray" :"tünd boz", + "lightcyan" :"açıq firuzəyi", + "powderblue" :"pudra mavisi", + "blueviolet" :"mavi-bənövşəyi", + "orchid" :"orkide", + "dimgray" :"solğun boz", + "beige" :"bej", + "fuchsia" :"fuşya", + "lavenderblush" :"lavanta tünd qırmızısı", + "hotpink" :"tünd çəhrayı", + "steelblue" :"metal mavisi", + "tomato" :"pomidor", + "lightpink" :"açıq çəhrayı", + "limegreen" :"əhəng yaşılı", + "indianred" :"qızıldərili qırmızısı", + "papayawhip" :"papaya qamçısı", + "lightslategray" :"açıq şifer bozu", + "gray" :"boz", + "mediumorchid" :"orta orkide", + "cornsilk" :"qarğıdalı rəngi", + "black" :"qara", + "seagreen" :"dəniz yaşılı", + "darkslateblue" :"tünd şifer bozu", + "khaki" :"haki", + "lightblue" :"açıq mavi", + "palegreen" :"solğun yaşıl", + "azure" :"azur mavisi", + "peachpuff" :"açıq şaftalı", + "darkolivegreen" :"tünd zeytun yaşılı", + "yellowgreen" :"sarı-yaşıl" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/bg/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/bg/colors.js new file mode 100644 index 00000000..dc3ebd7f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/bg/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/bg/colors",({aliceblue:"alice blue",antiquewhite:"antique white",aqua:"aqua",aquamarine:"aquamarine",azure:"azure",beige:"beige",bisque:"bisque",black:"black",blanchedalmond:"blanched almond",blue:"blue",blueviolet:"blue-violet",brown:"brown",burlywood:"burlywood",cadetblue:"cadet blue",chartreuse:"chartreuse",chocolate:"chocolate",coral:"coral",cornflowerblue:"cornflower blue",cornsilk:"cornsilk",crimson:"crimson",cyan:"cyan",darkblue:"dark blue",darkcyan:"dark cyan",darkgoldenrod:"dark goldenrod",darkgray:"dark gray",darkgreen:"dark green",darkgrey:"dark gray",darkkhaki:"dark khaki",darkmagenta:"dark magenta",darkolivegreen:"dark olive green",darkorange:"dark orange",darkorchid:"dark orchid",darkred:"dark red",darksalmon:"dark salmon",darkseagreen:"dark sea green",darkslateblue:"dark slate blue",darkslategray:"dark slate gray",darkslategrey:"dark slate gray",darkturquoise:"dark turquoise",darkviolet:"dark violet",deeppink:"deep pink",deepskyblue:"deep sky blue",dimgray:"dim gray",dimgrey:"dim gray",dodgerblue:"dodger blue",firebrick:"fire brick",floralwhite:"floral white",forestgreen:"forest green",fuchsia:"fuchsia",gainsboro:"gainsboro",ghostwhite:"ghost white",gold:"gold",goldenrod:"goldenrod",gray:"gray",green:"green",greenyellow:"green-yellow",grey:"gray",honeydew:"honeydew",hotpink:"hot pink",indianred:"indian red",indigo:"indigo",ivory:"ivory",khaki:"khaki",lavender:"lavender",lavenderblush:"lavender blush",lawngreen:"lawn green",lemonchiffon:"lemon chiffon",lightblue:"light blue",lightcoral:"light coral",lightcyan:"light cyan",lightgoldenrodyellow:"light goldenrod yellow",lightgray:"light gray",lightgreen:"light green",lightgrey:"light gray",lightpink:"light pink",lightsalmon:"light salmon",lightseagreen:"light sea green",lightskyblue:"light sky blue",lightslategray:"light slate gray",lightslategrey:"light slate gray",lightsteelblue:"light steel blue",lightyellow:"light yellow",lime:"lime",limegreen:"lime green",linen:"linen",magenta:"magenta",maroon:"maroon",mediumaquamarine:"medium aquamarine",mediumblue:"medium blue",mediumorchid:"medium orchid",mediumpurple:"medium purple",mediumseagreen:"medium sea green",mediumslateblue:"medium slate blue",mediumspringgreen:"medium spring green",mediumturquoise:"medium turquoise",mediumvioletred:"medium violet-red",midnightblue:"midnight blue",mintcream:"mint cream",mistyrose:"misty rose",moccasin:"moccasin",navajowhite:"navajo white",navy:"navy",oldlace:"old lace",olive:"olive",olivedrab:"olive drab",orange:"orange",orangered:"orange red",orchid:"orchid",palegoldenrod:"pale goldenrod",palegreen:"pale green",paleturquoise:"pale turquoise",palevioletred:"pale violet-red",papayawhip:"papaya whip",peachpuff:"peach puff",peru:"peru",pink:"pink",plum:"plum",powderblue:"powder blue",purple:"purple",red:"red",rosybrown:"rosy brown",royalblue:"royal blue",saddlebrown:"saddle brown",salmon:"salmon",sandybrown:"sandy brown",seagreen:"sea green",seashell:"seashell",sienna:"sienna",silver:"silver",skyblue:"sky blue",slateblue:"slate blue",slategray:"slate gray",slategrey:"slate gray",snow:"snow",springgreen:"spring green",steelblue:"steel blue",tan:"tan",teal:"teal",thistle:"thistle",tomato:"tomato",transparent:"transparent",turquoise:"turquoise",violet:"violet",wheat:"wheat",white:"white",whitesmoke:"white smoke",yellow:"yellow",yellowgreen:"yellow green"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/bg/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/bg/colors.js.uncompressed.js new file mode 100644 index 00000000..6c84038a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/bg/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/bg/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "alice blue", + antiquewhite: "antique white", + aqua: "aqua", + aquamarine: "aquamarine", + azure: "azure", + beige: "beige", + bisque: "bisque", + black: "black", + blanchedalmond: "blanched almond", + blue: "blue", + blueviolet: "blue-violet", + brown: "brown", + burlywood: "burlywood", + cadetblue: "cadet blue", + chartreuse: "chartreuse", + chocolate: "chocolate", + coral: "coral", + cornflowerblue: "cornflower blue", + cornsilk: "cornsilk", + crimson: "crimson", + cyan: "cyan", + darkblue: "dark blue", + darkcyan: "dark cyan", + darkgoldenrod: "dark goldenrod", + darkgray: "dark gray", + darkgreen: "dark green", + darkgrey: "dark gray", // same as darkgray + darkkhaki: "dark khaki", + darkmagenta: "dark magenta", + darkolivegreen: "dark olive green", + darkorange: "dark orange", + darkorchid: "dark orchid", + darkred: "dark red", + darksalmon: "dark salmon", + darkseagreen: "dark sea green", + darkslateblue: "dark slate blue", + darkslategray: "dark slate gray", + darkslategrey: "dark slate gray", // same as darkslategray + darkturquoise: "dark turquoise", + darkviolet: "dark violet", + deeppink: "deep pink", + deepskyblue: "deep sky blue", + dimgray: "dim gray", + dimgrey: "dim gray", // same as dimgray + dodgerblue: "dodger blue", + firebrick: "fire brick", + floralwhite: "floral white", + forestgreen: "forest green", + fuchsia: "fuchsia", + gainsboro: "gainsboro", + ghostwhite: "ghost white", + gold: "gold", + goldenrod: "goldenrod", + gray: "gray", + green: "green", + greenyellow: "green-yellow", + grey: "gray", // same as gray + honeydew: "honeydew", + hotpink: "hot pink", + indianred: "indian red", + indigo: "indigo", + ivory: "ivory", + khaki: "khaki", + lavender: "lavender", + lavenderblush: "lavender blush", + lawngreen: "lawn green", + lemonchiffon: "lemon chiffon", + lightblue: "light blue", + lightcoral: "light coral", + lightcyan: "light cyan", + lightgoldenrodyellow: "light goldenrod yellow", + lightgray: "light gray", + lightgreen: "light green", + lightgrey: "light gray", // same as lightgray + lightpink: "light pink", + lightsalmon: "light salmon", + lightseagreen: "light sea green", + lightskyblue: "light sky blue", + lightslategray: "light slate gray", + lightslategrey: "light slate gray", // same as lightslategray + lightsteelblue: "light steel blue", + lightyellow: "light yellow", + lime: "lime", + limegreen: "lime green", + linen: "linen", + magenta: "magenta", + maroon: "maroon", + mediumaquamarine: "medium aquamarine", + mediumblue: "medium blue", + mediumorchid: "medium orchid", + mediumpurple: "medium purple", + mediumseagreen: "medium sea green", + mediumslateblue: "medium slate blue", + mediumspringgreen: "medium spring green", + mediumturquoise: "medium turquoise", + mediumvioletred: "medium violet-red", + midnightblue: "midnight blue", + mintcream: "mint cream", + mistyrose: "misty rose", + moccasin: "moccasin", + navajowhite: "navajo white", + navy: "navy", + oldlace: "old lace", + olive: "olive", + olivedrab: "olive drab", + orange: "orange", + orangered: "orange red", + orchid: "orchid", + palegoldenrod: "pale goldenrod", + palegreen: "pale green", + paleturquoise: "pale turquoise", + palevioletred: "pale violet-red", + papayawhip: "papaya whip", + peachpuff: "peach puff", + peru: "peru", + pink: "pink", + plum: "plum", + powderblue: "powder blue", + purple: "purple", + red: "red", + rosybrown: "rosy brown", + royalblue: "royal blue", + saddlebrown: "saddle brown", + salmon: "salmon", + sandybrown: "sandy brown", + seagreen: "sea green", + seashell: "seashell", + sienna: "sienna", + silver: "silver", + skyblue: "sky blue", + slateblue: "slate blue", + slategray: "slate gray", + slategrey: "slate gray", // same as slategray + snow: "snow", + springgreen: "spring green", + steelblue: "steel blue", + tan: "tan", + teal: "teal", + thistle: "thistle", + tomato: "tomato", + transparent: "transparent", + turquoise: "turquoise", + violet: "violet", + wheat: "wheat", + white: "white", + whitesmoke: "white smoke", + yellow: "yellow", + yellowgreen: "yellow green" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ca/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ca/colors.js new file mode 100644 index 00000000..9b543aea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ca/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/ca/colors",({aliceblue:"blau cian clar",antiquewhite:"blanc antic",aqua:"aigua",aquamarine:"aiguamarina",azure:"atzur",beige:"beix",bisque:"crema",black:"negre",blanchedalmond:"ametlla pàl·lid",blue:"blau",blueviolet:"blau violeta",brown:"marró",burlywood:"marró arenós",cadetblue:"blau marí",chartreuse:"Llimona pàl·lid",chocolate:"xocolata",coral:"corall",cornflowerblue:"blau blauet",cornsilk:"cru",crimson:"carmesí",cyan:"cian",darkblue:"blau fosc",darkcyan:"cian fosc",darkgoldenrod:"ocre fosc",darkgray:"gris fosc",darkgreen:"verd fosc",darkgrey:"gris fosc",darkkhaki:"caqui fosc",darkmagenta:"magenta fosc",darkolivegreen:"verd oliva fosc",darkorange:"taronja fosc",darkorchid:"orquídia fosc",darkred:"vermell fosc",darksalmon:"salmó fosc",darkseagreen:"verd marí fosc",darkslateblue:"blau pissarra fosc",darkslategray:"gris pissarra fosc",darkslategrey:"gris pissarra fosc",darkturquoise:"turquesa fosc",darkviolet:"violeta fosc",deeppink:"rosa profund",deepskyblue:"blau cel profund",dimgray:"gris fosc",dimgrey:"gris fosc",dodgerblue:"blau Dodger",firebrick:"maó refractari",floralwhite:"blanc floral",forestgreen:"verd bosc",fuchsia:"fúcsia",gainsboro:"gainsboro",ghostwhite:"blanc fantasma",gold:"daurat",goldenrod:"ocre",gray:"gris",green:"verd",greenyellow:"verd grogós",grey:"gris",honeydew:"rosada de mel",hotpink:"rosa fúcsia",indianred:"vermell indi",indigo:"índigo",ivory:"marbre",khaki:"caqui",lavender:"lavanda",lavenderblush:"lavanda vermellosa",lawngreen:"verd gespa",lemonchiffon:"groc brisa",lightblue:"blau clar",lightcoral:"corall clar",lightcyan:"cian clar",lightgoldenrodyellow:"groc ocre clar",lightgray:"gris clar",lightgreen:"verd clar",lightgrey:"gris clar",lightpink:"rosa clar",lightsalmon:"salmó clar",lightseagreen:"verd marí clar",lightskyblue:"blau cel clar",lightslategray:"gris pissarra clar",lightslategrey:"gris pissarra clar",lightsteelblue:"blau acer clar",lightyellow:"groc clar",lime:"verd llimona",limegreen:"verd llimona verda",linen:"lli",magenta:"magenta",maroon:"marró vermellós",mediumaquamarine:"aiguamarina mitjana",mediumblue:"blau mitjà",mediumorchid:"orquídia mitjana",mediumpurple:"porpra mitjana",mediumseagreen:"verd marí mitjà",mediumslateblue:"blau pissarra mitjà",mediumspringgreen:"verd primavera mitjà",mediumturquoise:"turquesa mitjana",mediumvioletred:"vermell violeta mitjà",midnightblue:"blau mitjanit",mintcream:"menta pàl·lid",mistyrose:"rosa dens",moccasin:"mocassí",navajowhite:"blanc Navajo",navy:"blau marí",oldlace:"rosa cremós",olive:"oliva",olivedrab:"gris oliva",orange:"taronja",orangered:"taronja vermellós",orchid:"orquídia",palegoldenrod:"ocre pàl·lid",palegreen:"verd pàl·lid",paleturquoise:"turquesa pàl·lid",palevioletred:"vermell porpra pàl·lid",papayawhip:"préssec pastel",peachpuff:"préssec",peru:"Perú",pink:"rosa",plum:"pruna",powderblue:"blau grisós",purple:"porpra",red:"vermell",rosybrown:"marró rosat",royalblue:"blau marí intens",saddlebrown:"marró mitjà",salmon:"salmó",sandybrown:"marró arenós",seagreen:"verd marí",seashell:"petxina marina",sienna:"siena",silver:"argent",skyblue:"blau cel",slateblue:"blau pissarra",slategray:"gris pissarra",slategrey:"gris pissarra",snow:"neu",springgreen:"verd de primavera",steelblue:"blau acer",tan:"tan",teal:"verd blavós",thistle:"card",tomato:"tomàquet",transparent:"transparent",turquoise:"turquesa",violet:"violeta",wheat:"blat",white:"blanc",whitesmoke:"blanc fumat",yellow:"groc",yellowgreen:"verd grogós"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ca/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ca/colors.js.uncompressed.js new file mode 100644 index 00000000..520654d9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ca/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/ca/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "blau cian clar", + antiquewhite: "blanc antic", + aqua: "aigua", + aquamarine: "aiguamarina", + azure: "atzur", + beige: "beix", + bisque: "crema", + black: "negre", + blanchedalmond: "ametlla pàl·lid", + blue: "blau", + blueviolet: "blau violeta", + brown: "marró", + burlywood: "marró arenós", + cadetblue: "blau marí", + chartreuse: "Llimona pàl·lid", + chocolate: "xocolata", + coral: "corall", + cornflowerblue: "blau blauet", + cornsilk: "cru", + crimson: "carmesí", + cyan: "cian", + darkblue: "blau fosc", + darkcyan: "cian fosc", + darkgoldenrod: "ocre fosc", + darkgray: "gris fosc", + darkgreen: "verd fosc", + darkgrey: "gris fosc", // same as darkgray + darkkhaki: "caqui fosc", + darkmagenta: "magenta fosc", + darkolivegreen: "verd oliva fosc", + darkorange: "taronja fosc", + darkorchid: "orquídia fosc", + darkred: "vermell fosc", + darksalmon: "salmó fosc", + darkseagreen: "verd marí fosc", + darkslateblue: "blau pissarra fosc", + darkslategray: "gris pissarra fosc", + darkslategrey: "gris pissarra fosc", // same as darkslategray + darkturquoise: "turquesa fosc", + darkviolet: "violeta fosc", + deeppink: "rosa profund", + deepskyblue: "blau cel profund", + dimgray: "gris fosc", + dimgrey: "gris fosc", // same as dimgray + dodgerblue: "blau Dodger", + firebrick: "maó refractari", + floralwhite: "blanc floral", + forestgreen: "verd bosc", + fuchsia: "fúcsia", + gainsboro: "gainsboro", + ghostwhite: "blanc fantasma", + gold: "daurat", + goldenrod: "ocre", + gray: "gris", + green: "verd", + greenyellow: "verd grogós", + grey: "gris", // same as gray + honeydew: "rosada de mel", + hotpink: "rosa fúcsia", + indianred: "vermell indi", + indigo: "índigo", + ivory: "marbre", + khaki: "caqui", + lavender: "lavanda", + lavenderblush: "lavanda vermellosa", + lawngreen: "verd gespa", + lemonchiffon: "groc brisa", + lightblue: "blau clar", + lightcoral: "corall clar", + lightcyan: "cian clar", + lightgoldenrodyellow: "groc ocre clar", + lightgray: "gris clar", + lightgreen: "verd clar", + lightgrey: "gris clar", // same as lightgray + lightpink: "rosa clar", + lightsalmon: "salmó clar", + lightseagreen: "verd marí clar", + lightskyblue: "blau cel clar", + lightslategray: "gris pissarra clar", + lightslategrey: "gris pissarra clar", // same as lightslategray + lightsteelblue: "blau acer clar", + lightyellow: "groc clar", + lime: "verd llimona", + limegreen: "verd llimona verda", + linen: "lli", + magenta: "magenta", + maroon: "marró vermellós", + mediumaquamarine: "aiguamarina mitjana", + mediumblue: "blau mitjà", + mediumorchid: "orquídia mitjana", + mediumpurple: "porpra mitjana", + mediumseagreen: "verd marí mitjà", + mediumslateblue: "blau pissarra mitjà", + mediumspringgreen: "verd primavera mitjà", + mediumturquoise: "turquesa mitjana", + mediumvioletred: "vermell violeta mitjà", + midnightblue: "blau mitjanit", + mintcream: "menta pàl·lid", + mistyrose: "rosa dens", + moccasin: "mocassí", + navajowhite: "blanc Navajo", + navy: "blau marí", + oldlace: "rosa cremós", + olive: "oliva", + olivedrab: "gris oliva", + orange: "taronja", + orangered: "taronja vermellós", + orchid: "orquídia", + palegoldenrod: "ocre pàl·lid", + palegreen: "verd pàl·lid", + paleturquoise: "turquesa pàl·lid", + palevioletred: "vermell porpra pàl·lid", + papayawhip: "préssec pastel", + peachpuff: "préssec", + peru: "Perú", + pink: "rosa", + plum: "pruna", + powderblue: "blau grisós", + purple: "porpra", + red: "vermell", + rosybrown: "marró rosat", + royalblue: "blau marí intens", + saddlebrown: "marró mitjà", + salmon: "salmó", + sandybrown: "marró arenós", + seagreen: "verd marí", + seashell: "petxina marina", + sienna: "siena", + silver: "argent", + skyblue: "blau cel", + slateblue: "blau pissarra", + slategray: "gris pissarra", + slategrey: "gris pissarra", // same as slategray + snow: "neu", + springgreen: "verd de primavera", + steelblue: "blau acer", + tan: "tan", + teal: "verd blavós", + thistle: "card", + tomato: "tomàquet", + transparent: "transparent", + turquoise: "turquesa", + violet: "violeta", + wheat: "blat", + white: "blanc", + whitesmoke: "blanc fumat", + yellow: "groc", + yellowgreen: "verd grogós" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/colors.js new file mode 100644 index 00000000..cbab528b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/colors",{root:({aliceblue:"alice blue",antiquewhite:"antique white",aqua:"aqua",aquamarine:"aquamarine",azure:"azure",beige:"beige",bisque:"bisque",black:"black",blanchedalmond:"blanched almond",blue:"blue",blueviolet:"blue-violet",brown:"brown",burlywood:"burlywood",cadetblue:"cadet blue",chartreuse:"chartreuse",chocolate:"chocolate",coral:"coral",cornflowerblue:"cornflower blue",cornsilk:"cornsilk",crimson:"crimson",cyan:"cyan",darkblue:"dark blue",darkcyan:"dark cyan",darkgoldenrod:"dark goldenrod",darkgray:"dark gray",darkgreen:"dark green",darkgrey:"dark gray",darkkhaki:"dark khaki",darkmagenta:"dark magenta",darkolivegreen:"dark olive green",darkorange:"dark orange",darkorchid:"dark orchid",darkred:"dark red",darksalmon:"dark salmon",darkseagreen:"dark sea green",darkslateblue:"dark slate blue",darkslategray:"dark slate gray",darkslategrey:"dark slate gray",darkturquoise:"dark turquoise",darkviolet:"dark violet",deeppink:"deep pink",deepskyblue:"deep sky blue",dimgray:"dim gray",dimgrey:"dim gray",dodgerblue:"dodger blue",firebrick:"fire brick",floralwhite:"floral white",forestgreen:"forest green",fuchsia:"fuchsia",gainsboro:"gainsboro",ghostwhite:"ghost white",gold:"gold",goldenrod:"goldenrod",gray:"gray",green:"green",greenyellow:"green-yellow",grey:"gray",honeydew:"honeydew",hotpink:"hot pink",indianred:"indian red",indigo:"indigo",ivory:"ivory",khaki:"khaki",lavender:"lavender",lavenderblush:"lavender blush",lawngreen:"lawn green",lemonchiffon:"lemon chiffon",lightblue:"light blue",lightcoral:"light coral",lightcyan:"light cyan",lightgoldenrodyellow:"light goldenrod yellow",lightgray:"light gray",lightgreen:"light green",lightgrey:"light gray",lightpink:"light pink",lightsalmon:"light salmon",lightseagreen:"light sea green",lightskyblue:"light sky blue",lightslategray:"light slate gray",lightslategrey:"light slate gray",lightsteelblue:"light steel blue",lightyellow:"light yellow",lime:"lime",limegreen:"lime green",linen:"linen",magenta:"magenta",maroon:"maroon",mediumaquamarine:"medium aquamarine",mediumblue:"medium blue",mediumorchid:"medium orchid",mediumpurple:"medium purple",mediumseagreen:"medium sea green",mediumslateblue:"medium slate blue",mediumspringgreen:"medium spring green",mediumturquoise:"medium turquoise",mediumvioletred:"medium violet-red",midnightblue:"midnight blue",mintcream:"mint cream",mistyrose:"misty rose",moccasin:"moccasin",navajowhite:"navajo white",navy:"navy",oldlace:"old lace",olive:"olive",olivedrab:"olive drab",orange:"orange",orangered:"orange red",orchid:"orchid",palegoldenrod:"pale goldenrod",palegreen:"pale green",paleturquoise:"pale turquoise",palevioletred:"pale violet-red",papayawhip:"papaya whip",peachpuff:"peach puff",peru:"peru",pink:"pink",plum:"plum",powderblue:"powder blue",purple:"purple",red:"red",rosybrown:"rosy brown",royalblue:"royal blue",saddlebrown:"saddle brown",salmon:"salmon",sandybrown:"sandy brown",seagreen:"sea green",seashell:"seashell",sienna:"sienna",silver:"silver",skyblue:"sky blue",slateblue:"slate blue",slategray:"slate gray",slategrey:"slate gray",snow:"snow",springgreen:"spring green",steelblue:"steel blue",tan:"tan",teal:"teal",thistle:"thistle",tomato:"tomato",transparent:"transparent",turquoise:"turquoise",violet:"violet",wheat:"wheat",white:"white",whitesmoke:"white smoke",yellow:"yellow",yellowgreen:"yellow green"}),"zh":true,"zh-tw":true,"uk":true,"tr":true,"th":true,"sv":true,"sl":true,"sk":true,"ru":true,"ro":true,"pt":true,"pt-pt":true,"pl":true,"nl":true,"nb":true,"ko":true,"kk":true,"ja":true,"it":true,"id":true,"hu":true,"hr":true,"he":true,"fr":true,"fi":true,"es":true,"el":true,"de":true,"da":true,"cs":true,"ca":true,"bg":true,"az":true,"ar":true}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/colors.js.uncompressed.js new file mode 100644 index 00000000..038ceea0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/colors.js.uncompressed.js @@ -0,0 +1,194 @@ +define("dojo/nls/colors", { root: +//begin v1.x content +({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + +//Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). +//TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? +aliceblue: "alice blue", +antiquewhite: "antique white", +aqua: "aqua", +aquamarine: "aquamarine", +azure: "azure", +beige: "beige", +bisque: "bisque", +black: "black", +blanchedalmond: "blanched almond", +blue: "blue", +blueviolet: "blue-violet", +brown: "brown", +burlywood: "burlywood", +cadetblue: "cadet blue", +chartreuse: "chartreuse", +chocolate: "chocolate", +coral: "coral", +cornflowerblue: "cornflower blue", +cornsilk: "cornsilk", +crimson: "crimson", +cyan: "cyan", +darkblue: "dark blue", +darkcyan: "dark cyan", +darkgoldenrod: "dark goldenrod", +darkgray: "dark gray", +darkgreen: "dark green", +darkgrey: "dark gray", // same as darkgray +darkkhaki: "dark khaki", +darkmagenta: "dark magenta", +darkolivegreen: "dark olive green", +darkorange: "dark orange", +darkorchid: "dark orchid", +darkred: "dark red", +darksalmon: "dark salmon", +darkseagreen: "dark sea green", +darkslateblue: "dark slate blue", +darkslategray: "dark slate gray", +darkslategrey: "dark slate gray", // same as darkslategray +darkturquoise: "dark turquoise", +darkviolet: "dark violet", +deeppink: "deep pink", +deepskyblue: "deep sky blue", +dimgray: "dim gray", +dimgrey: "dim gray", // same as dimgray +dodgerblue: "dodger blue", +firebrick: "fire brick", +floralwhite: "floral white", +forestgreen: "forest green", +fuchsia: "fuchsia", +gainsboro: "gainsboro", +ghostwhite: "ghost white", +gold: "gold", +goldenrod: "goldenrod", +gray: "gray", +green: "green", +greenyellow: "green-yellow", +grey: "gray", // same as gray +honeydew: "honeydew", +hotpink: "hot pink", +indianred: "indian red", +indigo: "indigo", +ivory: "ivory", +khaki: "khaki", +lavender: "lavender", +lavenderblush: "lavender blush", +lawngreen: "lawn green", +lemonchiffon: "lemon chiffon", +lightblue: "light blue", +lightcoral: "light coral", +lightcyan: "light cyan", +lightgoldenrodyellow: "light goldenrod yellow", +lightgray: "light gray", +lightgreen: "light green", +lightgrey: "light gray", // same as lightgray +lightpink: "light pink", +lightsalmon: "light salmon", +lightseagreen: "light sea green", +lightskyblue: "light sky blue", +lightslategray: "light slate gray", +lightslategrey: "light slate gray", // same as lightslategray +lightsteelblue: "light steel blue", +lightyellow: "light yellow", +lime: "lime", +limegreen: "lime green", +linen: "linen", +magenta: "magenta", +maroon: "maroon", +mediumaquamarine: "medium aquamarine", +mediumblue: "medium blue", +mediumorchid: "medium orchid", +mediumpurple: "medium purple", +mediumseagreen: "medium sea green", +mediumslateblue: "medium slate blue", +mediumspringgreen: "medium spring green", +mediumturquoise: "medium turquoise", +mediumvioletred: "medium violet-red", +midnightblue: "midnight blue", +mintcream: "mint cream", +mistyrose: "misty rose", +moccasin: "moccasin", +navajowhite: "navajo white", +navy: "navy", +oldlace: "old lace", +olive: "olive", +olivedrab: "olive drab", +orange: "orange", +orangered: "orange red", +orchid: "orchid", +palegoldenrod: "pale goldenrod", +palegreen: "pale green", +paleturquoise: "pale turquoise", +palevioletred: "pale violet-red", +papayawhip: "papaya whip", +peachpuff: "peach puff", +peru: "peru", +pink: "pink", +plum: "plum", +powderblue: "powder blue", +purple: "purple", +red: "red", +rosybrown: "rosy brown", +royalblue: "royal blue", +saddlebrown: "saddle brown", +salmon: "salmon", +sandybrown: "sandy brown", +seagreen: "sea green", +seashell: "seashell", +sienna: "sienna", +silver: "silver", +skyblue: "sky blue", +slateblue: "slate blue", +slategray: "slate gray", +slategrey: "slate gray", // same as slategray +snow: "snow", +springgreen: "spring green", +steelblue: "steel blue", +tan: "tan", +teal: "teal", +thistle: "thistle", +tomato: "tomato", +transparent: "transparent", +turquoise: "turquoise", +violet: "violet", +wheat: "wheat", +white: "white", +whitesmoke: "white smoke", +yellow: "yellow", +yellowgreen: "yellow green" +}) +//end v1.x content +, +"zh": true, +"zh-tw": true, +"uk": true, +"tr": true, +"th": true, +"sv": true, +"sl": true, +"sk": true, +"ru": true, +"ro": true, +"pt": true, +"pt-pt": true, +"pl": true, +"nl": true, +"nb": true, +"ko": true, +"kk": true, +"ja": true, +"it": true, +"id": true, +"hu": true, +"hr": true, +"he": true, +"fr": true, +"fi": true, +"es": true, +"el": true, +"de": true, +"da": true, +"cs": true, +"ca": true, +"bg": true, +"az": true, +"ar": true +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/cs/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/cs/colors.js new file mode 100644 index 00000000..d8953682 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/cs/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/cs/colors",({aliceblue:"modravá",antiquewhite:"krémově bílá",aqua:"azurová",aquamarine:"akvamarínová",azure:"bledě azurová",beige:"bledě béžová",bisque:"bledě oranžová",black:"černá",blanchedalmond:"mandlová",blue:"modrá",blueviolet:"modrofialová",brown:"červenohnědá",burlywood:"krémová",cadetblue:"šedomodrá",chartreuse:"chartreuska",chocolate:"hnědobéžová",coral:"korálová červená",cornflowerblue:"chrpově modrá",cornsilk:"režná",crimson:"karmínová",cyan:"azurová",darkblue:"tmavě modrá",darkcyan:"tmavě azurová",darkgoldenrod:"tmavě béžová",darkgray:"tmavě šedá",darkgreen:"tmavě zelená",darkgrey:"tmavě šedá",darkkhaki:"pískově hnědá",darkmagenta:"tmavě purpurová",darkolivegreen:"tmavě olivová",darkorange:"tmavě oranžová",darkorchid:"tmavě orchidejová",darkred:"tmavě červená",darksalmon:"tmavě lososová",darkseagreen:"tmavá mořská zelená",darkslateblue:"tmavá břidlicová modrá",darkslategray:"tmavá břidlicová šedá",darkslategrey:"tmavá břidlicová šedá",darkturquoise:"tmavě tyrkysová",darkviolet:"tmavě fialová",deeppink:"sytě růžová",deepskyblue:"sytá nebeská modrá",dimgray:"kouřově šedá",dimgrey:"kouřově šedá",dodgerblue:"jasně modrá",firebrick:"cihlová",floralwhite:"květinově bílá",forestgreen:"lesní zelená",fuchsia:"fuchsiová",gainsboro:"bledě šedá",ghostwhite:"modravě bílá",gold:"zlatá",goldenrod:"béžová",gray:"šedá",green:"zelená",greenyellow:"zelenožlutá",grey:"šedá",honeydew:"nazelenalá",hotpink:"jasně růžová",indianred:"indiánská červená",indigo:"indigově modrá",ivory:"slonovinová",khaki:"písková",lavender:"levandulová",lavenderblush:"levandulová růžová",lawngreen:"jasně zelená",lemonchiffon:"světle citrónová",lightblue:"světle modrá",lightcoral:"světle korálová",lightcyan:"světle azurová",lightgoldenrodyellow:"světle žlutá",lightgray:"světle šedá",lightgreen:"světle zelená",lightgrey:"světle šedá",lightpink:"světle růžová",lightsalmon:"světle lososová",lightseagreen:"světlá mořská zelená",lightskyblue:"světlá nebeská modrá",lightslategray:"světlá břidlicová šedá",lightslategrey:"světlá břidlicová šedá",lightsteelblue:"světlá ocelová modrá",lightyellow:"bledě žlutá",lime:"limetková",limegreen:"limetkově zelená",linen:"bledě šedobéžová",magenta:"purpurová",maroon:"kaštanová",mediumaquamarine:"střední akvamarínová",mediumblue:"středně modrá",mediumorchid:"středně orchidejová",mediumpurple:"středně nachová",mediumseagreen:"střední mořská zelená",mediumslateblue:"střední břidlicová modrá",mediumspringgreen:"střední jarní zelená",mediumturquoise:"středně tyrkysová",mediumvioletred:"středně fialovočervená",midnightblue:"temně modrá",mintcream:"mentolová",mistyrose:"růžovobílá",moccasin:"bledě krémová",navajowhite:"světle krémová",navy:"námořnická modrá",oldlace:"světle béžová",olive:"olivová",olivedrab:"khaki",orange:"oranžová",orangered:"oranžovočervená",orchid:"orchidejová",palegoldenrod:"bledě písková",palegreen:"bledě zelená",paleturquoise:"bledě tyrkysová",palevioletred:"bledě fialovočervená",papayawhip:"papájová",peachpuff:"broskvová",peru:"karamelová",pink:"růžová",plum:"švestková",powderblue:"bledě modrá",purple:"nachová",red:"červená",rosybrown:"růžovohnědá",royalblue:"královská modrá",saddlebrown:"hnědá",salmon:"lososová",sandybrown:"oranžovohnědá",seagreen:"mořská zelená",seashell:"lasturová",sienna:"siena",silver:"stříbrná",skyblue:"nebeská modrá",slateblue:"břidlicová modrá",slategray:"břidlicová šedá",slategrey:"břidlicová šedá",snow:"sněhobílá",springgreen:"jarní zelená",steelblue:"ocelová modrá",tan:"šedobéžová",teal:"šedozelená",thistle:"bodláková",tomato:"tomatová",transparent:"průhledná",turquoise:"tyrkysová",violet:"fialová",wheat:"zlatohnědá",white:"bílá",whitesmoke:"kouřově bílá",yellow:"žlutá",yellowgreen:"žlutozelená"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/cs/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/cs/colors.js.uncompressed.js new file mode 100644 index 00000000..c625f216 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/cs/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/cs/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "modravá", + antiquewhite: "krémově bílá", + aqua: "azurová", + aquamarine: "akvamarínová", + azure: "bledě azurová", + beige: "bledě béžová", + bisque: "bledě oranžová", + black: "černá", + blanchedalmond: "mandlová", + blue: "modrá", + blueviolet: "modrofialová", + brown: "červenohnědá", + burlywood: "krémová", + cadetblue: "šedomodrá", + chartreuse: "chartreuska", + chocolate: "hnědobéžová", + coral: "korálová červená", + cornflowerblue: "chrpově modrá", + cornsilk: "režná", + crimson: "karmínová", + cyan: "azurová", + darkblue: "tmavě modrá", + darkcyan: "tmavě azurová", + darkgoldenrod: "tmavě béžová", + darkgray: "tmavě šedá", + darkgreen: "tmavě zelená", + darkgrey: "tmavě šedá", // same as darkgray + darkkhaki: "pískově hnědá", + darkmagenta: "tmavě purpurová", + darkolivegreen: "tmavě olivová", + darkorange: "tmavě oranžová", + darkorchid: "tmavě orchidejová", + darkred: "tmavě červená", + darksalmon: "tmavě lososová", + darkseagreen: "tmavá mořská zelená", + darkslateblue: "tmavá břidlicová modrá", + darkslategray: "tmavá břidlicová šedá", + darkslategrey: "tmavá břidlicová šedá", // same as darkslategray + darkturquoise: "tmavě tyrkysová", + darkviolet: "tmavě fialová", + deeppink: "sytě růžová", + deepskyblue: "sytá nebeská modrá", + dimgray: "kouřově šedá", + dimgrey: "kouřově šedá", // same as dimgray + dodgerblue: "jasně modrá", + firebrick: "cihlová", + floralwhite: "květinově bílá", + forestgreen: "lesní zelená", + fuchsia: "fuchsiová", + gainsboro: "bledě šedá", + ghostwhite: "modravě bílá", + gold: "zlatá", + goldenrod: "béžová", + gray: "šedá", + green: "zelená", + greenyellow: "zelenožlutá", + grey: "šedá", // same as gray + honeydew: "nazelenalá", + hotpink: "jasně růžová", + indianred: "indiánská červená", + indigo: "indigově modrá", + ivory: "slonovinová", + khaki: "písková", + lavender: "levandulová", + lavenderblush: "levandulová růžová", + lawngreen: "jasně zelená", + lemonchiffon: "světle citrónová", + lightblue: "světle modrá", + lightcoral: "světle korálová", + lightcyan: "světle azurová", + lightgoldenrodyellow: "světle žlutá", + lightgray: "světle šedá", + lightgreen: "světle zelená", + lightgrey: "světle šedá", // same as lightgray + lightpink: "světle růžová", + lightsalmon: "světle lososová", + lightseagreen: "světlá mořská zelená", + lightskyblue: "světlá nebeská modrá", + lightslategray: "světlá břidlicová šedá", + lightslategrey: "světlá břidlicová šedá", // same as lightslategray + lightsteelblue: "světlá ocelová modrá", + lightyellow: "bledě žlutá", + lime: "limetková", + limegreen: "limetkově zelená", + linen: "bledě šedobéžová", + magenta: "purpurová", + maroon: "kaštanová", + mediumaquamarine: "střední akvamarínová", + mediumblue: "středně modrá", + mediumorchid: "středně orchidejová", + mediumpurple: "středně nachová", + mediumseagreen: "střední mořská zelená", + mediumslateblue: "střední břidlicová modrá", + mediumspringgreen: "střední jarní zelená", + mediumturquoise: "středně tyrkysová", + mediumvioletred: "středně fialovočervená", + midnightblue: "temně modrá", + mintcream: "mentolová", + mistyrose: "růžovobílá", + moccasin: "bledě krémová", + navajowhite: "světle krémová", + navy: "námořnická modrá", + oldlace: "světle béžová", + olive: "olivová", + olivedrab: "khaki", + orange: "oranžová", + orangered: "oranžovočervená", + orchid: "orchidejová", + palegoldenrod: "bledě písková", + palegreen: "bledě zelená", + paleturquoise: "bledě tyrkysová", + palevioletred: "bledě fialovočervená", + papayawhip: "papájová", + peachpuff: "broskvová", + peru: "karamelová", + pink: "růžová", + plum: "švestková", + powderblue: "bledě modrá", + purple: "nachová", + red: "červená", + rosybrown: "růžovohnědá", + royalblue: "královská modrá", + saddlebrown: "hnědá", + salmon: "lososová", + sandybrown: "oranžovohnědá", + seagreen: "mořská zelená", + seashell: "lasturová", + sienna: "siena", + silver: "stříbrná", + skyblue: "nebeská modrá", + slateblue: "břidlicová modrá", + slategray: "břidlicová šedá", + slategrey: "břidlicová šedá", // same as slategray + snow: "sněhobílá", + springgreen: "jarní zelená", + steelblue: "ocelová modrá", + tan: "šedobéžová", + teal: "šedozelená", + thistle: "bodláková", + tomato: "tomatová", + transparent: "průhledná", + turquoise: "tyrkysová", + violet: "fialová", + wheat: "zlatohnědá", + white: "bílá", + whitesmoke: "kouřově bílá", + yellow: "žlutá", + yellowgreen: "žlutozelená" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/da/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/da/colors.js new file mode 100644 index 00000000..2b4734d4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/da/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/da/colors",({aliceblue:"babyblå",antiquewhite:"antikhvid",aqua:"akvablå",aquamarine:"akvamarin",azure:"azurblå",beige:"beige",bisque:"gulgrå",black:"sort",blanchedalmond:"blanceret mandel",blue:"blå",blueviolet:"blåviolet",brown:"brun",burlywood:"tobak",cadetblue:"kadetblå",chartreuse:"chartreuse",chocolate:"rust",coral:"koralrød",cornflowerblue:"kornblomstblå",cornsilk:"majs",crimson:"blodrød",cyan:"cyan",darkblue:"mørkeblå",darkcyan:"mørk cyan",darkgoldenrod:"mørk gyldenris",darkgray:"mørkegrå",darkgreen:"mørkegrøn",darkgrey:"mørkegrå",darkkhaki:"mørk khaki",darkmagenta:"mørk magenta",darkolivegreen:"mørk olivengrøn",darkorange:"mørk orange",darkorchid:"mørk orkide",darkred:"mørkerød",darksalmon:"mørk laksefarvet",darkseagreen:"mørk havgrøn",darkslateblue:"mørk skiferblå",darkslategray:"mørk skifergrå",darkslategrey:"mørk skifergrå",darkturquoise:"mørk turkis",darkviolet:"mørkelilla",deeppink:"dyb pink",deepskyblue:"dyb himmelblå",dimgray:"svag grå",dimgrey:"svag grå",dodgerblue:"dodgerblå",firebrick:"chamottesten",floralwhite:"blomsterhvid",forestgreen:"skovgrøn",fuchsia:"lyslilla",gainsboro:"gainsboro",ghostwhite:"spøgelseshvid",gold:"guld",goldenrod:"gyldenris",gray:"grå",green:"grøn",greenyellow:"grøngul",grey:"grå",honeydew:"honningdug",hotpink:"mørk rosa",indianred:"lys rødbrun",indigo:"indigo",ivory:"elfenben",khaki:"khaki",lavender:"lysviolet",lavenderblush:"lavendelrød",lawngreen:"græsgrøn",lemonchiffon:"citronfromage",lightblue:"lyseblå",lightcoral:"lys koralrød",lightcyan:"lys cyan",lightgoldenrodyellow:"lys gyldenrisgul",lightgray:"lysegrå",lightgreen:"lysegrøn",lightgrey:"lysegrå",lightpink:"lys pink",lightsalmon:"lys laksefarvet",lightseagreen:"lys havgrøn",lightskyblue:"lys himmelblå",lightslategray:"lys skifergrå",lightslategrey:"lys skifergrå",lightsteelblue:"lys stålblå",lightyellow:"lysegul",lime:"lime",limegreen:"limegrøn",linen:"lærred",magenta:"magenta",maroon:"rødbrun",mediumaquamarine:"mellem akvamarin",mediumblue:"mellemblå",mediumorchid:"mellem orkide",mediumpurple:"mellemlilla",mediumseagreen:"mellemhavgrøn",mediumslateblue:"mellemskiferblå",mediumspringgreen:"mellemforårsgrøn",mediumturquoise:"mellemturkis",mediumvioletred:"mellemviolet",midnightblue:"midnatsblå",mintcream:"pebermyntecreme",mistyrose:"blegrosa",moccasin:"fruesko",navajowhite:"navajo-hvid",navy:"marineblå",oldlace:"kniplingshvid",olive:"olivengrøn",olivedrab:"brungrøn",orange:"orange",orangered:"orangerød",orchid:"orkide",palegoldenrod:"bleg gyldenris",palegreen:"bleggrøn",paleturquoise:"bleg turkis",palevioletred:"blegviolet",papayawhip:"papaya",peachpuff:"fersken",peru:"peru",pink:"pink",plum:"blomme",powderblue:"pudderblå",purple:"lilla",red:"rød",rosybrown:"rosabrun",royalblue:"kongeblå",saddlebrown:"saddelbrun",salmon:"laksefarvet",sandybrown:"sandbrun",seagreen:"havgrøn",seashell:"muslingeskal",sienna:"sienna",silver:"sølv",skyblue:"himmelblå",slateblue:"skiferblå",slategray:"skifergrå",slategrey:"skifergrå",snow:"sne",springgreen:"forårsgrøn",steelblue:"metalblå",tan:"tan",teal:"blågrøn",thistle:"tidsel",tomato:"tomat",transparent:"transparent",turquoise:"turkis",violet:"lilla",wheat:"korngul",white:"hvid",whitesmoke:"hvid røg",yellow:"gul",yellowgreen:"gulgrøn"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/da/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/da/colors.js.uncompressed.js new file mode 100644 index 00000000..4b40f483 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/da/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/da/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "babyblå", + antiquewhite: "antikhvid", + aqua: "akvablå", + aquamarine: "akvamarin", + azure: "azurblå", + beige: "beige", + bisque: "gulgrå", + black: "sort", + blanchedalmond: "blanceret mandel", + blue: "blå", + blueviolet: "blåviolet", + brown: "brun", + burlywood: "tobak", + cadetblue: "kadetblå", + chartreuse: "chartreuse", + chocolate: "rust", + coral: "koralrød", + cornflowerblue: "kornblomstblå", + cornsilk: "majs", + crimson: "blodrød", + cyan: "cyan", + darkblue: "mørkeblå", + darkcyan: "mørk cyan", + darkgoldenrod: "mørk gyldenris", + darkgray: "mørkegrå", + darkgreen: "mørkegrøn", + darkgrey: "mørkegrå", // same as darkgray + darkkhaki: "mørk khaki", + darkmagenta: "mørk magenta", + darkolivegreen: "mørk olivengrøn", + darkorange: "mørk orange", + darkorchid: "mørk orkide", + darkred: "mørkerød", + darksalmon: "mørk laksefarvet", + darkseagreen: "mørk havgrøn", + darkslateblue: "mørk skiferblå", + darkslategray: "mørk skifergrå", + darkslategrey: "mørk skifergrå", // same as darkslategray + darkturquoise: "mørk turkis", + darkviolet: "mørkelilla", + deeppink: "dyb pink", + deepskyblue: "dyb himmelblå", + dimgray: "svag grå", + dimgrey: "svag grå", // same as dimgray + dodgerblue: "dodgerblå", + firebrick: "chamottesten", + floralwhite: "blomsterhvid", + forestgreen: "skovgrøn", + fuchsia: "lyslilla", + gainsboro: "gainsboro", + ghostwhite: "spøgelseshvid", + gold: "guld", + goldenrod: "gyldenris", + gray: "grå", + green: "grøn", + greenyellow: "grøngul", + grey: "grå", // same as gray + honeydew: "honningdug", + hotpink: "mørk rosa", + indianred: "lys rødbrun", + indigo: "indigo", + ivory: "elfenben", + khaki: "khaki", + lavender: "lysviolet", + lavenderblush: "lavendelrød", + lawngreen: "græsgrøn", + lemonchiffon: "citronfromage", + lightblue: "lyseblå", + lightcoral: "lys koralrød", + lightcyan: "lys cyan", + lightgoldenrodyellow: "lys gyldenrisgul", + lightgray: "lysegrå", + lightgreen: "lysegrøn", + lightgrey: "lysegrå", // same as lightgray + lightpink: "lys pink", + lightsalmon: "lys laksefarvet", + lightseagreen: "lys havgrøn", + lightskyblue: "lys himmelblå", + lightslategray: "lys skifergrå", + lightslategrey: "lys skifergrå", // same as lightslategray + lightsteelblue: "lys stålblå", + lightyellow: "lysegul", + lime: "lime", + limegreen: "limegrøn", + linen: "lærred", + magenta: "magenta", + maroon: "rødbrun", + mediumaquamarine: "mellem akvamarin", + mediumblue: "mellemblå", + mediumorchid: "mellem orkide", + mediumpurple: "mellemlilla", + mediumseagreen: "mellemhavgrøn", + mediumslateblue: "mellemskiferblå", + mediumspringgreen: "mellemforårsgrøn", + mediumturquoise: "mellemturkis", + mediumvioletred: "mellemviolet", + midnightblue: "midnatsblå", + mintcream: "pebermyntecreme", + mistyrose: "blegrosa", + moccasin: "fruesko", + navajowhite: "navajo-hvid", + navy: "marineblå", + oldlace: "kniplingshvid", + olive: "olivengrøn", + olivedrab: "brungrøn", + orange: "orange", + orangered: "orangerød", + orchid: "orkide", + palegoldenrod: "bleg gyldenris", + palegreen: "bleggrøn", + paleturquoise: "bleg turkis", + palevioletred: "blegviolet", + papayawhip: "papaya", + peachpuff: "fersken", + peru: "peru", + pink: "pink", + plum: "blomme", + powderblue: "pudderblå", + purple: "lilla", + red: "rød", + rosybrown: "rosabrun", + royalblue: "kongeblå", + saddlebrown: "saddelbrun", + salmon: "laksefarvet", + sandybrown: "sandbrun", + seagreen: "havgrøn", + seashell: "muslingeskal", + sienna: "sienna", + silver: "sølv", + skyblue: "himmelblå", + slateblue: "skiferblå", + slategray: "skifergrå", + slategrey: "skifergrå", // same as slategray + snow: "sne", + springgreen: "forårsgrøn", + steelblue: "metalblå", + tan: "tan", + teal: "blågrøn", + thistle: "tidsel", + tomato: "tomat", + transparent: "transparent", + turquoise: "turkis", + violet: "lilla", + wheat: "korngul", + white: "hvid", + whitesmoke: "hvid røg", + yellow: "gul", + yellowgreen: "gulgrøn" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/de/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/de/colors.js new file mode 100644 index 00000000..c89c171c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/de/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/de/colors",({aliceblue:"Alice-blau",antiquewhite:"Antikweiß",aqua:"Wasserblau",aquamarine:"Aquamarin",azure:"Azur",beige:"Beige",bisque:"Bisquit",black:"Schwarz",blanchedalmond:"Mandelweiß",blue:"Blau",blueviolet:"Blauviolett",brown:"Braun",burlywood:"Burlywood",cadetblue:"Kadettenblau",chartreuse:"Helles Gelbgrün",chocolate:"Schokoladenbraun",coral:"Koralle",cornflowerblue:"Kornblumenblau",cornsilk:"Kornseide",crimson:"Karmesinrot",cyan:"Zyan",darkblue:"Dunkelblau",darkcyan:"Dunkelzyan",darkgoldenrod:"Dunkelgoldgelb",darkgray:"Dunkelgrau",darkgreen:"Dunkelgrün",darkgrey:"Dunkelgrau",darkkhaki:"Dunkelkhaki",darkmagenta:"Dunkelmagenta",darkolivegreen:"Dunkelolivgrün",darkorange:"Dunkelorange",darkorchid:"Dunkelorchidee",darkred:"Dunkelrot",darksalmon:"Dunkellachs",darkseagreen:"Dunkles Meergrün",darkslateblue:"Dunkelschieferblau",darkslategray:"Dunkelschiefergrau",darkslategrey:"Dunkelschiefergrau",darkturquoise:"Dunkeltürkis",darkviolet:"Dunkelviolett",deeppink:"Tiefrosa",deepskyblue:"Dunkles Himmelblau",dimgray:"Blassgrau",dimgrey:"Blassgrau",dodgerblue:"Dodger-blau",firebrick:"Schamottestein",floralwhite:"Blütenweiß",forestgreen:"Forstgrün",fuchsia:"Fuchsia",gainsboro:"Gainsboro",ghostwhite:"Geisterweiß",gold:"Gold",goldenrod:"Goldgelb",gray:"Grau",green:"Grün",greenyellow:"Grüngelb",grey:"Grau",honeydew:"Honigtau",hotpink:"Knallrosa",indianred:"Indischrot",indigo:"Indigoblau",ivory:"Elfenbein",khaki:"Khaki",lavender:"Lavendelblau",lavenderblush:"Lavendelhauch",lawngreen:"Grasgrün",lemonchiffon:"Zitronenchiffon",lightblue:"Hellblau",lightcoral:"Hellkoralle",lightcyan:"Hellzyan",lightgoldenrodyellow:"Hellgoldgelb",lightgray:"Hellgrau",lightgreen:"Hellgrün",lightgrey:"Hellgrau",lightpink:"Hellrosa",lightsalmon:"Helllachs",lightseagreen:"Helles Meergrün",lightskyblue:"Helles Himmelblau",lightslategray:"Helles Schiefergrau",lightslategrey:"Helles Schiefergrau",lightsteelblue:"Helles Stahlblau",lightyellow:"Hellgelb",lime:"Limone",limegreen:"Limonengrün",linen:"Leinen",magenta:"Magenta",maroon:"Kastanienbraun",mediumaquamarine:"Mittelaquamarin",mediumblue:"Mittelblau",mediumorchid:"Mittelorchidee",mediumpurple:"Mittelpurpur",mediumseagreen:"Mittelmeeresgrün",mediumslateblue:"Mittelschieferblau ",mediumspringgreen:"Mittelfrühlingsgrün",mediumturquoise:"Mitteltürkis ",mediumvioletred:"Mittelviolettrot ",midnightblue:"Mitternachtblau",mintcream:"Mintcreme",mistyrose:"Blassrose",moccasin:"Mokassin",navajowhite:"Navajo-weiß",navy:"Marineblau",oldlace:"Alte Spitze",olive:"Oliv",olivedrab:"Olivgrau",orange:"Orange",orangered:"Orangerot",orchid:"Orchidee",palegoldenrod:"Blassgoldgelb",palegreen:"Blassgrün",paleturquoise:"Blasstürkis",palevioletred:"Blassviolettrot ",papayawhip:"Papayacreme",peachpuff:"Pfirsich",peru:"Peru",pink:"Rosa",plum:"Pflaume",powderblue:"Pulverblau",purple:"Purpurrot",red:"Rot",rosybrown:"Rosigbraun",royalblue:"Königsblau",saddlebrown:"Sattelbraun",salmon:"Lachs",sandybrown:"Sandbraun",seagreen:"Meeresgrün",seashell:"Muschelweiß",sienna:"Sienna",silver:"Silbergrau",skyblue:"Himmelblau",slateblue:"Schieferblau",slategray:"Schiefergrau",slategrey:"Schiefergrau",snow:"Schneeweiß",springgreen:"Frühlingsgrün",steelblue:"Stahlblau",tan:"Hautfarben",teal:"Smaragdgrün",thistle:"Distel",tomato:"Tomatenrot",transparent:"Transparent",turquoise:"Türkis",violet:"Violett",wheat:"Weizen",white:"Weiß",whitesmoke:"Rauchweiß",yellow:"Gelb",yellowgreen:"Gelbgrün"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/de/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/de/colors.js.uncompressed.js new file mode 100644 index 00000000..8d376c49 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/de/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/de/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "Alice-blau", + antiquewhite: "Antikweiß", + aqua: "Wasserblau", + aquamarine: "Aquamarin", + azure: "Azur", + beige: "Beige", + bisque: "Bisquit", + black: "Schwarz", + blanchedalmond: "Mandelweiß", + blue: "Blau", + blueviolet: "Blauviolett", + brown: "Braun", + burlywood: "Burlywood", + cadetblue: "Kadettenblau", + chartreuse: "Helles Gelbgrün", + chocolate: "Schokoladenbraun", + coral: "Koralle", + cornflowerblue: "Kornblumenblau", + cornsilk: "Kornseide", + crimson: "Karmesinrot", + cyan: "Zyan", + darkblue: "Dunkelblau", + darkcyan: "Dunkelzyan", + darkgoldenrod: "Dunkelgoldgelb", + darkgray: "Dunkelgrau", + darkgreen: "Dunkelgrün", + darkgrey: "Dunkelgrau", // same as darkgray + darkkhaki: "Dunkelkhaki", + darkmagenta: "Dunkelmagenta", + darkolivegreen: "Dunkelolivgrün", + darkorange: "Dunkelorange", + darkorchid: "Dunkelorchidee", + darkred: "Dunkelrot", + darksalmon: "Dunkellachs", + darkseagreen: "Dunkles Meergrün", + darkslateblue: "Dunkelschieferblau", + darkslategray: "Dunkelschiefergrau", + darkslategrey: "Dunkelschiefergrau", // same as darkslategray + darkturquoise: "Dunkeltürkis", + darkviolet: "Dunkelviolett", + deeppink: "Tiefrosa", + deepskyblue: "Dunkles Himmelblau", + dimgray: "Blassgrau", + dimgrey: "Blassgrau", // same as dimgray + dodgerblue: "Dodger-blau", + firebrick: "Schamottestein", + floralwhite: "Blütenweiß", + forestgreen: "Forstgrün", + fuchsia: "Fuchsia", + gainsboro: "Gainsboro", + ghostwhite: "Geisterweiß", + gold: "Gold", + goldenrod: "Goldgelb", + gray: "Grau", + green: "Grün", + greenyellow: "Grüngelb", + grey: "Grau", // same as gray + honeydew: "Honigtau", + hotpink: "Knallrosa", + indianred: "Indischrot", + indigo: "Indigoblau", + ivory: "Elfenbein", + khaki: "Khaki", + lavender: "Lavendelblau", + lavenderblush: "Lavendelhauch", + lawngreen: "Grasgrün", + lemonchiffon: "Zitronenchiffon", + lightblue: "Hellblau", + lightcoral: "Hellkoralle", + lightcyan: "Hellzyan", + lightgoldenrodyellow: "Hellgoldgelb", + lightgray: "Hellgrau", + lightgreen: "Hellgrün", + lightgrey: "Hellgrau", // same as lightgray + lightpink: "Hellrosa", + lightsalmon: "Helllachs", + lightseagreen: "Helles Meergrün", + lightskyblue: "Helles Himmelblau", + lightslategray: "Helles Schiefergrau", + lightslategrey: "Helles Schiefergrau", // same as lightslategray + lightsteelblue: "Helles Stahlblau", + lightyellow: "Hellgelb", + lime: "Limone", + limegreen: "Limonengrün", + linen: "Leinen", + magenta: "Magenta", + maroon: "Kastanienbraun", + mediumaquamarine: "Mittelaquamarin", + mediumblue: "Mittelblau", + mediumorchid: "Mittelorchidee", + mediumpurple: "Mittelpurpur", + mediumseagreen: "Mittelmeeresgrün", + mediumslateblue: "Mittelschieferblau ", + mediumspringgreen: "Mittelfrühlingsgrün", + mediumturquoise: "Mitteltürkis ", + mediumvioletred: "Mittelviolettrot ", + midnightblue: "Mitternachtblau", + mintcream: "Mintcreme", + mistyrose: "Blassrose", + moccasin: "Mokassin", + navajowhite: "Navajo-weiß", + navy: "Marineblau", + oldlace: "Alte Spitze", + olive: "Oliv", + olivedrab: "Olivgrau", + orange: "Orange", + orangered: "Orangerot", + orchid: "Orchidee", + palegoldenrod: "Blassgoldgelb", + palegreen: "Blassgrün", + paleturquoise: "Blasstürkis", + palevioletred: "Blassviolettrot ", + papayawhip: "Papayacreme", + peachpuff: "Pfirsich", + peru: "Peru", + pink: "Rosa", + plum: "Pflaume", + powderblue: "Pulverblau", + purple: "Purpurrot", + red: "Rot", + rosybrown: "Rosigbraun", + royalblue: "Königsblau", + saddlebrown: "Sattelbraun", + salmon: "Lachs", + sandybrown: "Sandbraun", + seagreen: "Meeresgrün", + seashell: "Muschelweiß", + sienna: "Sienna", + silver: "Silbergrau", + skyblue: "Himmelblau", + slateblue: "Schieferblau", + slategray: "Schiefergrau", + slategrey: "Schiefergrau", // same as slategray + snow: "Schneeweiß", + springgreen: "Frühlingsgrün", + steelblue: "Stahlblau", + tan: "Hautfarben", + teal: "Smaragdgrün", + thistle: "Distel", + tomato: "Tomatenrot", + transparent: "Transparent", + turquoise: "Türkis", + violet: "Violett", + wheat: "Weizen", + white: "Weiß", + whitesmoke: "Rauchweiß", + yellow: "Gelb", + yellowgreen: "Gelbgrün" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/el/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/el/colors.js new file mode 100644 index 00000000..6c6b819b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/el/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/el/colors",({aliceblue:"σιέλ",antiquewhite:"ξεθωριασμένο λευκό",aqua:"γαλάζιο",aquamarine:"γαλαζοπράσινο",azure:"μπλε του ουρανού",beige:"μπεζ",bisque:"σκούρο κρεμ",black:"μαύρο",blanchedalmond:"ζαχαρί",blue:"μπλε",blueviolet:"βιολετί",brown:"καφέ",burlywood:"καφέ του ξύλου",cadetblue:"μπλε του στρατού",chartreuse:"φωτεινό κιτρινοπράσινο",chocolate:"σοκολατί",coral:"κοραλί",cornflowerblue:"μεσαίο μπλε",cornsilk:"ασημί του καλαμποκιού",crimson:"βαθύ κόκκινο",cyan:"κυανό",darkblue:"σκούρο μπλε",darkcyan:"σκούρο κυανό",darkgoldenrod:"σκούρο χρυσοκίτρινο",darkgray:"σκούρο γκρι",darkgreen:"σκούρο πράσινο",darkgrey:"σκούρο γκρι",darkkhaki:"σκούρο χακί",darkmagenta:"σκούρο ματζέντα",darkolivegreen:"σκούρο πράσινο λαδί",darkorange:"σκούρο πορτοκαλί",darkorchid:"σκούρα ορχιδέα",darkred:"σκούρο κόκκινο",darksalmon:"σκούρο σομόν",darkseagreen:"σκούρο πράσινο της θάλασσας",darkslateblue:"σκούρο μεταλλικό μπλε",darkslategray:"σκούρο μεταλλικό γκρι",darkslategrey:"σκούρο μεταλλικό γκρι",darkturquoise:"σκούρο τυρκουάζ",darkviolet:"σκούρο βιολετί",deeppink:"βαθύ ροζ",deepskyblue:"βαθύ μπλε το ουρανού",dimgray:"αχνό γκρι",dimgrey:"αχνό γκρι",dodgerblue:"σκούρο ελεκτρίκ",firebrick:"κεραμιδί",floralwhite:"λευκό των ανθών",forestgreen:"πράσινο του δάσους",fuchsia:"φούξια",gainsboro:"γκρι σιέλ",ghostwhite:"άσπρο",gold:"χρυσαφί",goldenrod:"χρυσοκίτρινο",gray:"γκρι",green:"πράσινο",greenyellow:"πρασινοκίτρινο",grey:"γκρι",honeydew:"μελί",hotpink:"έντονο ροζ",indianred:"ινδικό κόκκινο",indigo:"λουλακί",ivory:"ιβουάρ",khaki:"χακί",lavender:"λίλα",lavenderblush:"μωβ λεβάντας",lawngreen:"σκούρο πράσινο",lemonchiffon:"λεμονί",lightblue:"ανοιχτό μπλε",lightcoral:"ανοιχτό κοραλί",lightcyan:"ανοιχτό κυανό",lightgoldenrodyellow:"ανοιχτό χρυσοκίτρινο",lightgray:"ανοιχτό γκρι",lightgreen:"ανοιχτό πράσινο",lightgrey:"ανοιχτό γκρι",lightpink:"ανοιχτό ροζ",lightsalmon:"ανοιχτό σομόν",lightseagreen:"ανοιχτό πράσινο της θάλασσας",lightskyblue:"ανοιχτό μπλε το ουρανού",lightslategray:"ανοιχτό μεταλλικό γκρι",lightslategrey:"ανοιχτό μεταλλικό γκρι",lightsteelblue:"ανοιχτό μπλε ατσαλιού",lightyellow:"ανοιχτό κίτρινο",lime:"λαχανί",limegreen:"πράσινο λαχανί",linen:"σπαγγί",magenta:"ματζέντα",maroon:"βυσσινί",mediumaquamarine:"μεσαίο γαλαζοπράσινο",mediumblue:"μεσαίο μπλε",mediumorchid:"μεσαία ορχιδέα",mediumpurple:"μεσαίο μωβ",mediumseagreen:"μεσαίο πράσινο της θάλασσας",mediumslateblue:"μεσαίο μεταλλικό μπλε",mediumspringgreen:"μεσαίο πράσινο της άνοιξης",mediumturquoise:"μεσαίο τυρκουάζ",mediumvioletred:"μεσαίο κόκκινο βιολετί",midnightblue:"πολύ σκούρο μπλε",mintcream:"βεραμάν",mistyrose:"τριανταφυλλί",moccasin:"μόκα",navajowhite:"άσπρο Ναβάχο",navy:"μπλε του ναυτικού",oldlace:"εκρού",olive:"πράσινο λαδί",olivedrab:"λαδί",orange:"πορτοκαλί",orangered:"πορτοκαλοκόκκινο",orchid:"ορχιδέα",palegoldenrod:"αχνό χρυσοκίτρινο",palegreen:"αχνό πράσινο",paleturquoise:"αχνό τυρκουάζ",palevioletred:"αχνό κόκκινο βιολετί",papayawhip:"αχνό ροζ",peachpuff:"ροδακινί",peru:"περού",pink:"ροζ",plum:"δαμασκηνί",powderblue:"αχνό μπλε",purple:"μωβ",red:"κόκκινο",rosybrown:"καστανό",royalblue:"έντονο μπλε",saddlebrown:"βαθύ καφέ",salmon:"σομόν",sandybrown:"μπεζ της άμμου",seagreen:"πράσινο της θάλασσας",seashell:"κοχύλι",sienna:"καφεκίτρινο",silver:"ασημί",skyblue:"μπλε του ουρανού",slateblue:"μεταλλικό μπλε",slategray:"μεταλλικό γκρι",slategrey:"μεταλλικό γκρι",snow:"χιονί",springgreen:"πράσινο της άνοιξης",steelblue:"μπλε ατσαλιού",tan:"ώχρα",teal:"πετρόλ",thistle:"μωβ βιολετί",tomato:"κόκκινο της ντομάτας",transparent:"διαφανές",turquoise:"τυρκουάζ",violet:"βιολετί",wheat:"σταρένιο",white:"λευκό",whitesmoke:"λευκός καπνός",yellow:"κίτρινο",yellowgreen:"κιτρινοπράσινο"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/el/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/el/colors.js.uncompressed.js new file mode 100644 index 00000000..8f4bc0ec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/el/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/el/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "σιέλ", + antiquewhite: "ξεθωριασμένο λευκό", + aqua: "γαλάζιο", + aquamarine: "γαλαζοπράσινο", + azure: "μπλε του ουρανού", + beige: "μπεζ", + bisque: "σκούρο κρεμ", + black: "μαύρο", + blanchedalmond: "ζαχαρί", + blue: "μπλε", + blueviolet: "βιολετί", + brown: "καφέ", + burlywood: "καφέ του ξύλου", + cadetblue: "μπλε του στρατού", + chartreuse: "φωτεινό κιτρινοπράσινο", + chocolate: "σοκολατί", + coral: "κοραλί", + cornflowerblue: "μεσαίο μπλε", + cornsilk: "ασημί του καλαμποκιού", + crimson: "βαθύ κόκκινο", + cyan: "κυανό", + darkblue: "σκούρο μπλε", + darkcyan: "σκούρο κυανό", + darkgoldenrod: "σκούρο χρυσοκίτρινο", + darkgray: "σκούρο γκρι", + darkgreen: "σκούρο πράσινο", + darkgrey: "σκούρο γκρι", // same as darkgray + darkkhaki: "σκούρο χακί", + darkmagenta: "σκούρο ματζέντα", + darkolivegreen: "σκούρο πράσινο λαδί", + darkorange: "σκούρο πορτοκαλί", + darkorchid: "σκούρα ορχιδέα", + darkred: "σκούρο κόκκινο", + darksalmon: "σκούρο σομόν", + darkseagreen: "σκούρο πράσινο της θάλασσας", + darkslateblue: "σκούρο μεταλλικό μπλε", + darkslategray: "σκούρο μεταλλικό γκρι", + darkslategrey: "σκούρο μεταλλικό γκρι", // same as darkslategray + darkturquoise: "σκούρο τυρκουάζ", + darkviolet: "σκούρο βιολετί", + deeppink: "βαθύ ροζ", + deepskyblue: "βαθύ μπλε το ουρανού", + dimgray: "αχνό γκρι", + dimgrey: "αχνό γκρι", // same as dimgray + dodgerblue: "σκούρο ελεκτρίκ", + firebrick: "κεραμιδί", + floralwhite: "λευκό των ανθών", + forestgreen: "πράσινο του δάσους", + fuchsia: "φούξια", + gainsboro: "γκρι σιέλ", + ghostwhite: "άσπρο", + gold: "χρυσαφί", + goldenrod: "χρυσοκίτρινο", + gray: "γκρι", + green: "πράσινο", + greenyellow: "πρασινοκίτρινο", + grey: "γκρι", // same as gray + honeydew: "μελί", + hotpink: "έντονο ροζ", + indianred: "ινδικό κόκκινο", + indigo: "λουλακί", + ivory: "ιβουάρ", + khaki: "χακί", + lavender: "λίλα", + lavenderblush: "μωβ λεβάντας", + lawngreen: "σκούρο πράσινο", + lemonchiffon: "λεμονί", + lightblue: "ανοιχτό μπλε", + lightcoral: "ανοιχτό κοραλί", + lightcyan: "ανοιχτό κυανό", + lightgoldenrodyellow: "ανοιχτό χρυσοκίτρινο", + lightgray: "ανοιχτό γκρι", + lightgreen: "ανοιχτό πράσινο", + lightgrey: "ανοιχτό γκρι", // same as lightgray + lightpink: "ανοιχτό ροζ", + lightsalmon: "ανοιχτό σομόν", + lightseagreen: "ανοιχτό πράσινο της θάλασσας", + lightskyblue: "ανοιχτό μπλε το ουρανού", + lightslategray: "ανοιχτό μεταλλικό γκρι", + lightslategrey: "ανοιχτό μεταλλικό γκρι", // same as lightslategray + lightsteelblue: "ανοιχτό μπλε ατσαλιού", + lightyellow: "ανοιχτό κίτρινο", + lime: "λαχανί", + limegreen: "πράσινο λαχανί", + linen: "σπαγγί", + magenta: "ματζέντα", + maroon: "βυσσινί", + mediumaquamarine: "μεσαίο γαλαζοπράσινο", + mediumblue: "μεσαίο μπλε", + mediumorchid: "μεσαία ορχιδέα", + mediumpurple: "μεσαίο μωβ", + mediumseagreen: "μεσαίο πράσινο της θάλασσας", + mediumslateblue: "μεσαίο μεταλλικό μπλε", + mediumspringgreen: "μεσαίο πράσινο της άνοιξης", + mediumturquoise: "μεσαίο τυρκουάζ", + mediumvioletred: "μεσαίο κόκκινο βιολετί", + midnightblue: "πολύ σκούρο μπλε", + mintcream: "βεραμάν", + mistyrose: "τριανταφυλλί", + moccasin: "μόκα", + navajowhite: "άσπρο Ναβάχο", + navy: "μπλε του ναυτικού", + oldlace: "εκρού", + olive: "πράσινο λαδί", + olivedrab: "λαδί", + orange: "πορτοκαλί", + orangered: "πορτοκαλοκόκκινο", + orchid: "ορχιδέα", + palegoldenrod: "αχνό χρυσοκίτρινο", + palegreen: "αχνό πράσινο", + paleturquoise: "αχνό τυρκουάζ", + palevioletred: "αχνό κόκκινο βιολετί", + papayawhip: "αχνό ροζ", + peachpuff: "ροδακινί", + peru: "περού", + pink: "ροζ", + plum: "δαμασκηνί", + powderblue: "αχνό μπλε", + purple: "μωβ", + red: "κόκκινο", + rosybrown: "καστανό", + royalblue: "έντονο μπλε", + saddlebrown: "βαθύ καφέ", + salmon: "σομόν", + sandybrown: "μπεζ της άμμου", + seagreen: "πράσινο της θάλασσας", + seashell: "κοχύλι", + sienna: "καφεκίτρινο", + silver: "ασημί", + skyblue: "μπλε του ουρανού", + slateblue: "μεταλλικό μπλε", + slategray: "μεταλλικό γκρι", + slategrey: "μεταλλικό γκρι", // same as slategray + snow: "χιονί", + springgreen: "πράσινο της άνοιξης", + steelblue: "μπλε ατσαλιού", + tan: "ώχρα", + teal: "πετρόλ", + thistle: "μωβ βιολετί", + tomato: "κόκκινο της ντομάτας", + transparent: "διαφανές", + turquoise: "τυρκουάζ", + violet: "βιολετί", + wheat: "σταρένιο", + white: "λευκό", + whitesmoke: "λευκός καπνός", + yellow: "κίτρινο", + yellowgreen: "κιτρινοπράσινο" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/es/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/es/colors.js new file mode 100644 index 00000000..a9d17a2d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/es/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/es/colors",({aliceblue:"blanco azulado",antiquewhite:"blanco antiguo",aqua:"aguamarina",aquamarine:"aguamarina 2",azure:"blanco cielo",beige:"beige",bisque:"miel",black:"negro",blanchedalmond:"almendra pálido",blue:"azul",blueviolet:"azul violáceo",brown:"marrón",burlywood:"madera",cadetblue:"azul cadete",chartreuse:"verde pálido 2",chocolate:"chocolate",coral:"coral",cornflowerblue:"azul aciano",cornsilk:"crudo",crimson:"carmesí",cyan:"cian",darkblue:"azul oscuro",darkcyan:"cian oscuro",darkgoldenrod:"ocre oscuro",darkgray:"gris oscuro",darkgreen:"verde oscuro",darkgrey:"gris oscuro",darkkhaki:"caqui oscuro",darkmagenta:"magenta oscuro",darkolivegreen:"verde oliva oscuro",darkorange:"naranja oscuro",darkorchid:"orquídea oscuro",darkred:"rojo oscuro",darksalmon:"salmón oscuro",darkseagreen:"verde mar oscuro",darkslateblue:"azul pizarra oscuro",darkslategray:"gris pizarra oscuro",darkslategrey:"gris pizarra oscuro",darkturquoise:"turquesa oscuro",darkviolet:"violeta oscuro",deeppink:"rosa fuerte",deepskyblue:"azul cielo fuerte",dimgray:"gris marengo",dimgrey:"gris marengo",dodgerblue:"azul fuerte",firebrick:"teja",floralwhite:"blanco manteca",forestgreen:"verde pino",fuchsia:"fucsia",gainsboro:"azul gainsboro",ghostwhite:"blanco ligero",gold:"oro",goldenrod:"ocre",gray:"gris",green:"verde",greenyellow:"amarillo verdoso",grey:"gris",honeydew:"flor de rocío",hotpink:"rosa oscuro",indianred:"rojo teja",indigo:"añil",ivory:"marfil",khaki:"caqui",lavender:"lavanda",lavenderblush:"lavanda rosácea",lawngreen:"verde césped",lemonchiffon:"amarillo pastel",lightblue:"azul claro",lightcoral:"coral claro",lightcyan:"cian claro",lightgoldenrodyellow:"ocre claro",lightgray:"gris claro",lightgreen:"verde claro",lightgrey:"gris claro",lightpink:"rosa claro",lightsalmon:"salmón claro",lightseagreen:"verde mar claro",lightskyblue:"azul cielo claro",lightslategray:"gris pizarra claro",lightslategrey:"gris pizarra claro",lightsteelblue:"azul acero claro",lightyellow:"amarillo claro",lime:"lima",limegreen:"lima limón",linen:"blanco arena",magenta:"magenta",maroon:"granate",mediumaquamarine:"aguamarina medio",mediumblue:"azul medio",mediumorchid:"orquídea medio",mediumpurple:"púrpura medio",mediumseagreen:"verde mar medio",mediumslateblue:"azul pizarra medio",mediumspringgreen:"verde primavera medio",mediumturquoise:"turquesa medio",mediumvioletred:"rojo violáceo medio",midnightblue:"azul medianoche",mintcream:"crema menta",mistyrose:"rosa difuminado",moccasin:"arena",navajowhite:"blanco navajo",navy:"azul marino",oldlace:"encaje antiguo",olive:"verde oliva",olivedrab:"verde oliva pardusco",orange:"naranja",orangered:"rojo anaranjado",orchid:"orquídea",palegoldenrod:"ocre pálido",palegreen:"verde pálido",paleturquoise:"turquesa pálido",palevioletred:"rojo violáceo pálido",papayawhip:"papaya claro",peachpuff:"melocotón",peru:"perú",pink:"rosa",plum:"ciruela",powderblue:"azul suave",purple:"púrpura",red:"rojo",rosybrown:"marrón rosáceo",royalblue:"azul real",saddlebrown:"cuero",salmon:"salmón",sandybrown:"marrón arcilla",seagreen:"verde mar",seashell:"blanco marfil",sienna:"siena",silver:"plateado",skyblue:"azul cielo",slateblue:"azul pizarra",slategray:"gris pizarra",slategrey:"gris pizarra",snow:"nieve",springgreen:"verde fuerte",steelblue:"azul acero",tan:"canela",teal:"verde azulado",thistle:"cardo",tomato:"tomate",transparent:"transparente",turquoise:"turquesa",violet:"violeta",wheat:"trigo",white:"blanco",whitesmoke:"blanco ahumado",yellow:"amarillo",yellowgreen:"verde amarillento"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/es/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/es/colors.js.uncompressed.js new file mode 100644 index 00000000..121f3510 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/es/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/es/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "blanco azulado", + antiquewhite: "blanco antiguo", + aqua: "aguamarina", + aquamarine: "aguamarina 2", + azure: "blanco cielo", + beige: "beige", + bisque: "miel", + black: "negro", + blanchedalmond: "almendra pálido", + blue: "azul", + blueviolet: "azul violáceo", + brown: "marrón", + burlywood: "madera", + cadetblue: "azul cadete", + chartreuse: "verde pálido 2", + chocolate: "chocolate", + coral: "coral", + cornflowerblue: "azul aciano", + cornsilk: "crudo", + crimson: "carmesí", + cyan: "cian", + darkblue: "azul oscuro", + darkcyan: "cian oscuro", + darkgoldenrod: "ocre oscuro", + darkgray: "gris oscuro", + darkgreen: "verde oscuro", + darkgrey: "gris oscuro", // same as darkgray + darkkhaki: "caqui oscuro", + darkmagenta: "magenta oscuro", + darkolivegreen: "verde oliva oscuro", + darkorange: "naranja oscuro", + darkorchid: "orquídea oscuro", + darkred: "rojo oscuro", + darksalmon: "salmón oscuro", + darkseagreen: "verde mar oscuro", + darkslateblue: "azul pizarra oscuro", + darkslategray: "gris pizarra oscuro", + darkslategrey: "gris pizarra oscuro", // same as darkslategray + darkturquoise: "turquesa oscuro", + darkviolet: "violeta oscuro", + deeppink: "rosa fuerte", + deepskyblue: "azul cielo fuerte", + dimgray: "gris marengo", + dimgrey: "gris marengo", // same as dimgray + dodgerblue: "azul fuerte", + firebrick: "teja", + floralwhite: "blanco manteca", + forestgreen: "verde pino", + fuchsia: "fucsia", + gainsboro: "azul gainsboro", + ghostwhite: "blanco ligero", + gold: "oro", + goldenrod: "ocre", + gray: "gris", + green: "verde", + greenyellow: "amarillo verdoso", + grey: "gris", // same as gray + honeydew: "flor de rocío", + hotpink: "rosa oscuro", + indianred: "rojo teja", + indigo: "añil", + ivory: "marfil", + khaki: "caqui", + lavender: "lavanda", + lavenderblush: "lavanda rosácea", + lawngreen: "verde césped", + lemonchiffon: "amarillo pastel", + lightblue: "azul claro", + lightcoral: "coral claro", + lightcyan: "cian claro", + lightgoldenrodyellow: "ocre claro", + lightgray: "gris claro", + lightgreen: "verde claro", + lightgrey: "gris claro", // same as lightgray + lightpink: "rosa claro", + lightsalmon: "salmón claro", + lightseagreen: "verde mar claro", + lightskyblue: "azul cielo claro", + lightslategray: "gris pizarra claro", + lightslategrey: "gris pizarra claro", // same as lightslategray + lightsteelblue: "azul acero claro", + lightyellow: "amarillo claro", + lime: "lima", + limegreen: "lima limón", + linen: "blanco arena", + magenta: "magenta", + maroon: "granate", + mediumaquamarine: "aguamarina medio", + mediumblue: "azul medio", + mediumorchid: "orquídea medio", + mediumpurple: "púrpura medio", + mediumseagreen: "verde mar medio", + mediumslateblue: "azul pizarra medio", + mediumspringgreen: "verde primavera medio", + mediumturquoise: "turquesa medio", + mediumvioletred: "rojo violáceo medio", + midnightblue: "azul medianoche", + mintcream: "crema menta", + mistyrose: "rosa difuminado", + moccasin: "arena", + navajowhite: "blanco navajo", + navy: "azul marino", + oldlace: "encaje antiguo", + olive: "verde oliva", + olivedrab: "verde oliva pardusco", + orange: "naranja", + orangered: "rojo anaranjado", + orchid: "orquídea", + palegoldenrod: "ocre pálido", + palegreen: "verde pálido", + paleturquoise: "turquesa pálido", + palevioletred: "rojo violáceo pálido", + papayawhip: "papaya claro", + peachpuff: "melocotón", + peru: "perú", + pink: "rosa", + plum: "ciruela", + powderblue: "azul suave", + purple: "púrpura", + red: "rojo", + rosybrown: "marrón rosáceo", + royalblue: "azul real", + saddlebrown: "cuero", + salmon: "salmón", + sandybrown: "marrón arcilla", + seagreen: "verde mar", + seashell: "blanco marfil", + sienna: "siena", + silver: "plateado", + skyblue: "azul cielo", + slateblue: "azul pizarra", + slategray: "gris pizarra", + slategrey: "gris pizarra", // same as slategray + snow: "nieve", + springgreen: "verde fuerte", + steelblue: "azul acero", + tan: "canela", + teal: "verde azulado", + thistle: "cardo", + tomato: "tomate", + transparent: "transparente", + turquoise: "turquesa", + violet: "violeta", + wheat: "trigo", + white: "blanco", + whitesmoke: "blanco ahumado", + yellow: "amarillo", + yellowgreen: "verde amarillento" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fi/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fi/colors.js new file mode 100644 index 00000000..f2b2c125 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fi/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/fi/colors",({aliceblue:"vaaleanharmaansininen",antiquewhite:"antiikinvalkoinen",aqua:"sinivihreä",aquamarine:"vedenvihreä",azure:"taivaansininen",beige:"vaaleanruskea",bisque:"vaaleanruskea",black:"musta",blanchedalmond:"kuorittu manteli",blue:"sininen",blueviolet:"sinivioletti",brown:"ruskea",burlywood:"puunruskea",cadetblue:"meren vihreä",chartreuse:"kellanvihreä",chocolate:"suklaanruskea",coral:"koralli",cornflowerblue:"syvänsininen",cornsilk:"maissinkeltainen",crimson:"karmiininpunainen",cyan:"syaani",darkblue:"tummansininen",darkcyan:"tumma turkoosi",darkgoldenrod:"tumma kultapiisku",darkgray:"tummanharmaa",darkgreen:"tummanvihreä",darkgrey:"tummanharmaa",darkkhaki:"tumma khaki",darkmagenta:"tumma magenta",darkolivegreen:"tummanoliivinvihreä",darkorange:"tummanoranssi",darkorchid:"tumma orkidea",darkred:"tummanpunainen",darksalmon:"tumma lohenpunainen",darkseagreen:"tumma merenvihreä",darkslateblue:"tumma siniharmaa",darkslategray:"tummanharmaa",darkslategrey:"tummanharmaa",darkturquoise:"tumma turkoosi",darkviolet:"tummanvioletti",deeppink:"syvä vaaleanpunainen",deepskyblue:"tumma taivaansininen",dimgray:"himmeänharmaa",dimgrey:"himmeänharmaa",dodgerblue:"Dodger-sininen",firebrick:"poltetun tiilen punainen",floralwhite:"kukanvalkoinen",forestgreen:"metsänvihreä",fuchsia:"purppura",gainsboro:"gainsboro",ghostwhite:"lakananvalkoinen",gold:"kulta",goldenrod:"kullanruskea",gray:"harmaa",green:"vihreä",greenyellow:"vihreänkeltainen",grey:"harmaa",honeydew:"hunajameloninvihreä",hotpink:"pinkki",indianred:"kirkkaanpunainen",indigo:"indigo",ivory:"norsunluu",khaki:"khaki",lavender:"laventeli",lavenderblush:"laventelinpunainen",lawngreen:"ruohonvihreä",lemonchiffon:"sitruunankeltainen",lightblue:"vaaleansininen",lightcoral:"vaalea koralli",lightcyan:"vaalea syaani",lightgoldenrodyellow:"vaalea kultapiiskunkeltainen",lightgray:"vaaleanharmaa",lightgreen:"vaaleanvihreä",lightgrey:"vaaleanharmaa",lightpink:"vaaleanpunainen",lightsalmon:"vaalea lohenpunainen",lightseagreen:"vaalea merenvihreä",lightskyblue:"vaalea taivaansininen",lightslategray:"vaaleanharmaa",lightslategrey:"vaaleanharmaa",lightsteelblue:"vaalea teräksensininen",lightyellow:"vaaleankeltainen",lime:"vaaleanvihreä",limegreen:"limetinvihreä",linen:"pellavanvaalea",magenta:"magenta",maroon:"kastanjanruskea",mediumaquamarine:"keskivaalea vedenvihreä",mediumblue:"keskisininen",mediumorchid:"keskivaalea orkidea",mediumpurple:"keskivaalea violetti",mediumseagreen:"keskivaalea merenvihreä",mediumslateblue:"keskivaalea siniharmaa",mediumspringgreen:"keskivaalea keväänvihreä",mediumturquoise:"keskivaalea turkoosi",mediumvioletred:"keskivaalea lila",midnightblue:"yönsininen",mintcream:"minttukreemi",mistyrose:"utuinen ruusu",moccasin:"nahanruskea",navajowhite:"navajonvalkoinen",navy:"laivastonsininen",oldlace:"vanha pitsi",olive:"oliivinvihreä",olivedrab:"oliivinruskea",orange:"oranssi",orangered:"oranssinpunainen",orchid:"orkidea",palegoldenrod:"haalea kultapiisku",palegreen:"haalea vihreä",paleturquoise:"haalea turkoosi",palevioletred:"haalea lila",papayawhip:"papaijavaahto",peachpuff:"persikka",peru:"peru",pink:"vaaleanpunainen",plum:"luumunpunainen",powderblue:"harmaansininen",purple:"violetti",red:"punainen",rosybrown:"punertavanruskea",royalblue:"syvänsininen",saddlebrown:"satulanruskea",salmon:"lohenpunainen",sandybrown:"hiekanruskea",seagreen:"merenvihreä",seashell:"simpukankuori",sienna:"siena",silver:"hopea",skyblue:"taivaansininen",slateblue:"savensininen",slategray:"savenharmaa",slategrey:"savenharmaa",snow:"lumivalkoinen",springgreen:"keväänvihreä",steelblue:"teräksensininen",tan:"kellanruskea",teal:"sinivihreä",thistle:"ohdake",tomato:"tomaatinpunainen",transparent:"läpinäkyvä",turquoise:"turkoosi",violet:"violetti",wheat:"vehnänkeltainen",white:"valkoinen",whitesmoke:"savunvalkea",yellow:"keltainen",yellowgreen:"kellanvihreä"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fi/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fi/colors.js.uncompressed.js new file mode 100644 index 00000000..935c23b3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fi/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/fi/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "vaaleanharmaansininen", + antiquewhite: "antiikinvalkoinen", + aqua: "sinivihreä", + aquamarine: "vedenvihreä", + azure: "taivaansininen", + beige: "vaaleanruskea", + bisque: "vaaleanruskea", + black: "musta", + blanchedalmond: "kuorittu manteli", + blue: "sininen", + blueviolet: "sinivioletti", + brown: "ruskea", + burlywood: "puunruskea", + cadetblue: "meren vihreä", + chartreuse: "kellanvihreä", + chocolate: "suklaanruskea", + coral: "koralli", + cornflowerblue: "syvänsininen", + cornsilk: "maissinkeltainen", + crimson: "karmiininpunainen", + cyan: "syaani", + darkblue: "tummansininen", + darkcyan: "tumma turkoosi", + darkgoldenrod: "tumma kultapiisku", + darkgray: "tummanharmaa", + darkgreen: "tummanvihreä", + darkgrey: "tummanharmaa", // same as darkgray + darkkhaki: "tumma khaki", + darkmagenta: "tumma magenta", + darkolivegreen: "tummanoliivinvihreä", + darkorange: "tummanoranssi", + darkorchid: "tumma orkidea", + darkred: "tummanpunainen", + darksalmon: "tumma lohenpunainen", + darkseagreen: "tumma merenvihreä", + darkslateblue: "tumma siniharmaa", + darkslategray: "tummanharmaa", + darkslategrey: "tummanharmaa", // same as darkslategray + darkturquoise: "tumma turkoosi", + darkviolet: "tummanvioletti", + deeppink: "syvä vaaleanpunainen", + deepskyblue: "tumma taivaansininen", + dimgray: "himmeänharmaa", + dimgrey: "himmeänharmaa", // same as dimgray + dodgerblue: "Dodger-sininen", + firebrick: "poltetun tiilen punainen", + floralwhite: "kukanvalkoinen", + forestgreen: "metsänvihreä", + fuchsia: "purppura", + gainsboro: "gainsboro", + ghostwhite: "lakananvalkoinen", + gold: "kulta", + goldenrod: "kullanruskea", + gray: "harmaa", + green: "vihreä", + greenyellow: "vihreänkeltainen", + grey: "harmaa", // same as gray + honeydew: "hunajameloninvihreä", + hotpink: "pinkki", + indianred: "kirkkaanpunainen", + indigo: "indigo", + ivory: "norsunluu", + khaki: "khaki", + lavender: "laventeli", + lavenderblush: "laventelinpunainen", + lawngreen: "ruohonvihreä", + lemonchiffon: "sitruunankeltainen", + lightblue: "vaaleansininen", + lightcoral: "vaalea koralli", + lightcyan: "vaalea syaani", + lightgoldenrodyellow: "vaalea kultapiiskunkeltainen", + lightgray: "vaaleanharmaa", + lightgreen: "vaaleanvihreä", + lightgrey: "vaaleanharmaa", // same as lightgray + lightpink: "vaaleanpunainen", + lightsalmon: "vaalea lohenpunainen", + lightseagreen: "vaalea merenvihreä", + lightskyblue: "vaalea taivaansininen", + lightslategray: "vaaleanharmaa", + lightslategrey: "vaaleanharmaa", // same as lightslategray + lightsteelblue: "vaalea teräksensininen", + lightyellow: "vaaleankeltainen", + lime: "vaaleanvihreä", + limegreen: "limetinvihreä", + linen: "pellavanvaalea", + magenta: "magenta", + maroon: "kastanjanruskea", + mediumaquamarine: "keskivaalea vedenvihreä", + mediumblue: "keskisininen", + mediumorchid: "keskivaalea orkidea", + mediumpurple: "keskivaalea violetti", + mediumseagreen: "keskivaalea merenvihreä", + mediumslateblue: "keskivaalea siniharmaa", + mediumspringgreen: "keskivaalea keväänvihreä", + mediumturquoise: "keskivaalea turkoosi", + mediumvioletred: "keskivaalea lila", + midnightblue: "yönsininen", + mintcream: "minttukreemi", + mistyrose: "utuinen ruusu", + moccasin: "nahanruskea", + navajowhite: "navajonvalkoinen", + navy: "laivastonsininen", + oldlace: "vanha pitsi", + olive: "oliivinvihreä", + olivedrab: "oliivinruskea", + orange: "oranssi", + orangered: "oranssinpunainen", + orchid: "orkidea", + palegoldenrod: "haalea kultapiisku", + palegreen: "haalea vihreä", + paleturquoise: "haalea turkoosi", + palevioletred: "haalea lila", + papayawhip: "papaijavaahto", + peachpuff: "persikka", + peru: "peru", + pink: "vaaleanpunainen", + plum: "luumunpunainen", + powderblue: "harmaansininen", + purple: "violetti", + red: "punainen", + rosybrown: "punertavanruskea", + royalblue: "syvänsininen", + saddlebrown: "satulanruskea", + salmon: "lohenpunainen", + sandybrown: "hiekanruskea", + seagreen: "merenvihreä", + seashell: "simpukankuori", + sienna: "siena", + silver: "hopea", + skyblue: "taivaansininen", + slateblue: "savensininen", + slategray: "savenharmaa", + slategrey: "savenharmaa", // same as slategray + snow: "lumivalkoinen", + springgreen: "keväänvihreä", + steelblue: "teräksensininen", + tan: "kellanruskea", + teal: "sinivihreä", + thistle: "ohdake", + tomato: "tomaatinpunainen", + transparent: "läpinäkyvä", + turquoise: "turkoosi", + violet: "violetti", + wheat: "vehnänkeltainen", + white: "valkoinen", + whitesmoke: "savunvalkea", + yellow: "keltainen", + yellowgreen: "kellanvihreä" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fr/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fr/colors.js new file mode 100644 index 00000000..5a0c89f1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fr/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/fr/colors",({aliceblue:"bleu gris",antiquewhite:"blanc antique",aqua:"bleu-vert",aquamarine:"aigue-marine",azure:"bleu azur",beige:"beige",bisque:"beige rosé",black:"noir",blanchedalmond:"coquille d'œuf",blue:"bleu",blueviolet:"bleu-violet",brown:"brun",burlywood:"bois précieux",cadetblue:"bleu pétrole",chartreuse:"vert vif",chocolate:"chocolat",coral:"corail",cornflowerblue:"bleuet",cornsilk:"vanille",crimson:"cramoisi",cyan:"cyan",darkblue:"bleu foncé",darkcyan:"cyan foncé",darkgoldenrod:"jaune paille foncé",darkgray:"gris foncé",darkgreen:"vert foncé",darkgrey:"gris foncé",darkkhaki:"kaki foncé",darkmagenta:"magenta foncé",darkolivegreen:"olive foncé",darkorange:"orange foncé",darkorchid:"lilas foncé",darkred:"rouge foncé",darksalmon:"saumon foncé",darkseagreen:"vert d'eau foncé",darkslateblue:"bleu ardoise foncé",darkslategray:"gris ardoise foncé",darkslategrey:"gris ardoise foncé",darkturquoise:"turquoise foncé",darkviolet:"violet foncé",deeppink:"rose soutenu",deepskyblue:"bleu ciel soutenu",dimgray:"gris soutenu",dimgrey:"gris soutenu",dodgerblue:"bleu France",firebrick:"rouge brique",floralwhite:"lys",forestgreen:"vert sapin",fuchsia:"fuchsia",gainsboro:"gris souris",ghostwhite:"blanc laiteux",gold:"or",goldenrod:"jaune paille",gray:"gris",green:"vert",greenyellow:"vert-jaune",grey:"gris",honeydew:"opalin",hotpink:"rose intense",indianred:"rose indien",indigo:"indigo",ivory:"ivoire",khaki:"kaki",lavender:"lavande",lavenderblush:"lavandin",lawngreen:"vert prairie",lemonchiffon:"mousse de citron",lightblue:"bleu clair",lightcoral:"corail clair",lightcyan:"cyan clair",lightgoldenrodyellow:"jaune paille clair",lightgray:"gris clair",lightgreen:"vert clair",lightgrey:"gris clair",lightpink:"rose clair",lightsalmon:"saumon clair",lightseagreen:"vert d'eau clair",lightskyblue:"bleu ciel clair",lightslategray:"gris ardoise clair",lightslategrey:"gris ardoise clair",lightsteelblue:"bleu acier clair",lightyellow:"jaune clair",lime:"vert citron",limegreen:"citron vert",linen:"écru",magenta:"magenta",maroon:"marron",mediumaquamarine:"aigue-marine moyen",mediumblue:"bleu moyen",mediumorchid:"lilas moyen",mediumpurple:"pourpre moyen",mediumseagreen:"vert d'eau moyen",mediumslateblue:"bleu ardoise moyen",mediumspringgreen:"vert printemps moyen",mediumturquoise:"turquoise moyen",mediumvioletred:"rouge violacé moyen",midnightblue:"bleu nuit",mintcream:"crème de menthe",mistyrose:"rose pâle",moccasin:"chamois",navajowhite:"chair",navy:"bleu marine",oldlace:"blanc cassé",olive:"olive",olivedrab:"brun verdâtre",orange:"orange",orangered:"rouge orangé",orchid:"lilas",palegoldenrod:"jaune paille pâle",palegreen:"vert pâle",paleturquoise:"turquoise pâle",palevioletred:"rouge violacé pâle",papayawhip:"crème de papaye",peachpuff:"pêche",peru:"caramel",pink:"rose",plum:"prune",powderblue:"bleu de smalt",purple:"pourpre",red:"rouge",rosybrown:"vieux rose",royalblue:"bleu roi",saddlebrown:"brun cuir",salmon:"saumon",sandybrown:"sable",seagreen:"vert d'eau",seashell:"coquillage",sienna:"terre de sienne",silver:"argent",skyblue:"bleu ciel",slateblue:"bleu ardoise",slategray:"gris ardoise",slategrey:"gris ardoise",snow:"neige",springgreen:"vert printemps",steelblue:"bleu acier",tan:"grège",teal:"sarcelle",thistle:"chardon",tomato:"tomate",transparent:"transparent",turquoise:"turquoise",violet:"violet",wheat:"blé",white:"blanc",whitesmoke:"blanc cendré",yellow:"jaune",yellowgreen:"vert jaunâtre"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fr/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fr/colors.js.uncompressed.js new file mode 100644 index 00000000..e04b5127 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/fr/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/fr/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "bleu gris", + antiquewhite: "blanc antique", + aqua: "bleu-vert", + aquamarine: "aigue-marine", + azure: "bleu azur", + beige: "beige", + bisque: "beige rosé", + black: "noir", + blanchedalmond: "coquille d'œuf", + blue: "bleu", + blueviolet: "bleu-violet", + brown: "brun", + burlywood: "bois précieux", + cadetblue: "bleu pétrole", + chartreuse: "vert vif", + chocolate: "chocolat", + coral: "corail", + cornflowerblue: "bleuet", + cornsilk: "vanille", + crimson: "cramoisi", + cyan: "cyan", + darkblue: "bleu foncé", + darkcyan: "cyan foncé", + darkgoldenrod: "jaune paille foncé", + darkgray: "gris foncé", + darkgreen: "vert foncé", + darkgrey: "gris foncé", // same as darkgray + darkkhaki: "kaki foncé", + darkmagenta: "magenta foncé", + darkolivegreen: "olive foncé", + darkorange: "orange foncé", + darkorchid: "lilas foncé", + darkred: "rouge foncé", + darksalmon: "saumon foncé", + darkseagreen: "vert d'eau foncé", + darkslateblue: "bleu ardoise foncé", + darkslategray: "gris ardoise foncé", + darkslategrey: "gris ardoise foncé", // same as darkslategray + darkturquoise: "turquoise foncé", + darkviolet: "violet foncé", + deeppink: "rose soutenu", + deepskyblue: "bleu ciel soutenu", + dimgray: "gris soutenu", + dimgrey: "gris soutenu", // same as dimgray + dodgerblue: "bleu France", + firebrick: "rouge brique", + floralwhite: "lys", + forestgreen: "vert sapin", + fuchsia: "fuchsia", + gainsboro: "gris souris", + ghostwhite: "blanc laiteux", + gold: "or", + goldenrod: "jaune paille", + gray: "gris", + green: "vert", + greenyellow: "vert-jaune", + grey: "gris", // same as gray + honeydew: "opalin", + hotpink: "rose intense", + indianred: "rose indien", + indigo: "indigo", + ivory: "ivoire", + khaki: "kaki", + lavender: "lavande", + lavenderblush: "lavandin", + lawngreen: "vert prairie", + lemonchiffon: "mousse de citron", + lightblue: "bleu clair", + lightcoral: "corail clair", + lightcyan: "cyan clair", + lightgoldenrodyellow: "jaune paille clair", + lightgray: "gris clair", + lightgreen: "vert clair", + lightgrey: "gris clair", // same as lightgray + lightpink: "rose clair", + lightsalmon: "saumon clair", + lightseagreen: "vert d'eau clair", + lightskyblue: "bleu ciel clair", + lightslategray: "gris ardoise clair", + lightslategrey: "gris ardoise clair", // same as lightslategray + lightsteelblue: "bleu acier clair", + lightyellow: "jaune clair", + lime: "vert citron", + limegreen: "citron vert", + linen: "écru", + magenta: "magenta", + maroon: "marron", + mediumaquamarine: "aigue-marine moyen", + mediumblue: "bleu moyen", + mediumorchid: "lilas moyen", + mediumpurple: "pourpre moyen", + mediumseagreen: "vert d'eau moyen", + mediumslateblue: "bleu ardoise moyen", + mediumspringgreen: "vert printemps moyen", + mediumturquoise: "turquoise moyen", + mediumvioletred: "rouge violacé moyen", + midnightblue: "bleu nuit", + mintcream: "crème de menthe", + mistyrose: "rose pâle", + moccasin: "chamois", + navajowhite: "chair", + navy: "bleu marine", + oldlace: "blanc cassé", + olive: "olive", + olivedrab: "brun verdâtre", + orange: "orange", + orangered: "rouge orangé", + orchid: "lilas", + palegoldenrod: "jaune paille pâle", + palegreen: "vert pâle", + paleturquoise: "turquoise pâle", + palevioletred: "rouge violacé pâle", + papayawhip: "crème de papaye", + peachpuff: "pêche", + peru: "caramel", + pink: "rose", + plum: "prune", + powderblue: "bleu de smalt", + purple: "pourpre", + red: "rouge", + rosybrown: "vieux rose", + royalblue: "bleu roi", + saddlebrown: "brun cuir", + salmon: "saumon", + sandybrown: "sable", + seagreen: "vert d'eau", + seashell: "coquillage", + sienna: "terre de sienne", + silver: "argent", + skyblue: "bleu ciel", + slateblue: "bleu ardoise", + slategray: "gris ardoise", + slategrey: "gris ardoise", // same as slategray + snow: "neige", + springgreen: "vert printemps", + steelblue: "bleu acier", + tan: "grège", + teal: "sarcelle", + thistle: "chardon", + tomato: "tomate", + transparent: "transparent", + turquoise: "turquoise", + violet: "violet", + wheat: "blé", + white: "blanc", + whitesmoke: "blanc cendré", + yellow: "jaune", + yellowgreen: "vert jaunâtre" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/he/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/he/colors.js new file mode 100644 index 00000000..58be7544 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/he/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/he/colors",({aliceblue:"כחול פלדה",antiquewhite:"לבן עתיק",aqua:"אקווה",aquamarine:"אקוומארין",azure:"תכלת עז",beige:"בז'",bisque:"לבן שקד",black:"שחור",blanchedalmond:"שקד",blue:"כחול",blueviolet:"כחול-סגול",brown:"חום",burlywood:"חום דהוי",cadetblue:"כחול ים",chartreuse:"ירוק-צהוב",chocolate:"שוקולד",coral:"אלמוג",cornflowerblue:"כחול דרדר",cornsilk:"צהבהב",crimson:"ארגמן",cyan:"טורקיז",darkblue:"כחול כהה",darkcyan:"טורקיז כהה",darkgoldenrod:"זהוב כהה",darkgray:"אפור כהה",darkgreen:"ירוק כהה",darkgrey:"אפור כהה",darkkhaki:"חאקי כהה",darkmagenta:"בורדו כהה",darkolivegreen:"ירוק זית כהה",darkorange:"כתום כהה",darkorchid:"סחלב כהה",darkred:"אדום כהה",darksalmon:"סלמון כהה",darkseagreen:"ירוק ים כהה",darkslateblue:"כחול צפחה כהה",darkslategray:"אפור צפחה כהה",darkslategrey:"אפור צפחה כהה",darkturquoise:"טורקיז כהה",darkviolet:"סגול כהה",deeppink:"ורוד עמוק",deepskyblue:"כחול שמיים עמוק",dimgray:"אפור עמום",dimgrey:"אפור עמום",dodgerblue:"כחול",firebrick:"לבנה שרופה",floralwhite:"לבן פרחוני",forestgreen:"ירוק יער",fuchsia:"ורוד בהיר",gainsboro:"גיינסבורו",ghostwhite:"לבן רפאים",gold:"זהב",goldenrod:"זהוב",gray:"אפור",green:"ירוק",greenyellow:"ירוק-צהוב",grey:"אפור",honeydew:"ירקרק",hotpink:"ורוד לוהט",indianred:"אדום דהוי",indigo:"אינדיגו",ivory:"שנהב",khaki:"חאקי",lavender:"לבנדר",lavenderblush:"סומק לבנדר",lawngreen:"ירוק דשא",lemonchiffon:"ירוק לימון",lightblue:"תכלת",lightcoral:"אלמוג בהיר",lightcyan:"טורקיז בהיר",lightgoldenrodyellow:"צהוב בהיר",lightgray:"אפור בהיר",lightgreen:"ירוק בהיר",lightgrey:"אפור בהיר",lightpink:"ורוד בהיר",lightsalmon:"סלמון בהיר",lightseagreen:"ירוק ים בהיר",lightskyblue:"כחול שמיים בהיר",lightslategray:"אפור צפחה בהיר",lightslategrey:"אפור צפחה בהיר",lightsteelblue:"כחול פלדה בהיר",lightyellow:"צהוב בהיר",lime:"לימון",limegreen:"ירוק לימוני",linen:"פשתן",magenta:"בורדו",maroon:"חום אדמדם",mediumaquamarine:"כחול בינוני",mediumblue:"תכלת בינוני",mediumorchid:"סחלב בינוני",mediumpurple:"סגול בינוני",mediumseagreen:"ירוק ים בינוני",mediumslateblue:"כחול צפחה בינוני",mediumspringgreen:"ירוק אביב בינוני",mediumturquoise:"טורקיז בינוני",mediumvioletred:"סגול-אדום בינוני",midnightblue:"כחול כהה",mintcream:"קרם מנטה",mistyrose:"ורוד מעורפל",moccasin:"מוקסין",navajowhite:"לבן נוואחו",navy:"כחול כהה",oldlace:"תחרה עתיקה",olive:"זית",olivedrab:"זית עמום",orange:"כתום",orangered:"כתום אדום",orchid:"סחלב",palegoldenrod:"זהוב בהיר",palegreen:"ירוק בהיר",paleturquoise:"טורקיז בהיר",palevioletred:"סגול-אדום בהיר",papayawhip:"פפאיה",peachpuff:"קציפת אפרסק",peru:"פרו",pink:"ורוד",plum:"שזיף",powderblue:"כחול חיוור",purple:"סגול",red:"אדום",rosybrown:"חום ורדרד",royalblue:"כחול מלכותי",saddlebrown:"חום דהוי",salmon:"סלמון",sandybrown:"חום חולי",seagreen:"ירוק ים",seashell:"צדף",sienna:"סיינה",silver:"כסף",skyblue:"כחול שמיים",slateblue:"כחול צפחה",slategray:"אפור צפחה",slategrey:"אפור צפחה",snow:"שלג",springgreen:"ירוק אביב",steelblue:"כחול פלדה",tan:"חום אדמדם",teal:"כחול-ירוק כהה",thistle:"דרדר",tomato:"עגבניה",transparent:"שקוף",turquoise:"טורקיז",violet:"סגול",wheat:"חיוט",white:"לבן",whitesmoke:"עשן לבן",yellow:"צהוב",yellowgreen:"ירוק צהוב"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/he/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/he/colors.js.uncompressed.js new file mode 100644 index 00000000..2ba5f110 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/he/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/he/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. +//Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). +//TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? +aliceblue: "כחול פלדה", +antiquewhite: "לבן עתיק", +aqua: "אקווה", +aquamarine: "אקוומארין", +azure: "תכלת עז", +beige: "בז'", +bisque: "לבן שקד", +black: "שחור", +blanchedalmond: "שקד", +blue: "כחול", +blueviolet: "כחול-סגול", +brown: "חום", +burlywood: "חום דהוי", +cadetblue: "כחול ים", +chartreuse: "ירוק-צהוב", +chocolate: "שוקולד", +coral: "אלמוג", +cornflowerblue: "כחול דרדר", +cornsilk: "צהבהב", +crimson: "ארגמן", +cyan: "טורקיז", +darkblue: "כחול כהה", +darkcyan: "טורקיז כהה", +darkgoldenrod: "זהוב כהה", +darkgray: "אפור כהה", +darkgreen: "ירוק כהה", +darkgrey: "אפור כהה", // same as darkgray +darkkhaki: "חאקי כהה", +darkmagenta: "בורדו כהה", +darkolivegreen: "ירוק זית כהה", +darkorange: "כתום כהה", +darkorchid: "סחלב כהה", +darkred: "אדום כהה", +darksalmon: "סלמון כהה", +darkseagreen: "ירוק ים כהה", +darkslateblue: "כחול צפחה כהה", +darkslategray: "אפור צפחה כהה", +darkslategrey: "אפור צפחה כהה", // same as darkslategray +darkturquoise: "טורקיז כהה", +darkviolet: "סגול כהה", +deeppink: "ורוד עמוק", +deepskyblue: "כחול שמיים עמוק", +dimgray: "אפור עמום", +dimgrey: "אפור עמום", // same as dimgray +dodgerblue: "כחול", +firebrick: "לבנה שרופה", +floralwhite: "לבן פרחוני", +forestgreen: "ירוק יער", +fuchsia: "ורוד בהיר", +gainsboro: "גיינסבורו", +ghostwhite: "לבן רפאים", +gold: "זהב", +goldenrod: "זהוב", +gray: "אפור", +green: "ירוק", +greenyellow: "ירוק-צהוב", +grey: "אפור", // same as gray +honeydew: "ירקרק", +hotpink: "ורוד לוהט", +indianred: "אדום דהוי", +indigo: "אינדיגו", +ivory: "שנהב", +khaki: "חאקי", +lavender: "לבנדר", +lavenderblush: "סומק לבנדר", +lawngreen: "ירוק דשא", +lemonchiffon: "ירוק לימון", +lightblue: "תכלת", +lightcoral: "אלמוג בהיר", +lightcyan: "טורקיז בהיר", +lightgoldenrodyellow: "צהוב בהיר", +lightgray: "אפור בהיר", +lightgreen: "ירוק בהיר", +lightgrey: "אפור בהיר", // same as lightgray +lightpink: "ורוד בהיר", +lightsalmon: "סלמון בהיר", +lightseagreen: "ירוק ים בהיר", +lightskyblue: "כחול שמיים בהיר", +lightslategray: "אפור צפחה בהיר", +lightslategrey: "אפור צפחה בהיר", // same as lightslategray +lightsteelblue: "כחול פלדה בהיר", +lightyellow: "צהוב בהיר", +lime: "לימון", +limegreen: "ירוק לימוני", +linen: "פשתן", +magenta: "בורדו", +maroon: "חום אדמדם", +mediumaquamarine: "כחול בינוני", +mediumblue: "תכלת בינוני", +mediumorchid: "סחלב בינוני", +mediumpurple: "סגול בינוני", +mediumseagreen: "ירוק ים בינוני", +mediumslateblue: "כחול צפחה בינוני", +mediumspringgreen: "ירוק אביב בינוני", +mediumturquoise: "טורקיז בינוני", +mediumvioletred: "סגול-אדום בינוני", +midnightblue: "כחול כהה", +mintcream: "קרם מנטה", +mistyrose: "ורוד מעורפל", +moccasin: "מוקסין", +navajowhite: "לבן נוואחו", +navy: "כחול כהה", +oldlace: "תחרה עתיקה", +olive: "זית", +olivedrab: "זית עמום", +orange: "כתום", +orangered: "כתום אדום", +orchid: "סחלב", +palegoldenrod: "זהוב בהיר", +palegreen: "ירוק בהיר", +paleturquoise: "טורקיז בהיר", +palevioletred: "סגול-אדום בהיר", +papayawhip: "פפאיה", +peachpuff: "קציפת אפרסק", +peru: "פרו", +pink: "ורוד", +plum: "שזיף", +powderblue: "כחול חיוור", +purple: "סגול", +red: "אדום", +rosybrown: "חום ורדרד", +royalblue: "כחול מלכותי", +saddlebrown: "חום דהוי", +salmon: "סלמון", +sandybrown: "חום חולי", +seagreen: "ירוק ים", +seashell: "צדף", +sienna: "סיינה", +silver: "כסף", +skyblue: "כחול שמיים", +slateblue: "כחול צפחה", +slategray: "אפור צפחה", +slategrey: "אפור צפחה", // same as slategray +snow: "שלג", +springgreen: "ירוק אביב", +steelblue: "כחול פלדה", +tan: "חום אדמדם", +teal: "כחול-ירוק כהה", +thistle: "דרדר", +tomato: "עגבניה", +transparent: "שקוף", +turquoise: "טורקיז", +violet: "סגול", +wheat: "חיוט", +white: "לבן", +whitesmoke: "עשן לבן", +yellow: "צהוב", +yellowgreen: "ירוק צהוב" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hr/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hr/colors.js new file mode 100644 index 00000000..79359f32 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hr/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/hr/colors",({aliceblue:"alice plava",antiquewhite:"antique bijela",aqua:"aqua",aquamarine:"akvamarin",azure:"azurna",beige:"bež",bisque:"svjetlo smeđe ružičasta",black:"crna",blanchedalmond:"svjetlo bademasta",blue:"plava",blueviolet:"plavo ljubičasta",brown:"smeđa",burlywood:"tamno smeđa",cadetblue:"kadet plava",chartreuse:"chartreuse",chocolate:"čokoladna",coral:"koraljna",cornflowerblue:"različak plava",cornsilk:"cornsilk",crimson:"rumena",cyan:"cijan",darkblue:"tamno plava",darkcyan:"tamno cijan",darkgoldenrod:"tamno zlatno žuta",darkgray:"tamno siva",darkgreen:"tamno zelena",darkgrey:"tamno siva",darkkhaki:"tamno sivo smeđa",darkmagenta:"tamno grimizna",darkolivegreen:"tamno maslinasto zelena",darkorange:"tamno narančasta",darkorchid:"tamno ružičasta",darkred:"tamno crvena",darksalmon:"tamno žuto ružičasta",darkseagreen:"tamno plavo zelena",darkslateblue:"tamno sivo plava",darkslategray:"tamno plavo siva",darkslategrey:"tamno plavo siva",darkturquoise:"tamno tirkizna",darkviolet:"tamno ljubičasta",deeppink:"intenzivno ružičasta",deepskyblue:"intenzivno nebesko plava",dimgray:"mutno siva",dimgrey:"mutno siva",dodgerblue:"dodger plava",firebrick:"žarko crvena",floralwhite:"cvjetno bijela",forestgreen:"šumsko zelena",fuchsia:"fuksija",gainsboro:"gainsboro",ghostwhite:"sivo bijela",gold:"zlatna",goldenrod:"zlatno žuta",gray:"siva",green:"zelena",greenyellow:"zeleno žuta",grey:"siva",honeydew:"honeydew",hotpink:"žarko ružičasta",indianred:"indijski crveno",indigo:"indigo",ivory:"slonovača",khaki:"sivo smeđa",lavender:"lavanda",lavenderblush:"rumena lavanda",lawngreen:"livadno zelena",lemonchiffon:"nježno žuta",lightblue:"svjetlo plava",lightcoral:"svjetlo koraljna",lightcyan:"svjetlo cijan",lightgoldenrodyellow:"svjetlo zlatno žuta",lightgray:"svjetlo siva",lightgreen:"svjetlo zelena",lightgrey:"svjetlo siva",lightpink:"svjetlo ružičasta",lightsalmon:"svjetlo žuto ružičasta",lightseagreen:"svjetlo plavo zelena",lightskyblue:"svjetlo nebesko plava",lightslategray:"svjetlo plavo siva",lightslategrey:"svjetlo plavo siva",lightsteelblue:"svjetlo čelično plava",lightyellow:"svjetlo žuta",lime:"limeta",limegreen:"limeta zelena",linen:"platno",magenta:"grimizna",maroon:"kestenjasta",mediumaquamarine:"srednje akvamarin",mediumblue:"srednje plava",mediumorchid:"srednje ružičasta",mediumpurple:"srednje purpurna",mediumseagreen:"srednje plavo zelena",mediumslateblue:"srednje sivo plava",mediumspringgreen:"srednje proljetno zelena",mediumturquoise:"srednje tirkizna",mediumvioletred:"srednje ljubičasto crvena",midnightblue:"ponoćno plava",mintcream:"blijedo zelena",mistyrose:"mutno ružičasta",moccasin:"moccasin",navajowhite:"krem bijela",navy:"mornarsko plava",oldlace:"old lace",olive:"maslinasta",olivedrab:"maslinasto siva",orange:"narančasta",orangered:"narančasto crvena",orchid:"ružičasta",palegoldenrod:"blijedo zlatno žuta",palegreen:"blijedo zelena",paleturquoise:"blijedo tirkizna",palevioletred:"blijedo ljubičasto crvena",papayawhip:"blijedo narančasta",peachpuff:"breskva",peru:"peru",pink:"roza",plum:"šljiva",powderblue:"blijedo plava",purple:"purpurna",red:"crvena",rosybrown:"ružičasto smeđa",royalblue:"kraljevski plava",saddlebrown:"srednje smeđa",salmon:"žuto ružičasta",sandybrown:"pješčano smeđa",seagreen:"plavo zelena",seashell:"nježno ružičasta",sienna:"sjena",silver:"srebrna",skyblue:"nebesko plava",slateblue:"sivo plava",slategray:"plavo siva",slategrey:"plavo siva",snow:"snijeg",springgreen:"proljetno zeleno",steelblue:"čelično plava",tan:"ten",teal:"teal",thistle:"čičak",tomato:"rajčica",transparent:"prozirno",turquoise:"tirkizna",violet:"ljubičasta",wheat:"pšenica",white:"bijela",whitesmoke:"bijeli dim",yellow:"žuta",yellowgreen:"žuto zelena"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hr/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hr/colors.js.uncompressed.js new file mode 100644 index 00000000..5cd5dbc7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hr/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/hr/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. +//Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). +//TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "alice plava", + antiquewhite: "antique bijela", + aqua: "aqua", + aquamarine: "akvamarin", + azure: "azurna", + beige: "bež", + bisque: "svjetlo smeđe ružičasta", + black: "crna", + blanchedalmond: "svjetlo bademasta", + blue: "plava", + blueviolet: "plavo ljubičasta", + brown: "smeđa", + burlywood: "tamno smeđa", + cadetblue: "kadet plava", + chartreuse: "chartreuse", + chocolate: "čokoladna", + coral: "koraljna", + cornflowerblue: "različak plava", + cornsilk: "cornsilk", + crimson: "rumena", + cyan: "cijan", + darkblue: "tamno plava", + darkcyan: "tamno cijan", + darkgoldenrod: "tamno zlatno žuta", + darkgray: "tamno siva", + darkgreen: "tamno zelena", + darkgrey: "tamno siva", // same as darkgray + darkkhaki: "tamno sivo smeđa", + darkmagenta: "tamno grimizna", + darkolivegreen: "tamno maslinasto zelena", + darkorange: "tamno narančasta", + darkorchid: "tamno ružičasta", + darkred: "tamno crvena", + darksalmon: "tamno žuto ružičasta", + darkseagreen: "tamno plavo zelena", + darkslateblue: "tamno sivo plava", + darkslategray: "tamno plavo siva", + darkslategrey: "tamno plavo siva", // same as darkslategray + darkturquoise: "tamno tirkizna", + darkviolet: "tamno ljubičasta", + deeppink: "intenzivno ružičasta", + deepskyblue: "intenzivno nebesko plava", + dimgray: "mutno siva", + dimgrey: "mutno siva", // same as dimgray + dodgerblue: "dodger plava", + firebrick: "žarko crvena", + floralwhite: "cvjetno bijela", + forestgreen: "šumsko zelena", + fuchsia: "fuksija", + gainsboro: "gainsboro", + ghostwhite: "sivo bijela", + gold: "zlatna", + goldenrod: "zlatno žuta", + gray: "siva", + green: "zelena", + greenyellow: "zeleno žuta", + grey: "siva", // same as gray + honeydew: "honeydew", + hotpink: "žarko ružičasta", + indianred: "indijski crveno", + indigo: "indigo", + ivory: "slonovača", + khaki: "sivo smeđa", + lavender: "lavanda", + lavenderblush: "rumena lavanda", + lawngreen: "livadno zelena", + lemonchiffon: "nježno žuta", + lightblue: "svjetlo plava", + lightcoral: "svjetlo koraljna", + lightcyan: "svjetlo cijan", + lightgoldenrodyellow: "svjetlo zlatno žuta", + lightgray: "svjetlo siva", + lightgreen: "svjetlo zelena", + lightgrey: "svjetlo siva", // same as lightgray + lightpink: "svjetlo ružičasta", + lightsalmon: "svjetlo žuto ružičasta", + lightseagreen: "svjetlo plavo zelena", + lightskyblue: "svjetlo nebesko plava", + lightslategray: "svjetlo plavo siva", + lightslategrey: "svjetlo plavo siva", // same as lightslategray + lightsteelblue: "svjetlo čelično plava", + lightyellow: "svjetlo žuta", + lime: "limeta", + limegreen: "limeta zelena", + linen: "platno", + magenta: "grimizna", + maroon: "kestenjasta", + mediumaquamarine: "srednje akvamarin", + mediumblue: "srednje plava", + mediumorchid: "srednje ružičasta", + mediumpurple: "srednje purpurna", + mediumseagreen: "srednje plavo zelena", + mediumslateblue: "srednje sivo plava", + mediumspringgreen: "srednje proljetno zelena", + mediumturquoise: "srednje tirkizna", + mediumvioletred: "srednje ljubičasto crvena", + midnightblue: "ponoćno plava", + mintcream: "blijedo zelena", + mistyrose: "mutno ružičasta", + moccasin: "moccasin", + navajowhite: "krem bijela", + navy: "mornarsko plava", + oldlace: "old lace", + olive: "maslinasta", + olivedrab: "maslinasto siva", + orange: "narančasta", + orangered: "narančasto crvena", + orchid: "ružičasta", + palegoldenrod: "blijedo zlatno žuta", + palegreen: "blijedo zelena", + paleturquoise: "blijedo tirkizna", + palevioletred: "blijedo ljubičasto crvena", + papayawhip: "blijedo narančasta", + peachpuff: "breskva", + peru: "peru", + pink: "roza", + plum: "šljiva", + powderblue: "blijedo plava", + purple: "purpurna", + red: "crvena", + rosybrown: "ružičasto smeđa", + royalblue: "kraljevski plava", + saddlebrown: "srednje smeđa", + salmon: "žuto ružičasta", + sandybrown: "pješčano smeđa", + seagreen: "plavo zelena", + seashell: "nježno ružičasta", + sienna: "sjena", + silver: "srebrna", + skyblue: "nebesko plava", + slateblue: "sivo plava", + slategray: "plavo siva", + slategrey: "plavo siva", // same as slategray + snow: "snijeg", + springgreen: "proljetno zeleno", + steelblue: "čelično plava", + tan: "ten", + teal: "teal", + thistle: "čičak", + tomato: "rajčica", + transparent: "prozirno", + turquoise: "tirkizna", + violet: "ljubičasta", + wheat: "pšenica", + white: "bijela", + whitesmoke: "bijeli dim", + yellow: "žuta", + yellowgreen: "žuto zelena" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hu/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hu/colors.js new file mode 100644 index 00000000..56467d2b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hu/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/hu/colors",({aliceblue:"Alice kék",antiquewhite:"antik fehér",aqua:"vízszín",aquamarine:"akvamarin",azure:"azúrkék",beige:"bézs",bisque:"porcelán",black:"fekete",blanchedalmond:"hámozott mandula",blue:"kék",blueviolet:"ibolyakék",brown:"barna",burlywood:"nyersfa",cadetblue:"kadétkék",chartreuse:"chartreuse",chocolate:"csokoládé",coral:"korall",cornflowerblue:"búzavirágkék",cornsilk:"kukoricahaj",crimson:"karmazsinvörös",cyan:"ciánkék",darkblue:"sötétkék",darkcyan:"sötét ciánkék",darkgoldenrod:"sötét aranyvessző",darkgray:"sötétszürke",darkgreen:"sötétzöld",darkgrey:"sötétszürke",darkkhaki:"sötét khakiszín",darkmagenta:"sötétbíbor",darkolivegreen:"sötét olajzöld",darkorange:"sötét narancssárga",darkorchid:"sötét orchidea",darkred:"sötétvörös",darksalmon:"sötét lazacszín",darkseagreen:"sötét tengerzöld",darkslateblue:"sötét palakék",darkslategray:"sötét palaszürke",darkslategrey:"sötét palaszürke",darkturquoise:"sötét türkizkék",darkviolet:"sötét ibolyaszín",deeppink:"sötétrózsaszín",deepskyblue:"sötét égszínkék",dimgray:"halványszürke",dimgrey:"halványszürke",dodgerblue:"dodger kék",firebrick:"téglavörös",floralwhite:"virágfehér",forestgreen:"erdőzöld",fuchsia:"fukszia",gainsboro:"gainsboro",ghostwhite:"szellemfehér",gold:"arany",goldenrod:"aranyvessző",gray:"szürke",green:"zöld",greenyellow:"zöldessárga",grey:"szürke",honeydew:"mézharmat",hotpink:"meleg rózsaszín",indianred:"indiánvörös",indigo:"indigó",ivory:"elefántcsont",khaki:"khakiszín",lavender:"levendula",lavenderblush:"pirosas levendula",lawngreen:"fűzöld",lemonchiffon:"sárga műselyem",lightblue:"világoskék",lightcoral:"világos korall",lightcyan:"világos ciánkék",lightgoldenrodyellow:"világos aranyvessző sárga",lightgray:"világosszürke",lightgreen:"világoszöld",lightgrey:"világosszürke",lightpink:"világos rózsaszín",lightsalmon:"világos lazacszín",lightseagreen:"világos tengerzöld",lightskyblue:"világos égszínkék",lightslategray:"világos palaszürke",lightslategrey:"világos palaszürke",lightsteelblue:"világos acélkék",lightyellow:"világossárga",lime:"lime",limegreen:"limezöld",linen:"vászonfehér",magenta:"bíbor",maroon:"gesztenyebarna",mediumaquamarine:"közepes akvamarin",mediumblue:"közepes kék",mediumorchid:"közepes orchidea",mediumpurple:"közepes lila",mediumseagreen:"közepes tengerzöld",mediumslateblue:"közepes palakék",mediumspringgreen:"közepes tavaszzöld",mediumturquoise:"közepes türkizkék",mediumvioletred:"közepes ibolyavörös",midnightblue:"éjkék",mintcream:"mentaszósz",mistyrose:"halvány rózsaszín",moccasin:"mokkaszín",navajowhite:"navajo fehér",navy:"tengerészkék",oldlace:"régi csipke",olive:"olajzöld",olivedrab:"olajzöld drapp",orange:"narancssárga",orangered:"narancsvörös",orchid:"orchidea",palegoldenrod:"halvány aranyvessző",palegreen:"halványzöld",paleturquoise:"halvány türkizkék",palevioletred:"halvány ibolyavörös",papayawhip:"papayahab",peachpuff:"barackszín",peru:"peru",pink:"rózsaszín",plum:"szilvakék",powderblue:"púderkék",purple:"lila",red:"vörös",rosybrown:"barnásrózsaszín",royalblue:"királykék",saddlebrown:"nyeregbarna",salmon:"lazacszín",sandybrown:"homokbarna",seagreen:"tengerzöld",seashell:"kagyló",sienna:"vörösesbarna",silver:"ezüst",skyblue:"égszínkék",slateblue:"palakék",slategray:"palaszürke",slategrey:"palaszürke",snow:"hó",springgreen:"tavaszzöld",steelblue:"acélkék",tan:"rozsdabarna",teal:"pávakék",thistle:"bogáncs",tomato:"paradicsom",transparent:"átlátszó",turquoise:"türkizkék",violet:"ibolyaszín",wheat:"búza",white:"fehér",whitesmoke:"fehér füst",yellow:"sárga",yellowgreen:"sárgászöld"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hu/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hu/colors.js.uncompressed.js new file mode 100644 index 00000000..92773aea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/hu/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/hu/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "Alice kék", + antiquewhite: "antik fehér", + aqua: "vízszín", + aquamarine: "akvamarin", + azure: "azúrkék", + beige: "bézs", + bisque: "porcelán", + black: "fekete", + blanchedalmond: "hámozott mandula", + blue: "kék", + blueviolet: "ibolyakék", + brown: "barna", + burlywood: "nyersfa", + cadetblue: "kadétkék", + chartreuse: "chartreuse", + chocolate: "csokoládé", + coral: "korall", + cornflowerblue: "búzavirágkék", + cornsilk: "kukoricahaj", + crimson: "karmazsinvörös", + cyan: "ciánkék", + darkblue: "sötétkék", + darkcyan: "sötét ciánkék", + darkgoldenrod: "sötét aranyvessző", + darkgray: "sötétszürke", + darkgreen: "sötétzöld", + darkgrey: "sötétszürke", // same as darkgray + darkkhaki: "sötét khakiszín", + darkmagenta: "sötétbíbor", + darkolivegreen: "sötét olajzöld", + darkorange: "sötét narancssárga", + darkorchid: "sötét orchidea", + darkred: "sötétvörös", + darksalmon: "sötét lazacszín", + darkseagreen: "sötét tengerzöld", + darkslateblue: "sötét palakék", + darkslategray: "sötét palaszürke", + darkslategrey: "sötét palaszürke", // same as darkslategray + darkturquoise: "sötét türkizkék", + darkviolet: "sötét ibolyaszín", + deeppink: "sötétrózsaszín", + deepskyblue: "sötét égszínkék", + dimgray: "halványszürke", + dimgrey: "halványszürke", // same as dimgray + dodgerblue: "dodger kék", + firebrick: "téglavörös", + floralwhite: "virágfehér", + forestgreen: "erdőzöld", + fuchsia: "fukszia", + gainsboro: "gainsboro", + ghostwhite: "szellemfehér", + gold: "arany", + goldenrod: "aranyvessző", + gray: "szürke", + green: "zöld", + greenyellow: "zöldessárga", + grey: "szürke", // same as gray + honeydew: "mézharmat", + hotpink: "meleg rózsaszín", + indianred: "indiánvörös", + indigo: "indigó", + ivory: "elefántcsont", + khaki: "khakiszín", + lavender: "levendula", + lavenderblush: "pirosas levendula", + lawngreen: "fűzöld", + lemonchiffon: "sárga műselyem", + lightblue: "világoskék", + lightcoral: "világos korall", + lightcyan: "világos ciánkék", + lightgoldenrodyellow: "világos aranyvessző sárga", + lightgray: "világosszürke", + lightgreen: "világoszöld", + lightgrey: "világosszürke", // same as lightgray + lightpink: "világos rózsaszín", + lightsalmon: "világos lazacszín", + lightseagreen: "világos tengerzöld", + lightskyblue: "világos égszínkék", + lightslategray: "világos palaszürke", + lightslategrey: "világos palaszürke", // same as lightslategray + lightsteelblue: "világos acélkék", + lightyellow: "világossárga", + lime: "lime", + limegreen: "limezöld", + linen: "vászonfehér", + magenta: "bíbor", + maroon: "gesztenyebarna", + mediumaquamarine: "közepes akvamarin", + mediumblue: "közepes kék", + mediumorchid: "közepes orchidea", + mediumpurple: "közepes lila", + mediumseagreen: "közepes tengerzöld", + mediumslateblue: "közepes palakék", + mediumspringgreen: "közepes tavaszzöld", + mediumturquoise: "közepes türkizkék", + mediumvioletred: "közepes ibolyavörös", + midnightblue: "éjkék", + mintcream: "mentaszósz", + mistyrose: "halvány rózsaszín", + moccasin: "mokkaszín", + navajowhite: "navajo fehér", + navy: "tengerészkék", + oldlace: "régi csipke", + olive: "olajzöld", + olivedrab: "olajzöld drapp", + orange: "narancssárga", + orangered: "narancsvörös", + orchid: "orchidea", + palegoldenrod: "halvány aranyvessző", + palegreen: "halványzöld", + paleturquoise: "halvány türkizkék", + palevioletred: "halvány ibolyavörös", + papayawhip: "papayahab", + peachpuff: "barackszín", + peru: "peru", + pink: "rózsaszín", + plum: "szilvakék", + powderblue: "púderkék", + purple: "lila", + red: "vörös", + rosybrown: "barnásrózsaszín", + royalblue: "királykék", + saddlebrown: "nyeregbarna", + salmon: "lazacszín", + sandybrown: "homokbarna", + seagreen: "tengerzöld", + seashell: "kagyló", + sienna: "vörösesbarna", + silver: "ezüst", + skyblue: "égszínkék", + slateblue: "palakék", + slategray: "palaszürke", + slategrey: "palaszürke", // same as slategray + snow: "hó", + springgreen: "tavaszzöld", + steelblue: "acélkék", + tan: "rozsdabarna", + teal: "pávakék", + thistle: "bogáncs", + tomato: "paradicsom", + transparent: "átlátszó", + turquoise: "türkizkék", + violet: "ibolyaszín", + wheat: "búza", + white: "fehér", + whitesmoke: "fehér füst", + yellow: "sárga", + yellowgreen: "sárgászöld" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/id/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/id/colors.js new file mode 100644 index 00000000..c0961293 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/id/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/id/colors",({aliceblue:"alice blue",antiquewhite:"antique white",aqua:"aqua",aquamarine:"biru laut",azure:"biru langit",beige:"krem",bisque:"bisque",black:"hitam",blanchedalmond:"almond pucat",blue:"biru",blueviolet:"biru-ungu",brown:"coklat",burlywood:"burlywood",cadetblue:"cadet blue",chartreuse:"chartreuse",chocolate:"chocolate",coral:"coral",cornflowerblue:"cornflower blue",cornsilk:"cornsilk",crimson:"crimson",cyan:"cyan",darkblue:"biru tua",darkcyan:"dark cyan",darkgoldenrod:"dark goldenrod",darkgray:"abu-abu tua",darkgreen:"hijau tua",darkgrey:"abu-abu tua",darkkhaki:"dark khaki",darkmagenta:"magenta tua",darkolivegreen:"olive hijau tua",darkorange:"jingga tua",darkorchid:"dark orchid",darkred:"merah tua",darksalmon:"dark salmon",darkseagreen:"hijau laut tua",darkslateblue:"biru batu tua",darkslategray:"abu-abu batu tua",darkslategrey:"abu-abu batu tua",darkturquoise:"turquoise tua",darkviolet:"lembayung tua",deeppink:"merah muda dalam",deepskyblue:"hijau langit dalam",dimgray:"abu-abu temaram",dimgrey:"abu-abu temaram",dodgerblue:"dodger blue",firebrick:"fire brick",floralwhite:"putih bunga",forestgreen:"hijau hutan",fuchsia:"fuchsia",gainsboro:"gainsboro",ghostwhite:"ghost white",gold:"emas",goldenrod:"goldenrod",gray:"abu-abu",green:"hijau",greenyellow:"hijau-kuning",grey:"abu-abu",honeydew:"hijau melon",hotpink:"hot pink",indianred:"merah indian",indigo:"nila",ivory:"ivory",khaki:"khaki",lavender:"lembayung muda",lavenderblush:"lembayung muda kemerahan",lawngreen:"rumput hijau",lemonchiffon:"lemon chiffon",lightblue:"biru muda",lightcoral:"coral muda",lightcyan:"light cyan",lightgoldenrodyellow:"kuning goldenrod muda",lightgray:"abu-abu muda",lightgreen:"hijau muda",lightgrey:"abu-abu muda",lightpink:"merah jambu muda",lightsalmon:"light salmon",lightseagreen:"hijau laut muda",lightskyblue:"hijau langit muda",lightslategray:"au-abu batu tua",lightslategrey:"abu-abu batu tua",lightsteelblue:"biru baja muda",lightyellow:"kuning muda",lime:"limau",limegreen:"hijau limau",linen:"linen",magenta:"magenta",maroon:"maroon",mediumaquamarine:"medium aquamarine",mediumblue:"biru medium",mediumorchid:"medium orchid",mediumpurple:"ungu medium",mediumseagreen:"hijau laut medium",mediumslateblue:"biru batu medium",mediumspringgreen:"medium spring green",mediumturquoise:"medium turquoise",mediumvioletred:"ungu-merah medium",midnightblue:"midnight blue",mintcream:"mint cream",mistyrose:"misty rose",moccasin:"moccasin",navajowhite:"navajo white",navy:"navy",oldlace:"old lace",olive:"olive",olivedrab:"olive drab",orange:"jingga",orangered:"merah jingga",orchid:"orchid",palegoldenrod:"goldenrod pucat",palegreen:"hijau pucat",paleturquoise:"turquoise pucat",palevioletred:"ungu-marah pucat",papayawhip:"papaya whip",peachpuff:"peach puff",peru:"peru",pink:"merah jambu",plum:"plum",powderblue:"powder blue",purple:"ungu",red:"merah",rosybrown:"rosy brown",royalblue:"royal blue",saddlebrown:"saddle brown",salmon:"salmon",sandybrown:"sandy brown",seagreen:"hijau laut",seashell:"seashell",sienna:"sienna",silver:"perak",skyblue:"biru langit",slateblue:"biru batu",slategray:"abu-abu batu",slategrey:"abu-abu batu",snow:"snow",springgreen:"spring green",steelblue:"biru baja",tan:"tan",teal:"teal",thistle:"thistle",tomato:"tomat",transparent:"transparan",turquoise:"biru hijau",violet:"lembayung",wheat:"wheat",white:"putih",whitesmoke:"white smoke",yellow:"kuning",yellowgreen:"kuning hijau"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/id/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/id/colors.js.uncompressed.js new file mode 100644 index 00000000..f01b1b74 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/id/colors.js.uncompressed.js @@ -0,0 +1,157 @@ +define( +"dojo/nls/id/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "alice blue", + antiquewhite: "antique white", + aqua: "aqua", + aquamarine: "biru laut", + azure: "biru langit", + beige: "krem", + bisque: "bisque", + black: "hitam", + blanchedalmond: "almond pucat", + blue: "biru", + blueviolet: "biru-ungu", + brown: "coklat", + burlywood: "burlywood", + cadetblue: "cadet blue", + chartreuse: "chartreuse", + chocolate: "chocolate", + coral: "coral", + cornflowerblue: "cornflower blue", + cornsilk: "cornsilk", + crimson: "crimson", + cyan: "cyan", + darkblue: "biru tua", + darkcyan: "dark cyan", + darkgoldenrod: "dark goldenrod", + darkgray: "abu-abu tua", + darkgreen: "hijau tua", + darkgrey: "abu-abu tua", // same as darkgray + darkkhaki: "dark khaki", + darkmagenta: "magenta tua", + darkolivegreen: "olive hijau tua", + darkorange: "jingga tua", + darkorchid: "dark orchid", + darkred: "merah tua", + darksalmon: "dark salmon", + darkseagreen: "hijau laut tua", + darkslateblue: "biru batu tua", + darkslategray: "abu-abu batu tua", + darkslategrey: "abu-abu batu tua", // same as darkslategray + darkturquoise: "turquoise tua", + darkviolet: "lembayung tua", + deeppink: "merah muda dalam", + deepskyblue: "hijau langit dalam", + dimgray: "abu-abu temaram", + dimgrey: "abu-abu temaram", // same as dimgray + dodgerblue: "dodger blue", + firebrick: "fire brick", + floralwhite: "putih bunga", + forestgreen: "hijau hutan", + fuchsia: "fuchsia", + gainsboro: "gainsboro", + ghostwhite: "ghost white", + gold: "emas", + goldenrod: "goldenrod", + gray: "abu-abu", + green: "hijau", + greenyellow: "hijau-kuning", + grey: "abu-abu", // same as gray + honeydew: "hijau melon", + hotpink: "hot pink", + indianred: "merah indian", + indigo: "nila", + ivory: "ivory", + khaki: "khaki", + lavender: "lembayung muda", + lavenderblush: "lembayung muda kemerahan", + lawngreen: "rumput hijau", + lemonchiffon: "lemon chiffon", + lightblue: "biru muda", + lightcoral: "coral muda", + lightcyan: "light cyan", + lightgoldenrodyellow: "kuning goldenrod muda", + lightgray: "abu-abu muda", + lightgreen: "hijau muda", + lightgrey: "abu-abu muda", // same as lightgray + lightpink: "merah jambu muda", + lightsalmon: "light salmon", + lightseagreen: "hijau laut muda", + lightskyblue: "hijau langit muda", + lightslategray: "au-abu batu tua", + lightslategrey: "abu-abu batu tua", // same as lightslategray + lightsteelblue: "biru baja muda", + lightyellow: "kuning muda", + lime: "limau", + limegreen: "hijau limau", + linen: "linen", + magenta: "magenta", + maroon: "maroon", + mediumaquamarine: "medium aquamarine", + mediumblue: "biru medium", + mediumorchid: "medium orchid", + mediumpurple: "ungu medium", + mediumseagreen: "hijau laut medium", + mediumslateblue: "biru batu medium", + mediumspringgreen: "medium spring green", + mediumturquoise: "medium turquoise", + mediumvioletred: "ungu-merah medium", + midnightblue: "midnight blue", + mintcream: "mint cream", + mistyrose: "misty rose", + moccasin: "moccasin", + navajowhite: "navajo white", + navy: "navy", + oldlace: "old lace", + olive: "olive", + olivedrab: "olive drab", + orange: "jingga", + orangered: "merah jingga", + orchid: "orchid", + palegoldenrod: "goldenrod pucat", + palegreen: "hijau pucat", + paleturquoise: "turquoise pucat", + palevioletred: "ungu-marah pucat", + papayawhip: "papaya whip", + peachpuff: "peach puff", + peru: "peru", + pink: "merah jambu", + plum: "plum", + powderblue: "powder blue", + purple: "ungu", + red: "merah", + rosybrown: "rosy brown", + royalblue: "royal blue", + saddlebrown: "saddle brown", + salmon: "salmon", + sandybrown: "sandy brown", + seagreen: "hijau laut", + seashell: "seashell", + sienna: "sienna", + silver: "perak", + skyblue: "biru langit", + slateblue: "biru batu", + slategray: "abu-abu batu", + slategrey: "abu-abu batu", // same as slategray + snow: "snow", + springgreen: "spring green", + steelblue: "biru baja", + tan: "tan", + teal: "teal", + thistle: "thistle", + tomato: "tomat", + transparent: "transparan", + turquoise: "biru hijau", + violet: "lembayung", + wheat: "wheat", + white: "putih", + whitesmoke: "white smoke", + yellow: "kuning", + yellowgreen: "kuning hijau" +}) +); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/it/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/it/colors.js new file mode 100644 index 00000000..a9681008 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/it/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/it/colors",({aliceblue:"bianco ghiaccio",antiquewhite:"rosa antico",aqua:"verde acqua",aquamarine:"acquamarina",azure:"azure",beige:"beige",bisque:"terracotta",black:"nero",blanchedalmond:"beige 2",blue:"blu",blueviolet:"violetto bluastro",brown:"marrone",burlywood:"legno massiccio",cadetblue:"verde petrolio",chartreuse:"verde brillante",chocolate:"cioccolato",coral:"corallo",cornflowerblue:"blu fiordaliso",cornsilk:"crema",crimson:"rosso scarlatto",cyan:"ciano",darkblue:"blu scuro",darkcyan:"celeste scuro",darkgoldenrod:"ocra scuro",darkgray:"grigio scuro",darkgreen:"verde scuro",darkgrey:"grigio scuro",darkkhaki:"cachi scuro",darkmagenta:"magenta scuro",darkolivegreen:"verde oliva scuro",darkorange:"arancione scuro",darkorchid:"orchidea scuro",darkred:"rosso scuro",darksalmon:"salmone scuro",darkseagreen:"verde acqua scuro",darkslateblue:"blu ardesia scuro",darkslategray:"grigio ardesia scuro",darkslategrey:"grigio ardesia scuro",darkturquoise:"turchese scuro",darkviolet:"viola scuro",deeppink:"ciclamino",deepskyblue:"azzurro intenso",dimgray:"grigio tenue",dimgrey:"grigio tenue",dodgerblue:"dodger blue",firebrick:"mattone",floralwhite:"bianco grigio",forestgreen:"verde pino scuro",fuchsia:"fucsia",gainsboro:"gainsboro",ghostwhite:"bianco gesso",gold:"oro",goldenrod:"dorato",gray:"grigio",green:"verde",greenyellow:"verde-giallo",grey:"grigio",honeydew:"miele",hotpink:"rosa acceso",indianred:"terra indiana",indigo:"indaco",ivory:"avorio",khaki:"cachi",lavender:"lavanda",lavenderblush:"lavanda rosa",lawngreen:"verde brillante chiaro",lemonchiffon:"lemon chiffon",lightblue:"blu chiaro",lightcoral:"corallo chiaro",lightcyan:"ciano chiaro",lightgoldenrodyellow:"giallo dorato chiaro",lightgray:"grigio chiaro",lightgreen:"verde chiaro",lightgrey:"grigio chiaro",lightpink:"rosa chiaro",lightsalmon:"salmone chiaro",lightseagreen:"verde acqua chiaro",lightskyblue:"azzurro chiaro",lightslategray:"grigio ardesia chiaro",lightslategrey:"grigio ardesia chiaro",lightsteelblue:"blu acciaio chiaro",lightyellow:"giallo chiaro",lime:"lime",limegreen:"verde lime",linen:"lino",magenta:"magenta",maroon:"Bordeaux",mediumaquamarine:"acquamarina medio",mediumblue:"blu medio",mediumorchid:"orchidea medio",mediumpurple:"viola medio",mediumseagreen:"verde acqua medio",mediumslateblue:"blu ardesia medio",mediumspringgreen:"verde brillante medio",mediumturquoise:"turchese medio",mediumvioletred:"violetto rosso medio",midnightblue:"blu notte",mintcream:"bianco nuvola",mistyrose:"rosa pallido",moccasin:"mocassino",navajowhite:"sabbia",navy:"blu scuro",oldlace:"mandorla",olive:"verde oliva",olivedrab:"verde bottiglia",orange:"arancione",orangered:"vermiglio",orchid:"orchidea",palegoldenrod:"dorato pallido",palegreen:"verde pallido",paleturquoise:"turchese pallido",palevioletred:"violetto rosso pallido",papayawhip:"papaya",peachpuff:"pesche",peru:"perù",pink:"rosa",plum:"prugna",powderblue:"azzurro polvere",purple:"viola",red:"rosso",rosybrown:"caffè latte",royalblue:"royal blue",saddlebrown:"cacao",salmon:"salmone",sandybrown:"argilla",seagreen:"verde acqua",seashell:"sabbia rosa",sienna:"terra di siena",silver:"argento",skyblue:"azzurro",slateblue:"blu ardesia",slategray:"grigio ardesia",slategrey:"grigio ardesia",snow:"neve",springgreen:"verde brillante",steelblue:"blu brillante",tan:"tan",teal:"verde acqua",thistle:"rosa cenere",tomato:"pomodoro",transparent:"trasparente",turquoise:"turchese",violet:"violetto",wheat:"tabacco",white:"bianco",whitesmoke:"bianco fumo",yellow:"giallo",yellowgreen:"giallo verde"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/it/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/it/colors.js.uncompressed.js new file mode 100644 index 00000000..aafbb2d7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/it/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/it/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "bianco ghiaccio", + antiquewhite: "rosa antico", + aqua: "verde acqua", + aquamarine: "acquamarina", + azure: "azure", + beige: "beige", + bisque: "terracotta", + black: "nero", + blanchedalmond: "beige 2", + blue: "blu", + blueviolet: "violetto bluastro", + brown: "marrone", + burlywood: "legno massiccio", + cadetblue: "verde petrolio", + chartreuse: "verde brillante", + chocolate: "cioccolato", + coral: "corallo", + cornflowerblue: "blu fiordaliso", + cornsilk: "crema", + crimson: "rosso scarlatto", + cyan: "ciano", + darkblue: "blu scuro", + darkcyan: "celeste scuro", + darkgoldenrod: "ocra scuro", + darkgray: "grigio scuro", + darkgreen: "verde scuro", + darkgrey: "grigio scuro", // same as darkgray + darkkhaki: "cachi scuro", + darkmagenta: "magenta scuro", + darkolivegreen: "verde oliva scuro", + darkorange: "arancione scuro", + darkorchid: "orchidea scuro", + darkred: "rosso scuro", + darksalmon: "salmone scuro", + darkseagreen: "verde acqua scuro", + darkslateblue: "blu ardesia scuro", + darkslategray: "grigio ardesia scuro", + darkslategrey: "grigio ardesia scuro", // same as darkslategray + darkturquoise: "turchese scuro", + darkviolet: "viola scuro", + deeppink: "ciclamino", + deepskyblue: "azzurro intenso", + dimgray: "grigio tenue", + dimgrey: "grigio tenue", // same as dimgray + dodgerblue: "dodger blue", + firebrick: "mattone", + floralwhite: "bianco grigio", + forestgreen: "verde pino scuro", + fuchsia: "fucsia", + gainsboro: "gainsboro", + ghostwhite: "bianco gesso", + gold: "oro", + goldenrod: "dorato", + gray: "grigio", + green: "verde", + greenyellow: "verde-giallo", + grey: "grigio", // same as gray + honeydew: "miele", + hotpink: "rosa acceso", + indianred: "terra indiana", + indigo: "indaco", + ivory: "avorio", + khaki: "cachi", + lavender: "lavanda", + lavenderblush: "lavanda rosa", + lawngreen: "verde brillante chiaro", + lemonchiffon: "lemon chiffon", + lightblue: "blu chiaro", + lightcoral: "corallo chiaro", + lightcyan: "ciano chiaro", + lightgoldenrodyellow: "giallo dorato chiaro", + lightgray: "grigio chiaro", + lightgreen: "verde chiaro", + lightgrey: "grigio chiaro", // same as lightgray + lightpink: "rosa chiaro", + lightsalmon: "salmone chiaro", + lightseagreen: "verde acqua chiaro", + lightskyblue: "azzurro chiaro", + lightslategray: "grigio ardesia chiaro", + lightslategrey: "grigio ardesia chiaro", // same as lightslategray + lightsteelblue: "blu acciaio chiaro", + lightyellow: "giallo chiaro", + lime: "lime", + limegreen: "verde lime", + linen: "lino", + magenta: "magenta", + maroon: "Bordeaux", + mediumaquamarine: "acquamarina medio", + mediumblue: "blu medio", + mediumorchid: "orchidea medio", + mediumpurple: "viola medio", + mediumseagreen: "verde acqua medio", + mediumslateblue: "blu ardesia medio", + mediumspringgreen: "verde brillante medio", + mediumturquoise: "turchese medio", + mediumvioletred: "violetto rosso medio", + midnightblue: "blu notte", + mintcream: "bianco nuvola", + mistyrose: "rosa pallido", + moccasin: "mocassino", + navajowhite: "sabbia", + navy: "blu scuro", + oldlace: "mandorla", + olive: "verde oliva", + olivedrab: "verde bottiglia", + orange: "arancione", + orangered: "vermiglio", + orchid: "orchidea", + palegoldenrod: "dorato pallido", + palegreen: "verde pallido", + paleturquoise: "turchese pallido", + palevioletred: "violetto rosso pallido", + papayawhip: "papaya", + peachpuff: "pesche", + peru: "perù", + pink: "rosa", + plum: "prugna", + powderblue: "azzurro polvere", + purple: "viola", + red: "rosso", + rosybrown: "caffè latte", + royalblue: "royal blue", + saddlebrown: "cacao", + salmon: "salmone", + sandybrown: "argilla", + seagreen: "verde acqua", + seashell: "sabbia rosa", + sienna: "terra di siena", + silver: "argento", + skyblue: "azzurro", + slateblue: "blu ardesia", + slategray: "grigio ardesia", + slategrey: "grigio ardesia", // same as slategray + snow: "neve", + springgreen: "verde brillante", + steelblue: "blu brillante", + tan: "tan", + teal: "verde acqua", + thistle: "rosa cenere", + tomato: "pomodoro", + transparent: "trasparente", + turquoise: "turchese", + violet: "violetto", + wheat: "tabacco", + white: "bianco", + whitesmoke: "bianco fumo", + yellow: "giallo", + yellowgreen: "giallo verde" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ja/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ja/colors.js new file mode 100644 index 00000000..820c1b28 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ja/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/ja/colors",({aliceblue:"アリスブルー",antiquewhite:"アンティークホワイト",aqua:"アクア",aquamarine:"碧緑",azure:"薄い空色",beige:"ベージュ",bisque:"ビスク",black:"黒",blanchedalmond:"皮なしアーモンド",blue:"青",blueviolet:"青紫",brown:"茶",burlywood:"バーリーウッド",cadetblue:"くすんだ青",chartreuse:"淡黄緑",chocolate:"チョコレート",coral:"珊瑚",cornflowerblue:"コーンフラワーブルー",cornsilk:"コーンシルク",crimson:"深紅",cyan:"シアンブルー",darkblue:"ダークブルー",darkcyan:"ダークシアンブルー",darkgoldenrod:"ダークゴールデンロッド",darkgray:"ダークグレイ",darkgreen:"ダークグリーン",darkgrey:"ダークグレイ",darkkhaki:"ダークカーキ",darkmagenta:"ダークマジェンタ",darkolivegreen:"ダークオリーブグリーン",darkorange:"ダークオレンジ",darkorchid:"ダークオーキッド",darkred:"ダークレッド",darksalmon:"ダークサーモン",darkseagreen:"ダークシーグリーン",darkslateblue:"ダークスレートブルー",darkslategray:"ダークスレートグレイ",darkslategrey:"ダークスレートグレイ",darkturquoise:"ダークターコイズ",darkviolet:"ダークバイオレット",deeppink:"濃いピンク",deepskyblue:"濃い空色",dimgray:"くすんだグレイ",dimgrey:"くすんだグレイ",dodgerblue:"ドッジャーブルー",firebrick:"赤煉瓦色",floralwhite:"フローラルホワイト",forestgreen:"フォレストグリーン",fuchsia:"紫紅色",gainsboro:"ゲインズボーロ",ghostwhite:"ゴーストホワイト",gold:"金",goldenrod:"ゴールデンロッド",gray:"グレイ",green:"緑",greenyellow:"緑黄色",grey:"グレイ",honeydew:"ハニーデュー",hotpink:"ホットピンク",indianred:"インディアンレッド",indigo:"藍色",ivory:"アイボリー",khaki:"カーキ",lavender:"ラベンダー",lavenderblush:"ラベンダーブラッシ",lawngreen:"ローングリーン",lemonchiffon:"レモンシフォン",lightblue:"ライトブルー",lightcoral:"ライトコーラル",lightcyan:"ライトシアン",lightgoldenrodyellow:"ライトゴールデンロッドイエロー",lightgray:"ライトグレイ",lightgreen:"ライトグリーン",lightgrey:"ライトグレイ",lightpink:"ライトピンク",lightsalmon:"ライトサーモン",lightseagreen:"ライトシーグリーン",lightskyblue:"ライトスカイブルー",lightslategray:"ライトスレートグレイ",lightslategrey:"ライトスレートグレイ",lightsteelblue:"ライトスチールブルー",lightyellow:"ライトイエロー",lime:"ライム",limegreen:"ライムグリーン",linen:"亜麻色",magenta:"赤紫",maroon:"えび茶",mediumaquamarine:"ミディアムアクアマリーン",mediumblue:"ミディアムブルー",mediumorchid:"ミディアムオーキッド",mediumpurple:"ミディアムパープル",mediumseagreen:"ミディアムシーグリーン",mediumslateblue:"ミディアムスレートブルー",mediumspringgreen:"ミディアムスプリンググリーン",mediumturquoise:"ミディアムターコイズ",mediumvioletred:"ミディアムバイオレットレッド",midnightblue:"ミッドナイトブルー",mintcream:"ミントクリーム",mistyrose:"ミスティローズ",moccasin:"モカシン",navajowhite:"ナバホホワイト",navy:"濃紺",oldlace:"オールドレイス",olive:"オリーブ",olivedrab:"濃黄緑",orange:"オレンジ",orangered:"オレンジレッド",orchid:"薄紫",palegoldenrod:"ペイルゴールデンロッド",palegreen:"ペイルグリーン",paleturquoise:"ペイルターコイズ",palevioletred:"ペイルバイオレットレッド",papayawhip:"パパイアホイップ",peachpuff:"ピーチパフ",peru:"ペルー",pink:"ピンク",plum:"深紫",powderblue:"淡青",purple:"紫",red:"赤",rosybrown:"ロージーブラウン",royalblue:"藤色",saddlebrown:"サドルブラウン",salmon:"サーモン",sandybrown:"砂褐色",seagreen:"シーグリーン",seashell:"シーシェル",sienna:"黄褐色",silver:"銀",skyblue:"スカイブルー",slateblue:"スレートブルー",slategray:"スレートグレイ",slategrey:"スレートグレイ",snow:"雪色",springgreen:"スプリンググリーン",steelblue:"鋼色",tan:"茶褐色",teal:"ティール",thistle:"シスル",tomato:"トマト色",transparent:"透明",turquoise:"ターコイズ",violet:"すみれ色",wheat:"小麦色",white:"白",whitesmoke:"ホワイトスモーク",yellow:"黄",yellowgreen:"黄緑"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ja/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ja/colors.js.uncompressed.js new file mode 100644 index 00000000..7051d786 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ja/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/ja/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "アリスブルー", + antiquewhite: "アンティークホワイト", + aqua: "アクア", + aquamarine: "碧緑", + azure: "薄い空色", + beige: "ベージュ", + bisque: "ビスク", + black: "黒", + blanchedalmond: "皮なしアーモンド", + blue: "青", + blueviolet: "青紫", + brown: "茶", + burlywood: "バーリーウッド", + cadetblue: "くすんだ青", + chartreuse: "淡黄緑", + chocolate: "チョコレート", + coral: "珊瑚", + cornflowerblue: "コーンフラワーブルー", + cornsilk: "コーンシルク", + crimson: "深紅", + cyan: "シアンブルー", + darkblue: "ダークブルー", + darkcyan: "ダークシアンブルー", + darkgoldenrod: "ダークゴールデンロッド", + darkgray: "ダークグレイ", + darkgreen: "ダークグリーン", + darkgrey: "ダークグレイ", // same as darkgray + darkkhaki: "ダークカーキ", + darkmagenta: "ダークマジェンタ", + darkolivegreen: "ダークオリーブグリーン", + darkorange: "ダークオレンジ", + darkorchid: "ダークオーキッド", + darkred: "ダークレッド", + darksalmon: "ダークサーモン", + darkseagreen: "ダークシーグリーン", + darkslateblue: "ダークスレートブルー", + darkslategray: "ダークスレートグレイ", + darkslategrey: "ダークスレートグレイ", // same as darkslategray + darkturquoise: "ダークターコイズ", + darkviolet: "ダークバイオレット", + deeppink: "濃いピンク", + deepskyblue: "濃い空色", + dimgray: "くすんだグレイ", + dimgrey: "くすんだグレイ", // same as dimgray + dodgerblue: "ドッジャーブルー", + firebrick: "赤煉瓦色", + floralwhite: "フローラルホワイト", + forestgreen: "フォレストグリーン", + fuchsia: "紫紅色", + gainsboro: "ゲインズボーロ", + ghostwhite: "ゴーストホワイト", + gold: "金", + goldenrod: "ゴールデンロッド", + gray: "グレイ", + green: "緑", + greenyellow: "緑黄色", + grey: "グレイ", // same as gray + honeydew: "ハニーデュー", + hotpink: "ホットピンク", + indianred: "インディアンレッド", + indigo: "藍色", + ivory: "アイボリー", + khaki: "カーキ", + lavender: "ラベンダー", + lavenderblush: "ラベンダーブラッシ", + lawngreen: "ローングリーン", + lemonchiffon: "レモンシフォン", + lightblue: "ライトブルー", + lightcoral: "ライトコーラル", + lightcyan: "ライトシアン", + lightgoldenrodyellow: "ライトゴールデンロッドイエロー", + lightgray: "ライトグレイ", + lightgreen: "ライトグリーン", + lightgrey: "ライトグレイ", // same as lightgray + lightpink: "ライトピンク", + lightsalmon: "ライトサーモン", + lightseagreen: "ライトシーグリーン", + lightskyblue: "ライトスカイブルー", + lightslategray: "ライトスレートグレイ", + lightslategrey: "ライトスレートグレイ", // same as lightslategray + lightsteelblue: "ライトスチールブルー", + lightyellow: "ライトイエロー", + lime: "ライム", + limegreen: "ライムグリーン", + linen: "亜麻色", + magenta: "赤紫", + maroon: "えび茶", + mediumaquamarine: "ミディアムアクアマリーン", + mediumblue: "ミディアムブルー", + mediumorchid: "ミディアムオーキッド", + mediumpurple: "ミディアムパープル", + mediumseagreen: "ミディアムシーグリーン", + mediumslateblue: "ミディアムスレートブルー", + mediumspringgreen: "ミディアムスプリンググリーン", + mediumturquoise: "ミディアムターコイズ", + mediumvioletred: "ミディアムバイオレットレッド", + midnightblue: "ミッドナイトブルー", + mintcream: "ミントクリーム", + mistyrose: "ミスティローズ", + moccasin: "モカシン", + navajowhite: "ナバホホワイト", + navy: "濃紺", + oldlace: "オールドレイス", + olive: "オリーブ", + olivedrab: "濃黄緑", + orange: "オレンジ", + orangered: "オレンジレッド", + orchid: "薄紫", + palegoldenrod: "ペイルゴールデンロッド", + palegreen: "ペイルグリーン", + paleturquoise: "ペイルターコイズ", + palevioletred: "ペイルバイオレットレッド", + papayawhip: "パパイアホイップ", + peachpuff: "ピーチパフ", + peru: "ペルー", + pink: "ピンク", + plum: "深紫", + powderblue: "淡青", + purple: "紫", + red: "赤", + rosybrown: "ロージーブラウン", + royalblue: "藤色", + saddlebrown: "サドルブラウン", + salmon: "サーモン", + sandybrown: "砂褐色", + seagreen: "シーグリーン", + seashell: "シーシェル", + sienna: "黄褐色", + silver: "銀", + skyblue: "スカイブルー", + slateblue: "スレートブルー", + slategray: "スレートグレイ", + slategrey: "スレートグレイ", // same as slategray + snow: "雪色", + springgreen: "スプリンググリーン", + steelblue: "鋼色", + tan: "茶褐色", + teal: "ティール", + thistle: "シスル", + tomato: "トマト色", + transparent: "透明", + turquoise: "ターコイズ", + violet: "すみれ色", + wheat: "小麦色", + white: "白", + whitesmoke: "ホワイトスモーク", + yellow: "黄", + yellowgreen: "黄緑" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/kk/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/kk/colors.js new file mode 100644 index 00000000..8a796f28 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/kk/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/kk/colors",({aliceblue:"бозғылт көк",antiquewhite:"ақ антик",aqua:"су түсі",aquamarine:"жасылдау-көк",azure:"көкшіл",beige:"сарғыш",bisque:"бисквит",black:"қара",blanchedalmond:"ағартылған бадам",blue:"көк",blueviolet:"көк-ақшыл көк",brown:"қоңыр",burlywood:"ағаш тамыры",cadetblue:"кадет көк",chartreuse:"жасылдау-сары",chocolate:"шоколад",coral:"коралл",cornflowerblue:"көктікен көк",cornsilk:"жібек",crimson:"таңқұрай",cyan:"циан",darkblue:"күңгірт көк",darkcyan:"күңгірт циан",darkgoldenrod:"қара алтын",darkgray:"қою сұры",darkgreen:"қою жасыл",darkgrey:"қою сұры",darkkhaki:"қою хаки",darkmagenta:"қою қызыл күрең",darkolivegreen:"қою қоңырлау жасыл",darkorange:"қою қызғылт сары",darkorchid:"күңгірт орсель",darkred:"күңгірт қызыл",darksalmon:"қою сарылау қызғылт",darkseagreen:"қою теңіз толқыны",darkslateblue:"күңгірт грифель көк",darkslategray:"күңгірт көкшіл сұры",darkslategrey:"күңгірт көкшіл сұры",darkturquoise:"күңгірт көгілдір",darkviolet:"күңгірт қызыл күрең",deeppink:"қою қызғылт",deepskyblue:"қою аспан көк",dimgray:"күңгірт сұры",dimgrey:"күңгірт сұры",dodgerblue:"көк доджер",firebrick:"қызыл кірпіш",floralwhite:"гүлді ақ",forestgreen:"шөпті жасыл",fuchsia:"фуксия",gainsboro:"gainsboro",ghostwhite:"елесті ақ",gold:"алтындай",goldenrod:"алтын",gray:"сұры",green:"жасыл",greenyellow:"жасыл-сары",grey:"сұры",honeydew:"балдай",hotpink:"ашық қызғылт",indianred:"үнділік қызыл",indigo:"индиго",ivory:"піл сүйег",khaki:"хаки",lavender:"бозғылт ақшыл көк",lavenderblush:"күңгірт ақшыл қызыл",lawngreen:"көгал жасыл",lemonchiffon:"лимон шиффон",lightblue:"ақшыл көк",lightcoral:"ашық коралл",lightcyan:"ашық көгілдір",lightgoldenrodyellow:"ашық алтындай сары",lightgray:"ашық сұры",lightgreen:"ақшыл жасыл",lightgrey:"ашық сұры",lightpink:"ақшыл қызғылт",lightsalmon:"ашық сарғыш қызғылт",lightseagreen:"ашық теңіз толқыны",lightskyblue:"ашық аспан көк",lightslategray:"ашық көкшіл сұры",lightslategrey:"ашық көкшіл сұры",lightsteelblue:"ашық сұрғылт көк",lightyellow:"ашық сары",lime:"әк",limegreen:"әк жасыл",linen:"зығыр",magenta:"фуксин",maroon:"сарғылт",mediumaquamarine:"орташа жасылдау көк",mediumblue:"орташа көк",mediumorchid:"орташа ақшыл",mediumpurple:"орташа қызыл күрең",mediumseagreen:"орташа теңіз толқыны",mediumslateblue:"орташа көкшіл сұры",mediumspringgreen:"орташа ашық жасыл",mediumturquoise:"орташа көгілдір",mediumvioletred:"орташа ақшыл көк-қызыл",midnightblue:"түн ортасы көк",mintcream:"жалбыз майы",mistyrose:"көмескі қызғылт",moccasin:"мокасин",navajowhite:"навахо ақ",navy:"теңіз көк",oldlace:"ескі бау",olive:"зәйтүнді",olivedrab:"жасылдау сары",orange:"қызғылт сары",orangered:"қызғылт сары қызыл",orchid:"орхидея",palegoldenrod:"бозғылт алтын",palegreen:"бозғылт жасыл",paleturquoise:"бозғылт көгілдір",palevioletred:"бозғылт ақшыл көк-қызыл",papayawhip:"папайя қамшысы",peachpuff:"шабдалы",peru:"перу",pink:"қызғылт",plum:"алхоры",powderblue:"жасылдау көк",purple:"қызыл күрең",red:"қызыл",rosybrown:"қызғылт қоңыр",royalblue:"патша көк",saddlebrown:"тоқым қоңыр",salmon:"сомон",sandybrown:"құмды қоңыр",seagreen:"теңіз толқыны",seashell:"теңіз қабыршағы",sienna:"сиенна",silver:"күмістей",skyblue:"аспан көк",slateblue:"грифель көк",slategray:"көкшіл сұры",slategrey:"көкшіл сұры",snow:"қар",springgreen:"көктем жасыл",steelblue:"көкшіл сұрғылт",tan:"сарғыш қоңыр",teal:"шүрегей",thistle:"артишок",tomato:"қызанақ",transparent:"мөлдір",turquoise:"көгілдір",violet:"күлгін",wheat:"бидай",white:"ақ",whitesmoke:"ақ түтін",yellow:"сары",yellowgreen:"сарғыш жасыл"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/kk/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/kk/colors.js.uncompressed.js new file mode 100644 index 00000000..d7aa08c4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/kk/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/kk/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "бозғылт көк", + antiquewhite: "ақ антик", + aqua: "су түсі", + aquamarine: "жасылдау-көк", + azure: "көкшіл", + beige: "сарғыш", + bisque: "бисквит", + black: "қара", + blanchedalmond: "ағартылған бадам", + blue: "көк", + blueviolet: "көк-ақшыл көк", + brown: "қоңыр", + burlywood: "ағаш тамыры", + cadetblue: "кадет көк", + chartreuse: "жасылдау-сары", + chocolate: "шоколад", + coral: "коралл", + cornflowerblue: "көктікен көк", + cornsilk: "жібек", + crimson: "таңқұрай", + cyan: "циан", + darkblue: "күңгірт көк", + darkcyan: "күңгірт циан", + darkgoldenrod: "қара алтын", + darkgray: "қою сұры", + darkgreen: "қою жасыл", + darkgrey: "қою сұры", // same as darkgray + darkkhaki: "қою хаки", + darkmagenta: "қою қызыл күрең", + darkolivegreen: "қою қоңырлау жасыл", + darkorange: "қою қызғылт сары", + darkorchid: "күңгірт орсель", + darkred: "күңгірт қызыл", + darksalmon: "қою сарылау қызғылт", + darkseagreen: "қою теңіз толқыны", + darkslateblue: "күңгірт грифель көк", + darkslategray: "күңгірт көкшіл сұры", + darkslategrey: "күңгірт көкшіл сұры", // same as darkslategray + darkturquoise: "күңгірт көгілдір", + darkviolet: "күңгірт қызыл күрең", + deeppink: "қою қызғылт", + deepskyblue: "қою аспан көк", + dimgray: "күңгірт сұры", + dimgrey: "күңгірт сұры", // same as dimgray + dodgerblue: "көк доджер", + firebrick: "қызыл кірпіш", + floralwhite: "гүлді ақ", + forestgreen: "шөпті жасыл", + fuchsia: "фуксия", + gainsboro: "gainsboro", + ghostwhite: "елесті ақ", + gold: "алтындай", + goldenrod: "алтын", + gray: "сұры", + green: "жасыл", + greenyellow: "жасыл-сары", + grey: "сұры", // same as gray + honeydew: "балдай", + hotpink: "ашық қызғылт", + indianred: "үнділік қызыл", + indigo: "индиго", + ivory: "піл сүйег", + khaki: "хаки", + lavender: "бозғылт ақшыл көк", + lavenderblush: "күңгірт ақшыл қызыл", + lawngreen: "көгал жасыл", + lemonchiffon: "лимон шиффон", + lightblue: "ақшыл көк", + lightcoral: "ашық коралл", + lightcyan: "ашық көгілдір", + lightgoldenrodyellow: "ашық алтындай сары", + lightgray: "ашық сұры", + lightgreen: "ақшыл жасыл", + lightgrey: "ашық сұры", // same as lightgray + lightpink: "ақшыл қызғылт", + lightsalmon: "ашық сарғыш қызғылт", + lightseagreen: "ашық теңіз толқыны", + lightskyblue: "ашық аспан көк", + lightslategray: "ашық көкшіл сұры", + lightslategrey: "ашық көкшіл сұры", // same as lightslategray + lightsteelblue: "ашық сұрғылт көк", + lightyellow: "ашық сары", + lime: "әк", + limegreen: "әк жасыл", + linen: "зығыр", + magenta: "фуксин", + maroon: "сарғылт", + mediumaquamarine: "орташа жасылдау көк", + mediumblue: "орташа көк", + mediumorchid: "орташа ақшыл", + mediumpurple: "орташа қызыл күрең", + mediumseagreen: "орташа теңіз толқыны", + mediumslateblue: "орташа көкшіл сұры", + mediumspringgreen: "орташа ашық жасыл", + mediumturquoise: "орташа көгілдір", + mediumvioletred: "орташа ақшыл көк-қызыл", + midnightblue: "түн ортасы көк", + mintcream: "жалбыз майы", + mistyrose: "көмескі қызғылт", + moccasin: "мокасин", + navajowhite: "навахо ақ", + navy: "теңіз көк", + oldlace: "ескі бау", + olive: "зәйтүнді", + olivedrab: "жасылдау сары", + orange: "қызғылт сары", + orangered: "қызғылт сары қызыл", + orchid: "орхидея", + palegoldenrod: "бозғылт алтын", + palegreen: "бозғылт жасыл", + paleturquoise: "бозғылт көгілдір", + palevioletred: "бозғылт ақшыл көк-қызыл", + papayawhip: "папайя қамшысы", + peachpuff: "шабдалы", + peru: "перу", + pink: "қызғылт", + plum: "алхоры", + powderblue: "жасылдау көк", + purple: "қызыл күрең", + red: "қызыл", + rosybrown: "қызғылт қоңыр", + royalblue: "патша көк", + saddlebrown: "тоқым қоңыр", + salmon: "сомон", + sandybrown: "құмды қоңыр", + seagreen: "теңіз толқыны", + seashell: "теңіз қабыршағы", + sienna: "сиенна", + silver: "күмістей", + skyblue: "аспан көк", + slateblue: "грифель көк", + slategray: "көкшіл сұры", + slategrey: "көкшіл сұры", // same as slategray + snow: "қар", + springgreen: "көктем жасыл", + steelblue: "көкшіл сұрғылт", + tan: "сарғыш қоңыр", + teal: "шүрегей", + thistle: "артишок", + tomato: "қызанақ", + transparent: "мөлдір", + turquoise: "көгілдір", + violet: "күлгін", + wheat: "бидай", + white: "ақ", + whitesmoke: "ақ түтін", + yellow: "сары", + yellowgreen: "сарғыш жасыл" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ko/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ko/colors.js new file mode 100644 index 00000000..e4408570 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ko/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/ko/colors",({aliceblue:"앨리스 블루(alice blue)",antiquewhite:"앤틱 화이트(antique white)",aqua:"아쿠아(aqua)",aquamarine:"아쿠아마린(aquamarine)",azure:"애쥬어(azure)",beige:"베이지(beige)",bisque:"비스크(bisque)",black:"블랙(black)",blanchedalmond:"블랜치 아몬드(blanched almond)",blue:"블루(blue)",blueviolet:"블루 바이올렛(blue-violet)",brown:"브라운(brown)",burlywood:"벌리우드(burlywood)",cadetblue:"카뎃 블루(cadet blue)",chartreuse:"샤르트뢰즈(chartreuse)",chocolate:"초콜렛(chocolate)",coral:"코랄(coral)",cornflowerblue:"콘플라워 블루(cornflower blue)",cornsilk:"콘실크(cornsilk)",crimson:"크림슨(crimson)",cyan:"시안(cyan)",darkblue:"다크 블루(dark blue)",darkcyan:"다크 시안(dark cyan)",darkgoldenrod:"다크 골든로드(dark goldenrod)",darkgray:"다크 그레이(dark gray)",darkgreen:"다크 그린(dark green)",darkgrey:"다크 그레이(dark gray)",darkkhaki:"다크 카키(dark khaki)",darkmagenta:"다크 마젠타(dark magenta)",darkolivegreen:"다크 올리브 그린(dark olive green)",darkorange:"다크 오렌지(dark orange)",darkorchid:"다크 오키드(dark orchid)",darkred:"다크 레드(dark red)",darksalmon:"다크 샐몬(dark salmon)",darkseagreen:"다크 씨 그린(dark sea green)",darkslateblue:"다크 슬레이트 블루(dark slate blue)",darkslategray:"다크 슬레이트 그레이(dark slate gray)",darkslategrey:"다크 슬레이트 그레이(dark slate gray)",darkturquoise:"다크 터콰즈(dark turquoise)",darkviolet:"다크 바이올렛(dark violet)",deeppink:"딥 핑크(deep pink)",deepskyblue:"딥 스카이 블루(deep sky blue)",dimgray:"딤 그레이(dim gray)",dimgrey:"딤 그레이(dim gray)",dodgerblue:"다저 블루(dodger blue)",firebrick:"파이어 브릭(fire brick)",floralwhite:"플로랄 화이트(floral white)",forestgreen:"포레스트 그린(forest green)",fuchsia:"후크샤(fuchsia)",gainsboro:"게인스브로(gainsboro)",ghostwhite:"고스트 화이트(ghost white)",gold:"골드(gold)",goldenrod:"골든로드(goldenrod)",gray:"그레이(gray)",green:"그린(green)",greenyellow:"그린 옐로우(green-yellow)",grey:"그레이(gray)",honeydew:"허니듀(honeydew)",hotpink:"핫 핑크(hot pink)",indianred:"인디안 레드(indian red)",indigo:"인디고(indigo)",ivory:"아이보리(ivory)",khaki:"카키(khaki)",lavender:"라벤더(lavender)",lavenderblush:"라벤더 블러쉬(lavender blush)",lawngreen:"론 그린(lawn green)",lemonchiffon:"레몬 쉬폰(lemon chiffon)",lightblue:"라이트 블루(light blue)",lightcoral:"라이트 코랄(light coral)",lightcyan:"라이트 시안(light cyan)",lightgoldenrodyellow:"라이트 골든로드 옐로우(light goldenrod yellow)",lightgray:"라이트 그레이(light gray)",lightgreen:"라이트 그린(light green)",lightgrey:"라이트 그레이(light gray)",lightpink:"라이트 핑크(light pink)",lightsalmon:"라이트 샐몬(light salmon)",lightseagreen:"라이트 씨 그린(light sea green)",lightskyblue:"라이트 스카이 블루(light sky blue)",lightslategray:"라이트 슬레이트 그레이(light slate gray)",lightslategrey:"라이트 슬레이트 그레이(light slate gray)",lightsteelblue:"라이트 스틸 블루(light steel blue)",lightyellow:"라이트 옐로우(light yellow)",lime:"라임(lime)",limegreen:"라임 그린(lime green)",linen:"리넨(linen)",magenta:"마젠타(magenta)",maroon:"마룬(maroon)",mediumaquamarine:"미디엄 아쿠아마린(medium aquamarine)",mediumblue:"미디엄 블루(medium blue)",mediumorchid:"미디엄 오키드(medium orchid)",mediumpurple:"미디엄 퍼플(medium purple)",mediumseagreen:"미디엄 씨 그린(medium sea green)",mediumslateblue:"미디엄 슬레이트 블루(medium slate blue)",mediumspringgreen:"미디엄 스프링 그린(medium spring green)",mediumturquoise:"미디엄 터콰즈(medium turquoise)",mediumvioletred:"미디엄 바이올렛 레드(medium violet-red)",midnightblue:"미드나잇 블루(midnight blue)",mintcream:"민트 크림(mint cream)",mistyrose:"미스티 로즈(misty rose)",moccasin:"모카신(moccasin)",navajowhite:"나바호 화이트(navajo white)",navy:"네이비(navy)",oldlace:"올드 레이스(old lace)",olive:"올리브(olive)",olivedrab:"올리브 드랩(olive drab)",orange:"오렌지(orange)",orangered:"오렌지 레드(orange red)",orchid:"오키드(orchid)",palegoldenrod:"페일 골든로드(pale goldenrod)",palegreen:"페일 그린(pale green)",paleturquoise:"페일 터콰즈(pale turquoise)",palevioletred:"페일 바이올렛 레드(pale violet-red)",papayawhip:"파파야 휩(papaya whip)",peachpuff:"피치 퍼프(peach puff)",peru:"페루(peru)",pink:"핑크(pink)",plum:"플럼(plum)",powderblue:"파우더 블루(powder blue)",purple:"퍼플(purple)",red:"레드(red)",rosybrown:"로지 브라운(rosy brown)",royalblue:"로얄 블루(royal blue)",saddlebrown:"새들 브라운(saddle brown)",salmon:"샐몬(salmon)",sandybrown:"샌디 브라운(sandy brown)",seagreen:"씨 그린(sea green)",seashell:"씨쉘(seashell)",sienna:"시에나(sienna)",silver:"실버(silver)",skyblue:"스카이 블루(sky blue)",slateblue:"슬레이트 블루(slate blue)",slategray:"슬레이트 그레이(slate gray)",slategrey:"슬레이트 그레이(slate gray)",snow:"스노우(snow)",springgreen:"스프링 그린(spring green)",steelblue:"스틸 블루(steel blue)",tan:"탠(tan)",teal:"틸(teal)",thistle:"시슬(thistle)",tomato:"토마토(tomato)",transparent:"투명(transparent)",turquoise:"터콰즈(turquoise)",violet:"바이올렛(violet)",wheat:"휘트(wheat)",white:"화이트(white)",whitesmoke:"화이트 스모크(white smoke)",yellow:"옐로우(yellow)",yellowgreen:"옐로우 그린(yellow green)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ko/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ko/colors.js.uncompressed.js new file mode 100644 index 00000000..901b3c9d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ko/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/ko/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "앨리스 블루(alice blue)", + antiquewhite: "앤틱 화이트(antique white)", + aqua: "아쿠아(aqua)", + aquamarine: "아쿠아마린(aquamarine)", + azure: "애쥬어(azure)", + beige: "베이지(beige)", + bisque: "비스크(bisque)", + black: "블랙(black)", + blanchedalmond: "블랜치 아몬드(blanched almond)", + blue: "블루(blue)", + blueviolet: "블루 바이올렛(blue-violet)", + brown: "브라운(brown)", + burlywood: "벌리우드(burlywood)", + cadetblue: "카뎃 블루(cadet blue)", + chartreuse: "샤르트뢰즈(chartreuse)", + chocolate: "초콜렛(chocolate)", + coral: "코랄(coral)", + cornflowerblue: "콘플라워 블루(cornflower blue)", + cornsilk: "콘실크(cornsilk)", + crimson: "크림슨(crimson)", + cyan: "시안(cyan)", + darkblue: "다크 블루(dark blue)", + darkcyan: "다크 시안(dark cyan)", + darkgoldenrod: "다크 골든로드(dark goldenrod)", + darkgray: "다크 그레이(dark gray)", + darkgreen: "다크 그린(dark green)", + darkgrey: "다크 그레이(dark gray)", // same as darkgray + darkkhaki: "다크 카키(dark khaki)", + darkmagenta: "다크 마젠타(dark magenta)", + darkolivegreen: "다크 올리브 그린(dark olive green)", + darkorange: "다크 오렌지(dark orange)", + darkorchid: "다크 오키드(dark orchid)", + darkred: "다크 레드(dark red)", + darksalmon: "다크 샐몬(dark salmon)", + darkseagreen: "다크 씨 그린(dark sea green)", + darkslateblue: "다크 슬레이트 블루(dark slate blue)", + darkslategray: "다크 슬레이트 그레이(dark slate gray)", + darkslategrey: "다크 슬레이트 그레이(dark slate gray)", // same as darkslategray + darkturquoise: "다크 터콰즈(dark turquoise)", + darkviolet: "다크 바이올렛(dark violet)", + deeppink: "딥 핑크(deep pink)", + deepskyblue: "딥 스카이 블루(deep sky blue)", + dimgray: "딤 그레이(dim gray)", + dimgrey: "딤 그레이(dim gray)", // same as dimgray + dodgerblue: "다저 블루(dodger blue)", + firebrick: "파이어 브릭(fire brick)", + floralwhite: "플로랄 화이트(floral white)", + forestgreen: "포레스트 그린(forest green)", + fuchsia: "후크샤(fuchsia)", + gainsboro: "게인스브로(gainsboro)", + ghostwhite: "고스트 화이트(ghost white)", + gold: "골드(gold)", + goldenrod: "골든로드(goldenrod)", + gray: "그레이(gray)", + green: "그린(green)", + greenyellow: "그린 옐로우(green-yellow)", + grey: "그레이(gray)", // same as gray + honeydew: "허니듀(honeydew)", + hotpink: "핫 핑크(hot pink)", + indianred: "인디안 레드(indian red)", + indigo: "인디고(indigo)", + ivory: "아이보리(ivory)", + khaki: "카키(khaki)", + lavender: "라벤더(lavender)", + lavenderblush: "라벤더 블러쉬(lavender blush)", + lawngreen: "론 그린(lawn green)", + lemonchiffon: "레몬 쉬폰(lemon chiffon)", + lightblue: "라이트 블루(light blue)", + lightcoral: "라이트 코랄(light coral)", + lightcyan: "라이트 시안(light cyan)", + lightgoldenrodyellow: "라이트 골든로드 옐로우(light goldenrod yellow)", + lightgray: "라이트 그레이(light gray)", + lightgreen: "라이트 그린(light green)", + lightgrey: "라이트 그레이(light gray)", // same as lightgray + lightpink: "라이트 핑크(light pink)", + lightsalmon: "라이트 샐몬(light salmon)", + lightseagreen: "라이트 씨 그린(light sea green)", + lightskyblue: "라이트 스카이 블루(light sky blue)", + lightslategray: "라이트 슬레이트 그레이(light slate gray)", + lightslategrey: "라이트 슬레이트 그레이(light slate gray)", // same as lightslategray + lightsteelblue: "라이트 스틸 블루(light steel blue)", + lightyellow: "라이트 옐로우(light yellow)", + lime: "라임(lime)", + limegreen: "라임 그린(lime green)", + linen: "리넨(linen)", + magenta: "마젠타(magenta)", + maroon: "마룬(maroon)", + mediumaquamarine: "미디엄 아쿠아마린(medium aquamarine)", + mediumblue: "미디엄 블루(medium blue)", + mediumorchid: "미디엄 오키드(medium orchid)", + mediumpurple: "미디엄 퍼플(medium purple)", + mediumseagreen: "미디엄 씨 그린(medium sea green)", + mediumslateblue: "미디엄 슬레이트 블루(medium slate blue)", + mediumspringgreen: "미디엄 스프링 그린(medium spring green)", + mediumturquoise: "미디엄 터콰즈(medium turquoise)", + mediumvioletred: "미디엄 바이올렛 레드(medium violet-red)", + midnightblue: "미드나잇 블루(midnight blue)", + mintcream: "민트 크림(mint cream)", + mistyrose: "미스티 로즈(misty rose)", + moccasin: "모카신(moccasin)", + navajowhite: "나바호 화이트(navajo white)", + navy: "네이비(navy)", + oldlace: "올드 레이스(old lace)", + olive: "올리브(olive)", + olivedrab: "올리브 드랩(olive drab)", + orange: "오렌지(orange)", + orangered: "오렌지 레드(orange red)", + orchid: "오키드(orchid)", + palegoldenrod: "페일 골든로드(pale goldenrod)", + palegreen: "페일 그린(pale green)", + paleturquoise: "페일 터콰즈(pale turquoise)", + palevioletred: "페일 바이올렛 레드(pale violet-red)", + papayawhip: "파파야 휩(papaya whip)", + peachpuff: "피치 퍼프(peach puff)", + peru: "페루(peru)", + pink: "핑크(pink)", + plum: "플럼(plum)", + powderblue: "파우더 블루(powder blue)", + purple: "퍼플(purple)", + red: "레드(red)", + rosybrown: "로지 브라운(rosy brown)", + royalblue: "로얄 블루(royal blue)", + saddlebrown: "새들 브라운(saddle brown)", + salmon: "샐몬(salmon)", + sandybrown: "샌디 브라운(sandy brown)", + seagreen: "씨 그린(sea green)", + seashell: "씨쉘(seashell)", + sienna: "시에나(sienna)", + silver: "실버(silver)", + skyblue: "스카이 블루(sky blue)", + slateblue: "슬레이트 블루(slate blue)", + slategray: "슬레이트 그레이(slate gray)", + slategrey: "슬레이트 그레이(slate gray)", // same as slategray + snow: "스노우(snow)", + springgreen: "스프링 그린(spring green)", + steelblue: "스틸 블루(steel blue)", + tan: "탠(tan)", + teal: "틸(teal)", + thistle: "시슬(thistle)", + tomato: "토마토(tomato)", + transparent: "투명(transparent)", + turquoise: "터콰즈(turquoise)", + violet: "바이올렛(violet)", + wheat: "휘트(wheat)", + white: "화이트(white)", + whitesmoke: "화이트 스모크(white smoke)", + yellow: "옐로우(yellow)", + yellowgreen: "옐로우 그린(yellow green)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nb/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nb/colors.js new file mode 100644 index 00000000..1350f782 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nb/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/nb/colors",({aliceblue:"blåhvit",antiquewhite:"antikk hvit",aqua:"akva",aquamarine:"akvamarin",azure:"asur",beige:"beige",bisque:"gulrosa",black:"svart",blanchedalmond:"lys mandel",blue:"blå",blueviolet:"blåfiolett",brown:"brun",burlywood:"matt mellombrun",cadetblue:"mørk grønnblå",chartreuse:"løvgrønn",chocolate:"sjokolade",coral:"korall",cornflowerblue:"kornblå",cornsilk:"cornsilk",crimson:"karmosinrødt",cyan:"cyan",darkblue:"mørk blå",darkcyan:"mørk cyan",darkgoldenrod:"mørk gyldenris",darkgray:"mørk grå",darkgreen:"mørk grønn",darkgrey:"mørk grå",darkkhaki:"mørk khaki",darkmagenta:"mørk magenta",darkolivegreen:"mørk olivengrønn",darkorange:"mørk oransje",darkorchid:"mørk orkide",darkred:"mørk rød",darksalmon:"mørk lakserosa",darkseagreen:"mørk sjøgrønn",darkslateblue:"mørk skiferblå",darkslategray:"mørk skifergrå",darkslategrey:"mørk skifergrå",darkturquoise:"mørk turkis",darkviolet:"mørk fiolett",deeppink:"dyp rosa",deepskyblue:"dyp himmelblå",dimgray:"mørk mørkegrå",dimgrey:"mørk mørkegrå",dodgerblue:"lys havblå",firebrick:"mursteinsrød",floralwhite:"blomsterhvit",forestgreen:"skoggrønn",fuchsia:"fuksia",gainsboro:"lys lys grå",ghostwhite:"egghvit",gold:"gull",goldenrod:"gyldenris",gray:"grå",green:"grønn",greenyellow:"gulgrønn",grey:"grå",honeydew:"grønnhvit",hotpink:"halvmørk rosa",indianred:"rustrød",indigo:"indigo",ivory:"elfenbenshvit",khaki:"khaki",lavender:"lavendel",lavenderblush:"lillahvit",lawngreen:"plengrønn",lemonchiffon:"ferskenfarget",lightblue:"lys blå",lightcoral:"lys korall",lightcyan:"lys cyan",lightgoldenrodyellow:"lys gyldenrisgul",lightgray:"lys grå",lightgreen:"lys grønn",lightgrey:"lys grå",lightpink:"lys rosa",lightsalmon:"lys lakserosa",lightseagreen:"lys sjøgrønn",lightskyblue:"lys himmelblå",lightslategray:"lys skifergrå",lightslategrey:"lys skifergrå",lightsteelblue:"lys stålblå",lightyellow:"lys gul",lime:"lime",limegreen:"limegrønn",linen:"lin",magenta:"magenta",maroon:"rødbrun",mediumaquamarine:"middels akvamarin",mediumblue:"mellomblå",mediumorchid:"middels orkide",mediumpurple:"middels purpur",mediumseagreen:"middels sjøgrønn",mediumslateblue:"middels skiferblå",mediumspringgreen:"middels vårgrønn",mediumturquoise:"middels turkis",mediumvioletred:"middels fiolettrød",midnightblue:"midnattsblå",mintcream:"mintkrem",mistyrose:"lys rosenrød",moccasin:"lys gulbrun",navajowhite:"gulbrun",navy:"marineblå",oldlace:"kniplingshvit",olive:"oliven",olivedrab:"middels olivengrønn",orange:"oransje",orangered:"rødoransje",orchid:"orkide",palegoldenrod:"svak gyldenris",palegreen:"svak grønn",paleturquoise:"svak turkis",palevioletred:"svak fiolettrød",papayawhip:"lys papaya",peachpuff:"brunrosa",peru:"lys nøttebrun",pink:"rosa",plum:"plommefarget",powderblue:"lys grønnblå",purple:"purpur",red:"rød",rosybrown:"brunlilla",royalblue:"kongeblå",saddlebrown:"mørk nøttebrun",salmon:"lakserosa",sandybrown:"sandbrun",seagreen:"sjøgrønn",seashell:"skjellhvit",sienna:"nøttebrun",silver:"sølvfarget",skyblue:"himmelblå",slateblue:"skiferblå",slategray:"skifergrå",slategrey:"skifergrå",snow:"snøhvit",springgreen:"vårgrønn",steelblue:"stålblå",tan:"matt mellombrun",teal:"mørk grønnblå",thistle:"lys grålilla",tomato:"tomatrød",transparent:"gjennomsiktig",turquoise:"turkis",violet:"fiolett",wheat:"varm sienna",white:"hvit",whitesmoke:"røykhvit",yellow:"gul",yellowgreen:"gulgrønn"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nb/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nb/colors.js.uncompressed.js new file mode 100644 index 00000000..8345bbbe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nb/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/nb/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "blåhvit", + antiquewhite: "antikk hvit", + aqua: "akva", + aquamarine: "akvamarin", + azure: "asur", + beige: "beige", + bisque: "gulrosa", + black: "svart", + blanchedalmond: "lys mandel", + blue: "blå", + blueviolet: "blåfiolett", + brown: "brun", + burlywood: "matt mellombrun", + cadetblue: "mørk grønnblå", + chartreuse: "løvgrønn", + chocolate: "sjokolade", + coral: "korall", + cornflowerblue: "kornblå", + cornsilk: "cornsilk", + crimson: "karmosinrødt", + cyan: "cyan", + darkblue: "mørk blå", + darkcyan: "mørk cyan", + darkgoldenrod: "mørk gyldenris", + darkgray: "mørk grå", + darkgreen: "mørk grønn", + darkgrey: "mørk grå", // same as darkgray + darkkhaki: "mørk khaki", + darkmagenta: "mørk magenta", + darkolivegreen: "mørk olivengrønn", + darkorange: "mørk oransje", + darkorchid: "mørk orkide", + darkred: "mørk rød", + darksalmon: "mørk lakserosa", + darkseagreen: "mørk sjøgrønn", + darkslateblue: "mørk skiferblå", + darkslategray: "mørk skifergrå", + darkslategrey: "mørk skifergrå", // same as darkslategray + darkturquoise: "mørk turkis", + darkviolet: "mørk fiolett", + deeppink: "dyp rosa", + deepskyblue: "dyp himmelblå", + dimgray: "mørk mørkegrå", + dimgrey: "mørk mørkegrå", // same as dimgray + dodgerblue: "lys havblå", + firebrick: "mursteinsrød", + floralwhite: "blomsterhvit", + forestgreen: "skoggrønn", + fuchsia: "fuksia", + gainsboro: "lys lys grå", + ghostwhite: "egghvit", + gold: "gull", + goldenrod: "gyldenris", + gray: "grå", + green: "grønn", + greenyellow: "gulgrønn", + grey: "grå", // same as gray + honeydew: "grønnhvit", + hotpink: "halvmørk rosa", + indianred: "rustrød", + indigo: "indigo", + ivory: "elfenbenshvit", + khaki: "khaki", + lavender: "lavendel", + lavenderblush: "lillahvit", + lawngreen: "plengrønn", + lemonchiffon: "ferskenfarget", + lightblue: "lys blå", + lightcoral: "lys korall", + lightcyan: "lys cyan", + lightgoldenrodyellow: "lys gyldenrisgul", + lightgray: "lys grå", + lightgreen: "lys grønn", + lightgrey: "lys grå", // same as lightgray + lightpink: "lys rosa", + lightsalmon: "lys lakserosa", + lightseagreen: "lys sjøgrønn", + lightskyblue: "lys himmelblå", + lightslategray: "lys skifergrå", + lightslategrey: "lys skifergrå", // same as lightslategray + lightsteelblue: "lys stålblå", + lightyellow: "lys gul", + lime: "lime", + limegreen: "limegrønn", + linen: "lin", + magenta: "magenta", + maroon: "rødbrun", + mediumaquamarine: "middels akvamarin", + mediumblue: "mellomblå", + mediumorchid: "middels orkide", + mediumpurple: "middels purpur", + mediumseagreen: "middels sjøgrønn", + mediumslateblue: "middels skiferblå", + mediumspringgreen: "middels vårgrønn", + mediumturquoise: "middels turkis", + mediumvioletred: "middels fiolettrød", + midnightblue: "midnattsblå", + mintcream: "mintkrem", + mistyrose: "lys rosenrød", + moccasin: "lys gulbrun", + navajowhite: "gulbrun", + navy: "marineblå", + oldlace: "kniplingshvit", + olive: "oliven", + olivedrab: "middels olivengrønn", + orange: "oransje", + orangered: "rødoransje", + orchid: "orkide", + palegoldenrod: "svak gyldenris", + palegreen: "svak grønn", + paleturquoise: "svak turkis", + palevioletred: "svak fiolettrød", + papayawhip: "lys papaya", + peachpuff: "brunrosa", + peru: "lys nøttebrun", + pink: "rosa", + plum: "plommefarget", + powderblue: "lys grønnblå", + purple: "purpur", + red: "rød", + rosybrown: "brunlilla", + royalblue: "kongeblå", + saddlebrown: "mørk nøttebrun", + salmon: "lakserosa", + sandybrown: "sandbrun", + seagreen: "sjøgrønn", + seashell: "skjellhvit", + sienna: "nøttebrun", + silver: "sølvfarget", + skyblue: "himmelblå", + slateblue: "skiferblå", + slategray: "skifergrå", + slategrey: "skifergrå", // same as slategray + snow: "snøhvit", + springgreen: "vårgrønn", + steelblue: "stålblå", + tan: "matt mellombrun", + teal: "mørk grønnblå", + thistle: "lys grålilla", + tomato: "tomatrød", + transparent: "gjennomsiktig", + turquoise: "turkis", + violet: "fiolett", + wheat: "varm sienna", + white: "hvit", + whitesmoke: "røykhvit", + yellow: "gul", + yellowgreen: "gulgrønn" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nl/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nl/colors.js new file mode 100644 index 00000000..cb1a79fb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nl/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/nl/colors",({aliceblue:"lichtblauw",antiquewhite:"antiekwit",aqua:"aqua",aquamarine:"aquamarijn",azure:"azuur",beige:"beige",bisque:"oranjegeel",black:"zwart",blanchedalmond:"amandel",blue:"blauw",blueviolet:"violet",brown:"bruin",burlywood:"lichtbruin",cadetblue:"donkerstaalblauw",chartreuse:"groengeel",chocolate:"chocoladebruin",coral:"koraalrood",cornflowerblue:"korenbloemblauw",cornsilk:"maïsgeel",crimson:"karmozijnrood",cyan:"cyaan",darkblue:"donkerblauw",darkcyan:"donkercyaan",darkgoldenrod:"donkergoud",darkgray:"donkergrijs",darkgreen:"donkergroen",darkgrey:"donkergrijs",darkkhaki:"donkerkaki",darkmagenta:"donkermagenta",darkolivegreen:"donkerolijfgroen",darkorange:"donkeroranje",darkorchid:"donkerorchidee",darkred:"donkerrood",darksalmon:"donkerzalm",darkseagreen:"donkerzeegroen",darkslateblue:"donkergrijsblauw",darkslategray:"donkerblauwgrijs",darkslategrey:"donkerblauwgrijs",darkturquoise:"donkerturquoise",darkviolet:"donkerviolet",deeppink:"donkerroze",deepskyblue:"diephemelblauw",dimgray:"dofgrijs",dimgrey:"dofgrijs",dodgerblue:"helderblauw",firebrick:"vuursteenrood",floralwhite:"rozewit",forestgreen:"bosgroen",fuchsia:"fuchsia",gainsboro:"lichtblauwgrijs",ghostwhite:"spierwit",gold:"goud",goldenrod:"goudbruin",gray:"grijs",green:"groen",greenyellow:"groengeel",grey:"grijs",honeydew:"meloen",hotpink:"acaciaroze",indianred:"indisch rood",indigo:"indigo",ivory:"ivoorwit",khaki:"kaki",lavender:"lavendelblauw",lavenderblush:"lavendelblos",lawngreen:"grasgroen",lemonchiffon:"citroengeel",lightblue:"lichtblauw",lightcoral:"lichtkoraal",lightcyan:"lichtcyaan",lightgoldenrodyellow:"lichtgoudgeel",lightgray:"lichtgrijs",lightgreen:"lichtgroen",lightgrey:"lichtgrijs",lightpink:"lichtroze",lightsalmon:"lichtzalm",lightseagreen:"lichtzeegroen",lightskyblue:"lichthemelsblauw",lightslategray:"lichtblauwgrijs",lightslategrey:"lichtblauwgrijs",lightsteelblue:"lichtstaalblauw",lightyellow:"lichtgeel",lime:"limoen",limegreen:"limoengroen",linen:"linnen",magenta:"magenta",maroon:"kastanjebruin",mediumaquamarine:"midaquamarijn",mediumblue:"midblauw",mediumorchid:"midorchidee",mediumpurple:"midpurper",mediumseagreen:"midzeegroen",mediumslateblue:"midgrijsblauw",mediumspringgreen:"midlentegroen",mediumturquoise:"midturquoise",mediumvioletred:"midvioletrood",midnightblue:"nachtblauw",mintcream:"mintroomgeel",mistyrose:"matroze",moccasin:"moccasin",navajowhite:"navajowit",navy:"marineblauw",oldlace:"kant",olive:"olijfgroen",olivedrab:"grijsbruin",orange:"oranje",orangered:"oranjerood",orchid:"orchidee",palegoldenrod:"bleekgeel",palegreen:"bleekgroen",paleturquoise:"bleekturquoise",palevioletred:"bleekvioletrood",papayawhip:"papajaroze",peachpuff:"perzikroze",peru:"bruin",pink:"roze",plum:"pruim",powderblue:"lichtblauw-wit",purple:"purper",red:"rood",rosybrown:"roodbruin",royalblue:"koningsblauw",saddlebrown:"leerbruin",salmon:"zalm",sandybrown:"zandbruin",seagreen:"zeegroen",seashell:"schelp",sienna:"sienna",silver:"zilvergrijs",skyblue:"hemelsblauw",slateblue:"leiblauw",slategray:"leigrijs",slategrey:"leigrijs",snow:"sneeuwwit",springgreen:"lentegroen",steelblue:"staalblauw",tan:"geelbruin",teal:"grijsblauw",thistle:"distel",tomato:"tomaat",transparent:"transparant",turquoise:"turquoise",violet:"violet",wheat:"tarwebruin",white:"wit",whitesmoke:"rookwit",yellow:"geel",yellowgreen:"geelgroen"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nl/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nl/colors.js.uncompressed.js new file mode 100644 index 00000000..d4fa3d98 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/nl/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/nl/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "lichtblauw", + antiquewhite: "antiekwit", + aqua: "aqua", + aquamarine: "aquamarijn", + azure: "azuur", + beige: "beige", + bisque: "oranjegeel", + black: "zwart", + blanchedalmond: "amandel", + blue: "blauw", + blueviolet: "violet", + brown: "bruin", + burlywood: "lichtbruin", + cadetblue: "donkerstaalblauw", + chartreuse: "groengeel", + chocolate: "chocoladebruin", + coral: "koraalrood", + cornflowerblue: "korenbloemblauw", + cornsilk: "maïsgeel", + crimson: "karmozijnrood", + cyan: "cyaan", + darkblue: "donkerblauw", + darkcyan: "donkercyaan", + darkgoldenrod: "donkergoud", + darkgray: "donkergrijs", + darkgreen: "donkergroen", + darkgrey: "donkergrijs", // same as darkgray + darkkhaki: "donkerkaki", + darkmagenta: "donkermagenta", + darkolivegreen: "donkerolijfgroen", + darkorange: "donkeroranje", + darkorchid: "donkerorchidee", + darkred: "donkerrood", + darksalmon: "donkerzalm", + darkseagreen: "donkerzeegroen", + darkslateblue: "donkergrijsblauw", + darkslategray: "donkerblauwgrijs", + darkslategrey: "donkerblauwgrijs", // same as darkslategray + darkturquoise: "donkerturquoise", + darkviolet: "donkerviolet", + deeppink: "donkerroze", + deepskyblue: "diephemelblauw", + dimgray: "dofgrijs", + dimgrey: "dofgrijs", // same as dimgray + dodgerblue: "helderblauw", + firebrick: "vuursteenrood", + floralwhite: "rozewit", + forestgreen: "bosgroen", + fuchsia: "fuchsia", + gainsboro: "lichtblauwgrijs", + ghostwhite: "spierwit", + gold: "goud", + goldenrod: "goudbruin", + gray: "grijs", + green: "groen", + greenyellow: "groengeel", + grey: "grijs", // same as gray + honeydew: "meloen", + hotpink: "acaciaroze", + indianred: "indisch rood", + indigo: "indigo", + ivory: "ivoorwit", + khaki: "kaki", + lavender: "lavendelblauw", + lavenderblush: "lavendelblos", + lawngreen: "grasgroen", + lemonchiffon: "citroengeel", + lightblue: "lichtblauw", + lightcoral: "lichtkoraal", + lightcyan: "lichtcyaan", + lightgoldenrodyellow: "lichtgoudgeel", + lightgray: "lichtgrijs", + lightgreen: "lichtgroen", + lightgrey: "lichtgrijs", // same as lightgray + lightpink: "lichtroze", + lightsalmon: "lichtzalm", + lightseagreen: "lichtzeegroen", + lightskyblue: "lichthemelsblauw", + lightslategray: "lichtblauwgrijs", + lightslategrey: "lichtblauwgrijs", // same as lightslategray + lightsteelblue: "lichtstaalblauw", + lightyellow: "lichtgeel", + lime: "limoen", + limegreen: "limoengroen", + linen: "linnen", + magenta: "magenta", + maroon: "kastanjebruin", + mediumaquamarine: "midaquamarijn", + mediumblue: "midblauw", + mediumorchid: "midorchidee", + mediumpurple: "midpurper", + mediumseagreen: "midzeegroen", + mediumslateblue: "midgrijsblauw", + mediumspringgreen: "midlentegroen", + mediumturquoise: "midturquoise", + mediumvioletred: "midvioletrood", + midnightblue: "nachtblauw", + mintcream: "mintroomgeel", + mistyrose: "matroze", + moccasin: "moccasin", + navajowhite: "navajowit", + navy: "marineblauw", + oldlace: "kant", + olive: "olijfgroen", + olivedrab: "grijsbruin", + orange: "oranje", + orangered: "oranjerood", + orchid: "orchidee", + palegoldenrod: "bleekgeel", + palegreen: "bleekgroen", + paleturquoise: "bleekturquoise", + palevioletred: "bleekvioletrood", + papayawhip: "papajaroze", + peachpuff: "perzikroze", + peru: "bruin", + pink: "roze", + plum: "pruim", + powderblue: "lichtblauw-wit", + purple: "purper", + red: "rood", + rosybrown: "roodbruin", + royalblue: "koningsblauw", + saddlebrown: "leerbruin", + salmon: "zalm", + sandybrown: "zandbruin", + seagreen: "zeegroen", + seashell: "schelp", + sienna: "sienna", + silver: "zilvergrijs", + skyblue: "hemelsblauw", + slateblue: "leiblauw", + slategray: "leigrijs", + slategrey: "leigrijs", // same as slategray + snow: "sneeuwwit", + springgreen: "lentegroen", + steelblue: "staalblauw", + tan: "geelbruin", + teal: "grijsblauw", + thistle: "distel", + tomato: "tomaat", + transparent: "transparant", + turquoise: "turquoise", + violet: "violet", + wheat: "tarwebruin", + white: "wit", + whitesmoke: "rookwit", + yellow: "geel", + yellowgreen: "geelgroen" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pl/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pl/colors.js new file mode 100644 index 00000000..52492347 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pl/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/pl/colors",({aliceblue:"bladoniebieski",antiquewhite:"biel antyczna",aqua:"morski",aquamarine:"akwamaryna",azure:"lazurowy",beige:"beżowy",bisque:"cielistobeżowy",black:"czarny",blanchedalmond:"obrany migdał",blue:"niebieski",blueviolet:"błękitnofiołkowy",brown:"brązowy",burlywood:"piaskowobeżowy",cadetblue:"szaroniebieski",chartreuse:"żółtooliwkowy",chocolate:"czekoladowy",coral:"koralowy",cornflowerblue:"niebieskochabrowy",cornsilk:"białożółty",crimson:"karmazynowy",cyan:"niebieskozielony",darkblue:"ciemnoniebieski",darkcyan:"ciemnoniebieskozielony",darkgoldenrod:"ciemne stare złoto",darkgray:"ciemnoszary",darkgreen:"ciemnozielony",darkgrey:"ciemnoszary",darkkhaki:"ciemny khaki",darkmagenta:"ciemnoamarantowy",darkolivegreen:"ciemnooliwkowozielony",darkorange:"ciemnopomarańczowy",darkorchid:"ciemna orchidea",darkred:"ciemnoczerwony",darksalmon:"ciemnołososiowy",darkseagreen:"ciemna zieleń morska",darkslateblue:"ciemny gołębi",darkslategray:"ciemny mysi",darkslategrey:"ciemny mysi",darkturquoise:"ciemnoturkusowy",darkviolet:"ciemnofiołkowy",deeppink:"głęboki róż",deepskyblue:"intensywny błękit nieba",dimgray:"przyciemniony szary",dimgrey:"przyciemniony szary",dodgerblue:"niebieski Dodgersów",firebrick:"podpalana cegła",floralwhite:"złamana biel",forestgreen:"leśna zieleń",fuchsia:"fuksjowy",gainsboro:"jasnoniebieskawoszary",ghostwhite:"sina biel",gold:"złoty",goldenrod:"stare złoto",gray:"szary",green:"zielony",greenyellow:"zielonożółty",grey:"szary",honeydew:"miodowy",hotpink:"odblaskoworóżowy",indianred:"kasztanowy",indigo:"indygo",ivory:"kość słoniowa",khaki:"khaki",lavender:"lawendowy",lavenderblush:"lawendoworóżowy",lawngreen:"trawiasty",lemonchiffon:"babka cytrynowa",lightblue:"jasnoniebieski",lightcoral:"jasnokoralowy",lightcyan:"jasnoniebieskozielony",lightgoldenrodyellow:"jasne stare złoto",lightgray:"jasnoszary",lightgreen:"jasnozielony",lightgrey:"jasnoszary",lightpink:"jasnoróżowy",lightsalmon:"jasnołososiowy",lightseagreen:"jasna zieleń morska",lightskyblue:"jasny błękit nieba",lightslategray:"jasny mysi",lightslategrey:"jasny mysi",lightsteelblue:"jasnostalowoniebieski",lightyellow:"jasnożółty",lime:"limonkowy",limegreen:"limonkowozielony",linen:"lniany",magenta:"amarantowy",maroon:"rdzawoczerwony",mediumaquamarine:"średnia akwamaryna",mediumblue:"średni niebieski",mediumorchid:"średnia orchidea",mediumpurple:"średni fioletowy",mediumseagreen:"średnia zieleń morska",mediumslateblue:"średni gołębi",mediumspringgreen:"średnia wiosenna zieleń",mediumturquoise:"średni turkusowy",mediumvioletred:"średni fiołkowowoczerwony",midnightblue:"atramentowoniebieski",mintcream:"miętowokremowy",mistyrose:"mglistoróżany",moccasin:"mokasynowy",navajowhite:"biel Nawaho",navy:"granatowy",oldlace:"ecru",olive:"oliwkowy",olivedrab:"oliwkowozielony",orange:"pomarańczowy",orangered:"czerwona pomarańcza",orchid:"orchidea",palegoldenrod:"blade stare złoto",palegreen:"bladozielony",paleturquoise:"bladoturkusowy",palevioletred:"bladofiołkowoczerwony",papayawhip:"kremowa papaja",peachpuff:"cielisty brzoskwiniowy",peru:"palona glina",pink:"różowy",plum:"śliwkowy",powderblue:"jasnobladobłękitny",purple:"fioletowy",red:"czerwony",rosybrown:"różanobrązowy",royalblue:"królewska purpura",saddlebrown:"brąz skórzany",salmon:"łososiowy",sandybrown:"piaskowobrązowy",seagreen:"zieleń morska",seashell:"matowoliliowy",sienna:"sjena",silver:"srebrny",skyblue:"błękit nieba",slateblue:"gołębi",slategray:"mysi",slategrey:"mysi",snow:"śnieżny",springgreen:"wiosenna zieleń",steelblue:"stalowoniebieski",tan:"śniady",teal:"zielonomodry",thistle:"kwiat ostu",tomato:"pomidorowy",transparent:"przezroczysty",turquoise:"turkusowy",violet:"fiołkowy",wheat:"pszeniczny",white:"biały",whitesmoke:"siwy",yellow:"żółty",yellowgreen:"żółtozielony"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pl/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pl/colors.js.uncompressed.js new file mode 100644 index 00000000..ad95f626 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pl/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/pl/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "bladoniebieski", + antiquewhite: "biel antyczna", + aqua: "morski", + aquamarine: "akwamaryna", + azure: "lazurowy", + beige: "beżowy", + bisque: "cielistobeżowy", + black: "czarny", + blanchedalmond: "obrany migdał", + blue: "niebieski", + blueviolet: "błękitnofiołkowy", + brown: "brązowy", + burlywood: "piaskowobeżowy", + cadetblue: "szaroniebieski", + chartreuse: "żółtooliwkowy", + chocolate: "czekoladowy", + coral: "koralowy", + cornflowerblue: "niebieskochabrowy", + cornsilk: "białożółty", + crimson: "karmazynowy", + cyan: "niebieskozielony", + darkblue: "ciemnoniebieski", + darkcyan: "ciemnoniebieskozielony", + darkgoldenrod: "ciemne stare złoto", + darkgray: "ciemnoszary", + darkgreen: "ciemnozielony", + darkgrey: "ciemnoszary", // same as darkgray + darkkhaki: "ciemny khaki", + darkmagenta: "ciemnoamarantowy", + darkolivegreen: "ciemnooliwkowozielony", + darkorange: "ciemnopomarańczowy", + darkorchid: "ciemna orchidea", + darkred: "ciemnoczerwony", + darksalmon: "ciemnołososiowy", + darkseagreen: "ciemna zieleń morska", + darkslateblue: "ciemny gołębi", + darkslategray: "ciemny mysi", + darkslategrey: "ciemny mysi", // same as darkslategray + darkturquoise: "ciemnoturkusowy", + darkviolet: "ciemnofiołkowy", + deeppink: "głęboki róż", + deepskyblue: "intensywny błękit nieba", + dimgray: "przyciemniony szary", + dimgrey: "przyciemniony szary", // same as dimgray + dodgerblue: "niebieski Dodgersów", + firebrick: "podpalana cegła", + floralwhite: "złamana biel", + forestgreen: "leśna zieleń", + fuchsia: "fuksjowy", + gainsboro: "jasnoniebieskawoszary", + ghostwhite: "sina biel", + gold: "złoty", + goldenrod: "stare złoto", + gray: "szary", + green: "zielony", + greenyellow: "zielonożółty", + grey: "szary", // same as gray + honeydew: "miodowy", + hotpink: "odblaskoworóżowy", + indianred: "kasztanowy", + indigo: "indygo", + ivory: "kość słoniowa", + khaki: "khaki", + lavender: "lawendowy", + lavenderblush: "lawendoworóżowy", + lawngreen: "trawiasty", + lemonchiffon: "babka cytrynowa", + lightblue: "jasnoniebieski", + lightcoral: "jasnokoralowy", + lightcyan: "jasnoniebieskozielony", + lightgoldenrodyellow: "jasne stare złoto", + lightgray: "jasnoszary", + lightgreen: "jasnozielony", + lightgrey: "jasnoszary", // same as lightgray + lightpink: "jasnoróżowy", + lightsalmon: "jasnołososiowy", + lightseagreen: "jasna zieleń morska", + lightskyblue: "jasny błękit nieba", + lightslategray: "jasny mysi", + lightslategrey: "jasny mysi", // same as lightslategray + lightsteelblue: "jasnostalowoniebieski", + lightyellow: "jasnożółty", + lime: "limonkowy", + limegreen: "limonkowozielony", + linen: "lniany", + magenta: "amarantowy", + maroon: "rdzawoczerwony", + mediumaquamarine: "średnia akwamaryna", + mediumblue: "średni niebieski", + mediumorchid: "średnia orchidea", + mediumpurple: "średni fioletowy", + mediumseagreen: "średnia zieleń morska", + mediumslateblue: "średni gołębi", + mediumspringgreen: "średnia wiosenna zieleń", + mediumturquoise: "średni turkusowy", + mediumvioletred: "średni fiołkowowoczerwony", + midnightblue: "atramentowoniebieski", + mintcream: "miętowokremowy", + mistyrose: "mglistoróżany", + moccasin: "mokasynowy", + navajowhite: "biel Nawaho", + navy: "granatowy", + oldlace: "ecru", + olive: "oliwkowy", + olivedrab: "oliwkowozielony", + orange: "pomarańczowy", + orangered: "czerwona pomarańcza", + orchid: "orchidea", + palegoldenrod: "blade stare złoto", + palegreen: "bladozielony", + paleturquoise: "bladoturkusowy", + palevioletred: "bladofiołkowoczerwony", + papayawhip: "kremowa papaja", + peachpuff: "cielisty brzoskwiniowy", + peru: "palona glina", + pink: "różowy", + plum: "śliwkowy", + powderblue: "jasnobladobłękitny", + purple: "fioletowy", + red: "czerwony", + rosybrown: "różanobrązowy", + royalblue: "królewska purpura", + saddlebrown: "brąz skórzany", + salmon: "łososiowy", + sandybrown: "piaskowobrązowy", + seagreen: "zieleń morska", + seashell: "matowoliliowy", + sienna: "sjena", + silver: "srebrny", + skyblue: "błękit nieba", + slateblue: "gołębi", + slategray: "mysi", + slategrey: "mysi", // same as slategray + snow: "śnieżny", + springgreen: "wiosenna zieleń", + steelblue: "stalowoniebieski", + tan: "śniady", + teal: "zielonomodry", + thistle: "kwiat ostu", + tomato: "pomidorowy", + transparent: "przezroczysty", + turquoise: "turkusowy", + violet: "fiołkowy", + wheat: "pszeniczny", + white: "biały", + whitesmoke: "siwy", + yellow: "żółty", + yellowgreen: "żółtozielony" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt-pt/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt-pt/colors.js new file mode 100644 index 00000000..aa0fa575 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt-pt/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/pt-pt/colors",({aliceblue:"azul alice",antiquewhite:"branco antigo",aqua:"verde-água",aquamarine:"verde-azulado",azure:"azul-celeste",beige:"bege",bisque:"rosa-velho",black:"preto",blanchedalmond:"amêndoa claro",blue:"azul",blueviolet:"azul violeta",brown:"castanho",burlywood:"castanho pinho",cadetblue:"azul cadete",chartreuse:"amarelo esverdeado",chocolate:"chocolate",coral:"coral",cornflowerblue:"azul-violáceo",cornsilk:"branco seda",crimson:"carmesim",cyan:"ciano",darkblue:"azul escuro",darkcyan:"ciano escuro",darkgoldenrod:"ouro velho escuro",darkgray:"cinzento escuro",darkgreen:"verde escuro",darkgrey:"cinzento escuro",darkkhaki:"caqui escuro",darkmagenta:"magenta escuro",darkolivegreen:"verde-azeitona escuro",darkorange:"laranja escuro",darkorchid:"orquídea escuro",darkred:"vermelho escuro",darksalmon:"salmão escuro",darkseagreen:"verde marinho escuro",darkslateblue:"azul ardósia escuro",darkslategray:"cinzento ardósia escuro",darkslategrey:"cinzento ardósia escuro",darkturquoise:"turquesa escuro",darkviolet:"violeta escuro",deeppink:"rosa profundo",deepskyblue:"azul céu profundo",dimgray:"cinzento esbatido",dimgrey:"cinzento esbatido",dodgerblue:"azul furtivo",firebrick:"tijolo fogo",floralwhite:"branco floral",forestgreen:"verde floresta",fuchsia:"fúcsia",gainsboro:"cinzento azulado claro",ghostwhite:"branco sombreado",gold:"dourado",goldenrod:"ouro velho",gray:"cinzento",green:"verde",greenyellow:"amarelo esverdeado",grey:"cinzento",honeydew:"mel",hotpink:"rosa forte",indianred:"almagre",indigo:"índigo",ivory:"marfim",khaki:"caqui",lavender:"alfazema",lavenderblush:"alfazema rosado",lawngreen:"verde relva",lemonchiffon:"limão chiffon",lightblue:"azul claro",lightcoral:"coral claro",lightcyan:"ciano claro",lightgoldenrodyellow:"ouro velho amarelado claro",lightgray:"cinzento claro",lightgreen:"verde claro",lightgrey:"cinzento claro",lightpink:"rosa claro",lightsalmon:"salmão claro",lightseagreen:"verde marinho claro",lightskyblue:"azul céu claro",lightslategray:"cinzento ardósia claro",lightslategrey:"cinzento ardósia claro",lightsteelblue:"azul-aço claro",lightyellow:"amarelo claro",lime:"lima",limegreen:"verde-lima",linen:"linho",magenta:"magenta",maroon:"bordeaux",mediumaquamarine:"verde-azulado médio",mediumblue:"azul médio",mediumorchid:"orquídea médio",mediumpurple:"roxo médio",mediumseagreen:"verde marinho médio",mediumslateblue:"azul ardósia médio",mediumspringgreen:"verde primavera médio",mediumturquoise:"turquesa médio",mediumvioletred:"violeta avermelhado médio",midnightblue:"azul meia-noite",mintcream:"creme de menta",mistyrose:"rosa pálido",moccasin:"mocassim",navajowhite:"branco navajo",navy:"azul marinho",oldlace:"renda antiga",olive:"azeitona",olivedrab:"azeitona claro",orange:"laranja",orangered:"vermelho alaranjado",orchid:"orquídea",palegoldenrod:"ouro velho pálido",palegreen:"verde pálido",paleturquoise:"turquesa pálido",palevioletred:"violeta avermelhado pálido",papayawhip:"creme de papaia",peachpuff:"pêssego",peru:"peru",pink:"rosa",plum:"cor-de-ameixa",powderblue:"azul de esmalte",purple:"roxo",red:"vermelho",rosybrown:"castanho rosado",royalblue:"azul real",saddlebrown:"castanho sela",salmon:"salmão",sandybrown:"castanho areia",seagreen:"verde marinho",seashell:"concha",sienna:"castanho-avermelhado",silver:"prateado",skyblue:"azul céu",slateblue:"azul ardósia",slategray:"cinzento ardósia",slategrey:"cinzento ardósia",snow:"branco-neve",springgreen:"verde primavera",steelblue:"azul-aço",tan:"castanho claro",teal:"verde-azulado",thistle:"cardo",tomato:"vermelho tomate",transparent:"transparente",turquoise:"turquesa",violet:"violeta",wheat:"trigo",white:"branco",whitesmoke:"fumo branco",yellow:"amarelo",yellowgreen:"verde amarelado"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt-pt/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt-pt/colors.js.uncompressed.js new file mode 100644 index 00000000..542b7a10 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt-pt/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/pt-pt/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "azul alice", + antiquewhite: "branco antigo", + aqua: "verde-água", + aquamarine: "verde-azulado", + azure: "azul-celeste", + beige: "bege", + bisque: "rosa-velho", + black: "preto", + blanchedalmond: "amêndoa claro", + blue: "azul", + blueviolet: "azul violeta", + brown: "castanho", + burlywood: "castanho pinho", + cadetblue: "azul cadete", + chartreuse: "amarelo esverdeado", + chocolate: "chocolate", + coral: "coral", + cornflowerblue: "azul-violáceo", + cornsilk: "branco seda", + crimson: "carmesim", + cyan: "ciano", + darkblue: "azul escuro", + darkcyan: "ciano escuro", + darkgoldenrod: "ouro velho escuro", + darkgray: "cinzento escuro", + darkgreen: "verde escuro", + darkgrey: "cinzento escuro", // same as darkgray + darkkhaki: "caqui escuro", + darkmagenta: "magenta escuro", + darkolivegreen: "verde-azeitona escuro", + darkorange: "laranja escuro", + darkorchid: "orquídea escuro", + darkred: "vermelho escuro", + darksalmon: "salmão escuro", + darkseagreen: "verde marinho escuro", + darkslateblue: "azul ardósia escuro", + darkslategray: "cinzento ardósia escuro", + darkslategrey: "cinzento ardósia escuro", // same as darkslategray + darkturquoise: "turquesa escuro", + darkviolet: "violeta escuro", + deeppink: "rosa profundo", + deepskyblue: "azul céu profundo", + dimgray: "cinzento esbatido", + dimgrey: "cinzento esbatido", // same as dimgray + dodgerblue: "azul furtivo", + firebrick: "tijolo fogo", + floralwhite: "branco floral", + forestgreen: "verde floresta", + fuchsia: "fúcsia", + gainsboro: "cinzento azulado claro", + ghostwhite: "branco sombreado", + gold: "dourado", + goldenrod: "ouro velho", + gray: "cinzento", + green: "verde", + greenyellow: "amarelo esverdeado", + grey: "cinzento", // same as gray + honeydew: "mel", + hotpink: "rosa forte", + indianred: "almagre", + indigo: "índigo", + ivory: "marfim", + khaki: "caqui", + lavender: "alfazema", + lavenderblush: "alfazema rosado", + lawngreen: "verde relva", + lemonchiffon: "limão chiffon", + lightblue: "azul claro", + lightcoral: "coral claro", + lightcyan: "ciano claro", + lightgoldenrodyellow: "ouro velho amarelado claro", + lightgray: "cinzento claro", + lightgreen: "verde claro", + lightgrey: "cinzento claro", // same as lightgray + lightpink: "rosa claro", + lightsalmon: "salmão claro", + lightseagreen: "verde marinho claro", + lightskyblue: "azul céu claro", + lightslategray: "cinzento ardósia claro", + lightslategrey: "cinzento ardósia claro", // same as lightslategray + lightsteelblue: "azul-aço claro", + lightyellow: "amarelo claro", + lime: "lima", + limegreen: "verde-lima", + linen: "linho", + magenta: "magenta", + maroon: "bordeaux", + mediumaquamarine: "verde-azulado médio", + mediumblue: "azul médio", + mediumorchid: "orquídea médio", + mediumpurple: "roxo médio", + mediumseagreen: "verde marinho médio", + mediumslateblue: "azul ardósia médio", + mediumspringgreen: "verde primavera médio", + mediumturquoise: "turquesa médio", + mediumvioletred: "violeta avermelhado médio", + midnightblue: "azul meia-noite", + mintcream: "creme de menta", + mistyrose: "rosa pálido", + moccasin: "mocassim", + navajowhite: "branco navajo", + navy: "azul marinho", + oldlace: "renda antiga", + olive: "azeitona", + olivedrab: "azeitona claro", + orange: "laranja", + orangered: "vermelho alaranjado", + orchid: "orquídea", + palegoldenrod: "ouro velho pálido", + palegreen: "verde pálido", + paleturquoise: "turquesa pálido", + palevioletred: "violeta avermelhado pálido", + papayawhip: "creme de papaia", + peachpuff: "pêssego", + peru: "peru", + pink: "rosa", + plum: "cor-de-ameixa", + powderblue: "azul de esmalte", + purple: "roxo", + red: "vermelho", + rosybrown: "castanho rosado", + royalblue: "azul real", + saddlebrown: "castanho sela", + salmon: "salmão", + sandybrown: "castanho areia", + seagreen: "verde marinho", + seashell: "concha", + sienna: "castanho-avermelhado", + silver: "prateado", + skyblue: "azul céu", + slateblue: "azul ardósia", + slategray: "cinzento ardósia", + slategrey: "cinzento ardósia", // same as slategray + snow: "branco-neve", + springgreen: "verde primavera", + steelblue: "azul-aço", + tan: "castanho claro", + teal: "verde-azulado", + thistle: "cardo", + tomato: "vermelho tomate", + transparent: "transparente", + turquoise: "turquesa", + violet: "violeta", + wheat: "trigo", + white: "branco", + whitesmoke: "fumo branco", + yellow: "amarelo", + yellowgreen: "verde amarelado" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt/colors.js new file mode 100644 index 00000000..aae933f0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/pt/colors",({aliceblue:"azul alice",antiquewhite:"branco antigo",aqua:"aqua",aquamarine:"água marinha",azure:"azul celeste",beige:"bege",bisque:"bisque",black:"preto",blanchedalmond:"amêndoa pelada",blue:"azul",blueviolet:"azul violeta",brown:"marrom",burlywood:"burlywood",cadetblue:"azul cadet",chartreuse:"chartreuse",chocolate:"chocolate",coral:"coral",cornflowerblue:"azul centaurea",cornsilk:"cornsilk",crimson:"carmesim",cyan:"ciano",darkblue:"azul escuro",darkcyan:"ciano escuro",darkgoldenrod:"goldenrod escuro",darkgray:"cinza escuro",darkgreen:"verde escuro",darkgrey:"cinza escuro",darkkhaki:"cáqui escuro",darkmagenta:"magenta escuro",darkolivegreen:"verde oliva escuro",darkorange:"laranja escuro",darkorchid:"orquídea escuro",darkred:"vermelho escuro",darksalmon:"salmão escuro",darkseagreen:"verde marinho escuro",darkslateblue:"azul ardósia escuro",darkslategray:"cinza ardósia escuro",darkslategrey:"cinza ardósia escuro",darkturquoise:"turquesa escuro",darkviolet:"violeta escuro",deeppink:"rosa profundo",deepskyblue:"azul céu intenso",dimgray:"cinza turvo",dimgrey:"cinza turvo",dodgerblue:"azul dodger",firebrick:"firebrick",floralwhite:"branco floral",forestgreen:"verde floresta",fuchsia:"fúcsia",gainsboro:"gainsboro",ghostwhite:"branco ghost",gold:"dourado",goldenrod:"goldenrod",gray:"cinza",green:"verde",greenyellow:"amarelo esverdeado",grey:"cinza",honeydew:"honeydew",hotpink:"rosa quente",indianred:"vermelho indiano",indigo:"índigo",ivory:"marfim",khaki:"cáqui",lavender:"lavanda",lavenderblush:"lavanda avermelhada",lawngreen:"verde grama",lemonchiffon:"limão chiffon",lightblue:"azul claro",lightcoral:"coral claro",lightcyan:"ciano claro",lightgoldenrodyellow:"amarelo goldenrod claro",lightgray:"cinza claro",lightgreen:"verde claro",lightgrey:"cinza claro",lightpink:"rosa claro",lightsalmon:"salmão claro",lightseagreen:"verde marinho claro",lightskyblue:"azul céu claro",lightslategray:"cinza ardósia claro",lightslategrey:"cinza ardósia claro",lightsteelblue:"azul aço claro",lightyellow:"amarelo claro",lime:"lima",limegreen:"verde lima",linen:"linho",magenta:"magenta",maroon:"castanho",mediumaquamarine:"água marinha médio",mediumblue:"azul médio",mediumorchid:"orquídea médio",mediumpurple:"roxo médio",mediumseagreen:"verde marinho médio",mediumslateblue:"azul ardósia médio",mediumspringgreen:"verde primavera médio",mediumturquoise:"turquesa médio",mediumvioletred:"vermelho violeta médio",midnightblue:"azul meia-noite",mintcream:"creme de menta",mistyrose:"rosa enevoado",moccasin:"moccasin",navajowhite:"branco navajo",navy:"marinho",oldlace:"cadarço velho",olive:"oliva",olivedrab:"verde oliva",orange:"laranja",orangered:"vermelho alaranjado",orchid:"orquídea",palegoldenrod:"goldenrod esbranquiçado",palegreen:"verde esbranquiçado",paleturquoise:"turquesa esbranquiçado",palevioletred:"vermelho violeta esbranquiçado",papayawhip:"creme de papaya",peachpuff:"peach puff",peru:"peru",pink:"rosa",plum:"ameixa",powderblue:"azul talco",purple:"roxo",red:"vermelho",rosybrown:"marrom rosado",royalblue:"azul royal",saddlebrown:"marrom saddle",salmon:"salmão",sandybrown:"marrom cor de areia",seagreen:"verde marinho",seashell:"seashell",sienna:"sienna",silver:"prateado",skyblue:"azul céu",slateblue:"azul ardósia",slategray:"cinza ardósia",slategrey:"cinza ardósia",snow:"branco neve",springgreen:"verde primavera",steelblue:"azul aço",tan:"tan",teal:"azul esverdeado",thistle:"thistle",tomato:"tomate",transparent:"transparente",turquoise:"turquesa",violet:"violeta",wheat:"trigo",white:"branco",whitesmoke:"fumaça branca",yellow:"amarelo",yellowgreen:"verde amarelado"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt/colors.js.uncompressed.js new file mode 100644 index 00000000..02893b56 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/pt/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/pt/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "azul alice", + antiquewhite: "branco antigo", + aqua: "aqua", + aquamarine: "água marinha", + azure: "azul celeste", + beige: "bege", + bisque: "bisque", + black: "preto", + blanchedalmond: "amêndoa pelada", + blue: "azul", + blueviolet: "azul violeta", + brown: "marrom", + burlywood: "burlywood", + cadetblue: "azul cadet", + chartreuse: "chartreuse", + chocolate: "chocolate", + coral: "coral", + cornflowerblue: "azul centaurea", + cornsilk: "cornsilk", + crimson: "carmesim", + cyan: "ciano", + darkblue: "azul escuro", + darkcyan: "ciano escuro", + darkgoldenrod: "goldenrod escuro", + darkgray: "cinza escuro", + darkgreen: "verde escuro", + darkgrey: "cinza escuro", // same as darkgray + darkkhaki: "cáqui escuro", + darkmagenta: "magenta escuro", + darkolivegreen: "verde oliva escuro", + darkorange: "laranja escuro", + darkorchid: "orquídea escuro", + darkred: "vermelho escuro", + darksalmon: "salmão escuro", + darkseagreen: "verde marinho escuro", + darkslateblue: "azul ardósia escuro", + darkslategray: "cinza ardósia escuro", + darkslategrey: "cinza ardósia escuro", // same as darkslategray + darkturquoise: "turquesa escuro", + darkviolet: "violeta escuro", + deeppink: "rosa profundo", + deepskyblue: "azul céu intenso", + dimgray: "cinza turvo", + dimgrey: "cinza turvo", // same as dimgray + dodgerblue: "azul dodger", + firebrick: "firebrick", + floralwhite: "branco floral", + forestgreen: "verde floresta", + fuchsia: "fúcsia", + gainsboro: "gainsboro", + ghostwhite: "branco ghost", + gold: "dourado", + goldenrod: "goldenrod", + gray: "cinza", + green: "verde", + greenyellow: "amarelo esverdeado", + grey: "cinza", // same as gray + honeydew: "honeydew", + hotpink: "rosa quente", + indianred: "vermelho indiano", + indigo: "índigo", + ivory: "marfim", + khaki: "cáqui", + lavender: "lavanda", + lavenderblush: "lavanda avermelhada", + lawngreen: "verde grama", + lemonchiffon: "limão chiffon", + lightblue: "azul claro", + lightcoral: "coral claro", + lightcyan: "ciano claro", + lightgoldenrodyellow: "amarelo goldenrod claro", + lightgray: "cinza claro", + lightgreen: "verde claro", + lightgrey: "cinza claro", // same as lightgray + lightpink: "rosa claro", + lightsalmon: "salmão claro", + lightseagreen: "verde marinho claro", + lightskyblue: "azul céu claro", + lightslategray: "cinza ardósia claro", + lightslategrey: "cinza ardósia claro", // same as lightslategray + lightsteelblue: "azul aço claro", + lightyellow: "amarelo claro", + lime: "lima", + limegreen: "verde lima", + linen: "linho", + magenta: "magenta", + maroon: "castanho", + mediumaquamarine: "água marinha médio", + mediumblue: "azul médio", + mediumorchid: "orquídea médio", + mediumpurple: "roxo médio", + mediumseagreen: "verde marinho médio", + mediumslateblue: "azul ardósia médio", + mediumspringgreen: "verde primavera médio", + mediumturquoise: "turquesa médio", + mediumvioletred: "vermelho violeta médio", + midnightblue: "azul meia-noite", + mintcream: "creme de menta", + mistyrose: "rosa enevoado", + moccasin: "moccasin", + navajowhite: "branco navajo", + navy: "marinho", + oldlace: "cadarço velho", + olive: "oliva", + olivedrab: "verde oliva", + orange: "laranja", + orangered: "vermelho alaranjado", + orchid: "orquídea", + palegoldenrod: "goldenrod esbranquiçado", + palegreen: "verde esbranquiçado", + paleturquoise: "turquesa esbranquiçado", + palevioletred: "vermelho violeta esbranquiçado", + papayawhip: "creme de papaya", + peachpuff: "peach puff", + peru: "peru", + pink: "rosa", + plum: "ameixa", + powderblue: "azul talco", + purple: "roxo", + red: "vermelho", + rosybrown: "marrom rosado", + royalblue: "azul royal", + saddlebrown: "marrom saddle", + salmon: "salmão", + sandybrown: "marrom cor de areia", + seagreen: "verde marinho", + seashell: "seashell", + sienna: "sienna", + silver: "prateado", + skyblue: "azul céu", + slateblue: "azul ardósia", + slategray: "cinza ardósia", + slategrey: "cinza ardósia", // same as slategray + snow: "branco neve", + springgreen: "verde primavera", + steelblue: "azul aço", + tan: "tan", + teal: "azul esverdeado", + thistle: "thistle", + tomato: "tomate", + transparent: "transparente", + turquoise: "turquesa", + violet: "violeta", + wheat: "trigo", + white: "branco", + whitesmoke: "fumaça branca", + yellow: "amarelo", + yellowgreen: "verde amarelado" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ro/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ro/colors.js new file mode 100644 index 00000000..45328bd6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ro/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/ro/colors",({aliceblue:"alice blue",antiquewhite:"antique white",aqua:"aqua",aquamarine:"aquamarine",azure:"azuriu",beige:"bej",bisque:"bisque",black:"negru",blanchedalmond:"blanched almond",blue:"albastru",blueviolet:"albastru-violet",brown:"brun",burlywood:"burlywood",cadetblue:"albastru cadet",chartreuse:"chartreuse",chocolate:"ciocolată",coral:"coral",cornflowerblue:"cornflower blue",cornsilk:"cornsilk",crimson:"stacojiu",cyan:"cyan",darkblue:"albastru închis",darkcyan:"cyan închis",darkgoldenrod:"goldenrod închis",darkgray:"gri închis",darkgreen:"verde închis",darkgrey:"gri închis",darkkhaki:"kaki închis",darkmagenta:"magenta închis",darkolivegreen:"verde măslină închis",darkorange:"portocaliu închis",darkorchid:"orchid închis",darkred:"roşu închis",darksalmon:"somon închis",darkseagreen:"verde marin închis",darkslateblue:"albastru ardezie închis",darkslategray:"gri ardezie închis",darkslategrey:"gri ardezie închis",darkturquoise:"turcoaz închis",darkviolet:"violet închis",deeppink:"roz profund",deepskyblue:"albastru cer profund",dimgray:"dim gray",dimgrey:"dim gray",dodgerblue:"dodger blue",firebrick:"cărămiziu aprins",floralwhite:"floral white",forestgreen:"forest green",fuchsia:"fuchsia",gainsboro:"gainsboro",ghostwhite:"ghost white",gold:"auriu",goldenrod:"goldenrod",gray:"gri",green:"verde",greenyellow:"verde-gălbui",grey:"gri",honeydew:"honeydew",hotpink:"roz aprins",indianred:"roşu indian",indigo:"indigo",ivory:"ivoriu",khaki:"kaki",lavender:"lavandă",lavenderblush:"lavender blush",lawngreen:"lawn green",lemonchiffon:"lemon chiffon",lightblue:"albastru deschis",lightcoral:"coral deschis",lightcyan:"cyan deschis",lightgoldenrodyellow:"goldenrod gălbui deschis",lightgray:"gri deschis",lightgreen:"verde dschis",lightgrey:"gri deschis",lightpink:"roz deschis",lightsalmon:"somon deschis",lightseagreen:"verde marin deschis",lightskyblue:"albastru cer deschis",lightslategray:"gri ardezie deschis",lightslategrey:"gri ardezie deschis",lightsteelblue:"albastru metalic deschis",lightyellow:"galben deschis",lime:"lime",limegreen:"verde lime",linen:"linen",magenta:"magenta",maroon:"maro",mediumaquamarine:"aquamarin mediu",mediumblue:"albastru mediu",mediumorchid:"orchid mediu",mediumpurple:"purpuriu mediu",mediumseagreen:"verde marin mediu",mediumslateblue:"albastru ardezie mediu",mediumspringgreen:"verde primăvară mediu",mediumturquoise:"turcoaz mediu",mediumvioletred:"roşu-violet mediu",midnightblue:"midnight blue",mintcream:"mint cream",mistyrose:"misty rose",moccasin:"moccasin",navajowhite:"navajo white",navy:"navy",oldlace:"old lace",olive:"oliv",olivedrab:"oliv şters",orange:"portocaliu",orangered:"roşu portocaliu",orchid:"orchid",palegoldenrod:"goldenrod pal",palegreen:"verde pal",paleturquoise:"turcoaz pal",palevioletred:"roşu-violet pal",papayawhip:"papaya whip",peachpuff:"peach puff",peru:"peru",pink:"roz",plum:"plum",powderblue:"powder blue",purple:"purpuriu",red:"roşu",rosybrown:"rosy brown",royalblue:"albastru regal",saddlebrown:"saddle brown",salmon:"somon",sandybrown:"sandy brown",seagreen:"verde marin",seashell:"seashell",sienna:"sienna",silver:"argintiu",skyblue:"albastru cer",slateblue:"albastru ardezie",slategray:"gri ardezie",slategrey:"gri ardezie",snow:"zăpadă",springgreen:"verde primăvară",steelblue:"albastru metalic",tan:"tan",teal:"teal",thistle:"thistle",tomato:"tomato",transparent:"transparent",turquoise:"turcoaz",violet:"violet",wheat:"wheat",white:"alb",whitesmoke:"white smoke",yellow:"galben",yellowgreen:"verde gălbui"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ro/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ro/colors.js.uncompressed.js new file mode 100644 index 00000000..5b0d11b6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ro/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/ro/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "alice blue", + antiquewhite: "antique white", + aqua: "aqua", + aquamarine: "aquamarine", + azure: "azuriu", + beige: "bej", + bisque: "bisque", + black: "negru", + blanchedalmond: "blanched almond", + blue: "albastru", + blueviolet: "albastru-violet", + brown: "brun", + burlywood: "burlywood", + cadetblue: "albastru cadet", + chartreuse: "chartreuse", + chocolate: "ciocolată", + coral: "coral", + cornflowerblue: "cornflower blue", + cornsilk: "cornsilk", + crimson: "stacojiu", + cyan: "cyan", + darkblue: "albastru închis", + darkcyan: "cyan închis", + darkgoldenrod: "goldenrod închis", + darkgray: "gri închis", + darkgreen: "verde închis", + darkgrey: "gri închis", // same as darkgray + darkkhaki: "kaki închis", + darkmagenta: "magenta închis", + darkolivegreen: "verde măslină închis", + darkorange: "portocaliu închis", + darkorchid: "orchid închis", + darkred: "roşu închis", + darksalmon: "somon închis", + darkseagreen: "verde marin închis", + darkslateblue: "albastru ardezie închis", + darkslategray: "gri ardezie închis", + darkslategrey: "gri ardezie închis", // same as darkslategray + darkturquoise: "turcoaz închis", + darkviolet: "violet închis", + deeppink: "roz profund", + deepskyblue: "albastru cer profund", + dimgray: "dim gray", + dimgrey: "dim gray", // same as dimgray + dodgerblue: "dodger blue", + firebrick: "cărămiziu aprins", + floralwhite: "floral white", + forestgreen: "forest green", + fuchsia: "fuchsia", + gainsboro: "gainsboro", + ghostwhite: "ghost white", + gold: "auriu", + goldenrod: "goldenrod", + gray: "gri", + green: "verde", + greenyellow: "verde-gălbui", + grey: "gri", // same as gray + honeydew: "honeydew", + hotpink: "roz aprins", + indianred: "roşu indian", + indigo: "indigo", + ivory: "ivoriu", + khaki: "kaki", + lavender: "lavandă", + lavenderblush: "lavender blush", + lawngreen: "lawn green", + lemonchiffon: "lemon chiffon", + lightblue: "albastru deschis", + lightcoral: "coral deschis", + lightcyan: "cyan deschis", + lightgoldenrodyellow: "goldenrod gălbui deschis", + lightgray: "gri deschis", + lightgreen: "verde dschis", + lightgrey: "gri deschis", // same as lightgray + lightpink: "roz deschis", + lightsalmon: "somon deschis", + lightseagreen: "verde marin deschis", + lightskyblue: "albastru cer deschis", + lightslategray: "gri ardezie deschis", + lightslategrey: "gri ardezie deschis", // same as lightslategray + lightsteelblue: "albastru metalic deschis", + lightyellow: "galben deschis", + lime: "lime", + limegreen: "verde lime", + linen: "linen", + magenta: "magenta", + maroon: "maro", + mediumaquamarine: "aquamarin mediu", + mediumblue: "albastru mediu", + mediumorchid: "orchid mediu", + mediumpurple: "purpuriu mediu", + mediumseagreen: "verde marin mediu", + mediumslateblue: "albastru ardezie mediu", + mediumspringgreen: "verde primăvară mediu", + mediumturquoise: "turcoaz mediu", + mediumvioletred: "roşu-violet mediu", + midnightblue: "midnight blue", + mintcream: "mint cream", + mistyrose: "misty rose", + moccasin: "moccasin", + navajowhite: "navajo white", + navy: "navy", + oldlace: "old lace", + olive: "oliv", + olivedrab: "oliv şters", + orange: "portocaliu", + orangered: "roşu portocaliu", + orchid: "orchid", + palegoldenrod: "goldenrod pal", + palegreen: "verde pal", + paleturquoise: "turcoaz pal", + palevioletred: "roşu-violet pal", + papayawhip: "papaya whip", + peachpuff: "peach puff", + peru: "peru", + pink: "roz", + plum: "plum", + powderblue: "powder blue", + purple: "purpuriu", + red: "roşu", + rosybrown: "rosy brown", + royalblue: "albastru regal", + saddlebrown: "saddle brown", + salmon: "somon", + sandybrown: "sandy brown", + seagreen: "verde marin", + seashell: "seashell", + sienna: "sienna", + silver: "argintiu", + skyblue: "albastru cer", + slateblue: "albastru ardezie", + slategray: "gri ardezie", + slategrey: "gri ardezie", // same as slategray + snow: "zăpadă", + springgreen: "verde primăvară", + steelblue: "albastru metalic", + tan: "tan", + teal: "teal", + thistle: "thistle", + tomato: "tomato", + transparent: "transparent", + turquoise: "turcoaz", + violet: "violet", + wheat: "wheat", + white: "alb", + whitesmoke: "white smoke", + yellow: "galben", + yellowgreen: "verde gălbui" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ru/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ru/colors.js new file mode 100644 index 00000000..74575c86 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ru/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/ru/colors",({aliceblue:"серо-голубой",antiquewhite:"белый антик",aqua:"зеленовато-голубой",aquamarine:"аквамарин",azure:"лазурный",beige:"бежевый",bisque:"бисквитный",black:"черный",blanchedalmond:"светло-миндальный",blue:"синий",blueviolet:"сине-фиолетовый",brown:"коричневый",burlywood:"светло-коричневый",cadetblue:"серо-синий",chartreuse:"желто-салатный",chocolate:"шоколадный",coral:"коралловый",cornflowerblue:"фиолетово-синий",cornsilk:"шелковый оттенок",crimson:"малиновый",cyan:"циан",darkblue:"темно-синий",darkcyan:"темный циан",darkgoldenrod:"темно-золотистый",darkgray:"темно-серый",darkgreen:"темно-зеленый",darkgrey:"темно-серый",darkkhaki:"темный хаки",darkmagenta:"темно-пурпурный",darkolivegreen:"темно-оливковый",darkorange:"темно-оранжевый",darkorchid:"темный орсель",darkred:"темно-красный",darksalmon:"темно-лососевый",darkseagreen:"темный морской волны",darkslateblue:"темный грифельно-синий",darkslategray:"темный грифельно-серый",darkslategrey:"темный грифельно-серый",darkturquoise:"темный бирюзовый",darkviolet:"темно-фиолетовый",deeppink:"темно-розовый",deepskyblue:"темный небесно-голубой",dimgray:"тускло-серый",dimgrey:"тускло-серый",dodgerblue:"бледно-синий",firebrick:"кирпичный",floralwhite:"цветочно-белый",forestgreen:"зеленый лесной",fuchsia:"фуксин",gainsboro:"бледно-серый",ghostwhite:"призрачно-белый",gold:"золотой",goldenrod:"золотистый",gray:"серый",green:"зеленый",greenyellow:"зелено-желтый",grey:"серый",honeydew:"медовый",hotpink:"красно-розовый",indianred:"индийский красный",indigo:"индиго",ivory:"слоновой кости",khaki:"хаки",lavender:"бледно-лиловый",lavenderblush:"розовато-лиловый",lawngreen:"зеленая лужайка",lemonchiffon:"бледно-лимонный",lightblue:"светло-синий",lightcoral:"светло-коралловый",lightcyan:"светлый циан",lightgoldenrodyellow:"светло-золотистый",lightgray:"светло-серый",lightgreen:"светло-зеленый",lightgrey:"светло-серый",lightpink:"светло-розовый",lightsalmon:"светло-лососевый",lightseagreen:"светлый морской волны",lightskyblue:"светлый небесно-голубой",lightslategray:"светлый грифельно-серый",lightslategrey:"светлый грифельно-серый",lightsteelblue:"светлый стальной",lightyellow:"светло-желтый",lime:"лайм",limegreen:"зеленый лайм",linen:"хлопковый",magenta:"пурпурный",maroon:"темно-бордовый",mediumaquamarine:"нейтральный аквамарин",mediumblue:"нейтральный синий",mediumorchid:"нейтральный орсель",mediumpurple:"нейтральный фиолетовый",mediumseagreen:"нейтральный морской волны",mediumslateblue:"нейтральный грифельно-синий",mediumspringgreen:"нейтральный весенне-зеленый",mediumturquoise:"нейтральный бирюзовый",mediumvioletred:"нейтральный фиолетово-красный",midnightblue:"полуночно-синий",mintcream:"мятно-кремовый",mistyrose:"блекло-розовый",moccasin:"мокасин",navajowhite:"белый навахо",navy:"темно-синий",oldlace:"матово-белый",olive:"оливковый",olivedrab:"желтовато-серый",orange:"оранжевый",orangered:"оранжево-красный",orchid:"орсель",palegoldenrod:"бледно-золотистый",palegreen:"бледно-зеленый",paleturquoise:"бледно-бирюзовый",palevioletred:"бледный фиолетово-красный",papayawhip:"черенок папайи",peachpuff:"персиковый",peru:"перу",pink:"розовый",plum:"сливовый",powderblue:"пороховой",purple:"фиолетовый",red:"красный",rosybrown:"розово-коричневый",royalblue:"королевский голубой",saddlebrown:"кожано-коричневый",salmon:"лососевый",sandybrown:"коричнево-песчаный",seagreen:"морской волны",seashell:"морская раковина",sienna:"охра",silver:"серебристый",skyblue:"небесно-голубой",slateblue:"грифельно-синий",slategray:"грифельно-серый",slategrey:"грифельно-серый",snow:"белоснежный",springgreen:"весенний зеленый",steelblue:"стальной",tan:"рыжевато-коричневый",teal:"чирок",thistle:"чертополох",tomato:"помидор",transparent:"прозрачный",turquoise:"бирюзовый",violet:"фиолетовый",wheat:"пшеница",white:"белый",whitesmoke:"дымчато-белый",yellow:"желтый",yellowgreen:"желто-зеленый"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ru/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ru/colors.js.uncompressed.js new file mode 100644 index 00000000..902d07ba --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/ru/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/ru/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "серо-голубой", + antiquewhite: "белый антик", + aqua: "зеленовато-голубой", + aquamarine: "аквамарин", + azure: "лазурный", + beige: "бежевый", + bisque: "бисквитный", + black: "черный", + blanchedalmond: "светло-миндальный", + blue: "синий", + blueviolet: "сине-фиолетовый", + brown: "коричневый", + burlywood: "светло-коричневый", + cadetblue: "серо-синий", + chartreuse: "желто-салатный", + chocolate: "шоколадный", + coral: "коралловый", + cornflowerblue: "фиолетово-синий", + cornsilk: "шелковый оттенок", + crimson: "малиновый", + cyan: "циан", + darkblue: "темно-синий", + darkcyan: "темный циан", + darkgoldenrod: "темно-золотистый", + darkgray: "темно-серый", + darkgreen: "темно-зеленый", + darkgrey: "темно-серый", // same as darkgray + darkkhaki: "темный хаки", + darkmagenta: "темно-пурпурный", + darkolivegreen: "темно-оливковый", + darkorange: "темно-оранжевый", + darkorchid: "темный орсель", + darkred: "темно-красный", + darksalmon: "темно-лососевый", + darkseagreen: "темный морской волны", + darkslateblue: "темный грифельно-синий", + darkslategray: "темный грифельно-серый", + darkslategrey: "темный грифельно-серый", // same as darkslategray + darkturquoise: "темный бирюзовый", + darkviolet: "темно-фиолетовый", + deeppink: "темно-розовый", + deepskyblue: "темный небесно-голубой", + dimgray: "тускло-серый", + dimgrey: "тускло-серый", // same as dimgray + dodgerblue: "бледно-синий", + firebrick: "кирпичный", + floralwhite: "цветочно-белый", + forestgreen: "зеленый лесной", + fuchsia: "фуксин", + gainsboro: "бледно-серый", + ghostwhite: "призрачно-белый", + gold: "золотой", + goldenrod: "золотистый", + gray: "серый", + green: "зеленый", + greenyellow: "зелено-желтый", + grey: "серый", // same as gray + honeydew: "медовый", + hotpink: "красно-розовый", + indianred: "индийский красный", + indigo: "индиго", + ivory: "слоновой кости", + khaki: "хаки", + lavender: "бледно-лиловый", + lavenderblush: "розовато-лиловый", + lawngreen: "зеленая лужайка", + lemonchiffon: "бледно-лимонный", + lightblue: "светло-синий", + lightcoral: "светло-коралловый", + lightcyan: "светлый циан", + lightgoldenrodyellow: "светло-золотистый", + lightgray: "светло-серый", + lightgreen: "светло-зеленый", + lightgrey: "светло-серый", // same as lightgray + lightpink: "светло-розовый", + lightsalmon: "светло-лососевый", + lightseagreen: "светлый морской волны", + lightskyblue: "светлый небесно-голубой", + lightslategray: "светлый грифельно-серый", + lightslategrey: "светлый грифельно-серый", // same as lightslategray + lightsteelblue: "светлый стальной", + lightyellow: "светло-желтый", + lime: "лайм", + limegreen: "зеленый лайм", + linen: "хлопковый", + magenta: "пурпурный", + maroon: "темно-бордовый", + mediumaquamarine: "нейтральный аквамарин", + mediumblue: "нейтральный синий", + mediumorchid: "нейтральный орсель", + mediumpurple: "нейтральный фиолетовый", + mediumseagreen: "нейтральный морской волны", + mediumslateblue: "нейтральный грифельно-синий", + mediumspringgreen: "нейтральный весенне-зеленый", + mediumturquoise: "нейтральный бирюзовый", + mediumvioletred: "нейтральный фиолетово-красный", + midnightblue: "полуночно-синий", + mintcream: "мятно-кремовый", + mistyrose: "блекло-розовый", + moccasin: "мокасин", + navajowhite: "белый навахо", + navy: "темно-синий", + oldlace: "матово-белый", + olive: "оливковый", + olivedrab: "желтовато-серый", + orange: "оранжевый", + orangered: "оранжево-красный", + orchid: "орсель", + palegoldenrod: "бледно-золотистый", + palegreen: "бледно-зеленый", + paleturquoise: "бледно-бирюзовый", + palevioletred: "бледный фиолетово-красный", + papayawhip: "черенок папайи", + peachpuff: "персиковый", + peru: "перу", + pink: "розовый", + plum: "сливовый", + powderblue: "пороховой", + purple: "фиолетовый", + red: "красный", + rosybrown: "розово-коричневый", + royalblue: "королевский голубой", + saddlebrown: "кожано-коричневый", + salmon: "лососевый", + sandybrown: "коричнево-песчаный", + seagreen: "морской волны", + seashell: "морская раковина", + sienna: "охра", + silver: "серебристый", + skyblue: "небесно-голубой", + slateblue: "грифельно-синий", + slategray: "грифельно-серый", + slategrey: "грифельно-серый", // same as slategray + snow: "белоснежный", + springgreen: "весенний зеленый", + steelblue: "стальной", + tan: "рыжевато-коричневый", + teal: "чирок", + thistle: "чертополох", + tomato: "помидор", + transparent: "прозрачный", + turquoise: "бирюзовый", + violet: "фиолетовый", + wheat: "пшеница", + white: "белый", + whitesmoke: "дымчато-белый", + yellow: "желтый", + yellowgreen: "желто-зеленый" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sk/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sk/colors.js new file mode 100644 index 00000000..675a5f36 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sk/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/sk/colors",({aliceblue:"modrá (alice)",antiquewhite:"antická biela",aqua:"vodová",aquamarine:"akvamarínová",azure:"azúrová",beige:"béžová",bisque:"porcelánová",black:"čierna",blanchedalmond:"bledá mandľová",blue:"modrá",blueviolet:"modro-fialová",brown:"hnedá",burlywood:"drevená hnedá",cadetblue:"červeno modrá",chartreuse:"kartúzska",chocolate:"čokoládová",coral:"koralová",cornflowerblue:"nevädzová modrá",cornsilk:"ôstie kukurice",crimson:"karmínová",cyan:"zelenomodrá",darkblue:"tmavomodrá",darkcyan:"tmavá zelenomodrá",darkgoldenrod:"tmavá zlatobyľ",darkgray:"tmavosivá",darkgreen:"tmavozelená",darkgrey:"tmavosivá",darkkhaki:"tmavá žltohnedá",darkmagenta:"tmavá purpurová",darkolivegreen:"tmavá olivovo zelená",darkorange:"tmavá oranžová",darkorchid:"tmavá orchidea",darkred:"tmavočervená",darksalmon:"tmavá lososová",darkseagreen:"tmavá morská zelená",darkslateblue:"tmavá bridlicová modrá",darkslategray:"tmavá bridlicová sivá",darkslategrey:"tmavá bridlicová sivá",darkturquoise:"tmavá tyrkysová",darkviolet:"tmavofialová",deeppink:"hlboká ružová",deepskyblue:"hlboká modrá obloha",dimgray:"matná sivá",dimgrey:"matná sivá",dodgerblue:"modrá (dodger)",firebrick:"pálená tehla",floralwhite:"biely kvet",forestgreen:"lesná zelená",fuchsia:"fuchsia",gainsboro:"sivá - gainsboro",ghostwhite:"biela (ghost white)",gold:"zlatá",goldenrod:"zlatobyľ",gray:"sivá",green:"zelená",greenyellow:"zelenožltá",grey:"sivá",honeydew:"ambrózia",hotpink:"horúca ružová",indianred:"indiánska červená",indigo:"indigo",ivory:"slonovina",khaki:"kaki",lavender:"levanduľa",lavenderblush:"rumencová levanduľa",lawngreen:"trávová zelená",lemonchiffon:"citrónový šifón",lightblue:"svetlomodrá",lightcoral:"svetlá koralová",lightcyan:"svetlá zelenomodrá",lightgoldenrodyellow:"svetlá zlatobyľová žltá",lightgray:"svetlosivá",lightgreen:"svetlozelená",lightgrey:"svetlosivá",lightpink:"svetloružová",lightsalmon:"svetlá lososová",lightseagreen:"svetlá morská zelená",lightskyblue:"svetlá modrá obloha",lightslategray:"svetlá bridlicová sivá",lightslategrey:"svetlá bridlicová sivá",lightsteelblue:"svetlá oceľovomodrá",lightyellow:"svetložltá",lime:"limetková",limegreen:"limetková zelená",linen:"ľan",magenta:"purpurová",maroon:"gaštanová hnedá",mediumaquamarine:"stredná akvamarínová",mediumblue:"stredná modrá",mediumorchid:"stredná orchideová",mediumpurple:"stredná purpurová",mediumseagreen:"stredná morská zelená",mediumslateblue:"stredná bridlicová modrá",mediumspringgreen:"stredná jarná zelená",mediumturquoise:"stredná tyrkysová",mediumvioletred:"stredná fialovočervená",midnightblue:"polnočná modrá",mintcream:"mätová krémová",mistyrose:"zahmlená ruža",moccasin:"mokasínová",navajowhite:"navajská biela",navy:"námornícka",oldlace:"stará čipka",olive:"olivová",olivedrab:"fádna olivová",orange:"oranžová",orangered:"oranžovo červená",orchid:"orchideová",palegoldenrod:"bledá zlatobyľová",palegreen:"bledá zelená",paleturquoise:"bledá tyrkysová",palevioletred:"bledá fialovo červená",papayawhip:"papájový krém",peachpuff:"broskyňový nádych",peru:"peru",pink:"ružová",plum:"slivková",powderblue:"prášková modrá",purple:"purpurová",red:"červená",rosybrown:"ružovo hnedá",royalblue:"kráľovská modrá",saddlebrown:"sedlová hnedá",salmon:"lososová",sandybrown:"piesková hnedá",seagreen:"morská zelená",seashell:"lastúrová",sienna:"sienská",silver:"strieborná",skyblue:"modré nebo",slateblue:"bridlicová modrá",slategray:"bridlicová sivá",slategrey:"bridlicová sivá",snow:"snehová",springgreen:"jarná zelená",steelblue:"oceľovomodrá",tan:"žltohnedá",teal:"zelenomodrá",thistle:"bodliaková",tomato:"paradajková",transparent:"priesvitná",turquoise:"tyrkysová",violet:"fialová",wheat:"pšeničná",white:"biela",whitesmoke:"biely dym",yellow:"žltá",yellowgreen:"žltozelená"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sk/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sk/colors.js.uncompressed.js new file mode 100644 index 00000000..700f727a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sk/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/sk/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "modrá (alice)", + antiquewhite: "antická biela", + aqua: "vodová", + aquamarine: "akvamarínová", + azure: "azúrová", + beige: "béžová", + bisque: "porcelánová", + black: "čierna", + blanchedalmond: "bledá mandľová", + blue: "modrá", + blueviolet: "modro-fialová", + brown: "hnedá", + burlywood: "drevená hnedá", + cadetblue: "červeno modrá", + chartreuse: "kartúzska", + chocolate: "čokoládová", + coral: "koralová", + cornflowerblue: "nevädzová modrá", + cornsilk: "ôstie kukurice", + crimson: "karmínová", + cyan: "zelenomodrá", + darkblue: "tmavomodrá", + darkcyan: "tmavá zelenomodrá", + darkgoldenrod: "tmavá zlatobyľ", + darkgray: "tmavosivá", + darkgreen: "tmavozelená", + darkgrey: "tmavosivá", // same as darkgray + darkkhaki: "tmavá žltohnedá", + darkmagenta: "tmavá purpurová", + darkolivegreen: "tmavá olivovo zelená", + darkorange: "tmavá oranžová", + darkorchid: "tmavá orchidea", + darkred: "tmavočervená", + darksalmon: "tmavá lososová", + darkseagreen: "tmavá morská zelená", + darkslateblue: "tmavá bridlicová modrá", + darkslategray: "tmavá bridlicová sivá", + darkslategrey: "tmavá bridlicová sivá", // same as darkslategray + darkturquoise: "tmavá tyrkysová", + darkviolet: "tmavofialová", + deeppink: "hlboká ružová", + deepskyblue: "hlboká modrá obloha", + dimgray: "matná sivá", + dimgrey: "matná sivá", // same as dimgray + dodgerblue: "modrá (dodger)", + firebrick: "pálená tehla", + floralwhite: "biely kvet", + forestgreen: "lesná zelená", + fuchsia: "fuchsia", + gainsboro: "sivá - gainsboro", + ghostwhite: "biela (ghost white)", + gold: "zlatá", + goldenrod: "zlatobyľ", + gray: "sivá", + green: "zelená", + greenyellow: "zelenožltá", + grey: "sivá", // same as gray + honeydew: "ambrózia", + hotpink: "horúca ružová", + indianred: "indiánska červená", + indigo: "indigo", + ivory: "slonovina", + khaki: "kaki", + lavender: "levanduľa", + lavenderblush: "rumencová levanduľa", + lawngreen: "trávová zelená", + lemonchiffon: "citrónový šifón", + lightblue: "svetlomodrá", + lightcoral: "svetlá koralová", + lightcyan: "svetlá zelenomodrá", + lightgoldenrodyellow: "svetlá zlatobyľová žltá", + lightgray: "svetlosivá", + lightgreen: "svetlozelená", + lightgrey: "svetlosivá", // same as lightgray + lightpink: "svetloružová", + lightsalmon: "svetlá lososová", + lightseagreen: "svetlá morská zelená", + lightskyblue: "svetlá modrá obloha", + lightslategray: "svetlá bridlicová sivá", + lightslategrey: "svetlá bridlicová sivá", // same as lightslategray + lightsteelblue: "svetlá oceľovomodrá", + lightyellow: "svetložltá", + lime: "limetková", + limegreen: "limetková zelená", + linen: "ľan", + magenta: "purpurová", + maroon: "gaštanová hnedá", + mediumaquamarine: "stredná akvamarínová", + mediumblue: "stredná modrá", + mediumorchid: "stredná orchideová", + mediumpurple: "stredná purpurová", + mediumseagreen: "stredná morská zelená", + mediumslateblue: "stredná bridlicová modrá", + mediumspringgreen: "stredná jarná zelená", + mediumturquoise: "stredná tyrkysová", + mediumvioletred: "stredná fialovočervená", + midnightblue: "polnočná modrá", + mintcream: "mätová krémová", + mistyrose: "zahmlená ruža", + moccasin: "mokasínová", + navajowhite: "navajská biela", + navy: "námornícka", + oldlace: "stará čipka", + olive: "olivová", + olivedrab: "fádna olivová", + orange: "oranžová", + orangered: "oranžovo červená", + orchid: "orchideová", + palegoldenrod: "bledá zlatobyľová", + palegreen: "bledá zelená", + paleturquoise: "bledá tyrkysová", + palevioletred: "bledá fialovo červená", + papayawhip: "papájový krém", + peachpuff: "broskyňový nádych", + peru: "peru", + pink: "ružová", + plum: "slivková", + powderblue: "prášková modrá", + purple: "purpurová", + red: "červená", + rosybrown: "ružovo hnedá", + royalblue: "kráľovská modrá", + saddlebrown: "sedlová hnedá", + salmon: "lososová", + sandybrown: "piesková hnedá", + seagreen: "morská zelená", + seashell: "lastúrová", + sienna: "sienská", + silver: "strieborná", + skyblue: "modré nebo", + slateblue: "bridlicová modrá", + slategray: "bridlicová sivá", + slategrey: "bridlicová sivá", // same as slategray + snow: "snehová", + springgreen: "jarná zelená", + steelblue: "oceľovomodrá", + tan: "žltohnedá", + teal: "zelenomodrá", + thistle: "bodliaková", + tomato: "paradajková", + transparent: "priesvitná", + turquoise: "tyrkysová", + violet: "fialová", + wheat: "pšeničná", + white: "biela", + whitesmoke: "biely dym", + yellow: "žltá", + yellowgreen: "žltozelená" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sl/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sl/colors.js new file mode 100644 index 00000000..b9ab0548 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sl/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/sl/colors",({aliceblue:"alice blue modra",antiquewhite:"antično bela",aqua:"svetlo modra",aquamarine:"akvamarin",azure:"azurno modra",beige:"bež",bisque:"porcelanasta",black:"črna",blanchedalmond:"obledelo mandljeva",blue:"modra",blueviolet:"modro vijolična",brown:"rjava",burlywood:"peščeno sivo-rjava",cadetblue:"kadetsko modra",chartreuse:"chartreuse",chocolate:"čokoladna",coral:"koralna",cornflowerblue:"plavičasto modra",cornsilk:"koruzna",crimson:"karminasta",cyan:"cijan",darkblue:"temno modra",darkcyan:"temno cijan",darkgoldenrod:"temna zlata rozga",darkgray:"temno siva",darkgreen:"temno zelena",darkgrey:"temno siva",darkkhaki:"temno kaki",darkmagenta:"temna magenta",darkolivegreen:"temna olivno zelena",darkorange:"temno oranžna",darkorchid:"temno orhidejasta",darkred:"temno rdeča",darksalmon:"temno lososova",darkseagreen:"temno morsko zelena",darkslateblue:"temno skrilasto modra",darkslategray:"temno skrilasto siva",darkslategrey:"temno skrilasto siva",darkturquoise:"temno turkizna",darkviolet:"temno vijolična",deeppink:"temno rožnata",deepskyblue:"temno nebeško modra",dimgray:"pepelnato siva",dimgrey:"pepelnato siva",dodgerblue:"dodgersko modra",firebrick:"opečnata",floralwhite:"cvetno bela",forestgreen:"gozdno zelena",fuchsia:"roza",gainsboro:"gainsboro",ghostwhite:"senčnato bela",gold:"zlata",goldenrod:"zlata rozga",gray:"siva",green:"zelena",greenyellow:"zeleno-rumena",grey:"siva",honeydew:"medena rosa",hotpink:"kričeče rožnata",indianred:"indijansko rdeča",indigo:"indigo",ivory:"slonokoščena",khaki:"kaki",lavender:"sivka",lavenderblush:"rožnato sivka",lawngreen:"travniško zelena",lemonchiffon:"limonast šifon",lightblue:"svetlo modra",lightcoral:"svetlo koralna",lightcyan:"svetlo cijan",lightgoldenrodyellow:"svetlo rumena zlata rozga",lightgray:"svetlo siva",lightgreen:"svetlo zelena",lightgrey:"svetlo siva",lightpink:"svetlo rožnata",lightsalmon:"svetlo lososova",lightseagreen:"svetlo morsko zelena",lightskyblue:"svetlo nebeško modra",lightslategray:"svetlo skrilasto siva",lightslategrey:"svetlo skrilasto siva",lightsteelblue:"svetlo kovinsko modra",lightyellow:"svetlo rumena",lime:"svetlo zelena",limegreen:"apneno zelena",linen:"lanena",magenta:"magenta",maroon:"kostanjeva",mediumaquamarine:"srednji akvamarin",mediumblue:"srednje modra",mediumorchid:"srednje orhidejasta",mediumpurple:"srednje škrlatna",mediumseagreen:"srednje morsko zelena",mediumslateblue:"srednje skrilasto modra",mediumspringgreen:"srednje pomladno zelena",mediumturquoise:"srednje turkizna",mediumvioletred:"srednje vijolično rdeča",midnightblue:"polnočno modra",mintcream:"metina krema",mistyrose:"megleno rožnata",moccasin:"mokasinasta",navajowhite:"navajo bela",navy:"mornarsko modra",oldlace:"stara čipka",olive:"olivno zelena",olivedrab:"umazano olivna",orange:"oranžna",orangered:"oranžno-rdeča",orchid:"orhidejasta",palegoldenrod:"bleda zlata rozga",palegreen:"bledo zelena",paleturquoise:"bledo turkizna",palevioletred:"bledo vijolično-rdeča",papayawhip:"papaja",peachpuff:"breskova",peru:"perujska",pink:"rožnata",plum:"slivova",powderblue:"kobaltovo modra",purple:"škrlatna",red:"rdeča",rosybrown:"rožnato rjava",royalblue:"kraljevsko modra",saddlebrown:"sedlasto rjava",salmon:"lososova",sandybrown:"peščeno rjava",seagreen:"morsko zelena",seashell:"morska lupina",sienna:"sienna",silver:"srebrna",skyblue:"nebeško modra",slateblue:"skrilasto modra",slategray:"skrilasto siva",slategrey:"skrilasto siva",snow:"snežena",springgreen:"pomladno zelena",steelblue:"kovinsko modra",tan:"rumeno-rjava",teal:"modrozelena",thistle:"osatna",tomato:"paradižnikova",transparent:"prosojno",turquoise:"turkizna",violet:"vijolična",wheat:"pšenična",white:"bela",whitesmoke:"megleno bela",yellow:"rumena",yellowgreen:"rumeno-zelena"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sl/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sl/colors.js.uncompressed.js new file mode 100644 index 00000000..9a73f479 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sl/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/sl/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. +//Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). +//TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "alice blue modra", + antiquewhite: "antično bela", + aqua: "svetlo modra", + aquamarine: "akvamarin", + azure: "azurno modra", + beige: "bež", + bisque: "porcelanasta", + black: "črna", + blanchedalmond: "obledelo mandljeva", + blue: "modra", + blueviolet: "modro vijolična", + brown: "rjava", + burlywood: "peščeno sivo-rjava", + cadetblue: "kadetsko modra", + chartreuse: "chartreuse", + chocolate: "čokoladna", + coral: "koralna", + cornflowerblue: "plavičasto modra", + cornsilk: "koruzna", + crimson: "karminasta", + cyan: "cijan", + darkblue: "temno modra", + darkcyan: "temno cijan", + darkgoldenrod: "temna zlata rozga", + darkgray: "temno siva", + darkgreen: "temno zelena", + darkgrey: "temno siva", // same as darkgray + darkkhaki: "temno kaki", + darkmagenta: "temna magenta", + darkolivegreen: "temna olivno zelena", + darkorange: "temno oranžna", + darkorchid: "temno orhidejasta", + darkred: "temno rdeča", + darksalmon: "temno lososova", + darkseagreen: "temno morsko zelena", + darkslateblue: "temno skrilasto modra", + darkslategray: "temno skrilasto siva", + darkslategrey: "temno skrilasto siva", // same as darkslategray + darkturquoise: "temno turkizna", + darkviolet: "temno vijolična", + deeppink: "temno rožnata", + deepskyblue: "temno nebeško modra", + dimgray: "pepelnato siva", + dimgrey: "pepelnato siva", // same as dimgray + dodgerblue: "dodgersko modra", + firebrick: "opečnata", + floralwhite: "cvetno bela", + forestgreen: "gozdno zelena", + fuchsia: "roza", + gainsboro: "gainsboro", + ghostwhite: "senčnato bela", + gold: "zlata", + goldenrod: "zlata rozga", + gray: "siva", + green: "zelena", + greenyellow: "zeleno-rumena", + grey: "siva", // same as gray + honeydew: "medena rosa", + hotpink: "kričeče rožnata", + indianred: "indijansko rdeča", + indigo: "indigo", + ivory: "slonokoščena", + khaki: "kaki", + lavender: "sivka", + lavenderblush: "rožnato sivka", + lawngreen: "travniško zelena", + lemonchiffon: "limonast šifon", + lightblue: "svetlo modra", + lightcoral: "svetlo koralna", + lightcyan: "svetlo cijan", + lightgoldenrodyellow: "svetlo rumena zlata rozga", + lightgray: "svetlo siva", + lightgreen: "svetlo zelena", + lightgrey: "svetlo siva", // same as lightgray + lightpink: "svetlo rožnata", + lightsalmon: "svetlo lososova", + lightseagreen: "svetlo morsko zelena", + lightskyblue: "svetlo nebeško modra", + lightslategray: "svetlo skrilasto siva", + lightslategrey: "svetlo skrilasto siva", // same as lightslategray + lightsteelblue: "svetlo kovinsko modra", + lightyellow: "svetlo rumena", + lime: "svetlo zelena", + limegreen: "apneno zelena", + linen: "lanena", + magenta: "magenta", + maroon: "kostanjeva", + mediumaquamarine: "srednji akvamarin", + mediumblue: "srednje modra", + mediumorchid: "srednje orhidejasta", + mediumpurple: "srednje škrlatna", + mediumseagreen: "srednje morsko zelena", + mediumslateblue: "srednje skrilasto modra", + mediumspringgreen: "srednje pomladno zelena", + mediumturquoise: "srednje turkizna", + mediumvioletred: "srednje vijolično rdeča", + midnightblue: "polnočno modra", + mintcream: "metina krema", + mistyrose: "megleno rožnata", + moccasin: "mokasinasta", + navajowhite: "navajo bela", + navy: "mornarsko modra", + oldlace: "stara čipka", + olive: "olivno zelena", + olivedrab: "umazano olivna", + orange: "oranžna", + orangered: "oranžno-rdeča", + orchid: "orhidejasta", + palegoldenrod: "bleda zlata rozga", + palegreen: "bledo zelena", + paleturquoise: "bledo turkizna", + palevioletred: "bledo vijolično-rdeča", + papayawhip: "papaja", + peachpuff: "breskova", + peru: "perujska", + pink: "rožnata", + plum: "slivova", + powderblue: "kobaltovo modra", + purple: "škrlatna", + red: "rdeča", + rosybrown: "rožnato rjava", + royalblue: "kraljevsko modra", + saddlebrown: "sedlasto rjava", + salmon: "lososova", + sandybrown: "peščeno rjava", + seagreen: "morsko zelena", + seashell: "morska lupina", + sienna: "sienna", + silver: "srebrna", + skyblue: "nebeško modra", + slateblue: "skrilasto modra", + slategray: "skrilasto siva", + slategrey: "skrilasto siva", // same as slategray + snow: "snežena", + springgreen: "pomladno zelena", + steelblue: "kovinsko modra", + tan: "rumeno-rjava", + teal: "modrozelena", + thistle: "osatna", + tomato: "paradižnikova", + transparent: "prosojno", + turquoise: "turkizna", + violet: "vijolična", + wheat: "pšenična", + white: "bela", + whitesmoke: "megleno bela", + yellow: "rumena", + yellowgreen: "rumeno-zelena" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sv/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sv/colors.js new file mode 100644 index 00000000..06702f36 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sv/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/sv/colors",({aliceblue:"aliceblå",antiquewhite:"antikvitt",aqua:"akvamarin",aquamarine:"akvamarin",azure:"azurblått",beige:"beige",bisque:"biskvi",black:"svart",blanchedalmond:"skållad mandel",blue:"blått",blueviolet:"blåviolett",brown:"brunt",burlywood:"träfärgat",cadetblue:"kadettblått",chartreuse:"chartreuse",chocolate:"choklad",coral:"korall",cornflowerblue:"kornblått",cornsilk:"gulvitt",crimson:"karmosinrött",cyan:"cyan",darkblue:"mörkblått",darkcyan:"mörkt cyan",darkgoldenrod:"mörkt gullris",darkgray:"mörkgrått",darkgreen:"mörkgrönt",darkgrey:"mörkgrått",darkkhaki:"mörkt kaki",darkmagenta:"mörk magenta",darkolivegreen:"mörkt olivgrönt",darkorange:"mörkorange",darkorchid:"mörkt orkidé",darkred:"mörkrött",darksalmon:"mörkt laxfärgat",darkseagreen:"mörkt havsgrönt",darkslateblue:"mörkt skifferblått",darkslategray:"mörkt skiffergrått",darkslategrey:"mörkt skiffergrått",darkturquoise:"mörkturkost",darkviolet:"mörkviolett",deeppink:"djuprosa",deepskyblue:"mörkt himmelsblått",dimgray:"smutsgrått",dimgrey:"smutsgrått",dodgerblue:"dodgerblått",firebrick:"tegelstensrött",floralwhite:"blomvitt",forestgreen:"skogsgrönt",fuchsia:"fuchsia",gainsboro:"gainsboro",ghostwhite:"spökvitt",gold:"guld",goldenrod:"gullris",gray:"grått",green:"grönt",greenyellow:"gröngult",grey:"grått",honeydew:"honungsdagg",hotpink:"varmrosa",indianred:"indianrött",indigo:"indigo",ivory:"elfenbensvitt",khaki:"kaki",lavender:"lavendel",lavenderblush:"lavendelskimrande",lawngreen:"gräsmattegrönt",lemonchiffon:"citronchiffong",lightblue:"ljusblått",lightcoral:"ljuskorall",lightcyan:"ljust cyan",lightgoldenrodyellow:"ljust gullrisgult",lightgray:"ljusgrått",lightgreen:"ljusgrönt",lightgrey:"ljusgrått",lightpink:"ljusrosa",lightsalmon:"ljust laxfärgat",lightseagreen:"ljust havsgrönt",lightskyblue:"ljust himmelsblått",lightslategray:"ljust skiffergrått",lightslategrey:"ljust skiffergrått",lightsteelblue:"ljust stålblått",lightyellow:"ljusgult",lime:"lime",limegreen:"limegrönt",linen:"linne",magenta:"magenta",maroon:"rödbrunt",mediumaquamarine:"mellanakvamarin",mediumblue:"mellanblått",mediumorchid:"mellanorkidé",mediumpurple:"mellanlila",mediumseagreen:"mellanhavsgrönt",mediumslateblue:"mellanskifferblått",mediumspringgreen:"mellanvårgrönt",mediumturquoise:"mellanturkost",mediumvioletred:"mellanviolettrött",midnightblue:"midnattsblått",mintcream:"mintgrädde",mistyrose:"dunkelrosa",moccasin:"mockasin",navajowhite:"navajovitt",navy:"marinblått",oldlace:"spetsvitt",olive:"olivfärgat",olivedrab:"olivsmutsgult",orange:"orange",orangered:"orangerött",orchid:"orkidé",palegoldenrod:"blekt gullris",palegreen:"blekgrönt",paleturquoise:"blekturkost",palevioletred:"blekviolettrött",papayawhip:"papayaröra",peachpuff:"persika",peru:"peru",pink:"rosa",plum:"plommon",powderblue:"pulverblått",purple:"lila",red:"rött",rosybrown:"rosenbrunt",royalblue:"kungligt blått",saddlebrown:"sadelbrunt",salmon:"laxfärgat",sandybrown:"sandbrunt",seagreen:"havsgrönt",seashell:"snäckskal",sienna:"sienna",silver:"silver",skyblue:"himmelsblått",slateblue:"skifferblått",slategray:"skiffergrått",slategrey:"skiffergrått",snow:"snö",springgreen:"vårgrönt",steelblue:"stålblått",tan:"mellanbrunt",teal:"blågrönt",thistle:"tistel",tomato:"tomatrött",transparent:"transparent",turquoise:"turkost",violet:"violett",wheat:"vete",white:"vitt",whitesmoke:"vit rök",yellow:"gult",yellowgreen:"gulgrönt"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sv/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sv/colors.js.uncompressed.js new file mode 100644 index 00000000..2aba2e33 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/sv/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/sv/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "aliceblå", + antiquewhite: "antikvitt", + aqua: "akvamarin", + aquamarine: "akvamarin", + azure: "azurblått", + beige: "beige", + bisque: "biskvi", + black: "svart", + blanchedalmond: "skållad mandel", + blue: "blått", + blueviolet: "blåviolett", + brown: "brunt", + burlywood: "träfärgat", + cadetblue: "kadettblått", + chartreuse: "chartreuse", + chocolate: "choklad", + coral: "korall", + cornflowerblue: "kornblått", + cornsilk: "gulvitt", + crimson: "karmosinrött", + cyan: "cyan", + darkblue: "mörkblått", + darkcyan: "mörkt cyan", + darkgoldenrod: "mörkt gullris", + darkgray: "mörkgrått", + darkgreen: "mörkgrönt", + darkgrey: "mörkgrått", // same as darkgray + darkkhaki: "mörkt kaki", + darkmagenta: "mörk magenta", + darkolivegreen: "mörkt olivgrönt", + darkorange: "mörkorange", + darkorchid: "mörkt orkidé", + darkred: "mörkrött", + darksalmon: "mörkt laxfärgat", + darkseagreen: "mörkt havsgrönt", + darkslateblue: "mörkt skifferblått", + darkslategray: "mörkt skiffergrått", + darkslategrey: "mörkt skiffergrått", // same as darkslategray + darkturquoise: "mörkturkost", + darkviolet: "mörkviolett", + deeppink: "djuprosa", + deepskyblue: "mörkt himmelsblått", + dimgray: "smutsgrått", + dimgrey: "smutsgrått", // same as dimgray + dodgerblue: "dodgerblått", + firebrick: "tegelstensrött", + floralwhite: "blomvitt", + forestgreen: "skogsgrönt", + fuchsia: "fuchsia", + gainsboro: "gainsboro", + ghostwhite: "spökvitt", + gold: "guld", + goldenrod: "gullris", + gray: "grått", + green: "grönt", + greenyellow: "gröngult", + grey: "grått", // same as gray + honeydew: "honungsdagg", + hotpink: "varmrosa", + indianred: "indianrött", + indigo: "indigo", + ivory: "elfenbensvitt", + khaki: "kaki", + lavender: "lavendel", + lavenderblush: "lavendelskimrande", + lawngreen: "gräsmattegrönt", + lemonchiffon: "citronchiffong", + lightblue: "ljusblått", + lightcoral: "ljuskorall", + lightcyan: "ljust cyan", + lightgoldenrodyellow: "ljust gullrisgult", + lightgray: "ljusgrått", + lightgreen: "ljusgrönt", + lightgrey: "ljusgrått", // same as lightgray + lightpink: "ljusrosa", + lightsalmon: "ljust laxfärgat", + lightseagreen: "ljust havsgrönt", + lightskyblue: "ljust himmelsblått", + lightslategray: "ljust skiffergrått", + lightslategrey: "ljust skiffergrått", // same as lightslategray + lightsteelblue: "ljust stålblått", + lightyellow: "ljusgult", + lime: "lime", + limegreen: "limegrönt", + linen: "linne", + magenta: "magenta", + maroon: "rödbrunt", + mediumaquamarine: "mellanakvamarin", + mediumblue: "mellanblått", + mediumorchid: "mellanorkidé", + mediumpurple: "mellanlila", + mediumseagreen: "mellanhavsgrönt", + mediumslateblue: "mellanskifferblått", + mediumspringgreen: "mellanvårgrönt", + mediumturquoise: "mellanturkost", + mediumvioletred: "mellanviolettrött", + midnightblue: "midnattsblått", + mintcream: "mintgrädde", + mistyrose: "dunkelrosa", + moccasin: "mockasin", + navajowhite: "navajovitt", + navy: "marinblått", + oldlace: "spetsvitt", + olive: "olivfärgat", + olivedrab: "olivsmutsgult", + orange: "orange", + orangered: "orangerött", + orchid: "orkidé", + palegoldenrod: "blekt gullris", + palegreen: "blekgrönt", + paleturquoise: "blekturkost", + palevioletred: "blekviolettrött", + papayawhip: "papayaröra", + peachpuff: "persika", + peru: "peru", + pink: "rosa", + plum: "plommon", + powderblue: "pulverblått", + purple: "lila", + red: "rött", + rosybrown: "rosenbrunt", + royalblue: "kungligt blått", + saddlebrown: "sadelbrunt", + salmon: "laxfärgat", + sandybrown: "sandbrunt", + seagreen: "havsgrönt", + seashell: "snäckskal", + sienna: "sienna", + silver: "silver", + skyblue: "himmelsblått", + slateblue: "skifferblått", + slategray: "skiffergrått", + slategrey: "skiffergrått", // same as slategray + snow: "snö", + springgreen: "vårgrönt", + steelblue: "stålblått", + tan: "mellanbrunt", + teal: "blågrönt", + thistle: "tistel", + tomato: "tomatrött", + transparent: "transparent", + turquoise: "turkost", + violet: "violett", + wheat: "vete", + white: "vitt", + whitesmoke: "vit rök", + yellow: "gult", + yellowgreen: "gulgrönt" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/th/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/th/colors.js new file mode 100644 index 00000000..aa45e4d9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/th/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/th/colors",({aliceblue:"ฟ้าจาง",antiquewhite:"สีเนื้อ",aqua:"ฟ้าน้ำทะเล",aquamarine:"อะความารีน",azure:"น้ำเงินฟ้า",beige:"น้ำตาลเบจ",bisque:"ขาวข้าวสาร",black:"ดำ",blanchedalmond:"เนื้ออ่อน",blue:"น้ำเงิน",blueviolet:"น้ำเงินม่วง",brown:"น้ำตาล",burlywood:"น้ำตาลอ่อน",cadetblue:"เขียวน้ำเงินหม่น",chartreuse:"เขียวสะท้อนแสง",chocolate:"ช็อกโกแลต",coral:"แสดเข้มนวล",cornflowerblue:"สีคอร์นฟลาวเวอร์บลู",cornsilk:"cornsilk",crimson:"แดงเลือดหมู",cyan:"เขียวแกมน้ำเงิน",darkblue:"น้ำเงินเข้ม",darkcyan:"เขียวแกมน้ำเงินเข้ม",darkgoldenrod:"ทองเหลืองเข้ม",darkgray:"เทาเข้ม",darkgreen:"เขียวเข้ม",darkgrey:"เทาเข้ม",darkkhaki:"กากีเข้ม",darkmagenta:"แดงแกมม่วงเข้ม",darkolivegreen:"เขียวโอลีฟเข้ม",darkorange:"ส้มเข้ม",darkorchid:"สีม่วงกล้วยไม้เข้ม",darkred:"แดงเข้ม",darksalmon:"ส้มเข้ม",darkseagreen:"เขียวทะเลเข้ม",darkslateblue:"น้ำเงินนวลเข้ม",darkslategray:"เทานวลเข้ม",darkslategrey:"เทานวลเข้ม",darkturquoise:"ฟ้าขี้นกการเวกเข้ม",darkviolet:"ม่วงเข้ม",deeppink:"ชมพูเข้ม",deepskyblue:"ฟ้าสด",dimgray:"เทาทึม",dimgrey:"เทาทึม",dodgerblue:"ฟ้าสะท้อนแสง",firebrick:"สีอิฐ",floralwhite:"ขาวแกมชมพู",forestgreen:"หยก",fuchsia:"บานเย็น",gainsboro:"เทานวล",ghostwhite:"น้ำข้าว",gold:"ทอง",goldenrod:"ทองเหลือง",gray:"เทา",green:"เขียว",greenyellow:"เขียวแกมเหลือง",grey:"เทา",honeydew:"ขาวแกมเขียว",hotpink:"ชมพูจัด",indianred:"แดงอมเหลือง",indigo:"คราม",ivory:"งาช้าง",khaki:"กากี",lavender:"ม่วงลาเวนเดอร์",lavenderblush:"นมเย็น",lawngreen:"เขียวหญ้าอ่อน",lemonchiffon:"lemon chiffon",lightblue:"น้ำเงินอ่อน",lightcoral:"ชมพูอมแดง",lightcyan:"เขียวแกมน้ำเงินอ่อน",lightgoldenrodyellow:"ทองเหลืองอ่อน",lightgray:"เทาอ่อน",lightgreen:"เขียวอ่อน",lightgrey:"เทาอ่อน",lightpink:"ชมพูอ่อน",lightsalmon:"ส้มจาง",lightseagreen:"เขียวทะเลอ่อน",lightskyblue:"ฟ้าอ่อน",lightslategray:"เทานวลอ่อน",lightslategrey:"เทานวลอ่อน",lightsteelblue:"น้ำเงินนวลอ่อน",lightyellow:"เหลืองอ่อน",lime:"เหลืองมะนาว",limegreen:"เขียวมะนาว",linen:"ลินนิน",magenta:"แดงแกมม่วง",maroon:"น้ำตาลแดง",mediumaquamarine:"อะความารีนกลางๆ",mediumblue:"น้ำเงินกลางๆ",mediumorchid:"ม่วงกล้วยไม้กลางๆ",mediumpurple:"ม่วงอัญชัญ",mediumseagreen:" เขียวทะเลกลางๆ",mediumslateblue:"น้ำเงินนวลกลางๆ",mediumspringgreen:"สีเขียวนวลกลางๆ",mediumturquoise:"ฟ้าขี้นกการเวกกลางๆ",mediumvioletred:"แดงอมม่วงกลางๆ",midnightblue:"น้ำเงินทึบ",mintcream:"ขาวกะทิ",mistyrose:"ชมพูหม่น",moccasin:"ม็อคค่า",navajowhite:"ส้มหนังกลับ",navy:"น้ำเงินเข้ม",oldlace:"ขาวนวล",olive:"โอลีฟ",olivedrab:"เขียวมะกอกแก่",orange:"ส้ม",orangered:"ส้มแกมแดง",orchid:"สีกล้วยไม้",palegoldenrod:"ทองเหลืองจาง",palegreen:"เขียวจาง",paleturquoise:"ฟ้าขี้นกการเวกจาง",palevioletred:"แดงอมม่วงจาง",papayawhip:"ชมพูจาง",peachpuff:" สีพีช",peru:"ส้มดินเผา",pink:"ชมพู",plum:"ม่วงอ่อน",powderblue:"ฟ้าหม่น",purple:"ม่วง",red:"แดง",rosybrown:"กะปิ",royalblue:"น้ำเงินเข้ม",saddlebrown:"น้ำตาล",salmon:"ส้มอ่อน",sandybrown:"น้ำตาลลูกรัง",seagreen:"เขียวทะเล",seashell:"สีขาวหอยทะเล",sienna:"น้ำตาลอมแดง",silver:"เงิน",skyblue:"ฟ้า",slateblue:"น้ำเงินนวล",slategray:"เทาอมน้ำเงินนวล",slategrey:"เทาอมน้ำเงินนวล",snow:"ขาวหิมะ",springgreen:"เขียว",steelblue:"น้ำเงินด้าน",tan:"แทน",teal:"เขียวหัวเป็ด",thistle:"ม่วงจาง",tomato:"แสด",transparent:"สีใส",turquoise:"ฟ้าขี้นกการเวก",violet:"ม่วง",wheat:"เหลืองรำข้าว",white:"ขาว",whitesmoke:"ขาวควัน",yellow:"เหลือง",yellowgreen:"เหลืองแกมเขียว"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/th/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/th/colors.js.uncompressed.js new file mode 100644 index 00000000..520bdacf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/th/colors.js.uncompressed.js @@ -0,0 +1,157 @@ +define( +"dojo/nls/th/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + +//Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). +//TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? +aliceblue: "ฟ้าจาง", +antiquewhite: "สีเนื้อ", +aqua: "ฟ้าน้ำทะเล", +aquamarine: "อะความารีน", +azure: "น้ำเงินฟ้า", +beige: "น้ำตาลเบจ", +bisque: "ขาวข้าวสาร", +black: "ดำ", +blanchedalmond: "เนื้ออ่อน", +blue: "น้ำเงิน", +blueviolet: "น้ำเงินม่วง", +brown: "น้ำตาล", +burlywood: "น้ำตาลอ่อน", +cadetblue: "เขียวน้ำเงินหม่น", +chartreuse: "เขียวสะท้อนแสง", +chocolate: "ช็อกโกแลต", +coral: "แสดเข้มนวล", +cornflowerblue: "สีคอร์นฟลาวเวอร์บลู", +cornsilk: "cornsilk", +crimson: "แดงเลือดหมู", +cyan: "เขียวแกมน้ำเงิน", +darkblue: "น้ำเงินเข้ม", +darkcyan: "เขียวแกมน้ำเงินเข้ม", +darkgoldenrod: "ทองเหลืองเข้ม", +darkgray: "เทาเข้ม", +darkgreen: "เขียวเข้ม", +darkgrey: "เทาเข้ม", // same as darkgray +darkkhaki: "กากีเข้ม", +darkmagenta: "แดงแกมม่วงเข้ม", +darkolivegreen: "เขียวโอลีฟเข้ม", +darkorange: "ส้มเข้ม", +darkorchid: "สีม่วงกล้วยไม้เข้ม", +darkred: "แดงเข้ม", +darksalmon: "ส้มเข้ม", +darkseagreen: "เขียวทะเลเข้ม", +darkslateblue: "น้ำเงินนวลเข้ม", +darkslategray: "เทานวลเข้ม", +darkslategrey: "เทานวลเข้ม", // same as darkslategray +darkturquoise: "ฟ้าขี้นกการเวกเข้ม", +darkviolet: "ม่วงเข้ม", +deeppink: "ชมพูเข้ม", +deepskyblue: "ฟ้าสด", +dimgray: "เทาทึม", +dimgrey: "เทาทึม", // same as dimgray +dodgerblue: "ฟ้าสะท้อนแสง", +firebrick: "สีอิฐ", +floralwhite: "ขาวแกมชมพู", +forestgreen: "หยก", +fuchsia: "บานเย็น", +gainsboro: "เทานวล", +ghostwhite: "น้ำข้าว", +gold: "ทอง", +goldenrod: "ทองเหลือง", +gray: "เทา", +green: "เขียว", +greenyellow: "เขียวแกมเหลือง", +grey: "เทา", // same as gray +honeydew: "ขาวแกมเขียว", +hotpink: "ชมพูจัด", +indianred: "แดงอมเหลือง", +indigo: "คราม", +ivory: "งาช้าง", +khaki: "กากี", +lavender: "ม่วงลาเวนเดอร์", +lavenderblush: "นมเย็น", +lawngreen: "เขียวหญ้าอ่อน", +lemonchiffon: "lemon chiffon", +lightblue: "น้ำเงินอ่อน", +lightcoral: "ชมพูอมแดง", +lightcyan: "เขียวแกมน้ำเงินอ่อน", +lightgoldenrodyellow: "ทองเหลืองอ่อน", +lightgray: "เทาอ่อน", +lightgreen: "เขียวอ่อน", +lightgrey: "เทาอ่อน", // same as lightgray +lightpink: "ชมพูอ่อน", +lightsalmon: "ส้มจาง", +lightseagreen: "เขียวทะเลอ่อน", +lightskyblue: "ฟ้าอ่อน", +lightslategray: "เทานวลอ่อน", +lightslategrey: "เทานวลอ่อน", // same as lightslategray +lightsteelblue: "น้ำเงินนวลอ่อน", +lightyellow: "เหลืองอ่อน", +lime: "เหลืองมะนาว", +limegreen: "เขียวมะนาว", +linen: "ลินนิน", +magenta: "แดงแกมม่วง", +maroon: "น้ำตาลแดง", +mediumaquamarine: "อะความารีนกลางๆ", +mediumblue: "น้ำเงินกลางๆ", +mediumorchid: "ม่วงกล้วยไม้กลางๆ", +mediumpurple: "ม่วงอัญชัญ", +mediumseagreen: " เขียวทะเลกลางๆ", +mediumslateblue: "น้ำเงินนวลกลางๆ", +mediumspringgreen: "สีเขียวนวลกลางๆ", +mediumturquoise: "ฟ้าขี้นกการเวกกลางๆ", +mediumvioletred: "แดงอมม่วงกลางๆ", +midnightblue: "น้ำเงินทึบ", +mintcream: "ขาวกะทิ", +mistyrose: "ชมพูหม่น", +moccasin: "ม็อคค่า", +navajowhite: "ส้มหนังกลับ", +navy: "น้ำเงินเข้ม", +oldlace: "ขาวนวล", +olive: "โอลีฟ", +olivedrab: "เขียวมะกอกแก่", +orange: "ส้ม", +orangered: "ส้มแกมแดง", +orchid: "สีกล้วยไม้", +palegoldenrod: "ทองเหลืองจาง", +palegreen: "เขียวจาง", +paleturquoise: "ฟ้าขี้นกการเวกจาง", +palevioletred: "แดงอมม่วงจาง", +papayawhip: "ชมพูจาง", +peachpuff: " สีพีช", +peru: "ส้มดินเผา", +pink: "ชมพู", +plum: "ม่วงอ่อน", +powderblue: "ฟ้าหม่น", +purple: "ม่วง", +red: "แดง", +rosybrown: "กะปิ", +royalblue: "น้ำเงินเข้ม", +saddlebrown: "น้ำตาล", +salmon: "ส้มอ่อน", +sandybrown: "น้ำตาลลูกรัง", +seagreen: "เขียวทะเล", +seashell: "สีขาวหอยทะเล", +sienna: "น้ำตาลอมแดง", +silver: "เงิน", +skyblue: "ฟ้า", +slateblue: "น้ำเงินนวล", +slategray: "เทาอมน้ำเงินนวล", +slategrey: "เทาอมน้ำเงินนวล", // same as slategray +snow: "ขาวหิมะ", +springgreen: "เขียว", +steelblue: "น้ำเงินด้าน", +tan: "แทน", +teal: "เขียวหัวเป็ด", +thistle: "ม่วงจาง", +tomato: "แสด", +transparent: "สีใส", +turquoise: "ฟ้าขี้นกการเวก", +violet: "ม่วง", +wheat: "เหลืองรำข้าว", +white: "ขาว", +whitesmoke: "ขาวควัน", +yellow: "เหลือง", +yellowgreen: "เหลืองแกมเขียว" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/tr/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/tr/colors.js new file mode 100644 index 00000000..b9e0d640 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/tr/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/tr/colors",({aliceblue:"alice mavisi",antiquewhite:"antik beyaz",aqua:"deniz mavisi",aquamarine:"akuamarin",azure:"azur mavisi",beige:"bej",bisque:"bisküvi",black:"siyah",blanchedalmond:"soluk badem",blue:"mavi",blueviolet:"mavi-mor",brown:"kahverengi",burlywood:"sarımsı kahverengi",cadetblue:"denizci mavisi",chartreuse:"chartreuse",chocolate:"çikolata",coral:"mercan",cornflowerblue:"peygamber çiçeği mavisi",cornsilk:"mısır rengi",crimson:"crimson",cyan:"camgöbeği",darkblue:"koyu mavi",darkcyan:"koyu camgöbeği",darkgoldenrod:"koyu sarı",darkgray:"koyu gri",darkgreen:"koyu yeşil",darkgrey:"koyu gri",darkkhaki:"koyu haki",darkmagenta:"koyu mor",darkolivegreen:"koyu zeytin yeşili",darkorange:"koyu turuncu",darkorchid:"koyu orkide",darkred:"koyu kırmızı",darksalmon:"koyu somon",darkseagreen:"koyu deniz yeşili",darkslateblue:"koyu arduvaz mavisi",darkslategray:"koyu arduvaz grisi",darkslategrey:"koyu arduvaz grisi",darkturquoise:"koyu turkuaz",darkviolet:"koyu eflatun",deeppink:"koyu pembe",deepskyblue:"koyu gök mavisi",dimgray:"soluk gri",dimgrey:"soluk gri",dodgerblue:"toz mavisi",firebrick:"canlı kiremit",floralwhite:"çiçek beyazı",forestgreen:"koyu deniz yeşili",fuchsia:"fuşya",gainsboro:"gainsboro",ghostwhite:"silik beyaz",gold:"altın",goldenrod:"sarısabır",gray:"gri",green:"yeşil",greenyellow:"yeşil-sarı",grey:"gri",honeydew:"çam sakızı",hotpink:"sıcak pembe",indianred:"kızılderili kırmızısı",indigo:"çivit mavisi",ivory:"fildişi",khaki:"haki",lavender:"lavanta",lavenderblush:"lavanta pembesi",lawngreen:"çimen yeşili",lemonchiffon:"limoni",lightblue:"açık mavi",lightcoral:"açık mercan",lightcyan:"açık camgöbeği",lightgoldenrodyellow:"açık sarısabır",lightgray:"açık gri",lightgreen:"açık yeşil",lightgrey:"açık gri",lightpink:"açık pembe",lightsalmon:"açık somon",lightseagreen:"açık deniz yeşili",lightskyblue:"açık gök mavisi",lightslategray:"açık arduvaz grisi",lightslategrey:"açık arduvaz grisi",lightsteelblue:"açık metalik mavi",lightyellow:"açık sarı",lime:"limon yeşili",limegreen:"küf yeşili",linen:"keten",magenta:"macenta",maroon:"kestane",mediumaquamarine:"orta akuamarin",mediumblue:"orta mavi",mediumorchid:"orta orkide",mediumpurple:"orta mor",mediumseagreen:"orta deniz yeşili",mediumslateblue:"orta arduvaz mavisi",mediumspringgreen:"orta bahar yeşili",mediumturquoise:"orta turkuaz",mediumvioletred:"orta menekşe kırmızısı",midnightblue:"gece mavisi",mintcream:"naneli krem",mistyrose:"gülkurusu",moccasin:"mokosen",navajowhite:"navajo beyazı",navy:"lacivert",oldlace:"eski dantel",olive:"zeytin",olivedrab:"asker yeşili",orange:"turuncu",orangered:"turuncu kırmızı",orchid:"orkide",palegoldenrod:"soluk sarısabır",palegreen:"soluk yeşil",paleturquoise:"soluk turkuaz",palevioletred:"soluk menekşe kırmızısı",papayawhip:"papaya sapı",peachpuff:"açık şeftali",peru:"peru",pink:"pembe",plum:"erik",powderblue:"pudra mavisi",purple:"mor",red:"kırmızı",rosybrown:"pembemsi kahverengi",royalblue:"parlak koyu mavi",saddlebrown:"açık kahve",salmon:"somon",sandybrown:"kum rengi",seagreen:"deniz yeşili",seashell:"deniz kabuğu",sienna:"koyu kahve",silver:"gümüş",skyblue:"gök mavisi",slateblue:"arduvaz mavisi",slategray:"arduvaz grisi",slategrey:"arduvaz grisi",snow:"kar",springgreen:"bahar yeşili",steelblue:"metalik mavi",tan:"güneş yanığı",teal:"Teal mavi",thistle:"devedikeni",tomato:"domates",transparent:"saydam",turquoise:"turkuaz",violet:"eflatun",wheat:"buğday",white:"beyaz",whitesmoke:"beyaz duman",yellow:"sarı",yellowgreen:"sarı yeşil"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/tr/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/tr/colors.js.uncompressed.js new file mode 100644 index 00000000..8b9020f0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/tr/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/tr/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "alice mavisi", + antiquewhite: "antik beyaz", + aqua: "deniz mavisi", + aquamarine: "akuamarin", + azure: "azur mavisi", + beige: "bej", + bisque: "bisküvi", + black: "siyah", + blanchedalmond: "soluk badem", + blue: "mavi", + blueviolet: "mavi-mor", + brown: "kahverengi", + burlywood: "sarımsı kahverengi", + cadetblue: "denizci mavisi", + chartreuse: "chartreuse", + chocolate: "çikolata", + coral: "mercan", + cornflowerblue: "peygamber çiçeği mavisi", + cornsilk: "mısır rengi", + crimson: "crimson", + cyan: "camgöbeği", + darkblue: "koyu mavi", + darkcyan: "koyu camgöbeği", + darkgoldenrod: "koyu sarı", + darkgray: "koyu gri", + darkgreen: "koyu yeşil", + darkgrey: "koyu gri", // same as darkgray + darkkhaki: "koyu haki", + darkmagenta: "koyu mor", + darkolivegreen: "koyu zeytin yeşili", + darkorange: "koyu turuncu", + darkorchid: "koyu orkide", + darkred: "koyu kırmızı", + darksalmon: "koyu somon", + darkseagreen: "koyu deniz yeşili", + darkslateblue: "koyu arduvaz mavisi", + darkslategray: "koyu arduvaz grisi", + darkslategrey: "koyu arduvaz grisi", // same as darkslategray + darkturquoise: "koyu turkuaz", + darkviolet: "koyu eflatun", + deeppink: "koyu pembe", + deepskyblue: "koyu gök mavisi", + dimgray: "soluk gri", + dimgrey: "soluk gri", // same as dimgray + dodgerblue: "toz mavisi", + firebrick: "canlı kiremit", + floralwhite: "çiçek beyazı", + forestgreen: "koyu deniz yeşili", + fuchsia: "fuşya", + gainsboro: "gainsboro", + ghostwhite: "silik beyaz", + gold: "altın", + goldenrod: "sarısabır", + gray: "gri", + green: "yeşil", + greenyellow: "yeşil-sarı", + grey: "gri", // same as gray + honeydew: "çam sakızı", + hotpink: "sıcak pembe", + indianred: "kızılderili kırmızısı", + indigo: "çivit mavisi", + ivory: "fildişi", + khaki: "haki", + lavender: "lavanta", + lavenderblush: "lavanta pembesi", + lawngreen: "çimen yeşili", + lemonchiffon: "limoni", + lightblue: "açık mavi", + lightcoral: "açık mercan", + lightcyan: "açık camgöbeği", + lightgoldenrodyellow: "açık sarısabır", + lightgray: "açık gri", + lightgreen: "açık yeşil", + lightgrey: "açık gri", // same as lightgray + lightpink: "açık pembe", + lightsalmon: "açık somon", + lightseagreen: "açık deniz yeşili", + lightskyblue: "açık gök mavisi", + lightslategray: "açık arduvaz grisi", + lightslategrey: "açık arduvaz grisi", // same as lightslategray + lightsteelblue: "açık metalik mavi", + lightyellow: "açık sarı", + lime: "limon yeşili", + limegreen: "küf yeşili", + linen: "keten", + magenta: "macenta", + maroon: "kestane", + mediumaquamarine: "orta akuamarin", + mediumblue: "orta mavi", + mediumorchid: "orta orkide", + mediumpurple: "orta mor", + mediumseagreen: "orta deniz yeşili", + mediumslateblue: "orta arduvaz mavisi", + mediumspringgreen: "orta bahar yeşili", + mediumturquoise: "orta turkuaz", + mediumvioletred: "orta menekşe kırmızısı", + midnightblue: "gece mavisi", + mintcream: "naneli krem", + mistyrose: "gülkurusu", + moccasin: "mokosen", + navajowhite: "navajo beyazı", + navy: "lacivert", + oldlace: "eski dantel", + olive: "zeytin", + olivedrab: "asker yeşili", + orange: "turuncu", + orangered: "turuncu kırmızı", + orchid: "orkide", + palegoldenrod: "soluk sarısabır", + palegreen: "soluk yeşil", + paleturquoise: "soluk turkuaz", + palevioletred: "soluk menekşe kırmızısı", + papayawhip: "papaya sapı", + peachpuff: "açık şeftali", + peru: "peru", + pink: "pembe", + plum: "erik", + powderblue: "pudra mavisi", + purple: "mor", + red: "kırmızı", + rosybrown: "pembemsi kahverengi", + royalblue: "parlak koyu mavi", + saddlebrown: "açık kahve", + salmon: "somon", + sandybrown: "kum rengi", + seagreen: "deniz yeşili", + seashell: "deniz kabuğu", + sienna: "koyu kahve", + silver: "gümüş", + skyblue: "gök mavisi", + slateblue: "arduvaz mavisi", + slategray: "arduvaz grisi", + slategrey: "arduvaz grisi", // same as slategray + snow: "kar", + springgreen: "bahar yeşili", + steelblue: "metalik mavi", + tan: "güneş yanığı", + teal: "Teal mavi", + thistle: "devedikeni", + tomato: "domates", + transparent: "saydam", + turquoise: "turkuaz", + violet: "eflatun", + wheat: "buğday", + white: "beyaz", + whitesmoke: "beyaz duman", + yellow: "sarı", + yellowgreen: "sarı yeşil" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/uk/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/uk/colors.js new file mode 100644 index 00000000..c852d222 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/uk/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/uk/colors",({aliceblue:"сіро-блакитний",antiquewhite:"білий антик",aqua:"зеленувато-блакитний",aquamarine:"аквамарин",azure:"лазурний",beige:"бежевий",bisque:"кремовий",black:"чорний",blanchedalmond:"світло-мигдалевий",blue:"блакитний",blueviolet:"блакитно-фіолетовий",brown:"брунатний",burlywood:"світло-брунатний",cadetblue:"сіро-синій",chartreuse:"жовто-салатовий",chocolate:"шоколадний",coral:"коралевий",cornflowerblue:"фіолетово-синій",cornsilk:"шовковий відтінок",crimson:"малиновий",cyan:"синій",darkblue:"темно-блакитний",darkcyan:"темно-синій",darkgoldenrod:"темно-золотавий",darkgray:"темно-сірий",darkgreen:"темно-зелений",darkgrey:"темно-сірий",darkkhaki:"темний хакі",darkmagenta:"темно-пурпуровий",darkolivegreen:"темно-оливковий",darkorange:"темно-жовтогарячий",darkorchid:"темний орсель",darkred:"темно-червоний",darksalmon:"темно-лососевий",darkseagreen:"темний колір морської хвилі",darkslateblue:"темний грифельно-синій",darkslategray:"темний грифельно-сірий",darkslategrey:"темний грифельно-сірий",darkturquoise:"темно-бірюзовий",darkviolet:"темно-фіолетовий",deeppink:"темно-рожевий",deepskyblue:"насичений світло-блакитний",dimgray:"тьмяно-сірий",dimgrey:"тьмяно-сірий",dodgerblue:"блідо-блакитний",firebrick:"цеглястий",floralwhite:"квітково-білий",forestgreen:"зелений лісний",fuchsia:"фуксин",gainsboro:"блідо-сірий",ghostwhite:"молочно-білий",gold:"золотий",goldenrod:"золотавий",gray:"сірий",green:"зелений",greenyellow:"зелено-жовтий",grey:"сірий",honeydew:"медовий",hotpink:"червоно-рожевий",indianred:"індійський червоний",indigo:"індиго",ivory:"слонової кістки",khaki:"хакі",lavender:"лавандовий",lavenderblush:"рожево-лавандовий",lawngreen:"трав'янистий",lemonchiffon:"блідо-лимонний",lightblue:"світло-блакитний",lightcoral:"світло-коралевий",lightcyan:"світло-синій",lightgoldenrodyellow:"світло-золотаво-жовтий",lightgray:"світло-сірий",lightgreen:"світло-зелений",lightgrey:"світло-сірий",lightpink:"світло-рожевий",lightsalmon:"світло-лососевий",lightseagreen:"світлий морської хвилі",lightskyblue:"світлий небесно-блакитний",lightslategray:"світлий грифельно-сірий",lightslategrey:"світлий грифельно-сірий",lightsteelblue:"світлий сталевий",lightyellow:"світло-жовтий",lime:"лайм",limegreen:"зелений лайм",linen:"лляний",magenta:"пурпурний",maroon:"темно-брунатний",mediumaquamarine:"нейтральний аквамарин",mediumblue:"нейтральний блакитний",mediumorchid:"нейтральний орсель",mediumpurple:"нейтральний фіолетовий",mediumseagreen:"нейтральний морської хвилі",mediumslateblue:"нейтральний грифельно-синій",mediumspringgreen:"нейтральний весняний зелений",mediumturquoise:"нейтральний бірюзовий",mediumvioletred:"нейтральний фіолетово-червоний",midnightblue:"північно-синій",mintcream:"м'ятно-кремовий",mistyrose:"тьмяно-рожевий",moccasin:"болотний",navajowhite:"білий навахо",navy:"темно-синій",oldlace:"матово-білий",olive:"оливковий",olivedrab:"оливково-сірий",orange:"жовтогарячий",orangered:"жовтогаряче-червоний",orchid:"світло-бузковий",palegoldenrod:"блідо-золотавий",palegreen:"блідо-зелений",paleturquoise:"блідо-бірюзовий",palevioletred:"блідо-фіолетово-червоний",papayawhip:"динне дерево",peachpuff:"персиковий",peru:"перу",pink:"рожевий",plum:"сливовий",powderblue:"зеленувато-блакитний",purple:"фіолетовий",red:"червоний",rosybrown:"рожево-брунатний",royalblue:"королевський блакитний",saddlebrown:"шкіряно-брунатний",salmon:"лососевий",sandybrown:"брунатно-пісочний",seagreen:"морської хвилі",seashell:"морська скойка",sienna:"охра",silver:"сріблястий",skyblue:"небесно-блакитний",slateblue:"грифельно-синій",slategray:"грифельно-сірий",slategrey:"грифельно-сірий",snow:"білосніжний",springgreen:"весняний зелений",steelblue:"сталевий",tan:"бронзовий",teal:"темно-бірюзовий",thistle:"будяк",tomato:"томатний",transparent:"прозорий",turquoise:"бірюзовий",violet:"фіолетовий",wheat:"пшениця",white:"білий",whitesmoke:"попелясто-білий",yellow:"жовтий",yellowgreen:"жовто-зелений"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/uk/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/uk/colors.js.uncompressed.js new file mode 100644 index 00000000..b0bcf8aa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/uk/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/uk/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "сіро-блакитний", + antiquewhite: "білий антик", + aqua: "зеленувато-блакитний", + aquamarine: "аквамарин", + azure: "лазурний", + beige: "бежевий", + bisque: "кремовий", + black: "чорний", + blanchedalmond: "світло-мигдалевий", + blue: "блакитний", + blueviolet: "блакитно-фіолетовий", + brown: "брунатний", + burlywood: "світло-брунатний", + cadetblue: "сіро-синій", + chartreuse: "жовто-салатовий", + chocolate: "шоколадний", + coral: "коралевий", + cornflowerblue: "фіолетово-синій", + cornsilk: "шовковий відтінок", + crimson: "малиновий", + cyan: "синій", + darkblue: "темно-блакитний", + darkcyan: "темно-синій", + darkgoldenrod: "темно-золотавий", + darkgray: "темно-сірий", + darkgreen: "темно-зелений", + darkgrey: "темно-сірий", // same as darkgray + darkkhaki: "темний хакі", + darkmagenta: "темно-пурпуровий", + darkolivegreen: "темно-оливковий", + darkorange: "темно-жовтогарячий", + darkorchid: "темний орсель", + darkred: "темно-червоний", + darksalmon: "темно-лососевий", + darkseagreen: "темний колір морської хвилі", + darkslateblue: "темний грифельно-синій", + darkslategray: "темний грифельно-сірий", + darkslategrey: "темний грифельно-сірий", // same as darkslategray + darkturquoise: "темно-бірюзовий", + darkviolet: "темно-фіолетовий", + deeppink: "темно-рожевий", + deepskyblue: "насичений світло-блакитний", + dimgray: "тьмяно-сірий", + dimgrey: "тьмяно-сірий", // same as dimgray + dodgerblue: "блідо-блакитний", + firebrick: "цеглястий", + floralwhite: "квітково-білий", + forestgreen: "зелений лісний", + fuchsia: "фуксин", + gainsboro: "блідо-сірий", + ghostwhite: "молочно-білий", + gold: "золотий", + goldenrod: "золотавий", + gray: "сірий", + green: "зелений", + greenyellow: "зелено-жовтий", + grey: "сірий", // same as gray + honeydew: "медовий", + hotpink: "червоно-рожевий", + indianred: "індійський червоний", + indigo: "індиго", + ivory: "слонової кістки", + khaki: "хакі", + lavender: "лавандовий", + lavenderblush: "рожево-лавандовий", + lawngreen: "трав'янистий", + lemonchiffon: "блідо-лимонний", + lightblue: "світло-блакитний", + lightcoral: "світло-коралевий", + lightcyan: "світло-синій", + lightgoldenrodyellow: "світло-золотаво-жовтий", + lightgray: "світло-сірий", + lightgreen: "світло-зелений", + lightgrey: "світло-сірий", // same as lightgray + lightpink: "світло-рожевий", + lightsalmon: "світло-лососевий", + lightseagreen: "світлий морської хвилі", + lightskyblue: "світлий небесно-блакитний", + lightslategray: "світлий грифельно-сірий", + lightslategrey: "світлий грифельно-сірий", // same as lightslategray + lightsteelblue: "світлий сталевий", + lightyellow: "світло-жовтий", + lime: "лайм", + limegreen: "зелений лайм", + linen: "лляний", + magenta: "пурпурний", + maroon: "темно-брунатний", + mediumaquamarine: "нейтральний аквамарин", + mediumblue: "нейтральний блакитний", + mediumorchid: "нейтральний орсель", + mediumpurple: "нейтральний фіолетовий", + mediumseagreen: "нейтральний морської хвилі", + mediumslateblue: "нейтральний грифельно-синій", + mediumspringgreen: "нейтральний весняний зелений", + mediumturquoise: "нейтральний бірюзовий", + mediumvioletred: "нейтральний фіолетово-червоний", + midnightblue: "північно-синій", + mintcream: "м'ятно-кремовий", + mistyrose: "тьмяно-рожевий", + moccasin: "болотний", + navajowhite: "білий навахо", + navy: "темно-синій", + oldlace: "матово-білий", + olive: "оливковий", + olivedrab: "оливково-сірий", + orange: "жовтогарячий", + orangered: "жовтогаряче-червоний", + orchid: "світло-бузковий", + palegoldenrod: "блідо-золотавий", + palegreen: "блідо-зелений", + paleturquoise: "блідо-бірюзовий", + palevioletred: "блідо-фіолетово-червоний", + papayawhip: "динне дерево", + peachpuff: "персиковий", + peru: "перу", + pink: "рожевий", + plum: "сливовий", + powderblue: "зеленувато-блакитний", + purple: "фіолетовий", + red: "червоний", + rosybrown: "рожево-брунатний", + royalblue: "королевський блакитний", + saddlebrown: "шкіряно-брунатний", + salmon: "лососевий", + sandybrown: "брунатно-пісочний", + seagreen: "морської хвилі", + seashell: "морська скойка", + sienna: "охра", + silver: "сріблястий", + skyblue: "небесно-блакитний", + slateblue: "грифельно-синій", + slategray: "грифельно-сірий", + slategrey: "грифельно-сірий", // same as slategray + snow: "білосніжний", + springgreen: "весняний зелений", + steelblue: "сталевий", + tan: "бронзовий", + teal: "темно-бірюзовий", + thistle: "будяк", + tomato: "томатний", + transparent: "прозорий", + turquoise: "бірюзовий", + violet: "фіолетовий", + wheat: "пшениця", + white: "білий", + whitesmoke: "попелясто-білий", + yellow: "жовтий", + yellowgreen: "жовто-зелений" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh-tw/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh-tw/colors.js new file mode 100644 index 00000000..c9bd12a8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh-tw/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/zh-tw/colors",({aliceblue:"愛麗絲藍",antiquewhite:"米白色",aqua:"水色",aquamarine:"碧綠色",azure:"天藍色",beige:"灰棕色",bisque:"橘黃色",black:"黑色",blanchedalmond:"杏仁白",blue:"藍色",blueviolet:"藍紫色",brown:"褐色",burlywood:"實木色",cadetblue:"軍服藍",chartreuse:"淡黃綠色",chocolate:"巧克力色",coral:"珊瑚紅",cornflowerblue:"矢車菊藍",cornsilk:"玉米黃",crimson:"暗深紅色",cyan:"青色",darkblue:"暗藍色",darkcyan:"暗青色",darkgoldenrod:"暗金菊色",darkgray:"暗灰色",darkgreen:"暗綠色",darkgrey:"暗灰色",darkkhaki:"暗卡其色",darkmagenta:"暗紫紅色",darkolivegreen:"暗橄欖綠",darkorange:"暗橙色",darkorchid:"暗蘭花色",darkred:"暗紅色",darksalmon:"暗鮭紅",darkseagreen:"暗海綠色",darkslateblue:"暗岩藍色",darkslategray:"暗岩灰色",darkslategrey:"暗岩灰色",darkturquoise:"暗松石綠",darkviolet:"暗紫羅蘭色",deeppink:"深粉紅色",deepskyblue:"深天藍色",dimgray:"昏灰色",dimgrey:"昏灰色",dodgerblue:"道奇藍",firebrick:"紅磚色",floralwhite:"花卉白",forestgreen:"森綠色",fuchsia:"海棠紅",gainsboro:"石板灰",ghostwhite:"幽靈色",gold:"金色",goldenrod:"金菊色",gray:"灰色",green:"綠色",greenyellow:"綠黃色",grey:"灰色",honeydew:"密瓜色",hotpink:"暖粉紅色",indianred:"印度紅",indigo:"靛藍色",ivory:"象牙色",khaki:"卡其色",lavender:"薰衣草紫",lavenderblush:"薰衣草紫紅",lawngreen:"草綠色",lemonchiffon:"奶油黃",lightblue:"淡藍色",lightcoral:"淡珊瑚紅",lightcyan:"淡青色",lightgoldenrodyellow:"淡金菊黃",lightgray:"淡灰色",lightgreen:"淡綠色",lightgrey:"淡灰色",lightpink:"淡粉紅色",lightsalmon:"淡鮭紅",lightseagreen:"淡海綠色",lightskyblue:"淡天藍色",lightslategray:"淡岩灰色",lightslategrey:"淡岩灰色",lightsteelblue:"淡鐵藍色",lightyellow:"淡黃色",lime:"檸檬色",limegreen:"檸檬綠",linen:"亞麻色",magenta:"紫紅色",maroon:"栗色",mediumaquamarine:"中碧綠色",mediumblue:"中藍色",mediumorchid:"中蘭紫色",mediumpurple:"中紫色",mediumseagreen:"中海綠色",mediumslateblue:"中岩藍色",mediumspringgreen:"中春綠色",mediumturquoise:"中松石綠",mediumvioletred:"中紫羅蘭紅",midnightblue:"午夜藍",mintcream:"薄荷乳白色",mistyrose:"霧玫瑰色",moccasin:"鹿皮黃色",navajowhite:"印地安黃色",navy:"海軍藍",oldlace:"舊蕾絲色",olive:"橄欖色",olivedrab:"橄欖綠",orange:"橙色",orangered:"橙紅色",orchid:"蘭花色",palegoldenrod:"灰金菊色",palegreen:"灰綠色",paleturquoise:"灰松石綠",palevioletred:"灰紫羅蘭紅",papayawhip:"番木瓜色",peachpuff:"粉撲桃色",peru:"祕魯色",pink:"粉紅色",plum:"李紫色",powderblue:"粉藍色",purple:"紫色",red:"紅色",rosybrown:"玫瑰褐",royalblue:"品藍色",saddlebrown:"鞍褐色",salmon:"鮭紅色",sandybrown:"沙褐色",seagreen:"海綠色",seashell:"海貝色",sienna:"黃土赭色",silver:"銀色",skyblue:"天藍色",slateblue:"岩藍色",slategray:"岩灰色",slategrey:"岩灰色",snow:"雪白色",springgreen:"春綠色",steelblue:"鐵藍色",tan:"皮革色",teal:"深藍綠色",thistle:"薊色",tomato:"蕃茄紅",transparent:"透明",turquoise:"松石綠",violet:"紫羅蘭色",wheat:"小麥色",white:"白色",whitesmoke:"白煙色",yellow:"黃色",yellowgreen:"黃綠色"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh-tw/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh-tw/colors.js.uncompressed.js new file mode 100644 index 00000000..5d8ce27b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh-tw/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/zh-tw/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "愛麗絲藍", + antiquewhite: "米白色", + aqua: "水色", + aquamarine: "碧綠色", + azure: "天藍色", + beige: "灰棕色", + bisque: "橘黃色", + black: "黑色", + blanchedalmond: "杏仁白", + blue: "藍色", + blueviolet: "藍紫色", + brown: "褐色", + burlywood: "實木色", + cadetblue: "軍服藍", + chartreuse: "淡黃綠色", + chocolate: "巧克力色", + coral: "珊瑚紅", + cornflowerblue: "矢車菊藍", + cornsilk: "玉米黃", + crimson: "暗深紅色", + cyan: "青色", + darkblue: "暗藍色", + darkcyan: "暗青色", + darkgoldenrod: "暗金菊色", + darkgray: "暗灰色", + darkgreen: "暗綠色", + darkgrey: "暗灰色", // same as darkgray + darkkhaki: "暗卡其色", + darkmagenta: "暗紫紅色", + darkolivegreen: "暗橄欖綠", + darkorange: "暗橙色", + darkorchid: "暗蘭花色", + darkred: "暗紅色", + darksalmon: "暗鮭紅", + darkseagreen: "暗海綠色", + darkslateblue: "暗岩藍色", + darkslategray: "暗岩灰色", + darkslategrey: "暗岩灰色", // same as darkslategray + darkturquoise: "暗松石綠", + darkviolet: "暗紫羅蘭色", + deeppink: "深粉紅色", + deepskyblue: "深天藍色", + dimgray: "昏灰色", + dimgrey: "昏灰色", // same as dimgray + dodgerblue: "道奇藍", + firebrick: "紅磚色", + floralwhite: "花卉白", + forestgreen: "森綠色", + fuchsia: "海棠紅", + gainsboro: "石板灰", + ghostwhite: "幽靈色", + gold: "金色", + goldenrod: "金菊色", + gray: "灰色", + green: "綠色", + greenyellow: "綠黃色", + grey: "灰色", // same as gray + honeydew: "密瓜色", + hotpink: "暖粉紅色", + indianred: "印度紅", + indigo: "靛藍色", + ivory: "象牙色", + khaki: "卡其色", + lavender: "薰衣草紫", + lavenderblush: "薰衣草紫紅", + lawngreen: "草綠色", + lemonchiffon: "奶油黃", + lightblue: "淡藍色", + lightcoral: "淡珊瑚紅", + lightcyan: "淡青色", + lightgoldenrodyellow: "淡金菊黃", + lightgray: "淡灰色", + lightgreen: "淡綠色", + lightgrey: "淡灰色", // same as lightgray + lightpink: "淡粉紅色", + lightsalmon: "淡鮭紅", + lightseagreen: "淡海綠色", + lightskyblue: "淡天藍色", + lightslategray: "淡岩灰色", + lightslategrey: "淡岩灰色", // same as lightslategray + lightsteelblue: "淡鐵藍色", + lightyellow: "淡黃色", + lime: "檸檬色", + limegreen: "檸檬綠", + linen: "亞麻色", + magenta: "紫紅色", + maroon: "栗色", + mediumaquamarine: "中碧綠色", + mediumblue: "中藍色", + mediumorchid: "中蘭紫色", + mediumpurple: "中紫色", + mediumseagreen: "中海綠色", + mediumslateblue: "中岩藍色", + mediumspringgreen: "中春綠色", + mediumturquoise: "中松石綠", + mediumvioletred: "中紫羅蘭紅", + midnightblue: "午夜藍", + mintcream: "薄荷乳白色", + mistyrose: "霧玫瑰色", + moccasin: "鹿皮黃色", + navajowhite: "印地安黃色", + navy: "海軍藍", + oldlace: "舊蕾絲色", + olive: "橄欖色", + olivedrab: "橄欖綠", + orange: "橙色", + orangered: "橙紅色", + orchid: "蘭花色", + palegoldenrod: "灰金菊色", + palegreen: "灰綠色", + paleturquoise: "灰松石綠", + palevioletred: "灰紫羅蘭紅", + papayawhip: "番木瓜色", + peachpuff: "粉撲桃色", + peru: "祕魯色", + pink: "粉紅色", + plum: "李紫色", + powderblue: "粉藍色", + purple: "紫色", + red: "紅色", + rosybrown: "玫瑰褐", + royalblue: "品藍色", + saddlebrown: "鞍褐色", + salmon: "鮭紅色", + sandybrown: "沙褐色", + seagreen: "海綠色", + seashell: "海貝色", + sienna: "黃土赭色", + silver: "銀色", + skyblue: "天藍色", + slateblue: "岩藍色", + slategray: "岩灰色", + slategrey: "岩灰色", // same as slategray + snow: "雪白色", + springgreen: "春綠色", + steelblue: "鐵藍色", + tan: "皮革色", + teal: "深藍綠色", + thistle: "薊色", + tomato: "蕃茄紅", + transparent: "透明", + turquoise: "松石綠", + violet: "紫羅蘭色", + wheat: "小麥色", + white: "白色", + whitesmoke: "白煙色", + yellow: "黃色", + yellowgreen: "黃綠色" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh/colors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh/colors.js new file mode 100644 index 00000000..8345e5d1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh/colors.js @@ -0,0 +1,8 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/nls/zh/colors",({aliceblue:"爱丽丝蓝",antiquewhite:"古董白",aqua:"浅绿色",aquamarine:"碧绿色",azure:"天蓝色",beige:"米色",bisque:"桔黄色",black:"黑色",blanchedalmond:"白杏色",blue:"蓝色",blueviolet:"蓝紫色",brown:"棕色",burlywood:"实木色",cadetblue:"灰蓝色",chartreuse:"黄绿色",chocolate:"巧克力色",coral:"珊瑚色",cornflowerblue:"浅蓝色",cornsilk:"米绸色",crimson:"绯红色",cyan:"青蓝色",darkblue:"深蓝",darkcyan:"深青绿",darkgoldenrod:"深金黄",darkgray:"深灰色",darkgreen:"深绿色",darkgrey:"深灰色",darkkhaki:"深卡其色",darkmagenta:"深洋红色",darkolivegreen:"深橄榄绿",darkorange:"深橙色",darkorchid:"深紫色",darkred:"深红色",darksalmon:"深橙红",darkseagreen:"深海藻绿",darkslateblue:"深青蓝",darkslategray:"深青灰",darkslategrey:"深青灰",darkturquoise:"深粉蓝",darkviolet:"深紫色",deeppink:"深粉红色",deepskyblue:"深天蓝色",dimgray:"暗灰色",dimgrey:"暗灰色",dodgerblue:"闪蓝色",firebrick:"砖红",floralwhite:"花白色",forestgreen:"森林绿",fuchsia:"紫红色",gainsboro:"淡灰色",ghostwhite:"苍白",gold:"金黄色",goldenrod:"金麒麟色",gray:"灰色",green:"绿色",greenyellow:"绿黄色",grey:"灰色",honeydew:"蜜汁色",hotpink:"深粉红",indianred:"印度红",indigo:"靛青",ivory:"象牙色",khaki:"卡其色",lavender:"淡紫色",lavenderblush:"淡紫红",lawngreen:"草绿色",lemonchiffon:"柠檬绸色",lightblue:"淡蓝色",lightcoral:"浅珊瑚色",lightcyan:"浅青色",lightgoldenrodyellow:"浅金黄色",lightgray:"浅灰色",lightgreen:"浅绿色",lightgrey:"浅灰色",lightpink:"浅粉红色",lightsalmon:"淡橙色",lightseagreen:"浅海藻绿",lightskyblue:"浅天蓝色",lightslategray:"浅青灰",lightslategrey:"浅青灰",lightsteelblue:"浅钢蓝色",lightyellow:"浅黄色",lime:"淡黄绿色",limegreen:"橙绿色",linen:"亚麻色",magenta:"洋红色",maroon:"栗色",mediumaquamarine:"间绿色",mediumblue:"间蓝色",mediumorchid:"间紫色",mediumpurple:"间紫色",mediumseagreen:"间海蓝色",mediumslateblue:"间暗蓝色",mediumspringgreen:"间春绿色",mediumturquoise:"间绿宝石色",mediumvioletred:"间紫罗兰色",midnightblue:"深蓝色",mintcream:"薄荷色",mistyrose:"浅玫瑰色",moccasin:"鹿皮色",navajowhite:"纳瓦白",navy:"藏青色",oldlace:"老白色",olive:"橄榄绿",olivedrab:"草绿色",orange:"橙色",orangered:"橙红色",orchid:"紫色",palegoldenrod:"淡金黄色",palegreen:"淡绿色",paleturquoise:"苍绿色",palevioletred:"苍紫罗兰色",papayawhip:"木瓜色",peachpuff:"桃色",peru:"秘鲁色",pink:"粉红色",plum:"杨李色",powderblue:"铁蓝",purple:"紫色",red:"红色",rosybrown:"褐玫瑰红",royalblue:"品蓝",saddlebrown:"重褐色",salmon:"橙红",sandybrown:"沙褐色",seagreen:"海绿色",seashell:"海贝色",sienna:"赭色",silver:"银白色",skyblue:"天蓝色",slateblue:"石蓝色",slategray:"灰石色",slategrey:"灰石色",snow:"雪白色",springgreen:"春绿色",steelblue:"钢蓝色",tan:"棕褐色",teal:"水鸭色",thistle:"蓟色",tomato:"西红柿色",transparent:"透明的",turquoise:"绿宝石色",violet:"紫色",wheat:"浅黄色",white:"白色",whitesmoke:"烟白色",yellow:"黄色",yellowgreen:"黄绿色"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh/colors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh/colors.js.uncompressed.js new file mode 100644 index 00000000..4449d413 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/nls/zh/colors.js.uncompressed.js @@ -0,0 +1,156 @@ +define( +"dojo/nls/zh/colors", ({ +// local representation of all CSS3 named colors, companion to dojo.colors. To be used where descriptive information +// is required for each color, such as a palette widget, and not for specifying color programatically. + //Note: due to the SVG 1.0 spec additions, some of these are alternate spellings for the same color (e.g. gray / grey). + //TODO: should we be using unique rgb values as keys instead and avoid these duplicates, or rely on the caller to do the reverse mapping? + aliceblue: "爱丽丝蓝", + antiquewhite: "古董白", + aqua: "浅绿色", + aquamarine: "碧绿色", + azure: "天蓝色", + beige: "米色", + bisque: "桔黄色", + black: "黑色", + blanchedalmond: "白杏色", + blue: "蓝色", + blueviolet: "蓝紫色", + brown: "棕色", + burlywood: "实木色", + cadetblue: "灰蓝色", + chartreuse: "黄绿色", + chocolate: "巧克力色", + coral: "珊瑚色", + cornflowerblue: "浅蓝色", + cornsilk: "米绸色", + crimson: "绯红色", + cyan: "青蓝色", + darkblue: "深蓝", + darkcyan: "深青绿", + darkgoldenrod: "深金黄", + darkgray: "深灰色", + darkgreen: "深绿色", + darkgrey: "深灰色", // same as darkgray + darkkhaki: "深卡其色", + darkmagenta: "深洋红色", + darkolivegreen: "深橄榄绿", + darkorange: "深橙色", + darkorchid: "深紫色", + darkred: "深红色", + darksalmon: "深橙红", + darkseagreen: "深海藻绿", + darkslateblue: "深青蓝", + darkslategray: "深青灰", + darkslategrey: "深青灰", // same as darkslategray + darkturquoise: "深粉蓝", + darkviolet: "深紫色", + deeppink: "深粉红色", + deepskyblue: "深天蓝色", + dimgray: "暗灰色", + dimgrey: "暗灰色", // same as dimgray + dodgerblue: "闪蓝色", + firebrick: "砖红", + floralwhite: "花白色", + forestgreen: "森林绿", + fuchsia: "紫红色", + gainsboro: "淡灰色", + ghostwhite: "苍白", + gold: "金黄色", + goldenrod: "金麒麟色", + gray: "灰色", + green: "绿色", + greenyellow: "绿黄色", + grey: "灰色", // same as gray + honeydew: "蜜汁色", + hotpink: "深粉红", + indianred: "印度红", + indigo: "靛青", + ivory: "象牙色", + khaki: "卡其色", + lavender: "淡紫色", + lavenderblush: "淡紫红", + lawngreen: "草绿色", + lemonchiffon: "柠檬绸色", + lightblue: "淡蓝色", + lightcoral: "浅珊瑚色", + lightcyan: "浅青色", + lightgoldenrodyellow: "浅金黄色", + lightgray: "浅灰色", + lightgreen: "浅绿色", + lightgrey: "浅灰色", // same as lightgray + lightpink: "浅粉红色", + lightsalmon: "淡橙色", + lightseagreen: "浅海藻绿", + lightskyblue: "浅天蓝色", + lightslategray: "浅青灰", + lightslategrey: "浅青灰", // same as lightslategray + lightsteelblue: "浅钢蓝色", + lightyellow: "浅黄色", + lime: "淡黄绿色", + limegreen: "橙绿色", + linen: "亚麻色", + magenta: "洋红色", + maroon: "栗色", + mediumaquamarine: "间绿色", + mediumblue: "间蓝色", + mediumorchid: "间紫色", + mediumpurple: "间紫色", + mediumseagreen: "间海蓝色", + mediumslateblue: "间暗蓝色", + mediumspringgreen: "间春绿色", + mediumturquoise: "间绿宝石色", + mediumvioletred: "间紫罗兰色", + midnightblue: "深蓝色", + mintcream: "薄荷色", + mistyrose: "浅玫瑰色", + moccasin: "鹿皮色", + navajowhite: "纳瓦白", + navy: "藏青色", + oldlace: "老白色", + olive: "橄榄绿", + olivedrab: "草绿色", + orange: "橙色", + orangered: "橙红色", + orchid: "紫色", + palegoldenrod: "淡金黄色", + palegreen: "淡绿色", + paleturquoise: "苍绿色", + palevioletred: "苍紫罗兰色", + papayawhip: "木瓜色", + peachpuff: "桃色", + peru: "秘鲁色", + pink: "粉红色", + plum: "杨李色", + powderblue: "铁蓝", + purple: "紫色", + red: "红色", + rosybrown: "褐玫瑰红", + royalblue: "品蓝", + saddlebrown: "重褐色", + salmon: "橙红", + sandybrown: "沙褐色", + seagreen: "海绿色", + seashell: "海贝色", + sienna: "赭色", + silver: "银白色", + skyblue: "天蓝色", + slateblue: "石蓝色", + slategray: "灰石色", + slategrey: "灰石色", // same as slategray + snow: "雪白色", + springgreen: "春绿色", + steelblue: "钢蓝色", + tan: "棕褐色", + teal: "水鸭色", + thistle: "蓟色", + tomato: "西红柿色", + transparent: "透明的", + turquoise: "绿宝石色", + violet: "紫色", + wheat: "浅黄色", + white: "白色", + whitesmoke: "烟白色", + yellow: "黄色", + yellowgreen: "黄绿色" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/node.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/node.js new file mode 100644 index 00000000..7717660b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/node.js @@ -0,0 +1,36 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/node",["./_base/kernel","./has","require"],function(_1,_2,_3){ +var _4=_1.global.require&&_1.global.require.nodeRequire; +if(!_4){ +throw new Error("Cannot find the Node.js require"); +} +var _5=_4("module"); +return {load:function(id,_6,_7){ +if(_5._findPath&&_5._nodeModulePaths){ +var _8=_5._findPath(id,_5._nodeModulePaths(_6.toUrl("."))); +if(_8!==false){ +id=_8; +} +} +var _9=define,_a; +define=undefined; +try{ +_a=_4(id); +} +finally{ +define=_9; +} +_7(_a); +},normalize:function(id,_b){ +if(id.charAt(0)==="."){ +id=_3.toUrl(_b("./"+id)); +} +return id; +}}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/node.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/node.js.uncompressed.js new file mode 100644 index 00000000..f68d7887 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/node.js.uncompressed.js @@ -0,0 +1,77 @@ +define("dojo/node", ["./_base/kernel", "./has", "require"], function(kernel, has, require){ + var nodeRequire = kernel.global.require && kernel.global.require.nodeRequire; + + if (!nodeRequire) { + throw new Error("Cannot find the Node.js require"); + } + + var module = nodeRequire("module"); + + return { + // summary: + // This AMD plugin module allows native Node.js modules to be loaded by AMD modules using the Dojo + // loader. This plugin will not work with AMD loaders that do not expose the Node.js require function + // at `require.nodeRequire`. + // + // example: + // | require(["dojo/node!fs"], function(fs){ + // | var fileData = fs.readFileSync("foo.txt", "utf-8"); + // | }); + + load: function(/*string*/ id, /*Function*/ contextRequire, /*Function*/ load){ + /*global define:true */ + + // The `nodeRequire` function comes from the Node.js module of the AMD loader, so module ID resolution is + // relative to the loader's path, not the calling AMD module's path. This means that loading Node.js + // modules that exist in a higher level or sibling path to the loader will cause those modules to fail to + // resolve. + // + // Node.js does not expose a public API for performing module filename resolution relative to an arbitrary + // directory root, so we are forced to dig into the internal functions of the Node.js `module` module to + // use Node.js's own path resolution code instead of having to duplicate its rules ourselves. + // + // Sooner or later, probably around the time that Node.js internal code is reworked to use ES6, these + // methods will no longer be exposed and we will have to find another workaround if they have not exposed + // an API for doing this by then. + if(module._findPath && module._nodeModulePaths){ + var localModulePath = module._findPath(id, module._nodeModulePaths(contextRequire.toUrl("."))); + if (localModulePath !== false) { + id = localModulePath; + } + } + + var oldDefine = define, + result; + + // Some modules attempt to detect an AMD loader by looking for global AMD `define`. This causes issues + // when other CommonJS modules attempt to load them via the standard Node.js `require`, so hide it + // during the load + define = undefined; + + try { + result = nodeRequire(id); + } + finally { + define = oldDefine; + } + + load(result); + }, + + normalize: function (/**string*/ id, /*Function*/ normalize){ + // summary: + // Produces a normalized CommonJS module ID to be used by Node.js `require`. Relative IDs + // are resolved relative to the requesting module's location in the filesystem and will + // return an ID with path separators appropriate for the local filesystem + + if (id.charAt(0) === ".") { + // absolute module IDs need to be generated based on the AMD loader's knowledge of the parent module, + // since Node.js will try to use the directory containing `dojo.js` as the relative root if a + // relative module ID is provided + id = require.toUrl(normalize("./" + id)); + } + + return id; + } + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/number.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/number.js new file mode 100644 index 00000000..788f35d1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/number.js @@ -0,0 +1,311 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/number",["./_base/lang","./i18n","./i18n!./cldr/nls/number","./string","./regexp"],function(_1,_2,_3,_4,_5){ +var _6={}; +_1.setObject("dojo.number",_6); +_6.format=function(_7,_8){ +_8=_1.mixin({},_8||{}); +var _9=_2.normalizeLocale(_8.locale),_a=_2.getLocalization("dojo.cldr","number",_9); +_8.customs=_a; +var _b=_8.pattern||_a[(_8.type||"decimal")+"Format"]; +if(isNaN(_7)||Math.abs(_7)==Infinity){ +return null; +} +return _6._applyPattern(_7,_b,_8); +}; +_6._numberPatternRE=/[#0,]*[#0](?:\.0*#*)?/; +_6._applyPattern=function(_c,_d,_e){ +_e=_e||{}; +var _f=_e.customs.group,_10=_e.customs.decimal,_11=_d.split(";"),_12=_11[0]; +_d=_11[(_c<0)?1:0]||("-"+_12); +if(_d.indexOf("%")!=-1){ +_c*=100; +}else{ +if(_d.indexOf("‰")!=-1){ +_c*=1000; +}else{ +if(_d.indexOf("¤")!=-1){ +_f=_e.customs.currencyGroup||_f; +_10=_e.customs.currencyDecimal||_10; +_d=_d.replace(/\u00a4{1,3}/,function(_13){ +var _14=["symbol","currency","displayName"][_13.length-1]; +return _e[_14]||_e.currency||""; +}); +}else{ +if(_d.indexOf("E")!=-1){ +throw new Error("exponential notation not supported"); +} +} +} +} +var _15=_6._numberPatternRE; +var _16=_12.match(_15); +if(!_16){ +throw new Error("unable to find a number expression in pattern: "+_d); +} +if(_e.fractional===false){ +_e.places=0; +} +return _d.replace(_15,_6._formatAbsolute(_c,_16[0],{decimal:_10,group:_f,places:_e.places,round:_e.round})); +}; +_6.round=function(_17,_18,_19){ +var _1a=10/(_19||10); +return (_1a*+_17).toFixed(_18)/_1a; +}; +if((0.9).toFixed()==0){ +var _1b=_6.round; +_6.round=function(v,p,m){ +var d=Math.pow(10,-p||0),a=Math.abs(v); +if(!v||a>=d){ +d=0; +}else{ +a/=d; +if(a<0.5||a>=0.95){ +d=0; +} +} +return _1b(v,p,m)+(v>0?d:-d); +}; +} +_6._formatAbsolute=function(_1c,_1d,_1e){ +_1e=_1e||{}; +if(_1e.places===true){ +_1e.places=0; +} +if(_1e.places===Infinity){ +_1e.places=6; +} +var _1f=_1d.split("."),_20=typeof _1e.places=="string"&&_1e.places.indexOf(","),_21=_1e.places; +if(_20){ +_21=_1e.places.substring(_20+1); +}else{ +if(!(_21>=0)){ +_21=(_1f[1]||[]).length; +} +} +if(!(_1e.round<0)){ +_1c=_6.round(_1c,_21,_1e.round); +} +var _22=String(Math.abs(_1c)).split("."),_23=_22[1]||""; +if(_1f[1]||_1e.places){ +if(_20){ +_1e.places=_1e.places.substring(0,_20); +} +var pad=_1e.places!==undefined?_1e.places:(_1f[1]&&_1f[1].lastIndexOf("0")+1); +if(pad>_23.length){ +_22[1]=_4.pad(_23,pad,"0",true); +} +if(_21<_23.length){ +_22[1]=_23.substr(0,_21); +} +}else{ +if(_22[1]){ +_22.pop(); +} +} +var _24=_1f[0].replace(",",""); +pad=_24.indexOf("0"); +if(pad!=-1){ +pad=_24.length-pad; +if(pad>_22[0].length){ +_22[0]=_4.pad(_22[0],pad); +} +if(_24.indexOf("#")==-1){ +_22[0]=_22[0].substr(_22[0].length-pad); +} +} +var _25=_1f[0].lastIndexOf(","),_26,_27; +if(_25!=-1){ +_26=_1f[0].length-_25-1; +var _28=_1f[0].substr(0,_25); +_25=_28.lastIndexOf(","); +if(_25!=-1){ +_27=_28.length-_25-1; +} +} +var _29=[]; +for(var _2a=_22[0];_2a;){ +var off=_2a.length-_26; +_29.push((off>0)?_2a.substr(off):_2a); +_2a=(off>0)?_2a.slice(0,off):""; +if(_27){ +_26=_27; +delete _27; +} +} +_22[0]=_29.reverse().join(_1e.group||","); +return _22.join(_1e.decimal||"."); +}; +_6.regexp=function(_2b){ +return _6._parseInfo(_2b).regexp; +}; +_6._parseInfo=function(_2c){ +_2c=_2c||{}; +var _2d=_2.normalizeLocale(_2c.locale),_2e=_2.getLocalization("dojo.cldr","number",_2d),_2f=_2c.pattern||_2e[(_2c.type||"decimal")+"Format"],_30=_2e.group,_31=_2e.decimal,_32=1; +if(_2f.indexOf("%")!=-1){ +_32/=100; +}else{ +if(_2f.indexOf("‰")!=-1){ +_32/=1000; +}else{ +var _33=_2f.indexOf("¤")!=-1; +if(_33){ +_30=_2e.currencyGroup||_30; +_31=_2e.currencyDecimal||_31; +} +} +} +var _34=_2f.split(";"); +if(_34.length==1){ +_34.push("-"+_34[0]); +} +var re=_5.buildGroupRE(_34,function(_35){ +_35="(?:"+_5.escapeString(_35,".")+")"; +return _35.replace(_6._numberPatternRE,function(_36){ +var _37={signed:false,separator:_2c.strict?_30:[_30,""],fractional:_2c.fractional,decimal:_31,exponent:false},_38=_36.split("."),_39=_2c.places; +if(_38.length==1&&_32!=1){ +_38[1]="###"; +} +if(_38.length==1||_39===0){ +_37.fractional=false; +}else{ +if(_39===undefined){ +_39=_2c.pattern?_38[1].lastIndexOf("0")+1:Infinity; +} +if(_39&&_2c.fractional==undefined){ +_37.fractional=true; +} +if(!_2c.places&&(_39<_38[1].length)){ +_39+=","+_38[1].length; +} +_37.places=_39; +} +var _3a=_38[0].split(","); +if(_3a.length>1){ +_37.groupSize=_3a.pop().length; +if(_3a.length>1){ +_37.groupSize2=_3a.pop().length; +} +} +return "("+_6._realNumberRegexp(_37)+")"; +}); +},true); +if(_33){ +re=re.replace(/([\s\xa0]*)(\u00a4{1,3})([\s\xa0]*)/g,function(_3b,_3c,_3d,_3e){ +var _3f=["symbol","currency","displayName"][_3d.length-1],_40=_5.escapeString(_2c[_3f]||_2c.currency||""); +_3c=_3c?"[\\s\\xa0]":""; +_3e=_3e?"[\\s\\xa0]":""; +if(!_2c.strict){ +if(_3c){ +_3c+="*"; +} +if(_3e){ +_3e+="*"; +} +return "(?:"+_3c+_40+_3e+")?"; +} +return _3c+_40+_3e; +}); +} +return {regexp:re.replace(/[\xa0 ]/g,"[\\s\\xa0]"),group:_30,decimal:_31,factor:_32}; +}; +_6.parse=function(_41,_42){ +var _43=_6._parseInfo(_42),_44=(new RegExp("^"+_43.regexp+"$")).exec(_41); +if(!_44){ +return NaN; +} +var _45=_44[1]; +if(!_44[1]){ +if(!_44[2]){ +return NaN; +} +_45=_44[2]; +_43.factor*=-1; +} +_45=_45.replace(new RegExp("["+_43.group+"\\s\\xa0"+"]","g"),"").replace(_43.decimal,"."); +return _45*_43.factor; +}; +_6._realNumberRegexp=function(_46){ +_46=_46||{}; +if(!("places" in _46)){ +_46.places=Infinity; +} +if(typeof _46.decimal!="string"){ +_46.decimal="."; +} +if(!("fractional" in _46)||/^0/.test(_46.places)){ +_46.fractional=[true,false]; +} +if(!("exponent" in _46)){ +_46.exponent=[true,false]; +} +if(!("eSigned" in _46)){ +_46.eSigned=[true,false]; +} +var _47=_6._integerRegexp(_46),_48=_5.buildGroupRE(_46.fractional,function(q){ +var re=""; +if(q&&(_46.places!==0)){ +re="\\"+_46.decimal; +if(_46.places==Infinity){ +re="(?:"+re+"\\d+)?"; +}else{ +re+="\\d{"+_46.places+"}"; +} +} +return re; +},true); +var _49=_5.buildGroupRE(_46.exponent,function(q){ +if(q){ +return "([eE]"+_6._integerRegexp({signed:_46.eSigned})+")"; +} +return ""; +}); +var _4a=_47+_48; +if(_48){ +_4a="(?:(?:"+_4a+")|(?:"+_48+"))"; +} +return _4a+_49; +}; +_6._integerRegexp=function(_4b){ +_4b=_4b||{}; +if(!("signed" in _4b)){ +_4b.signed=[true,false]; +} +if(!("separator" in _4b)){ +_4b.separator=""; +}else{ +if(!("groupSize" in _4b)){ +_4b.groupSize=3; +} +} +var _4c=_5.buildGroupRE(_4b.signed,function(q){ +return q?"[-+]":""; +},true); +var _4d=_5.buildGroupRE(_4b.separator,function(sep){ +if(!sep){ +return "(?:\\d+)"; +} +sep=_5.escapeString(sep); +if(sep==" "){ +sep="\\s"; +}else{ +if(sep==" "){ +sep="\\s\\xa0"; +} +} +var grp=_4b.groupSize,_4e=_4b.groupSize2; +if(_4e){ +var _4f="(?:0|[1-9]\\d{0,"+(_4e-1)+"}(?:["+sep+"]\\d{"+_4e+"})*["+sep+"]\\d{"+grp+"})"; +return ((grp-_4e)>0)?"(?:"+_4f+"|(?:0|[1-9]\\d{0,"+(grp-1)+"}))":_4f; +} +return "(?:0|[1-9]\\d{0,"+(grp-1)+"}(?:["+sep+"]\\d{"+grp+"})*)"; +},true); +return _4c+_4d; +}; +return _6; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/number.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/number.js.uncompressed.js new file mode 100644 index 00000000..0f52cc1e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/number.js.uncompressed.js @@ -0,0 +1,553 @@ +define("dojo/number", [/*===== "./_base/declare", =====*/ "./_base/lang", "./i18n", "./i18n!./cldr/nls/number", "./string", "./regexp"], + function(/*===== declare, =====*/ lang, i18n, nlsNumber, dstring, dregexp){ + +// module: +// dojo/number + +var number = { + // summary: + // localized formatting and parsing routines for Number +}; +lang.setObject("dojo.number", number); + +/*===== +number.__FormatOptions = declare(null, { + // pattern: String? + // override [formatting pattern](http://www.unicode.org/reports/tr35/#Number_Format_Patterns) + // with this string. Default value is based on locale. Overriding this property will defeat + // localization. Literal characters in patterns are not supported. + // type: String? + // choose a format type based on the locale from the following: + // decimal, scientific (not yet supported), percent, currency. decimal by default. + // places: Number? + // fixed number of decimal places to show. This overrides any + // information in the provided pattern. + // round: Number? + // 5 rounds to nearest .5; 0 rounds to nearest whole (default). -1 + // means do not round. + // locale: String? + // override the locale used to determine formatting rules + // fractional: Boolean? + // If false, show no decimal places, overriding places and pattern settings. +}); +=====*/ + +number.format = function(/*Number*/ value, /*number.__FormatOptions?*/ options){ + // summary: + // Format a Number as a String, using locale-specific settings + // description: + // Create a string from a Number using a known localized pattern. + // Formatting patterns appropriate to the locale are chosen from the + // [Common Locale Data Repository](http://unicode.org/cldr) as well as the appropriate symbols and + // delimiters. + // If value is Infinity, -Infinity, or is not a valid JavaScript number, return null. + // value: + // the number to be formatted + + options = lang.mixin({}, options || {}); + var locale = i18n.normalizeLocale(options.locale), + bundle = i18n.getLocalization("dojo.cldr", "number", locale); + options.customs = bundle; + var pattern = options.pattern || bundle[(options.type || "decimal") + "Format"]; + if(isNaN(value) || Math.abs(value) == Infinity){ return null; } // null + return number._applyPattern(value, pattern, options); // String +}; + +//number._numberPatternRE = /(?:[#0]*,?)*[#0](?:\.0*#*)?/; // not precise, but good enough +number._numberPatternRE = /[#0,]*[#0](?:\.0*#*)?/; // not precise, but good enough + +number._applyPattern = function(/*Number*/ value, /*String*/ pattern, /*number.__FormatOptions?*/ options){ + // summary: + // Apply pattern to format value as a string using options. Gives no + // consideration to local customs. + // value: + // the number to be formatted. + // pattern: + // a pattern string as described by + // [unicode.org TR35](http://www.unicode.org/reports/tr35/#Number_Format_Patterns) + // options: number.__FormatOptions? + // _applyPattern is usually called via `dojo/number.format()` which + // populates an extra property in the options parameter, "customs". + // The customs object specifies group and decimal parameters if set. + + //TODO: support escapes + options = options || {}; + var group = options.customs.group, + decimal = options.customs.decimal, + patternList = pattern.split(';'), + positivePattern = patternList[0]; + pattern = patternList[(value < 0) ? 1 : 0] || ("-" + positivePattern); + + //TODO: only test against unescaped + if(pattern.indexOf('%') != -1){ + value *= 100; + }else if(pattern.indexOf('\u2030') != -1){ + value *= 1000; // per mille + }else if(pattern.indexOf('\u00a4') != -1){ + group = options.customs.currencyGroup || group;//mixins instead? + decimal = options.customs.currencyDecimal || decimal;// Should these be mixins instead? + pattern = pattern.replace(/\u00a4{1,3}/, function(match){ + var prop = ["symbol", "currency", "displayName"][match.length-1]; + return options[prop] || options.currency || ""; + }); + }else if(pattern.indexOf('E') != -1){ + throw new Error("exponential notation not supported"); + } + + //TODO: support @ sig figs? + var numberPatternRE = number._numberPatternRE; + var numberPattern = positivePattern.match(numberPatternRE); + if(!numberPattern){ + throw new Error("unable to find a number expression in pattern: "+pattern); + } + if(options.fractional === false){ options.places = 0; } + return pattern.replace(numberPatternRE, + number._formatAbsolute(value, numberPattern[0], {decimal: decimal, group: group, places: options.places, round: options.round})); +}; + +number.round = function(/*Number*/ value, /*Number?*/ places, /*Number?*/ increment){ + // summary: + // Rounds to the nearest value with the given number of decimal places, away from zero + // description: + // Rounds to the nearest value with the given number of decimal places, away from zero if equal. + // Similar to Number.toFixed(), but compensates for browser quirks. Rounding can be done by + // fractional increments also, such as the nearest quarter. + // NOTE: Subject to floating point errors. See dojox/math/round for experimental workaround. + // value: + // The number to round + // places: + // The number of decimal places where rounding takes place. Defaults to 0 for whole rounding. + // Must be non-negative. + // increment: + // Rounds next place to nearest value of increment/10. 10 by default. + // example: + // | >>> number.round(-0.5) + // | -1 + // | >>> number.round(162.295, 2) + // | 162.29 // note floating point error. Should be 162.3 + // | >>> number.round(10.71, 0, 2.5) + // | 10.75 + var factor = 10 / (increment || 10); + return (factor * +value).toFixed(places) / factor; // Number +}; + +if((0.9).toFixed() == 0){ + // (isIE) toFixed() bug workaround: Rounding fails on IE when most significant digit + // is just after the rounding place and is >=5 + var round = number.round; + number.round = function(v, p, m){ + var d = Math.pow(10, -p || 0), a = Math.abs(v); + if(!v || a >= d){ + d = 0; + }else{ + a /= d; + if(a < 0.5 || a >= 0.95){ + d = 0; + } + } + return round(v, p, m) + (v > 0 ? d : -d); + }; + + // Use "doc hint" so the doc parser ignores this new definition of round(), and uses the one above. + /*===== number.round = round; =====*/ +} + +/*===== +number.__FormatAbsoluteOptions = declare(null, { + // decimal: String? + // the decimal separator + // group: String? + // the group separator + // places: Number|String? + // number of decimal places. the range "n,m" will format to m places. + // round: Number? + // 5 rounds to nearest .5; 0 rounds to nearest whole (default). -1 + // means don't round. +}); +=====*/ + +number._formatAbsolute = function(/*Number*/ value, /*String*/ pattern, /*number.__FormatAbsoluteOptions?*/ options){ + // summary: + // Apply numeric pattern to absolute value using options. Gives no + // consideration to local customs. + // value: + // the number to be formatted, ignores sign + // pattern: + // the number portion of a pattern (e.g. `#,##0.00`) + options = options || {}; + if(options.places === true){options.places=0;} + if(options.places === Infinity){options.places=6;} // avoid a loop; pick a limit + + var patternParts = pattern.split("."), + comma = typeof options.places == "string" && options.places.indexOf(","), + maxPlaces = options.places; + if(comma){ + maxPlaces = options.places.substring(comma + 1); + }else if(!(maxPlaces >= 0)){ + maxPlaces = (patternParts[1] || []).length; + } + if(!(options.round < 0)){ + value = number.round(value, maxPlaces, options.round); + } + + var valueParts = String(Math.abs(value)).split("."), + fractional = valueParts[1] || ""; + if(patternParts[1] || options.places){ + if(comma){ + options.places = options.places.substring(0, comma); + } + // Pad fractional with trailing zeros + var pad = options.places !== undefined ? options.places : (patternParts[1] && patternParts[1].lastIndexOf("0") + 1); + if(pad > fractional.length){ + valueParts[1] = dstring.pad(fractional, pad, '0', true); + } + + // Truncate fractional + if(maxPlaces < fractional.length){ + valueParts[1] = fractional.substr(0, maxPlaces); + } + }else{ + if(valueParts[1]){ valueParts.pop(); } + } + + // Pad whole with leading zeros + var patternDigits = patternParts[0].replace(',', ''); + pad = patternDigits.indexOf("0"); + if(pad != -1){ + pad = patternDigits.length - pad; + if(pad > valueParts[0].length){ + valueParts[0] = dstring.pad(valueParts[0], pad); + } + + // Truncate whole + if(patternDigits.indexOf("#") == -1){ + valueParts[0] = valueParts[0].substr(valueParts[0].length - pad); + } + } + + // Add group separators + var index = patternParts[0].lastIndexOf(','), + groupSize, groupSize2; + if(index != -1){ + groupSize = patternParts[0].length - index - 1; + var remainder = patternParts[0].substr(0, index); + index = remainder.lastIndexOf(','); + if(index != -1){ + groupSize2 = remainder.length - index - 1; + } + } + var pieces = []; + for(var whole = valueParts[0]; whole;){ + var off = whole.length - groupSize; + pieces.push((off > 0) ? whole.substr(off) : whole); + whole = (off > 0) ? whole.slice(0, off) : ""; + if(groupSize2){ + groupSize = groupSize2; + delete groupSize2; + } + } + valueParts[0] = pieces.reverse().join(options.group || ","); + + return valueParts.join(options.decimal || "."); +}; + +/*===== +number.__RegexpOptions = declare(null, { + // pattern: String? + // override [formatting pattern](http://www.unicode.org/reports/tr35/#Number_Format_Patterns) + // with this string. Default value is based on locale. Overriding this property will defeat + // localization. + // type: String? + // choose a format type based on the locale from the following: + // decimal, scientific (not yet supported), percent, currency. decimal by default. + // locale: String? + // override the locale used to determine formatting rules + // strict: Boolean? + // strict parsing, false by default. Strict parsing requires input as produced by the format() method. + // Non-strict is more permissive, e.g. flexible on white space, omitting thousands separators + // places: Number|String? + // number of decimal places to accept: Infinity, a positive number, or + // a range "n,m". Defined by pattern or Infinity if pattern not provided. +}); +=====*/ +number.regexp = function(/*number.__RegexpOptions?*/ options){ + // summary: + // Builds the regular needed to parse a number + // description: + // Returns regular expression with positive and negative match, group + // and decimal separators + return number._parseInfo(options).regexp; // String +}; + +number._parseInfo = function(/*Object?*/ options){ + options = options || {}; + var locale = i18n.normalizeLocale(options.locale), + bundle = i18n.getLocalization("dojo.cldr", "number", locale), + pattern = options.pattern || bundle[(options.type || "decimal") + "Format"], +//TODO: memoize? + group = bundle.group, + decimal = bundle.decimal, + factor = 1; + + if(pattern.indexOf('%') != -1){ + factor /= 100; + }else if(pattern.indexOf('\u2030') != -1){ + factor /= 1000; // per mille + }else{ + var isCurrency = pattern.indexOf('\u00a4') != -1; + if(isCurrency){ + group = bundle.currencyGroup || group; + decimal = bundle.currencyDecimal || decimal; + } + } + + //TODO: handle quoted escapes + var patternList = pattern.split(';'); + if(patternList.length == 1){ + patternList.push("-" + patternList[0]); + } + + var re = dregexp.buildGroupRE(patternList, function(pattern){ + pattern = "(?:"+dregexp.escapeString(pattern, '.')+")"; + return pattern.replace(number._numberPatternRE, function(format){ + var flags = { + signed: false, + separator: options.strict ? group : [group,""], + fractional: options.fractional, + decimal: decimal, + exponent: false + }, + + parts = format.split('.'), + places = options.places; + + // special condition for percent (factor != 1) + // allow decimal places even if not specified in pattern + if(parts.length == 1 && factor != 1){ + parts[1] = "###"; + } + if(parts.length == 1 || places === 0){ + flags.fractional = false; + }else{ + if(places === undefined){ places = options.pattern ? parts[1].lastIndexOf('0') + 1 : Infinity; } + if(places && options.fractional == undefined){flags.fractional = true;} // required fractional, unless otherwise specified + if(!options.places && (places < parts[1].length)){ places += "," + parts[1].length; } + flags.places = places; + } + var groups = parts[0].split(','); + if(groups.length > 1){ + flags.groupSize = groups.pop().length; + if(groups.length > 1){ + flags.groupSize2 = groups.pop().length; + } + } + return "("+number._realNumberRegexp(flags)+")"; + }); + }, true); + + if(isCurrency){ + // substitute the currency symbol for the placeholder in the pattern + re = re.replace(/([\s\xa0]*)(\u00a4{1,3})([\s\xa0]*)/g, function(match, before, target, after){ + var prop = ["symbol", "currency", "displayName"][target.length-1], + symbol = dregexp.escapeString(options[prop] || options.currency || ""); + before = before ? "[\\s\\xa0]" : ""; + after = after ? "[\\s\\xa0]" : ""; + if(!options.strict){ + if(before){before += "*";} + if(after){after += "*";} + return "(?:"+before+symbol+after+")?"; + } + return before+symbol+after; + }); + } + +//TODO: substitute localized sign/percent/permille/etc.? + + // normalize whitespace and return + return {regexp: re.replace(/[\xa0 ]/g, "[\\s\\xa0]"), group: group, decimal: decimal, factor: factor}; // Object +}; + +/*===== +number.__ParseOptions = declare(null, { + // pattern: String? + // override [formatting pattern](http://www.unicode.org/reports/tr35/#Number_Format_Patterns) + // with this string. Default value is based on locale. Overriding this property will defeat + // localization. Literal characters in patterns are not supported. + // type: String? + // choose a format type based on the locale from the following: + // decimal, scientific (not yet supported), percent, currency. decimal by default. + // locale: String? + // override the locale used to determine formatting rules + // strict: Boolean? + // strict parsing, false by default. Strict parsing requires input as produced by the format() method. + // Non-strict is more permissive, e.g. flexible on white space, omitting thousands separators + // fractional: Boolean|Array? + // Whether to include the fractional portion, where the number of decimal places are implied by pattern + // or explicit 'places' parameter. The value [true,false] makes the fractional portion optional. +}); +=====*/ +number.parse = function(/*String*/ expression, /*number.__ParseOptions?*/ options){ + // summary: + // Convert a properly formatted string to a primitive Number, using + // locale-specific settings. + // description: + // Create a Number from a string using a known localized pattern. + // Formatting patterns are chosen appropriate to the locale + // and follow the syntax described by + // [unicode.org TR35](http://www.unicode.org/reports/tr35/#Number_Format_Patterns) + // Note that literal characters in patterns are not supported. + // expression: + // A string representation of a Number + var info = number._parseInfo(options), + results = (new RegExp("^"+info.regexp+"$")).exec(expression); + if(!results){ + return NaN; //NaN + } + var absoluteMatch = results[1]; // match for the positive expression + if(!results[1]){ + if(!results[2]){ + return NaN; //NaN + } + // matched the negative pattern + absoluteMatch =results[2]; + info.factor *= -1; + } + + // Transform it to something Javascript can parse as a number. Normalize + // decimal point and strip out group separators or alternate forms of whitespace + absoluteMatch = absoluteMatch. + replace(new RegExp("["+info.group + "\\s\\xa0"+"]", "g"), ""). + replace(info.decimal, "."); + // Adjust for negative sign, percent, etc. as necessary + return absoluteMatch * info.factor; //Number +}; + +/*===== +number.__RealNumberRegexpFlags = declare(null, { + // places: Number? + // The integer number of decimal places or a range given as "n,m". If + // not given, the decimal part is optional and the number of places is + // unlimited. + // decimal: String? + // A string for the character used as the decimal point. Default + // is ".". + // fractional: Boolean|Array? + // Whether decimal places are used. Can be true, false, or [true, + // false]. Default is [true, false] which means optional. + // exponent: Boolean|Array? + // Express in exponential notation. Can be true, false, or [true, + // false]. Default is [true, false], (i.e. will match if the + // exponential part is present are not). + // eSigned: Boolean|Array? + // The leading plus-or-minus sign on the exponent. Can be true, + // false, or [true, false]. Default is [true, false], (i.e. will + // match if it is signed or unsigned). flags in regexp.integer can be + // applied. +}); +=====*/ + +number._realNumberRegexp = function(/*__RealNumberRegexpFlags?*/ flags){ + // summary: + // Builds a regular expression to match a real number in exponential + // notation + + // assign default values to missing parameters + flags = flags || {}; + //TODO: use mixin instead? + if(!("places" in flags)){ flags.places = Infinity; } + if(typeof flags.decimal != "string"){ flags.decimal = "."; } + if(!("fractional" in flags) || /^0/.test(flags.places)){ flags.fractional = [true, false]; } + if(!("exponent" in flags)){ flags.exponent = [true, false]; } + if(!("eSigned" in flags)){ flags.eSigned = [true, false]; } + + var integerRE = number._integerRegexp(flags), + decimalRE = dregexp.buildGroupRE(flags.fractional, + function(q){ + var re = ""; + if(q && (flags.places!==0)){ + re = "\\" + flags.decimal; + if(flags.places == Infinity){ + re = "(?:" + re + "\\d+)?"; + }else{ + re += "\\d{" + flags.places + "}"; + } + } + return re; + }, + true + ); + + var exponentRE = dregexp.buildGroupRE(flags.exponent, + function(q){ + if(q){ return "([eE]" + number._integerRegexp({ signed: flags.eSigned}) + ")"; } + return ""; + } + ); + + var realRE = integerRE + decimalRE; + // allow for decimals without integers, e.g. .25 + if(decimalRE){realRE = "(?:(?:"+ realRE + ")|(?:" + decimalRE + "))";} + return realRE + exponentRE; // String +}; + +/*===== +number.__IntegerRegexpFlags = declare(null, { + // signed: Boolean? + // The leading plus-or-minus sign. Can be true, false, or `[true,false]`. + // Default is `[true, false]`, (i.e. will match if it is signed + // or unsigned). + // separator: String? + // The character used as the thousands separator. Default is no + // separator. For more than one symbol use an array, e.g. `[",", ""]`, + // makes ',' optional. + // groupSize: Number? + // group size between separators + // groupSize2: Number? + // second grouping, where separators 2..n have a different interval than the first separator (for India) +}); +=====*/ + +number._integerRegexp = function(/*number.__IntegerRegexpFlags?*/ flags){ + // summary: + // Builds a regular expression that matches an integer + + // assign default values to missing parameters + flags = flags || {}; + if(!("signed" in flags)){ flags.signed = [true, false]; } + if(!("separator" in flags)){ + flags.separator = ""; + }else if(!("groupSize" in flags)){ + flags.groupSize = 3; + } + + var signRE = dregexp.buildGroupRE(flags.signed, + function(q){ return q ? "[-+]" : ""; }, + true + ); + + var numberRE = dregexp.buildGroupRE(flags.separator, + function(sep){ + if(!sep){ + return "(?:\\d+)"; + } + + sep = dregexp.escapeString(sep); + if(sep == " "){ sep = "\\s"; } + else if(sep == "\xa0"){ sep = "\\s\\xa0"; } + + var grp = flags.groupSize, grp2 = flags.groupSize2; + //TODO: should we continue to enforce that numbers with separators begin with 1-9? See #6933 + if(grp2){ + var grp2RE = "(?:0|[1-9]\\d{0," + (grp2-1) + "}(?:[" + sep + "]\\d{" + grp2 + "})*[" + sep + "]\\d{" + grp + "})"; + return ((grp-grp2) > 0) ? "(?:" + grp2RE + "|(?:0|[1-9]\\d{0," + (grp-1) + "}))" : grp2RE; + } + return "(?:0|[1-9]\\d{0," + (grp-1) + "}(?:[" + sep + "]\\d{" + grp + "})*)"; + }, + true + ); + + return signRE + numberRE; // String +}; + +return number; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on.js new file mode 100644 index 00000000..9c54b6d0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on.js @@ -0,0 +1,383 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/on",["./has!dom-addeventlistener?:./aspect","./_base/kernel","./sniff"],function(_1,_2,_3){ +"use strict"; +if(1){ +var _4=window.ScriptEngineMajorVersion; +_3.add("jscript",_4&&(_4()+ScriptEngineMinorVersion()/10)); +_3.add("event-orientationchange",_3("touch")&&!_3("android")); +_3.add("event-stopimmediatepropagation",window.Event&&!!window.Event.prototype&&!!window.Event.prototype.stopImmediatePropagation); +_3.add("event-focusin",function(_5,_6,_7){ +return "onfocusin" in _7; +}); +if(_3("touch")){ +_3.add("touch-can-modify-event-delegate",function(){ +var _8=function(){ +}; +_8.prototype=document.createEvent("MouseEvents"); +try{ +var _9=new _8; +_9.target=null; +return _9.target===null; +} +catch(e){ +return false; +} +}); +} +} +var on=function(_a,_b,_c,_d){ +if(typeof _a.on=="function"&&typeof _b!="function"&&!_a.nodeType){ +return _a.on(_b,_c); +} +return on.parse(_a,_b,_c,_e,_d,this); +}; +on.pausable=function(_f,_10,_11,_12){ +var _13; +var _14=on(_f,_10,function(){ +if(!_13){ +return _11.apply(this,arguments); +} +},_12); +_14.pause=function(){ +_13=true; +}; +_14.resume=function(){ +_13=false; +}; +return _14; +}; +on.once=function(_15,_16,_17,_18){ +var _19=on(_15,_16,function(){ +_19.remove(); +return _17.apply(this,arguments); +}); +return _19; +}; +on.parse=function(_1a,_1b,_1c,_1d,_1e,_1f){ +if(_1b.call){ +return _1b.call(_1f,_1a,_1c); +} +if(_1b instanceof Array){ +_20=_1b; +}else{ +if(_1b.indexOf(",")>-1){ +var _20=_1b.split(/\s*,\s*/); +} +} +if(_20){ +var _21=[]; +var i=0; +var _22; +while(_22=_20[i++]){ +_21.push(on.parse(_1a,_22,_1c,_1d,_1e,_1f)); +} +_21.remove=function(){ +for(var i=0;i<_21.length;i++){ +_21[i].remove(); +} +}; +return _21; +} +return _1d(_1a,_1b,_1c,_1e,_1f); +}; +var _23=/^touch/; +function _e(_24,_25,_26,_27,_28){ +var _29=_25.match(/(.*):(.*)/); +if(_29){ +_25=_29[2]; +_29=_29[1]; +return on.selector(_29,_25).call(_28,_24,_26); +} +if(_3("touch")){ +if(_23.test(_25)){ +_26=_2a(_26); +} +if(!_3("event-orientationchange")&&(_25=="orientationchange")){ +_25="resize"; +_24=window; +_26=_2a(_26); +} +} +if(_2b){ +_26=_2b(_26); +} +if(_24.addEventListener){ +var _2c=_25 in _2d,_2e=_2c?_2d[_25]:_25; +_24.addEventListener(_2e,_26,_2c); +return {remove:function(){ +_24.removeEventListener(_2e,_26,_2c); +}}; +} +_25="on"+_25; +if(_2f&&_24.attachEvent){ +return _2f(_24,_25,_26); +} +throw new Error("Target must be an event emitter"); +}; +on.matches=function(_30,_31,_32,_33,_34){ +_34=_34&&_34.matches?_34:_2.query; +_33=_33!==false; +if(_30.nodeType!=1){ +_30=_30.parentNode; +} +while(!_34.matches(_30,_31,_32)){ +if(_30==_32||_33===false||!(_30=_30.parentNode)||_30.nodeType!=1){ +return false; +} +} +return _30; +}; +on.selector=function(_35,_36,_37){ +return function(_38,_39){ +var _3a=typeof _35=="function"?{matches:_35}:this,_3b=_36.bubble; +function _3c(_3d){ +return on.matches(_3d,_35,_38,_37,_3a); +}; +if(_3b){ +return on(_38,_3b(_3c),_39); +} +return on(_38,_36,function(_3e){ +var _3f=_3c(_3e.target); +if(_3f){ +return _39.call(_3f,_3e); +} +}); +}; +}; +function _40(){ +this.cancelable=false; +this.defaultPrevented=true; +}; +function _41(){ +this.bubbles=false; +}; +var _42=[].slice,_43=on.emit=function(_44,_45,_46){ +var _47=_42.call(arguments,2); +var _48="on"+_45; +if("parentNode" in _44){ +var _49=_47[0]={}; +for(var i in _46){ +_49[i]=_46[i]; +} +_49.preventDefault=_40; +_49.stopPropagation=_41; +_49.target=_44; +_49.type=_45; +_46=_49; +} +do{ +_44[_48]&&_44[_48].apply(_44,_47); +}while(_46&&_46.bubbles&&(_44=_44.parentNode)); +return _46&&_46.cancelable&&_46; +}; +var _2d=_3("event-focusin")?{}:{focusin:"focus",focusout:"blur"}; +if(!_3("event-stopimmediatepropagation")){ +var _4a=function(){ +this.immediatelyStopped=true; +this.modified=true; +}; +var _2b=function(_4b){ +return function(_4c){ +if(!_4c.immediatelyStopped){ +_4c.stopImmediatePropagation=_4a; +return _4b.apply(this,arguments); +} +}; +}; +} +if(_3("dom-addeventlistener")){ +on.emit=function(_4d,_4e,_4f){ +if(_4d.dispatchEvent&&document.createEvent){ +var _50=_4d.ownerDocument||document; +var _51=_50.createEvent("HTMLEvents"); +_51.initEvent(_4e,!!_4f.bubbles,!!_4f.cancelable); +for(var i in _4f){ +if(!(i in _51)){ +_51[i]=_4f[i]; +} +} +return _4d.dispatchEvent(_51)&&_51; +} +return _43.apply(on,arguments); +}; +}else{ +on._fixEvent=function(evt,_52){ +if(!evt){ +var w=_52&&(_52.ownerDocument||_52.document||_52).parentWindow||window; +evt=w.event; +} +if(!evt){ +return evt; +} +try{ +if(_53&&evt.type==_53.type&&evt.srcElement==_53.target){ +evt=_53; +} +} +catch(e){ +} +if(!evt.target){ +evt.target=evt.srcElement; +evt.currentTarget=(_52||evt.srcElement); +if(evt.type=="mouseover"){ +evt.relatedTarget=evt.fromElement; +} +if(evt.type=="mouseout"){ +evt.relatedTarget=evt.toElement; +} +if(!evt.stopPropagation){ +evt.stopPropagation=_54; +evt.preventDefault=_55; +} +switch(evt.type){ +case "keypress": +var c=("charCode" in evt?evt.charCode:evt.keyCode); +if(c==10){ +c=0; +evt.keyCode=13; +}else{ +if(c==13||c==27){ +c=0; +}else{ +if(c==3){ +c=99; +} +} +} +evt.charCode=c; +_56(evt); +break; +} +} +return evt; +}; +var _53,_57=function(_58){ +this.handle=_58; +}; +_57.prototype.remove=function(){ +delete _dojoIEListeners_[this.handle]; +}; +var _59=function(_5a){ +return function(evt){ +evt=on._fixEvent(evt,this); +var _5b=_5a.call(this,evt); +if(evt.modified){ +if(!_53){ +setTimeout(function(){ +_53=null; +}); +} +_53=evt; +} +return _5b; +}; +}; +var _2f=function(_5c,_5d,_5e){ +_5e=_59(_5e); +if(((_5c.ownerDocument?_5c.ownerDocument.parentWindow:_5c.parentWindow||_5c.window||window)!=top||_3("jscript")<5.8)&&!_3("config-_allow_leaks")){ +if(typeof _dojoIEListeners_=="undefined"){ +_dojoIEListeners_=[]; +} +var _5f=_5c[_5d]; +if(!_5f||!_5f.listeners){ +var _60=_5f; +_5f=Function("event","var callee = arguments.callee; for(var i = 0; i<callee.listeners.length; i++){var listener = _dojoIEListeners_[callee.listeners[i]]; if(listener){listener.call(this,event);}}"); +_5f.listeners=[]; +_5c[_5d]=_5f; +_5f.global=this; +if(_60){ +_5f.listeners.push(_dojoIEListeners_.push(_60)-1); +} +} +var _61; +_5f.listeners.push(_61=(_5f.global._dojoIEListeners_.push(_5e)-1)); +return new _57(_61); +} +return _1.after(_5c,_5d,_5e,true); +}; +var _56=function(evt){ +evt.keyChar=evt.charCode?String.fromCharCode(evt.charCode):""; +evt.charOrCode=evt.keyChar||evt.keyCode; +}; +var _54=function(){ +this.cancelBubble=true; +}; +var _55=on._preventDefault=function(){ +this.bubbledKeyCode=this.keyCode; +if(this.ctrlKey){ +try{ +this.keyCode=0; +} +catch(e){ +} +} +this.defaultPrevented=true; +this.returnValue=false; +this.modified=true; +}; +} +if(_3("touch")){ +var _62=function(){ +}; +var _63=window.orientation; +var _2a=function(_64){ +return function(_65){ +var _66=_65.corrected; +if(!_66){ +var _67=_65.type; +try{ +delete _65.type; +} +catch(e){ +} +if(_65.type){ +if(_3("touch-can-modify-event-delegate")){ +_62.prototype=_65; +_66=new _62; +}else{ +_66={}; +for(var _68 in _65){ +_66[_68]=_65[_68]; +} +} +_66.preventDefault=function(){ +_65.preventDefault(); +}; +_66.stopPropagation=function(){ +_65.stopPropagation(); +}; +}else{ +_66=_65; +_66.type=_67; +} +_65.corrected=_66; +if(_67=="resize"){ +if(_63==window.orientation){ +return null; +} +_63=window.orientation; +_66.type="orientationchange"; +return _64.call(this,_66); +} +if(!("rotation" in _66)){ +_66.rotation=0; +_66.scale=1; +} +var _69=_66.changedTouches[0]; +for(var i in _69){ +delete _66[i]; +_66[i]=_69[i]; +} +} +return _64.call(this,_66); +}; +}; +} +return on; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on.js.uncompressed.js new file mode 100644 index 00000000..4ea0a035 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on.js.uncompressed.js @@ -0,0 +1,593 @@ +define("dojo/on", ["./has!dom-addeventlistener?:./aspect", "./_base/kernel", "./sniff"], function(aspect, dojo, has){ + + "use strict"; + if( 1 ){ // check to make sure we are in a browser, this module should work anywhere + var major = window.ScriptEngineMajorVersion; + has.add("jscript", major && (major() + ScriptEngineMinorVersion() / 10)); + has.add("event-orientationchange", has("touch") && !has("android")); // TODO: how do we detect this? + has.add("event-stopimmediatepropagation", window.Event && !!window.Event.prototype && !!window.Event.prototype.stopImmediatePropagation); + has.add("event-focusin", function(global, doc, element){ + return 'onfocusin' in element; + }); + + if(has("touch")){ + has.add("touch-can-modify-event-delegate", function(){ + // This feature test checks whether deleting a property of an event delegate works + // for a touch-enabled device. If it works, event delegation can be used as fallback + // for browsers such as Safari in older iOS where deleting properties of the original + // event does not work. + var EventDelegate = function(){}; + EventDelegate.prototype = + document.createEvent("MouseEvents"); // original event + // Attempt to modify a property of an event delegate and check if + // it succeeds. Depending on browsers and on whether dojo/on's + // strict mode is stripped in a Dojo build, there are 3 known behaviors: + // it may either succeed, or raise an error, or fail to set the property + // without raising an error. + try{ + var eventDelegate = new EventDelegate; + eventDelegate.target = null; + return eventDelegate.target === null; + }catch(e){ + return false; // cannot use event delegation + } + }); + } + } + var on = function(target, type, listener, dontFix){ + // summary: + // A function that provides core event listening functionality. With this function + // you can provide a target, event type, and listener to be notified of + // future matching events that are fired. + // target: Element|Object + // This is the target object or DOM element that to receive events from + // type: String|Function + // This is the name of the event to listen for or an extension event type. + // listener: Function + // This is the function that should be called when the event fires. + // returns: Object + // An object with a remove() method that can be used to stop listening for this + // event. + // description: + // To listen for "click" events on a button node, we can do: + // | define(["dojo/on"], function(on){ + // | on(button, "click", clickHandler); + // | ... + // Evented JavaScript objects can also have their own events. + // | var obj = new Evented; + // | on(obj, "foo", fooHandler); + // And then we could publish a "foo" event: + // | on.emit(obj, "foo", {key: "value"}); + // We can use extension events as well. For example, you could listen for a tap gesture: + // | define(["dojo/on", "dojo/gesture/tap", function(on, tap){ + // | on(button, tap, tapHandler); + // | ... + // which would trigger fooHandler. Note that for a simple object this is equivalent to calling: + // | obj.onfoo({key:"value"}); + // If you use on.emit on a DOM node, it will use native event dispatching when possible. + + if(typeof target.on == "function" && typeof type != "function" && !target.nodeType){ + // delegate to the target's on() method, so it can handle it's own listening if it wants (unless it + // is DOM node and we may be dealing with jQuery or Prototype's incompatible addition to the + // Element prototype + return target.on(type, listener); + } + // delegate to main listener code + return on.parse(target, type, listener, addListener, dontFix, this); + }; + on.pausable = function(target, type, listener, dontFix){ + // summary: + // This function acts the same as on(), but with pausable functionality. The + // returned signal object has pause() and resume() functions. Calling the + // pause() method will cause the listener to not be called for future events. Calling the + // resume() method will cause the listener to again be called for future events. + var paused; + var signal = on(target, type, function(){ + if(!paused){ + return listener.apply(this, arguments); + } + }, dontFix); + signal.pause = function(){ + paused = true; + }; + signal.resume = function(){ + paused = false; + }; + return signal; + }; + on.once = function(target, type, listener, dontFix){ + // summary: + // This function acts the same as on(), but will only call the listener once. The + // listener will be called for the first + // event that takes place and then listener will automatically be removed. + var signal = on(target, type, function(){ + // remove this listener + signal.remove(); + // proceed to call the listener + return listener.apply(this, arguments); + }); + return signal; + }; + on.parse = function(target, type, listener, addListener, dontFix, matchesTarget){ + if(type.call){ + // event handler function + // on(node, touch.press, touchListener); + return type.call(matchesTarget, target, listener); + } + + if(type instanceof Array){ + // allow an array of event names (or event handler functions) + events = type; + }else if(type.indexOf(",") > -1){ + // we allow comma delimited event names, so you can register for multiple events at once + var events = type.split(/\s*,\s*/); + } + if(events){ + var handles = []; + var i = 0; + var eventName; + while(eventName = events[i++]){ + handles.push(on.parse(target, eventName, listener, addListener, dontFix, matchesTarget)); + } + handles.remove = function(){ + for(var i = 0; i < handles.length; i++){ + handles[i].remove(); + } + }; + return handles; + } + return addListener(target, type, listener, dontFix, matchesTarget); + }; + var touchEvents = /^touch/; + function addListener(target, type, listener, dontFix, matchesTarget){ + // event delegation: + var selector = type.match(/(.*):(.*)/); + // if we have a selector:event, the last one is interpreted as an event, and we use event delegation + if(selector){ + type = selector[2]; + selector = selector[1]; + // create the extension event for selectors and directly call it + return on.selector(selector, type).call(matchesTarget, target, listener); + } + // test to see if it a touch event right now, so we don't have to do it every time it fires + if(has("touch")){ + if(touchEvents.test(type)){ + // touch event, fix it + listener = fixTouchListener(listener); + } + if(!has("event-orientationchange") && (type == "orientationchange")){ + //"orientationchange" not supported <= Android 2.1, + //but works through "resize" on window + type = "resize"; + target = window; + listener = fixTouchListener(listener); + } + } + if(addStopImmediate){ + // add stopImmediatePropagation if it doesn't exist + listener = addStopImmediate(listener); + } + // normal path, the target is |this| + if(target.addEventListener){ + // the target has addEventListener, which should be used if available (might or might not be a node, non-nodes can implement this method as well) + // check for capture conversions + var capture = type in captures, + adjustedType = capture ? captures[type] : type; + target.addEventListener(adjustedType, listener, capture); + // create and return the signal + return { + remove: function(){ + target.removeEventListener(adjustedType, listener, capture); + } + }; + } + type = "on" + type; + if(fixAttach && target.attachEvent){ + return fixAttach(target, type, listener); + } + throw new Error("Target must be an event emitter"); + } + on.matches = function(node, selector, context, children, matchesTarget) { + // summary: + // Check if a node match the current selector within the constraint of a context + // node: DOMNode + // The node that originate the event + // selector: String + // The selector to check against + // context: DOMNode + // The context to search in. + // children: Boolean + // Indicates if children elements of the selector should be allowed. This defaults to + // true + // matchesTarget: Object|dojo/query? + // An object with a property "matches" as a function. Default is dojo/query. + // Matching DOMNodes will be done against this function + // The function must return a Boolean. + // It will have 3 arguments: "node", "selector" and "context" + // True is expected if "node" is matching the current "selector" in the passed "context" + // returns: DOMNode? + // The matching node, if any. Else you get false + + // see if we have a valid matchesTarget or default to dojo/query + matchesTarget = matchesTarget && matchesTarget.matches ? matchesTarget : dojo.query; + children = children !== false; + // there is a selector, so make sure it matches + if(node.nodeType != 1){ + // text node will fail in native match selector + node = node.parentNode; + } + while(!matchesTarget.matches(node, selector, context)){ + if(node == context || children === false || !(node = node.parentNode) || node.nodeType != 1){ // intentional assignment + return false; + } + } + return node; + } + on.selector = function(selector, eventType, children){ + // summary: + // Creates a new extension event with event delegation. This is based on + // the provided event type (can be extension event) that + // only calls the listener when the CSS selector matches the target of the event. + // + // The application must require() an appropriate level of dojo/query to handle the selector. + // selector: + // The CSS selector to use for filter events and determine the |this| of the event listener. + // eventType: + // The event to listen for + // children: + // Indicates if children elements of the selector should be allowed. This defaults to + // true + // example: + // | require(["dojo/on", "dojo/mouse", "dojo/query!css2"], function(on, mouse){ + // | on(node, on.selector(".my-class", mouse.enter), handlerForMyHover); + return function(target, listener){ + // if the selector is function, use it to select the node, otherwise use the matches method + var matchesTarget = typeof selector == "function" ? {matches: selector} : this, + bubble = eventType.bubble; + function select(eventTarget){ + return on.matches(eventTarget, selector, target, children, matchesTarget); + } + if(bubble){ + // the event type doesn't naturally bubble, but has a bubbling form, use that, and give it the selector so it can perform the select itself + return on(target, bubble(select), listener); + } + // standard event delegation + return on(target, eventType, function(event){ + // call select to see if we match + var eventTarget = select(event.target); + // if it matches we call the listener + if (eventTarget) { + return listener.call(eventTarget, event); + } + }); + }; + }; + + function syntheticPreventDefault(){ + this.cancelable = false; + this.defaultPrevented = true; + } + function syntheticStopPropagation(){ + this.bubbles = false; + } + var slice = [].slice, + syntheticDispatch = on.emit = function(target, type, event){ + // summary: + // Fires an event on the target object. + // target: + // The target object to fire the event on. This can be a DOM element or a plain + // JS object. If the target is a DOM element, native event emitting mechanisms + // are used when possible. + // type: + // The event type name. You can emulate standard native events like "click" and + // "mouseover" or create custom events like "open" or "finish". + // event: + // An object that provides the properties for the event. See https://developer.mozilla.org/en/DOM/event.initEvent + // for some of the properties. These properties are copied to the event object. + // Of particular importance are the cancelable and bubbles properties. The + // cancelable property indicates whether or not the event has a default action + // that can be cancelled. The event is cancelled by calling preventDefault() on + // the event object. The bubbles property indicates whether or not the + // event will bubble up the DOM tree. If bubbles is true, the event will be called + // on the target and then each parent successively until the top of the tree + // is reached or stopPropagation() is called. Both bubbles and cancelable + // default to false. + // returns: + // If the event is cancelable and the event is not cancelled, + // emit will return true. If the event is cancelable and the event is cancelled, + // emit will return false. + // details: + // Note that this is designed to emit events for listeners registered through + // dojo/on. It should actually work with any event listener except those + // added through IE's attachEvent (IE8 and below's non-W3C event emitting + // doesn't support custom event types). It should work with all events registered + // through dojo/on. Also note that the emit method does do any default + // action, it only returns a value to indicate if the default action should take + // place. For example, emitting a keypress event would not cause a character + // to appear in a textbox. + // example: + // To fire our own click event + // | require(["dojo/on", "dojo/dom" + // | ], function(on, dom){ + // | on.emit(dom.byId("button"), "click", { + // | cancelable: true, + // | bubbles: true, + // | screenX: 33, + // | screenY: 44 + // | }); + // We can also fire our own custom events: + // | on.emit(dom.byId("slider"), "slide", { + // | cancelable: true, + // | bubbles: true, + // | direction: "left-to-right" + // | }); + // | }); + var args = slice.call(arguments, 2); + var method = "on" + type; + if("parentNode" in target){ + // node (or node-like), create event controller methods + var newEvent = args[0] = {}; + for(var i in event){ + newEvent[i] = event[i]; + } + newEvent.preventDefault = syntheticPreventDefault; + newEvent.stopPropagation = syntheticStopPropagation; + newEvent.target = target; + newEvent.type = type; + event = newEvent; + } + do{ + // call any node which has a handler (note that ideally we would try/catch to simulate normal event propagation but that causes too much pain for debugging) + target[method] && target[method].apply(target, args); + // and then continue up the parent node chain if it is still bubbling (if started as bubbles and stopPropagation hasn't been called) + }while(event && event.bubbles && (target = target.parentNode)); + return event && event.cancelable && event; // if it is still true (was cancelable and was cancelled), return the event to indicate default action should happen + }; + var captures = has("event-focusin") ? {} : {focusin: "focus", focusout: "blur"}; + if(!has("event-stopimmediatepropagation")){ + var stopImmediatePropagation =function(){ + this.immediatelyStopped = true; + this.modified = true; // mark it as modified so the event will be cached in IE + }; + var addStopImmediate = function(listener){ + return function(event){ + if(!event.immediatelyStopped){// check to make sure it hasn't been stopped immediately + event.stopImmediatePropagation = stopImmediatePropagation; + return listener.apply(this, arguments); + } + }; + } + } + if(has("dom-addeventlistener")){ + // emitter that works with native event handling + on.emit = function(target, type, event){ + if(target.dispatchEvent && document.createEvent){ + // use the native event emitting mechanism if it is available on the target object + // create a generic event + // we could create branch into the different types of event constructors, but + // that would be a lot of extra code, with little benefit that I can see, seems + // best to use the generic constructor and copy properties over, making it + // easy to have events look like the ones created with specific initializers + var ownerDocument = target.ownerDocument || document; + var nativeEvent = ownerDocument.createEvent("HTMLEvents"); + nativeEvent.initEvent(type, !!event.bubbles, !!event.cancelable); + // and copy all our properties over + for(var i in event){ + if(!(i in nativeEvent)){ + nativeEvent[i] = event[i]; + } + } + return target.dispatchEvent(nativeEvent) && nativeEvent; + } + return syntheticDispatch.apply(on, arguments); // emit for a non-node + }; + }else{ + // no addEventListener, basically old IE event normalization + on._fixEvent = function(evt, sender){ + // summary: + // normalizes properties on the event object including event + // bubbling methods, keystroke normalization, and x/y positions + // evt: + // native event object + // sender: + // node to treat as "currentTarget" + if(!evt){ + var w = sender && (sender.ownerDocument || sender.document || sender).parentWindow || window; + evt = w.event; + } + if(!evt){return evt;} + try{ + if(lastEvent && evt.type == lastEvent.type && evt.srcElement == lastEvent.target){ + // should be same event, reuse event object (so it can be augmented); + // accessing evt.srcElement rather than evt.target since evt.target not set on IE until fixup below + evt = lastEvent; + } + }catch(e){ + // will occur on IE on lastEvent.type reference if lastEvent points to a previous event that already + // finished bubbling, but the setTimeout() to clear lastEvent hasn't fired yet + } + if(!evt.target){ // check to see if it has been fixed yet + evt.target = evt.srcElement; + evt.currentTarget = (sender || evt.srcElement); + if(evt.type == "mouseover"){ + evt.relatedTarget = evt.fromElement; + } + if(evt.type == "mouseout"){ + evt.relatedTarget = evt.toElement; + } + if(!evt.stopPropagation){ + evt.stopPropagation = stopPropagation; + evt.preventDefault = preventDefault; + } + switch(evt.type){ + case "keypress": + var c = ("charCode" in evt ? evt.charCode : evt.keyCode); + if (c==10){ + // CTRL-ENTER is CTRL-ASCII(10) on IE, but CTRL-ENTER on Mozilla + c=0; + evt.keyCode = 13; + }else if(c==13||c==27){ + c=0; // Mozilla considers ENTER and ESC non-printable + }else if(c==3){ + c=99; // Mozilla maps CTRL-BREAK to CTRL-c + } + // Mozilla sets keyCode to 0 when there is a charCode + // but that stops the event on IE. + evt.charCode = c; + _setKeyChar(evt); + break; + } + } + return evt; + }; + var lastEvent, IESignal = function(handle){ + this.handle = handle; + }; + IESignal.prototype.remove = function(){ + delete _dojoIEListeners_[this.handle]; + }; + var fixListener = function(listener){ + // this is a minimal function for closing on the previous listener with as few as variables as possible + return function(evt){ + evt = on._fixEvent(evt, this); + var result = listener.call(this, evt); + if(evt.modified){ + // cache the last event and reuse it if we can + if(!lastEvent){ + setTimeout(function(){ + lastEvent = null; + }); + } + lastEvent = evt; + } + return result; + }; + }; + var fixAttach = function(target, type, listener){ + listener = fixListener(listener); + if(((target.ownerDocument ? target.ownerDocument.parentWindow : target.parentWindow || target.window || window) != top || + has("jscript") < 5.8) && + !has("config-_allow_leaks")){ + // IE will leak memory on certain handlers in frames (IE8 and earlier) and in unattached DOM nodes for JScript 5.7 and below. + // Here we use global redirection to solve the memory leaks + if(typeof _dojoIEListeners_ == "undefined"){ + _dojoIEListeners_ = []; + } + var emitter = target[type]; + if(!emitter || !emitter.listeners){ + var oldListener = emitter; + emitter = Function('event', 'var callee = arguments.callee; for(var i = 0; i<callee.listeners.length; i++){var listener = _dojoIEListeners_[callee.listeners[i]]; if(listener){listener.call(this,event);}}'); + emitter.listeners = []; + target[type] = emitter; + emitter.global = this; + if(oldListener){ + emitter.listeners.push(_dojoIEListeners_.push(oldListener) - 1); + } + } + var handle; + emitter.listeners.push(handle = (emitter.global._dojoIEListeners_.push(listener) - 1)); + return new IESignal(handle); + } + return aspect.after(target, type, listener, true); + }; + + var _setKeyChar = function(evt){ + evt.keyChar = evt.charCode ? String.fromCharCode(evt.charCode) : ''; + evt.charOrCode = evt.keyChar || evt.keyCode; // TODO: remove for 2.0 + }; + // Called in Event scope + var stopPropagation = function(){ + this.cancelBubble = true; + }; + var preventDefault = on._preventDefault = function(){ + // Setting keyCode to 0 is the only way to prevent certain keypresses (namely + // ctrl-combinations that correspond to menu accelerator keys). + // Otoh, it prevents upstream listeners from getting this information + // Try to split the difference here by clobbering keyCode only for ctrl + // combinations. If you still need to access the key upstream, bubbledKeyCode is + // provided as a workaround. + this.bubbledKeyCode = this.keyCode; + if(this.ctrlKey){ + try{ + // squelch errors when keyCode is read-only + // (e.g. if keyCode is ctrl or shift) + this.keyCode = 0; + }catch(e){ + } + } + this.defaultPrevented = true; + this.returnValue = false; + this.modified = true; // mark it as modified (for defaultPrevented flag) so the event will be cached in IE + }; + } + if(has("touch")){ + var EventDelegate = function(){}; + var windowOrientation = window.orientation; + var fixTouchListener = function(listener){ + return function(originalEvent){ + //Event normalization(for ontouchxxx and resize): + //1.incorrect e.pageX|pageY in iOS + //2.there are no "e.rotation", "e.scale" and "onorientationchange" in Android + //3.More TBD e.g. force | screenX | screenX | clientX | clientY | radiusX | radiusY + + // see if it has already been corrected + var event = originalEvent.corrected; + if(!event){ + var type = originalEvent.type; + try{ + delete originalEvent.type; // on some JS engines (android), deleting properties makes them mutable + }catch(e){} + if(originalEvent.type){ + // Deleting the property of the original event did not work (this is the case of + // browsers such as older Safari iOS), hence fallback: + if(has("touch-can-modify-event-delegate")){ + // If deleting properties of delegated event works, use event delegation: + EventDelegate.prototype = originalEvent; + event = new EventDelegate; + }else{ + // Otherwise last fallback: other browsers, such as mobile Firefox, do not like + // delegated properties, so we have to copy + event = {}; + for(var name in originalEvent){ + event[name] = originalEvent[name]; + } + } + // have to delegate methods to make them work + event.preventDefault = function(){ + originalEvent.preventDefault(); + }; + event.stopPropagation = function(){ + originalEvent.stopPropagation(); + }; + }else{ + // deletion worked, use property as is + event = originalEvent; + event.type = type; + } + originalEvent.corrected = event; + if(type == 'resize'){ + if(windowOrientation == window.orientation){ + return null;//double tap causes an unexpected 'resize' in Android + } + windowOrientation = window.orientation; + event.type = "orientationchange"; + return listener.call(this, event); + } + // We use the original event and augment, rather than doing an expensive mixin operation + if(!("rotation" in event)){ // test to see if it has rotation + event.rotation = 0; + event.scale = 1; + } + //use event.changedTouches[0].pageX|pageY|screenX|screenY|clientX|clientY|target + var firstChangeTouch = event.changedTouches[0]; + for(var i in firstChangeTouch){ // use for-in, we don't need to have dependency on dojo/_base/lang here + delete event[i]; // delete it first to make it mutable + event[i] = firstChangeTouch[i]; + } + } + return listener.call(this, event); + }; + }; + } + return on; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/asyncEventListener.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/asyncEventListener.js new file mode 100644 index 00000000..691488e6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/asyncEventListener.js @@ -0,0 +1,38 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/on/asyncEventListener",["../on","../_base/window","../dom-construct","../domReady!"],function(on,_1,_2){ +var _3=_2.create("div",null,_1.body()),_4,_5; +on.once(_3,"click",function(e){ +_4=e; +}); +_3.click(); +try{ +_5=_4.clientX===undefined; +} +catch(e){ +_5=true; +} +finally{ +_2.destroy(_3); +} +function _6(_7){ +var _8={},i; +for(i in _7){ +_8[i]=_7[i]; +} +return _8; +}; +return function(_9){ +if(_5){ +return function(e){ +_9.call(this,_6(e)); +}; +} +return _9; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/asyncEventListener.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/asyncEventListener.js.uncompressed.js new file mode 100644 index 00000000..47008731 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/asyncEventListener.js.uncompressed.js @@ -0,0 +1,48 @@ +define("dojo/on/asyncEventListener", ['../on', '../_base/window', '../dom-construct', '../domReady!'], function(on, baseWin, domConstruct){ + // summary: + // This sub module provide an event factory for delayed events (like debounce or throttle) + // module: + // dojo/on/asyncEventListener + + + //Testing is the browser support async event access + //If not we need to clone the event, otherwise accessing the event properties + //will trigger a JS error (invalid member) + var testNode = domConstruct.create('div', null, baseWin.body()), + testEvent, + requiresClone; + on.once(testNode, 'click', function(e){ + testEvent = e; + }); + testNode.click(); + try{ + requiresClone = testEvent.clientX === undefined; + }catch(e){ + requiresClone = true; + }finally{ + domConstruct.destroy(testNode); + } + + function clone(arg){ + // summary: + // clone the event + // description: + // Used if the browser provides a corrupted event (comming from a node) when passed to an async function + var argCopy = {}, + i; + for(i in arg){ + argCopy[i] = arg[i]; + } + return argCopy; + } + + return function(listener){ + if(requiresClone){ + return function(e){ + //lang.clone fail to clone events, so we use a custom function + listener.call(this, clone(e)); + }; + } + return listener; + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/debounce.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/debounce.js new file mode 100644 index 00000000..764398ae --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/debounce.js @@ -0,0 +1,14 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/on/debounce",["../debounce","../on","./asyncEventListener"],function(_1,on,_2){ +return function(_3,_4){ +return function(_5,_6){ +return on(_5,_3,_2(_1(_6,_4))); +}; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/debounce.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/debounce.js.uncompressed.js new file mode 100644 index 00000000..5e3b79e4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/debounce.js.uncompressed.js @@ -0,0 +1,19 @@ +define("dojo/on/debounce", ['../debounce', '../on', './asyncEventListener'], function(debounce, on, asyncEventListener){ + // summary: + // This module provides an event debouncer for dojo/on + // module: + // dojo/on/debounce + + return function(selector, delay){ + // summary: + // event parser for custom events + // selector: String + // The selector to check against + // delay: Interger + // The amount of ms before testing the selector + + return function(node, listenerFnc){ + return on(node, selector, asyncEventListener(debounce(listenerFnc, delay))); + }; + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/throttle.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/throttle.js new file mode 100644 index 00000000..fbf8c9e0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/throttle.js @@ -0,0 +1,14 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/on/throttle",["../throttle","../on"],function(_1,on){ +return function(_2,_3){ +return function(_4,_5){ +return on(_4,_2,_1(_5,_3)); +}; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/throttle.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/throttle.js.uncompressed.js new file mode 100644 index 00000000..aacf4e92 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/on/throttle.js.uncompressed.js @@ -0,0 +1,19 @@ +define("dojo/on/throttle", ['../throttle', '../on'], function(throttle, on){ + // summary: + // This module provides an event throttler for dojo/on + // module: + // dojo/on/throttle + + return function(selector, delay){ + // summary: + // event parser for custom events + // selector: String + // The selector to check against + // delay: Interger + // The amount of ms before testing the selector + + return function(node, listenerFnc){ + return on(node, selector, throttle(listenerFnc, delay)); + }; + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/package.json b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/package.json new file mode 100644 index 00000000..4c43f8cc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/package.json @@ -0,0 +1,23 @@ +{ + "name": "dojo", + "version":"1.10.4", + "directories": { + "lib": "." + }, + "main": "main", + "description": "Dojo core is a powerful, lightweight library that makes common tasks quicker and easier. Animate elements, manipulate the DOM, and query with easy CSS syntax, all without sacrificing performance.", + "licenses": [ + { + "type": "AFLv2.1", + "url": "http://trac.dojotoolkit.org/browser/dojo/trunk/LICENSE#L43" + }, + { + "type": "BSD", + "url": "http://trac.dojotoolkit.org/browser/dojo/trunk/LICENSE#L13" + } + ], + "bugs": "http://bugs.dojotoolkit.org/", + "keywords": ["JavaScript", "Dojo", "Toolkit"], + "homepage": "http://dojotoolkit.org/", + "dojoBuild": "dojo.profile.js" +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/parser.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/parser.js new file mode 100644 index 00000000..c497ba6e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/parser.js @@ -0,0 +1,445 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/parser",["require","./_base/kernel","./_base/lang","./_base/array","./_base/config","./dom","./_base/window","./_base/url","./aspect","./promise/all","./date/stamp","./Deferred","./has","./query","./on","./ready"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e,_f,_10){ +new Date("X"); +function _11(_12){ +return eval("("+_12+")"); +}; +var _13=0; +_9.after(_3,"extend",function(){ +_13++; +},true); +function _14(_15){ +var map=_15._nameCaseMap,_16=_15.prototype; +if(!map||map._extendCnt<_13){ +map=_15._nameCaseMap={}; +for(var _17 in _16){ +if(_17.charAt(0)==="_"){ +continue; +} +map[_17.toLowerCase()]=_17; +} +map._extendCnt=_13; +} +return map; +}; +var _18={}; +function _19(_1a,_1b){ +var ts=_1a.join(); +if(!_18[ts]){ +var _1c=[]; +for(var i=0,l=_1a.length;i<l;i++){ +var t=_1a[i]; +_1c[_1c.length]=(_18[t]=_18[t]||(_3.getObject(t)||(~t.indexOf("/")&&(_1b?_1b(t):_1(t))))); +} +var _1d=_1c.shift(); +_18[ts]=_1c.length?(_1d.createSubclass?_1d.createSubclass(_1c):_1d.extend.apply(_1d,_1c)):_1d; +} +return _18[ts]; +}; +var _1e={_clearCache:function(){ +_13++; +_18={}; +},_functionFromScript:function(_1f,_20){ +var _21="",_22="",_23=(_1f.getAttribute(_20+"args")||_1f.getAttribute("args")),_24=_1f.getAttribute("with"); +var _25=(_23||"").split(/\s*,\s*/); +if(_24&&_24.length){ +_4.forEach(_24.split(/\s*,\s*/),function(_26){ +_21+="with("+_26+"){"; +_22+="}"; +}); +} +return new Function(_25,_21+_1f.innerHTML+_22); +},instantiate:function(_27,_28,_29){ +_28=_28||{}; +_29=_29||{}; +var _2a=(_29.scope||_2._scopeName)+"Type",_2b="data-"+(_29.scope||_2._scopeName)+"-",_2c=_2b+"type",_2d=_2b+"mixins"; +var _2e=[]; +_4.forEach(_27,function(_2f){ +var _30=_2a in _28?_28[_2a]:_2f.getAttribute(_2c)||_2f.getAttribute(_2a); +if(_30){ +var _31=_2f.getAttribute(_2d),_32=_31?[_30].concat(_31.split(/\s*,\s*/)):[_30]; +_2e.push({node:_2f,types:_32}); +} +}); +return this._instantiate(_2e,_28,_29); +},_instantiate:function(_33,_34,_35,_36){ +var _37=_4.map(_33,function(obj){ +var _38=obj.ctor||_19(obj.types,_35.contextRequire); +if(!_38){ +throw new Error("Unable to resolve constructor for: '"+obj.types.join()+"'"); +} +return this.construct(_38,obj.node,_34,_35,obj.scripts,obj.inherited); +},this); +function _39(_3a){ +if(!_34._started&&!_35.noStart){ +_4.forEach(_3a,function(_3b){ +if(typeof _3b.startup==="function"&&!_3b._started){ +_3b.startup(); +} +}); +} +return _3a; +}; +if(_36){ +return _a(_37).then(_39); +}else{ +return _39(_37); +} +},construct:function(_3c,_3d,_3e,_3f,_40,_41){ +var _42=_3c&&_3c.prototype; +_3f=_3f||{}; +var _43={}; +if(_3f.defaults){ +_3.mixin(_43,_3f.defaults); +} +if(_41){ +_3.mixin(_43,_41); +} +var _44; +if(_d("dom-attributes-explicit")){ +_44=_3d.attributes; +}else{ +if(_d("dom-attributes-specified-flag")){ +_44=_4.filter(_3d.attributes,function(a){ +return a.specified; +}); +}else{ +var _45=/^input$|^img$/i.test(_3d.nodeName)?_3d:_3d.cloneNode(false),_46=_45.outerHTML.replace(/=[^\s"']+|="[^"]*"|='[^']*'/g,"").replace(/^\s*<[a-zA-Z0-9]*\s*/,"").replace(/\s*>.*$/,""); +_44=_4.map(_46.split(/\s+/),function(_47){ +var _48=_47.toLowerCase(); +return {name:_47,value:(_3d.nodeName=="LI"&&_47=="value")||_48=="enctype"?_3d.getAttribute(_48):_3d.getAttributeNode(_48).value}; +}); +} +} +var _49=_3f.scope||_2._scopeName,_4a="data-"+_49+"-",_4b={}; +if(_49!=="dojo"){ +_4b[_4a+"props"]="data-dojo-props"; +_4b[_4a+"type"]="data-dojo-type"; +_4b[_4a+"mixins"]="data-dojo-mixins"; +_4b[_49+"type"]="dojoType"; +_4b[_4a+"id"]="data-dojo-id"; +} +var i=0,_4c,_4d=[],_4e,_4f; +while(_4c=_44[i++]){ +var _50=_4c.name,_51=_50.toLowerCase(),_52=_4c.value; +switch(_4b[_51]||_51){ +case "data-dojo-type": +case "dojotype": +case "data-dojo-mixins": +break; +case "data-dojo-props": +_4f=_52; +break; +case "data-dojo-id": +case "jsid": +_4e=_52; +break; +case "data-dojo-attach-point": +case "dojoattachpoint": +_43.dojoAttachPoint=_52; +break; +case "data-dojo-attach-event": +case "dojoattachevent": +_43.dojoAttachEvent=_52; +break; +case "class": +_43["class"]=_3d.className; +break; +case "style": +_43["style"]=_3d.style&&_3d.style.cssText; +break; +default: +if(!(_50 in _42)){ +var map=_14(_3c); +_50=map[_51]||_50; +} +if(_50 in _42){ +switch(typeof _42[_50]){ +case "string": +_43[_50]=_52; +break; +case "number": +_43[_50]=_52.length?Number(_52):NaN; +break; +case "boolean": +_43[_50]=_52.toLowerCase()!="false"; +break; +case "function": +if(_52===""||_52.search(/[^\w\.]+/i)!=-1){ +_43[_50]=new Function(_52); +}else{ +_43[_50]=_3.getObject(_52,false)||new Function(_52); +} +_4d.push(_50); +break; +default: +var _53=_42[_50]; +_43[_50]=(_53&&"length" in _53)?(_52?_52.split(/\s*,\s*/):[]):(_53 instanceof Date)?(_52==""?new Date(""):_52=="now"?new Date():_b.fromISOString(_52)):(_53 instanceof _8)?(_2.baseUrl+_52):_11(_52); +} +}else{ +_43[_50]=_52; +} +} +} +for(var j=0;j<_4d.length;j++){ +var _54=_4d[j].toLowerCase(); +_3d.removeAttribute(_54); +_3d[_54]=null; +} +if(_4f){ +try{ +_4f=_11.call(_3f.propsThis,"{"+_4f+"}"); +_3.mixin(_43,_4f); +} +catch(e){ +throw new Error(e.toString()+" in data-dojo-props='"+_4f+"'"); +} +} +_3.mixin(_43,_3e); +if(!_40){ +_40=(_3c&&(_3c._noScript||_42._noScript)?[]:_e("> script[type^='dojo/']",_3d)); +} +var _55=[],_56=[],_57=[],ons=[]; +if(_40){ +for(i=0;i<_40.length;i++){ +var _58=_40[i]; +_3d.removeChild(_58); +var _59=(_58.getAttribute(_4a+"event")||_58.getAttribute("event")),_5a=_58.getAttribute(_4a+"prop"),_5b=_58.getAttribute(_4a+"method"),_5c=_58.getAttribute(_4a+"advice"),_5d=_58.getAttribute("type"),nf=this._functionFromScript(_58,_4a); +if(_59){ +if(_5d=="dojo/connect"){ +_55.push({method:_59,func:nf}); +}else{ +if(_5d=="dojo/on"){ +ons.push({event:_59,func:nf}); +}else{ +_43[_59]=nf; +} +} +}else{ +if(_5d=="dojo/aspect"){ +_55.push({method:_5b,advice:_5c,func:nf}); +}else{ +if(_5d=="dojo/watch"){ +_57.push({prop:_5a,func:nf}); +}else{ +_56.push(nf); +} +} +} +} +} +var _5e=_3c.markupFactory||_42.markupFactory; +var _5f=_5e?_5e(_43,_3d,_3c):new _3c(_43,_3d); +function _60(_61){ +if(_4e){ +_3.setObject(_4e,_61); +} +for(i=0;i<_55.length;i++){ +_9[_55[i].advice||"after"](_61,_55[i].method,_3.hitch(_61,_55[i].func),true); +} +for(i=0;i<_56.length;i++){ +_56[i].call(_61); +} +for(i=0;i<_57.length;i++){ +_61.watch(_57[i].prop,_57[i].func); +} +for(i=0;i<ons.length;i++){ +_f(_61,ons[i].event,ons[i].func); +} +return _61; +}; +if(_5f.then){ +return _5f.then(_60); +}else{ +return _60(_5f); +} +},scan:function(_62,_63){ +var _64=[],_65=[],_66={}; +var _67=(_63.scope||_2._scopeName)+"Type",_68="data-"+(_63.scope||_2._scopeName)+"-",_69=_68+"type",_6a=_68+"textdir",_6b=_68+"mixins"; +var _6c=_62.firstChild; +var _6d=_63.inherited; +if(!_6d){ +function _6e(_6f,_70){ +return (_6f.getAttribute&&_6f.getAttribute(_70))||(_6f.parentNode&&_6e(_6f.parentNode,_70)); +}; +_6d={dir:_6e(_62,"dir"),lang:_6e(_62,"lang"),textDir:_6e(_62,_6a)}; +for(var key in _6d){ +if(!_6d[key]){ +delete _6d[key]; +} +} +} +var _71={inherited:_6d}; +var _72; +var _73; +function _74(_75){ +if(!_75.inherited){ +_75.inherited={}; +var _76=_75.node,_77=_74(_75.parent); +var _78={dir:_76.getAttribute("dir")||_77.dir,lang:_76.getAttribute("lang")||_77.lang,textDir:_76.getAttribute(_6a)||_77.textDir}; +for(var key in _78){ +if(_78[key]){ +_75.inherited[key]=_78[key]; +} +} +} +return _75.inherited; +}; +while(true){ +if(!_6c){ +if(!_71||!_71.node){ +break; +} +_6c=_71.node.nextSibling; +_73=false; +_71=_71.parent; +_72=_71.scripts; +continue; +} +if(_6c.nodeType!=1){ +_6c=_6c.nextSibling; +continue; +} +if(_72&&_6c.nodeName.toLowerCase()=="script"){ +_79=_6c.getAttribute("type"); +if(_79&&/^dojo\/\w/i.test(_79)){ +_72.push(_6c); +} +_6c=_6c.nextSibling; +continue; +} +if(_73){ +_6c=_6c.nextSibling; +continue; +} +var _79=_6c.getAttribute(_69)||_6c.getAttribute(_67); +var _7a=_6c.firstChild; +if(!_79&&(!_7a||(_7a.nodeType==3&&!_7a.nextSibling))){ +_6c=_6c.nextSibling; +continue; +} +var _7b; +var _7c=null; +if(_79){ +var _7d=_6c.getAttribute(_6b),_7e=_7d?[_79].concat(_7d.split(/\s*,\s*/)):[_79]; +try{ +_7c=_19(_7e,_63.contextRequire); +} +catch(e){ +} +if(!_7c){ +_4.forEach(_7e,function(t){ +if(~t.indexOf("/")&&!_66[t]){ +_66[t]=true; +_65[_65.length]=t; +} +}); +} +var _7f=_7c&&!_7c.prototype._noScript?[]:null; +_7b={types:_7e,ctor:_7c,parent:_71,node:_6c,scripts:_7f}; +_7b.inherited=_74(_7b); +_64.push(_7b); +}else{ +_7b={node:_6c,scripts:_72,parent:_71}; +} +_72=_7f; +_73=_6c.stopParser||(_7c&&_7c.prototype.stopParser&&!(_63.template)); +_71=_7b; +_6c=_7a; +} +var d=new _c(); +if(_65.length){ +if(_d("dojo-debug-messages")){ +console.warn("WARNING: Modules being Auto-Required: "+_65.join(", ")); +} +var r=_63.contextRequire||_1; +r(_65,function(){ +d.resolve(_4.filter(_64,function(_80){ +if(!_80.ctor){ +try{ +_80.ctor=_19(_80.types,_63.contextRequire); +} +catch(e){ +} +} +var _81=_80.parent; +while(_81&&!_81.types){ +_81=_81.parent; +} +var _82=_80.ctor&&_80.ctor.prototype; +_80.instantiateChildren=!(_82&&_82.stopParser&&!(_63.template)); +_80.instantiate=!_81||(_81.instantiate&&_81.instantiateChildren); +return _80.instantiate; +})); +}); +}else{ +d.resolve(_64); +} +return d.promise; +},_require:function(_83,_84){ +var _85=_11("{"+_83.innerHTML+"}"),_86=[],_87=[],d=new _c(); +var _88=(_84&&_84.contextRequire)||_1; +for(var _89 in _85){ +_86.push(_89); +_87.push(_85[_89]); +} +_88(_87,function(){ +for(var i=0;i<_86.length;i++){ +_3.setObject(_86[i],arguments[i]); +} +d.resolve(arguments); +}); +return d.promise; +},_scanAmd:function(_8a,_8b){ +var _8c=new _c(),_8d=_8c.promise; +_8c.resolve(true); +var _8e=this; +_e("script[type='dojo/require']",_8a).forEach(function(_8f){ +_8d=_8d.then(function(){ +return _8e._require(_8f,_8b); +}); +_8f.parentNode.removeChild(_8f); +}); +return _8d; +},parse:function(_90,_91){ +var _92; +if(!_91&&_90&&_90.rootNode){ +_91=_90; +_92=_91.rootNode; +}else{ +if(_90&&_3.isObject(_90)&&!("nodeType" in _90)){ +_91=_90; +}else{ +_92=_90; +} +} +_92=_92?_6.byId(_92):_7.body(); +_91=_91||{}; +var _93=_91.template?{template:true}:{},_94=[],_95=this; +var p=this._scanAmd(_92,_91).then(function(){ +return _95.scan(_92,_91); +}).then(function(_96){ +return _95._instantiate(_96,_93,_91,true); +}).then(function(_97){ +return _94=_94.concat(_97); +}).otherwise(function(e){ +console.error("dojo/parser::parse() error",e); +throw e; +}); +_3.mixin(_94,p); +return _94; +}}; +if(1){ +_2.parser=_1e; +} +if(_5.parseOnLoad){ +_10(100,_1e,"parse"); +} +return _1e; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/parser.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/parser.js.uncompressed.js new file mode 100644 index 00000000..13d01cbc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/parser.js.uncompressed.js @@ -0,0 +1,920 @@ +define("dojo/parser", [ + "require", "./_base/kernel", "./_base/lang", "./_base/array", "./_base/config", "./dom", "./_base/window", + "./_base/url", "./aspect", "./promise/all", "./date/stamp", "./Deferred", "./has", "./query", "./on", "./ready" +], function(require, dojo, dlang, darray, config, dom, dwindow, _Url, aspect, all, dates, Deferred, has, query, don, ready){ + + // module: + // dojo/parser + + new Date("X"); // workaround for #11279, new Date("") == NaN + + // data-dojo-props etc. is not restricted to JSON, it can be any javascript + function myEval(text){ + return eval("(" + text + ")"); + } + + // Widgets like BorderContainer add properties to _Widget via dojo.extend(). + // If BorderContainer is loaded after _Widget's parameter list has been cached, + // we need to refresh that parameter list (for _Widget and all widgets that extend _Widget). + var extendCnt = 0; + aspect.after(dlang, "extend", function(){ + extendCnt++; + }, true); + + function getNameMap(ctor){ + // summary: + // Returns map from lowercase name to attribute name in class, ex: {onclick: "onClick"} + var map = ctor._nameCaseMap, proto = ctor.prototype; + + // Create the map if it's undefined. + // Refresh the map if a superclass was possibly extended with new methods since the map was created. + if(!map || map._extendCnt < extendCnt){ + map = ctor._nameCaseMap = {}; + for(var name in proto){ + if(name.charAt(0) === "_"){ + continue; + } // skip internal properties + map[name.toLowerCase()] = name; + } + map._extendCnt = extendCnt; + } + return map; + } + + // Map from widget name or list of widget names(ex: "dijit/form/Button,acme/MyMixin") to a constructor. + var _ctorMap = {}; + + function getCtor(/*String[]*/ types, /*Function?*/ contextRequire){ + // summary: + // Retrieves a constructor. If the types array contains more than one class/MID then the + // subsequent classes will be mixed into the first class and a unique constructor will be + // returned for that array. + + var ts = types.join(); + if(!_ctorMap[ts]){ + var mixins = []; + for(var i = 0, l = types.length; i < l; i++){ + var t = types[i]; + // TODO: Consider swapping getObject and require in the future + mixins[mixins.length] = (_ctorMap[t] = _ctorMap[t] || (dlang.getObject(t) || (~t.indexOf('/') && + (contextRequire ? contextRequire(t) : require(t))))); + } + var ctor = mixins.shift(); + _ctorMap[ts] = mixins.length ? (ctor.createSubclass ? ctor.createSubclass(mixins) : ctor.extend.apply(ctor, mixins)) : ctor; + } + + return _ctorMap[ts]; + } + + var parser = { + // summary: + // The Dom/Widget parsing package + + _clearCache: function(){ + // summary: + // Clear cached data. Used mainly for benchmarking. + extendCnt++; + _ctorMap = {}; + }, + + _functionFromScript: function(script, attrData){ + // summary: + // Convert a `<script type="dojo/method" args="a, b, c"> ... </script>` + // into a function + // script: DOMNode + // The `<script>` DOMNode + // attrData: String + // For HTML5 compliance, searches for attrData + "args" (typically + // "data-dojo-args") instead of "args" + var preamble = "", + suffix = "", + argsStr = (script.getAttribute(attrData + "args") || script.getAttribute("args")), + withStr = script.getAttribute("with"); + + // Convert any arguments supplied in script tag into an array to be passed to the + var fnArgs = (argsStr || "").split(/\s*,\s*/); + + if(withStr && withStr.length){ + darray.forEach(withStr.split(/\s*,\s*/), function(part){ + preamble += "with(" + part + "){"; + suffix += "}"; + }); + } + + return new Function(fnArgs, preamble + script.innerHTML + suffix); + }, + + instantiate: function(nodes, mixin, options){ + // summary: + // Takes array of nodes, and turns them into class instances and + // potentially calls a startup method to allow them to connect with + // any children. + // nodes: Array + // Array of DOM nodes + // mixin: Object? + // An object that will be mixed in with each node in the array. + // Values in the mixin will override values in the node, if they + // exist. + // options: Object? + // An object used to hold kwArgs for instantiation. + // See parse.options argument for details. + // returns: + // Array of instances. + + mixin = mixin || {}; + options = options || {}; + + var dojoType = (options.scope || dojo._scopeName) + "Type", // typically "dojoType" + attrData = "data-" + (options.scope || dojo._scopeName) + "-", // typically "data-dojo-" + dataDojoType = attrData + "type", // typically "data-dojo-type" + dataDojoMixins = attrData + "mixins"; // typically "data-dojo-mixins" + + var list = []; + darray.forEach(nodes, function(node){ + var type = dojoType in mixin ? mixin[dojoType] : node.getAttribute(dataDojoType) || node.getAttribute(dojoType); + if(type){ + var mixinsValue = node.getAttribute(dataDojoMixins), + types = mixinsValue ? [type].concat(mixinsValue.split(/\s*,\s*/)) : [type]; + + list.push({ + node: node, + types: types + }); + } + }); + + // Instantiate the nodes and return the list of instances. + return this._instantiate(list, mixin, options); + }, + + _instantiate: function(nodes, mixin, options, returnPromise){ + // summary: + // Takes array of objects representing nodes, and turns them into class instances and + // potentially calls a startup method to allow them to connect with + // any children. + // nodes: Array + // Array of objects like + // | { + // | ctor: Function (may be null) + // | types: ["dijit/form/Button", "acme/MyMixin"] (used if ctor not specified) + // | node: DOMNode, + // | scripts: [ ... ], // array of <script type="dojo/..."> children of node + // | inherited: { ... } // settings inherited from ancestors like dir, theme, etc. + // | } + // mixin: Object + // An object that will be mixed in with each node in the array. + // Values in the mixin will override values in the node, if they + // exist. + // options: Object + // An options object used to hold kwArgs for instantiation. + // See parse.options argument for details. + // returnPromise: Boolean + // Return a Promise rather than the instance; supports asynchronous widget creation. + // returns: + // Array of instances, or if returnPromise is true, a promise for array of instances + // that resolves when instances have finished initializing. + + // Call widget constructors. Some may be asynchronous and return promises. + var thelist = darray.map(nodes, function(obj){ + var ctor = obj.ctor || getCtor(obj.types, options.contextRequire); + // If we still haven't resolved a ctor, it is fatal now + if(!ctor){ + throw new Error("Unable to resolve constructor for: '" + obj.types.join() + "'"); + } + return this.construct(ctor, obj.node, mixin, options, obj.scripts, obj.inherited); + }, this); + + // After all widget construction finishes, call startup on each top level instance if it makes sense (as for + // widgets). Parent widgets will recursively call startup on their (non-top level) children + function onConstruct(thelist){ + if(!mixin._started && !options.noStart){ + darray.forEach(thelist, function(instance){ + if(typeof instance.startup === "function" && !instance._started){ + instance.startup(); + } + }); + } + + return thelist; + } + + if(returnPromise){ + return all(thelist).then(onConstruct); + }else{ + // Back-compat path, remove for 2.0 + return onConstruct(thelist); + } + }, + + construct: function(ctor, node, mixin, options, scripts, inherited){ + // summary: + // Calls new ctor(params, node), where params is the hash of parameters specified on the node, + // excluding data-dojo-type and data-dojo-mixins. Does not call startup(). + // ctor: Function + // Widget constructor. + // node: DOMNode + // This node will be replaced/attached to by the widget. It also specifies the arguments to pass to ctor. + // mixin: Object? + // Attributes in this object will be passed as parameters to ctor, + // overriding attributes specified on the node. + // options: Object? + // An options object used to hold kwArgs for instantiation. See parse.options argument for details. + // scripts: DomNode[]? + // Array of `<script type="dojo/*">` DOMNodes. If not specified, will search for `<script>` tags inside node. + // inherited: Object? + // Settings from dir=rtl or lang=... on a node above this node. Overrides options.inherited. + // returns: + // Instance or Promise for the instance, if markupFactory() itself returned a promise + + var proto = ctor && ctor.prototype; + options = options || {}; + + // Setup hash to hold parameter settings for this widget. Start with the parameter + // settings inherited from ancestors ("dir" and "lang"). + // Inherited setting may later be overridden by explicit settings on node itself. + var params = {}; + + if(options.defaults){ + // settings for the document itself (or whatever subtree is being parsed) + dlang.mixin(params, options.defaults); + } + if(inherited){ + // settings from dir=rtl or lang=... on a node above this node + dlang.mixin(params, inherited); + } + + // Get list of attributes explicitly listed in the markup + var attributes; + if(has("dom-attributes-explicit")){ + // Standard path to get list of user specified attributes + attributes = node.attributes; + }else if(has("dom-attributes-specified-flag")){ + // Special processing needed for IE8, to skip a few faux values in attributes[] + attributes = darray.filter(node.attributes, function(a){ + return a.specified; + }); + }else{ + // Special path for IE6-7, avoid (sometimes >100) bogus entries in node.attributes + var clone = /^input$|^img$/i.test(node.nodeName) ? node : node.cloneNode(false), + attrs = clone.outerHTML.replace(/=[^\s"']+|="[^"]*"|='[^']*'/g, "").replace(/^\s*<[a-zA-Z0-9]*\s*/, "").replace(/\s*>.*$/, ""); + + attributes = darray.map(attrs.split(/\s+/), function(name){ + var lcName = name.toLowerCase(); + return { + name: name, + // getAttribute() doesn't work for button.value, returns innerHTML of button. + // but getAttributeNode().value doesn't work for the form.encType or li.value + value: (node.nodeName == "LI" && name == "value") || lcName == "enctype" ? + node.getAttribute(lcName) : node.getAttributeNode(lcName).value + }; + }); + } + + // Hash to convert scoped attribute name (ex: data-dojo17-params) to something friendly (ex: data-dojo-params) + // TODO: remove scope for 2.0 + var scope = options.scope || dojo._scopeName, + attrData = "data-" + scope + "-", // typically "data-dojo-" + hash = {}; + if(scope !== "dojo"){ + hash[attrData + "props"] = "data-dojo-props"; + hash[attrData + "type"] = "data-dojo-type"; + hash[attrData + "mixins"] = "data-dojo-mixins"; + hash[scope + "type"] = "dojoType"; + hash[attrData + "id"] = "data-dojo-id"; + } + + // Read in attributes and process them, including data-dojo-props, data-dojo-type, + // dojoAttachPoint, etc., as well as normal foo=bar attributes. + var i = 0, item, funcAttrs = [], jsname, extra; + while(item = attributes[i++]){ + var name = item.name, + lcName = name.toLowerCase(), + value = item.value; + + switch(hash[lcName] || lcName){ + // Already processed, just ignore + case "data-dojo-type": + case "dojotype": + case "data-dojo-mixins": + break; + + // Data-dojo-props. Save for later to make sure it overrides direct foo=bar settings + case "data-dojo-props": + extra = value; + break; + + // data-dojo-id or jsId. TODO: drop jsId in 2.0 + case "data-dojo-id": + case "jsid": + jsname = value; + break; + + // For the benefit of _Templated + case "data-dojo-attach-point": + case "dojoattachpoint": + params.dojoAttachPoint = value; + break; + case "data-dojo-attach-event": + case "dojoattachevent": + params.dojoAttachEvent = value; + break; + + // Special parameter handling needed for IE + case "class": + params["class"] = node.className; + break; + case "style": + params["style"] = node.style && node.style.cssText; + break; + default: + // Normal attribute, ex: value="123" + + // Find attribute in widget corresponding to specified name. + // May involve case conversion, ex: onclick --> onClick + if(!(name in proto)){ + var map = getNameMap(ctor); + name = map[lcName] || name; + } + + // Set params[name] to value, doing type conversion + if(name in proto){ + switch(typeof proto[name]){ + case "string": + params[name] = value; + break; + case "number": + params[name] = value.length ? Number(value) : NaN; + break; + case "boolean": + // for checked/disabled value might be "" or "checked". interpret as true. + params[name] = value.toLowerCase() != "false"; + break; + case "function": + if(value === "" || value.search(/[^\w\.]+/i) != -1){ + // The user has specified some text for a function like "return x+5" + params[name] = new Function(value); + }else{ + // The user has specified the name of a global function like "myOnClick" + // or a single word function "return" + params[name] = dlang.getObject(value, false) || new Function(value); + } + funcAttrs.push(name); // prevent "double connect", see #15026 + break; + default: + var pVal = proto[name]; + params[name] = + (pVal && "length" in pVal) ? (value ? value.split(/\s*,\s*/) : []) : // array + (pVal instanceof Date) ? + (value == "" ? new Date("") : // the NaN of dates + value == "now" ? new Date() : // current date + dates.fromISOString(value)) : + (pVal instanceof _Url) ? (dojo.baseUrl + value) : + myEval(value); + } + }else{ + params[name] = value; + } + } + } + + // Remove function attributes from DOMNode to prevent "double connect" problem, see #15026. + // Do this as a separate loop since attributes[] is often a live collection (depends on the browser though). + for(var j = 0; j < funcAttrs.length; j++){ + var lcfname = funcAttrs[j].toLowerCase(); + node.removeAttribute(lcfname); + node[lcfname] = null; + } + + // Mix things found in data-dojo-props into the params, overriding any direct settings + if(extra){ + try{ + extra = myEval.call(options.propsThis, "{" + extra + "}"); + dlang.mixin(params, extra); + }catch(e){ + // give the user a pointer to their invalid parameters. FIXME: can we kill this in production? + throw new Error(e.toString() + " in data-dojo-props='" + extra + "'"); + } + } + + // Any parameters specified in "mixin" override everything else. + dlang.mixin(params, mixin); + + // Get <script> nodes associated with this widget, if they weren't specified explicitly + if(!scripts){ + scripts = (ctor && (ctor._noScript || proto._noScript) ? [] : query("> script[type^='dojo/']", node)); + } + + // Process <script type="dojo/*"> script tags + // <script type="dojo/method" data-dojo-event="foo"> tags are added to params, and passed to + // the widget on instantiation. + // <script type="dojo/method"> tags (with no event) are executed after instantiation + // <script type="dojo/connect" data-dojo-event="foo"> tags are dojo.connected after instantiation, + // and likewise with <script type="dojo/aspect" data-dojo-method="foo"> + // <script type="dojo/watch" data-dojo-prop="foo"> tags are dojo.watch after instantiation + // <script type="dojo/on" data-dojo-event="foo"> tags are dojo.on after instantiation + // note: dojo/* script tags cannot exist in self closing widgets, like <input /> + var aspects = [], // aspects to connect after instantiation + calls = [], // functions to call after instantiation + watches = [], // functions to watch after instantiation + ons = []; // functions to on after instantiation + + if(scripts){ + for(i = 0; i < scripts.length; i++){ + var script = scripts[i]; + node.removeChild(script); + // FIXME: drop event="" support in 2.0. use data-dojo-event="" instead + var event = (script.getAttribute(attrData + "event") || script.getAttribute("event")), + prop = script.getAttribute(attrData + "prop"), + method = script.getAttribute(attrData + "method"), + advice = script.getAttribute(attrData + "advice"), + scriptType = script.getAttribute("type"), + nf = this._functionFromScript(script, attrData); + if(event){ + if(scriptType == "dojo/connect"){ + aspects.push({ method: event, func: nf }); + }else if(scriptType == "dojo/on"){ + ons.push({ event: event, func: nf }); + }else{ + // <script type="dojo/method" data-dojo-event="foo"> + // TODO for 2.0: use data-dojo-method="foo" instead (also affects dijit/Declaration) + params[event] = nf; + } + }else if(scriptType == "dojo/aspect"){ + aspects.push({ method: method, advice: advice, func: nf }); + }else if(scriptType == "dojo/watch"){ + watches.push({ prop: prop, func: nf }); + }else{ + calls.push(nf); + } + } + } + + // create the instance + var markupFactory = ctor.markupFactory || proto.markupFactory; + var instance = markupFactory ? markupFactory(params, node, ctor) : new ctor(params, node); + + function onInstantiate(instance){ + // map it to the JS namespace if that makes sense + if(jsname){ + dlang.setObject(jsname, instance); + } + + // process connections and startup functions + for(i = 0; i < aspects.length; i++){ + aspect[aspects[i].advice || "after"](instance, aspects[i].method, dlang.hitch(instance, aspects[i].func), true); + } + for(i = 0; i < calls.length; i++){ + calls[i].call(instance); + } + for(i = 0; i < watches.length; i++){ + instance.watch(watches[i].prop, watches[i].func); + } + for(i = 0; i < ons.length; i++){ + don(instance, ons[i].event, ons[i].func); + } + + return instance; + } + + if(instance.then){ + return instance.then(onInstantiate); + }else{ + return onInstantiate(instance); + } + }, + + scan: function(root, options){ + // summary: + // Scan a DOM tree and return an array of objects representing the DOMNodes + // that need to be turned into widgets. + // description: + // Search specified node (or document root node) recursively for class instances + // and return an array of objects that represent potential widgets to be + // instantiated. Searches for either data-dojo-type="MID" or dojoType="MID" where + // "MID" is a module ID like "dijit/form/Button" or a fully qualified Class name + // like "dijit/form/Button". If the MID is not currently available, scan will + // attempt to require() in the module. + // + // See parser.parse() for details of markup. + // root: DomNode? + // A default starting root node from which to start the parsing. Can be + // omitted, defaulting to the entire document. If omitted, the `options` + // object can be passed in this place. If the `options` object has a + // `rootNode` member, that is used. + // options: Object + // a kwArgs options object, see parse() for details + // + // returns: Promise + // A promise that is resolved with the nodes that have been parsed. + + var list = [], // Output List + mids = [], // An array of modules that are not yet loaded + midsHash = {}; // Used to keep the mids array unique + + var dojoType = (options.scope || dojo._scopeName) + "Type", // typically "dojoType" + attrData = "data-" + (options.scope || dojo._scopeName) + "-", // typically "data-dojo-" + dataDojoType = attrData + "type", // typically "data-dojo-type" + dataDojoTextDir = attrData + "textdir", // typically "data-dojo-textdir" + dataDojoMixins = attrData + "mixins"; // typically "data-dojo-mixins" + + // Info on DOMNode currently being processed + var node = root.firstChild; + + // Info on parent of DOMNode currently being processed + // - inherited: dir, lang, and textDir setting of parent, or inherited by parent + // - parent: pointer to identical structure for my parent (or null if no parent) + // - scripts: if specified, collects <script type="dojo/..."> type nodes from children + var inherited = options.inherited; + if(!inherited){ + function findAncestorAttr(node, attr){ + return (node.getAttribute && node.getAttribute(attr)) || + (node.parentNode && findAncestorAttr(node.parentNode, attr)); + } + + inherited = { + dir: findAncestorAttr(root, "dir"), + lang: findAncestorAttr(root, "lang"), + textDir: findAncestorAttr(root, dataDojoTextDir) + }; + for(var key in inherited){ + if(!inherited[key]){ + delete inherited[key]; + } + } + } + + // Metadata about parent node + var parent = { + inherited: inherited + }; + + // For collecting <script type="dojo/..."> type nodes (when null, we don't need to collect) + var scripts; + + // when true, only look for <script type="dojo/..."> tags, and don't recurse to children + var scriptsOnly; + + function getEffective(parent){ + // summary: + // Get effective dir, lang, textDir settings for specified obj + // (matching "parent" object structure above), and do caching. + // Take care not to return null entries. + if(!parent.inherited){ + parent.inherited = {}; + var node = parent.node, + grandparent = getEffective(parent.parent); + var inherited = { + dir: node.getAttribute("dir") || grandparent.dir, + lang: node.getAttribute("lang") || grandparent.lang, + textDir: node.getAttribute(dataDojoTextDir) || grandparent.textDir + }; + for(var key in inherited){ + if(inherited[key]){ + parent.inherited[key] = inherited[key]; + } + } + } + return parent.inherited; + } + + // DFS on DOM tree, collecting nodes with data-dojo-type specified. + while(true){ + if(!node){ + // Finished this level, continue to parent's next sibling + if(!parent || !parent.node){ + break; + } + node = parent.node.nextSibling; + scriptsOnly = false; + parent = parent.parent; + scripts = parent.scripts; + continue; + } + + if(node.nodeType != 1){ + // Text or comment node, skip to next sibling + node = node.nextSibling; + continue; + } + + if(scripts && node.nodeName.toLowerCase() == "script"){ + // Save <script type="dojo/..."> for parent, then continue to next sibling + type = node.getAttribute("type"); + if(type && /^dojo\/\w/i.test(type)){ + scripts.push(node); + } + node = node.nextSibling; + continue; + } + if(scriptsOnly){ + // scriptsOnly flag is set, we have already collected scripts if the parent wants them, so now we shouldn't + // continue further analysis of the node and will continue to the next sibling + node = node.nextSibling; + continue; + } + + // Check for data-dojo-type attribute, fallback to backward compatible dojoType + // TODO: Remove dojoType in 2.0 + var type = node.getAttribute(dataDojoType) || node.getAttribute(dojoType); + + // Short circuit for leaf nodes containing nothing [but text] + var firstChild = node.firstChild; + if(!type && (!firstChild || (firstChild.nodeType == 3 && !firstChild.nextSibling))){ + node = node.nextSibling; + continue; + } + + // Meta data about current node + var current; + + var ctor = null; + if(type){ + // If dojoType/data-dojo-type specified, add to output array of nodes to instantiate. + var mixinsValue = node.getAttribute(dataDojoMixins), + types = mixinsValue ? [type].concat(mixinsValue.split(/\s*,\s*/)) : [type]; + + // Note: won't find classes declared via dojo/Declaration or any modules that haven't been + // loaded yet so use try/catch to avoid throw from require() + try{ + ctor = getCtor(types, options.contextRequire); + }catch(e){} + + // If the constructor was not found, check to see if it has modules that can be loaded + if(!ctor){ + darray.forEach(types, function(t){ + if(~t.indexOf('/') && !midsHash[t]){ + // If the type looks like a MID and it currently isn't in the array of MIDs to load, add it. + midsHash[t] = true; + mids[mids.length] = t; + } + }); + } + + var childScripts = ctor && !ctor.prototype._noScript ? [] : null; // <script> nodes that are parent's children + + // Setup meta data about this widget node, and save it to list of nodes to instantiate + current = { + types: types, + ctor: ctor, + parent: parent, + node: node, + scripts: childScripts + }; + current.inherited = getEffective(current); // dir & lang settings for current node, explicit or inherited + list.push(current); + }else{ + // Meta data about this non-widget node + current = { + node: node, + scripts: scripts, + parent: parent + }; + } + + // Recurse, collecting <script type="dojo/..."> children, and also looking for + // descendant nodes with dojoType specified (unless the widget has the stopParser flag). + // When finished with children, go to my next sibling. + scripts = childScripts; + scriptsOnly = node.stopParser || (ctor && ctor.prototype.stopParser && !(options.template)); + parent = current; + node = firstChild; + } + + var d = new Deferred(); + + // If there are modules to load then require them in + if(mids.length){ + // Warn that there are modules being auto-required + if(has("dojo-debug-messages")){ + console.warn("WARNING: Modules being Auto-Required: " + mids.join(", ")); + } + var r = options.contextRequire || require; + r(mids, function(){ + // Go through list of widget nodes, filling in missing constructors, and filtering out nodes that shouldn't + // be instantiated due to a stopParser flag on an ancestor that we belatedly learned about due to + // auto-require of a module like ContentPane. Assumes list is in DFS order. + d.resolve(darray.filter(list, function(widget){ + if(!widget.ctor){ + // Attempt to find the constructor again. Still won't find classes defined via + // dijit/Declaration so need to try/catch. + try{ + widget.ctor = getCtor(widget.types, options.contextRequire); + }catch(e){} + } + + // Get the parent widget + var parent = widget.parent; + while(parent && !parent.types){ + parent = parent.parent; + } + + // Return false if this node should be skipped due to stopParser on an ancestor. + // Since list[] is in DFS order, this loop will always set parent.instantiateChildren before + // trying to compute widget.instantiate. + var proto = widget.ctor && widget.ctor.prototype; + widget.instantiateChildren = !(proto && proto.stopParser && !(options.template)); + widget.instantiate = !parent || (parent.instantiate && parent.instantiateChildren); + return widget.instantiate; + })); + }); + }else{ + // There were no modules to load, so just resolve with the parsed nodes. This separate code path is for + // efficiency, to avoid running the require() and the callback code above. + d.resolve(list); + } + + // Return the promise + return d.promise; + }, + + _require: function(/*DOMNode*/ script, /*Object?*/ options){ + // summary: + // Helper for _scanAMD(). Takes a `<script type=dojo/require>bar: "acme/bar", ...</script>` node, + // calls require() to load the specified modules and (asynchronously) assign them to the specified global + // variables, and returns a Promise for when that operation completes. + // + // In the example above, it is effectively doing a require(["acme/bar", ...], function(a){ bar = a; }). + + var hash = myEval("{" + script.innerHTML + "}"), // can't use dojo/json::parse() because maybe no quotes + vars = [], + mids = [], + d = new Deferred(); + + var contextRequire = (options && options.contextRequire) || require; + + for(var name in hash){ + vars.push(name); + mids.push(hash[name]); + } + + contextRequire(mids, function(){ + for(var i = 0; i < vars.length; i++){ + dlang.setObject(vars[i], arguments[i]); + } + d.resolve(arguments); + }); + + return d.promise; + }, + + _scanAmd: function(root, options){ + // summary: + // Scans the DOM for any declarative requires and returns their values. + // description: + // Looks for `<script type=dojo/require>bar: "acme/bar", ...</script>` node, calls require() to load the + // specified modules and (asynchronously) assign them to the specified global variables, + // and returns a Promise for when those operations complete. + // root: DomNode + // The node to base the scan from. + // options: Object? + // a kwArgs options object, see parse() for details + + // Promise that resolves when all the <script type=dojo/require> nodes have finished loading. + var deferred = new Deferred(), + promise = deferred.promise; + deferred.resolve(true); + + var self = this; + query("script[type='dojo/require']", root).forEach(function(node){ + // Fire off require() call for specified modules. Chain this require to fire after + // any previous requires complete, so that layers can be loaded before individual module require()'s fire. + promise = promise.then(function(){ + return self._require(node, options); + }); + + // Remove from DOM so it isn't seen again + node.parentNode.removeChild(node); + }); + + return promise; + }, + + parse: function(rootNode, options){ + // summary: + // Scan the DOM for class instances, and instantiate them. + // description: + // Search specified node (or root node) recursively for class instances, + // and instantiate them. Searches for either data-dojo-type="Class" or + // dojoType="Class" where "Class" is a a fully qualified class name, + // like `dijit/form/Button` + // + // Using `data-dojo-type`: + // Attributes using can be mixed into the parameters used to instantiate the + // Class by using a `data-dojo-props` attribute on the node being converted. + // `data-dojo-props` should be a string attribute to be converted from JSON. + // + // Using `dojoType`: + // Attributes are read from the original domNode and converted to appropriate + // types by looking up the Class prototype values. This is the default behavior + // from Dojo 1.0 to Dojo 1.5. `dojoType` support is deprecated, and will + // go away in Dojo 2.0. + // rootNode: DomNode? + // A default starting root node from which to start the parsing. Can be + // omitted, defaulting to the entire document. If omitted, the `options` + // object can be passed in this place. If the `options` object has a + // `rootNode` member, that is used. + // options: Object? + // A hash of options. + // + // - noStart: Boolean?: + // when set will prevent the parser from calling .startup() + // when locating the nodes. + // - rootNode: DomNode?: + // identical to the function's `rootNode` argument, though + // allowed to be passed in via this `options object. + // - template: Boolean: + // If true, ignores ContentPane's stopParser flag and parses contents inside of + // a ContentPane inside of a template. This allows dojoAttachPoint on widgets/nodes + // nested inside the ContentPane to work. + // - inherited: Object: + // Hash possibly containing dir and lang settings to be applied to + // parsed widgets, unless there's another setting on a sub-node that overrides + // - scope: String: + // Root for attribute names to search for. If scopeName is dojo, + // will search for data-dojo-type (or dojoType). For backwards compatibility + // reasons defaults to dojo._scopeName (which is "dojo" except when + // multi-version support is used, when it will be something like dojo16, dojo20, etc.) + // - propsThis: Object: + // If specified, "this" referenced from data-dojo-props will refer to propsThis. + // Intended for use from the widgets-in-template feature of `dijit._WidgetsInTemplateMixin` + // - contextRequire: Function: + // If specified, this require is utilised for looking resolving modules instead of the + // `dojo/parser` context `require()`. Intended for use from the widgets-in-template feature of + // `dijit._WidgetsInTemplateMixin`. + // returns: Mixed + // Returns a blended object that is an array of the instantiated objects, but also can include + // a promise that is resolved with the instantiated objects. This is done for backwards + // compatibility. If the parser auto-requires modules, it will always behave in a promise + // fashion and `parser.parse().then(function(instances){...})` should be used. + // example: + // Parse all widgets on a page: + // | parser.parse(); + // example: + // Parse all classes within the node with id="foo" + // | parser.parse(dojo.byId('foo')); + // example: + // Parse all classes in a page, but do not call .startup() on any + // child + // | parser.parse({ noStart: true }) + // example: + // Parse all classes in a node, but do not call .startup() + // | parser.parse(someNode, { noStart:true }); + // | // or + // | parser.parse({ noStart:true, rootNode: someNode }); + + // determine the root node and options based on the passed arguments. + var root; + if(!options && rootNode && rootNode.rootNode){ + options = rootNode; + root = options.rootNode; + }else if(rootNode && dlang.isObject(rootNode) && !("nodeType" in rootNode)){ + options = rootNode; + }else{ + root = rootNode; + } + root = root ? dom.byId(root) : dwindow.body(); + + options = options || {}; + + var mixin = options.template ? { template: true } : {}, + instances = [], + self = this; + + // First scan for any <script type=dojo/require> nodes, and execute. + // Then scan for all nodes with data-dojo-type, and load any unloaded modules. + // Then build the object instances. Add instances to already existing (but empty) instances[] array, + // which may already have been returned to caller. Also, use otherwise to collect and throw any errors + // that occur during the parse(). + var p = + this._scanAmd(root, options).then(function(){ + return self.scan(root, options); + }).then(function(parsedNodes){ + return self._instantiate(parsedNodes, mixin, options, true); + }).then(function(_instances){ + // Copy the instances into the instances[] array we declared above, and are accessing as + // our return value. + return instances = instances.concat(_instances); + }).otherwise(function(e){ + // TODO Modify to follow better pattern for promise error management when available + console.error("dojo/parser::parse() error", e); + throw e; + }); + + // Blend the array with the promise + dlang.mixin(instances, p); + return instances; + } + }; + + if( 1 ){ + dojo.parser = parser; + } + + // Register the parser callback. It should be the first callback + // after the a11y test. + if(config.parseOnLoad){ + ready(100, parser, "parse"); + } + + return parser; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/Promise.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/Promise.js new file mode 100644 index 00000000..0d61ca30 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/Promise.js @@ -0,0 +1,37 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/promise/Promise",["../_base/lang"],function(_1){ +"use strict"; +function _2(){ +throw new TypeError("abstract"); +}; +return _1.extend(function Promise(){ +},{then:function(_3,_4,_5){ +_2(); +},cancel:function(_6,_7){ +_2(); +},isResolved:function(){ +_2(); +},isRejected:function(){ +_2(); +},isFulfilled:function(){ +_2(); +},isCanceled:function(){ +_2(); +},always:function(_8){ +return this.then(_8,_8); +},otherwise:function(_9){ +return this.then(null,_9); +},trace:function(){ +return this; +},traceRejected:function(){ +return this; +},toString:function(){ +return "[object Promise]"; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/Promise.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/Promise.js.uncompressed.js new file mode 100644 index 00000000..eba0080f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/Promise.js.uncompressed.js @@ -0,0 +1,133 @@ +define("dojo/promise/Promise", [ + "../_base/lang" +], function(lang){ + "use strict"; + + // module: + // dojo/promise/Promise + + function throwAbstract(){ + throw new TypeError("abstract"); + } + + return lang.extend(function Promise(){ + // summary: + // The public interface to a deferred. + // description: + // The public interface to a deferred. All promises in Dojo are + // instances of this class. + }, { + then: function(callback, errback, progback){ + // summary: + // Add new callbacks to the promise. + // description: + // Add new callbacks to the deferred. Callbacks can be added + // before or after the deferred is fulfilled. + // callback: Function? + // Callback to be invoked when the promise is resolved. + // Receives the resolution value. + // errback: Function? + // Callback to be invoked when the promise is rejected. + // Receives the rejection error. + // progback: Function? + // Callback to be invoked when the promise emits a progress + // update. Receives the progress update. + // returns: dojo/promise/Promise + // Returns a new promise for the result of the callback(s). + // This can be used for chaining many asynchronous operations. + + throwAbstract(); + }, + + cancel: function(reason, strict){ + // summary: + // Inform the deferred it may cancel its asynchronous operation. + // description: + // Inform the deferred it may cancel its asynchronous operation. + // The deferred's (optional) canceler is invoked and the + // deferred will be left in a rejected state. Can affect other + // promises that originate with the same deferred. + // reason: any + // A message that may be sent to the deferred's canceler, + // explaining why it's being canceled. + // strict: Boolean? + // If strict, will throw an error if the deferred has already + // been fulfilled and consequently cannot be canceled. + // returns: any + // Returns the rejection reason if the deferred was canceled + // normally. + + throwAbstract(); + }, + + isResolved: function(){ + // summary: + // Checks whether the promise has been resolved. + // returns: Boolean + + throwAbstract(); + }, + + isRejected: function(){ + // summary: + // Checks whether the promise has been rejected. + // returns: Boolean + + throwAbstract(); + }, + + isFulfilled: function(){ + // summary: + // Checks whether the promise has been resolved or rejected. + // returns: Boolean + + throwAbstract(); + }, + + isCanceled: function(){ + // summary: + // Checks whether the promise has been canceled. + // returns: Boolean + + throwAbstract(); + }, + + always: function(callbackOrErrback){ + // summary: + // Add a callback to be invoked when the promise is resolved + // or rejected. + // callbackOrErrback: Function? + // A function that is used both as a callback and errback. + // returns: dojo/promise/Promise + // Returns a new promise for the result of the callback/errback. + + return this.then(callbackOrErrback, callbackOrErrback); + }, + + otherwise: function(errback){ + // summary: + // Add new errbacks to the promise. + // errback: Function? + // Callback to be invoked when the promise is rejected. + // returns: dojo/promise/Promise + // Returns a new promise for the result of the errback. + + return this.then(null, errback); + }, + + trace: function(){ + return this; + }, + + traceRejected: function(){ + return this; + }, + + toString: function(){ + // returns: string + // Returns `[object Promise]`. + + return "[object Promise]"; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/all.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/all.js new file mode 100644 index 00000000..fcf4fe68 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/all.js @@ -0,0 +1,60 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/promise/all",["../_base/array","../Deferred","../when"],function(_1,_2,_3){ +"use strict"; +var _4=_1.some; +return function all(_5){ +var _6,_1; +if(_5 instanceof Array){ +_1=_5; +}else{ +if(_5&&typeof _5==="object"){ +_6=_5; +} +} +var _7; +var _8=[]; +if(_6){ +_1=[]; +for(var _9 in _6){ +if(Object.hasOwnProperty.call(_6,_9)){ +_8.push(_9); +_1.push(_6[_9]); +} +} +_7={}; +}else{ +if(_1){ +_7=[]; +} +} +if(!_1||!_1.length){ +return new _2().resolve(_7); +} +var _a=new _2(); +_a.promise.always(function(){ +_7=_8=null; +}); +var _b=_1.length; +_4(_1,function(_c,_d){ +if(!_6){ +_8.push(_d); +} +_3(_c,function(_e){ +if(!_a.isFulfilled()){ +_7[_8[_d]]=_e; +if(--_b===0){ +_a.resolve(_7); +} +} +},_a.reject); +return _a.isFulfilled(); +}); +return _a.promise; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/all.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/all.js.uncompressed.js new file mode 100644 index 00000000..8c75ea82 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/all.js.uncompressed.js @@ -0,0 +1,76 @@ +define("dojo/promise/all", [ + "../_base/array", + "../Deferred", + "../when" +], function(array, Deferred, when){ + "use strict"; + + // module: + // dojo/promise/all + + var some = array.some; + + return function all(objectOrArray){ + // summary: + // Takes multiple promises and returns a new promise that is fulfilled + // when all promises have been resolved or one has been rejected. + // description: + // Takes multiple promises and returns a new promise that is fulfilled + // when all promises have been resolved or one has been rejected. If one of + // the promises is rejected, the returned promise is also rejected. Canceling + // the returned promise will *not* cancel any passed promises. + // objectOrArray: Object|Array? + // The promise will be fulfilled with a list of results if invoked with an + // array, or an object of results when passed an object (using the same + // keys). If passed neither an object or array it is resolved with an + // undefined value. + // returns: dojo/promise/Promise + + var object, array; + if(objectOrArray instanceof Array){ + array = objectOrArray; + }else if(objectOrArray && typeof objectOrArray === "object"){ + object = objectOrArray; + } + + var results; + var keyLookup = []; + if(object){ + array = []; + for(var key in object){ + if(Object.hasOwnProperty.call(object, key)){ + keyLookup.push(key); + array.push(object[key]); + } + } + results = {}; + }else if(array){ + results = []; + } + + if(!array || !array.length){ + return new Deferred().resolve(results); + } + + var deferred = new Deferred(); + deferred.promise.always(function(){ + results = keyLookup = null; + }); + var waiting = array.length; + some(array, function(valueOrPromise, index){ + if(!object){ + keyLookup.push(index); + } + when(valueOrPromise, function(value){ + if(!deferred.isFulfilled()){ + results[keyLookup[index]] = value; + if(--waiting === 0){ + deferred.resolve(results); + } + } + }, deferred.reject); + return deferred.isFulfilled(); + }); + return deferred.promise; // dojo/promise/Promise + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/first.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/first.js new file mode 100644 index 00000000..1cc85d8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/first.js @@ -0,0 +1,34 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/promise/first",["../_base/array","../Deferred","../when"],function(_1,_2,_3){ +"use strict"; +var _4=_1.forEach; +return function first(_5){ +var _6; +if(_5 instanceof Array){ +_6=_5; +}else{ +if(_5&&typeof _5==="object"){ +_6=[]; +for(var _7 in _5){ +if(Object.hasOwnProperty.call(_5,_7)){ +_6.push(_5[_7]); +} +} +} +} +if(!_6||!_6.length){ +return new _2().resolve(); +} +var _8=new _2(); +_4(_6,function(_9){ +_3(_9,_8.resolve,_8.reject); +}); +return _8.promise; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/first.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/first.js.uncompressed.js new file mode 100644 index 00000000..863573fa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/first.js.uncompressed.js @@ -0,0 +1,49 @@ +define("dojo/promise/first", [ + "../_base/array", + "../Deferred", + "../when" +], function(array, Deferred, when){ + "use strict"; + + // module: + // dojo/promise/first + + var forEach = array.forEach; + + return function first(objectOrArray){ + // summary: + // Takes multiple promises and returns a new promise that is fulfilled + // when the first of these promises is fulfilled. + // description: + // Takes multiple promises and returns a new promise that is fulfilled + // when the first of these promises is fulfilled. Canceling the returned + // promise will *not* cancel any passed promises. The promise will be + // fulfilled with the value of the first fulfilled promise. + // objectOrArray: Object|Array? + // The promises are taken from the array or object values. If no value + // is passed, the returned promise is resolved with an undefined value. + // returns: dojo/promise/Promise + + var array; + if(objectOrArray instanceof Array){ + array = objectOrArray; + }else if(objectOrArray && typeof objectOrArray === "object"){ + array = []; + for(var key in objectOrArray){ + if(Object.hasOwnProperty.call(objectOrArray, key)){ + array.push(objectOrArray[key]); + } + } + } + + if(!array || !array.length){ + return new Deferred().resolve(); + } + + var deferred = new Deferred(); + forEach(array, function(valueOrPromise){ + when(valueOrPromise, deferred.resolve, deferred.reject); + }); + return deferred.promise; // dojo/promise/Promise + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/instrumentation.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/instrumentation.js new file mode 100644 index 00000000..4612c5fa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/instrumentation.js @@ -0,0 +1,87 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/promise/instrumentation",["./tracer","../has","../_base/lang","../_base/array"],function(_1,_2,_3,_4){ +_2.add("config-useDeferredInstrumentation","report-unhandled-rejections"); +function _5(_6,_7,_8){ +var _9=""; +if(_6&&_6.stack){ +_9+=_6.stack; +} +if(_7&&_7.stack){ +_9+="\n ----------------------------------------\n rejected"+_7.stack.split("\n").slice(1).join("\n").replace(/^\s+/," "); +} +if(_8&&_8.stack){ +_9+="\n ----------------------------------------\n"+_8.stack; +} +console.error(_6,_9); +}; +function _a(_b,_c,_d,_e){ +if(!_c){ +_5(_b,_d,_e); +} +}; +var _f=[]; +var _10=false; +var _11=1000; +function _12(_13,_14,_15,_16){ +if(!_4.some(_f,function(obj){ +if(obj.error===_13){ +if(_14){ +obj.handled=true; +} +return true; +} +})){ +_f.push({error:_13,rejection:_15,handled:_14,deferred:_16,timestamp:new Date().getTime()}); +} +if(!_10){ +_10=setTimeout(_17,_11); +} +}; +function _17(){ +var now=new Date().getTime(); +var _18=now-_11; +_f=_4.filter(_f,function(obj){ +if(obj.timestamp<_18){ +if(!obj.handled){ +_5(obj.error,obj.rejection,obj.deferred); +} +return false; +} +return true; +}); +if(_f.length){ +_10=setTimeout(_17,_f[0].timestamp+_11-now); +}else{ +_10=false; +} +}; +return function(_19){ +var _1a=_2("config-useDeferredInstrumentation"); +if(_1a){ +_1.on("resolved",_3.hitch(console,"log","resolved")); +_1.on("rejected",_3.hitch(console,"log","rejected")); +_1.on("progress",_3.hitch(console,"log","progress")); +var _1b=[]; +if(typeof _1a==="string"){ +_1b=_1a.split(","); +_1a=_1b.shift(); +} +if(_1a==="report-rejections"){ +_19.instrumentRejected=_a; +}else{ +if(_1a==="report-unhandled-rejections"||_1a===true||_1a===1){ +_19.instrumentRejected=_12; +_11=parseInt(_1b[0],10)||_11; +}else{ +throw new Error("Unsupported instrumentation usage <"+_1a+">"); +} +} +} +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/instrumentation.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/instrumentation.js.uncompressed.js new file mode 100644 index 00000000..7ad3a379 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/instrumentation.js.uncompressed.js @@ -0,0 +1,116 @@ +define("dojo/promise/instrumentation", [ + "./tracer", + "../has", + "../_base/lang", + "../_base/array" +], function(tracer, has, lang, arrayUtil){ + has.add("config-useDeferredInstrumentation", "report-unhandled-rejections"); + + function logError(error, rejection, deferred){ + var stack = ""; + if(error && error.stack){ + stack += error.stack; + } + if(rejection && rejection.stack){ + stack += "\n ----------------------------------------\n rejected" + rejection.stack.split("\n").slice(1).join("\n").replace(/^\s+/, " "); + } + if(deferred && deferred.stack){ + stack += "\n ----------------------------------------\n" + deferred.stack; + } + console.error(error, stack); + } + + function reportRejections(error, handled, rejection, deferred){ + if(!handled){ + logError(error, rejection, deferred); + } + } + + var errors = []; + var activeTimeout = false; + var unhandledWait = 1000; + function trackUnhandledRejections(error, handled, rejection, deferred){ + // try to find the existing tracking object + if(!arrayUtil.some(errors, function(obj){ + if(obj.error === error){ + // found the tracking object for this error + if(handled){ + // if handled, update the state + obj.handled = true; + } + return true; + } + })){ + // no tracking object has been setup, create one + errors.push({ + error: error, + rejection: rejection, + handled: handled, + deferred: deferred, + timestamp: new Date().getTime() + }); + } + + if(!activeTimeout){ + activeTimeout = setTimeout(logRejected, unhandledWait); + } + } + + function logRejected(){ + var now = new Date().getTime(); + var reportBefore = now - unhandledWait; + errors = arrayUtil.filter(errors, function(obj){ + // only report the error if we have waited long enough and + // it hasn't been handled + if(obj.timestamp < reportBefore){ + if(!obj.handled){ + logError(obj.error, obj.rejection, obj.deferred); + } + return false; + } + return true; + }); + + if(errors.length){ + activeTimeout = setTimeout(logRejected, errors[0].timestamp + unhandledWait - now); + }else{ + activeTimeout = false; + } + } + + return function(Deferred){ + // summary: + // Initialize instrumentation for the Deferred class. + // description: + // Initialize instrumentation for the Deferred class. + // Done automatically by `dojo/Deferred` if the + // `deferredInstrumentation` and `useDeferredInstrumentation` + // config options are set. + // + // Sets up `dojo/promise/tracer` to log to the console. + // + // Sets up instrumentation of rejected deferreds so unhandled + // errors are logged to the console. + + var usage = has("config-useDeferredInstrumentation"); + if(usage){ + tracer.on("resolved", lang.hitch(console, "log", "resolved")); + tracer.on("rejected", lang.hitch(console, "log", "rejected")); + tracer.on("progress", lang.hitch(console, "log", "progress")); + + var args = []; + if(typeof usage === "string"){ + args = usage.split(","); + usage = args.shift(); + } + if(usage === "report-rejections"){ + Deferred.instrumentRejected = reportRejections; + }else if(usage === "report-unhandled-rejections" || usage === true || usage === 1){ + Deferred.instrumentRejected = trackUnhandledRejections; + unhandledWait = parseInt(args[0], 10) || unhandledWait; + }else{ + throw new Error("Unsupported instrumentation usage <" + usage + ">"); + } + } + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/tracer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/tracer.js new file mode 100644 index 00000000..9cbce2d6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/tracer.js @@ -0,0 +1,37 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/promise/tracer",["../_base/lang","./Promise","../Evented"],function(_1,_2,_3){ +"use strict"; +var _4=new _3; +var _5=_4.emit; +_4.emit=null; +function _6(_7){ +setTimeout(function(){ +_5.apply(_4,_7); +},0); +}; +_2.prototype.trace=function(){ +var _8=_1._toArray(arguments); +this.then(function(_9){ +_6(["resolved",_9].concat(_8)); +},function(_a){ +_6(["rejected",_a].concat(_8)); +},function(_b){ +_6(["progress",_b].concat(_8)); +}); +return this; +}; +_2.prototype.traceRejected=function(){ +var _c=_1._toArray(arguments); +this.otherwise(function(_d){ +_6(["rejected",_d].concat(_c)); +}); +return this; +}; +return _4; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/tracer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/tracer.js.uncompressed.js new file mode 100644 index 00000000..b5380cc3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/promise/tracer.js.uncompressed.js @@ -0,0 +1,85 @@ +define("dojo/promise/tracer", [ + "../_base/lang", + "./Promise", + "../Evented" +], function(lang, Promise, Evented){ + "use strict"; + + // module: + // dojo/promise/tracer + + /*===== + return { + // summary: + // Trace promise fulfillment. + // description: + // Trace promise fulfillment. Calling `.trace()` or `.traceError()` on a + // promise enables tracing. Will emit `resolved`, `rejected` or `progress` + // events. + + on: function(type, listener){ + // summary: + // Subscribe to traces. + // description: + // See `dojo/Evented#on()`. + // type: String + // `resolved`, `rejected`, or `progress` + // listener: Function + // The listener is passed the traced value and any arguments + // that were used with the `.trace()` call. + } + }; + =====*/ + + var evented = new Evented; + var emit = evented.emit; + evented.emit = null; + // Emit events asynchronously since they should not change the promise state. + function emitAsync(args){ + setTimeout(function(){ + emit.apply(evented, args); + }, 0); + } + + Promise.prototype.trace = function(){ + // summary: + // Trace the promise. + // description: + // Tracing allows you to transparently log progress, + // resolution and rejection of promises, without affecting the + // promise itself. Any arguments passed to `trace()` are + // emitted in trace events. See `dojo/promise/tracer` on how + // to handle traces. + // returns: dojo/promise/Promise + // The promise instance `trace()` is called on. + + var args = lang._toArray(arguments); + this.then( + function(value){ emitAsync(["resolved", value].concat(args)); }, + function(error){ emitAsync(["rejected", error].concat(args)); }, + function(update){ emitAsync(["progress", update].concat(args)); } + ); + return this; + }; + + Promise.prototype.traceRejected = function(){ + // summary: + // Trace rejection of the promise. + // description: + // Tracing allows you to transparently log progress, + // resolution and rejection of promises, without affecting the + // promise itself. Any arguments passed to `trace()` are + // emitted in trace events. See `dojo/promise/tracer` on how + // to handle traces. + // returns: dojo/promise/Promise + // The promise instance `traceRejected()` is called on. + + var args = lang._toArray(arguments); + this.otherwise(function(error){ + emitAsync(["rejected", error].concat(args)); + }); + return this; + }; + + return evented; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/query.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/query.js new file mode 100644 index 00000000..71987ba2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/query.js @@ -0,0 +1,195 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/query",["./_base/kernel","./has","./dom","./on","./_base/array","./_base/lang","./selector/_loader","./selector/_loader!default"],function(_1,_2,_3,on,_4,_5,_6,_7){ +"use strict"; +_2.add("array-extensible",function(){ +return _5.delegate([],{length:1}).length==1&&!_2("bug-for-in-skips-shadowed"); +}); +var ap=Array.prototype,_8=ap.slice,_9=ap.concat,_a=_4.forEach; +var _b=function(a,_c,_d){ +var _e=new (_d||this._NodeListCtor||nl)(a); +return _c?_e._stash(_c):_e; +}; +var _f=function(f,a,o){ +a=[0].concat(_8.call(a,0)); +o=o||_1.global; +return function(_10){ +a[0]=_10; +return f.apply(o,a); +}; +}; +var _11=function(f,o){ +return function(){ +this.forEach(_f(f,arguments,o)); +return this; +}; +}; +var _12=function(f,o){ +return function(){ +return this.map(_f(f,arguments,o)); +}; +}; +var _13=function(f,o){ +return function(){ +return this.filter(_f(f,arguments,o)); +}; +}; +var _14=function(f,g,o){ +return function(){ +var a=arguments,_15=_f(f,a,o); +if(g.call(o||_1.global,a)){ +return this.map(_15); +} +this.forEach(_15); +return this; +}; +}; +var _16=function(_17){ +var _18=this instanceof nl&&_2("array-extensible"); +if(typeof _17=="number"){ +_17=Array(_17); +} +var _19=(_17&&"length" in _17)?_17:arguments; +if(_18||!_19.sort){ +var _1a=_18?this:[],l=_1a.length=_19.length; +for(var i=0;i<l;i++){ +_1a[i]=_19[i]; +} +if(_18){ +return _1a; +} +_19=_1a; +} +_5._mixin(_19,nlp); +_19._NodeListCtor=function(_1b){ +return nl(_1b); +}; +return _19; +}; +var nl=_16,nlp=nl.prototype=_2("array-extensible")?[]:{}; +nl._wrap=nlp._wrap=_b; +nl._adaptAsMap=_12; +nl._adaptAsForEach=_11; +nl._adaptAsFilter=_13; +nl._adaptWithCondition=_14; +_a(["slice","splice"],function(_1c){ +var f=ap[_1c]; +nlp[_1c]=function(){ +return this._wrap(f.apply(this,arguments),_1c=="slice"?this:null); +}; +}); +_a(["indexOf","lastIndexOf","every","some"],function(_1d){ +var f=_4[_1d]; +nlp[_1d]=function(){ +return f.apply(_1,[this].concat(_8.call(arguments,0))); +}; +}); +_5.extend(_16,{constructor:nl,_NodeListCtor:nl,toString:function(){ +return this.join(","); +},_stash:function(_1e){ +this._parent=_1e; +return this; +},on:function(_1f,_20){ +var _21=this.map(function(_22){ +return on(_22,_1f,_20); +}); +_21.remove=function(){ +for(var i=0;i<_21.length;i++){ +_21[i].remove(); +} +}; +return _21; +},end:function(){ +if(this._parent){ +return this._parent; +}else{ +return new this._NodeListCtor(0); +} +},concat:function(_23){ +var t=_8.call(this,0),m=_4.map(arguments,function(a){ +return _8.call(a,0); +}); +return this._wrap(_9.apply(t,m),this); +},map:function(_24,obj){ +return this._wrap(_4.map(this,_24,obj),this); +},forEach:function(_25,_26){ +_a(this,_25,_26); +return this; +},filter:function(_27){ +var a=arguments,_28=this,_29=0; +if(typeof _27=="string"){ +_28=_2a._filterResult(this,a[0]); +if(a.length==1){ +return _28._stash(this); +} +_29=1; +} +return this._wrap(_4.filter(_28,a[_29],a[_29+1]),this); +},instantiate:function(_2b,_2c){ +var c=_5.isFunction(_2b)?_2b:_5.getObject(_2b); +_2c=_2c||{}; +return this.forEach(function(_2d){ +new c(_2c,_2d); +}); +},at:function(){ +var t=new this._NodeListCtor(0); +_a(arguments,function(i){ +if(i<0){ +i=this.length+i; +} +if(this[i]){ +t.push(this[i]); +} +},this); +return t._stash(this); +}}); +function _2e(_2f,_30){ +var _31=function(_32,_33){ +if(typeof _33=="string"){ +_33=_3.byId(_33); +if(!_33){ +return new _30([]); +} +} +var _34=typeof _32=="string"?_2f(_32,_33):_32?(_32.end&&_32.on)?_32:[_32]:[]; +if(_34.end&&_34.on){ +return _34; +} +return new _30(_34); +}; +_31.matches=_2f.match||function(_35,_36,_37){ +return _31.filter([_35],_36,_37).length>0; +}; +_31.filter=_2f.filter||function(_38,_39,_3a){ +return _31(_39,_3a).filter(function(_3b){ +return _4.indexOf(_38,_3b)>-1; +}); +}; +if(typeof _2f!="function"){ +var _3c=_2f.search; +_2f=function(_3d,_3e){ +return _3c(_3e||document,_3d); +}; +} +return _31; +}; +var _2a=_2e(_7,_16); +_1.query=_2e(_7,function(_3f){ +return _16(_3f); +}); +_2a.load=function(id,_40,_41){ +_6.load(id,_40,function(_42){ +_41(_2e(_42,_16)); +}); +}; +_1._filterQueryResult=_2a._filterResult=function(_43,_44,_45){ +return new _16(_2a.filter(_43,_44,_45)); +}; +_1.NodeList=_2a.NodeList=_16; +return _2a; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/query.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/query.js.uncompressed.js new file mode 100644 index 00000000..88cc725e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/query.js.uncompressed.js @@ -0,0 +1,712 @@ +define("dojo/query", ["./_base/kernel", "./has", "./dom", "./on", "./_base/array", "./_base/lang", "./selector/_loader", "./selector/_loader!default"], + function(dojo, has, dom, on, array, lang, loader, defaultEngine){ + + "use strict"; + + has.add("array-extensible", function(){ + // test to see if we can extend an array (not supported in old IE) + return lang.delegate([], {length: 1}).length == 1 && !has("bug-for-in-skips-shadowed"); + }); + + var ap = Array.prototype, aps = ap.slice, apc = ap.concat, forEach = array.forEach; + + var tnl = function(/*Array*/ a, /*dojo/NodeList?*/ parent, /*Function?*/ NodeListCtor){ + // summary: + // decorate an array to make it look like a `dojo/NodeList`. + // a: + // Array of nodes to decorate. + // parent: + // An optional parent NodeList that generated the current + // list of nodes. Used to call _stash() so the parent NodeList + // can be accessed via end() later. + // NodeListCtor: + // An optional constructor function to use for any + // new NodeList calls. This allows a certain chain of + // NodeList calls to use a different object than dojo/NodeList. + var nodeList = new (NodeListCtor || this._NodeListCtor || nl)(a); + return parent ? nodeList._stash(parent) : nodeList; + }; + + var loopBody = function(f, a, o){ + a = [0].concat(aps.call(a, 0)); + o = o || dojo.global; + return function(node){ + a[0] = node; + return f.apply(o, a); + }; + }; + + // adapters + + var adaptAsForEach = function(f, o){ + // summary: + // adapts a single node function to be used in the forEach-type + // actions. The initial object is returned from the specialized + // function. + // f: Function + // a function to adapt + // o: Object? + // an optional context for f + return function(){ + this.forEach(loopBody(f, arguments, o)); + return this; // Object + }; + }; + + var adaptAsMap = function(f, o){ + // summary: + // adapts a single node function to be used in the map-type + // actions. The return is a new array of values, as via `dojo/_base/array.map` + // f: Function + // a function to adapt + // o: Object? + // an optional context for f + return function(){ + return this.map(loopBody(f, arguments, o)); + }; + }; + + var adaptAsFilter = function(f, o){ + // summary: + // adapts a single node function to be used in the filter-type actions + // f: Function + // a function to adapt + // o: Object? + // an optional context for f + return function(){ + return this.filter(loopBody(f, arguments, o)); + }; + }; + + var adaptWithCondition = function(f, g, o){ + // summary: + // adapts a single node function to be used in the map-type + // actions, behaves like forEach() or map() depending on arguments + // f: Function + // a function to adapt + // g: Function + // a condition function, if true runs as map(), otherwise runs as forEach() + // o: Object? + // an optional context for f and g + return function(){ + var a = arguments, body = loopBody(f, a, o); + if(g.call(o || dojo.global, a)){ + return this.map(body); // self + } + this.forEach(body); + return this; // self + }; + }; + + var NodeList = function(array){ + // summary: + // Array-like object which adds syntactic + // sugar for chaining, common iteration operations, animation, and + // node manipulation. NodeLists are most often returned as the + // result of dojo/query() calls. + // description: + // NodeList instances provide many utilities that reflect + // core Dojo APIs for Array iteration and manipulation, DOM + // manipulation, and event handling. Instead of needing to dig up + // functions in the dojo package, NodeLists generally make the + // full power of Dojo available for DOM manipulation tasks in a + // simple, chainable way. + // example: + // create a node list from a node + // | require(["dojo/query", "dojo/dom" + // | ], function(query, dom){ + // | query.NodeList(dom.byId("foo")); + // | }); + // example: + // get a NodeList from a CSS query and iterate on it + // | require(["dojo/on", "dojo/dom" + // | ], function(on, dom){ + // | var l = query(".thinger"); + // | l.forEach(function(node, index, nodeList){ + // | console.log(index, node.innerHTML); + // | }); + // | }); + // example: + // use native and Dojo-provided array methods to manipulate a + // NodeList without needing to use dojo.* functions explicitly: + // | require(["dojo/query", "dojo/dom-construct", "dojo/dom" + // | ], function(query, domConstruct, dom){ + // | var l = query(".thinger"); + // | // since NodeLists are real arrays, they have a length + // | // property that is both readable and writable and + // | // push/pop/shift/unshift methods + // | console.log(l.length); + // | l.push(domConstruct.create("span")); + // | + // | // dojo's normalized array methods work too: + // | console.log( l.indexOf(dom.byId("foo")) ); + // | // ...including the special "function as string" shorthand + // | console.log( l.every("item.nodeType == 1") ); + // | + // | // NodeLists can be [..] indexed, or you can use the at() + // | // function to get specific items wrapped in a new NodeList: + // | var node = l[3]; // the 4th element + // | var newList = l.at(1, 3); // the 2nd and 4th elements + // | }); + // example: + // chainability is a key advantage of NodeLists: + // | require(["dojo/query", "dojo/NodeList-dom" + // | ], function(query){ + // | query(".thinger") + // | .onclick(function(e){ /* ... */ }) + // | .at(1, 3, 8) // get a subset + // | .style("padding", "5px") + // | .forEach(console.log); + // | }); + + var isNew = this instanceof nl && has("array-extensible"); + if(typeof array == "number"){ + array = Array(array); + } + var nodeArray = (array && "length" in array) ? array : arguments; + if(isNew || !nodeArray.sort){ + // make sure it's a real array before we pass it on to be wrapped + var target = isNew ? this : [], + l = target.length = nodeArray.length; + for(var i = 0; i < l; i++){ + target[i] = nodeArray[i]; + } + if(isNew){ + // called with new operator, this means we are going to use this instance and push + // the nodes on to it. This is usually much faster since the NodeList properties + // don't need to be copied (unless the list of nodes is extremely large). + return target; + } + nodeArray = target; + } + // called without new operator, use a real array and copy prototype properties, + // this is slower and exists for back-compat. Should be removed in 2.0. + lang._mixin(nodeArray, nlp); + nodeArray._NodeListCtor = function(array){ + // call without new operator to preserve back-compat behavior + return nl(array); + }; + return nodeArray; + }; + + var nl = NodeList, nlp = nl.prototype = + has("array-extensible") ? [] : {};// extend an array if it is extensible + + // expose adapters and the wrapper as private functions + + nl._wrap = nlp._wrap = tnl; + nl._adaptAsMap = adaptAsMap; + nl._adaptAsForEach = adaptAsForEach; + nl._adaptAsFilter = adaptAsFilter; + nl._adaptWithCondition = adaptWithCondition; + + // mass assignment + + // add array redirectors + forEach(["slice", "splice"], function(name){ + var f = ap[name]; + //Use a copy of the this array via this.slice() to allow .end() to work right in the splice case. + // CANNOT apply ._stash()/end() to splice since it currently modifies + // the existing this array -- it would break backward compatibility if we copy the array before + // the splice so that we can use .end(). So only doing the stash option to this._wrap for slice. + nlp[name] = function(){ return this._wrap(f.apply(this, arguments), name == "slice" ? this : null); }; + }); + // concat should be here but some browsers with native NodeList have problems with it + + // add array.js redirectors + forEach(["indexOf", "lastIndexOf", "every", "some"], function(name){ + var f = array[name]; + nlp[name] = function(){ return f.apply(dojo, [this].concat(aps.call(arguments, 0))); }; + }); + + lang.extend(NodeList, { + // copy the constructors + constructor: nl, + _NodeListCtor: nl, + toString: function(){ + // Array.prototype.toString can't be applied to objects, so we use join + return this.join(","); + }, + _stash: function(parent){ + // summary: + // private function to hold to a parent NodeList. end() to return the parent NodeList. + // + // example: + // How to make a `dojo/NodeList` method that only returns the third node in + // the dojo/NodeList but allows access to the original NodeList by using this._stash: + // | require(["dojo/query", "dojo/_base/lang", "dojo/NodeList", "dojo/NodeList-dom" + // | ], function(query, lang){ + // | lang.extend(NodeList, { + // | third: function(){ + // | var newNodeList = NodeList(this[2]); + // | return newNodeList._stash(this); + // | } + // | }); + // | // then see how _stash applies a sub-list, to be .end()'ed out of + // | query(".foo") + // | .third() + // | .addClass("thirdFoo") + // | .end() + // | // access to the orig .foo list + // | .removeClass("foo") + // | }); + // + this._parent = parent; + return this; // dojo/NodeList + }, + + on: function(eventName, listener){ + // summary: + // Listen for events on the nodes in the NodeList. Basic usage is: + // + // example: + // | require(["dojo/query" + // | ], function(query){ + // | query(".my-class").on("click", listener); + // This supports event delegation by using selectors as the first argument with the event names as + // pseudo selectors. For example: + // | query("#my-list").on("li:click", listener); + // This will listen for click events within `<li>` elements that are inside the `#my-list` element. + // Because on supports CSS selector syntax, we can use comma-delimited events as well: + // | query("#my-list").on("li button:mouseover, li:click", listener); + // | }); + var handles = this.map(function(node){ + return on(node, eventName, listener); // TODO: apply to the NodeList so the same selector engine is used for matches + }); + handles.remove = function(){ + for(var i = 0; i < handles.length; i++){ + handles[i].remove(); + } + }; + return handles; + }, + + end: function(){ + // summary: + // Ends use of the current `NodeList` by returning the previous NodeList + // that generated the current NodeList. + // description: + // Returns the `NodeList` that generated the current `NodeList`. If there + // is no parent NodeList, an empty NodeList is returned. + // example: + // | require(["dojo/query", "dojo/NodeList-dom" + // | ], function(query){ + // | query("a") + // | .filter(".disabled") + // | // operate on the anchors that only have a disabled class + // | .style("color", "grey") + // | .end() + // | // jump back to the list of anchors + // | .style(...) + // | }); + // + if(this._parent){ + return this._parent; + }else{ + //Just return empty list. + return new this._NodeListCtor(0); + } + }, + + // http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Array#Methods + + // FIXME: handle return values for #3244 + // http://trac.dojotoolkit.org/ticket/3244 + + // FIXME: + // need to wrap or implement: + // join (perhaps w/ innerHTML/outerHTML overload for toString() of items?) + // reduce + // reduceRight + + /*===== + slice: function(begin, end){ + // summary: + // Returns a new NodeList, maintaining this one in place + // description: + // This method behaves exactly like the Array.slice method + // with the caveat that it returns a `dojo/NodeList` and not a + // raw Array. For more details, see Mozilla's [slice + // documentation](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/slice) + // begin: Integer + // Can be a positive or negative integer, with positive + // integers noting the offset to begin at, and negative + // integers denoting an offset from the end (i.e., to the left + // of the end) + // end: Integer? + // Optional parameter to describe what position relative to + // the NodeList's zero index to end the slice at. Like begin, + // can be positive or negative. + return this._wrap(a.slice.apply(this, arguments)); + }, + + splice: function(index, howmany, item){ + // summary: + // Returns a new NodeList, manipulating this NodeList based on + // the arguments passed, potentially splicing in new elements + // at an offset, optionally deleting elements + // description: + // This method behaves exactly like the Array.splice method + // with the caveat that it returns a `dojo/NodeList` and not a + // raw Array. For more details, see Mozilla's [splice + // documentation](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/splice) + // For backwards compatibility, calling .end() on the spliced NodeList + // does not return the original NodeList -- splice alters the NodeList in place. + // index: Integer + // begin can be a positive or negative integer, with positive + // integers noting the offset to begin at, and negative + // integers denoting an offset from the end (i.e., to the left + // of the end) + // howmany: Integer? + // Optional parameter to describe what position relative to + // the NodeList's zero index to end the slice at. Like begin, + // can be positive or negative. + // item: Object...? + // Any number of optional parameters may be passed in to be + // spliced into the NodeList + return this._wrap(a.splice.apply(this, arguments)); // dojo/NodeList + }, + + indexOf: function(value, fromIndex){ + // summary: + // see `dojo/_base/array.indexOf()`. The primary difference is that the acted-on + // array is implicitly this NodeList + // value: Object + // The value to search for. + // fromIndex: Integer? + // The location to start searching from. Optional. Defaults to 0. + // description: + // For more details on the behavior of indexOf, see Mozilla's + // [indexOf + // docs](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf) + // returns: + // Positive Integer or 0 for a match, -1 of not found. + return d.indexOf(this, value, fromIndex); // Integer + }, + + lastIndexOf: function(value, fromIndex){ + // summary: + // see `dojo/_base/array.lastIndexOf()`. The primary difference is that the + // acted-on array is implicitly this NodeList + // description: + // For more details on the behavior of lastIndexOf, see + // Mozilla's [lastIndexOf + // docs](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/lastIndexOf) + // value: Object + // The value to search for. + // fromIndex: Integer? + // The location to start searching from. Optional. Defaults to 0. + // returns: + // Positive Integer or 0 for a match, -1 of not found. + return d.lastIndexOf(this, value, fromIndex); // Integer + }, + + every: function(callback, thisObject){ + // summary: + // see `dojo/_base/array.every()` and the [Array.every + // docs](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/every). + // Takes the same structure of arguments and returns as + // dojo/_base/array.every() with the caveat that the passed array is + // implicitly this NodeList + // callback: Function + // the callback + // thisObject: Object? + // the context + return d.every(this, callback, thisObject); // Boolean + }, + + some: function(callback, thisObject){ + // summary: + // Takes the same structure of arguments and returns as + // `dojo/_base/array.some()` with the caveat that the passed array is + // implicitly this NodeList. See `dojo/_base/array.some()` and Mozilla's + // [Array.some + // documentation](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/some). + // callback: Function + // the callback + // thisObject: Object? + // the context + return d.some(this, callback, thisObject); // Boolean + }, + =====*/ + + concat: function(item){ + // summary: + // Returns a new NodeList comprised of items in this NodeList + // as well as items passed in as parameters + // description: + // This method behaves exactly like the Array.concat method + // with the caveat that it returns a `NodeList` and not a + // raw Array. For more details, see the [Array.concat + // docs](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/concat) + // item: Object? + // Any number of optional parameters may be passed in to be + // spliced into the NodeList + + //return this._wrap(apc.apply(this, arguments)); + // the line above won't work for the native NodeList, or for Dojo NodeLists either :-( + + // implementation notes: + // Array.concat() doesn't recognize native NodeLists or Dojo NodeLists + // as arrays, and so does not inline them into a unioned array, but + // appends them as single entities. Both the original NodeList and the + // items passed in as parameters must be converted to raw Arrays + // and then the concatenation result may be re-_wrap()ed as a Dojo NodeList. + + var t = aps.call(this, 0), + m = array.map(arguments, function(a){ + return aps.call(a, 0); + }); + return this._wrap(apc.apply(t, m), this); // dojo/NodeList + }, + + map: function(/*Function*/ func, /*Function?*/ obj){ + // summary: + // see `dojo/_base/array.map()`. The primary difference is that the acted-on + // array is implicitly this NodeList and the return is a + // NodeList (a subclass of Array) + return this._wrap(array.map(this, func, obj), this); // dojo/NodeList + }, + + forEach: function(callback, thisObj){ + // summary: + // see `dojo/_base/array.forEach()`. The primary difference is that the acted-on + // array is implicitly this NodeList. If you want the option to break out + // of the forEach loop, use every() or some() instead. + forEach(this, callback, thisObj); + // non-standard return to allow easier chaining + return this; // dojo/NodeList + }, + filter: function(/*String|Function*/ filter){ + // summary: + // "masks" the built-in javascript filter() method (supported + // in Dojo via `dojo/_base/array.filter`) to support passing a simple + // string filter in addition to supporting filtering function + // objects. + // filter: + // If a string, a CSS rule like ".thinger" or "div > span". + // example: + // "regular" JS filter syntax as exposed in `dojo/_base/array.filter`: + // | require(["dojo/query", "dojo/NodeList-dom" + // | ], function(query){ + // | query("*").filter(function(item){ + // | // highlight every paragraph + // | return (item.nodeName == "p"); + // | }).style("backgroundColor", "yellow"); + // | }); + // example: + // the same filtering using a CSS selector + // | require(["dojo/query", "dojo/NodeList-dom" + // | ], function(query){ + // | query("*").filter("p").styles("backgroundColor", "yellow"); + // | }); + + var a = arguments, items = this, start = 0; + if(typeof filter == "string"){ // inline'd type check + items = query._filterResult(this, a[0]); + if(a.length == 1){ + // if we only got a string query, pass back the filtered results + return items._stash(this); // dojo/NodeList + } + // if we got a callback, run it over the filtered items + start = 1; + } + return this._wrap(array.filter(items, a[start], a[start + 1]), this); // dojo/NodeList + }, + instantiate: function(/*String|Object*/ declaredClass, /*Object?*/ properties){ + // summary: + // Create a new instance of a specified class, using the + // specified properties and each node in the NodeList as a + // srcNodeRef. + // example: + // Grabs all buttons in the page and converts them to dijit/form/Button's. + // | var buttons = query("button").instantiate(Button, {showLabel: true}); + var c = lang.isFunction(declaredClass) ? declaredClass : lang.getObject(declaredClass); + properties = properties || {}; + return this.forEach(function(node){ + new c(properties, node); + }); // dojo/NodeList + }, + at: function(/*===== index =====*/){ + // summary: + // Returns a new NodeList comprised of items in this NodeList + // at the given index or indices. + // + // index: Integer... + // One or more 0-based indices of items in the current + // NodeList. A negative index will start at the end of the + // list and go backwards. + // + // example: + // Shorten the list to the first, second, and third elements + // | require(["dojo/query" + // | ], function(query){ + // | query("a").at(0, 1, 2).forEach(fn); + // | }); + // + // example: + // Retrieve the first and last elements of a unordered list: + // | require(["dojo/query" + // | ], function(query){ + // | query("ul > li").at(0, -1).forEach(cb); + // | }); + // + // example: + // Do something for the first element only, but end() out back to + // the original list and continue chaining: + // | require(["dojo/query" + // | ], function(query){ + // | query("a").at(0).onclick(fn).end().forEach(function(n){ + // | console.log(n); // all anchors on the page. + // | }) + // | }); + + var t = new this._NodeListCtor(0); + forEach(arguments, function(i){ + if(i < 0){ i = this.length + i; } + if(this[i]){ t.push(this[i]); } + }, this); + return t._stash(this); // dojo/NodeList + } + }); + + function queryForEngine(engine, NodeList){ + var query = function(/*String*/ query, /*String|DOMNode?*/ root){ + // summary: + // Returns nodes which match the given CSS selector, searching the + // entire document by default but optionally taking a node to scope + // the search by. Returns an instance of NodeList. + if(typeof root == "string"){ + root = dom.byId(root); + if(!root){ + return new NodeList([]); + } + } + var results = typeof query == "string" ? engine(query, root) : query ? (query.end && query.on) ? query : [query] : []; + if(results.end && results.on){ + // already wrapped + return results; + } + return new NodeList(results); + }; + query.matches = engine.match || function(node, selector, root){ + // summary: + // Test to see if a node matches a selector + return query.filter([node], selector, root).length > 0; + }; + // the engine provides a filtering function, use it to for matching + query.filter = engine.filter || function(nodes, selector, root){ + // summary: + // Filters an array of nodes. Note that this does not guarantee to return a NodeList, just an array. + return query(selector, root).filter(function(node){ + return array.indexOf(nodes, node) > -1; + }); + }; + if(typeof engine != "function"){ + var search = engine.search; + engine = function(selector, root){ + // Slick does it backwards (or everyone else does it backwards, probably the latter) + return search(root || document, selector); + }; + } + return query; + } + var query = queryForEngine(defaultEngine, NodeList); + /*===== + query = function(selector, context){ + // summary: + // This modules provides DOM querying functionality. The module export is a function + // that can be used to query for DOM nodes by CSS selector and returns a NodeList + // representing the matching nodes. + // selector: String + // A CSS selector to search for. + // context: String|DomNode? + // An optional context to limit the searching scope. Only nodes under `context` will be + // scanned. + // example: + // add an onclick handler to every submit button in the document + // which causes the form to be sent via Ajax instead: + // | require(["dojo/query", "dojo/request", "dojo/dom-form", "dojo/dom-construct", "dojo/dom-style" + // | ], function(query, request, domForm, domConstruct, domStyle){ + // | query("input[type='submit']").on("click", function(e){ + // | e.preventDefault(); // prevent sending the form + // | var btn = e.target; + // | request.post("http://example.com/", { + // | data: domForm.toObject(btn.form) + // | }).then(function(response){ + // | // replace the form with the response + // | domConstruct.create(div, {innerHTML: response}, btn.form, "after"); + // | domStyle.set(btn.form, "display", "none"); + // | }); + // | }); + // | }); + // + // description: + // dojo/query is responsible for loading the appropriate query engine and wrapping + // its results with a `NodeList`. You can use dojo/query with a specific selector engine + // by using it as a plugin. For example, if you installed the sizzle package, you could + // use it as the selector engine with: + // | require(["dojo/query!sizzle"], function(query){ + // | query("div")... + // + // The id after the ! can be a module id of the selector engine or one of the following values: + // + // - acme: This is the default engine used by Dojo base, and will ensure that the full + // Acme engine is always loaded. + // + // - css2: If the browser has a native selector engine, this will be used, otherwise a + // very minimal lightweight selector engine will be loaded that can do simple CSS2 selectors + // (by #id, .class, tag, and [name=value] attributes, with standard child or descendant (>) + // operators) and nothing more. + // + // - css2.1: If the browser has a native selector engine, this will be used, otherwise the + // full Acme engine will be loaded. + // + // - css3: If the browser has a native selector engine with support for CSS3 pseudo + // selectors (most modern browsers except IE8), this will be used, otherwise the + // full Acme engine will be loaded. + // + // - Or the module id of a selector engine can be used to explicitly choose the selector engine + // + // For example, if you are using CSS3 pseudo selectors in module, you can specify that + // you will need support them with: + // | require(["dojo/query!css3"], function(query){ + // | query('#t > h3:nth-child(odd)')... + // + // You can also choose the selector engine/load configuration by setting the query-selector: + // For example: + // | <script data-dojo-config="query-selector:'css3'" src="dojo.js"></script> + // + return new NodeList(); // dojo/NodeList + }; + =====*/ + + // the query that is returned from this module is slightly different than dojo.query, + // because dojo.query has to maintain backwards compatibility with returning a + // true array which has performance problems. The query returned from the module + // does not use true arrays, but rather inherits from Array, making it much faster to + // instantiate. + dojo.query = queryForEngine(defaultEngine, function(array){ + // call it without the new operator to invoke the back-compat behavior that returns a true array + return NodeList(array); // dojo/NodeList + }); + + query.load = function(id, parentRequire, loaded){ + // summary: + // can be used as AMD plugin to conditionally load new query engine + // example: + // | require(["dojo/query!custom"], function(qsa){ + // | // loaded selector/custom.js as engine + // | qsa("#foobar").forEach(...); + // | }); + loader.load(id, parentRequire, function(engine){ + loaded(queryForEngine(engine, NodeList)); + }); + }; + + dojo._filterQueryResult = query._filterResult = function(nodes, selector, root){ + return new NodeList(query.filter(nodes, selector, root)); + }; + dojo.NodeList = query.NodeList = NodeList; + return query; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/ready.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/ready.js new file mode 100644 index 00000000..ffe9a422 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/ready.js @@ -0,0 +1,77 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/ready",["./_base/kernel","./has","require","./domReady","./_base/lang"],function(_1,_2,_3,_4,_5){ +var _6=0,_7=[],_8=0,_9=function(){ +_6=1; +_1._postLoad=_1.config.afterOnLoad=true; +_a(); +},_a=function(){ +if(_8){ +return; +} +_8=1; +while(_6&&(!_4||_4._Q.length==0)&&(_3.idle?_3.idle():true)&&_7.length){ +var f=_7.shift(); +try{ +f(); +} +catch(e){ +e.info=e.message; +if(_3.signal){ +_3.signal("error",e); +}else{ +throw e; +} +} +} +_8=0; +}; +_3.on&&_3.on("idle",_a); +if(_4){ +_4._onQEmpty=_a; +} +var _b=_1.ready=_1.addOnLoad=function(_c,_d,_e){ +var _f=_5._toArray(arguments); +if(typeof _c!="number"){ +_e=_d; +_d=_c; +_c=1000; +}else{ +_f.shift(); +} +_e=_e?_5.hitch.apply(_1,_f):function(){ +_d(); +}; +_e.priority=_c; +for(var i=0;i<_7.length&&_c>=_7[i].priority;i++){ +} +_7.splice(i,0,_e); +_a(); +}; +1||_2.add("dojo-config-addOnLoad",1); +if(1){ +var dca=_1.config.addOnLoad; +if(dca){ +_b[(_5.isArray(dca)?"apply":"call")](_1,dca); +} +} +if(1&&_1.config.parseOnLoad&&!_1.isAsync){ +_b(99,function(){ +if(!_1.parser){ +_1.deprecated("Add explicit require(['dojo/parser']);","","2.0"); +_3(["dojo/parser"]); +} +}); +} +if(_4){ +_4(_9); +}else{ +_9(); +} +return _b; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/ready.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/ready.js.uncompressed.js new file mode 100644 index 00000000..05052b33 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/ready.js.uncompressed.js @@ -0,0 +1,153 @@ +define("dojo/ready", ["./_base/kernel", "./has", "require", "./domReady", "./_base/lang"], function(dojo, has, require, domReady, lang){ + // module: + // dojo/ready + // note: + // This module should be unnecessary in dojo 2.0 + + var + // truthy if DOMContentLoaded or better (e.g., window.onload fired) has been achieved + isDomReady = 0, + + // The queue of functions waiting to execute as soon as dojo.ready conditions satisfied + loadQ = [], + + // prevent recursion in onLoad + onLoadRecursiveGuard = 0, + + handleDomReady = function(){ + isDomReady = 1; + dojo._postLoad = dojo.config.afterOnLoad = true; + onEvent(); + }, + + onEvent = function(){ + // Called when some state changes: + // - dom ready + // - dojo/domReady has finished processing everything in its queue + // - task added to loadQ + // - require() has finished loading all currently requested modules + // + // Run the functions queued with dojo.ready if appropriate. + + + //guard against recursions into this function + if(onLoadRecursiveGuard){ + return; + } + onLoadRecursiveGuard = 1; + + // Run tasks in queue if require() is finished loading modules, the dom is ready, and there are no + // pending tasks registered via domReady(). + // The last step is necessary so that a user defined dojo.ready() callback is delayed until after the + // domReady() calls inside of dojo. Failure can be seen on dijit/tests/robot/Dialog_ally.html on IE8 + // because the dijit/focus.js domReady() callback doesn't execute until after the test starts running. + while(isDomReady && (!domReady || domReady._Q.length == 0) && (require.idle ? require.idle() : true) && loadQ.length){ + var f = loadQ.shift(); + try{ + f(); + }catch(e){ + // force the dojo.js on("error") handler do display the message + e.info = e.message; + if(require.signal){ + require.signal("error", e); + }else{ + throw e; + } + } + } + + onLoadRecursiveGuard = 0; + }; + + // Check if we should run the next queue operation whenever require() finishes loading modules or domReady + // finishes processing it's queue. + require.on && require.on("idle", onEvent); + if(domReady){ + domReady._onQEmpty = onEvent; + } + + var ready = dojo.ready = dojo.addOnLoad = function(priority, context, callback){ + // summary: + // Add a function to execute on DOM content loaded and all requested modules have arrived and been evaluated. + // In most cases, the `domReady` plug-in should suffice and this method should not be needed. + // + // When called in a non-browser environment, just checks that all requested modules have arrived and been + // evaluated. + // priority: Integer? + // The order in which to exec this callback relative to other callbacks, defaults to 1000 + // context: Object?|Function + // The context in which to run execute callback, or a callback if not using context + // callback: Function? + // The function to execute. + // + // example: + // Simple DOM and Modules ready syntax + // | require(["dojo/ready"], function(ready){ + // | ready(function(){ alert("Dom ready!"); }); + // | }); + // + // example: + // Using a priority + // | require(["dojo/ready"], function(ready){ + // | ready(2, function(){ alert("low priority ready!"); }) + // | }); + // + // example: + // Using context + // | require(["dojo/ready"], function(ready){ + // | ready(foo, function(){ + // | // in here, this == foo + // | }); + // | }); + // + // example: + // Using dojo/hitch style args: + // | require(["dojo/ready"], function(ready){ + // | var foo = { dojoReady: function(){ console.warn(this, "dojo dom and modules ready."); } }; + // | ready(foo, "dojoReady"); + // | }); + + var hitchArgs = lang._toArray(arguments); + if(typeof priority != "number"){ + callback = context; + context = priority; + priority = 1000; + }else{ + hitchArgs.shift(); + } + callback = callback ? + lang.hitch.apply(dojo, hitchArgs) : + function(){ + context(); + }; + callback.priority = priority; + for(var i = 0; i < loadQ.length && priority >= loadQ[i].priority; i++){} + loadQ.splice(i, 0, callback); + onEvent(); + }; + + 1 || has.add("dojo-config-addOnLoad", 1); + if( 1 ){ + var dca = dojo.config.addOnLoad; + if(dca){ + ready[(lang.isArray(dca) ? "apply" : "call")](dojo, dca); + } + } + + if( 1 && dojo.config.parseOnLoad && !dojo.isAsync){ + ready(99, function(){ + if(!dojo.parser){ + dojo.deprecated("Add explicit require(['dojo/parser']);", "", "2.0"); + require(["dojo/parser"]); + } + }); + } + + if(domReady){ + domReady(handleDomReady); + }else{ + handleDomReady(); + } + + return ready; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/regexp.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/regexp.js new file mode 100644 index 00000000..38fd0dd7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/regexp.js @@ -0,0 +1,33 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/regexp",["./_base/kernel","./_base/lang"],function(_1,_2){ +var _3={}; +_2.setObject("dojo.regexp",_3); +_3.escapeString=function(_4,_5){ +return _4.replace(/([\.$?*|{}\(\)\[\]\\\/\+\-^])/g,function(ch){ +if(_5&&_5.indexOf(ch)!=-1){ +return ch; +} +return "\\"+ch; +}); +}; +_3.buildGroupRE=function(_6,re,_7){ +if(!(_6 instanceof Array)){ +return re(_6); +} +var b=[]; +for(var i=0;i<_6.length;i++){ +b.push(re(_6[i])); +} +return _3.group(b.join("|"),_7); +}; +_3.group=function(_8,_9){ +return "("+(_9?"?:":"")+_8+")"; +}; +return _3; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/regexp.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/regexp.js.uncompressed.js new file mode 100644 index 00000000..f36647cf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/regexp.js.uncompressed.js @@ -0,0 +1,70 @@ +define("dojo/regexp", ["./_base/kernel", "./_base/lang"], function(dojo, lang){ + +// module: +// dojo/regexp + +var regexp = { + // summary: + // Regular expressions and Builder resources +}; +lang.setObject("dojo.regexp", regexp); + +regexp.escapeString = function(/*String*/str, /*String?*/except){ + // summary: + // Adds escape sequences for special characters in regular expressions + // except: + // a String with special characters to be left unescaped + + return str.replace(/([\.$?*|{}\(\)\[\]\\\/\+\-^])/g, function(ch){ + if(except && except.indexOf(ch) != -1){ + return ch; + } + return "\\" + ch; + }); // String +}; + +regexp.buildGroupRE = function(/*Object|Array*/arr, /*Function*/re, /*Boolean?*/nonCapture){ + // summary: + // Builds a regular expression that groups subexpressions + // description: + // A utility function used by some of the RE generators. The + // subexpressions are constructed by the function, re, in the second + // parameter. re builds one subexpression for each elem in the array + // a, in the first parameter. Returns a string for a regular + // expression that groups all the subexpressions. + // arr: + // A single value or an array of values. + // re: + // A function. Takes one parameter and converts it to a regular + // expression. + // nonCapture: + // If true, uses non-capturing match, otherwise matches are retained + // by regular expression. Defaults to false + + // case 1: a is a single value. + if(!(arr instanceof Array)){ + return re(arr); // String + } + + // case 2: a is an array + var b = []; + for(var i = 0; i < arr.length; i++){ + // convert each elem to a RE + b.push(re(arr[i])); + } + + // join the REs as alternatives in a RE group. + return regexp.group(b.join("|"), nonCapture); // String +}; + +regexp.group = function(/*String*/expression, /*Boolean?*/nonCapture){ + // summary: + // adds group match to expression + // nonCapture: + // If true, uses non-capturing match, otherwise matches are retained + // by regular expression. + return "(" + (nonCapture ? "?:":"") + expression + ")"; // String +}; + +return regexp; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request.js new file mode 100644 index 00000000..5479886a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request.js @@ -0,0 +1,10 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/request",["./request/default!"],function(_1){ +return _1; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request.js.uncompressed.js new file mode 100644 index 00000000..75e42bd6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request.js.uncompressed.js @@ -0,0 +1,81 @@ +define("dojo/request", [ + './request/default!'/*=====, + './_base/declare', + './promise/Promise' =====*/ +], function(request/*=====, declare, Promise =====*/){ + /*===== + request = function(url, options){ + // summary: + // Send a request using the default transport for the current platform. + // url: String + // The URL to request. + // options: dojo/request.__Options? + // Options for the request. + // returns: dojo/request.__Promise + }; + request.__Promise = declare(Promise, { + // response: dojo/promise/Promise + // A promise resolving to an object representing + // the response from the server. + }); + request.__BaseOptions = declare(null, { + // query: String|Object? + // Query parameters to append to the URL. + // data: String|Object? + // Data to transfer. This is ignored for GET and DELETE + // requests. + // preventCache: Boolean? + // Whether to append a cache-busting parameter to the URL. + // timeout: Integer? + // Milliseconds to wait for the response. If this time + // passes, the then the promise is rejected. + // handleAs: String? + // How to handle the response from the server. Default is + // 'text'. Other values are 'json', 'javascript', and 'xml'. + }); + request.__MethodOptions = declare(null, { + // method: String? + // The HTTP method to use to make the request. Must be + // uppercase. + }); + request.__Options = declare([request.__BaseOptions, request.__MethodOptions]); + + request.get = function(url, options){ + // summary: + // Send an HTTP GET request using the default transport for the current platform. + // url: String + // URL to request + // options: dojo/request.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + request.post = function(url, options){ + // summary: + // Send an HTTP POST request using the default transport for the current platform. + // url: String + // URL to request + // options: dojo/request.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + request.put = function(url, options){ + // summary: + // Send an HTTP POST request using the default transport for the current platform. + // url: String + // URL to request + // options: dojo/request.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + request.del = function(url, options){ + // summary: + // Send an HTTP DELETE request using the default transport for the current platform. + // url: String + // URL to request + // options: dojo/request.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + =====*/ + return request; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/default.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/default.js new file mode 100644 index 00000000..ac55efdc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/default.js @@ -0,0 +1,28 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/request/default",["exports","require","../has"],function(_1,_2,_3){ +var _4=_3("config-requestProvider"),_5; +if(1||_3("host-webworker")){ +_5="./xhr"; +}else{ +if(0){ +_5="./node"; +} +} +if(!_4){ +_4=_5; +} +_1.getPlatformDefaultId=function(){ +return _5; +}; +_1.load=function(id,_6,_7,_8){ +_2([id=="platform"?_5:_4],function(_9){ +_7(_9); +}); +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/default.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/default.js.uncompressed.js new file mode 100644 index 00000000..39d60437 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/default.js.uncompressed.js @@ -0,0 +1,32 @@ +define("dojo/request/default", [ + 'exports', + 'require', + '../has' +], function(exports, require, has){ + var defId = has('config-requestProvider'), + platformId; + + if( 1 || has('host-webworker')){ + platformId = './xhr'; + }else if( 0 ){ + platformId = './node'; + /* TODO: + }else if( 0 ){ + platformId = './rhino'; + */ + } + + if(!defId){ + defId = platformId; + } + + exports.getPlatformDefaultId = function(){ + return platformId; + }; + + exports.load = function(id, parentRequire, loaded, config){ + require([id == 'platform' ? platformId : defId], function(provider){ + loaded(provider); + }); + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/handlers.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/handlers.js new file mode 100644 index 00000000..39621398 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/handlers.js @@ -0,0 +1,64 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/request/handlers",["../json","../_base/kernel","../_base/array","../has","../selector/_loader"],function(_1,_2,_3,_4){ +_4.add("activex",typeof ActiveXObject!=="undefined"); +_4.add("dom-parser",function(_5){ +return "DOMParser" in _5; +}); +var _6; +if(_4("activex")){ +var dp=["Msxml2.DOMDocument.6.0","Msxml2.DOMDocument.4.0","MSXML2.DOMDocument.3.0","MSXML.DOMDocument"]; +var _7; +_6=function(_8){ +var _9=_8.data; +var _a=_8.text; +if(_9&&_4("dom-qsa2.1")&&!_9.querySelectorAll&&_4("dom-parser")){ +_9=new DOMParser().parseFromString(_a,"application/xml"); +} +function _b(p){ +try{ +var _c=new ActiveXObject(p); +_c.async=false; +_c.loadXML(_a); +_9=_c; +_7=p; +} +catch(e){ +return false; +} +return true; +}; +if(!_9||!_9.documentElement){ +if(!_7||!_b(_7)){ +_3.some(dp,_b); +} +} +return _9; +}; +} +var _d=function(_e){ +if(!_4("native-xhr2-blob")&&_e.options.handleAs==="blob"&&typeof Blob!=="undefined"){ +return new Blob([_e.xhr.response],{type:_e.xhr.getResponseHeader("Content-Type")}); +} +return _e.xhr.response; +}; +var _f={"javascript":function(_10){ +return _2.eval(_10.text||""); +},"json":function(_11){ +return _1.parse(_11.text||null); +},"xml":_6,"blob":_d,"arraybuffer":_d,"document":_d}; +function _12(_13){ +var _14=_f[_13.options.handleAs]; +_13.data=_14?_14(_13):(_13.data||_13.text); +return _13; +}; +_12.register=function(_15,_16){ +_f[_15]=_16; +}; +return _12; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/handlers.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/handlers.js.uncompressed.js new file mode 100644 index 00000000..41e4fa35 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/handlers.js.uncompressed.js @@ -0,0 +1,98 @@ +define("dojo/request/handlers", [ + '../json', + '../_base/kernel', + '../_base/array', + '../has', + '../selector/_loader' // only included for has() qsa tests +], function(JSON, kernel, array, has){ + has.add('activex', typeof ActiveXObject !== 'undefined'); + has.add('dom-parser', function(global){ + return 'DOMParser' in global; + }); + + var handleXML; + if(has('activex')){ + // GUIDs obtained from http://msdn.microsoft.com/en-us/library/ms757837(VS.85).aspx + var dp = [ + 'Msxml2.DOMDocument.6.0', + 'Msxml2.DOMDocument.4.0', + 'MSXML2.DOMDocument.3.0', + 'MSXML.DOMDocument' // 2.0 + ]; + var lastParser; + + handleXML = function(response){ + var result = response.data; + var text = response.text; + + if(result && has('dom-qsa2.1') && !result.querySelectorAll && has('dom-parser')){ + // http://bugs.dojotoolkit.org/ticket/15631 + // IE9 supports a CSS3 querySelectorAll implementation, but the DOM implementation + // returned by IE9 xhr.responseXML does not. Manually create the XML DOM to gain + // the fuller-featured implementation and avoid bugs caused by the inconsistency + result = new DOMParser().parseFromString(text, 'application/xml'); + } + + function createDocument(p) { + try{ + var dom = new ActiveXObject(p); + dom.async = false; + dom.loadXML(text); + result = dom; + lastParser = p; + }catch(e){ return false; } + return true; + } + + if(!result || !result.documentElement){ + // The creation of an ActiveX object is expensive, so we cache the + // parser type to avoid trying all parser types each time we handle a + // document. There is some concern that some parser types might fail + // depending on the document being parsed. If parsing using the cached + // parser type fails, we do the more expensive operation of finding one + // that works for the given document. + // https://bugs.dojotoolkit.org/ticket/15246 + if(!lastParser || !createDocument(lastParser)) { + array.some(dp, createDocument); + } + } + + return result; + }; + } + + var handleNativeResponse = function(response) { + if(!has('native-xhr2-blob') && response.options.handleAs === 'blob' && typeof Blob !== 'undefined'){ + return new Blob([ response.xhr.response ], { type: response.xhr.getResponseHeader('Content-Type') }); + } + + return response.xhr.response; + } + + var handlers = { + 'javascript': function(response){ + return kernel.eval(response.text || ''); + }, + 'json': function(response){ + return JSON.parse(response.text || null); + }, + 'xml': handleXML, + 'blob': handleNativeResponse, + 'arraybuffer': handleNativeResponse, + 'document': handleNativeResponse + }; + + function handle(response){ + var handler = handlers[response.options.handleAs]; + + response.data = handler ? handler(response) : (response.data || response.text); + + return response; + } + + handle.register = function(name, handler){ + handlers[name] = handler; + }; + + return handle; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/iframe.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/iframe.js new file mode 100644 index 00000000..576eef14 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/iframe.js @@ -0,0 +1,291 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/request/iframe",["module","require","./watch","./util","./handlers","../_base/lang","../io-query","../query","../has","../dom","../dom-construct","../_base/window","../NodeList-dom"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c){ +var _d=_1.id.replace(/[\/\.\-]/g,"_"),_e=_d+"_onload"; +if(!_c.global[_e]){ +_c.global[_e]=function(){ +var _f=_10._currentDfd; +if(!_f){ +_10._fireNextRequest(); +return; +} +var _11=_f.response,_12=_11.options,_13=_a.byId(_12.form)||_f._tmpForm; +if(_13){ +var _14=_f._contentToClean; +for(var i=0;i<_14.length;i++){ +var key=_14[i]; +for(var j=0;j<_13.childNodes.length;j++){ +var _15=_13.childNodes[j]; +if(_15.name===key){ +_b.destroy(_15); +break; +} +} +} +_f._originalAction&&_13.setAttribute("action",_f._originalAction); +if(_f._originalMethod){ +_13.setAttribute("method",_f._originalMethod); +_13.method=_f._originalMethod; +} +if(_f._originalTarget){ +_13.setAttribute("target",_f._originalTarget); +_13.target=_f._originalTarget; +} +} +if(_f._tmpForm){ +_b.destroy(_f._tmpForm); +delete _f._tmpForm; +} +_f._finished=true; +}; +} +function _16(_17,_18,uri){ +if(_c.global[_17]){ +return _c.global[_17]; +} +if(_c.global.frames[_17]){ +return _c.global.frames[_17]; +} +if(!uri){ +if(_9("config-useXDomain")&&!_9("config-dojoBlankHtmlUrl")){ +console.warn("dojo/request/iframe: When using cross-domain Dojo builds,"+" please save dojo/resources/blank.html to your domain and set dojoConfig.dojoBlankHtmlUrl"+" to the path on your domain to blank.html"); +} +uri=(_9("config-dojoBlankHtmlUrl")||_2.toUrl("dojo/resources/blank.html")); +} +var _19=_b.place("<iframe id=\""+_17+"\" name=\""+_17+"\" src=\""+uri+"\" onload=\""+_18+"\" style=\"position: absolute; left: 1px; top: 1px; height: 1px; width: 1px; visibility: hidden\">",_c.body()); +_c.global[_17]=_19; +return _19; +}; +function _1a(_1b,src,_1c){ +var _1d=_c.global.frames[_1b.name]; +if(_1d.contentWindow){ +_1d=_1d.contentWindow; +} +try{ +if(!_1c){ +_1d.location=src; +}else{ +_1d.location.replace(src); +} +} +catch(e){ +} +}; +function doc(_1e){ +if(_1e.contentDocument){ +return _1e.contentDocument; +} +var _1f=_1e.name; +if(_1f){ +var _20=_c.doc.getElementsByTagName("iframe"); +if(_1e.document&&_20[_1f].contentWindow&&_20[_1f].contentWindow.document){ +return _20[_1f].contentWindow.document; +}else{ +if(_c.doc.frames[_1f]&&_c.doc.frames[_1f].document){ +return _c.doc.frames[_1f].document; +} +} +} +return null; +}; +function _21(){ +return _b.create("form",{name:_d+"_form",style:{position:"absolute",top:"-1000px",left:"-1000px"}},_c.body()); +}; +function _22(){ +var dfd; +try{ +if(_10._currentDfd||!_10._dfdQueue.length){ +return; +} +do{ +dfd=_10._currentDfd=_10._dfdQueue.shift(); +}while(dfd&&(dfd.canceled||(dfd.isCanceled&&dfd.isCanceled()))&&_10._dfdQueue.length); +if(!dfd||dfd.canceled||(dfd.isCanceled&&dfd.isCanceled())){ +_10._currentDfd=null; +return; +} +var _23=dfd.response,_24=_23.options,c2c=dfd._contentToClean=[],_25=_a.byId(_24.form),_26=_4.notify,_27=_24.data||null,_28; +if(!dfd._legacy&&_24.method==="POST"&&!_25){ +_25=dfd._tmpForm=_21(); +}else{ +if(_24.method==="GET"&&_25&&_23.url.indexOf("?")>-1){ +_28=_23.url.slice(_23.url.indexOf("?")+1); +_27=_6.mixin(_7.queryToObject(_28),_27); +} +} +if(_25){ +if(!dfd._legacy){ +var _29=_25; +do{ +_29=_29.parentNode; +}while(_29&&_29!==_c.doc.documentElement); +if(!_29){ +_25.style.position="absolute"; +_25.style.left="-1000px"; +_25.style.top="-1000px"; +_c.body().appendChild(_25); +} +if(!_25.name){ +_25.name=_d+"_form"; +} +} +if(_27){ +var _2a=function(_2b,_2c){ +_b.create("input",{type:"hidden",name:_2b,value:_2c},_25); +c2c.push(_2b); +}; +for(var x in _27){ +var val=_27[x]; +if(_6.isArray(val)&&val.length>1){ +for(var i=0;i<val.length;i++){ +_2a(x,val[i]); +} +}else{ +if(!_25[x]){ +_2a(x,val); +}else{ +_25[x].value=val; +} +} +} +} +var _2d=_25.getAttributeNode("action"),_2e=_25.getAttributeNode("method"),_2f=_25.getAttributeNode("target"); +if(_23.url){ +dfd._originalAction=_2d?_2d.value:null; +if(_2d){ +_2d.value=_23.url; +}else{ +_25.setAttribute("action",_23.url); +} +} +if(!dfd._legacy){ +dfd._originalMethod=_2e?_2e.value:null; +if(_2e){ +_2e.value=_24.method; +}else{ +_25.setAttribute("method",_24.method); +} +}else{ +if(!_2e||!_2e.value){ +if(_2e){ +_2e.value=_24.method; +}else{ +_25.setAttribute("method",_24.method); +} +} +} +dfd._originalTarget=_2f?_2f.value:null; +if(_2f){ +_2f.value=_10._iframeName; +}else{ +_25.setAttribute("target",_10._iframeName); +} +_25.target=_10._iframeName; +_26&&_26.emit("send",_23,dfd.promise.cancel); +_10._notifyStart(_23); +_25.submit(); +}else{ +var _30=""; +if(_23.options.data){ +_30=_23.options.data; +if(typeof _30!=="string"){ +_30=_7.objectToQuery(_30); +} +} +var _31=_23.url+(_23.url.indexOf("?")>-1?"&":"?")+_30; +_26&&_26.emit("send",_23,dfd.promise.cancel); +_10._notifyStart(_23); +_10.setSrc(_10._frame,_31,true); +} +} +catch(e){ +dfd.reject(e); +} +}; +function _32(_33){ +return !this.isFulfilled(); +}; +function _34(_35){ +return !!this._finished; +}; +function _36(_37,_38){ +if(!_38){ +try{ +var _39=_37.options,doc=_10.doc(_10._frame),_3a=_39.handleAs; +if(_3a!=="html"){ +if(_3a==="xml"){ +if(doc.documentElement.tagName.toLowerCase()==="html"){ +_8("a",doc.documentElement).orphan(); +var _3b=doc.documentElement.innerText; +_3b=_3b.replace(/>\s+</g,"><"); +_37.text=_6.trim(_3b); +}else{ +_37.data=doc; +} +}else{ +_37.text=doc.getElementsByTagName("textarea")[0].value; +} +_5(_37); +}else{ +_37.data=doc; +} +} +catch(e){ +_38=e; +} +} +if(_38){ +this.reject(_38); +}else{ +if(this._finished){ +this.resolve(_37); +}else{ +this.reject(new Error("Invalid dojo/request/iframe request state")); +} +} +}; +function _3c(_3d){ +this._callNext(); +}; +var _3e={method:"POST"}; +function _10(url,_3f,_40){ +var _41=_4.parseArgs(url,_4.deepCreate(_3e,_3f),true); +url=_41.url; +_3f=_41.options; +if(_3f.method!=="GET"&&_3f.method!=="POST"){ +throw new Error(_3f.method+" not supported by dojo/request/iframe"); +} +if(!_10._frame){ +_10._frame=_10.create(_10._iframeName,_e+"();"); +} +var dfd=_4.deferred(_41,null,_32,_34,_36,_3c); +dfd._callNext=function(){ +if(!this._calledNext){ +this._calledNext=true; +_10._currentDfd=null; +_10._fireNextRequest(); +} +}; +dfd._legacy=_40; +_10._dfdQueue.push(dfd); +_10._fireNextRequest(); +_3(dfd); +return _40?dfd:dfd.promise; +}; +_10.create=_16; +_10.doc=doc; +_10.setSrc=_1a; +_10._iframeName=_d+"_IoIframe"; +_10._notifyStart=function(){ +}; +_10._dfdQueue=[]; +_10._currentDfd=null; +_10._fireNextRequest=_22; +_4.addCommonMethods(_10,["GET","POST"]); +return _10; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/iframe.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/iframe.js.uncompressed.js new file mode 100644 index 00000000..c6d980bb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/iframe.js.uncompressed.js @@ -0,0 +1,431 @@ +define("dojo/request/iframe", [ + 'module', + 'require', + './watch', + './util', + './handlers', + '../_base/lang', + '../io-query', + '../query', + '../has', + '../dom', + '../dom-construct', + '../_base/window', + '../NodeList-dom'/*=====, + '../request', + '../_base/declare' =====*/ +], function(module, require, watch, util, handlers, lang, ioQuery, query, has, dom, domConstruct, win/*=====, NodeList, request, declare =====*/){ + var mid = module.id.replace(/[\/\.\-]/g, '_'), + onload = mid + '_onload'; + + if(!win.global[onload]){ + win.global[onload] = function(){ + var dfd = iframe._currentDfd; + if(!dfd){ + iframe._fireNextRequest(); + return; + } + + var response = dfd.response, + options = response.options, + formNode = dom.byId(options.form) || dfd._tmpForm; + + if(formNode){ + // remove all the hidden content inputs + var toClean = dfd._contentToClean; + for(var i=0; i<toClean.length; i++){ + var key = toClean[i]; + //Need to cycle over all nodes since we may have added + //an array value which means that more than one node could + //have the same .name value. + for(var j=0; j<formNode.childNodes.length; j++){ + var childNode = formNode.childNodes[j]; + if(childNode.name === key){ + domConstruct.destroy(childNode); + break; + } + } + } + + // restore original action + target + dfd._originalAction && formNode.setAttribute('action', dfd._originalAction); + if(dfd._originalMethod){ + formNode.setAttribute('method', dfd._originalMethod); + formNode.method = dfd._originalMethod; + } + if(dfd._originalTarget){ + formNode.setAttribute('target', dfd._originalTarget); + formNode.target = dfd._originalTarget; + } + } + + if(dfd._tmpForm){ + domConstruct.destroy(dfd._tmpForm); + delete dfd._tmpForm; + } + + dfd._finished = true; + }; + } + + function create(name, onloadstr, uri){ + if(win.global[name]){ + return win.global[name]; + } + + if(win.global.frames[name]){ + return win.global.frames[name]; + } + + if(!uri){ + if(has('config-useXDomain') && !has('config-dojoBlankHtmlUrl')){ + console.warn('dojo/request/iframe: When using cross-domain Dojo builds,' + + ' please save dojo/resources/blank.html to your domain and set dojoConfig.dojoBlankHtmlUrl' + + ' to the path on your domain to blank.html'); + } + uri = (has('config-dojoBlankHtmlUrl')||require.toUrl('dojo/resources/blank.html')); + } + + var frame = domConstruct.place( + '<iframe id="'+name+'" name="'+name+'" src="'+uri+'" onload="'+onloadstr+ + '" style="position: absolute; left: 1px; top: 1px; height: 1px; width: 1px; visibility: hidden">', + win.body()); + + win.global[name] = frame; + + return frame; + } + + function setSrc(_iframe, src, replace){ + var frame = win.global.frames[_iframe.name]; + + if(frame.contentWindow){ + // We have an iframe node instead of the window + frame = frame.contentWindow; + } + + try{ + if(!replace){ + frame.location = src; + }else{ + frame.location.replace(src); + } + }catch(e){ + console.log('dojo/request/iframe.setSrc: ', e); + } + } + + function doc(iframeNode){ + if(iframeNode.contentDocument){ + return iframeNode.contentDocument; + } + var name = iframeNode.name; + if(name){ + var iframes = win.doc.getElementsByTagName('iframe'); + if(iframeNode.document && iframes[name].contentWindow && iframes[name].contentWindow.document){ + return iframes[name].contentWindow.document; + }else if(win.doc.frames[name] && win.doc.frames[name].document){ + return win.doc.frames[name].document; + } + } + return null; + } + + function createForm(){ + return domConstruct.create('form', { + name: mid + '_form', + style: { + position: 'absolute', + top: '-1000px', + left: '-1000px' + } + }, win.body()); + } + + function fireNextRequest(){ + // summary: + // Internal method used to fire the next request in the queue. + var dfd; + try{ + if(iframe._currentDfd || !iframe._dfdQueue.length){ + return; + } + do{ + dfd = iframe._currentDfd = iframe._dfdQueue.shift(); + }while(dfd && (dfd.canceled || (dfd.isCanceled && dfd.isCanceled())) && iframe._dfdQueue.length); + + if(!dfd || dfd.canceled || (dfd.isCanceled && dfd.isCanceled())){ + iframe._currentDfd = null; + return; + } + + var response = dfd.response, + options = response.options, + c2c = dfd._contentToClean = [], + formNode = dom.byId(options.form), + notify = util.notify, + data = options.data || null, + queryStr; + + if(!dfd._legacy && options.method === 'POST' && !formNode){ + formNode = dfd._tmpForm = createForm(); + }else if(options.method === 'GET' && formNode && response.url.indexOf('?') > -1){ + queryStr = response.url.slice(response.url.indexOf('?') + 1); + data = lang.mixin(ioQuery.queryToObject(queryStr), data); + } + + if(formNode){ + if(!dfd._legacy){ + var parentNode = formNode; + do{ + parentNode = parentNode.parentNode; + }while(parentNode && parentNode !== win.doc.documentElement); + + // Append the form node or some browsers won't work + if(!parentNode){ + formNode.style.position = 'absolute'; + formNode.style.left = '-1000px'; + formNode.style.top = '-1000px'; + win.body().appendChild(formNode); + } + + if(!formNode.name){ + formNode.name = mid + '_form'; + } + } + + // if we have things in data, we need to add them to the form + // before submission + if(data){ + var createInput = function(name, value){ + domConstruct.create('input', { + type: 'hidden', + name: name, + value: value + }, formNode); + c2c.push(name); + }; + for(var x in data){ + var val = data[x]; + if(lang.isArray(val) && val.length > 1){ + for(var i=0; i<val.length; i++){ + createInput(x, val[i]); + } + }else{ + if(!formNode[x]){ + createInput(x, val); + }else{ + formNode[x].value = val; + } + } + } + } + + //IE requires going through getAttributeNode instead of just getAttribute in some form cases, + //so use it for all. See #2844 + var actionNode = formNode.getAttributeNode('action'), + methodNode = formNode.getAttributeNode('method'), + targetNode = formNode.getAttributeNode('target'); + + if(response.url){ + dfd._originalAction = actionNode ? actionNode.value : null; + if(actionNode){ + actionNode.value = response.url; + }else{ + formNode.setAttribute('action', response.url); + } + } + + if(!dfd._legacy){ + dfd._originalMethod = methodNode ? methodNode.value : null; + if(methodNode){ + methodNode.value = options.method; + }else{ + formNode.setAttribute('method', options.method); + } + }else{ + if(!methodNode || !methodNode.value){ + if(methodNode){ + methodNode.value = options.method; + }else{ + formNode.setAttribute('method', options.method); + } + } + } + + dfd._originalTarget = targetNode ? targetNode.value : null; + if(targetNode){ + targetNode.value = iframe._iframeName; + }else{ + formNode.setAttribute('target', iframe._iframeName); + } + formNode.target = iframe._iframeName; + + notify && notify.emit('send', response, dfd.promise.cancel); + iframe._notifyStart(response); + formNode.submit(); + }else{ + // otherwise we post a GET string by changing URL location for the + // iframe + + var extra = ''; + if(response.options.data){ + extra = response.options.data; + if(typeof extra !== 'string'){ + extra = ioQuery.objectToQuery(extra); + } + } + var tmpUrl = response.url + (response.url.indexOf('?') > -1 ? '&' : '?') + extra; + notify && notify.emit('send', response, dfd.promise.cancel); + iframe._notifyStart(response); + iframe.setSrc(iframe._frame, tmpUrl, true); + } + }catch(e){ + dfd.reject(e); + } + } + + // dojo/request/watch handlers + function isValid(response){ + return !this.isFulfilled(); + } + function isReady(response){ + return !!this._finished; + } + function handleResponse(response, error){ + if(!error){ + try{ + var options = response.options, + doc = iframe.doc(iframe._frame), + handleAs = options.handleAs; + + if(handleAs !== 'html'){ + if(handleAs === 'xml'){ + // IE6-8 have to parse the XML manually. See http://bugs.dojotoolkit.org/ticket/6334 + if(doc.documentElement.tagName.toLowerCase() === 'html'){ + query('a', doc.documentElement).orphan(); + var xmlText = doc.documentElement.innerText; + xmlText = xmlText.replace(/>\s+</g, '><'); + response.text = lang.trim(xmlText); + }else{ + response.data = doc; + } + }else{ + // 'json' and 'javascript' and 'text' + response.text = doc.getElementsByTagName('textarea')[0].value; // text + } + handlers(response); + }else{ + response.data = doc; + } + }catch(e){ + error = e; + } + } + + if(error){ + this.reject(error); + }else if(this._finished){ + this.resolve(response); + }else{ + this.reject(new Error('Invalid dojo/request/iframe request state')); + } + } + function last(response){ + this._callNext(); + } + + var defaultOptions = { + method: 'POST' + }; + function iframe(url, options, returnDeferred){ + var response = util.parseArgs(url, util.deepCreate(defaultOptions, options), true); + url = response.url; + options = response.options; + + if(options.method !== 'GET' && options.method !== 'POST'){ + throw new Error(options.method + ' not supported by dojo/request/iframe'); + } + + if(!iframe._frame){ + iframe._frame = iframe.create(iframe._iframeName, onload + '();'); + } + + var dfd = util.deferred(response, null, isValid, isReady, handleResponse, last); + dfd._callNext = function(){ + if(!this._calledNext){ + this._calledNext = true; + iframe._currentDfd = null; + iframe._fireNextRequest(); + } + }; + dfd._legacy = returnDeferred; + + iframe._dfdQueue.push(dfd); + iframe._fireNextRequest(); + + watch(dfd); + + return returnDeferred ? dfd : dfd.promise; + } + + /*===== + iframe = function(url, options){ + // summary: + // Sends a request using an iframe element with the given URL and options. + // url: String + // URL to request + // options: dojo/request/iframe.__Options? + // Options for the request. + // returns: dojo/request.__Promise + }; + iframe.__BaseOptions = declare(request.__BaseOptions, { + // form: DOMNode? + // A form node to use to submit data to the server. + // data: String|Object? + // Data to transfer. When making a GET request, this will + // be converted to key=value parameters and appended to the + // URL. + }); + iframe.__MethodOptions = declare(null, { + // method: String? + // The HTTP method to use to make the request. Must be + // uppercase. Only `"GET"` and `"POST"` are accepted. + // Default is `"POST"`. + }); + iframe.__Options = declare([iframe.__BaseOptions, iframe.__MethodOptions]); + + iframe.get = function(url, options){ + // summary: + // Send an HTTP GET request using an iframe element with the given URL and options. + // url: String + // URL to request + // options: dojo/request/iframe.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + iframe.post = function(url, options){ + // summary: + // Send an HTTP POST request using an iframe element with the given URL and options. + // url: String + // URL to request + // options: dojo/request/iframe.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + =====*/ + iframe.create = create; + iframe.doc = doc; + iframe.setSrc = setSrc; + + // TODO: Make these truly private in 2.0 + iframe._iframeName = mid + '_IoIframe'; + iframe._notifyStart = function(){}; + iframe._dfdQueue = []; + iframe._currentDfd = null; + iframe._fireNextRequest = fireNextRequest; + + util.addCommonMethods(iframe, ['GET', 'POST']); + + return iframe; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/node.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/node.js new file mode 100644 index 00000000..94f787fa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/node.js @@ -0,0 +1,86 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/request/node",["require","./util","./handlers","../errors/RequestTimeoutError","../node!http","../node!https","../node!url","../node!stream"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +var _9=_8.Stream,_a; +var _b={method:"GET",query:null,data:_a,headers:{}}; +function _c(_d,_e){ +var _f=_2.parseArgs(_d,_2.deepCreate(_b,_e),_e&&_e.data instanceof _9); +_d=_f.url; +_e=_f.options; +var def=_2.deferred(_f,function(dfd,_10){ +_10.clientRequest.abort(); +}); +_d=_7.parse(_d); +var _11=_f.requestOptions={hostname:_d.hostname,port:_d.port,socketPath:_e.socketPath,method:_e.method,headers:_e.headers,agent:_e.agent,pfx:_e.pfx,key:_e.key,passphrase:_e.passphrase,cert:_e.cert,ca:_e.ca,ciphers:_e.ciphers,rejectUnauthorized:_e.rejectUnauthorized===false?false:true}; +if(_d.path){ +_11.path=_d.path; +} +if(_e.user||_e.password){ +_11.auth=(_e.user||"")+":"+(_e.password||""); +} +var req=_f.clientRequest=(_d.protocol==="https:"?_6:_5).request(_11); +if(_e.socketOptions){ +if("timeout" in _e.socketOptions){ +req.setTimeout(_e.socketOptions.timeout); +} +if("noDelay" in _e.socketOptions){ +req.setNoDelay(_e.socketOptions.noDelay); +} +if("keepAlive" in _e.socketOptions){ +var _12=_e.socketOptions.keepAlive; +req.setKeepAlive(_12>=0,_12||0); +} +} +req.on("socket",function(){ +_f.hasSocket=true; +def.progress(_f); +}); +req.on("response",function(_13){ +_f.clientResponse=_13; +_f.status=_13.statusCode; +_f.getHeader=function(_14){ +return _13.headers[_14.toLowerCase()]||null; +}; +var _15=[]; +_13.on("data",function(_16){ +_15.push(_16); +}); +_13.on("end",function(){ +if(_17){ +clearTimeout(_17); +} +_f.text=_15.join(""); +try{ +_3(_f); +def.resolve(_f); +} +catch(error){ +def.reject(error); +} +}); +}); +req.on("error",def.reject); +if(_e.data){ +if(typeof _e.data==="string"){ +req.end(_e.data); +}else{ +_e.data.pipe(req); +} +}else{ +req.end(); +} +if(_e.timeout){ +var _17=setTimeout(function(){ +def.cancel(new _4(_f)); +},_e.timeout); +} +return def.promise; +}; +_2.addCommonMethods(_c); +return _c; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/node.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/node.js.uncompressed.js new file mode 100644 index 00000000..ce563980 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/node.js.uncompressed.js @@ -0,0 +1,195 @@ +define("dojo/request/node", [ + 'require', + './util', + './handlers', + '../errors/RequestTimeoutError', + '../node!http', + '../node!https', + '../node!url', + '../node!stream'/*=====, + '../request', + '../_base/declare' =====*/ +], function(require, util, handlers, RequestTimeoutError, http, https, URL, stream/*=====, request, declare =====*/){ + var Stream = stream.Stream, + undefined; + + var defaultOptions = { + method: 'GET', + query: null, + data: undefined, + headers: {} + }; + function node(url, options){ + var response = util.parseArgs(url, util.deepCreate(defaultOptions, options), options && options.data instanceof Stream); + url = response.url; + options = response.options; + + var def = util.deferred( + response, + function(dfd, response){ + response.clientRequest.abort(); + } + ); + + url = URL.parse(url); + + var reqOptions = response.requestOptions = { + hostname: url.hostname, + port: url.port, + socketPath: options.socketPath, + method: options.method, + headers: options.headers, + agent: options.agent, + pfx: options.pfx, + key: options.key, + passphrase: options.passphrase, + cert: options.cert, + ca: options.ca, + ciphers: options.ciphers, + rejectUnauthorized: options.rejectUnauthorized === false ? false : true + }; + if(url.path){ + reqOptions.path = url.path; + } + if(options.user || options.password){ + reqOptions.auth = (options.user||'') + ':' + (options.password||''); + } + var req = response.clientRequest = (url.protocol === 'https:' ? https : http).request(reqOptions); + + if(options.socketOptions){ + if('timeout' in options.socketOptions){ + req.setTimeout(options.socketOptions.timeout); + } + if('noDelay' in options.socketOptions){ + req.setNoDelay(options.socketOptions.noDelay); + } + if('keepAlive' in options.socketOptions){ + var initialDelay = options.socketOptions.keepAlive; + req.setKeepAlive(initialDelay >= 0, initialDelay || 0); + } + } + + req.on('socket', function(){ + response.hasSocket = true; + def.progress(response); + }); + + req.on('response', function(clientResponse){ + response.clientResponse = clientResponse; + response.status = clientResponse.statusCode; + response.getHeader = function(headerName){ + return clientResponse.headers[headerName.toLowerCase()] || null; + }; + + var body = []; + clientResponse.on('data', function(chunk){ + body.push(chunk); + + // TODO: progress updates via the deferred + }); + clientResponse.on('end', function(){ + if(timeout){ + clearTimeout(timeout); + } + response.text = body.join(''); + try{ + handlers(response); + def.resolve(response); + }catch(error){ + def.reject(error); + } + }); + }); + + req.on('error', def.reject); + + if(options.data){ + if(typeof options.data === 'string'){ + req.end(options.data); + }else{ + options.data.pipe(req); + } + }else{ + req.end(); + } + + if(options.timeout){ + var timeout = setTimeout(function(){ + def.cancel(new RequestTimeoutError(response)); + }, options.timeout); + } + + return def.promise; + } + + /*===== + node = function(url, options){ + // summary: + // Sends a request using the included http or https interface from node.js + // with the given URL and options. + // url: String + // URL to request + // options: dojo/request/node.__Options? + // Options for the request. + // returns: dojo/request.__Promise + }; + node.__BaseOptions = declare(request.__BaseOptions, { + // data: String|Object|Stream? + // Data to transfer. This is ignored for GET and DELETE + // requests. + // headers: Object? + // Headers to use for the request. + // user: String? + // Username to use during the request. + // password: String? + // Password to use during the request. + }); + node.__MethodOptions = declare(null, { + // method: String? + // The HTTP method to use to make the request. Must be + // uppercase. Default is `"GET"`. + }); + node.__Options = declare([node.__BaseOptions, node.__MethodOptions]); + + node.get = function(url, options){ + // summary: + // Send an HTTP GET request using XMLHttpRequest with the given URL and options. + // url: String + // URL to request + // options: dojo/request/node.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + node.post = function(url, options){ + // summary: + // Send an HTTP POST request using XMLHttpRequest with the given URL and options. + // url: String + // URL to request + // options: dojo/request/node.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + node.put = function(url, options){ + // summary: + // Send an HTTP PUT request using XMLHttpRequest with the given URL and options. + // url: String + // URL to request + // options: dojo/request/node.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + node.del = function(url, options){ + // summary: + // Send an HTTP DELETE request using XMLHttpRequest with the given URL and options. + // url: String + // URL to request + // options: dojo/request/node.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + =====*/ + + util.addCommonMethods(node); + + return node; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/notify.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/notify.js new file mode 100644 index 00000000..9c7d1fdc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/notify.js @@ -0,0 +1,38 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/request/notify",["../Evented","../_base/lang","./util"],function(_1,_2,_3){ +var _4=0,_5=[].slice; +var _6=_2.mixin(new _1,{onsend:function(_7){ +if(!_4){ +this.emit("start"); +} +_4++; +},_onload:function(_8){ +this.emit("done",_8); +},_onerror:function(_9){ +this.emit("done",_9); +},_ondone:function(_a){ +if(--_4<=0){ +_4=0; +this.emit("stop"); +} +},emit:function(_b,_c){ +var _d=_1.prototype.emit.apply(this,arguments); +if(this["_on"+_b]){ +this["_on"+_b].apply(this,_5.call(arguments,1)); +} +return _d; +}}); +function _e(_f,_10){ +return _6.on(_f,_10); +}; +_e.emit=function(_11,_12,_13){ +return _6.emit(_11,_12,_13); +}; +return _3.notify=_e; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/notify.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/notify.js.uncompressed.js new file mode 100644 index 00000000..2b8a2b68 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/notify.js.uncompressed.js @@ -0,0 +1,74 @@ +define("dojo/request/notify", ['../Evented', '../_base/lang', './util'], function(Evented, lang, util){ + // module: + // dojo/request/notify + // summary: + // Global notification API for dojo/request. Notifications will + // only be emitted if this module is required. + // + // | require('dojo/request', 'dojo/request/notify', + // | function(request, notify){ + // | notify('load', function(response){ + // | if(response.url === 'someUrl.html'){ + // | console.log('Loaded!'); + // | } + // | }); + // | request.get('someUrl.html'); + // | } + // | ); + + var pubCount = 0, + slice = [].slice; + + var hub = lang.mixin(new Evented, { + onsend: function(data){ + if(!pubCount){ + this.emit('start'); + } + pubCount++; + }, + _onload: function(data){ + this.emit('done', data); + }, + _onerror: function(data){ + this.emit('done', data); + }, + _ondone: function(data){ + if(--pubCount <= 0){ + pubCount = 0; + this.emit('stop'); + } + }, + emit: function(type, event){ + var result = Evented.prototype.emit.apply(this, arguments); + + // After all event handlers have run, run _on* handler + if(this['_on' + type]){ + this['_on' + type].apply(this, slice.call(arguments, 1)); + } + return result; + } + }); + + function notify(type, listener){ + // summary: + // Register a listener to be notified when an event + // in dojo/request happens. + // type: String? + // The event to listen for. Events emitted: "start", "send", + // "load", "error", "done", "stop". + // listener: Function? + // A callback to be run when an event happens. + // returns: + // A signal object that can be used to cancel the listener. + // If remove() is called on this signal object, it will + // stop the listener from being executed. + return hub.on(type, listener); + } + notify.emit = function(type, event, cancel){ + return hub.emit(type, event, cancel); + }; + + // Attach notify to dojo/request/util to avoid + // try{ require('./notify'); }catch(e){} + return util.notify = notify; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/registry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/registry.js new file mode 100644 index 00000000..1094d350 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/registry.js @@ -0,0 +1,68 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/request/registry",["require","../_base/array","./default!platform","./util"],function(_1,_2,_3,_4){ +var _5=[]; +function _6(_7,_8){ +var _9=_5.slice(0),i=0,_a; +while(_a=_9[i++]){ +if(_a(_7,_8)){ +return _a.request.call(null,_7,_8); +} +} +return _3.apply(null,arguments); +}; +function _b(_c,_d){ +var _e; +if(_d){ +if(_c.test){ +_e=function(_f){ +return _c.test(_f); +}; +}else{ +if(_c.apply&&_c.call){ +_e=function(){ +return _c.apply(null,arguments); +}; +}else{ +_e=function(url){ +return url===_c; +}; +} +} +_e.request=_d; +}else{ +_e=function(){ +return true; +}; +_e.request=_c; +} +return _e; +}; +_6.register=function(url,_10,_11){ +var _12=_b(url,_10); +_5[(_11?"unshift":"push")](_12); +return {remove:function(){ +var idx; +if(~(idx=_2.indexOf(_5,_12))){ +_5.splice(idx,1); +} +}}; +}; +_6.load=function(id,_13,_14,_15){ +if(id){ +_1([id],function(_16){ +_3=_16; +_14(_6); +}); +}else{ +_14(_6); +} +}; +_4.addCommonMethods(_6); +return _6; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/registry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/registry.js.uncompressed.js new file mode 100644 index 00000000..b5d28f3e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/registry.js.uncompressed.js @@ -0,0 +1,85 @@ +define("dojo/request/registry", [ + 'require', + '../_base/array', + './default!platform', + './util' +], function(require, array, fallbackProvider, util){ + var providers = []; + + function request(url, options){ + var matchers = providers.slice(0), + i = 0, + matcher; + + while(matcher=matchers[i++]){ + if(matcher(url, options)){ + return matcher.request.call(null, url, options); + } + } + + return fallbackProvider.apply(null, arguments); + } + + function createMatcher(match, provider){ + var matcher; + + if(provider){ + if(match.test){ + // RegExp + matcher = function(url){ + return match.test(url); + }; + }else if(match.apply && match.call){ + matcher = function(){ + return match.apply(null, arguments); + }; + }else{ + matcher = function(url){ + return url === match; + }; + } + + matcher.request = provider; + }else{ + // If only one argument was passed, assume it is a provider function + // to apply unconditionally to all URLs + matcher = function(){ + return true; + }; + + matcher.request = match; + } + + return matcher; + } + + request.register = function(url, provider, first){ + var matcher = createMatcher(url, provider); + providers[(first ? 'unshift' : 'push')](matcher); + + return { + remove: function(){ + var idx; + if(~(idx = array.indexOf(providers, matcher))){ + providers.splice(idx, 1); + } + } + }; + }; + + request.load = function(id, parentRequire, loaded, config){ + if(id){ + // if there's an id, load and set the fallback provider + require([id], function(fallback){ + fallbackProvider = fallback; + loaded(request); + }); + }else{ + loaded(request); + } + }; + + util.addCommonMethods(request); + + return request; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/script.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/script.js new file mode 100644 index 00000000..edb3855a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/script.js @@ -0,0 +1,114 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/request/script",["module","./watch","./util","../_base/kernel","../_base/array","../_base/lang","../on","../dom","../dom-construct","../has","../_base/window"],function(_1,_2,_3,_4,_5,_6,on,_7,_8,_9,_a){ +_9.add("script-readystatechange",function(_b,_c){ +var _d=_c.createElement("script"); +return typeof _d["onreadystatechange"]!=="undefined"&&(typeof _b["opera"]==="undefined"||_b["opera"].toString()!=="[object Opera]"); +}); +var _e=_1.id.replace(/[\/\.\-]/g,"_"),_f=0,_10=_9("script-readystatechange")?"readystatechange":"load",_11=/complete|loaded/,_12=_4.global[_e+"_callbacks"]={},_13=[]; +function _14(id,url,_15){ +var doc=(_15||_a.doc),_16=doc.createElement("script"); +_16.type="text/javascript"; +_16.src=url; +_16.id=id; +_16.async=true; +_16.charset="utf-8"; +return doc.getElementsByTagName("head")[0].appendChild(_16); +}; +function _17(id,_18,_19){ +_8.destroy(_7.byId(id,_18)); +if(_12[id]){ +if(_19){ +_12[id]=function(){ +delete _12[id]; +}; +}else{ +delete _12[id]; +} +} +}; +function _1a(dfd){ +var _1b=dfd.response.options,_1c=_1b.ioArgs?_1b.ioArgs.frameDoc:_1b.frameDoc; +_13.push({id:dfd.id,frameDoc:_1c}); +if(_1b.ioArgs){ +_1b.ioArgs.frameDoc=null; +} +_1b.frameDoc=null; +}; +function _1d(dfd,_1e){ +if(dfd.canDelete){ +_1f._remove(dfd.id,_1e.options.frameDoc,true); +} +}; +function _20(_21){ +if(_13&&_13.length){ +_5.forEach(_13,function(_22){ +_1f._remove(_22.id,_22.frameDoc); +_22.frameDoc=null; +}); +_13=[]; +} +return _21.options.jsonp?!_21.data:true; +}; +function _23(_24){ +return !!this.scriptLoaded; +}; +function _25(_26){ +var _27=_26.options.checkString; +return _27&&eval("typeof("+_27+") !== \"undefined\""); +}; +function _28(_29,_2a){ +if(this.canDelete){ +_1a(this); +} +if(_2a){ +this.reject(_2a); +}else{ +this.resolve(_29); +} +}; +function _1f(url,_2b,_2c){ +var _2d=_3.parseArgs(url,_3.deepCopy({},_2b)); +url=_2d.url; +_2b=_2d.options; +var dfd=_3.deferred(_2d,_1d,_20,_2b.jsonp?null:(_2b.checkString?_25:_23),_28); +_6.mixin(dfd,{id:_e+(_f++),canDelete:false}); +if(_2b.jsonp){ +var _2e=new RegExp("[?&]"+_2b.jsonp+"="); +if(!_2e.test(url)){ +url+=(~url.indexOf("?")?"&":"?")+_2b.jsonp+"="+(_2b.frameDoc?"parent.":"")+_e+"_callbacks."+dfd.id; +} +dfd.canDelete=true; +_12[dfd.id]=function(_2f){ +_2d.data=_2f; +dfd.handleResponse(_2d); +}; +} +if(_3.notify){ +_3.notify.emit("send",_2d,dfd.promise.cancel); +} +if(!_2b.canAttach||_2b.canAttach(dfd)){ +var _30=_1f._attach(dfd.id,url,_2b.frameDoc); +if(!_2b.jsonp&&!_2b.checkString){ +var _31=on(_30,_10,function(evt){ +if(evt.type==="load"||_11.test(_30.readyState)){ +_31.remove(); +dfd.scriptLoaded=evt; +} +}); +} +} +_2(dfd); +return _2c?dfd:dfd.promise; +}; +_1f.get=_1f; +_1f._attach=_14; +_1f._remove=_17; +_1f._callbacksProperty=_e+"_callbacks"; +return _1f; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/script.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/script.js.uncompressed.js new file mode 100644 index 00000000..89b3a531 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/script.js.uncompressed.js @@ -0,0 +1,220 @@ +define("dojo/request/script", [ + 'module', + './watch', + './util', + '../_base/kernel', + '../_base/array', + '../_base/lang', + '../on', + '../dom', + '../dom-construct', + '../has', + '../_base/window'/*=====, + '../request', + '../_base/declare' =====*/ +], function(module, watch, util, kernel, array, lang, on, dom, domConstruct, has, win/*=====, request, declare =====*/){ + has.add('script-readystatechange', function(global, document){ + var script = document.createElement('script'); + return typeof script['onreadystatechange'] !== 'undefined' && + (typeof global['opera'] === 'undefined' || global['opera'].toString() !== '[object Opera]'); + }); + + var mid = module.id.replace(/[\/\.\-]/g, '_'), + counter = 0, + loadEvent = has('script-readystatechange') ? 'readystatechange' : 'load', + readyRegExp = /complete|loaded/, + callbacks = kernel.global[mid + '_callbacks'] = {}, + deadScripts = []; + + function attach(id, url, frameDoc){ + var doc = (frameDoc || win.doc), + element = doc.createElement('script'); + + element.type = 'text/javascript'; + element.src = url; + element.id = id; + element.async = true; + element.charset = 'utf-8'; + + return doc.getElementsByTagName('head')[0].appendChild(element); + } + + function remove(id, frameDoc, cleanup){ + domConstruct.destroy(dom.byId(id, frameDoc)); + + if(callbacks[id]){ + if(cleanup){ + // set callback to a function that deletes itself so requests that + // are in-flight don't error out when returning and also + // clean up after themselves + callbacks[id] = function(){ + delete callbacks[id]; + }; + }else{ + delete callbacks[id]; + } + } + } + + function _addDeadScript(dfd){ + // Be sure to check ioArgs because it can dynamically change in the dojox/io plugins. + // See http://bugs.dojotoolkit.org/ticket/15890. + var options = dfd.response.options, + frameDoc = options.ioArgs ? options.ioArgs.frameDoc : options.frameDoc; + + deadScripts.push({ id: dfd.id, frameDoc: frameDoc }); + + if(options.ioArgs){ + options.ioArgs.frameDoc = null; + } + options.frameDoc = null; + } + + function canceler(dfd, response){ + if(dfd.canDelete){ + //For timeouts and cancels, remove the script element immediately to + //avoid a response from it coming back later and causing trouble. + script._remove(dfd.id, response.options.frameDoc, true); + } + } + function isValid(response){ + //Do script cleanup here. We wait for one inflight pass + //to make sure we don't get any weird things by trying to remove a script + //tag that is part of the call chain (IE 6 has been known to + //crash in that case). + if(deadScripts && deadScripts.length){ + array.forEach(deadScripts, function(_script){ + script._remove(_script.id, _script.frameDoc); + _script.frameDoc = null; + }); + deadScripts = []; + } + + return response.options.jsonp ? !response.data : true; + } + function isReadyScript(response){ + return !!this.scriptLoaded; + } + function isReadyCheckString(response){ + var checkString = response.options.checkString; + + return checkString && eval('typeof(' + checkString + ') !== "undefined"'); + } + function handleResponse(response, error){ + if(this.canDelete){ + _addDeadScript(this); + } + if(error){ + this.reject(error); + }else{ + this.resolve(response); + } + } + + function script(url, options, returnDeferred){ + var response = util.parseArgs(url, util.deepCopy({}, options)); + url = response.url; + options = response.options; + + var dfd = util.deferred( + response, + canceler, + isValid, + options.jsonp ? null : (options.checkString ? isReadyCheckString : isReadyScript), + handleResponse + ); + + lang.mixin(dfd, { + id: mid + (counter++), + canDelete: false + }); + + if(options.jsonp){ + var queryParameter = new RegExp('[?&]' + options.jsonp + '='); + if(!queryParameter.test(url)){ + url += (~url.indexOf('?') ? '&' : '?') + + options.jsonp + '=' + + (options.frameDoc ? 'parent.' : '') + + mid + '_callbacks.' + dfd.id; + } + + dfd.canDelete = true; + callbacks[dfd.id] = function(json){ + response.data = json; + dfd.handleResponse(response); + }; + } + + if(util.notify){ + util.notify.emit('send', response, dfd.promise.cancel); + } + + if(!options.canAttach || options.canAttach(dfd)){ + var node = script._attach(dfd.id, url, options.frameDoc); + + if(!options.jsonp && !options.checkString){ + var handle = on(node, loadEvent, function(evt){ + if(evt.type === 'load' || readyRegExp.test(node.readyState)){ + handle.remove(); + dfd.scriptLoaded = evt; + } + }); + } + } + + watch(dfd); + + return returnDeferred ? dfd : dfd.promise; + } + script.get = script; + /*===== + script = function(url, options){ + // summary: + // Sends a request using a script element with the given URL and options. + // url: String + // URL to request + // options: dojo/request/script.__Options? + // Options for the request. + // returns: dojo/request.__Promise + }; + script.__BaseOptions = declare(request.__BaseOptions, { + // jsonp: String? + // The URL parameter name that indicates the JSONP callback string. + // For instance, when using Yahoo JSONP calls it is normally, + // jsonp: "callback". For AOL JSONP calls it is normally + // jsonp: "c". + // checkString: String? + // A string of JavaScript that when evaluated like so: + // "typeof(" + checkString + ") != 'undefined'" + // being true means that the script fetched has been loaded. + // Do not use this if doing a JSONP type of call (use `jsonp` instead). + // frameDoc: Document? + // The Document object of a child iframe. If this is passed in, the script + // will be attached to that document. This can be helpful in some comet long-polling + // scenarios with Firefox and Opera. + }); + script.__MethodOptions = declare(null, { + // method: String? + // This option is ignored. All requests using this transport are + // GET requests. + }); + script.__Options = declare([script.__BaseOptions, script.__MethodOptions]); + + script.get = function(url, options){ + // summary: + // Send an HTTP GET request using a script element with the given URL and options. + // url: String + // URL to request + // options: dojo/request/script.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + =====*/ + + // TODO: Remove in 2.0 + script._attach = attach; + script._remove = remove; + script._callbacksProperty = mid + '_callbacks'; + + return script; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/util.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/util.js new file mode 100644 index 00000000..a17627e0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/util.js @@ -0,0 +1,121 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/request/util",["exports","../errors/RequestError","../errors/CancelError","../Deferred","../io-query","../_base/array","../_base/lang","../promise/Promise"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +_1.deepCopy=function deepCopy(_9,_a){ +for(var _b in _a){ +var _c=_9[_b],_d=_a[_b]; +if(_c!==_d){ +if(_c&&typeof _c==="object"&&_d&&typeof _d==="object"){ +_1.deepCopy(_c,_d); +}else{ +_9[_b]=_d; +} +} +} +return _9; +}; +_1.deepCreate=function deepCreate(_e,_f){ +_f=_f||{}; +var _10=_7.delegate(_e),_11,_12; +for(_11 in _e){ +_12=_e[_11]; +if(_12&&typeof _12==="object"){ +_10[_11]=_1.deepCreate(_12,_f[_11]); +} +} +return _1.deepCopy(_10,_f); +}; +var _13=Object.freeze||function(obj){ +return obj; +}; +function _14(_15){ +return _13(_15); +}; +function _16(_17){ +return _17.data||_17.text; +}; +_1.deferred=function deferred(_18,_19,_1a,_1b,_1c,_1d){ +var def=new _4(function(_1e){ +_19&&_19(def,_18); +if(!_1e||!(_1e instanceof _2)&&!(_1e instanceof _3)){ +return new _3("Request canceled",_18); +} +return _1e; +}); +def.response=_18; +def.isValid=_1a; +def.isReady=_1b; +def.handleResponse=_1c; +function _1f(_20){ +_20.response=_18; +throw _20; +}; +var _21=def.then(_14).otherwise(_1f); +if(_1.notify){ +_21.then(_7.hitch(_1.notify,"emit","load"),_7.hitch(_1.notify,"emit","error")); +} +var _22=_21.then(_16); +var _23=new _8(); +for(var _24 in _22){ +if(_22.hasOwnProperty(_24)){ +_23[_24]=_22[_24]; +} +} +_23.response=_21; +_13(_23); +if(_1d){ +def.then(function(_25){ +_1d.call(def,_25); +},function(_26){ +_1d.call(def,_18,_26); +}); +} +def.promise=_23; +def.then=_23.then; +return def; +}; +_1.addCommonMethods=function addCommonMethods(_27,_28){ +_6.forEach(_28||["GET","POST","PUT","DELETE"],function(_29){ +_27[(_29==="DELETE"?"DEL":_29).toLowerCase()]=function(url,_2a){ +_2a=_7.delegate(_2a||{}); +_2a.method=_29; +return _27(url,_2a); +}; +}); +}; +_1.parseArgs=function parseArgs(url,_2b,_2c){ +var _2d=_2b.data,_2e=_2b.query; +if(_2d&&!_2c){ +if(typeof _2d==="object"){ +_2b.data=_5.objectToQuery(_2d); +} +} +if(_2e){ +if(typeof _2e==="object"){ +_2e=_5.objectToQuery(_2e); +} +if(_2b.preventCache){ +_2e+=(_2e?"&":"")+"request.preventCache="+(+(new Date)); +} +}else{ +if(_2b.preventCache){ +_2e="request.preventCache="+(+(new Date)); +} +} +if(url&&_2e){ +url+=(~url.indexOf("?")?"&":"?")+_2e; +} +return {url:url,options:_2b,getHeader:function(_2f){ +return null; +}}; +}; +_1.checkStatus=function(_30){ +_30=_30||0; +return (_30>=200&&_30<300)||_30===304||_30===1223||!_30; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/util.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/util.js.uncompressed.js new file mode 100644 index 00000000..f99b6294 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/util.js.uncompressed.js @@ -0,0 +1,158 @@ +define("dojo/request/util", [ + 'exports', + '../errors/RequestError', + '../errors/CancelError', + '../Deferred', + '../io-query', + '../_base/array', + '../_base/lang', + '../promise/Promise' +], function(exports, RequestError, CancelError, Deferred, ioQuery, array, lang, Promise){ + exports.deepCopy = function deepCopy(target, source){ + for(var name in source){ + var tval = target[name], + sval = source[name]; + if(tval !== sval){ + if(tval && typeof tval === 'object' && sval && typeof sval === 'object'){ + exports.deepCopy(tval, sval); + }else{ + target[name] = sval; + } + } + } + return target; + }; + + exports.deepCreate = function deepCreate(source, properties){ + properties = properties || {}; + var target = lang.delegate(source), + name, value; + + for(name in source){ + value = source[name]; + + if(value && typeof value === 'object'){ + target[name] = exports.deepCreate(value, properties[name]); + } + } + return exports.deepCopy(target, properties); + }; + + var freeze = Object.freeze || function(obj){ return obj; }; + function okHandler(response){ + return freeze(response); + } + function dataHandler (response) { + return response.data || response.text; + } + + exports.deferred = function deferred(response, cancel, isValid, isReady, handleResponse, last){ + var def = new Deferred(function(reason){ + cancel && cancel(def, response); + + if(!reason || !(reason instanceof RequestError) && !(reason instanceof CancelError)){ + return new CancelError('Request canceled', response); + } + return reason; + }); + + def.response = response; + def.isValid = isValid; + def.isReady = isReady; + def.handleResponse = handleResponse; + + function errHandler(error){ + error.response = response; + throw error; + } + var responsePromise = def.then(okHandler).otherwise(errHandler); + + if(exports.notify){ + responsePromise.then( + lang.hitch(exports.notify, 'emit', 'load'), + lang.hitch(exports.notify, 'emit', 'error') + ); + } + + var dataPromise = responsePromise.then(dataHandler); + + // http://bugs.dojotoolkit.org/ticket/16794 + // The following works around a leak in IE9 through the + // prototype using lang.delegate on dataPromise and + // assigning the result a property with a reference to + // responsePromise. + var promise = new Promise(); + for (var prop in dataPromise) { + if (dataPromise.hasOwnProperty(prop)) { + promise[prop] = dataPromise[prop]; + } + } + promise.response = responsePromise; + freeze(promise); + // End leak fix + + + if(last){ + def.then(function(response){ + last.call(def, response); + }, function(error){ + last.call(def, response, error); + }); + } + + def.promise = promise; + def.then = promise.then; + + return def; + }; + + exports.addCommonMethods = function addCommonMethods(provider, methods){ + array.forEach(methods||['GET', 'POST', 'PUT', 'DELETE'], function(method){ + provider[(method === 'DELETE' ? 'DEL' : method).toLowerCase()] = function(url, options){ + options = lang.delegate(options||{}); + options.method = method; + return provider(url, options); + }; + }); + }; + + exports.parseArgs = function parseArgs(url, options, skipData){ + var data = options.data, + query = options.query; + + if(data && !skipData){ + if(typeof data === 'object'){ + options.data = ioQuery.objectToQuery(data); + } + } + + if(query){ + if(typeof query === 'object'){ + query = ioQuery.objectToQuery(query); + } + if(options.preventCache){ + query += (query ? '&' : '') + 'request.preventCache=' + (+(new Date)); + } + }else if(options.preventCache){ + query = 'request.preventCache=' + (+(new Date)); + } + + if(url && query){ + url += (~url.indexOf('?') ? '&' : '?') + query; + } + + return { + url: url, + options: options, + getHeader: function(headerName){ return null; } + }; + }; + + exports.checkStatus = function(stat){ + stat = stat || 0; + return (stat >= 200 && stat < 300) || // allow any 2XX response code + stat === 304 || // or, get it out of the cache + stat === 1223 || // or, Internet Explorer mangled the status code + !stat; // or, we're Titanium/browser chrome/chrome extension requesting a local file + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/watch.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/watch.js new file mode 100644 index 00000000..195ce09c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/watch.js @@ -0,0 +1,73 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/request/watch",["./util","../errors/RequestTimeoutError","../errors/CancelError","../_base/array","../_base/window","../has!host-browser?dom-addeventlistener?:../on:"],function(_1,_2,_3,_4,_5,on){ +var _6=null,_7=[]; +function _8(){ +var _9=+(new Date); +for(var i=0,_a;i<_7.length&&(_a=_7[i]);i++){ +var _b=_a.response,_c=_b.options; +if((_a.isCanceled&&_a.isCanceled())||(_a.isValid&&!_a.isValid(_b))){ +_7.splice(i--,1); +_d._onAction&&_d._onAction(); +}else{ +if(_a.isReady&&_a.isReady(_b)){ +_7.splice(i--,1); +_a.handleResponse(_b); +_d._onAction&&_d._onAction(); +}else{ +if(_a.startTime){ +if(_a.startTime+(_c.timeout||0)<_9){ +_7.splice(i--,1); +_a.cancel(new _2("Timeout exceeded",_b)); +_d._onAction&&_d._onAction(); +} +} +} +} +} +_d._onInFlight&&_d._onInFlight(_a); +if(!_7.length){ +clearInterval(_6); +_6=null; +} +}; +function _d(_e){ +if(_e.response.options.timeout){ +_e.startTime=+(new Date); +} +if(_e.isFulfilled()){ +return; +} +_7.push(_e); +if(!_6){ +_6=setInterval(_8,50); +} +if(_e.response.options.sync){ +_8(); +} +}; +_d.cancelAll=function cancelAll(){ +try{ +_4.forEach(_7,function(_f){ +try{ +_f.cancel(new _3("All requests canceled.")); +} +catch(e){ +} +}); +} +catch(e){ +} +}; +if(_5&&on&&_5.doc.attachEvent){ +on(_5.global,"unload",function(){ +_d.cancelAll(); +}); +} +return _d; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/watch.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/watch.js.uncompressed.js new file mode 100644 index 00000000..2b772281 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/watch.js.uncompressed.js @@ -0,0 +1,109 @@ +define("dojo/request/watch", [ + './util', + '../errors/RequestTimeoutError', + '../errors/CancelError', + '../_base/array', + '../_base/window', + '../has!host-browser?dom-addeventlistener?:../on:' +], function(util, RequestTimeoutError, CancelError, array, win, on){ + // avoid setting a timer per request. It degrades performance on IE + // something fierece if we don't use unified loops. + var _inFlightIntvl = null, + _inFlight = []; + + function watchInFlight(){ + // summary: + // internal method that checks each inflight XMLHttpRequest to see + // if it has completed or if the timeout situation applies. + + var now = +(new Date); + + // we need manual loop because we often modify _inFlight (and therefore 'i') while iterating + for(var i = 0, dfd; i < _inFlight.length && (dfd = _inFlight[i]); i++){ + var response = dfd.response, + options = response.options; + if((dfd.isCanceled && dfd.isCanceled()) || (dfd.isValid && !dfd.isValid(response))){ + _inFlight.splice(i--, 1); + watch._onAction && watch._onAction(); + }else if(dfd.isReady && dfd.isReady(response)){ + _inFlight.splice(i--, 1); + dfd.handleResponse(response); + watch._onAction && watch._onAction(); + }else if(dfd.startTime){ + // did we timeout? + if(dfd.startTime + (options.timeout || 0) < now){ + _inFlight.splice(i--, 1); + // Cancel the request so the io module can do appropriate cleanup. + dfd.cancel(new RequestTimeoutError('Timeout exceeded', response)); + watch._onAction && watch._onAction(); + } + } + } + + watch._onInFlight && watch._onInFlight(dfd); + + if(!_inFlight.length){ + clearInterval(_inFlightIntvl); + _inFlightIntvl = null; + } + } + + function watch(dfd){ + // summary: + // Watches the io request represented by dfd to see if it completes. + // dfd: Deferred + // The Deferred object to watch. + // response: Object + // The object used as the value of the request promise. + // validCheck: Function + // Function used to check if the IO request is still valid. Gets the dfd + // object as its only argument. + // ioCheck: Function + // Function used to check if basic IO call worked. Gets the dfd + // object as its only argument. + // resHandle: Function + // Function used to process response. Gets the dfd + // object as its only argument. + if(dfd.response.options.timeout){ + dfd.startTime = +(new Date); + } + + if(dfd.isFulfilled()){ + // bail out if the deferred is already fulfilled + return; + } + + _inFlight.push(dfd); + if(!_inFlightIntvl){ + _inFlightIntvl = setInterval(watchInFlight, 50); + } + + // handle sync requests separately from async: + // http://bugs.dojotoolkit.org/ticket/8467 + if(dfd.response.options.sync){ + watchInFlight(); + } + } + + watch.cancelAll = function cancelAll(){ + // summary: + // Cancels all pending IO requests, regardless of IO type + try{ + array.forEach(_inFlight, function(dfd){ + try{ + dfd.cancel(new CancelError('All requests canceled.')); + }catch(e){} + }); + }catch(e){} + }; + + if(win && on && win.doc.attachEvent){ + // Automatically call cancel all io calls on unload in IE + // http://bugs.dojotoolkit.org/ticket/2357 + on(win.global, 'unload', function(){ + watch.cancelAll(); + }); + } + + return watch; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/xhr.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/xhr.js new file mode 100644 index 00000000..22af575f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/xhr.js @@ -0,0 +1,214 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/request/xhr",["../errors/RequestError","./watch","./handlers","./util","../has"],function(_1,_2,_3,_4,_5){ +_5.add("native-xhr",function(){ +return typeof XMLHttpRequest!=="undefined"; +}); +_5.add("dojo-force-activex-xhr",function(){ +return _5("activex")&&!document.addEventListener&&window.location.protocol==="file:"; +}); +_5.add("native-xhr2",function(){ +if(!_5("native-xhr")){ +return; +} +var x=new XMLHttpRequest(); +return typeof x["addEventListener"]!=="undefined"&&(typeof opera==="undefined"||typeof x["upload"]!=="undefined"); +}); +_5.add("native-formdata",function(){ +return typeof FormData!=="undefined"; +}); +_5.add("native-response-type",function(){ +return _5("native-xhr")&&typeof new XMLHttpRequest().responseType!=="undefined"; +}); +_5.add("native-xhr2-blob",function(){ +if(!_5("native-response-type")){ +return; +} +var x=new XMLHttpRequest(); +x.open("GET","/",true); +x.responseType="blob"; +var _6=x.responseType; +x.abort(); +return _6==="blob"; +}); +var _7={"blob":_5("native-xhr2-blob")?"blob":"arraybuffer","document":"document","arraybuffer":"arraybuffer"}; +function _8(_9,_a){ +var _b=_9.xhr; +_9.status=_9.xhr.status; +try{ +_9.text=_b.responseText; +} +catch(e){ +} +if(_9.options.handleAs==="xml"){ +_9.data=_b.responseXML; +} +if(!_a){ +try{ +_3(_9); +} +catch(e){ +_a=e; +} +} +if(_a){ +this.reject(_a); +}else{ +if(_4.checkStatus(_b.status)){ +this.resolve(_9); +}else{ +_a=new _1("Unable to load "+_9.url+" status: "+_b.status,_9); +this.reject(_a); +} +} +}; +var _c,_d,_e,_f; +if(_5("native-xhr2")){ +_c=function(_10){ +return !this.isFulfilled(); +}; +_f=function(dfd,_11){ +_11.xhr.abort(); +}; +_e=function(_12,dfd,_13){ +function _14(evt){ +dfd.handleResponse(_13); +}; +function _15(evt){ +var _16=evt.target; +var _17=new _1("Unable to load "+_13.url+" status: "+_16.status,_13); +dfd.handleResponse(_13,_17); +}; +function _18(evt){ +if(evt.lengthComputable){ +_13.loaded=evt.loaded; +_13.total=evt.total; +dfd.progress(_13); +}else{ +if(_13.xhr.readyState===3){ +_13.loaded=evt.position; +dfd.progress(_13); +} +} +}; +_12.addEventListener("load",_14,false); +_12.addEventListener("error",_15,false); +_12.addEventListener("progress",_18,false); +return function(){ +_12.removeEventListener("load",_14,false); +_12.removeEventListener("error",_15,false); +_12.removeEventListener("progress",_18,false); +_12=null; +}; +}; +}else{ +_c=function(_19){ +return _19.xhr.readyState; +}; +_d=function(_1a){ +return 4===_1a.xhr.readyState; +}; +_f=function(dfd,_1b){ +var xhr=_1b.xhr; +var _1c=typeof xhr.abort; +if(_1c==="function"||_1c==="object"||_1c==="unknown"){ +xhr.abort(); +} +}; +} +function _1d(_1e){ +return this.xhr.getResponseHeader(_1e); +}; +var _1f,_20={data:null,query:null,sync:false,method:"GET"}; +function xhr(url,_21,_22){ +var _23=_5("native-formdata")&&_21&&_21.data&&_21.data instanceof FormData; +var _24=_4.parseArgs(url,_4.deepCreate(_20,_21),_23); +url=_24.url; +_21=_24.options; +var _25,_26=function(){ +_25&&_25(); +}; +var dfd=_4.deferred(_24,_f,_c,_d,_8,_26); +var _27=_24.xhr=xhr._create(); +if(!_27){ +dfd.cancel(new _1("XHR was not created")); +return _22?dfd:dfd.promise; +} +_24.getHeader=_1d; +if(_e){ +_25=_e(_27,dfd,_24); +} +var _28=_21.data,_29=!_21.sync,_2a=_21.method; +try{ +_27.open(_2a,url,_29,_21.user||_1f,_21.password||_1f); +if(_21.withCredentials){ +_27.withCredentials=_21.withCredentials; +} +if(_5("native-response-type")&&_21.handleAs in _7){ +_27.responseType=_7[_21.handleAs]; +} +var _2b=_21.headers,_2c=_23?false:"application/x-www-form-urlencoded"; +if(_2b){ +for(var hdr in _2b){ +if(hdr.toLowerCase()==="content-type"){ +_2c=_2b[hdr]; +}else{ +if(_2b[hdr]){ +_27.setRequestHeader(hdr,_2b[hdr]); +} +} +} +} +if(_2c&&_2c!==false){ +_27.setRequestHeader("Content-Type",_2c); +} +if(!_2b||!("X-Requested-With" in _2b)){ +_27.setRequestHeader("X-Requested-With","XMLHttpRequest"); +} +if(_4.notify){ +_4.notify.emit("send",_24,dfd.promise.cancel); +} +_27.send(_28); +} +catch(e){ +dfd.reject(e); +} +_2(dfd); +_27=null; +return _22?dfd:dfd.promise; +}; +xhr._create=function(){ +throw new Error("XMLHTTP not available"); +}; +if(_5("native-xhr")&&!_5("dojo-force-activex-xhr")){ +xhr._create=function(){ +return new XMLHttpRequest(); +}; +}else{ +if(_5("activex")){ +try{ +new ActiveXObject("Msxml2.XMLHTTP"); +xhr._create=function(){ +return new ActiveXObject("Msxml2.XMLHTTP"); +}; +} +catch(e){ +try{ +new ActiveXObject("Microsoft.XMLHTTP"); +xhr._create=function(){ +return new ActiveXObject("Microsoft.XMLHTTP"); +}; +} +catch(e){ +} +} +} +} +_4.addCommonMethods(xhr); +return xhr; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/xhr.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/xhr.js.uncompressed.js new file mode 100644 index 00000000..588de674 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/request/xhr.js.uncompressed.js @@ -0,0 +1,352 @@ +define("dojo/request/xhr", [ + '../errors/RequestError', + './watch', + './handlers', + './util', + '../has'/*=====, + '../request', + '../_base/declare' =====*/ +], function(RequestError, watch, handlers, util, has/*=====, request, declare =====*/){ + has.add('native-xhr', function(){ + // if true, the environment has a native XHR implementation + return typeof XMLHttpRequest !== 'undefined'; + }); + has.add('dojo-force-activex-xhr', function(){ + return has('activex') && !document.addEventListener && window.location.protocol === 'file:'; + }); + + has.add('native-xhr2', function(){ + if(!has('native-xhr')){ return; } + var x = new XMLHttpRequest(); + return typeof x['addEventListener'] !== 'undefined' && + (typeof opera === 'undefined' || typeof x['upload'] !== 'undefined'); + }); + + has.add('native-formdata', function(){ + // if true, the environment has a native FormData implementation + return typeof FormData !== 'undefined'; + }); + + has.add('native-response-type', function(){ + return has('native-xhr') && typeof new XMLHttpRequest().responseType !== 'undefined'; + }); + + has.add('native-xhr2-blob', function(){ + if(!has('native-response-type')){ return; } + var x = new XMLHttpRequest(); + x.open('GET', '/', true); + x.responseType = 'blob'; + // will not be set if unsupported + var responseType = x.responseType; + x.abort(); + return responseType === 'blob'; + }); + + // Google Chrome doesn't support "json" response type + // up to version 30, so it's intentionally not included here + var nativeResponseTypes = { + 'blob': has('native-xhr2-blob') ? 'blob' : 'arraybuffer', + 'document': 'document', + 'arraybuffer': 'arraybuffer' + }; + + function handleResponse(response, error){ + var _xhr = response.xhr; + response.status = response.xhr.status; + + try { + // Firefox throws an error when trying to access + // xhr.responseText if response isn't text + response.text = _xhr.responseText; + } catch (e) {} + + if(response.options.handleAs === 'xml'){ + response.data = _xhr.responseXML; + } + + if(!error){ + try{ + handlers(response); + }catch(e){ + error = e; + } + } + + if(error){ + this.reject(error); + }else if(util.checkStatus(_xhr.status)){ + this.resolve(response); + }else{ + error = new RequestError('Unable to load ' + response.url + ' status: ' + _xhr.status, response); + + this.reject(error); + } + } + + var isValid, isReady, addListeners, cancel; + if(has('native-xhr2')){ + // Any platform with XHR2 will only use the watch mechanism for timeout. + + isValid = function(response){ + // summary: + // Check to see if the request should be taken out of the watch queue + return !this.isFulfilled(); + }; + cancel = function(dfd, response){ + // summary: + // Canceler for deferred + response.xhr.abort(); + }; + addListeners = function(_xhr, dfd, response){ + // summary: + // Adds event listeners to the XMLHttpRequest object + function onLoad(evt){ + dfd.handleResponse(response); + } + function onError(evt){ + var _xhr = evt.target; + var error = new RequestError('Unable to load ' + response.url + ' status: ' + _xhr.status, response); + dfd.handleResponse(response, error); + } + + function onProgress(evt){ + if(evt.lengthComputable){ + response.loaded = evt.loaded; + response.total = evt.total; + dfd.progress(response); + } else if(response.xhr.readyState === 3){ + response.loaded = evt.position; + dfd.progress(response); + } + } + + _xhr.addEventListener('load', onLoad, false); + _xhr.addEventListener('error', onError, false); + _xhr.addEventListener('progress', onProgress, false); + + return function(){ + _xhr.removeEventListener('load', onLoad, false); + _xhr.removeEventListener('error', onError, false); + _xhr.removeEventListener('progress', onProgress, false); + _xhr = null; + }; + }; + }else{ + isValid = function(response){ + return response.xhr.readyState; //boolean + }; + isReady = function(response){ + return 4 === response.xhr.readyState; //boolean + }; + cancel = function(dfd, response){ + // summary: + // canceller function for util.deferred call. + var xhr = response.xhr; + var _at = typeof xhr.abort; + if(_at === 'function' || _at === 'object' || _at === 'unknown'){ + xhr.abort(); + } + }; + } + + function getHeader(headerName){ + return this.xhr.getResponseHeader(headerName); + } + + var undefined, + defaultOptions = { + data: null, + query: null, + sync: false, + method: 'GET' + }; + function xhr(url, options, returnDeferred){ + var isFormData = has('native-formdata') && options && options.data && options.data instanceof FormData; + var response = util.parseArgs( + url, + util.deepCreate(defaultOptions, options), + isFormData + ); + url = response.url; + options = response.options; + + var remover, + last = function(){ + remover && remover(); + }; + + //Make the Deferred object for this xhr request. + var dfd = util.deferred( + response, + cancel, + isValid, + isReady, + handleResponse, + last + ); + var _xhr = response.xhr = xhr._create(); + + if(!_xhr){ + // If XHR factory somehow returns nothings, + // cancel the deferred. + dfd.cancel(new RequestError('XHR was not created')); + return returnDeferred ? dfd : dfd.promise; + } + + response.getHeader = getHeader; + + if(addListeners){ + remover = addListeners(_xhr, dfd, response); + } + + var data = options.data, + async = !options.sync, + method = options.method; + + try{ + // IE6 won't let you call apply() on the native function. + _xhr.open(method, url, async, options.user || undefined, options.password || undefined); + + if(options.withCredentials){ + _xhr.withCredentials = options.withCredentials; + } + + if(has('native-response-type') && options.handleAs in nativeResponseTypes) { + _xhr.responseType = nativeResponseTypes[options.handleAs]; + } + + var headers = options.headers, + contentType = isFormData ? false : 'application/x-www-form-urlencoded'; + if(headers){ + for(var hdr in headers){ + if(hdr.toLowerCase() === 'content-type'){ + contentType = headers[hdr]; + }else if(headers[hdr]){ + //Only add header if it has a value. This allows for instance, skipping + //insertion of X-Requested-With by specifying empty value. + _xhr.setRequestHeader(hdr, headers[hdr]); + } + } + } + + if(contentType && contentType !== false){ + _xhr.setRequestHeader('Content-Type', contentType); + } + if(!headers || !('X-Requested-With' in headers)){ + _xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); + } + + if(util.notify){ + util.notify.emit('send', response, dfd.promise.cancel); + } + _xhr.send(data); + }catch(e){ + dfd.reject(e); + } + + watch(dfd); + _xhr = null; + + return returnDeferred ? dfd : dfd.promise; + } + + /*===== + xhr = function(url, options){ + // summary: + // Sends a request using XMLHttpRequest with the given URL and options. + // url: String + // URL to request + // options: dojo/request/xhr.__Options? + // Options for the request. + // returns: dojo/request.__Promise + }; + xhr.__BaseOptions = declare(request.__BaseOptions, { + // sync: Boolean? + // Whether to make a synchronous request or not. Default + // is `false` (asynchronous). + // data: String|Object|FormData? + // Data to transfer. This is ignored for GET and DELETE + // requests. + // headers: Object? + // Headers to use for the request. + // user: String? + // Username to use during the request. + // password: String? + // Password to use during the request. + // withCredentials: Boolean? + // For cross-site requests, whether to send credentials + // or not. + }); + xhr.__MethodOptions = declare(null, { + // method: String? + // The HTTP method to use to make the request. Must be + // uppercase. Default is `"GET"`. + }); + xhr.__Options = declare([xhr.__BaseOptions, xhr.__MethodOptions]); + + xhr.get = function(url, options){ + // summary: + // Send an HTTP GET request using XMLHttpRequest with the given URL and options. + // url: String + // URL to request + // options: dojo/request/xhr.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + xhr.post = function(url, options){ + // summary: + // Send an HTTP POST request using XMLHttpRequest with the given URL and options. + // url: String + // URL to request + // options: dojo/request/xhr.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + xhr.put = function(url, options){ + // summary: + // Send an HTTP PUT request using XMLHttpRequest with the given URL and options. + // url: String + // URL to request + // options: dojo/request/xhr.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + xhr.del = function(url, options){ + // summary: + // Send an HTTP DELETE request using XMLHttpRequest with the given URL and options. + // url: String + // URL to request + // options: dojo/request/xhr.__BaseOptions? + // Options for the request. + // returns: dojo/request.__Promise + }; + =====*/ + xhr._create = function(){ + // summary: + // does the work of portably generating a new XMLHTTPRequest object. + throw new Error('XMLHTTP not available'); + }; + if(has('native-xhr') && !has('dojo-force-activex-xhr')){ + xhr._create = function(){ + return new XMLHttpRequest(); + }; + }else if(has('activex')){ + try{ + new ActiveXObject('Msxml2.XMLHTTP'); + xhr._create = function(){ + return new ActiveXObject('Msxml2.XMLHTTP'); + }; + }catch(e){ + try{ + new ActiveXObject('Microsoft.XMLHTTP'); + xhr._create = function(){ + return new ActiveXObject('Microsoft.XMLHTTP'); + }; + }catch(e){} + } + } + + util.addCommonMethods(xhr); + + return xhr; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/require.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/require.js new file mode 100644 index 00000000..aab0d3c1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/require.js @@ -0,0 +1,12 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/require",["./_base/loader"],function(_1){ +return {dynamic:0,normalize:function(id){ +return id; +},load:_1.require}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/require.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/require.js.uncompressed.js new file mode 100644 index 00000000..e3d12dde --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/require.js.uncompressed.js @@ -0,0 +1,7 @@ +define("dojo/require", ["./_base/loader"], function(loader){ + return { + dynamic:0, + normalize:function(id){return id;}, + load:loader.require + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/LICENSE b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/LICENSE new file mode 100644 index 00000000..eb28b7e4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/LICENSE @@ -0,0 +1,30 @@ +License Disclaimer: + +All contents of this directory are Copyright (c) the Dojo Foundation, with the +following exceptions: +------------------------------------------------------------------------------- + +dojo.css: + * parts Copyright (c) 2007, Yahoo! Inc. All rights reserved. + Distributed under the terms of the BSD License + +The Program includes all or portions of the following software which was obtained under the terms and conditions of the BSD License. + +http://developer.yahoo.com/yui/license.html + +Copyright (c) 2007, Yahoo! Inc. + All rights reserved. + Redistribution and use of this software 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. + * Neither the name of Yahoo! Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without +specific prior written permission of Yahoo! Inc. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 THE + COPYRIGHT OWNER OR 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. diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/blank.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/blank.gif new file mode 100644 index 0000000000000000000000000000000000000000..e565824aafafe632011b281cba976baf8b3ba89a GIT binary patch literal 43 qcmZ?wbhEHbWMp7uXkcLY4+e@qSs1y10y+#p0Fq%~V)9{Rum%7ZWeN!Z literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/blank.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/blank.html new file mode 100644 index 00000000..40fe7705 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/blank.html @@ -0,0 +1 @@ +<html><head><script>isLoaded = true;</script></head><body></body></html> diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/dnd.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/dnd.css new file mode 100644 index 00000000..a5a7556a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/dnd.css @@ -0,0 +1,14 @@ + +.dojoDndAvatar {font-size: 75%; color: black;} +.dojoDndAvatarHeader td {padding-left: 20px; padding-right: 4px; height: 16px;} +.dojoDndAvatarHeader {background: #ccc;} +.dojoDndAvatarItem {background: #eee;} +.dojoDndMove .dojoDndAvatarHeader {background-image: url(images/dndNoMove.png); background-repeat: no-repeat;} +.dojoDndCopy .dojoDndAvatarHeader {background-image: url(images/dndNoCopy.png); background-repeat: no-repeat;} +.dojoDndMove .dojoDndAvatarCanDrop .dojoDndAvatarHeader {background-image: url(images/dndMove.png); background-repeat: no-repeat;} +.dojoDndCopy .dojoDndAvatarCanDrop .dojoDndAvatarHeader {background-image: url(images/dndCopy.png); background-repeat: no-repeat;} +.dojoDndHandle {cursor: move;} +.dojoDndIgnore {cursor: default;} +.dj_a11y .dojoDndAvatar { font-size: 1em; font-weight:bold;} +.dj_a11y .dojoDndAvatarHeader td {padding-left:2px !important;} +.dj_a11y .dojoDndAvatarHeader td span {padding-right: 5px;} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/dojo.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/dojo.css new file mode 100644 index 00000000..baf06cb7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/dojo.css @@ -0,0 +1,98 @@ + +body, div, dl, dt, dd, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td { + margin: 0; + padding: 0; +} +fieldset, img { + border: 0 none; +} +address, caption, cite, code, dfn, th, var { + font-style: normal; + font-weight: normal; +} +caption, th { + text-align: left; +} +q:before, q:after { + content:""; +} +abbr, acronym { + border:0; +} +body { + font: 12px Myriad,Helvetica,Tahoma,Arial,clean,sans-serif; + *font-size: 75%; +} +h1 { + font-size: 1.5em; + font-weight: normal; + line-height: 1em; + margin-top: 1em; + margin-bottom:0; +} +h2 { + font-size: 1.1667em; + font-weight: bold; + line-height: 1.286em; + margin-top: 1.929em; + margin-bottom:0.643em; +} +h3, h4, h5, h6 { + font-size: 1em; + font-weight: bold; + line-height: 1.5em; + margin-top: 1.5em; + margin-bottom: 0; +} +p { + font-size: 1em; + margin-top: 1.5em; + margin-bottom: 1.5em; + line-height: 1.5em; +} +blockquote { + font-size: 0.916em; + margin-top: 3.272em; + margin-bottom: 3.272em; + line-height: 1.636em; + padding: 1.636em; + border-top: 1px solid #ccc; + border-bottom: 1px solid #ccc; +} +ol li, ul li { + font-size: 1em; + line-height: 1.5em; + margin: 0; +} +pre, code { + font-size:115%; + *font-size:100%; + font-family: Courier, "Courier New"; + background-color: #efefef; + border: 1px solid #ccc; +} +pre { + border-width: 1px 0; + padding: 1.5em; +} +table { font-size:100%; } +.dojoTabular { + border-collapse: collapse; + border-spacing: 0; + border: 1px solid #ccc; + margin: 0 1.5em; +} +.dojoTabular th { + text-align: center; + font-weight: bold; +} +.dojoTabular thead, +.dojoTabular tfoot { + background-color: #efefef; + border: 1px solid #ccc; + border-width: 1px 0; +} +.dojoTabular th, +.dojoTabular td { + padding: 0.25em 0.5em; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/iframe_history.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/iframe_history.html new file mode 100644 index 00000000..2c5acce2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/iframe_history.html @@ -0,0 +1,44 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> + +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> +<head> + <title> + + + + +

    The Dojo Toolkit -- iframe_history.html

    + +

    This file is used in Dojo's back/fwd button management.

    + + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/images/dndCopy.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/images/dndCopy.png new file mode 100644 index 0000000000000000000000000000000000000000..660ca4fb10fc1a0a26bd6235a45395031d7e634e GIT binary patch literal 814 zcmV+}1JV46P)P}>M7A(51bsWI_m(WQiniHU*6AJCmEV`AdMUtm&QxDr?p zR^4G@6A_F_jnPtDzN`&G%UC{2A<*e`X5RC4N}A$|JDK-p^3FZ?o_pWr@V~Xf2OB~z zuhZ}Bbh;=d*py{?YhgQzJ%rgCYlL$R-y*JJ`oZJ-fxAPuku9%dqnJZkD}!SwE4AX+ z=im4i`4K@J4;fx-BoHx(`0KZ?`cirdscZ@rQb8fL2hGr7@d!{=h8HN#iyip#=IbJf z5pR`*H{Ds}s`FfN7Au=8AcUZ~)Pkkwt4P1dz^1lBH#C%v6vVfGqU({T4+EI4y7I8Y zHxdj4mRRK7g8~d=~mgU)(J|wV*Xc&RigsR)F>BOZQ2pCbPhWFIW=o)E-n>e=k2g+5~L=nPGH-& z!BKEP;CZYctV3-lP}w7O3x00!Nk6?jd7@NzzGIQl``B; zH%@Ck7kUB8T4(_*J9~NAEp)p+uFc}v{8KoZoKTtGZhH?#dPhu$spJ%r+ewJLh;$*1 zx%4N1DYOvCmRw>ddSg@w@`S@=a?&i+VfhI6x`yfmaqo7kzE+QVn#AesBLFUK+9i5U4+rmXF2h?Z6nK3qOI&i@1$0P;;ggN~w;y#N3J07*qoM6N<$f)S>15&!@I literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/images/dndMove.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/images/dndMove.png new file mode 100644 index 0000000000000000000000000000000000000000..74af29c08938f718f4238fb5c4f09f6750ae56dc GIT binary patch literal 785 zcmV+s1Md8ZP)7j^8B~!ytm5eA`Qiz4Q=^ARmoN zP$MF=^-@`wf2T=GrHG1(HOKDe{@%OWckgvNtB20v+;cgc-|su;eBU9mEF&xXtVD56 zz7n2BXLYmXU|pFKSlF0b8z27ePcFij`X-McM@W`{5W?@jik{n-Z@JyB8(6|JRuW4P zWf4X$A0?6rAKwkiU432sp=W4gI7!8+A0B*Z8wot^cx@Xe69|MR!7)|97J~&x47GT( zIRK+RAGTBtIy>5DR-Z@?g@hE{1f&i0yV@_fIm#iGNy2KZ!9Cl3$V}a%=b_W-)G8%O zQva*PDm?Cd&==~JFVU?*daAAUiaVZ4AQ;<3Ie$n6XGMrd5RWHRi^QX8!Jr zuOufaHOn5`nG*~gL=h>5&+#aCMvNc~A)#4#+efwp=?#!WOQu`bYuemE0IK$Sp*4&<$~+M^#ZZf?C>@s;2lGK!SOxGQ^GiMi%?n+*nxy+K|x$2 z#Ex$J-MZ^DE3=>r6qDZ39TFv(-l2cBAzNjYlzWJ7ieK=BN5TNR>Wn3W25-}DI|{B! z1E_Xb^GYuH0f=kxQQ3sy<$=|gYBJp=2_-|jy6^!TjiXkXZIjt@eTO^IdiXN^>cTuX(K-S9|!A|4M=9mq! zlPB0RiE{eSZ3JxWyq|EQ7#`MpGmJ2+CC9LidH4~84-NQ?x7vUe`7OWzEFUyg!Q)dC P00000NkvXXu0mjf^aNqO literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/images/dndNoCopy.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/images/dndNoCopy.png new file mode 100644 index 0000000000000000000000000000000000000000..998c2f2692201457b3c310e24b13e834b5b9c4c9 GIT binary patch literal 1332 zcmd5*`%lw%6#abrz*0&rGG`wY8BE10+l*+o%mp;4V-EK%lIS$wp-j}dhmY0ZNao0r zEpZh=9)91u2RkC}1D!{)^q@H#fxqhyZ8?KmtGm049~H3yp38K;!SP#$s)8=f+hk zG4h?^!w{=V)#pd*fS^hMabdU-05J+>B#{h6;tZ2HO!5=q@y&R=*vrct5U33c6T{3B z2&%>TnD>MlN!v`p!TB&;NuvuXv|g+imqycvhtDv=B)&u?2E#=VK4X8iH{R$=oI7|( zhC&sE<}*g(7gfx1Q<*njb@<*)&o%H?cISw z4G~G>WU7Tm&-UoQiOukw1~YRIq;(6fo)XXsfRsw*0Wh?cB*I`O!an+k!7!7_-Dva- zW53LsC!MMsx=d#kZtMHGtm{p}){X$?Qr=Sv(>srZb2wu6V~Z~met zk=m)WY5)ub-wFiLY{5-XXhHxi^qpD)QAee6C=@f9x^Op1A4nHL7%9wDV7+vByq+Fl zp$8Sy0+c>JMv`ADgJC&#vUEST?3WY+cRQB}r^!E0uR4TPv z-PhOG-`}s%XtY}Gz`%e`ryCp`)a&&IgJEcB$Y?YU4-cD6rje16(b3Vdu`#pRJU%`? zF)?AWSgcm-B7Z+c= zc=7V(%cZ5ISFc_zFE6jGth|2xdUbVmZEfw%n>TOYzFl8m-`Lpj2$hW zF3)=dgFjC36o$=;J$=SQ|0e_f>fXNOsq?|;sH1Ur%?b0jufi^f6iEm`2)9fCQplIT zs>mzhSKapuN+C-`XbG9ccZVJb|DAv3a_Eig*U`A3zXhsX-c6?_o}i6si}+)b{e5Dn zVRLux`kowaiT!L?h|jMVc0_^$tUKTClHO$9IpCO1&HQoUnmqwm}r=tYNF8=v1R4eLY literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/images/dndNoMove.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/resources/images/dndNoMove.png new file mode 100644 index 0000000000000000000000000000000000000000..e909173e0df652ae3585c6f9e5024749761bfc60 GIT binary patch literal 991 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbL!WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2v2c#w!6nA+G=b|3AXOaEyWBCD)eX;zLXK#<;kx%E~vncuq1fy!Z4uz`$_t-hMtpE$8FCgv&|>%xG5v#RP(q@>R%D9)9XoEIIvJs|M+uU{`iLgz9tJd2FHz{`6_ zPX0@Az`U*Msz@IzbMZK|rbxVX+TF|CS=yT!$QT2^fW z1H+FcD;|qV{9L*ArIG1#d8IoiPu>z1zAGraGB$RJq|`(SiAzpSvtwi5B&8f@V0a;? zaK+vIrFYPeimLq#40{+Dz66Ed*VdU89leo_>%5lM@8c)msB0`@U|20BdrLs@A`8pM zl(g%|k6$}>?2LxSGa31A4UHpAOdDci9_r}c6A(NhA@R}8>lP31Q5M!+Mn($)0?sfo z-sI#w#3y`DK;V(G$|VE)NBSlgG|kqsvTqLx-VzkNh=J)82ghj<(a91LzzALM63Gor z1anG){DOhp!3r4mr^ibJ-TBkg#WAGfR?-Y!7QeIGnwl7mycEn1zqvU_O}O$im+95D z>i(h(oHM+32H|eqQ-y1h?zP+jLJNvAH=+XQ6&ukoHJXV-? z*zeGvsOYM==IG`VtGxQuH%(uzY}vHX$e@#vC8F`bxwhz@g-5Jg7}+9Lhb}YrdAQAi z<4enI<0Y@Grg-kyee`HSLBR*3lhTF~zo%8Tl%34l*ubE?nXh@3cye@=-(G%kWo2>Y z$;rBha}uBVIoD2~dFITSoHIF94%0uGY8e?CnVsE`lAIL$n5DAMe@ByUcc= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/router",["./router/RouterBase"],function(_1){ +return new _1({}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/router.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/router.js.uncompressed.js new file mode 100644 index 00000000..5003963a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/router.js.uncompressed.js @@ -0,0 +1,28 @@ +define("dojo/router", [ + "./router/RouterBase" +], function(RouterBase){ + + // module: + // dojo/router + +/*===== +return { + // summary: + // A singleton-style instance of dojo/router/RouterBase. See that + // module for specifics. + // example: + // | router.register("/widgets/:id", function(evt){ + // | // If "/widgets/3" was matched, + // | // evt.params.id === "3" + // | xhr.get({ + // | url: "/some/path/" + evt.params.id, + // | load: function(data){ + // | // ... + // | } + // | }); + // | }); +}; +=====*/ + + return new RouterBase({}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/router/RouterBase.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/router/RouterBase.js new file mode 100644 index 00000000..63ec2b7d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/router/RouterBase.js @@ -0,0 +1,181 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/router/RouterBase",["dojo/_base/declare","dojo/hash","dojo/topic"],function(_1,_2,_3){ +var _4; +if(String.prototype.trim){ +_4=function(_5){ +return _5.trim(); +}; +}else{ +_4=function(_6){ +return _6.replace(/^\s\s*/,"").replace(/\s\s*$/,""); +}; +} +function _7(_8,_9,_a){ +var _b,_c,_d,_e,_f,i,l; +_b=this.callbackQueue; +_c=false; +_d=false; +_e={stopImmediatePropagation:function(){ +_c=true; +},preventDefault:function(){ +_d=true; +},oldPath:_9,newPath:_a,params:_8}; +_f=[_e]; +if(_8 instanceof Array){ +_f=_f.concat(_8); +}else{ +for(var key in _8){ +_f.push(_8[key]); +} +} +for(i=0,l=_b.length;i0?_28:null; +},_indexRoutes:function(){ +var i,l,_2a,_2b,_2c=this._routes; +_2b=this._routeIndex={}; +for(i=0,l=_2c.length;i 0 ? parameterNames : null; + }, + + _indexRoutes: function(){ + var i, l, route, routeIndex, routes = this._routes; + + // Start a new route index + routeIndex = this._routeIndex = {}; + + // Set it up again + for(i=0, l=routes.length; i= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/rpc/JsonService",["../_base/declare","../_base/Deferred","../_base/json","../_base/lang","../_base/xhr","./RpcService"],function(_1,_2,_3,_4,_5,_6){ +return _1("dojo.rpc.JsonService",_6,{bustCache:false,contentType:"application/json-rpc",lastSubmissionId:0,callRemote:function(_7,_8){ +var _9=new _2(); +this.bind(_7,_8,_9); +return _9; +},bind:function(_a,_b,_c,_d){ +var _e=_5.post({url:_d||this.serviceUrl,postData:this.createRequest(_a,_b),contentType:this.contentType,timeout:this.timeout,handleAs:"json-comment-optional"}); +_e.addCallbacks(this.resultCallback(_c),this.errorCallback(_c)); +},createRequest:function(_f,_10){ +var req={"params":_10,"method":_f,"id":++this.lastSubmissionId}; +return _3.toJson(req); +},parseResults:function(obj){ +if(_4.isObject(obj)){ +if("result" in obj){ +return obj.result; +} +if("Result" in obj){ +return obj.Result; +} +if("ResultSet" in obj){ +return obj.ResultSet; +} +} +return obj; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonService.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonService.js.uncompressed.js new file mode 100644 index 00000000..07c16d54 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonService.js.uncompressed.js @@ -0,0 +1,87 @@ +define("dojo/rpc/JsonService", [ + "../_base/declare", "../_base/Deferred", "../_base/json", "../_base/lang", "../_base/xhr", + "./RpcService" +], function(declare, Deferred, json, lang, xhr, RpcService){ + + // module: + // dojo/rpc/JsonService + + return declare("dojo.rpc.JsonService", RpcService, { + // summary: + // TODOC + + bustCache: false, + contentType: "application/json-rpc", + lastSubmissionId: 0, + + callRemote: function(method, params){ + // summary: + // call an arbitrary remote method without requiring it to be + // predefined with SMD + // method: string + // the name of the remote method you want to call. + // params: array + // array of parameters to pass to method + + var deferred = new Deferred(); + this.bind(method, params, deferred); + return deferred; + }, + + bind: function(method, parameters, deferredRequestHandler, url){ + // summary: + // JSON-RPC bind method. Takes remote method, parameters, + // deferred, and a url, calls createRequest to make a JSON-RPC + // envelope and passes that off with bind. + // method: string + // The name of the method we are calling + // parameters: array + // The parameters we are passing off to the method + // deferredRequestHandler: deferred + // The Deferred object for this particular request + + var def = xhr.post({ + url: url||this.serviceUrl, + postData: this.createRequest(method, parameters), + contentType: this.contentType, + timeout: this.timeout, + handleAs: "json-comment-optional" + }); + def.addCallbacks(this.resultCallback(deferredRequestHandler), this.errorCallback(deferredRequestHandler)); + }, + + createRequest: function(method, params){ + // summary: + // create a JSON-RPC envelope for the request + // method: string + // The name of the method we are creating the request for + // params: array + // The array of parameters for this request + + var req = { "params": params, "method": method, "id": ++this.lastSubmissionId }; + return json.toJson(req); + }, + + parseResults: function(/*anything*/obj){ + // summary: + // parse the result envelope and pass the results back to + // the callback function + // obj: Object + // Object containing envelope of data we receive from the server + + if(lang.isObject(obj)){ + if("result" in obj){ + return obj.result; + } + if("Result" in obj){ + return obj.Result; + } + if("ResultSet" in obj){ + return obj.ResultSet; + } + } + return obj; + } + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonpService.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonpService.js new file mode 100644 index 00000000..67eb1bad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonpService.js @@ -0,0 +1,28 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/rpc/JsonpService",["../_base/array","../_base/declare","../_base/lang","./RpcService","../io/script"],function(_1,_2,_3,_4,_5){ +return _2("dojo.rpc.JsonpService",_4,{constructor:function(_6,_7){ +if(this.required){ +if(_7){ +_3.mixin(this.required,_7); +} +_1.forEach(this.required,function(_8){ +if(_8==""||_8==undefined){ +throw new Error("Required Service Argument not found: "+_8); +} +}); +} +},strictArgChecks:false,bind:function(_9,_a,_b,_c){ +var _d=_5.get({url:_c||this.serviceUrl,callbackParamName:this.callbackParamName||"callback",content:this.createRequest(_a),timeout:this.timeout,handleAs:"json",preventCache:true}); +_d.addCallbacks(this.resultCallback(_b),this.errorCallback(_b)); +},createRequest:function(_e){ +var _f=(_3.isArrayLike(_e)&&_e.length==1)?_e[0]:{}; +_3.mixin(_f,this.required); +return _f; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonpService.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonpService.js.uncompressed.js new file mode 100644 index 00000000..673a68c3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/JsonpService.js.uncompressed.js @@ -0,0 +1,66 @@ +define("dojo/rpc/JsonpService", [ + "../_base/array", "../_base/declare", "../_base/lang", "./RpcService", "../io/script"], + function(array, declare, lang, RpcService, script){ + +// module: +// dojo/rpc/JsonpService + +return declare("dojo.rpc.JsonpService", RpcService, { + // summary: + // Generic JSONP service. Minimally extends RpcService to allow + // easy definition of nearly any JSONP style service. Example + // SMD files exist in dojox.data + + constructor: function(args, requiredArgs){ + if(this.required){ + if(requiredArgs){ + lang.mixin(this.required, requiredArgs); + } + + array.forEach(this.required, function(req){ + if(req=="" || req==undefined){ + throw new Error("Required Service Argument not found: "+req); + } + }); + } + }, + + strictArgChecks: false, + + bind: function(method, parameters, deferredRequestHandler, url){ + // summary: + // JSONP bind method. Takes remote method, parameters, + // deferred, and a url, calls createRequest to make a JSON-RPC + // envelope and passes that off with bind. + // method: string + // The name of the method we are calling + // parameters: array + // The parameters we are passing off to the method + // deferredRequestHandler: deferred + // The Deferred object for this particular request + + var def = script.get({ + url: url||this.serviceUrl, + callbackParamName: this.callbackParamName||"callback", + content: this.createRequest(parameters), + timeout: this.timeout, + handleAs: "json", + preventCache: true + }); + def.addCallbacks(this.resultCallback(deferredRequestHandler), this.errorCallback(deferredRequestHandler)); + }, + + createRequest: function(parameters){ + // summary: + // create a JSONP req + // params: array + // The array of parameters for this request; + + var params = (lang.isArrayLike(parameters) && parameters.length==1) ? + parameters[0] : {}; + lang.mixin(params,this.required); + return params; + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/RpcService.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/RpcService.js new file mode 100644 index 00000000..a3f216d7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/RpcService.js @@ -0,0 +1,86 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/rpc/RpcService",["../_base/array","../_base/declare","../_base/Deferred","../_base/kernel","../_base/lang","../_base/url","../_base/xhr"],function(_1,_2,_3,_4,_5,_6,_7){ +return _2("dojo.rpc.RpcService",null,{constructor:function(_8){ +if(_8){ +if((_5.isString(_8))||(_8 instanceof _6)){ +if(_8 instanceof _6){ +var _9=_8+""; +}else{ +_9=_8; +} +var _a=_7.get({url:_9,handleAs:"json-comment-optional",sync:true}); +_a.addCallback(this,"processSmd"); +_a.addErrback(function(){ +throw new Error("Unable to load SMD from "+_8); +}); +}else{ +if(_8.smdStr){ +this.processSmd(_4.eval("("+_8.smdStr+")")); +}else{ +if(_8.serviceUrl){ +this.serviceUrl=_8.serviceUrl; +} +this.timeout=_8.timeout||0; +if("strictArgChecks" in _8){ +this.strictArgChecks=_8.strictArgChecks; +} +this.processSmd(_8); +} +} +} +},strictArgChecks:true,serviceUrl:"",parseResults:function(_b){ +return _b; +},errorCallback:function(_c){ +return function(_d){ +_c.errback(_d.message); +}; +},resultCallback:function(_e){ +return _5.hitch(this,function(_f){ +if(_f.error!=null){ +var err; +if(typeof _f.error=="object"){ +err=new Error(_f.error.message); +err.code=_f.error.code; +err.error=_f.error.error; +}else{ +err=new Error(_f.error); +} +err.id=_f.id; +err.errorObject=_f; +_e.errback(err); +}else{ +_e.callback(this.parseResults(_f)); +} +}); +},generateMethod:function(_10,_11,url){ +return _5.hitch(this,function(){ +var _12=new _3(); +if((this.strictArgChecks)&&(_11!=null)&&(arguments.length!=_11.length)){ +throw new Error("Invalid number of parameters for remote method."); +}else{ +this.bind(_10,_5._toArray(arguments),_12,url); +} +return _12; +}); +},processSmd:function(_13){ +if(_13.methods){ +_1.forEach(_13.methods,function(m){ +if(m&&m.name){ +this[m.name]=this.generateMethod(m.name,m.parameters,m.url||m.serviceUrl||m.serviceURL); +if(!_5.isFunction(this[m.name])){ +throw new Error("RpcService: Failed to create"+m.name+"()"); +} +} +},this); +} +this.serviceUrl=_13.serviceUrl||_13.serviceURL; +this.required=_13.required; +this.smd=_13; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/RpcService.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/RpcService.js.uncompressed.js new file mode 100644 index 00000000..33652040 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/rpc/RpcService.js.uncompressed.js @@ -0,0 +1,178 @@ +define("dojo/rpc/RpcService", [ + "../_base/array", "../_base/declare", "../_base/Deferred", "../_base/kernel","../_base/lang", + "../_base/url", "../_base/xhr" +], function(array, declare, Deferred, kernel, lang, _Url, xhr){ + +// module: +// dojo/rpc/RpcService + +return declare("dojo.rpc.RpcService", null, { + // summary: + // TODOC + + constructor: function(args){ + // summary: + // Take a string as a url to retrieve an smd or an object that is an smd or partial smd to use + // as a definition for the service + // + // args: object + // Takes a number of properties as kwArgs for defining the service. It also + // accepts a string. When passed a string, it is treated as a url from + // which it should synchronously retrieve an smd file. Otherwise it is a kwArgs + // object. It accepts serviceUrl, to manually define a url for the rpc service + // allowing the rpc system to be used without an smd definition. strictArgChecks + // forces the system to verify that the # of arguments provided in a call + // matches those defined in the smd. smdString allows a developer to pass + // a jsonString directly, which will be converted into an object or alternatively + // smdObject is accepts an smdObject directly. + // + if(args){ + //if the arg is a string, we assume it is a url to retrieve an smd definition from + if( (lang.isString(args)) || (args instanceof _Url)){ + if (args instanceof _Url){ + var url = args + ""; + }else{ + url = args; + } + var def = xhr.get({ + url: url, + handleAs: "json-comment-optional", + sync: true + }); + + def.addCallback(this, "processSmd"); + def.addErrback(function(){ + throw new Error("Unable to load SMD from " + args); + }); + + }else if(args.smdStr){ + this.processSmd(kernel.eval("("+args.smdStr+")")); + }else{ + // otherwise we assume it's an arguments object with the following + // (optional) properties: + // - serviceUrl + // - strictArgChecks + // - smdStr + // - smdObj + + if(args.serviceUrl){ + this.serviceUrl = args.serviceUrl; + } + + this.timeout = args.timeout || 0; + + if("strictArgChecks" in args){ + this.strictArgChecks = args.strictArgChecks; + } + + this.processSmd(args); + } + } + }, + + strictArgChecks: true, + serviceUrl: "", + + parseResults: function(obj){ + // summary: + // parse the results coming back from an rpc request. this + // base implementation, just returns the full object + // subclasses should parse and only return the actual results + // obj: Object + // Object that is the return results from an rpc request + return obj; + }, + + errorCallback: function(/* dojo/_base/Deferred */ deferredRequestHandler){ + // summary: + // create callback that calls the Deferred errback method + // deferredRequestHandler: Deferred + // The deferred object handling a request. + return function(data){ + deferredRequestHandler.errback(data.message); + }; + }, + + resultCallback: function(/* dojo/_base/Deferred */ deferredRequestHandler){ + // summary: + // create callback that calls the Deferred's callback method + // deferredRequestHandler: Deferred + // The deferred object handling a request. + + return lang.hitch(this, + function(obj){ + if(obj.error!=null){ + var err; + if(typeof obj.error == 'object'){ + err = new Error(obj.error.message); + err.code = obj.error.code; + err.error = obj.error.error; + }else{ + err = new Error(obj.error); + } + err.id = obj.id; + err.errorObject = obj; + deferredRequestHandler.errback(err); + }else{ + deferredRequestHandler.callback(this.parseResults(obj)); + } + } + ); + }, + + generateMethod: function(/*string*/ method, /*array*/ parameters, /*string*/ url){ + // summary: + // generate the local bind methods for the remote object + // method: string + // The name of the method we are generating + // parameters: array + // the array of parameters for this call. + // url: string + // the service url for this call + + return lang.hitch(this, function(){ + var deferredRequestHandler = new Deferred(); + + // if params weren't specified, then we can assume it's varargs + if( (this.strictArgChecks) && + (parameters != null) && + (arguments.length != parameters.length) + ){ + // put error stuff here, no enough params + throw new Error("Invalid number of parameters for remote method."); + }else{ + this.bind(method, lang._toArray(arguments), deferredRequestHandler, url); + } + + return deferredRequestHandler; + }); + }, + + processSmd: function(object){ + // summary: + // callback method for receipt of a smd object. Parse the smd + // and generate functions based on the description + // object: + // smd object defining this service. + + if(object.methods){ + array.forEach(object.methods, function(m){ + if(m && m.name){ + this[m.name] = this.generateMethod( m.name, + m.parameters, + m.url||m.serviceUrl||m.serviceURL); + if(!lang.isFunction(this[m.name])){ + throw new Error("RpcService: Failed to create" + m.name + "()"); + /*console.log("RpcService: Failed to create", m.name, "()");*/ + } + } + }, this); + } + + this.serviceUrl = object.serviceUrl||object.serviceURL; + this.required = object.required; + this.smd = object; + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/_loader.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/_loader.js new file mode 100644 index 00000000..bb7b09d4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/_loader.js @@ -0,0 +1,40 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/selector/_loader",["../has","require"],function(_1,_2){ +"use strict"; +var _3=document.createElement("div"); +_1.add("dom-qsa2.1",!!_3.querySelectorAll); +_1.add("dom-qsa3",function(){ +try{ +_3.innerHTML="

    "; +return _3.querySelectorAll(".TEST:empty").length==1; +} +catch(e){ +} +}); +var _4; +var _5="./acme",_6="./lite"; +return {load:function(id,_7,_8,_9){ +var _a=_2; +id=id=="default"?_1("config-selectorEngine")||"css3":id; +id=id=="css2"||id=="lite"?_6:id=="css2.1"?_1("dom-qsa2.1")?_6:_5:id=="css3"?_1("dom-qsa3")?_6:_5:id=="acme"?_5:(_a=_7)&&id; +if(id.charAt(id.length-1)=="?"){ +id=id.substring(0,id.length-1); +var _b=true; +} +if(_b&&(_1("dom-compliant-qsa")||_4)){ +return _8(_4); +} +_a([id],function(_c){ +if(id!="./lite"){ +_4=_c; +} +_8(_c); +}); +}}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/_loader.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/_loader.js.uncompressed.js new file mode 100644 index 00000000..8c165c38 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/_loader.js.uncompressed.js @@ -0,0 +1,47 @@ +define("dojo/selector/_loader", ["../has", "require"], + function(has, require){ + +"use strict"; +var testDiv = document.createElement("div"); +has.add("dom-qsa2.1", !!testDiv.querySelectorAll); +has.add("dom-qsa3", function(){ + // test to see if we have a reasonable native selector engine available + try{ + testDiv.innerHTML = "

    "; // test kind of from sizzle + // Safari can't handle uppercase or unicode characters when + // in quirks mode, IE8 can't handle pseudos like :empty + return testDiv.querySelectorAll(".TEST:empty").length == 1; + }catch(e){} + }); +var fullEngine; +var acme = "./acme", lite = "./lite"; +return { + // summary: + // This module handles loading the appropriate selector engine for the given browser + + load: function(id, parentRequire, loaded, config){ + var req = require; + // here we implement the default logic for choosing a selector engine + id = id == "default" ? has("config-selectorEngine") || "css3" : id; + id = id == "css2" || id == "lite" ? lite : + id == "css2.1" ? has("dom-qsa2.1") ? lite : acme : + id == "css3" ? has("dom-qsa3") ? lite : acme : + id == "acme" ? acme : (req = parentRequire) && id; + if(id.charAt(id.length-1) == '?'){ + id = id.substring(0,id.length - 1); + var optionalLoad = true; + } + // the query engine is optional, only load it if a native one is not available or existing one has not been loaded + if(optionalLoad && (has("dom-compliant-qsa") || fullEngine)){ + return loaded(fullEngine); + } + // load the referenced selector engine + req([id], function(engine){ + if(id != "./lite"){ + fullEngine = engine; + } + loaded(engine); + }); + } +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/acme.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/acme.js new file mode 100644 index 00000000..e331b27e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/acme.js @@ -0,0 +1,792 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/selector/acme",["../dom","../sniff","../_base/array","../_base/lang","../_base/window"],function(_1,_2,_3,_4,_5){ +var _6=_4.trim; +var _7=_3.forEach; +var _8=function(){ +return _5.doc; +}; +var _9=(_8().compatMode)=="BackCompat"; +var _a=">~+"; +var _b=false; +var _c=function(){ +return true; +}; +var _d=function(_e){ +if(_a.indexOf(_e.slice(-1))>=0){ +_e+=" * "; +}else{ +_e+=" "; +} +var ts=function(s,e){ +return _6(_e.slice(s,e)); +}; +var _f=[]; +var _10=-1,_11=-1,_12=-1,_13=-1,_14=-1,_15=-1,_16=-1,_17,lc="",cc="",_18; +var x=0,ql=_e.length,_19=null,_1a=null; +var _1b=function(){ +if(_16>=0){ +var tv=(_16==x)?null:ts(_16,x); +_19[(_a.indexOf(tv)<0)?"tag":"oper"]=tv; +_16=-1; +} +}; +var _1c=function(){ +if(_15>=0){ +_19.id=ts(_15,x).replace(/\\/g,""); +_15=-1; +} +}; +var _1d=function(){ +if(_14>=0){ +_19.classes.push(ts(_14+1,x).replace(/\\/g,"")); +_14=-1; +} +}; +var _1e=function(){ +_1c(); +_1b(); +_1d(); +}; +var _1f=function(){ +_1e(); +if(_13>=0){ +_19.pseudos.push({name:ts(_13+1,x)}); +} +_19.loops=(_19.pseudos.length||_19.attrs.length||_19.classes.length); +_19.oquery=_19.query=ts(_18,x); +_19.otag=_19.tag=(_19["oper"])?null:(_19.tag||"*"); +if(_19.tag){ +_19.tag=_19.tag.toUpperCase(); +} +if(_f.length&&(_f[_f.length-1].oper)){ +_19.infixOper=_f.pop(); +_19.query=_19.infixOper.query+" "+_19.query; +} +_f.push(_19); +_19=null; +}; +for(;lc=cc,cc=_e.charAt(x),x=0){ +if(cc=="]"){ +if(!_1a.attr){ +_1a.attr=ts(_10+1,x); +}else{ +_1a.matchFor=ts((_12||_10+1),x); +} +var cmf=_1a.matchFor; +if(cmf){ +if((cmf.charAt(0)=="\"")||(cmf.charAt(0)=="'")){ +_1a.matchFor=cmf.slice(1,-1); +} +} +if(_1a.matchFor){ +_1a.matchFor=_1a.matchFor.replace(/\\/g,""); +} +_19.attrs.push(_1a); +_1a=null; +_10=_12=-1; +}else{ +if(cc=="="){ +var _20=("|~^$*".indexOf(lc)>=0)?lc:""; +_1a.type=_20+cc; +_1a.attr=ts(_10+1,x-_20.length); +_12=x+1; +} +} +}else{ +if(_11>=0){ +if(cc==")"){ +if(_13>=0){ +_1a.value=ts(_11+1,x); +} +_13=_11=-1; +} +}else{ +if(cc=="#"){ +_1e(); +_15=x+1; +}else{ +if(cc=="."){ +_1e(); +_14=x; +}else{ +if(cc==":"){ +_1e(); +_13=x; +}else{ +if(cc=="["){ +_1e(); +_10=x; +_1a={}; +}else{ +if(cc=="("){ +if(_13>=0){ +_1a={name:ts(_13+1,x),value:null}; +_19.pseudos.push(_1a); +} +_11=x; +}else{ +if((cc==" ")&&(lc!=cc)){ +_1f(); +} +} +} +} +} +} +} +} +} +return _f; +}; +var _21=function(_22,_23){ +if(!_22){ +return _23; +} +if(!_23){ +return _22; +} +return function(){ +return _22.apply(window,arguments)&&_23.apply(window,arguments); +}; +}; +var _24=function(i,arr){ +var r=arr||[]; +if(i){ +r.push(i); +} +return r; +}; +var _25=function(n){ +return (1==n.nodeType); +}; +var _26=""; +var _27=function(_28,_29){ +if(!_28){ +return _26; +} +if(_29=="class"){ +return _28.className||_26; +} +if(_29=="for"){ +return _28.htmlFor||_26; +} +if(_29=="style"){ +return _28.style.cssText||_26; +} +return (_b?_28.getAttribute(_29):_28.getAttribute(_29,2))||_26; +}; +var _2a={"*=":function(_2b,_2c){ +return function(_2d){ +return (_27(_2d,_2b).indexOf(_2c)>=0); +}; +},"^=":function(_2e,_2f){ +return function(_30){ +return (_27(_30,_2e).indexOf(_2f)==0); +}; +},"$=":function(_31,_32){ +return function(_33){ +var ea=" "+_27(_33,_31); +var _34=ea.lastIndexOf(_32); +return _34>-1&&(_34==(ea.length-_32.length)); +}; +},"~=":function(_35,_36){ +var _37=" "+_36+" "; +return function(_38){ +var ea=" "+_27(_38,_35)+" "; +return (ea.indexOf(_37)>=0); +}; +},"|=":function(_39,_3a){ +var _3b=_3a+"-"; +return function(_3c){ +var ea=_27(_3c,_39); +return ((ea==_3a)||(ea.indexOf(_3b)==0)); +}; +},"=":function(_3d,_3e){ +return function(_3f){ +return (_27(_3f,_3d)==_3e); +}; +}}; +var _40=(typeof _8().firstChild.nextElementSibling=="undefined"); +var _41=!_40?"nextElementSibling":"nextSibling"; +var _42=!_40?"previousElementSibling":"previousSibling"; +var _43=(_40?_25:_c); +var _44=function(_45){ +while(_45=_45[_42]){ +if(_43(_45)){ +return false; +} +} +return true; +}; +var _46=function(_47){ +while(_47=_47[_41]){ +if(_43(_47)){ +return false; +} +} +return true; +}; +var _48=function(_49){ +var _4a=_49.parentNode; +_4a=_4a.nodeType!=7?_4a:_4a.nextSibling; +var i=0,_4b=_4a.children||_4a.childNodes,ci=(_49["_i"]||_49.getAttribute("_i")||-1),cl=(_4a["_l"]||(typeof _4a.getAttribute!=="undefined"?_4a.getAttribute("_l"):-1)); +if(!_4b){ +return -1; +} +var l=_4b.length; +if(cl==l&&ci>=0&&cl>=0){ +return ci; +} +if(_2("ie")&&typeof _4a.setAttribute!=="undefined"){ +_4a.setAttribute("_l",l); +}else{ +_4a["_l"]=l; +} +ci=-1; +for(var te=_4a["firstElementChild"]||_4a["firstChild"];te;te=te[_41]){ +if(_43(te)){ +if(_2("ie")){ +te.setAttribute("_i",++i); +}else{ +te["_i"]=++i; +} +if(_49===te){ +ci=i; +} +} +} +return ci; +}; +var _4c=function(_4d){ +return !((_48(_4d))%2); +}; +var _4e=function(_4f){ +return ((_48(_4f))%2); +}; +var _50={"checked":function(_51,_52){ +return function(_53){ +return !!("checked" in _53?_53.checked:_53.selected); +}; +},"disabled":function(_54,_55){ +return function(_56){ +return _56.disabled; +}; +},"enabled":function(_57,_58){ +return function(_59){ +return !_59.disabled; +}; +},"first-child":function(){ +return _44; +},"last-child":function(){ +return _46; +},"only-child":function(_5a,_5b){ +return function(_5c){ +return _44(_5c)&&_46(_5c); +}; +},"empty":function(_5d,_5e){ +return function(_5f){ +var cn=_5f.childNodes; +var cnl=_5f.childNodes.length; +for(var x=cnl-1;x>=0;x--){ +var nt=cn[x].nodeType; +if((nt===1)||(nt==3)){ +return false; +} +} +return true; +}; +},"contains":function(_60,_61){ +var cz=_61.charAt(0); +if(cz=="\""||cz=="'"){ +_61=_61.slice(1,-1); +} +return function(_62){ +return (_62.innerHTML.indexOf(_61)>=0); +}; +},"not":function(_63,_64){ +var p=_d(_64)[0]; +var _65={el:1}; +if(p.tag!="*"){ +_65.tag=1; +} +if(!p.classes.length){ +_65.classes=1; +} +var ntf=_66(p,_65); +return function(_67){ +return (!ntf(_67)); +}; +},"nth-child":function(_68,_69){ +var pi=parseInt; +if(_69=="odd"){ +return _4e; +}else{ +if(_69=="even"){ +return _4c; +} +} +if(_69.indexOf("n")!=-1){ +var _6a=_69.split("n",2); +var _6b=_6a[0]?((_6a[0]=="-")?-1:pi(_6a[0])):1; +var idx=_6a[1]?pi(_6a[1]):0; +var lb=0,ub=-1; +if(_6b>0){ +if(idx<0){ +idx=(idx%_6b)&&(_6b+(idx%_6b)); +}else{ +if(idx>0){ +if(idx>=_6b){ +lb=idx-idx%_6b; +} +idx=idx%_6b; +} +} +}else{ +if(_6b<0){ +_6b*=-1; +if(idx>0){ +ub=idx; +idx=idx%_6b; +} +} +} +if(_6b>0){ +return function(_6c){ +var i=_48(_6c); +return (i>=lb)&&(ub<0||i<=ub)&&((i%_6b)==idx); +}; +}else{ +_69=idx; +} +} +var _6d=pi(_69); +return function(_6e){ +return (_48(_6e)==_6d); +}; +}}; +var _6f=(_2("ie")<9||_2("ie")==9&&_2("quirks"))?function(_70){ +var clc=_70.toLowerCase(); +if(clc=="class"){ +_70="className"; +} +return function(_71){ +return (_b?_71.getAttribute(_70):_71[_70]||_71[clc]); +}; +}:function(_72){ +return function(_73){ +return (_73&&_73.getAttribute&&_73.hasAttribute(_72)); +}; +}; +var _66=function(_74,_75){ +if(!_74){ +return _c; +} +_75=_75||{}; +var ff=null; +if(!("el" in _75)){ +ff=_21(ff,_25); +} +if(!("tag" in _75)){ +if(_74.tag!="*"){ +ff=_21(ff,function(_76){ +return (_76&&((_b?_76.tagName:_76.tagName.toUpperCase())==_74.getTag())); +}); +} +} +if(!("classes" in _75)){ +_7(_74.classes,function(_77,idx,arr){ +var re=new RegExp("(?:^|\\s)"+_77+"(?:\\s|$)"); +ff=_21(ff,function(_78){ +return re.test(_78.className); +}); +ff.count=idx; +}); +} +if(!("pseudos" in _75)){ +_7(_74.pseudos,function(_79){ +var pn=_79.name; +if(_50[pn]){ +ff=_21(ff,_50[pn](pn,_79.value)); +} +}); +} +if(!("attrs" in _75)){ +_7(_74.attrs,function(_7a){ +var _7b; +var a=_7a.attr; +if(_7a.type&&_2a[_7a.type]){ +_7b=_2a[_7a.type](a,_7a.matchFor); +}else{ +if(a.length){ +_7b=_6f(a); +} +} +if(_7b){ +ff=_21(ff,_7b); +} +}); +} +if(!("id" in _75)){ +if(_74.id){ +ff=_21(ff,function(_7c){ +return (!!_7c&&(_7c.id==_74.id)); +}); +} +} +if(!ff){ +if(!("default" in _75)){ +ff=_c; +} +} +return ff; +}; +var _7d=function(_7e){ +return function(_7f,ret,bag){ +while(_7f=_7f[_41]){ +if(_40&&(!_25(_7f))){ +continue; +} +if((!bag||_80(_7f,bag))&&_7e(_7f)){ +ret.push(_7f); +} +break; +} +return ret; +}; +}; +var _81=function(_82){ +return function(_83,ret,bag){ +var te=_83[_41]; +while(te){ +if(_43(te)){ +if(bag&&!_80(te,bag)){ +break; +} +if(_82(te)){ +ret.push(te); +} +} +te=te[_41]; +} +return ret; +}; +}; +var _84=function(_85){ +_85=_85||_c; +return function(_86,ret,bag){ +var te,x=0,_87=_86.children||_86.childNodes; +while(te=_87[x++]){ +if(_43(te)&&(!bag||_80(te,bag))&&(_85(te,x))){ +ret.push(te); +} +} +return ret; +}; +}; +var _88=function(_89,_8a){ +var pn=_89.parentNode; +while(pn){ +if(pn==_8a){ +break; +} +pn=pn.parentNode; +} +return !!pn; +}; +var _8b={}; +var _8c=function(_8d){ +var _8e=_8b[_8d.query]; +if(_8e){ +return _8e; +} +var io=_8d.infixOper; +var _8f=(io?io.oper:""); +var _90=_66(_8d,{el:1}); +var qt=_8d.tag; +var _91=("*"==qt); +var ecs=_8()["getElementsByClassName"]; +if(!_8f){ +if(_8d.id){ +_90=(!_8d.loops&&_91)?_c:_66(_8d,{el:1,id:1}); +_8e=function(_92,arr){ +var te=_1.byId(_8d.id,(_92.ownerDocument||_92)); +if(!te||!_90(te)){ +return; +} +if(9==_92.nodeType){ +return _24(te,arr); +}else{ +if(_88(te,_92)){ +return _24(te,arr); +} +} +}; +}else{ +if(ecs&&/\{\s*\[native code\]\s*\}/.test(String(ecs))&&_8d.classes.length&&!_9){ +_90=_66(_8d,{el:1,classes:1,id:1}); +var _93=_8d.classes.join(" "); +_8e=function(_94,arr,bag){ +var ret=_24(0,arr),te,x=0; +var _95=_94.getElementsByClassName(_93); +while((te=_95[x++])){ +if(_90(te,_94)&&_80(te,bag)){ +ret.push(te); +} +} +return ret; +}; +}else{ +if(!_91&&!_8d.loops){ +_8e=function(_96,arr,bag){ +var ret=_24(0,arr),te,x=0; +var tag=_8d.getTag(),_97=tag?_96.getElementsByTagName(tag):[]; +while((te=_97[x++])){ +if(_80(te,bag)){ +ret.push(te); +} +} +return ret; +}; +}else{ +_90=_66(_8d,{el:1,tag:1,id:1}); +_8e=function(_98,arr,bag){ +var ret=_24(0,arr),te,x=0; +var tag=_8d.getTag(),_99=tag?_98.getElementsByTagName(tag):[]; +while((te=_99[x++])){ +if(_90(te,_98)&&_80(te,bag)){ +ret.push(te); +} +} +return ret; +}; +} +} +} +}else{ +var _9a={el:1}; +if(_91){ +_9a.tag=1; +} +_90=_66(_8d,_9a); +if("+"==_8f){ +_8e=_7d(_90); +}else{ +if("~"==_8f){ +_8e=_81(_90); +}else{ +if(">"==_8f){ +_8e=_84(_90); +} +} +} +} +return _8b[_8d.query]=_8e; +}; +var _9b=function(_9c,_9d){ +var _9e=_24(_9c),qp,x,te,qpl=_9d.length,bag,ret; +for(var i=0;i0){ +bag={}; +ret.nozip=true; +} +var gef=_8c(qp); +for(var j=0;(te=_9e[j]);j++){ +gef(te,ret,bag); +} +if(!ret.length){ +break; +} +_9e=ret; +} +return ret; +}; +var _9f={},_a0={}; +var _a1=function(_a2){ +var _a3=_d(_6(_a2)); +if(_a3.length==1){ +var tef=_8c(_a3[0]); +return function(_a4){ +var r=tef(_a4,[]); +if(r){ +r.nozip=true; +} +return r; +}; +} +return function(_a5){ +return _9b(_a5,_a3); +}; +}; +var _a6=_2("ie")?"commentStrip":"nozip"; +var qsa="querySelectorAll"; +var _a7=!!_8()[qsa]; +var _a8=/\\[>~+]|n\+\d|([^ \\])?([>~+])([^ =])?/g; +var _a9=function(_aa,pre,ch,_ab){ +return ch?(pre?pre+" ":"")+ch+(_ab?" "+_ab:""):_aa; +}; +var _ac=/([^[]*)([^\]]*])?/g; +var _ad=function(_ae,_af,att){ +return _af.replace(_a8,_a9)+(att||""); +}; +var _b0=function(_b1,_b2){ +_b1=_b1.replace(_ac,_ad); +if(_a7){ +var _b3=_a0[_b1]; +if(_b3&&!_b2){ +return _b3; +} +} +var _b4=_9f[_b1]; +if(_b4){ +return _b4; +} +var qcz=_b1.charAt(0); +var _b5=(-1==_b1.indexOf(" ")); +if((_b1.indexOf("#")>=0)&&(_b5)){ +_b2=true; +} +var _b6=(_a7&&(!_b2)&&(_a.indexOf(qcz)==-1)&&(!_2("ie")||(_b1.indexOf(":")==-1))&&(!(_9&&(_b1.indexOf(".")>=0)))&&(_b1.indexOf(":contains")==-1)&&(_b1.indexOf(":checked")==-1)&&(_b1.indexOf("|=")==-1)); +if(_b6){ +var tq=(_a.indexOf(_b1.charAt(_b1.length-1))>=0)?(_b1+" *"):_b1; +return _a0[_b1]=function(_b7){ +try{ +if(!((9==_b7.nodeType)||_b5)){ +throw ""; +} +var r=_b7[qsa](tq); +r[_a6]=true; +return r; +} +catch(e){ +return _b0(_b1,true)(_b7); +} +}; +}else{ +var _b8=_b1.match(/([^\s,](?:"(?:\\.|[^"])+"|'(?:\\.|[^'])+'|[^,])*)/g); +return _9f[_b1]=((_b8.length<2)?_a1(_b1):function(_b9){ +var _ba=0,ret=[],tp; +while((tp=_b8[_ba++])){ +ret=ret.concat(_a1(tp)(_b9)); +} +return ret; +}); +} +}; +var _bb=0; +var _bc=_2("ie")?function(_bd){ +if(_b){ +return (_bd.getAttribute("_uid")||_bd.setAttribute("_uid",++_bb)||_bb); +}else{ +return _bd.uniqueID; +} +}:function(_be){ +return (_be._uid||(_be._uid=++_bb)); +}; +var _80=function(_bf,bag){ +if(!bag){ +return 1; +} +var id=_bc(_bf); +if(!bag[id]){ +return bag[id]=1; +} +return 0; +}; +var _c0="_zipIdx"; +var _c1=function(arr){ +if(arr&&arr.nozip){ +return arr; +} +if(!arr||!arr.length){ +return []; +} +if(arr.length<2){ +return [arr[0]]; +} +var ret=[]; +_bb++; +var x,te; +if(_2("ie")&&_b){ +var _c2=_bb+""; +for(x=0;x= 0){ + // if we end with a ">", "+", or "~", that means we're implicitly + // searching all children, so make it explicit + query += " * "; + }else{ + // if you have not provided a terminator, one will be provided for + // you... + query += " "; + } + + var ts = function(/*Integer*/ s, /*Integer*/ e){ + // trim and slice. + + // take an index to start a string slice from and an end position + // and return a trimmed copy of that sub-string + return trim(query.slice(s, e)); + }; + + // the overall data graph of the full query, as represented by queryPart objects + var queryParts = []; + + + // state keeping vars + var inBrackets = -1, inParens = -1, inMatchFor = -1, + inPseudo = -1, inClass = -1, inId = -1, inTag = -1, currentQuoteChar, + lc = "", cc = "", pStart; + + // iteration vars + var x = 0, // index in the query + ql = query.length, + currentPart = null, // data structure representing the entire clause + _cp = null; // the current pseudo or attr matcher + + // several temporary variables are assigned to this structure during a + // potential sub-expression match: + // attr: + // a string representing the current full attribute match in a + // bracket expression + // type: + // if there's an operator in a bracket expression, this is + // used to keep track of it + // value: + // the internals of parenthetical expression for a pseudo. for + // :nth-child(2n+1), value might be "2n+1" + + var endTag = function(){ + // called when the tokenizer hits the end of a particular tag name. + // Re-sets state variables for tag matching and sets up the matcher + // to handle the next type of token (tag or operator). + if(inTag >= 0){ + var tv = (inTag == x) ? null : ts(inTag, x); // .toLowerCase(); + currentPart[ (specials.indexOf(tv) < 0) ? "tag" : "oper" ] = tv; + inTag = -1; + } + }; + + var endId = function(){ + // called when the tokenizer might be at the end of an ID portion of a match + if(inId >= 0){ + currentPart.id = ts(inId, x).replace(/\\/g, ""); + inId = -1; + } + }; + + var endClass = function(){ + // called when the tokenizer might be at the end of a class name + // match. CSS allows for multiple classes, so we augment the + // current item with another class in its list + if(inClass >= 0){ + currentPart.classes.push(ts(inClass + 1, x).replace(/\\/g, "")); + inClass = -1; + } + }; + + var endAll = function(){ + // at the end of a simple fragment, so wall off the matches + endId(); + endTag(); + endClass(); + }; + + var endPart = function(){ + endAll(); + if(inPseudo >= 0){ + currentPart.pseudos.push({ name: ts(inPseudo + 1, x) }); + } + // hint to the selector engine to tell it whether or not it + // needs to do any iteration. Many simple selectors don't, and + // we can avoid significant construction-time work by advising + // the system to skip them + currentPart.loops = ( + currentPart.pseudos.length || + currentPart.attrs.length || + currentPart.classes.length ); + + currentPart.oquery = currentPart.query = ts(pStart, x); // save the full expression as a string + + + // otag/tag are hints to suggest to the system whether or not + // it's an operator or a tag. We save a copy of otag since the + // tag name is cast to upper-case in regular HTML matches. The + // system has a global switch to figure out if the current + // expression needs to be case sensitive or not and it will use + // otag or tag accordingly + currentPart.otag = currentPart.tag = (currentPart["oper"]) ? null : (currentPart.tag || "*"); + + if(currentPart.tag){ + // if we're in a case-insensitive HTML doc, we likely want + // the toUpperCase when matching on element.tagName. If we + // do it here, we can skip the string op per node + // comparison + currentPart.tag = currentPart.tag.toUpperCase(); + } + + // add the part to the list + if(queryParts.length && (queryParts[queryParts.length-1].oper)){ + // operators are always infix, so we remove them from the + // list and attach them to the next match. The evaluator is + // responsible for sorting out how to handle them. + currentPart.infixOper = queryParts.pop(); + currentPart.query = currentPart.infixOper.query + " " + currentPart.query; + /* + console.debug( "swapping out the infix", + currentPart.infixOper, + "and attaching it to", + currentPart); + */ + } + queryParts.push(currentPart); + + currentPart = null; + }; + + // iterate over the query, character by character, building up a + // list of query part objects + for(; lc=cc, cc=query.charAt(x), x < ql; x++){ + // cc: the current character in the match + // lc: the last character (if any) + + // someone is trying to escape something, so don't try to match any + // fragments. We assume we're inside a literal. + if(lc == "\\"){ continue; } + if(!currentPart){ // a part was just ended or none has yet been created + // NOTE: I hate all this alloc, but it's shorter than writing tons of if's + pStart = x; + // rules describe full CSS sub-expressions, like: + // #someId + // .className:first-child + // but not: + // thinger > div.howdy[type=thinger] + // the indidual components of the previous query would be + // split into 3 parts that would be represented a structure like: + // [ + // { + // query: "thinger", + // tag: "thinger", + // }, + // { + // query: "div.howdy[type=thinger]", + // classes: ["howdy"], + // infixOper: { + // query: ">", + // oper: ">", + // } + // }, + // ] + currentPart = { + query: null, // the full text of the part's rule + pseudos: [], // CSS supports multiple pseud-class matches in a single rule + attrs: [], // CSS supports multi-attribute match, so we need an array + classes: [], // class matches may be additive, e.g.: .thinger.blah.howdy + tag: null, // only one tag... + oper: null, // ...or operator per component. Note that these wind up being exclusive. + id: null, // the id component of a rule + getTag: function(){ + return caseSensitive ? this.otag : this.tag; + } + }; + + // if we don't have a part, we assume we're going to start at + // the beginning of a match, which should be a tag name. This + // might fault a little later on, but we detect that and this + // iteration will still be fine. + inTag = x; + } + + // Skip processing all quoted characters. + // If we are inside quoted text then currentQuoteChar stores the character that began the quote, + // thus that character that will end it. + if(currentQuoteChar){ + if(cc == currentQuoteChar){ + currentQuoteChar = null; + } + continue; + }else if (cc == "'" || cc == '"'){ + currentQuoteChar = cc; + continue; + } + + if(inBrackets >= 0){ + // look for a the close first + if(cc == "]"){ // if we're in a [...] clause and we end, do assignment + if(!_cp.attr){ + // no attribute match was previously begun, so we + // assume this is an attribute existence match in the + // form of [someAttributeName] + _cp.attr = ts(inBrackets+1, x); + }else{ + // we had an attribute already, so we know that we're + // matching some sort of value, as in [attrName=howdy] + _cp.matchFor = ts((inMatchFor||inBrackets+1), x); + } + var cmf = _cp.matchFor; + if(cmf){ + // try to strip quotes from the matchFor value. We want + // [attrName=howdy] to match the same + // as [attrName = 'howdy' ] + if( (cmf.charAt(0) == '"') || (cmf.charAt(0) == "'") ){ + _cp.matchFor = cmf.slice(1, -1); + } + } + // remove backslash escapes from an attribute match, since DOM + // querying will get attribute values without backslashes + if(_cp.matchFor){ + _cp.matchFor = _cp.matchFor.replace(/\\/g, ""); + } + + // end the attribute by adding it to the list of attributes. + currentPart.attrs.push(_cp); + _cp = null; // necessary? + inBrackets = inMatchFor = -1; + }else if(cc == "="){ + // if the last char was an operator prefix, make sure we + // record it along with the "=" operator. + var addToCc = ("|~^$*".indexOf(lc) >=0 ) ? lc : ""; + _cp.type = addToCc+cc; + _cp.attr = ts(inBrackets+1, x-addToCc.length); + inMatchFor = x+1; + } + // now look for other clause parts + }else if(inParens >= 0){ + // if we're in a parenthetical expression, we need to figure + // out if it's attached to a pseudo-selector rule like + // :nth-child(1) + if(cc == ")"){ + if(inPseudo >= 0){ + _cp.value = ts(inParens+1, x); + } + inPseudo = inParens = -1; + } + }else if(cc == "#"){ + // start of an ID match + endAll(); + inId = x+1; + }else if(cc == "."){ + // start of a class match + endAll(); + inClass = x; + }else if(cc == ":"){ + // start of a pseudo-selector match + endAll(); + inPseudo = x; + }else if(cc == "["){ + // start of an attribute match. + endAll(); + inBrackets = x; + // provide a new structure for the attribute match to fill-in + _cp = { + /*===== + attr: null, type: null, matchFor: null + =====*/ + }; + }else if(cc == "("){ + // we really only care if we've entered a parenthetical + // expression if we're already inside a pseudo-selector match + if(inPseudo >= 0){ + // provide a new structure for the pseudo match to fill-in + _cp = { + name: ts(inPseudo+1, x), + value: null + }; + currentPart.pseudos.push(_cp); + } + inParens = x; + }else if( + (cc == " ") && + // if it's a space char and the last char is too, consume the + // current one without doing more work + (lc != cc) + ){ + endPart(); + } + } + return queryParts; + }; + + + //////////////////////////////////////////////////////////////////////// + // DOM query infrastructure + //////////////////////////////////////////////////////////////////////// + + var agree = function(first, second){ + // the basic building block of the yes/no chaining system. agree(f1, + // f2) generates a new function which returns the boolean results of + // both of the passed functions to a single logical-anded result. If + // either are not passed, the other is used exclusively. + if(!first){ return second; } + if(!second){ return first; } + + return function(){ + return first.apply(window, arguments) && second.apply(window, arguments); + }; + }; + + var getArr = function(i, arr){ + // helps us avoid array alloc when we don't need it + var r = arr||[]; // FIXME: should this be 'new d._NodeListCtor()' ? + if(i){ r.push(i); } + return r; + }; + + var _isElement = function(n){ return (1 == n.nodeType); }; + + // FIXME: need to coalesce _getAttr with defaultGetter + var blank = ""; + var _getAttr = function(elem, attr){ + if(!elem){ return blank; } + if(attr == "class"){ + return elem.className || blank; + } + if(attr == "for"){ + return elem.htmlFor || blank; + } + if(attr == "style"){ + return elem.style.cssText || blank; + } + return (caseSensitive ? elem.getAttribute(attr) : elem.getAttribute(attr, 2)) || blank; + }; + + var attrs = { + "*=": function(attr, value){ + return function(elem){ + // E[foo*="bar"] + // an E element whose "foo" attribute value contains + // the substring "bar" + return (_getAttr(elem, attr).indexOf(value)>=0); + }; + }, + "^=": function(attr, value){ + // E[foo^="bar"] + // an E element whose "foo" attribute value begins exactly + // with the string "bar" + return function(elem){ + return (_getAttr(elem, attr).indexOf(value)==0); + }; + }, + "$=": function(attr, value){ + // E[foo$="bar"] + // an E element whose "foo" attribute value ends exactly + // with the string "bar" + return function(elem){ + var ea = " "+_getAttr(elem, attr); + var lastIndex = ea.lastIndexOf(value); + return lastIndex > -1 && (lastIndex==(ea.length-value.length)); + }; + }, + "~=": function(attr, value){ + // E[foo~="bar"] + // an E element whose "foo" attribute value is a list of + // space-separated values, one of which is exactly equal + // to "bar" + + // return "[contains(concat(' ',@"+attr+",' '), ' "+ value +" ')]"; + var tval = " "+value+" "; + return function(elem){ + var ea = " "+_getAttr(elem, attr)+" "; + return (ea.indexOf(tval)>=0); + }; + }, + "|=": function(attr, value){ + // E[hreflang|="en"] + // an E element whose "hreflang" attribute has a + // hyphen-separated list of values beginning (from the + // left) with "en" + var valueDash = value+"-"; + return function(elem){ + var ea = _getAttr(elem, attr); + return ( + (ea == value) || + (ea.indexOf(valueDash)==0) + ); + }; + }, + "=": function(attr, value){ + return function(elem){ + return (_getAttr(elem, attr) == value); + }; + } + }; + + // avoid testing for node type if we can. Defining this in the negative + // here to avoid negation in the fast path. + var _noNES = (typeof getDoc().firstChild.nextElementSibling == "undefined"); + var _ns = !_noNES ? "nextElementSibling" : "nextSibling"; + var _ps = !_noNES ? "previousElementSibling" : "previousSibling"; + var _simpleNodeTest = (_noNES ? _isElement : yesman); + + var _lookLeft = function(node){ + // look left + while(node = node[_ps]){ + if(_simpleNodeTest(node)){ return false; } + } + return true; + }; + + var _lookRight = function(node){ + // look right + while(node = node[_ns]){ + if(_simpleNodeTest(node)){ return false; } + } + return true; + }; + + var getNodeIndex = function(node){ + var root = node.parentNode; + root = root.nodeType != 7 ? root : root.nextSibling; // PROCESSING_INSTRUCTION_NODE + var i = 0, + tret = root.children || root.childNodes, + ci = (node["_i"]||node.getAttribute("_i")||-1), + cl = (root["_l"]|| (typeof root.getAttribute !== "undefined" ? root.getAttribute("_l") : -1)); + + if(!tret){ return -1; } + var l = tret.length; + + // we calculate the parent length as a cheap way to invalidate the + // cache. It's not 100% accurate, but it's much more honest than what + // other libraries do + if( cl == l && ci >= 0 && cl >= 0 ){ + // if it's legit, tag and release + return ci; + } + + // else re-key things + if(has("ie") && typeof root.setAttribute !== "undefined"){ + root.setAttribute("_l", l); + }else{ + root["_l"] = l; + } + ci = -1; + for(var te = root["firstElementChild"]||root["firstChild"]; te; te = te[_ns]){ + if(_simpleNodeTest(te)){ + if(has("ie")){ + te.setAttribute("_i", ++i); + }else{ + te["_i"] = ++i; + } + if(node === te){ + // NOTE: + // shortcutting the return at this step in indexing works + // very well for benchmarking but we avoid it here since + // it leads to potential O(n^2) behavior in sequential + // getNodexIndex operations on a previously un-indexed + // parent. We may revisit this at a later time, but for + // now we just want to get the right answer more often + // than not. + ci = i; + } + } + } + return ci; + }; + + var isEven = function(elem){ + return !((getNodeIndex(elem)) % 2); + }; + + var isOdd = function(elem){ + return ((getNodeIndex(elem)) % 2); + }; + + var pseudos = { + "checked": function(name, condition){ + return function(elem){ + return !!("checked" in elem ? elem.checked : elem.selected); + }; + }, + "disabled": function(name, condition){ + return function(elem){ + return elem.disabled; + }; + }, + "enabled": function(name, condition){ + return function(elem){ + return !elem.disabled; + }; + }, + "first-child": function(){ return _lookLeft; }, + "last-child": function(){ return _lookRight; }, + "only-child": function(name, condition){ + return function(node){ + return _lookLeft(node) && _lookRight(node); + }; + }, + "empty": function(name, condition){ + return function(elem){ + // DomQuery and jQuery get this wrong, oddly enough. + // The CSS 3 selectors spec is pretty explicit about it, too. + var cn = elem.childNodes; + var cnl = elem.childNodes.length; + // if(!cnl){ return true; } + for(var x=cnl-1; x >= 0; x--){ + var nt = cn[x].nodeType; + if((nt === 1)||(nt == 3)){ return false; } + } + return true; + }; + }, + "contains": function(name, condition){ + var cz = condition.charAt(0); + if( cz == '"' || cz == "'" ){ //remove quote + condition = condition.slice(1, -1); + } + return function(elem){ + return (elem.innerHTML.indexOf(condition) >= 0); + }; + }, + "not": function(name, condition){ + var p = getQueryParts(condition)[0]; + var ignores = { el: 1 }; + if(p.tag != "*"){ + ignores.tag = 1; + } + if(!p.classes.length){ + ignores.classes = 1; + } + var ntf = getSimpleFilterFunc(p, ignores); + return function(elem){ + return (!ntf(elem)); + }; + }, + "nth-child": function(name, condition){ + var pi = parseInt; + // avoid re-defining function objects if we can + if(condition == "odd"){ + return isOdd; + }else if(condition == "even"){ + return isEven; + } + // FIXME: can we shorten this? + if(condition.indexOf("n") != -1){ + var tparts = condition.split("n", 2); + var pred = tparts[0] ? ((tparts[0] == '-') ? -1 : pi(tparts[0])) : 1; + var idx = tparts[1] ? pi(tparts[1]) : 0; + var lb = 0, ub = -1; + if(pred > 0){ + if(idx < 0){ + idx = (idx % pred) && (pred + (idx % pred)); + }else if(idx>0){ + if(idx >= pred){ + lb = idx - idx % pred; + } + idx = idx % pred; + } + }else if(pred<0){ + pred *= -1; + // idx has to be greater than 0 when pred is negative; + // shall we throw an error here? + if(idx > 0){ + ub = idx; + idx = idx % pred; + } + } + if(pred > 0){ + return function(elem){ + var i = getNodeIndex(elem); + return (i>=lb) && (ub<0 || i<=ub) && ((i % pred) == idx); + }; + }else{ + condition = idx; + } + } + var ncount = pi(condition); + return function(elem){ + return (getNodeIndex(elem) == ncount); + }; + } + }; + + var defaultGetter = (has("ie") < 9 || has("ie") == 9 && has("quirks")) ? function(cond){ + var clc = cond.toLowerCase(); + if(clc == "class"){ cond = "className"; } + return function(elem){ + return (caseSensitive ? elem.getAttribute(cond) : elem[cond]||elem[clc]); + }; + } : function(cond){ + return function(elem){ + return (elem && elem.getAttribute && elem.hasAttribute(cond)); + }; + }; + + var getSimpleFilterFunc = function(query, ignores){ + // generates a node tester function based on the passed query part. The + // query part is one of the structures generated by the query parser + // when it creates the query AST. The "ignores" object specifies which + // (if any) tests to skip, allowing the system to avoid duplicating + // work where it may have already been taken into account by other + // factors such as how the nodes to test were fetched in the first + // place + if(!query){ return yesman; } + ignores = ignores||{}; + + var ff = null; + + if(!("el" in ignores)){ + ff = agree(ff, _isElement); + } + + if(!("tag" in ignores)){ + if(query.tag != "*"){ + ff = agree(ff, function(elem){ + return (elem && ((caseSensitive ? elem.tagName : elem.tagName.toUpperCase()) == query.getTag())); + }); + } + } + + if(!("classes" in ignores)){ + each(query.classes, function(cname, idx, arr){ + // get the class name + /* + var isWildcard = cname.charAt(cname.length-1) == "*"; + if(isWildcard){ + cname = cname.substr(0, cname.length-1); + } + // I dislike the regex thing, even if memoized in a cache, but it's VERY short + var re = new RegExp("(?:^|\\s)" + cname + (isWildcard ? ".*" : "") + "(?:\\s|$)"); + */ + var re = new RegExp("(?:^|\\s)" + cname + "(?:\\s|$)"); + ff = agree(ff, function(elem){ + return re.test(elem.className); + }); + ff.count = idx; + }); + } + + if(!("pseudos" in ignores)){ + each(query.pseudos, function(pseudo){ + var pn = pseudo.name; + if(pseudos[pn]){ + ff = agree(ff, pseudos[pn](pn, pseudo.value)); + } + }); + } + + if(!("attrs" in ignores)){ + each(query.attrs, function(attr){ + var matcher; + var a = attr.attr; + // type, attr, matchFor + if(attr.type && attrs[attr.type]){ + matcher = attrs[attr.type](a, attr.matchFor); + }else if(a.length){ + matcher = defaultGetter(a); + } + if(matcher){ + ff = agree(ff, matcher); + } + }); + } + + if(!("id" in ignores)){ + if(query.id){ + ff = agree(ff, function(elem){ + return (!!elem && (elem.id == query.id)); + }); + } + } + + if(!ff){ + if(!("default" in ignores)){ + ff = yesman; + } + } + return ff; + }; + + var _nextSibling = function(filterFunc){ + return function(node, ret, bag){ + while(node = node[_ns]){ + if(_noNES && (!_isElement(node))){ continue; } + if( + (!bag || _isUnique(node, bag)) && + filterFunc(node) + ){ + ret.push(node); + } + break; + } + return ret; + }; + }; + + var _nextSiblings = function(filterFunc){ + return function(root, ret, bag){ + var te = root[_ns]; + while(te){ + if(_simpleNodeTest(te)){ + if(bag && !_isUnique(te, bag)){ + break; + } + if(filterFunc(te)){ + ret.push(te); + } + } + te = te[_ns]; + } + return ret; + }; + }; + + // get an array of child *elements*, skipping text and comment nodes + var _childElements = function(filterFunc){ + filterFunc = filterFunc||yesman; + return function(root, ret, bag){ + // get an array of child elements, skipping text and comment nodes + var te, x = 0, tret = root.children || root.childNodes; + while(te = tret[x++]){ + if( + _simpleNodeTest(te) && + (!bag || _isUnique(te, bag)) && + (filterFunc(te, x)) + ){ + ret.push(te); + } + } + return ret; + }; + }; + + // test to see if node is below root + var _isDescendant = function(node, root){ + var pn = node.parentNode; + while(pn){ + if(pn == root){ + break; + } + pn = pn.parentNode; + } + return !!pn; + }; + + var _getElementsFuncCache = {}; + + var getElementsFunc = function(query){ + var retFunc = _getElementsFuncCache[query.query]; + // if we've got a cached dispatcher, just use that + if(retFunc){ return retFunc; } + // else, generate a new on + + // NOTE: + // this function returns a function that searches for nodes and + // filters them. The search may be specialized by infix operators + // (">", "~", or "+") else it will default to searching all + // descendants (the " " selector). Once a group of children is + // found, a test function is applied to weed out the ones we + // don't want. Many common cases can be fast-pathed. We spend a + // lot of cycles to create a dispatcher that doesn't do more work + // than necessary at any point since, unlike this function, the + // dispatchers will be called every time. The logic of generating + // efficient dispatchers looks like this in pseudo code: + // + // # if it's a purely descendant query (no ">", "+", or "~" modifiers) + // if infixOperator == " ": + // if only(id): + // return def(root): + // return d.byId(id, root); + // + // elif id: + // return def(root): + // return filter(d.byId(id, root)); + // + // elif cssClass && getElementsByClassName: + // return def(root): + // return filter(root.getElementsByClassName(cssClass)); + // + // elif only(tag): + // return def(root): + // return root.getElementsByTagName(tagName); + // + // else: + // # search by tag name, then filter + // return def(root): + // return filter(root.getElementsByTagName(tagName||"*")); + // + // elif infixOperator == ">": + // # search direct children + // return def(root): + // return filter(root.children); + // + // elif infixOperator == "+": + // # search next sibling + // return def(root): + // return filter(root.nextElementSibling); + // + // elif infixOperator == "~": + // # search rightward siblings + // return def(root): + // return filter(nextSiblings(root)); + + var io = query.infixOper; + var oper = (io ? io.oper : ""); + // the default filter func which tests for all conditions in the query + // part. This is potentially inefficient, so some optimized paths may + // re-define it to test fewer things. + var filterFunc = getSimpleFilterFunc(query, { el: 1 }); + var qt = query.tag; + var wildcardTag = ("*" == qt); + var ecs = getDoc()["getElementsByClassName"]; + + if(!oper){ + // if there's no infix operator, then it's a descendant query. ID + // and "elements by class name" variants can be accelerated so we + // call them out explicitly: + if(query.id){ + // testing shows that the overhead of yesman() is acceptable + // and can save us some bytes vs. re-defining the function + // everywhere. + filterFunc = (!query.loops && wildcardTag) ? + yesman : + getSimpleFilterFunc(query, { el: 1, id: 1 }); + + retFunc = function(root, arr){ + var te = dom.byId(query.id, (root.ownerDocument||root)); + if(!te || !filterFunc(te)){ return; } + if(9 == root.nodeType){ // if root's a doc, we just return directly + return getArr(te, arr); + }else{ // otherwise check ancestry + if(_isDescendant(te, root)){ + return getArr(te, arr); + } + } + }; + }else if( + ecs && + // isAlien check. Workaround for Prototype.js being totally evil/dumb. + /\{\s*\[native code\]\s*\}/.test(String(ecs)) && + query.classes.length && + !cssCaseBug + ){ + // it's a class-based query and we've got a fast way to run it. + + // ignore class and ID filters since we will have handled both + filterFunc = getSimpleFilterFunc(query, { el: 1, classes: 1, id: 1 }); + var classesString = query.classes.join(" "); + retFunc = function(root, arr, bag){ + var ret = getArr(0, arr), te, x=0; + var tret = root.getElementsByClassName(classesString); + while((te = tret[x++])){ + if(filterFunc(te, root) && _isUnique(te, bag)){ + ret.push(te); + } + } + return ret; + }; + + }else if(!wildcardTag && !query.loops){ + // it's tag only. Fast-path it. + retFunc = function(root, arr, bag){ + var ret = getArr(0, arr), te, x=0; + var tag = query.getTag(), + tret = tag ? root.getElementsByTagName(tag) : []; + while((te = tret[x++])){ + if(_isUnique(te, bag)){ + ret.push(te); + } + } + return ret; + }; + }else{ + // the common case: + // a descendant selector without a fast path. By now it's got + // to have a tag selector, even if it's just "*" so we query + // by that and filter + filterFunc = getSimpleFilterFunc(query, { el: 1, tag: 1, id: 1 }); + retFunc = function(root, arr, bag){ + var ret = getArr(0, arr), te, x=0; + // we use getTag() to avoid case sensitivity issues + var tag = query.getTag(), + tret = tag ? root.getElementsByTagName(tag) : []; + while((te = tret[x++])){ + if(filterFunc(te, root) && _isUnique(te, bag)){ + ret.push(te); + } + } + return ret; + }; + } + }else{ + // the query is scoped in some way. Instead of querying by tag we + // use some other collection to find candidate nodes + var skipFilters = { el: 1 }; + if(wildcardTag){ + skipFilters.tag = 1; + } + filterFunc = getSimpleFilterFunc(query, skipFilters); + if("+" == oper){ + retFunc = _nextSibling(filterFunc); + }else if("~" == oper){ + retFunc = _nextSiblings(filterFunc); + }else if(">" == oper){ + retFunc = _childElements(filterFunc); + } + } + // cache it and return + return _getElementsFuncCache[query.query] = retFunc; + }; + + var filterDown = function(root, queryParts){ + // NOTE: + // this is the guts of the DOM query system. It takes a list of + // parsed query parts and a root and finds children which match + // the selector represented by the parts + var candidates = getArr(root), qp, x, te, qpl = queryParts.length, bag, ret; + + for(var i = 0; i < qpl; i++){ + ret = []; + qp = queryParts[i]; + x = candidates.length - 1; + if(x > 0){ + // if we have more than one root at this level, provide a new + // hash to use for checking group membership but tell the + // system not to post-filter us since we will already have been + // guaranteed to be unique + bag = {}; + ret.nozip = true; + } + var gef = getElementsFunc(qp); + for(var j = 0; (te = candidates[j]); j++){ + // for every root, get the elements that match the descendant + // selector, adding them to the "ret" array and filtering them + // via membership in this level's bag. If there are more query + // parts, then this level's return will be used as the next + // level's candidates + gef(te, ret, bag); + } + if(!ret.length){ break; } + candidates = ret; + } + return ret; + }; + + //////////////////////////////////////////////////////////////////////// + // the query runner + //////////////////////////////////////////////////////////////////////// + + // these are the primary caches for full-query results. The query + // dispatcher functions are generated then stored here for hash lookup in + // the future + var _queryFuncCacheDOM = {}, + _queryFuncCacheQSA = {}; + + // this is the second level of splitting, from full-length queries (e.g., + // "div.foo .bar") into simple query expressions (e.g., ["div.foo", + // ".bar"]) + var getStepQueryFunc = function(query){ + var qparts = getQueryParts(trim(query)); + + // if it's trivial, avoid iteration and zipping costs + if(qparts.length == 1){ + // we optimize this case here to prevent dispatch further down the + // chain, potentially slowing things down. We could more elegantly + // handle this in filterDown(), but it's slower for simple things + // that need to be fast (e.g., "#someId"). + var tef = getElementsFunc(qparts[0]); + return function(root){ + var r = tef(root, []); + if(r){ r.nozip = true; } + return r; + }; + } + + // otherwise, break it up and return a runner that iterates over the parts recursively + return function(root){ + return filterDown(root, qparts); + }; + }; + + // NOTES: + // * we can't trust QSA for anything but document-rooted queries, so + // caching is split into DOM query evaluators and QSA query evaluators + // * caching query results is dirty and leak-prone (or, at a minimum, + // prone to unbounded growth). Other toolkits may go this route, but + // they totally destroy their own ability to manage their memory + // footprint. If we implement it, it should only ever be with a fixed + // total element reference # limit and an LRU-style algorithm since JS + // has no weakref support. Caching compiled query evaluators is also + // potentially problematic, but even on large documents the size of the + // query evaluators is often < 100 function objects per evaluator (and + // LRU can be applied if it's ever shown to be an issue). + // * since IE's QSA support is currently only for HTML documents and even + // then only in IE 8's "standards mode", we have to detect our dispatch + // route at query time and keep 2 separate caches. Ugg. + + // we need to determine if we think we can run a given query via + // querySelectorAll or if we'll need to fall back on DOM queries to get + // there. We need a lot of information about the environment and the query + // to make the determination (e.g. does it support QSA, does the query in + // question work in the native QSA impl, etc.). + + // IE QSA queries may incorrectly include comment nodes, so we throw the + // zipping function into "remove" comments mode instead of the normal "skip + // it" which every other QSA-clued browser enjoys + var noZip = has("ie") ? "commentStrip" : "nozip"; + + var qsa = "querySelectorAll"; + var qsaAvail = !!getDoc()[qsa]; + + //Don't bother with n+3 type of matches, IE complains if we modify those. + var infixSpaceRe = /\\[>~+]|n\+\d|([^ \\])?([>~+])([^ =])?/g; + var infixSpaceFunc = function(match, pre, ch, post){ + return ch ? (pre ? pre + " " : "") + ch + (post ? " " + post : "") : /*n+3*/ match; + }; + + //Don't apply the infixSpaceRe to attribute value selectors + var attRe = /([^[]*)([^\]]*])?/g; + var attFunc = function(match, nonAtt, att){ + return nonAtt.replace(infixSpaceRe, infixSpaceFunc) + (att||""); + }; + var getQueryFunc = function(query, forceDOM){ + //Normalize query. The CSS3 selectors spec allows for omitting spaces around + //infix operators, >, ~ and + + //Do the work here since detection for spaces is used as a simple "not use QSA" + //test below. + query = query.replace(attRe, attFunc); + + if(qsaAvail){ + // if we've got a cached variant and we think we can do it, run it! + var qsaCached = _queryFuncCacheQSA[query]; + if(qsaCached && !forceDOM){ return qsaCached; } + } + + // else if we've got a DOM cached variant, assume that we already know + // all we need to and use it + var domCached = _queryFuncCacheDOM[query]; + if(domCached){ return domCached; } + + // TODO: + // today we're caching DOM and QSA branches separately so we + // recalc useQSA every time. If we had a way to tag root+query + // efficiently, we'd be in good shape to do a global cache. + + var qcz = query.charAt(0); + var nospace = (-1 == query.indexOf(" ")); + + // byId searches are wicked fast compared to QSA, even when filtering + // is required + if( (query.indexOf("#") >= 0) && (nospace) ){ + forceDOM = true; + } + + var useQSA = ( + qsaAvail && (!forceDOM) && + // as per CSS 3, we can't currently start w/ combinator: + // http://www.w3.org/TR/css3-selectors/#w3cselgrammar + (specials.indexOf(qcz) == -1) && + // IE's QSA impl sucks on pseudos + (!has("ie") || (query.indexOf(":") == -1)) && + + (!(cssCaseBug && (query.indexOf(".") >= 0))) && + + // FIXME: + // need to tighten up browser rules on ":contains" and "|=" to + // figure out which aren't good + // Latest webkit (around 531.21.8) does not seem to do well with :checked on option + // elements, even though according to spec, selected options should + // match :checked. So go nonQSA for it: + // http://bugs.dojotoolkit.org/ticket/5179 + (query.indexOf(":contains") == -1) && (query.indexOf(":checked") == -1) && + (query.indexOf("|=") == -1) // some browsers don't grok it + ); + + // TODO: + // if we've got a descendant query (e.g., "> .thinger" instead of + // just ".thinger") in a QSA-able doc, but are passed a child as a + // root, it should be possible to give the item a synthetic ID and + // trivially rewrite the query to the form "#synid > .thinger" to + // use the QSA branch + + + if(useQSA){ + var tq = (specials.indexOf(query.charAt(query.length-1)) >= 0) ? + (query + " *") : query; + return _queryFuncCacheQSA[query] = function(root){ + try{ + // the QSA system contains an egregious spec bug which + // limits us, effectively, to only running QSA queries over + // entire documents. See: + // http://ejohn.org/blog/thoughts-on-queryselectorall/ + // despite this, we can also handle QSA runs on simple + // selectors, but we don't want detection to be expensive + // so we're just checking for the presence of a space char + // right now. Not elegant, but it's cheaper than running + // the query parser when we might not need to + if(!((9 == root.nodeType) || nospace)){ throw ""; } + var r = root[qsa](tq); + // skip expensive duplication checks and just wrap in a NodeList + r[noZip] = true; + return r; + }catch(e){ + // else run the DOM branch on this query, ensuring that we + // default that way in the future + return getQueryFunc(query, true)(root); + } + }; + }else{ + // DOM branch + var parts = query.match(/([^\s,](?:"(?:\\.|[^"])+"|'(?:\\.|[^'])+'|[^,])*)/g); + return _queryFuncCacheDOM[query] = ((parts.length < 2) ? + // if not a compound query (e.g., ".foo, .bar"), cache and return a dispatcher + getStepQueryFunc(query) : + // if it *is* a complex query, break it up into its + // constituent parts and return a dispatcher that will + // merge the parts when run + function(root){ + var pindex = 0, // avoid array alloc for every invocation + ret = [], + tp; + while((tp = parts[pindex++])){ + ret = ret.concat(getStepQueryFunc(tp)(root)); + } + return ret; + } + ); + } + }; + + var _zipIdx = 0; + + // NOTE: + // this function is Moo inspired, but our own impl to deal correctly + // with XML in IE + var _nodeUID = has("ie") ? function(node){ + if(caseSensitive){ + // XML docs don't have uniqueID on their nodes + return (node.getAttribute("_uid") || node.setAttribute("_uid", ++_zipIdx) || _zipIdx); + + }else{ + return node.uniqueID; + } + } : + function(node){ + return (node._uid || (node._uid = ++_zipIdx)); + }; + + // determine if a node in is unique in a "bag". In this case we don't want + // to flatten a list of unique items, but rather just tell if the item in + // question is already in the bag. Normally we'd just use hash lookup to do + // this for us but IE's DOM is busted so we can't really count on that. On + // the upside, it gives us a built in unique ID function. + var _isUnique = function(node, bag){ + if(!bag){ return 1; } + var id = _nodeUID(node); + if(!bag[id]){ return bag[id] = 1; } + return 0; + }; + + // attempt to efficiently determine if an item in a list is a dupe, + // returning a list of "uniques", hopefully in document order + var _zipIdxName = "_zipIdx"; + var _zip = function(arr){ + if(arr && arr.nozip){ return arr; } + + if(!arr || !arr.length){ return []; } + if(arr.length < 2){ return [arr[0]]; } + + var ret = []; + + _zipIdx++; + + // we have to fork here for IE and XML docs because we can't set + // expandos on their nodes (apparently). *sigh* + var x, te; + if(has("ie") && caseSensitive){ + var szidx = _zipIdx+""; + for(x = 0; x < arr.length; x++){ + if((te = arr[x]) && te.getAttribute(_zipIdxName) != szidx){ + ret.push(te); + te.setAttribute(_zipIdxName, szidx); + } + } + }else if(has("ie") && arr.commentStrip){ + try{ + for(x = 0; x < arr.length; x++){ + if((te = arr[x]) && _isElement(te)){ + ret.push(te); + } + } + }catch(e){ /* squelch */ } + }else{ + for(x = 0; x < arr.length; x++){ + if((te = arr[x]) && te[_zipIdxName] != _zipIdx){ + ret.push(te); + te[_zipIdxName] = _zipIdx; + } + } + } + return ret; + }; + + // the main executor + var query = function(/*String*/ query, /*String|DOMNode?*/ root){ + // summary: + // Returns nodes which match the given CSS3 selector, searching the + // entire document by default but optionally taking a node to scope + // the search by. Returns an array. + // description: + // dojo.query() is the swiss army knife of DOM node manipulation in + // Dojo. Much like Prototype's "$$" (bling-bling) function or JQuery's + // "$" function, dojo.query provides robust, high-performance + // CSS-based node selector support with the option of scoping searches + // to a particular sub-tree of a document. + // + // Supported Selectors: + // -------------------- + // + // acme supports a rich set of CSS3 selectors, including: + // + // - class selectors (e.g., `.foo`) + // - node type selectors like `span` + // - ` ` descendant selectors + // - `>` child element selectors + // - `#foo` style ID selectors + // - `*` universal selector + // - `~`, the preceded-by sibling selector + // - `+`, the immediately preceded-by sibling selector + // - attribute queries: + // - `[foo]` attribute presence selector + // - `[foo='bar']` attribute value exact match + // - `[foo~='bar']` attribute value list item match + // - `[foo^='bar']` attribute start match + // - `[foo$='bar']` attribute end match + // - `[foo*='bar']` attribute substring match + // - `:first-child`, `:last-child`, and `:only-child` positional selectors + // - `:empty` content emtpy selector + // - `:checked` pseudo selector + // - `:nth-child(n)`, `:nth-child(2n+1)` style positional calculations + // - `:nth-child(even)`, `:nth-child(odd)` positional selectors + // - `:not(...)` negation pseudo selectors + // + // Any legal combination of these selectors will work with + // `dojo.query()`, including compound selectors ("," delimited). + // Very complex and useful searches can be constructed with this + // palette of selectors and when combined with functions for + // manipulation presented by dojo/NodeList, many types of DOM + // manipulation operations become very straightforward. + // + // Unsupported Selectors: + // ---------------------- + // + // While dojo.query handles many CSS3 selectors, some fall outside of + // what's reasonable for a programmatic node querying engine to + // handle. Currently unsupported selectors include: + // + // - namespace-differentiated selectors of any form + // - all `::` pseduo-element selectors + // - certain pseudo-selectors which don't get a lot of day-to-day use: + // - `:root`, `:lang()`, `:target`, `:focus` + // - all visual and state selectors: + // - `:root`, `:active`, `:hover`, `:visited`, `:link`, + // `:enabled`, `:disabled` + // - `:*-of-type` pseudo selectors + // + // dojo.query and XML Documents: + // ----------------------------- + // + // `dojo.query` (as of dojo 1.2) supports searching XML documents + // in a case-sensitive manner. If an HTML document is served with + // a doctype that forces case-sensitivity (e.g., XHTML 1.1 + // Strict), dojo.query() will detect this and "do the right + // thing". Case sensitivity is dependent upon the document being + // searched and not the query used. It is therefore possible to + // use case-sensitive queries on strict sub-documents (iframes, + // etc.) or XML documents while still assuming case-insensitivity + // for a host/root document. + // + // Non-selector Queries: + // --------------------- + // + // If something other than a String is passed for the query, + // `dojo.query` will return a new `dojo/NodeList` instance + // constructed from that parameter alone and all further + // processing will stop. This means that if you have a reference + // to a node or NodeList, you can quickly construct a new NodeList + // from the original by calling `dojo.query(node)` or + // `dojo.query(list)`. + // + // query: + // The CSS3 expression to match against. For details on the syntax of + // CSS3 selectors, see + // root: + // A DOMNode (or node id) to scope the search from. Optional. + // returns: Array + // example: + // search the entire document for elements with the class "foo": + // | require(["dojo/query"], function(query) { + // | query(".foo").forEach(function(q) { console.log(q); }); + // | }); + // these elements will match: + // | + // | + // |

    + // example: + // search the entire document for elements with the classes "foo" *and* "bar": + // | require(["dojo/query"], function(query) { + // | query(".foo.bar").forEach(function(q) { console.log(q); }); + // | }); + + // these elements will match: + // | + // while these will not: + // | + // |

    + // example: + // find `` elements which are descendants of paragraphs and + // which have a "highlighted" class: + // | require(["dojo/query"], function(query) { + // | query("p span.highlighted").forEach(function(q) { console.log(q); }); + // | }); + // the innermost span in this fragment matches: + // |

    + // | ... + // | ... + // | + // |

    + // example: + // set an "odd" class on all odd table rows inside of the table + // `#tabular_data`, using the `>` (direct child) selector to avoid + // affecting any nested tables: + // | require(["dojo/query"], function(query) { + // | query("#tabular_data > tbody > tr:nth-child(odd)").addClass("odd"); + // | ); + // example: + // remove all elements with the class "error" from the document: + // | require(["dojo/query"], function(query) { + // | query(".error").orphan(); + // | ); + // example: + // add an onclick handler to every submit button in the document + // which causes the form to be sent via Ajax instead: + // | require(["dojo/query", "dojo/request", "dojo/dom-construct", "dojo/dom-style" + // | ], function (query, request, domConstruct, domStyle) { + // | query("input[type='submit']").on("click", function (e) { + // | e.stopPropagation(); + // | e.preventDefault(); + // | var btn = e.target; + // | request.post("", { data: btn.form, timeout: 2000 }) + // | .then(function (data) { + // | // replace the form with the response + // | domConstruct.create("div", { innerHTML: data }, btn.form, "after"); + // | domStyle.set(btn.form, "display", "none"); + // | }); + // | }); + // | }); + + + root = root || getDoc(); + + // throw the big case sensitivity switch + var od = root.ownerDocument || root; // root is either Document or a node inside the document + caseSensitive = (od.createElement("div").tagName === "div"); + + // NOTE: + // adding "true" as the 2nd argument to getQueryFunc is useful for + // testing the DOM branch without worrying about the + // behavior/performance of the QSA branch. + var r = getQueryFunc(query)(root); + + // FIXME: + // need to investigate this branch WRT #8074 and #8075 + if(r && r.nozip){ + return r; + } + return _zip(r); // dojo/NodeList + }; + query.filter = function(/*Node[]*/ nodeList, /*String*/ filter, /*String|DOMNode?*/ root){ + // summary: + // function for filtering a NodeList based on a selector, optimized for simple selectors + var tmpNodeList = [], + parts = getQueryParts(filter), + filterFunc = + (parts.length == 1 && !/[^\w#\.]/.test(filter)) ? + getSimpleFilterFunc(parts[0]) : + function(node){ + return array.indexOf(query(filter, dom.byId(root)), node) != -1; + }; + for(var x = 0, te; te = nodeList[x]; x++){ + if(filterFunc(te)){ tmpNodeList.push(te); } + } + return tmpNodeList; + }; + return query; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/lite.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/lite.js new file mode 100644 index 00000000..c759dbb6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/selector/lite.js @@ -0,0 +1,222 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/selector/lite",["../has","../_base/kernel"],function(_1,_2){ +"use strict"; +var _3=document.createElement("div"); +var _4=_3.matches||_3.webkitMatchesSelector||_3.mozMatchesSelector||_3.msMatchesSelector||_3.oMatchesSelector; +var _5=_3.querySelectorAll; +var _6=/([^\s,](?:"(?:\\.|[^"])+"|'(?:\\.|[^'])+'|[^,])*)/g; +_1.add("dom-matches-selector",!!_4); +_1.add("dom-qsa",!!_5); +var _7=function(_8,_9){ +if(_a&&_8.indexOf(",")>-1){ +return _a(_8,_9); +} +var _b=_9?_9.ownerDocument||_9:_2.doc||document,_c=(_5?/^([\w]*)#([\w\-]+$)|^(\.)([\w\-\*]+$)|^(\w+$)/:/^([\w]*)#([\w\-]+)(?:\s+(.*))?$|(?:^|(>|.+\s+))([\w\-\*]+)(\S*$)/).exec(_8); +_9=_9||_b; +if(_c){ +if(_c[2]){ +var _d=_2.byId?_2.byId(_c[2],_b):_b.getElementById(_c[2]); +if(!_d||(_c[1]&&_c[1]!=_d.tagName.toLowerCase())){ +return []; +} +if(_9!=_b){ +var _e=_d; +while(_e!=_9){ +_e=_e.parentNode; +if(!_e){ +return []; +} +} +} +return _c[3]?_7(_c[3],_d):[_d]; +} +if(_c[3]&&_9.getElementsByClassName){ +return _9.getElementsByClassName(_c[4]); +} +var _d; +if(_c[5]){ +_d=_9.getElementsByTagName(_c[5]); +if(_c[4]||_c[6]){ +_8=(_c[4]||"")+_c[6]; +}else{ +return _d; +} +} +} +if(_5){ +if(_9.nodeType===1&&_9.nodeName.toLowerCase()!=="object"){ +return _f(_9,_8,_9.querySelectorAll); +}else{ +return _9.querySelectorAll(_8); +} +}else{ +if(!_d){ +_d=_9.getElementsByTagName("*"); +} +} +var _10=[]; +for(var i=0,l=_d.length;i-1&&(" "+_20.className+" ").indexOf(_1f)>-1; +}; +},"#":function(id){ +return function(_21){ +return _21.id==id; +}; +}}; +var _22={"^=":function(_23,_24){ +return _23.indexOf(_24)==0; +},"*=":function(_25,_26){ +return _25.indexOf(_26)>-1; +},"$=":function(_27,_28){ +return _27.substring(_27.length-_28.length,_27.length)==_28; +},"~=":function(_29,_2a){ +return (" "+_29+" ").indexOf(" "+_2a+" ")>-1; +},"|=":function(_2b,_2c){ +return (_2b+"-").indexOf(_2c+"-")==0; +},"=":function(_2d,_2e){ +return _2d==_2e; +},"":function(_2f,_30){ +return true; +}}; +function _31(_32,_33,_34){ +var _35=_33.charAt(0); +if(_35=="\""||_35=="'"){ +_33=_33.slice(1,-1); +} +_33=_33.replace(/\\/g,""); +var _36=_22[_34||""]; +return function(_37){ +var _38=_37.getAttribute(_32); +return _38&&_36(_38,_33); +}; +}; +function _39(_3a){ +return function(_3b,_3c){ +while((_3b=_3b.parentNode)!=_3c){ +if(_3a(_3b,_3c)){ +return true; +} +} +}; +}; +function _3d(_3e){ +return function(_3f,_40){ +_3f=_3f.parentNode; +return _3e?_3f!=_40&&_3e(_3f,_40):_3f==_40; +}; +}; +var _41={}; +function and(_42,_43){ +return _42?function(_44,_45){ +return _43(_44)&&_42(_44,_45); +}:_43; +}; +return function(_46,_47,_48){ +var _49=_41[_47]; +if(!_49){ +if(_47.replace(/(?:\s*([> ])\s*)|(#|\.)?((?:\\.|[\w-])+)|\[\s*([\w-]+)\s*(.?=)?\s*("(?:\\.|[^"])+"|'(?:\\.|[^'])+'|(?:\\.|[^\]])*)\s*\]/g,function(t,_4a,_4b,_4c,_4d,_4e,_4f){ +if(_4c){ +_49=and(_49,_1b[_4b||""](_4c.replace(/\\/g,""))); +}else{ +if(_4a){ +_49=(_4a==" "?_39:_3d)(_49); +}else{ +if(_4d){ +_49=and(_49,_31(_4d,_4f,_4e)); +} +} +} +return ""; +})){ +throw new Error("Syntax error in query"); +} +if(!_49){ +return true; +} +_41[_47]=_49; +} +return _49(_46,_48); +}; +})(); +} +if(!_1("dom-qsa")){ +var _a=function(_50,_51){ +var _52=_50.match(_6); +var _53=[]; +for(var i=0;i<_52.length;i++){ +_50=new String(_52[i].replace(/\s*$/,"")); +_50.indexOf=escape; +var _54=_7(_50,_51); +for(var j=0,l=_54.length;j -1){ + return combine(selector, root); + } + // use the root's ownerDocument if provided, otherwise try to use dojo.doc. Note + // that we don't use dojo/_base/window's doc to reduce dependencies, and + // fallback to plain document if dojo.doc hasn't been defined (by dojo/_base/window). + // presumably we will have a better way to do this in 2.0 + var doc = root ? root.ownerDocument || root : dojo.doc || document, + match = (querySelectorAll ? + /^([\w]*)#([\w\-]+$)|^(\.)([\w\-\*]+$)|^(\w+$)/ : // this one only matches on simple queries where we can beat qSA with specific methods + /^([\w]*)#([\w\-]+)(?:\s+(.*))?$|(?:^|(>|.+\s+))([\w\-\*]+)(\S*$)/) // this one matches parts of the query that we can use to speed up manual filtering + .exec(selector); + root = root || doc; + if(match){ + // fast path regardless of whether or not querySelectorAll exists + if(match[2]){ + // an #id + // use dojo.byId if available as it fixes the id retrieval in IE, note that we can't use the dojo namespace in 2.0, but if there is a conditional module use, we will use that + var found = dojo.byId ? dojo.byId(match[2], doc) : doc.getElementById(match[2]); + if(!found || (match[1] && match[1] != found.tagName.toLowerCase())){ + // if there is a tag qualifer and it doesn't match, no matches + return []; + } + if(root != doc){ + // there is a root element, make sure we are a child of it + var parent = found; + while(parent != root){ + parent = parent.parentNode; + if(!parent){ + return []; + } + } + } + return match[3] ? + liteEngine(match[3], found) + : [found]; + } + if(match[3] && root.getElementsByClassName){ + // a .class + return root.getElementsByClassName(match[4]); + } + var found; + if(match[5]){ + // a tag + found = root.getElementsByTagName(match[5]); + if(match[4] || match[6]){ + selector = (match[4] || "") + match[6]; + }else{ + // that was the entirety of the query, return results + return found; + } + } + } + if(querySelectorAll){ + // qSA works strangely on Element-rooted queries + // We can work around this by specifying an extra ID on the root + // and working up from there (Thanks to Andrew Dupont for the technique) + // IE 8 doesn't work on object elements + if (root.nodeType === 1 && root.nodeName.toLowerCase() !== "object"){ + return useRoot(root, selector, root.querySelectorAll); + }else{ + // we can use the native qSA + return root.querySelectorAll(selector); + } + }else if(!found){ + // search all children and then filter + found = root.getElementsByTagName("*"); + } + // now we filter the nodes that were found using the matchesSelector + var results = []; + for(var i = 0, l = found.length; i < l; i++){ + var node = found[i]; + if(node.nodeType == 1 && jsMatchesSelector(node, selector, root)){ + // keep the nodes that match the selector + results.push(node); + } + } + return results; +}; +var useRoot = function(context, query, method){ + // this function creates a temporary id so we can do rooted qSA queries, this is taken from sizzle + var oldContext = context, + old = context.getAttribute("id"), + nid = old || "__dojo__", + hasParent = context.parentNode, + relativeHierarchySelector = /^\s*[+~]/.test(query); + + if(relativeHierarchySelector && !hasParent){ + return []; + } + if(!old){ + context.setAttribute("id", nid); + }else{ + nid = nid.replace(/'/g, "\\$&"); + } + if(relativeHierarchySelector && hasParent){ + context = context.parentNode; + } + var selectors = query.match(unionSplit); + for(var i = 0; i < selectors.length; i++){ + selectors[i] = "[id='" + nid + "'] " + selectors[i]; + } + query = selectors.join(","); + + try{ + return method.call(context, query); + }finally{ + if(!old){ + oldContext.removeAttribute("id"); + } + } +}; + +if(!has("dom-matches-selector")){ + var jsMatchesSelector = (function(){ + // a JS implementation of CSS selector matching, first we start with the various handlers + var caseFix = testDiv.tagName == "div" ? "toLowerCase" : "toUpperCase"; + var selectorTypes = { + "": function(tagName){ + tagName = tagName[caseFix](); + return function(node){ + return node.tagName == tagName; + }; + }, + ".": function(className){ + var classNameSpaced = ' ' + className + ' '; + return function(node){ + return node.className.indexOf(className) > -1 && (' ' + node.className + ' ').indexOf(classNameSpaced) > -1; + }; + }, + "#": function(id){ + return function(node){ + return node.id == id; + }; + } + }; + var attrComparators = { + "^=": function(attrValue, value){ + return attrValue.indexOf(value) == 0; + }, + "*=": function(attrValue, value){ + return attrValue.indexOf(value) > -1; + }, + "$=": function(attrValue, value){ + return attrValue.substring(attrValue.length - value.length, attrValue.length) == value; + }, + "~=": function(attrValue, value){ + return (' ' + attrValue + ' ').indexOf(' ' + value + ' ') > -1; + }, + "|=": function(attrValue, value){ + return (attrValue + '-').indexOf(value + '-') == 0; + }, + "=": function(attrValue, value){ + return attrValue == value; + }, + "": function(attrValue, value){ + return true; + } + }; + function attr(name, value, type){ + var firstChar = value.charAt(0); + if(firstChar == '"' || firstChar == "'"){ + // it is quoted, remove the quotes + value = value.slice(1, -1); + } + value = value.replace(/\\/g,''); + var comparator = attrComparators[type || ""]; + return function(node){ + var attrValue = node.getAttribute(name); + return attrValue && comparator(attrValue, value); + }; + } + function ancestor(matcher){ + return function(node, root){ + while((node = node.parentNode) != root){ + if(matcher(node, root)){ + return true; + } + } + }; + } + function parent(matcher){ + return function(node, root){ + node = node.parentNode; + return matcher ? + node != root && matcher(node, root) + : node == root; + }; + } + var cache = {}; + function and(matcher, next){ + return matcher ? + function(node, root){ + return next(node) && matcher(node, root); + } + : next; + } + return function(node, selector, root){ + // this returns true or false based on if the node matches the selector (optionally within the given root) + var matcher = cache[selector]; // check to see if we have created a matcher function for the given selector + if(!matcher){ + // create a matcher function for the given selector + // parse the selectors + if(selector.replace(/(?:\s*([> ])\s*)|(#|\.)?((?:\\.|[\w-])+)|\[\s*([\w-]+)\s*(.?=)?\s*("(?:\\.|[^"])+"|'(?:\\.|[^'])+'|(?:\\.|[^\]])*)\s*\]/g, function(t, combinator, type, value, attrName, attrType, attrValue){ + if(value){ + matcher = and(matcher, selectorTypes[type || ""](value.replace(/\\/g, ''))); + } + else if(combinator){ + matcher = (combinator == " " ? ancestor : parent)(matcher); + } + else if(attrName){ + matcher = and(matcher, attr(attrName, attrValue, attrType)); + } + return ""; + })){ + throw new Error("Syntax error in query"); + } + if(!matcher){ + return true; + } + cache[selector] = matcher; + } + // now run the matcher function on the node + return matcher(node, root); + }; + })(); +} +if(!has("dom-qsa")){ + var combine = function(selector, root){ + // combined queries + var selectors = selector.match(unionSplit); + var indexed = []; + // add all results and keep unique ones, this only runs in IE, so we take advantage + // of known IE features, particularly sourceIndex which is unique and allows us to + // order the results + for(var i = 0; i < selectors.length; i++){ + selector = new String(selectors[i].replace(/\s*$/,'')); + selector.indexOf = escape; // keep it from recursively entering combine + var results = liteEngine(selector, root); + for(var j = 0, l = results.length; j < l; j++){ + var node = results[j]; + indexed[node.sourceIndex] = node; + } + } + // now convert from a sparse array to a dense array + var totalResults = []; + for(i in indexed){ + totalResults.push(indexed[i]); + } + return totalResults; + }; +} + +liteEngine.match = matchesSelector ? function(node, selector, root){ + if(root && root.nodeType != 9){ + // doesn't support three args, use rooted id trick + return useRoot(root, selector, function(query){ + return matchesSelector.call(node, query); + }); + } + // we have a native matchesSelector, use that + return matchesSelector.call(node, selector); +} : jsMatchesSelector; // otherwise use the JS matches impl + +return liteEngine; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/sniff.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/sniff.js new file mode 100644 index 00000000..ebb907ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/sniff.js @@ -0,0 +1,52 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/sniff",["./has"],function(_1){ +if(1){ +var n=navigator,_2=n.userAgent,_3=n.appVersion,tv=parseFloat(_3); +_1.add("air",_2.indexOf("AdobeAIR")>=0); +_1.add("msapp",parseFloat(_2.split("MSAppHost/")[1])||undefined); +_1.add("khtml",_3.indexOf("Konqueror")>=0?tv:undefined); +_1.add("webkit",parseFloat(_2.split("WebKit/")[1])||undefined); +_1.add("chrome",parseFloat(_2.split("Chrome/")[1])||undefined); +_1.add("safari",_3.indexOf("Safari")>=0&&!_1("chrome")?parseFloat(_3.split("Version/")[1]):undefined); +_1.add("mac",_3.indexOf("Macintosh")>=0); +_1.add("quirks",document.compatMode=="BackCompat"); +if(_2.match(/(iPhone|iPod|iPad)/)){ +var p=RegExp.$1.replace(/P/,"p"); +var v=_2.match(/OS ([\d_]+)/)?RegExp.$1:"1"; +var os=parseFloat(v.replace(/_/,".").replace(/_/g,"")); +_1.add(p,os); +_1.add("ios",os); +} +_1.add("android",parseFloat(_2.split("Android ")[1])||undefined); +_1.add("bb",(_2.indexOf("BlackBerry")>=0||_2.indexOf("BB10")>=0)&&parseFloat(_2.split("Version/")[1])||undefined); +_1.add("trident",parseFloat(_3.split("Trident/")[1])||undefined); +_1.add("svg",typeof SVGAngle!=="undefined"); +if(!_1("webkit")){ +if(_2.indexOf("Opera")>=0){ +_1.add("opera",tv>=9.8?parseFloat(_2.split("Version/")[1])||tv:tv); +} +if(_2.indexOf("Gecko")>=0&&!_1("khtml")&&!_1("webkit")&&!_1("trident")){ +_1.add("mozilla",tv); +} +if(_1("mozilla")){ +_1.add("ff",parseFloat(_2.split("Firefox/")[1]||_2.split("Minefield/")[1])||undefined); +} +if(document.all&&!_1("opera")){ +var _4=parseFloat(_3.split("MSIE ")[1])||undefined; +var _5=document.documentMode; +if(_5&&_5!=5&&Math.floor(_4)!=_5){ +_4=_5; +} +_1.add("ie",_4); +} +_1.add("wii",typeof opera!="undefined"&&opera.wiiremote); +} +} +return _1; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/sniff.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/sniff.js.uncompressed.js new file mode 100644 index 00000000..70e761b8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/sniff.js.uncompressed.js @@ -0,0 +1,81 @@ +define("dojo/sniff", ["./has"], function(has){ + // module: + // dojo/sniff + + /*===== + return function(){ + // summary: + // This module sets has() flags based on the current browser. + // It returns the has() function. + }; + =====*/ + + if( 1 ){ + var n = navigator, + dua = n.userAgent, + dav = n.appVersion, + tv = parseFloat(dav); + + has.add("air", dua.indexOf("AdobeAIR") >= 0); + has.add("msapp", parseFloat(dua.split("MSAppHost/")[1]) || undefined); + has.add("khtml", dav.indexOf("Konqueror") >= 0 ? tv : undefined); + has.add("webkit", parseFloat(dua.split("WebKit/")[1]) || undefined); + has.add("chrome", parseFloat(dua.split("Chrome/")[1]) || undefined); + has.add("safari", dav.indexOf("Safari")>=0 && !has("chrome") ? parseFloat(dav.split("Version/")[1]) : undefined); + has.add("mac", dav.indexOf("Macintosh") >= 0); + has.add("quirks", document.compatMode == "BackCompat"); + if(dua.match(/(iPhone|iPod|iPad)/)){ + var p = RegExp.$1.replace(/P/, "p"); + var v = dua.match(/OS ([\d_]+)/) ? RegExp.$1 : "1"; + var os = parseFloat(v.replace(/_/, ".").replace(/_/g, "")); + has.add(p, os); // "iphone", "ipad" or "ipod" + has.add("ios", os); + } + has.add("android", parseFloat(dua.split("Android ")[1]) || undefined); + has.add("bb", (dua.indexOf("BlackBerry") >= 0 || dua.indexOf("BB10") >= 0) && parseFloat(dua.split("Version/")[1]) || undefined); + has.add("trident", parseFloat(dav.split("Trident/")[1]) || undefined); + + has.add("svg", typeof SVGAngle !== "undefined"); + + if(!has("webkit")){ + // Opera + if(dua.indexOf("Opera") >= 0){ + // see http://dev.opera.com/articles/view/opera-ua-string-changes and http://www.useragentstring.com/pages/Opera/ + // 9.8 has both styles; <9.8, 9.9 only old style + has.add("opera", tv >= 9.8 ? parseFloat(dua.split("Version/")[1]) || tv : tv); + } + + // Mozilla and firefox + if(dua.indexOf("Gecko") >= 0 && !has("khtml") && !has("webkit") && !has("trident")){ + has.add("mozilla", tv); + } + if(has("mozilla")){ + //We really need to get away from this. Consider a sane isGecko approach for the future. + has.add("ff", parseFloat(dua.split("Firefox/")[1] || dua.split("Minefield/")[1]) || undefined); + } + + // IE + if(document.all && !has("opera")){ + var isIE = parseFloat(dav.split("MSIE ")[1]) || undefined; + + //In cases where the page has an HTTP header or META tag with + //X-UA-Compatible, then it is in emulation mode. + //Make sure isIE reflects the desired version. + //document.documentMode of 5 means quirks mode. + //Only switch the value if documentMode's major version + //is different from isIE's major version. + var mode = document.documentMode; + if(mode && mode != 5 && Math.floor(isIE) != mode){ + isIE = mode; + } + + has.add("ie", isIE); + } + + // Wii + has.add("wii", typeof opera != "undefined" && opera.wiiremote); + } + } + + return has; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Cache.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Cache.js new file mode 100644 index 00000000..5d0dcaae --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Cache.js @@ -0,0 +1,49 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/store/Cache",["../_base/lang","../when"],function(_1,_2){ +var _3=function(_4,_5,_6){ +_6=_6||{}; +return _1.delegate(_4,{query:function(_7,_8){ +var _9=_4.query(_7,_8); +_9.forEach(function(_a){ +if(!_6.isLoaded||_6.isLoaded(_a)){ +_5.put(_a); +} +}); +return _9; +},queryEngine:_4.queryEngine||_5.queryEngine,get:function(id,_b){ +return _2(_5.get(id),function(_c){ +return _c||_2(_4.get(id,_b),function(_d){ +if(_d){ +_5.put(_d,{id:id}); +} +return _d; +}); +}); +},add:function(_e,_f){ +return _2(_4.add(_e,_f),function(_10){ +_5.add(_10&&typeof _10=="object"?_10:_e,_f); +return _10; +}); +},put:function(_11,_12){ +_5.remove((_12&&_12.id)||this.getIdentity(_11)); +return _2(_4.put(_11,_12),function(_13){ +_5.put(_13&&typeof _13=="object"?_13:_11,_12); +return _13; +}); +},remove:function(id,_14){ +return _2(_4.remove(id,_14),function(_15){ +return _5.remove(id,_14); +}); +},evict:function(id){ +return _5.remove(id); +}}); +}; +_1.setObject("dojo.store.Cache",_3); +return _3; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Cache.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Cache.js.uncompressed.js new file mode 100644 index 00000000..fcfdba9b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Cache.js.uncompressed.js @@ -0,0 +1,146 @@ +define("dojo/store/Cache", ["../_base/lang","../when" /*=====, "../_base/declare", "./api/Store" =====*/], +function(lang, when /*=====, declare, Store =====*/){ + +// module: +// dojo/store/Cache + +var Cache = function(masterStore, cachingStore, options){ + options = options || {}; + return lang.delegate(masterStore, { + query: function(query, directives){ + var results = masterStore.query(query, directives); + results.forEach(function(object){ + if(!options.isLoaded || options.isLoaded(object)){ + cachingStore.put(object); + } + }); + return results; + }, + // look for a queryEngine in either store + queryEngine: masterStore.queryEngine || cachingStore.queryEngine, + get: function(id, directives){ + return when(cachingStore.get(id), function(result){ + return result || when(masterStore.get(id, directives), function(result){ + if(result){ + cachingStore.put(result, {id: id}); + } + return result; + }); + }); + }, + add: function(object, directives){ + return when(masterStore.add(object, directives), function(result){ + // now put result in cache + cachingStore.add(result && typeof result == "object" ? result : object, directives); + return result; // the result from the add should be dictated by the masterStore and be unaffected by the cachingStore + }); + }, + put: function(object, directives){ + // first remove from the cache, so it is empty until we get a response from the master store + cachingStore.remove((directives && directives.id) || this.getIdentity(object)); + return when(masterStore.put(object, directives), function(result){ + // now put result in cache + cachingStore.put(result && typeof result == "object" ? result : object, directives); + return result; // the result from the put should be dictated by the masterStore and be unaffected by the cachingStore + }); + }, + remove: function(id, directives){ + return when(masterStore.remove(id, directives), function(result){ + return cachingStore.remove(id, directives); + }); + }, + evict: function(id){ + return cachingStore.remove(id); + } + }); +}; +lang.setObject("dojo.store.Cache", Cache); + +/*===== +var __CacheArgs = { + // summary: + // These are additional options for how caching is handled. + // isLoaded: Function? + // This is a function that will be called for each item in a query response to determine + // if it is cacheable. If isLoaded returns true, the item will be cached, otherwise it + // will not be cached. If isLoaded is not provided, all items will be cached. +}; + +Cache = declare(Store, { + // summary: + // The Cache store wrapper takes a master store and a caching store, + // caches data from the master into the caching store for faster + // lookup. Normally one would use a memory store for the caching + // store and a server store like JsonRest for the master store. + // example: + // | var master = new Memory(data); + // | var cacher = new Memory(); + // | var store = new Cache(master, cacher); + // + constructor: function(masterStore, cachingStore, options){ + // masterStore: + // This is the authoritative store, all uncached requests or non-safe requests will + // be made against this store. + // cachingStore: + // This is the caching store that will be used to store responses for quick access. + // Typically this should be a local store. + // options: __CacheArgs? + // These are additional options for how caching is handled. + }, + query: function(query, directives){ + // summary: + // Query the underlying master store and cache any results. + // query: Object|String + // The object or string containing query information. Dependent on the query engine used. + // directives: dojo/store/api/Store.QueryOptions? + // An optional keyword arguments object with additional parameters describing the query. + // returns: dojo/store/api/Store.QueryResults + // A QueryResults object that can be used to iterate over. + }, + get: function(id, directives){ + // summary: + // Get the object with the specific id. + // id: Number + // The identifier for the object in question. + // directives: Object? + // Any additional parameters needed to describe how the get should be performed. + // returns: dojo/store/api/Store.QueryResults + // A QueryResults object. + }, + add: function(object, directives){ + // summary: + // Add the given object to the store. + // object: Object + // The object to add to the store. + // directives: dojo/store/api/Store.AddOptions? + // Any additional parameters needed to describe how the add should be performed. + // returns: Number + // The new id for the object. + }, + put: function(object, directives){ + // summary: + // Put the object into the store (similar to an HTTP PUT). + // object: Object + // The object to put to the store. + // directives: dojo/store/api/Store.PutDirectives? + // Any additional parameters needed to describe how the put should be performed. + // returns: Number + // The new id for the object. + }, + remove: function(id){ + // summary: + // Remove the object with the specific id. + // id: Number + // The identifier for the object in question. + }, + evict: function(id){ + // summary: + // Remove the object with the given id from the underlying caching store. + // id: Number + // The identifier for the object in question. + } +}); +=====*/ + +return Cache; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/DataStore.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/DataStore.js new file mode 100644 index 00000000..3c2ff29e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/DataStore.js @@ -0,0 +1,162 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/store/DataStore",["../_base/lang","../_base/declare","../Deferred","../_base/array","./util/QueryResults","./util/SimpleQueryEngine"],function(_1,_2,_3,_4,_5,_6){ +var _7=null; +return _2("dojo.store.DataStore",_7,{target:"",constructor:function(_8){ +_1.mixin(this,_8); +if(!"idProperty" in _8){ +var _9; +try{ +_9=this.store.getIdentityAttributes(); +} +catch(e){ +} +this.idProperty=(!_9||!idAttributes[0])||this.idProperty; +} +var _a=this.store.getFeatures(); +if(!_a["dojo.data.api.Read"]){ +this.get=null; +} +if(!_a["dojo.data.api.Identity"]){ +this.getIdentity=null; +} +if(!_a["dojo.data.api.Write"]){ +this.put=this.add=null; +} +},idProperty:"id",store:null,queryEngine:_6,_objectConverter:function(_b){ +var _c=this.store; +var _d=this.idProperty; +function _e(_f){ +var _10={}; +var _11=_c.getAttributes(_f); +for(var i=0;i<_11.length;i++){ +var _12=_11[i]; +var _13=_c.getValues(_f,_12); +if(_13.length>1){ +for(var j=0;j<_13.length;j++){ +var _14=_13[j]; +if(typeof _14=="object"&&_c.isItem(_14)){ +_13[j]=_e(_14); +} +} +_14=_13; +}else{ +var _14=_c.getValue(_f,_12); +if(typeof _14=="object"&&_c.isItem(_14)){ +_14=_e(_14); +} +} +_10[_11[i]]=_14; +} +if(!(_d in _10)&&_c.getIdentity){ +_10[_d]=_c.getIdentity(_f); +} +return _10; +}; +return function(_15){ +return _b(_15&&_e(_15)); +}; +},get:function(id,_16){ +var _17,_18; +var _19=new _3(); +this.store.fetchItemByIdentity({identity:id,onItem:this._objectConverter(function(_1a){ +_19.resolve(_17=_1a); +}),onError:function(_1b){ +_19.reject(_18=_1b); +}}); +if(_17!==undefined){ +return _17==null?undefined:_17; +} +if(_18){ +throw _18; +} +return _19.promise; +},put:function(_1c,_1d){ +_1d=_1d||{}; +var id=typeof _1d.id!="undefined"?_1d.id:this.getIdentity(_1c); +var _1e=this.store; +var _1f=this.idProperty; +var _20=new _3(); +if(typeof id=="undefined"){ +_1e.newItem(_1c); +_1e.save({onComplete:function(){ +_20.resolve(_1c); +},onError:function(_21){ +_20.reject(_21); +}}); +}else{ +_1e.fetchItemByIdentity({identity:id,onItem:function(_22){ +if(_22){ +if(_1d.overwrite===false){ +return _20.reject(new Error("Overwriting existing object not allowed")); +} +for(var i in _1c){ +if(i!=_1f&&_1c.hasOwnProperty(i)&&_1e.getValue(_22,i)!=_1c[i]){ +_1e.setValue(_22,i,_1c[i]); +} +} +}else{ +if(_1d.overwrite===true){ +return _20.reject(new Error("Creating new object not allowed")); +} +_1e.newItem(_1c); +} +_1e.save({onComplete:function(){ +_20.resolve(_1c); +},onError:function(_23){ +_20.reject(_23); +}}); +},onError:function(_24){ +_20.reject(_24); +}}); +} +return _20.promise; +},add:function(_25,_26){ +(_26=_26||{}).overwrite=false; +return this.put(_25,_26); +},remove:function(id){ +var _27=this.store; +var _28=new _3(); +this.store.fetchItemByIdentity({identity:id,onItem:function(_29){ +try{ +if(_29==null){ +_28.resolve(false); +}else{ +_27.deleteItem(_29); +_27.save(); +_28.resolve(true); +} +} +catch(error){ +_28.reject(error); +} +},onError:function(_2a){ +_28.reject(_2a); +}}); +return _28.promise; +},query:function(_2b,_2c){ +var _2d; +var _2e=new _3(function(){ +_2d.abort&&_2d.abort(); +}); +_2e.total=new _3(); +var _2f=this._objectConverter(function(_30){ +return _30; +}); +_2d=this.store.fetch(_1.mixin({query:_2b,onBegin:function(_31){ +_2e.total.resolve(_31); +},onComplete:function(_32){ +_2e.resolve(_4.map(_32,_2f)); +},onError:function(_33){ +_2e.reject(_33); +}},_2c)); +return _5(_2e); +},getIdentity:function(_34){ +return _34[this.idProperty]; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/DataStore.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/DataStore.js.uncompressed.js new file mode 100644 index 00000000..acb21231 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/DataStore.js.uncompressed.js @@ -0,0 +1,259 @@ +define("dojo/store/DataStore", [ + "../_base/lang", "../_base/declare", "../Deferred", "../_base/array", + "./util/QueryResults", "./util/SimpleQueryEngine" /*=====, "./api/Store" =====*/ +], function(lang, declare, Deferred, array, QueryResults, SimpleQueryEngine /*=====, Store =====*/){ + +// module: +// dojo/store/DataStore + + +// No base class, but for purposes of documentation, the base class is dojo/store/api/Store +var base = null; +/*===== base = Store; =====*/ + +return declare("dojo.store.DataStore", base, { + // summary: + // This is an adapter for using Dojo Data stores with an object store consumer. + // You can provide a Dojo data store and use this adapter to interact with it through + // the Dojo object store API + + target: "", + constructor: function(options){ + // options: Object? + // This provides any configuration information that will be mixed into the store, + // including a reference to the Dojo data store under the property "store". + lang.mixin(this, options); + if(!"idProperty" in options){ + var idAttribute; + try{ + idAttribute = this.store.getIdentityAttributes(); + }catch(e){ + // some store are not requiring an item instance to give us the ID attributes + // but some other do and throw errors in that case. + } + // if no idAttribute we have implicit id + this.idProperty = (!idAttribute || !idAttributes[0]) || this.idProperty; + } + var features = this.store.getFeatures(); + // check the feature set and null out any methods that shouldn't be available + if(!features["dojo.data.api.Read"]){ + this.get = null; + } + if(!features["dojo.data.api.Identity"]){ + this.getIdentity = null; + } + if(!features["dojo.data.api.Write"]){ + this.put = this.add = null; + } + }, + // idProperty: String + // The object property to use to store the identity of the store items. + idProperty: "id", + // store: + // The object store to convert to a data store + store: null, + // queryEngine: Function + // Defines the query engine to use for querying the data store + queryEngine: SimpleQueryEngine, + + _objectConverter: function(callback){ + var store = this.store; + var idProperty = this.idProperty; + function convert(item){ + var object = {}; + var attributes = store.getAttributes(item); + for(var i = 0; i < attributes.length; i++){ + var attribute = attributes[i]; + var values = store.getValues(item, attribute); + if(values.length > 1){ + for(var j = 0; j < values.length; j++){ + var value = values[j]; + if(typeof value == 'object' && store.isItem(value)){ + values[j] = convert(value); + } + } + value = values; + }else{ + var value = store.getValue(item, attribute); + if(typeof value == 'object' && store.isItem(value)){ + value = convert(value); + } + } + object[attributes[i]] = value; + } + if(!(idProperty in object) && store.getIdentity){ + object[idProperty] = store.getIdentity(item); + } + return object; + } + return function(item){ + return callback(item && convert(item)); + }; + }, + get: function(id, options){ + // summary: + // Retrieves an object by it's identity. This will trigger a fetchItemByIdentity + // id: Object? + // The identity to use to lookup the object + var returnedObject, returnedError; + var deferred = new Deferred(); + this.store.fetchItemByIdentity({ + identity: id, + onItem: this._objectConverter(function(object){ + deferred.resolve(returnedObject = object); + }), + onError: function(error){ + deferred.reject(returnedError = error); + } + }); + if(returnedObject !== undefined){ + // if it was returned synchronously + return returnedObject == null ? undefined : returnedObject; + } + if(returnedError){ + throw returnedError; + } + return deferred.promise; + }, + put: function(object, options){ + // summary: + // Stores an object by its identity. + // object: Object + // The object to store. + // options: Object? + // Additional metadata for storing the data. Includes a reference to an id + // that the object may be stored with (i.e. { id: "foo" }). + options = options || {}; + var id = typeof options.id != "undefined" ? options.id : this.getIdentity(object); + var store = this.store; + var idProperty = this.idProperty; + var deferred = new Deferred(); + if(typeof id == "undefined"){ + store.newItem(object); + store.save({ + onComplete: function(){ + deferred.resolve(object); + }, + onError: function(error){ + deferred.reject(error); + } + }); + }else{ + store.fetchItemByIdentity({ + identity: id, + onItem: function(item){ + if(item){ + if(options.overwrite === false){ + return deferred.reject(new Error("Overwriting existing object not allowed")); + } + for(var i in object){ + if(i != idProperty && // don't copy id properties since they are immutable and should be omitted for implicit ids + object.hasOwnProperty(i) && // don't want to copy methods and inherited properties + store.getValue(item, i) != object[i]){ + store.setValue(item, i, object[i]); + } + } + }else{ + if(options.overwrite === true){ + return deferred.reject(new Error("Creating new object not allowed")); + } + store.newItem(object); + } + store.save({ + onComplete: function(){ + deferred.resolve(object); + }, + onError: function(error){ + deferred.reject(error); + } + }); + }, + onError: function(error){ + deferred.reject(error); + } + }); + } + return deferred.promise; + }, + add: function(object, options){ + // summary: + // Creates an object, throws an error if the object already exists + // object: Object + // The object to store. + // options: dojo/store/api/Store.PutDirectives? + // Additional metadata for storing the data. Includes an "id" + // property if a specific id is to be used. + // returns: Number + (options = options || {}).overwrite = false; + // call put with overwrite being false + return this.put(object, options); + }, + remove: function(id){ + // summary: + // Deletes an object by its identity. + // id: Object + // The identity to use to delete the object + var store = this.store; + var deferred = new Deferred(); + + this.store.fetchItemByIdentity({ + identity: id, + onItem: function(item){ + try{ + if(item == null){ + // no item found, return false + deferred.resolve(false); + }else{ + // delete and save the change + store.deleteItem(item); + store.save(); + deferred.resolve(true); + } + }catch(error){ + deferred.reject(error); + } + }, + onError: function(error){ + deferred.reject(error); + } + }); + return deferred.promise; + }, + query: function(query, options){ + // summary: + // Queries the store for objects. + // query: Object + // The query to use for retrieving objects from the store + // options: Object? + // Optional options object as used by the underlying dojo.data Store. + // returns: dojo/store/api/Store.QueryResults + // A query results object that can be used to iterate over results. + var fetchHandle; + var deferred = new Deferred(function(){ fetchHandle.abort && fetchHandle.abort(); }); + deferred.total = new Deferred(); + var converter = this._objectConverter(function(object){return object;}); + fetchHandle = this.store.fetch(lang.mixin({ + query: query, + onBegin: function(count){ + deferred.total.resolve(count); + }, + onComplete: function(results){ + deferred.resolve(array.map(results, converter)); + }, + onError: function(error){ + deferred.reject(error); + } + }, options)); + return QueryResults(deferred); + }, + getIdentity: function(object){ + // summary: + // Fetch the identity for the given object. + // object: Object + // The data object to get the identity from. + // returns: Number + // The id of the given object. + return object[this.idProperty]; + } +}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/JsonRest.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/JsonRest.js new file mode 100644 index 00000000..9cda83fb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/JsonRest.js @@ -0,0 +1,79 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/store/JsonRest",["../_base/xhr","../_base/lang","../json","../_base/declare","./util/QueryResults"],function(_1,_2,_3,_4,_5){ +var _6=null; +return _4("dojo.store.JsonRest",_6,{constructor:function(_7){ +this.headers={}; +_4.safeMixin(this,_7); +},headers:{},target:"",idProperty:"id",ascendingPrefix:"+",descendingPrefix:"-",_getTarget:function(id){ +var _8=this.target; +if(typeof id!="undefined"){ +if(_8.charAt(_8.length-1)=="/"){ +_8+=id; +}else{ +_8+="/"+id; +} +} +return _8; +},get:function(id,_9){ +_9=_9||{}; +var _a=_2.mixin({Accept:this.accepts},this.headers,_9.headers||_9); +return _1("GET",{url:this._getTarget(id),handleAs:"json",headers:_a}); +},accepts:"application/javascript, application/json",getIdentity:function(_b){ +return _b[this.idProperty]; +},put:function(_c,_d){ +_d=_d||{}; +var id=("id" in _d)?_d.id:this.getIdentity(_c); +var _e=typeof id!="undefined"; +return _1(_e&&!_d.incremental?"PUT":"POST",{url:this._getTarget(id),postData:_3.stringify(_c),handleAs:"json",headers:_2.mixin({"Content-Type":"application/json",Accept:this.accepts,"If-Match":_d.overwrite===true?"*":null,"If-None-Match":_d.overwrite===false?"*":null},this.headers,_d.headers)}); +},add:function(_f,_10){ +_10=_10||{}; +_10.overwrite=false; +return this.put(_f,_10); +},remove:function(id,_11){ +_11=_11||{}; +return _1("DELETE",{url:this._getTarget(id),headers:_2.mixin({},this.headers,_11.headers)}); +},query:function(_12,_13){ +_13=_13||{}; +var _14=_2.mixin({Accept:this.accepts},this.headers,_13.headers); +var _15=this.target.indexOf("?")>-1; +if(_12&&typeof _12=="object"){ +_12=_1.objectToQuery(_12); +_12=_12?(_15?"&":"?")+_12:""; +} +if(_13.start>=0||_13.count>=0){ +_14["X-Range"]="items="+(_13.start||"0")+"-"+(("count" in _13&&_13.count!=Infinity)?(_13.count+(_13.start||0)-1):""); +if(this.rangeParam){ +_12+=(_12||_15?"&":"?")+this.rangeParam+"="+_14["X-Range"]; +_15=true; +}else{ +_14.Range=_14["X-Range"]; +} +} +if(_13&&_13.sort){ +var _16=this.sortParam; +_12+=(_12||_15?"&":"?")+(_16?_16+"=":"sort("); +for(var i=0;i<_13.sort.length;i++){ +var _17=_13.sort[i]; +_12+=(i>0?",":"")+(_17.descending?this.descendingPrefix:this.ascendingPrefix)+encodeURIComponent(_17.attribute); +} +if(!_16){ +_12+=")"; +} +} +var _18=_1("GET",{url:this.target+(_12||""),handleAs:"json",headers:_14}); +_18.total=_18.then(function(){ +var _19=_18.ioArgs.xhr.getResponseHeader("Content-Range"); +if(!_19){ +_19=_18.ioArgs.xhr.getResponseHeader("X-Content-Range"); +} +return _19&&(_19=_19.match(/\/(.*)/))&&+_19[1]; +}); +return _5(_18); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/JsonRest.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/JsonRest.js.uncompressed.js new file mode 100644 index 00000000..f19b21d6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/JsonRest.js.uncompressed.js @@ -0,0 +1,226 @@ +define("dojo/store/JsonRest", ["../_base/xhr", "../_base/lang", "../json", "../_base/declare", "./util/QueryResults" /*=====, "./api/Store" =====*/ +], function(xhr, lang, JSON, declare, QueryResults /*=====, Store =====*/){ + +// No base class, but for purposes of documentation, the base class is dojo/store/api/Store +var base = null; +/*===== base = Store; =====*/ + +/*===== +var __HeaderOptions = { + // headers: Object? + // Additional headers to send along with the request. + }, + __PutDirectives = declare(Store.PutDirectives, __HeaderOptions), + __QueryOptions = declare(Store.QueryOptions, __HeaderOptions); +=====*/ + +return declare("dojo.store.JsonRest", base, { + // summary: + // This is a basic store for RESTful communicating with a server through JSON + // formatted data. It implements dojo/store/api/Store. + + constructor: function(options){ + // summary: + // This is a basic store for RESTful communicating with a server through JSON + // formatted data. + // options: dojo/store/JsonRest + // This provides any configuration information that will be mixed into the store + this.headers = {}; + declare.safeMixin(this, options); + }, + + // headers: Object + // Additional headers to pass in all requests to the server. These can be overridden + // by passing additional headers to calls to the store. + headers: {}, + + // target: String + // The target base URL to use for all requests to the server. This string will be + // prepended to the id to generate the URL (relative or absolute) for requests + // sent to the server + target: "", + + // idProperty: String + // Indicates the property to use as the identity property. The values of this + // property should be unique. + idProperty: "id", + + // rangeParam: String + // Use a query parameter for the requested range. If this is omitted, than the + // Range header will be used. Independent of this, the X-Range header is always set. + + // sortParam: String + // The query parameter to used for holding sort information. If this is omitted, than + // the sort information is included in a functional query token to avoid colliding + // with the set of name/value pairs. + + // ascendingPrefix: String + // The prefix to apply to sort attribute names that are ascending + ascendingPrefix: "+", + + // descendingPrefix: String + // The prefix to apply to sort attribute names that are ascending + descendingPrefix: "-", + + _getTarget: function(id){ + // summary: + // If the target has no trailing '/', then append it. + // id: Number + // The identity of the requested target + var target = this.target; + if(typeof id != "undefined"){ + if(target.charAt(target.length-1) == '/'){ + target += id; + }else{ + target += '/' + id; + } + } + return target; + }, + + get: function(id, options){ + // summary: + // Retrieves an object by its identity. This will trigger a GET request to the server using + // the url `this.target + id`. + // id: Number + // The identity to use to lookup the object + // options: Object? + // HTTP headers. For consistency with other methods, if a `headers` key exists on this object, it will be + // used to provide HTTP headers instead. + // returns: Object + // The object in the store that matches the given id. + options = options || {}; + var headers = lang.mixin({ Accept: this.accepts }, this.headers, options.headers || options); + return xhr("GET", { + url: this._getTarget(id), + handleAs: "json", + headers: headers + }); + }, + + // accepts: String + // Defines the Accept header to use on HTTP requests + accepts: "application/javascript, application/json", + + getIdentity: function(object){ + // summary: + // Returns an object's identity + // object: Object + // The object to get the identity from + // returns: Number + return object[this.idProperty]; + }, + + put: function(object, options){ + // summary: + // Stores an object. This will trigger a PUT request to the server + // if the object has an id, otherwise it will trigger a POST request. + // object: Object + // The object to store. + // options: __PutDirectives? + // Additional metadata for storing the data. Includes an "id" + // property if a specific id is to be used. + // returns: dojo/_base/Deferred + options = options || {}; + var id = ("id" in options) ? options.id : this.getIdentity(object); + var hasId = typeof id != "undefined"; + return xhr(hasId && !options.incremental ? "PUT" : "POST", { + url: this._getTarget(id), + postData: JSON.stringify(object), + handleAs: "json", + headers: lang.mixin({ + "Content-Type": "application/json", + Accept: this.accepts, + "If-Match": options.overwrite === true ? "*" : null, + "If-None-Match": options.overwrite === false ? "*" : null + }, this.headers, options.headers) + }); + }, + + add: function(object, options){ + // summary: + // Adds an object. This will trigger a PUT request to the server + // if the object has an id, otherwise it will trigger a POST request. + // object: Object + // The object to store. + // options: __PutDirectives? + // Additional metadata for storing the data. Includes an "id" + // property if a specific id is to be used. + options = options || {}; + options.overwrite = false; + return this.put(object, options); + }, + + remove: function(id, options){ + // summary: + // Deletes an object by its identity. This will trigger a DELETE request to the server. + // id: Number + // The identity to use to delete the object + // options: __HeaderOptions? + // HTTP headers. + options = options || {}; + return xhr("DELETE", { + url: this._getTarget(id), + headers: lang.mixin({}, this.headers, options.headers) + }); + }, + + query: function(query, options){ + // summary: + // Queries the store for objects. This will trigger a GET request to the server, with the + // query added as a query string. + // query: Object + // The query to use for retrieving objects from the store. + // options: __QueryOptions? + // The optional arguments to apply to the resultset. + // returns: dojo/store/api/Store.QueryResults + // The results of the query, extended with iterative methods. + options = options || {}; + + var headers = lang.mixin({ Accept: this.accepts }, this.headers, options.headers); + + var hasQuestionMark = this.target.indexOf("?") > -1; + if(query && typeof query == "object"){ + query = xhr.objectToQuery(query); + query = query ? (hasQuestionMark ? "&" : "?") + query: ""; + } + if(options.start >= 0 || options.count >= 0){ + headers["X-Range"] = "items=" + (options.start || '0') + '-' + + (("count" in options && options.count != Infinity) ? + (options.count + (options.start || 0) - 1) : ''); + if(this.rangeParam){ + query += (query || hasQuestionMark ? "&" : "?") + this.rangeParam + "=" + headers["X-Range"]; + hasQuestionMark = true; + }else{ + headers.Range = headers["X-Range"]; + } + } + if(options && options.sort){ + var sortParam = this.sortParam; + query += (query || hasQuestionMark ? "&" : "?") + (sortParam ? sortParam + '=' : "sort("); + for(var i = 0; i 0 ? "," : "") + (sort.descending ? this.descendingPrefix : this.ascendingPrefix) + encodeURIComponent(sort.attribute); + } + if(!sortParam){ + query += ")"; + } + } + var results = xhr("GET", { + url: this.target + (query || ""), + handleAs: "json", + headers: headers + }); + results.total = results.then(function(){ + var range = results.ioArgs.xhr.getResponseHeader("Content-Range"); + if (!range){ + // At least Chrome drops the Content-Range header from cached replies. + range = results.ioArgs.xhr.getResponseHeader("X-Content-Range"); + } + return range && (range = range.match(/\/(.*)/)) && +range[1]; + }); + return QueryResults(results); + } +}); + +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Memory.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Memory.js new file mode 100644 index 00000000..d86a463a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Memory.js @@ -0,0 +1,56 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/store/Memory",["../_base/declare","./util/QueryResults","./util/SimpleQueryEngine"],function(_1,_2,_3){ +var _4=null; +return _1("dojo.store.Memory",_4,{constructor:function(_5){ +for(var i in _5){ +this[i]=_5[i]; +} +this.setData(this.data||[]); +},data:null,idProperty:"id",index:null,queryEngine:_3,get:function(id){ +return this.data[this.index[id]]; +},getIdentity:function(_6){ +return _6[this.idProperty]; +},put:function(_7,_8){ +var _9=this.data,_a=this.index,_b=this.idProperty; +var id=_7[_b]=(_8&&"id" in _8)?_8.id:_b in _7?_7[_b]:Math.random(); +if(id in _a){ +if(_8&&_8.overwrite===false){ +throw new Error("Object already exists"); +} +_9[_a[id]]=_7; +}else{ +_a[id]=_9.push(_7)-1; +} +return id; +},add:function(_c,_d){ +(_d=_d||{}).overwrite=false; +return this.put(_c,_d); +},remove:function(id){ +var _e=this.index; +var _f=this.data; +if(id in _e){ +_f.splice(_e[id],1); +this.setData(_f); +return true; +} +},query:function(_10,_11){ +return _2(this.queryEngine(_10,_11)(this.data)); +},setData:function(_12){ +if(_12.items){ +this.idProperty=_12.identifier||this.idProperty; +_12=this.data=_12.items; +}else{ +this.data=_12; +} +this.index={}; +for(var i=0,l=_12.length;i= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/store/Observable",["../_base/kernel","../_base/lang","../when","../_base/array"],function(_1,_2,_3,_4){ +var _5=function(_6){ +var _7,_8=[],_9=0; +_6=_2.delegate(_6); +_6.notify=function(_a,_b){ +_9++; +var _c=_8.slice(); +for(var i=0,l=_c.length;i-1?_1d:_1a.length; +_1a.splice(_20,0,_18); +_1e=_4.indexOf(_12(_1a),_18); +_1a.splice(_20,1); +if((_f.start&&_1e==0)||(!_1b&&_1e==_1a.length)){ +_1e=-1; +}else{ +_1a.splice(_1e,0,_18); +} +} +}else{ +if(_18){ +if(_19!==_7){ +_1e=_1d; +}else{ +if(!_f.start){ +_1e=_6.defaultIndex||0; +_1a.splice(_1e,0,_18); +} +} +} +} +if((_1d>-1||_1e>-1)&&(_17||!_12||(_1d!=_1e))){ +var _21=_14.slice(); +for(i=0;_16=_21[i];i++){ +_16(_18||_1c,_1d,_1e); +} +} +}); +}); +} +var _22={}; +_22.remove=_22.cancel=function(){ +var _23=_4.indexOf(_14,_16); +if(_23>-1){ +_14.splice(_23,1); +if(!_14.length){ +_8.splice(_4.indexOf(_8,_15),1); +} +} +}; +return _22; +}; +} +return _10; +}; +var _24; +function _25(_26,_27){ +var _28=_6[_26]; +if(_28){ +_6[_26]=function(_29){ +var _2a; +if(_26==="put"){ +_2a=_6.getIdentity(_29); +} +if(_24){ +return _28.apply(this,arguments); +} +_24=true; +try{ +var _2b=_28.apply(this,arguments); +_3(_2b,function(_2c){ +_27((typeof _2c=="object"&&_2c)||_29,_2a); +}); +return _2b; +} +finally{ +_24=false; +} +}; +} +}; +_25("put",function(_2d,_2e){ +_6.notify(_2d,_2e); +}); +_25("add",function(_2f){ +_6.notify(_2f); +}); +_25("remove",function(id){ +_6.notify(undefined,id); +}); +return _6; +}; +_2.setObject("dojo.store.Observable",_5); +return _5; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Observable.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Observable.js.uncompressed.js new file mode 100644 index 00000000..84bf29fe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/Observable.js.uncompressed.js @@ -0,0 +1,191 @@ +define("dojo/store/Observable", ["../_base/kernel", "../_base/lang", "../when", "../_base/array" /*=====, "./api/Store" =====*/ +], function(kernel, lang, when, array /*=====, Store =====*/){ + +// module: +// dojo/store/Observable + +var Observable = function(/*Store*/ store){ + // summary: + // The Observable store wrapper takes a store and sets an observe method on query() + // results that can be used to monitor results for changes. + // + // description: + // Observable wraps an existing store so that notifications can be made when a query + // is performed. + // + // example: + // Create a Memory store that returns an observable query, and then log some + // information about that query. + // + // | var store = Observable(new Memory({ + // | data: [ + // | {id: 1, name: "one", prime: false}, + // | {id: 2, name: "two", even: true, prime: true}, + // | {id: 3, name: "three", prime: true}, + // | {id: 4, name: "four", even: true, prime: false}, + // | {id: 5, name: "five", prime: true} + // | ] + // | })); + // | var changes = [], results = store.query({ prime: true }); + // | var observer = results.observe(function(object, previousIndex, newIndex){ + // | changes.push({previousIndex:previousIndex, newIndex:newIndex, object:object}); + // | }); + // + // See the Observable tests for more information. + + var undef, queryUpdaters = [], revision = 0; + // a Comet driven store could directly call notify to notify observers when data has + // changed on the backend + // create a new instance + store = lang.delegate(store); + + store.notify = function(object, existingId){ + revision++; + var updaters = queryUpdaters.slice(); + for(var i = 0, l = updaters.length; i < l; i++){ + updaters[i](object, existingId); + } + }; + var originalQuery = store.query; + store.query = function(query, options){ + options = options || {}; + var results = originalQuery.apply(this, arguments); + if(results && results.forEach){ + var nonPagedOptions = lang.mixin({}, options); + delete nonPagedOptions.start; + delete nonPagedOptions.count; + + var queryExecutor = store.queryEngine && store.queryEngine(query, nonPagedOptions); + var queryRevision = revision; + var listeners = [], queryUpdater; + results.observe = function(listener, includeObjectUpdates){ + if(listeners.push(listener) == 1){ + // first listener was added, create the query checker and updater + queryUpdaters.push(queryUpdater = function(changed, existingId){ + when(results, function(resultsArray){ + var atEnd = resultsArray.length != options.count; + var i, l, listener; + if(++queryRevision != revision){ + throw new Error("Query is out of date, you must observe() the query prior to any data modifications"); + } + var removedObject, removedFrom = -1, insertedInto = -1; + if(existingId !== undef){ + // remove the old one + for(i = 0, l = resultsArray.length; i < l; i++){ + var object = resultsArray[i]; + if(store.getIdentity(object) == existingId){ + removedObject = object; + removedFrom = i; + if(queryExecutor || !changed){// if it was changed and we don't have a queryExecutor, we shouldn't remove it because updated objects would be eliminated + resultsArray.splice(i, 1); + } + break; + } + } + } + if(queryExecutor){ + // add the new one + if(changed && + // if a matches function exists, use that (probably more efficient) + (queryExecutor.matches ? queryExecutor.matches(changed) : queryExecutor([changed]).length)){ + + var firstInsertedInto = removedFrom > -1 ? + removedFrom : // put back in the original slot so it doesn't move unless it needs to (relying on a stable sort below) + resultsArray.length; + resultsArray.splice(firstInsertedInto, 0, changed); // add the new item + insertedInto = array.indexOf(queryExecutor(resultsArray), changed); // sort it + // we now need to push the change back into the original results array + resultsArray.splice(firstInsertedInto, 1); // remove the inserted item from the previous index + + if((options.start && insertedInto == 0) || + (!atEnd && insertedInto == resultsArray.length)){ + // if it is at the end of the page, assume it goes into the prev or next page + insertedInto = -1; + }else{ + resultsArray.splice(insertedInto, 0, changed); // and insert into the results array with the correct index + } + } + }else if(changed){ + // we don't have a queryEngine, so we can't provide any information + // about where it was inserted or moved to. If it is an update, we leave it's position alone, other we at least indicate a new object + if(existingId !== undef){ + // an update, keep the index the same + insertedInto = removedFrom; + }else if(!options.start){ + // a new object + insertedInto = store.defaultIndex || 0; + resultsArray.splice(insertedInto, 0, changed); + } + } + if((removedFrom > -1 || insertedInto > -1) && + (includeObjectUpdates || !queryExecutor || (removedFrom != insertedInto))){ + var copyListeners = listeners.slice(); + for(i = 0;listener = copyListeners[i]; i++){ + listener(changed || removedObject, removedFrom, insertedInto); + } + } + }); + }); + } + var handle = {}; + // TODO: Remove cancel in 2.0. + handle.remove = handle.cancel = function(){ + // remove this listener + var index = array.indexOf(listeners, listener); + if(index > -1){ // check to make sure we haven't already called cancel + listeners.splice(index, 1); + if(!listeners.length){ + // no more listeners, remove the query updater too + queryUpdaters.splice(array.indexOf(queryUpdaters, queryUpdater), 1); + } + } + }; + return handle; + }; + } + return results; + }; + var inMethod; + function whenFinished(method, action){ + var original = store[method]; + if(original){ + store[method] = function(value){ + var originalId; + if(method === 'put'){ + originalId = store.getIdentity(value); + } + if(inMethod){ + // if one method calls another (like add() calling put()) we don't want two events + return original.apply(this, arguments); + } + inMethod = true; + try{ + var results = original.apply(this, arguments); + when(results, function(results){ + action((typeof results == "object" && results) || value, originalId); + }); + return results; + }finally{ + inMethod = false; + } + }; + } + } + // monitor for updates by listening to these methods + whenFinished("put", function(object, originalId){ + store.notify(object, originalId); + }); + whenFinished("add", function(object){ + store.notify(object); + }); + whenFinished("remove", function(id){ + store.notify(undefined, id); + }); + + return store; +}; + +lang.setObject("dojo.store.Observable", Observable); + +return Observable; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/README new file mode 100644 index 00000000..4fb5ac72 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/README @@ -0,0 +1,6 @@ +This folder contains the stores and utilities implementing the Dojo Object Store API, +a successor and unifier to Dojo Data, Dojo Storage, and potentially Dojo Model. These +stores are designed to provide simple lightweight implementations +providing core functionality for typical applications. + +See http://dojotoolkit.org/features/1.6/object-store for more information \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/api/Store.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/api/Store.js new file mode 100644 index 00000000..d50a17ae --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/api/Store.js @@ -0,0 +1,40 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/store/api/Store",["../../_base/declare"],function(_1){ +var _2=_1(null,{idProperty:"id",queryEngine:null,get:function(id){ +},getIdentity:function(_3){ +},put:function(_4,_5){ +},add:function(_6,_7){ +},remove:function(id){ +delete this.index[id]; +var _8=this.data,_9=this.idProperty; +for(var i=0,l=_8.length;i filtered array + // The returned query function may have a "matches" property that can be + // used to determine if an object matches the query. For example: + // | query.matches({id:"some-object", foo:"bar"}) -> true + // | query.matches({id:"some-object", foo:"something else"}) -> false + queryEngine: null, + + get: function(id){ + // summary: + // Retrieves an object by its identity + // id: Number + // The identity to use to lookup the object + // returns: Object + // The object in the store that matches the given id. + }, + getIdentity: function(object){ + // summary: + // Returns an object's identity + // object: Object + // The object to get the identity from + // returns: String|Number + }, + put: function(object, directives){ + // summary: + // Stores an object + // object: Object + // The object to store. + // directives: dojo/store/api/Store.PutDirectives? + // Additional directives for storing objects. + // returns: Number|String + }, + add: function(object, directives){ + // summary: + // Creates an object, throws an error if the object already exists + // object: Object + // The object to store. + // directives: dojo/store/api/Store.PutDirectives? + // Additional directives for creating objects. + // returns: Number|String + }, + remove: function(id){ + // summary: + // Deletes an object by its identity + // id: Number + // The identity to use to delete the object + delete this.index[id]; + var data = this.data, + idProperty = this.idProperty; + for(var i = 0, l = data.length; i < l; i++){ + if(data[i][idProperty] == id){ + data.splice(i, 1); + return; + } + } + }, + query: function(query, options){ + // summary: + // Queries the store for objects. This does not alter the store, but returns a + // set of data from the store. + // query: String|Object|Function + // The query to use for retrieving objects from the store. + // options: dojo/store/api/Store.QueryOptions + // The optional arguments to apply to the resultset. + // returns: dojo/store/api/Store.QueryResults + // The results of the query, extended with iterative methods. + // + // example: + // Given the following store: + // + // ...find all items where "prime" is true: + // + // | store.query({ prime: true }).forEach(function(object){ + // | // handle each object + // | }); + }, + transaction: function(){ + // summary: + // Starts a new transaction. + // Note that a store user might not call transaction() prior to using put, + // delete, etc. in which case these operations effectively could be thought of + // as "auto-commit" style actions. + // returns: dojo/store/api/Store.Transaction + // This represents the new current transaction. + }, + getChildren: function(parent, options){ + // summary: + // Retrieves the children of an object. + // parent: Object + // The object to find the children of. + // options: dojo/store/api/Store.QueryOptions? + // Additional options to apply to the retrieval of the children. + // returns: dojo/store/api/Store.QueryResults + // A result set of the children of the parent object. + }, + getMetadata: function(object){ + // summary: + // Returns any metadata about the object. This may include attribution, + // cache directives, history, or version information. + // object: Object + // The object to return metadata for. + // returns: Object + // An object containing metadata. + } +}); + +Store.PutDirectives = declare(null, { + // summary: + // Directives passed to put() and add() handlers for guiding the update and + // creation of stored objects. + // id: String|Number? + // Indicates the identity of the object if a new object is created + // before: Object? + // If the collection of objects in the store has a natural ordering, + // this indicates that the created or updated object should be placed before the + // object specified by the value of this property. A value of null indicates that the + // object should be last. + // parent: Object?, + // If the store is hierarchical (with single parenting) this property indicates the + // new parent of the created or updated object. + // overwrite: Boolean? + // If this is provided as a boolean it indicates that the object should or should not + // overwrite an existing object. A value of true indicates that a new object + // should not be created, the operation should update an existing object. A + // value of false indicates that an existing object should not be updated, a new + // object should be created (which is the same as an add() operation). When + // this property is not provided, either an update or creation is acceptable. +}); + +Store.SortInformation = declare(null, { + // summary: + // An object describing what attribute to sort on, and the direction of the sort. + // attribute: String + // The name of the attribute to sort on. + // descending: Boolean + // The direction of the sort. Default is false. +}); + +Store.QueryOptions = declare(null, { + // summary: + // Optional object with additional parameters for query results. + // sort: dojo/store/api/Store.SortInformation[]? + // A list of attributes to sort on, as well as direction + // For example: + // | [{attribute:"price, descending: true}]. + // If the sort parameter is omitted, then the natural order of the store may be + // applied if there is a natural order. + // start: Number? + // The first result to begin iteration on + // count: Number? + // The number of how many results should be returned. +}); + +Store.QueryResults = declare(null, { + // summary: + // This is an object returned from query() calls that provides access to the results + // of a query. Queries may be executed asynchronously. + + forEach: function(callback, thisObject){ + // summary: + // Iterates over the query results, based on + // https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/forEach. + // Note that this may executed asynchronously. The callback may be called + // after this function returns. + // callback: + // Function that is called for each object in the query results + // thisObject: + // The object to use as |this| in the callback. + + }, + filter: function(callback, thisObject){ + // summary: + // Filters the query results, based on + // https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/filter. + // Note that this may executed asynchronously. The callback may be called + // after this function returns. + // callback: + // Function that is called for each object in the query results + // thisObject: + // The object to use as |this| in the callback. + // returns: dojo/store/api/Store.QueryResults + }, + map: function(callback, thisObject){ + // summary: + // Maps the query results, based on + // https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/map. + // Note that this may executed asynchronously. The callback may be called + // after this function returns. + // callback: + // Function that is called for each object in the query results + // thisObject: + // The object to use as |this| in the callback. + // returns: dojo/store/api/Store.QueryResults + }, + then: function(callback, errorHandler){ + // summary: + // This registers a callback for when the query is complete, if the query is asynchronous. + // This is an optional method, and may not be present for synchronous queries. + // callback: + // This is called when the query is completed successfully, and is passed a single argument + // that is an array representing the query results. + // errorHandler: + // This is called if the query failed, and is passed a single argument that is the error + // for the failure. + }, + observe: function(listener, includeAllUpdates){ + // summary: + // This registers a callback for notification of when data is modified in the query results. + // This is an optional method, and is usually provided by dojo/store/Observable. + // listener: Function + // The listener function is called when objects in the query results are modified + // to affect the query result. The listener function is called with the following arguments: + // | listener(object, removedFrom, insertedInto); + // + // - The object parameter indicates the object that was create, modified, or deleted. + // - The removedFrom parameter indicates the index in the result array where + // the object used to be. If the value is -1, then the object is an addition to + // this result set (due to a new object being created, or changed such that it + // is a part of the result set). + // - The insertedInto parameter indicates the index in the result array where + // the object should be now. If the value is -1, then the object is a removal + // from this result set (due to an object being deleted, or changed such that it + // is not a part of the result set). + // includeAllUpdates: + // This indicates whether or not to include object updates that do not affect + // the inclusion or order of the object in the query results. By default this is false, + // which means that if any object is updated in such a way that it remains + // in the result set and it's position in result sets is not affected, then the listener + // will not be fired. + + }, + // total: Number|Promise? + // This property should be included in if the query options included the "count" + // property limiting the result set. This property indicates the total number of objects + // matching the query (as if "start" and "count" weren't present). This may be + // a promise if the query is asynchronous. + total: 0 +}); + +Store.Transaction = declare(null, { + // summary: + // This is an object returned from transaction() calls that represents the current + // transaction. + + commit: function(){ + // summary: + // Commits the transaction. This may throw an error if it fails. Of if the operation + // is asynchronous, it may return a promise that represents the eventual success + // or failure of the commit. + }, + abort: function(callback, thisObject){ + // summary: + // Aborts the transaction. This may throw an error if it fails. Of if the operation + // is asynchronous, it may return a promise that represents the eventual success + // or failure of the abort. + } +}); +return Store; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/QueryResults.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/QueryResults.js new file mode 100644 index 00000000..97509332 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/QueryResults.js @@ -0,0 +1,41 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/store/util/QueryResults",["../../_base/array","../../_base/lang","../../when"],function(_1,_2,_3){ +var _4=function(_5){ +if(!_5){ +return _5; +} +var _6=!!_5.then; +if(_6){ +_5=_2.delegate(_5); +} +function _7(_8){ +_5[_8]=function(){ +var _9=arguments; +var _a=_3(_5,function(_b){ +Array.prototype.unshift.call(_9,_b); +return _4(_1[_8].apply(_1,_9)); +}); +if(_8!=="forEach"||_6){ +return _a; +} +}; +}; +_7("forEach"); +_7("filter"); +_7("map"); +if(_5.total==null){ +_5.total=_3(_5,function(_c){ +return _c.length; +}); +} +return _5; +}; +_2.setObject("dojo.store.util.QueryResults",_4); +return _4; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/QueryResults.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/QueryResults.js.uncompressed.js new file mode 100644 index 00000000..ad829df7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/QueryResults.js.uncompressed.js @@ -0,0 +1,71 @@ +define("dojo/store/util/QueryResults", ["../../_base/array", "../../_base/lang", "../../when" +], function(array, lang, when){ + +// module: +// dojo/store/util/QueryResults + +var QueryResults = function(results){ + // summary: + // A function that wraps the results of a store query with additional + // methods. + // description: + // QueryResults is a basic wrapper that allows for array-like iteration + // over any kind of returned data from a query. While the simplest store + // will return a plain array of data, other stores may return deferreds or + // promises; this wrapper makes sure that *all* results can be treated + // the same. + // + // Additional methods include `forEach`, `filter` and `map`. + // results: Array|dojo/promise/Promise + // The result set as an array, or a promise for an array. + // returns: + // An array-like object that can be used for iterating over. + // example: + // Query a store and iterate over the results. + // + // | store.query({ prime: true }).forEach(function(item){ + // | // do something + // | }); + + if(!results){ + return results; + } + + var isPromise = !!results.then; + // if it is a promise it may be frozen + if(isPromise){ + results = lang.delegate(results); + } + function addIterativeMethod(method){ + // Always add the iterative methods so a QueryResults is + // returned whether the environment is ES3 or ES5 + results[method] = function(){ + var args = arguments; + var result = when(results, function(results){ + Array.prototype.unshift.call(args, results); + return QueryResults(array[method].apply(array, args)); + }); + // forEach should only return the result of when() + // when we're wrapping a promise + if(method !== "forEach" || isPromise){ + return result; + } + }; + } + + addIterativeMethod("forEach"); + addIterativeMethod("filter"); + addIterativeMethod("map"); + if(results.total == null){ + results.total = when(results, function(results){ + return results.length; + }); + } + return results; // Object +}; + +lang.setObject("dojo.store.util.QueryResults", QueryResults); + +return QueryResults; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/SimpleQueryEngine.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/SimpleQueryEngine.js new file mode 100644 index 00000000..09238847 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/SimpleQueryEngine.js @@ -0,0 +1,66 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/store/util/SimpleQueryEngine",["../../_base/array"],function(_1){ +return function(_2,_3){ +switch(typeof _2){ +default: +throw new Error("Can not query with a "+typeof _2); +case "object": +case "undefined": +var _4=_2; +_2=function(_5){ +for(var _6 in _4){ +var _7=_4[_6]; +if(_7&&_7.test){ +if(!_7.test(_5[_6],_5)){ +return false; +} +}else{ +if(_7!=_5[_6]){ +return false; +} +} +} +return true; +}; +break; +case "string": +if(!this[_2]){ +throw new Error("No filter function "+_2+" was found in store"); +} +_2=this[_2]; +case "function": +} +function _8(_9){ +var _a=_1.filter(_9,_2); +var _b=_3&&_3.sort; +if(_b){ +_a.sort(typeof _b=="function"?_b:function(a,b){ +for(var _c,i=0;_c=_b[i];i++){ +var _d=a[_c.attribute]; +var _e=b[_c.attribute]; +_d=_d!=null?_d.valueOf():_d; +_e=_e!=null?_e.valueOf():_e; +if(_d!=_e){ +return !!_c.descending==(_d==null||_d>_e)?-1:1; +} +} +return 0; +}); +} +if(_3&&(_3.start||_3.count)){ +var _f=_a.length; +_a=_a.slice(_3.start||0,(_3.start||0)+(_3.count||Infinity)); +_a.total=_f; +} +return _a; +}; +_8.matches=_2; +return _8; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/SimpleQueryEngine.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/SimpleQueryEngine.js.uncompressed.js new file mode 100644 index 00000000..2f5dd394 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/store/util/SimpleQueryEngine.js.uncompressed.js @@ -0,0 +1,113 @@ +define("dojo/store/util/SimpleQueryEngine", ["../../_base/array" /*=====, "../api/Store" =====*/], function(arrayUtil /*=====, Store =====*/){ + +// module: +// dojo/store/util/SimpleQueryEngine + +return function(query, options){ + // summary: + // Simple query engine that matches using filter functions, named filter + // functions or objects by name-value on a query object hash + // + // description: + // The SimpleQueryEngine provides a way of getting a QueryResults through + // the use of a simple object hash as a filter. The hash will be used to + // match properties on data objects with the corresponding value given. In + // other words, only exact matches will be returned. + // + // This function can be used as a template for more complex query engines; + // for example, an engine can be created that accepts an object hash that + // contains filtering functions, or a string that gets evaluated, etc. + // + // When creating a new dojo.store, simply set the store's queryEngine + // field as a reference to this function. + // + // query: Object + // An object hash with fields that may match fields of items in the store. + // Values in the hash will be compared by normal == operator, but regular expressions + // or any object that provides a test() method are also supported and can be + // used to match strings by more complex expressions + // (and then the regex's or object's test() method will be used to match values). + // + // options: dojo/store/api/Store.QueryOptions? + // An object that contains optional information such as sort, start, and count. + // + // returns: Function + // A function that caches the passed query under the field "matches". See any + // of the "query" methods on dojo.stores. + // + // example: + // Define a store with a reference to this engine, and set up a query method. + // + // | var myStore = function(options){ + // | // ...more properties here + // | this.queryEngine = SimpleQueryEngine; + // | // define our query method + // | this.query = function(query, options){ + // | return QueryResults(this.queryEngine(query, options)(this.data)); + // | }; + // | }; + + // create our matching query function + switch(typeof query){ + default: + throw new Error("Can not query with a " + typeof query); + case "object": case "undefined": + var queryObject = query; + query = function(object){ + for(var key in queryObject){ + var required = queryObject[key]; + if(required && required.test){ + // an object can provide a test method, which makes it work with regex + if(!required.test(object[key], object)){ + return false; + } + }else if(required != object[key]){ + return false; + } + } + return true; + }; + break; + case "string": + // named query + if(!this[query]){ + throw new Error("No filter function " + query + " was found in store"); + } + query = this[query]; + // fall through + case "function": + // fall through + } + function execute(array){ + // execute the whole query, first we filter + var results = arrayUtil.filter(array, query); + // next we sort + var sortSet = options && options.sort; + if(sortSet){ + results.sort(typeof sortSet == "function" ? sortSet : function(a, b){ + for(var sort, i=0; sort = sortSet[i]; i++){ + var aValue = a[sort.attribute]; + var bValue = b[sort.attribute]; + // valueOf enables proper comparison of dates + aValue = aValue != null ? aValue.valueOf() : aValue; + bValue = bValue != null ? bValue.valueOf() : bValue; + if (aValue != bValue){ + return !!sort.descending == (aValue == null || aValue > bValue) ? -1 : 1; + } + } + return 0; + }); + } + // now we paginate + if(options && (options.start || options.count)){ + var total = results.length; + results = results.slice(options.start || 0, (options.start || 0) + (options.count || Infinity)); + results.total = total; + } + return results; + } + execute.matches = query; + return execute; +}; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/string.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/string.js new file mode 100644 index 00000000..fedf7b1c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/string.js @@ -0,0 +1,68 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/string",["./_base/kernel","./_base/lang"],function(_1,_2){ +var _3=/[&<>'"\/]/g; +var _4={"&":"&","<":"<",">":">","\"":""","'":"'","/":"/"}; +var _5={}; +_2.setObject("dojo.string",_5); +_5.escape=function(_6){ +if(!_6){ +return ""; +} +return _6.replace(_3,function(c){ +return _4[c]; +}); +}; +_5.rep=function(_7,_8){ +if(_8<=0||!_7){ +return ""; +} +var _9=[]; +for(;;){ +if(_8&1){ +_9.push(_7); +} +if(!(_8>>=1)){ +break; +} +_7+=_7; +} +return _9.join(""); +}; +_5.pad=function(_a,_b,ch,_c){ +if(!ch){ +ch="0"; +} +var _d=String(_a),_e=_5.rep(ch,Math.ceil((_b-_d.length)/ch.length)); +return _c?_d+_e:_e+_d; +}; +_5.substitute=function(_f,map,_10,_11){ +_11=_11||_1.global; +_10=_10?_2.hitch(_11,_10):function(v){ +return v; +}; +return _f.replace(/\$\{([^\s\:\}]+)(?:\:([^\s\:\}]+))?\}/g,function(_12,key,_13){ +var _14=_2.getObject(key,false,map); +if(_13){ +_14=_2.getObject(_13,false,_11).call(_11,_14,key); +} +return _10(_14,key).toString(); +}); +}; +_5.trim=String.prototype.trim?_2.trim:function(str){ +str=str.replace(/^\s+/,""); +for(var i=str.length-1;i>=0;i--){ +if(/\S/.test(str.charAt(i))){ +str=str.substring(0,i+1); +break; +} +} +return str; +}; +return _5; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/string.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/string.js.uncompressed.js new file mode 100644 index 00000000..7c010827 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/string.js.uncompressed.js @@ -0,0 +1,181 @@ +define("dojo/string", [ + "./_base/kernel", // kernel.global + "./_base/lang" +], function(kernel, lang){ + +// module: +// dojo/string +var ESCAPE_REGEXP = /[&<>'"\/]/g; +var ESCAPE_MAP = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''', + '/': '/' +}; +var string = { + // summary: + // String utilities for Dojo +}; +lang.setObject("dojo.string", string); + +string.escape = function(/*String*/str){ + // summary: + // Efficiently escape a string for insertion into HTML (innerHTML or attributes), replacing &, <, >, ", ', and / characters. + // str: + // the string to escape + if(!str){ return ""; } + return str.replace(ESCAPE_REGEXP, function(c) { + return ESCAPE_MAP[c]; + }); +}; + +string.rep = function(/*String*/str, /*Integer*/num){ + // summary: + // Efficiently replicate a string `n` times. + // str: + // the string to replicate + // num: + // number of times to replicate the string + + if(num <= 0 || !str){ return ""; } + + var buf = []; + for(;;){ + if(num & 1){ + buf.push(str); + } + if(!(num >>= 1)){ break; } + str += str; + } + return buf.join(""); // String +}; + +string.pad = function(/*String*/text, /*Integer*/size, /*String?*/ch, /*Boolean?*/end){ + // summary: + // Pad a string to guarantee that it is at least `size` length by + // filling with the character `ch` at either the start or end of the + // string. Pads at the start, by default. + // text: + // the string to pad + // size: + // length to provide padding + // ch: + // character to pad, defaults to '0' + // end: + // adds padding at the end if true, otherwise pads at start + // example: + // | // Fill the string to length 10 with "+" characters on the right. Yields "Dojo++++++". + // | string.pad("Dojo", 10, "+", true); + + if(!ch){ + ch = '0'; + } + var out = String(text), + pad = string.rep(ch, Math.ceil((size - out.length) / ch.length)); + return end ? out + pad : pad + out; // String +}; + +string.substitute = function( /*String*/ template, + /*Object|Array*/map, + /*Function?*/ transform, + /*Object?*/ thisObject){ + // summary: + // Performs parameterized substitutions on a string. Throws an + // exception if any parameter is unmatched. + // template: + // a string with expressions in the form `${key}` to be replaced or + // `${key:format}` which specifies a format function. keys are case-sensitive. + // map: + // hash to search for substitutions + // transform: + // a function to process all parameters before substitution takes + // place, e.g. mylib.encodeXML + // thisObject: + // where to look for optional format function; default to the global + // namespace + // example: + // Substitutes two expressions in a string from an Array or Object + // | // returns "File 'foo.html' is not found in directory '/temp'." + // | // by providing substitution data in an Array + // | string.substitute( + // | "File '${0}' is not found in directory '${1}'.", + // | ["foo.html","/temp"] + // | ); + // | + // | // also returns "File 'foo.html' is not found in directory '/temp'." + // | // but provides substitution data in an Object structure. Dotted + // | // notation may be used to traverse the structure. + // | string.substitute( + // | "File '${name}' is not found in directory '${info.dir}'.", + // | { name: "foo.html", info: { dir: "/temp" } } + // | ); + // example: + // Use a transform function to modify the values: + // | // returns "file 'foo.html' is not found in directory '/temp'." + // | string.substitute( + // | "${0} is not found in ${1}.", + // | ["foo.html","/temp"], + // | function(str){ + // | // try to figure out the type + // | var prefix = (str.charAt(0) == "/") ? "directory": "file"; + // | return prefix + " '" + str + "'"; + // | } + // | ); + // example: + // Use a formatter + // | // returns "thinger -- howdy" + // | string.substitute( + // | "${0:postfix}", ["thinger"], null, { + // | postfix: function(value, key){ + // | return value + " -- howdy"; + // | } + // | } + // | ); + + thisObject = thisObject || kernel.global; + transform = transform ? + lang.hitch(thisObject, transform) : function(v){ return v; }; + + return template.replace(/\$\{([^\s\:\}]+)(?:\:([^\s\:\}]+))?\}/g, + function(match, key, format){ + var value = lang.getObject(key, false, map); + if(format){ + value = lang.getObject(format, false, thisObject).call(thisObject, value, key); + } + return transform(value, key).toString(); + }); // String +}; + +string.trim = String.prototype.trim ? + lang.trim : // aliasing to the native function + function(str){ + str = str.replace(/^\s+/, ''); + for(var i = str.length - 1; i >= 0; i--){ + if(/\S/.test(str.charAt(i))){ + str = str.substring(0, i + 1); + break; + } + } + return str; + }; + +/*===== + string.trim = function(str){ + // summary: + // Trims whitespace from both sides of the string + // str: String + // String to be trimmed + // returns: String + // Returns the trimmed string + // description: + // This version of trim() was taken from [Steven Levithan's blog](http://blog.stevenlevithan.com/archives/faster-trim-javascript). + // The short yet performant version of this function is dojo/_base/lang.trim(), + // which is part of Dojo base. Uses String.prototype.trim instead, if available. + return ""; // String + }; + =====*/ + + return string; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/text.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/text.js new file mode 100644 index 00000000..19290592 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/text.js @@ -0,0 +1,99 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/text",["./_base/kernel","require","./has","./request"],function(_1,_2,_3,_4){ +var _5; +if(1){ +_5=function(_6,_7,_8){ +_4(_6,{sync:!!_7,headers:{"X-Requested-With":null}}).then(_8); +}; +}else{ +if(_2.getText){ +_5=_2.getText; +}else{ +console.error("dojo/text plugin failed to load because loader does not support getText"); +} +} +var _9={},_a=function(_b){ +if(_b){ +_b=_b.replace(/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,""); +var _c=_b.match(/]*>\s*([\s\S]+)\s*<\/body>/im); +if(_c){ +_b=_c[1]; +} +}else{ +_b=""; +} +return _b; +},_d={},_e={}; +_1.cache=function(_f,url,_10){ +var key; +if(typeof _f=="string"){ +if(/\//.test(_f)){ +key=_f; +_10=url; +}else{ +key=_2.toUrl(_f.replace(/\./g,"/")+(url?("/"+url):"")); +} +}else{ +key=_f+""; +_10=url; +} +var val=(_10!=undefined&&typeof _10!="string")?_10.value:_10,_11=_10&&_10.sanitize; +if(typeof val=="string"){ +_9[key]=val; +return _11?_a(val):val; +}else{ +if(val===null){ +delete _9[key]; +return null; +}else{ +if(!(key in _9)){ +_5(key,true,function(_12){ +_9[key]=_12; +}); +} +return _11?_a(_9[key]):_9[key]; +} +} +}; +return {dynamic:true,normalize:function(id,_13){ +var _14=id.split("!"),url=_14[0]; +return (/^\./.test(url)?_13(url):url)+(_14[1]?"!"+_14[1]:""); +},load:function(id,_15,_16){ +var _17=id.split("!"),_18=_17.length>1,_19=_17[0],url=_15.toUrl(_17[0]),_1a="url:"+url,_1b=_d,_1c=function(_1d){ +_16(_18?_a(_1d):_1d); +}; +if(_19 in _9){ +_1b=_9[_19]; +}else{ +if(_15.cache&&_1a in _15.cache){ +_1b=_15.cache[_1a]; +}else{ +if(url in _9){ +_1b=_9[url]; +} +} +} +if(_1b===_d){ +if(_e[url]){ +_e[url].push(_1c); +}else{ +var _1e=_e[url]=[_1c]; +_5(url,!_15.async,function(_1f){ +_9[_19]=_9[url]=_1f; +for(var i=0;i<_1e.length;){ +_1e[i++](_1f); +} +delete _e[url]; +}); +} +}else{ +_1c(_1b); +} +}}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/text.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/text.js.uncompressed.js new file mode 100644 index 00000000..9aec8d2a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/text.js.uncompressed.js @@ -0,0 +1,218 @@ +define("dojo/text", ["./_base/kernel", "require", "./has", "./request"], function(dojo, require, has, request){ + // module: + // dojo/text + + var getText; + if( 1 ){ + getText= function(url, sync, load){ + request(url, {sync:!!sync, headers: { 'X-Requested-With': null } }).then(load); + }; + }else{ + // Path for node.js and rhino, to load from local file system. + // TODO: use node.js native methods rather than depending on a require.getText() method to exist. + if(require.getText){ + getText= require.getText; + }else{ + console.error("dojo/text plugin failed to load because loader does not support getText"); + } + } + + var + theCache = {}, + + strip= function(text){ + //Strips declarations so that external SVG and XML + //documents can be added to a document without worry. Also, if the string + //is an HTML document, only the part inside the body tag is returned. + if(text){ + text= text.replace(/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im, ""); + var matches= text.match(/]*>\s*([\s\S]+)\s*<\/body>/im); + if(matches){ + text= matches[1]; + } + }else{ + text = ""; + } + return text; + }, + + notFound = {}, + + pending = {}; + + dojo.cache = function(/*String||Object*/module, /*String*/url, /*String||Object?*/value){ + // summary: + // A getter and setter for storing the string content associated with the + // module and url arguments. + // description: + // If module is a string that contains slashes, then it is interpretted as a fully + // resolved path (typically a result returned by require.toUrl), and url should not be + // provided. This is the preferred signature. If module is a string that does not + // contain slashes, then url must also be provided and module and url are used to + // call `dojo.moduleUrl()` to generate a module URL. This signature is deprecated. + // If value is specified, the cache value for the moduleUrl will be set to + // that value. Otherwise, dojo.cache will fetch the moduleUrl and store it + // in its internal cache and return that cached value for the URL. To clear + // a cache value pass null for value. Since XMLHttpRequest (XHR) is used to fetch the + // the URL contents, only modules on the same domain of the page can use this capability. + // The build system can inline the cache values though, to allow for xdomain hosting. + // module: String||Object + // If a String with slashes, a fully resolved path; if a String without slashes, the + // module name to use for the base part of the URL, similar to module argument + // to `dojo.moduleUrl`. If an Object, something that has a .toString() method that + // generates a valid path for the cache item. For example, a dojo._Url object. + // url: String + // The rest of the path to append to the path derived from the module argument. If + // module is an object, then this second argument should be the "value" argument instead. + // value: String||Object? + // If a String, the value to use in the cache for the module/url combination. + // If an Object, it can have two properties: value and sanitize. The value property + // should be the value to use in the cache, and sanitize can be set to true or false, + // to indicate if XML declarations should be removed from the value and if the HTML + // inside a body tag in the value should be extracted as the real value. The value argument + // or the value property on the value argument are usually only used by the build system + // as it inlines cache content. + // example: + // To ask dojo.cache to fetch content and store it in the cache (the dojo["cache"] style + // of call is used to avoid an issue with the build system erroneously trying to intern + // this example. To get the build system to intern your dojo.cache calls, use the + // "dojo.cache" style of call): + // | //If template.html contains "

    Hello

    " that will be + // | //the value for the text variable. + // | //Note: This is pre-AMD, deprecated syntax + // | var text = dojo["cache"]("my.module", "template.html"); + // example: + // To ask dojo.cache to fetch content and store it in the cache, and sanitize the input + // (the dojo["cache"] style of call is used to avoid an issue with the build system + // erroneously trying to intern this example. To get the build system to intern your + // dojo.cache calls, use the "dojo.cache" style of call): + // | //If template.html contains "

    Hello

    ", the + // | //text variable will contain just "

    Hello

    ". + // | //Note: This is pre-AMD, deprecated syntax + // | var text = dojo["cache"]("my.module", "template.html", {sanitize: true}); + // example: + // Same example as previous, but demonstrates how an object can be passed in as + // the first argument, then the value argument can then be the second argument. + // | //If template.html contains "

    Hello

    ", the + // | //text variable will contain just "

    Hello

    ". + // | //Note: This is pre-AMD, deprecated syntax + // | var text = dojo["cache"](new dojo._Url("my/module/template.html"), {sanitize: true}); + + // * (string string [value]) => (module, url, value) + // * (object [value]) => (module, value), url defaults to "" + // + // * if module is an object, then it must be convertable to a string + // * (module, url) module + (url ? ("/" + url) : "") must be a legal argument to require.toUrl + // * value may be a string or an object; if an object then may have the properties "value" and/or "sanitize" + var key; + if(typeof module=="string"){ + if(/\//.test(module)){ + // module is a version 1.7+ resolved path + key = module; + value = url; + }else{ + // module is a version 1.6- argument to dojo.moduleUrl + key = require.toUrl(module.replace(/\./g, "/") + (url ? ("/" + url) : "")); + } + }else{ + key = module + ""; + value = url; + } + var + val = (value != undefined && typeof value != "string") ? value.value : value, + sanitize = value && value.sanitize; + + if(typeof val == "string"){ + //We have a string, set cache value + theCache[key] = val; + return sanitize ? strip(val) : val; + }else if(val === null){ + //Remove cached value + delete theCache[key]; + return null; + }else{ + //Allow cache values to be empty strings. If key property does + //not exist, fetch it. + if(!(key in theCache)){ + getText(key, true, function(text){ + theCache[key]= text; + }); + } + return sanitize ? strip(theCache[key]) : theCache[key]; + } + }; + + return { + // summary: + // This module implements the dojo/text! plugin and the dojo.cache API. + // description: + // We choose to include our own plugin to leverage functionality already contained in dojo + // and thereby reduce the size of the plugin compared to various foreign loader implementations. + // Also, this allows foreign AMD loaders to be used without their plugins. + // + // CAUTION: this module is designed to optionally function synchronously to support the dojo v1.x synchronous + // loader. This feature is outside the scope of the CommonJS plugins specification. + + // the dojo/text caches it's own resources because of dojo.cache + dynamic: true, + + normalize: function(id, toAbsMid){ + // id is something like (path may be relative): + // + // "path/to/text.html" + // "path/to/text.html!strip" + var parts= id.split("!"), + url= parts[0]; + return (/^\./.test(url) ? toAbsMid(url) : url) + (parts[1] ? "!" + parts[1] : ""); + }, + + load: function(id, require, load){ + // id: String + // Path to the resource. + // require: Function + // Object that include the function toUrl with given id returns a valid URL from which to load the text. + // load: Function + // Callback function which will be called, when the loading finished. + + // id is something like (path is always absolute): + // + // "path/to/text.html" + // "path/to/text.html!strip" + var + parts= id.split("!"), + stripFlag= parts.length>1, + absMid= parts[0], + url = require.toUrl(parts[0]), + requireCacheUrl = "url:" + url, + text = notFound, + finish = function(text){ + load(stripFlag ? strip(text) : text); + }; + if(absMid in theCache){ + text = theCache[absMid]; + }else if(require.cache && requireCacheUrl in require.cache){ + text = require.cache[requireCacheUrl]; + }else if(url in theCache){ + text = theCache[url]; + } + if(text===notFound){ + if(pending[url]){ + pending[url].push(finish); + }else{ + var pendingList = pending[url] = [finish]; + getText(url, !require.async, function(text){ + theCache[absMid]= theCache[url]= text; + for(var i = 0; i= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/throttle",[],function(){ +return function(cb,_1){ +var _2=true; +return function(){ +if(!_2){ +return; +} +_2=false; +cb.apply(this,arguments); +setTimeout(function(){ +_2=true; +},_1); +}; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/throttle.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/throttle.js.uncompressed.js new file mode 100644 index 00000000..4f0bcbcd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/throttle.js.uncompressed.js @@ -0,0 +1,31 @@ +define("dojo/throttle", [], function(){ + // module: + // dojo/throttle + // summary: + // This module provide a throttler + + return function(cb, wait){ + // summary: + // Create a function that will only execute once per `wait` periods. + // description: + // Create a function that will only execute once per `wait` periods + // from last execution when called repeatedly. Useful for preventing excessive + // calculations in rapidly firing events, such as window.resize, node.mousemove + // and so on. + // cb: Function + // The callback to fire. + // wait: Integer + // time to delay before allowing cb to call again. + var canrun = true; + return function(){ + if(!canrun){ + return; + } + canrun = false; + cb.apply(this, arguments); + setTimeout(function(){ + canrun = true; + }, wait); + }; + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/topic.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/topic.js new file mode 100644 index 00000000..be1f80d5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/topic.js @@ -0,0 +1,15 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/topic",["./Evented"],function(_1){ +var _2=new _1; +return {publish:function(_3,_4){ +return _2.emit.apply(_2,arguments); +},subscribe:function(_5,_6){ +return _2.on.apply(_2,arguments); +}}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/topic.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/topic.js.uncompressed.js new file mode 100644 index 00000000..35e19373 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/topic.js.uncompressed.js @@ -0,0 +1,38 @@ +define("dojo/topic", ["./Evented"], function(Evented){ + + // module: + // dojo/topic + + var hub = new Evented; + return { + // summary: + // Pubsub hub. + // example: + // | topic.subscribe("some/topic", function(event){ + // | ... do something with event + // | }); + // | topic.publish("some/topic", {name:"some event", ...}); + + publish: function(topic, event){ + // summary: + // Publishes a message to a topic on the pub/sub hub. All arguments after + // the first will be passed to the subscribers, so any number of arguments + // can be provided (not just event). + // topic: String + // The name of the topic to publish to + // event: Object + // An event to distribute to the topic listeners + return hub.emit.apply(hub, arguments); + }, + + subscribe: function(topic, listener){ + // summary: + // Subscribes to a topic on the pub/sub hub + // topic: String + // The topic to subscribe to + // listener: Function + // A function to call when a message is published to the given topic + return hub.on.apply(hub, arguments); + } + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/touch.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/touch.js new file mode 100644 index 00000000..be57cea1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/touch.js @@ -0,0 +1,175 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/touch",["./_base/kernel","./aspect","./dom","./dom-class","./_base/lang","./on","./has","./mouse","./domReady","./_base/window"],function(_1,_2,_3,_4,_5,on,_6,_7,_8,_9){ +var _a=_6("ios")<5; +var _b=_6("pointer-events")||_6("MSPointer"),_c=(function(){ +var _d={}; +for(var _e in {down:1,move:1,up:1,cancel:1,over:1,out:1}){ +_d[_e]=_6("MSPointer")?"MSPointer"+_e.charAt(0).toUpperCase()+_e.slice(1):"pointer"+_e; +} +return _d; +})(); +var _f=_6("touch-events"); +var _10,_11,_12=false,_13,_14,_15,_16,_17,_18; +var _19; +function _1a(_1b,_1c,_1d){ +if(_b&&_1d){ +return function(_1e,_1f){ +return on(_1e,_1d,_1f); +}; +}else{ +if(_f){ +return function(_20,_21){ +var _22=on(_20,_1c,function(evt){ +_21.call(this,evt); +_19=(new Date()).getTime(); +}),_23=on(_20,_1b,function(evt){ +if(!_19||(new Date()).getTime()>_19+1000){ +_21.call(this,evt); +} +}); +return {remove:function(){ +_22.remove(); +_23.remove(); +}}; +}; +}else{ +return function(_24,_25){ +return on(_24,_1b,_25); +}; +} +} +}; +function _26(_27){ +do{ +if(_27.dojoClick!==undefined){ +return _27; +} +}while(_27=_27.parentNode); +}; +function _28(e,_29,_2a){ +var _2b=_26(e.target); +_11=!e.target.disabled&&_2b&&_2b.dojoClick; +if(_11){ +_12=(_11=="useTarget"); +_13=(_12?_2b:e.target); +if(_12){ +e.preventDefault(); +} +_14=e.changedTouches?e.changedTouches[0].pageX-_9.global.pageXOffset:e.clientX; +_15=e.changedTouches?e.changedTouches[0].pageY-_9.global.pageYOffset:e.clientY; +_16=(typeof _11=="object"?_11.x:(typeof _11=="number"?_11:0))||4; +_17=(typeof _11=="object"?_11.y:(typeof _11=="number"?_11:0))||4; +if(!_10){ +_10=true; +function _2c(e){ +if(_12){ +_11=_3.isDescendant(_9.doc.elementFromPoint((e.changedTouches?e.changedTouches[0].pageX-_9.global.pageXOffset:e.clientX),(e.changedTouches?e.changedTouches[0].pageY-_9.global.pageYOffset:e.clientY)),_13); +}else{ +_11=_11&&(e.changedTouches?e.changedTouches[0].target:e.target)==_13&&Math.abs((e.changedTouches?e.changedTouches[0].pageX-_9.global.pageXOffset:e.clientX)-_14)<=_16&&Math.abs((e.changedTouches?e.changedTouches[0].pageY-_9.global.pageYOffset:e.clientY)-_15)<=_17; +} +}; +_9.doc.addEventListener(_29,function(e){ +_2c(e); +if(_12){ +e.preventDefault(); +} +},true); +_9.doc.addEventListener(_2a,function(e){ +_2c(e); +if(_11){ +_18=(new Date()).getTime(); +var _2d=(_12?_13:e.target); +if(_2d.tagName==="LABEL"){ +_2d=_3.byId(_2d.getAttribute("for"))||_2d; +} +var src=(e.changedTouches)?e.changedTouches[0]:e; +var _2e=document.createEvent("MouseEvents"); +_2e._dojo_click=true; +_2e.initMouseEvent("click",true,true,e.view,e.detail,src.screenX,src.screenY,src.clientX,src.clientY,e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,0,null); +setTimeout(function(){ +on.emit(_2d,"click",_2e); +_18=(new Date()).getTime(); +},0); +} +},true); +function _2f(_30){ +_9.doc.addEventListener(_30,function(e){ +if(!e._dojo_click&&(new Date()).getTime()<=_18+1000&&!(e.target.tagName=="INPUT"&&_4.contains(e.target,"dijitOffScreen"))){ +e.stopPropagation(); +e.stopImmediatePropagation&&e.stopImmediatePropagation(); +if(_30=="click"&&(e.target.tagName!="INPUT"||e.target.type=="radio"||e.target.type=="checkbox")&&e.target.tagName!="TEXTAREA"&&e.target.tagName!="AUDIO"&&e.target.tagName!="VIDEO"){ +e.preventDefault(); +} +} +},true); +}; +_2f("click"); +_2f("mousedown"); +_2f("mouseup"); +} +} +}; +var _31; +if(_b){ +_8(function(){ +_9.doc.addEventListener(_c.down,function(evt){ +_28(evt,_c.move,_c.up); +},true); +}); +}else{ +if(_f){ +_8(function(){ +_31=_9.body(); +_9.doc.addEventListener("touchstart",function(evt){ +_19=(new Date()).getTime(); +var _32=_31; +_31=evt.target; +on.emit(_32,"dojotouchout",{relatedTarget:_31,bubbles:true}); +on.emit(_31,"dojotouchover",{relatedTarget:_32,bubbles:true}); +_28(evt,"touchmove","touchend"); +},true); +function _33(evt){ +var _34=_5.delegate(evt,{bubbles:true}); +if(_6("ios")>=6){ +_34.touches=evt.touches; +_34.altKey=evt.altKey; +_34.changedTouches=evt.changedTouches; +_34.ctrlKey=evt.ctrlKey; +_34.metaKey=evt.metaKey; +_34.shiftKey=evt.shiftKey; +_34.targetTouches=evt.targetTouches; +} +return _34; +}; +on(_9.doc,"touchmove",function(evt){ +_19=(new Date()).getTime(); +var _35=_9.doc.elementFromPoint(evt.pageX-(_a?0:_9.global.pageXOffset),evt.pageY-(_a?0:_9.global.pageYOffset)); +if(_35){ +if(_31!==_35){ +on.emit(_31,"dojotouchout",{relatedTarget:_35,bubbles:true}); +on.emit(_35,"dojotouchover",{relatedTarget:_31,bubbles:true}); +_31=_35; +} +if(!on.emit(_35,"dojotouchmove",_33(evt))){ +evt.preventDefault(); +} +} +}); +on(_9.doc,"touchend",function(evt){ +_19=(new Date()).getTime(); +var _36=_9.doc.elementFromPoint(evt.pageX-(_a?0:_9.global.pageXOffset),evt.pageY-(_a?0:_9.global.pageYOffset))||_9.body(); +on.emit(_36,"dojotouchend",_33(evt)); +}); +}); +} +} +var _37={press:_1a("mousedown","touchstart",_c.down),move:_1a("mousemove","dojotouchmove",_c.move),release:_1a("mouseup","dojotouchend",_c.up),cancel:_1a(_7.leave,"touchcancel",_b?_c.cancel:null),over:_1a("mouseover","dojotouchover",_c.over),out:_1a("mouseout","dojotouchout",_c.out),enter:_7._eventHandler(_1a("mouseover","dojotouchover",_c.over)),leave:_7._eventHandler(_1a("mouseout","dojotouchout",_c.out))}; +1&&(_1.touch=_37); +return _37; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/touch.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/touch.js.uncompressed.js new file mode 100644 index 00000000..c76df140 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/touch.js.uncompressed.js @@ -0,0 +1,447 @@ +define("dojo/touch", ["./_base/kernel", "./aspect", "./dom", "./dom-class", "./_base/lang", "./on", "./has", "./mouse", "./domReady", "./_base/window"], +function(dojo, aspect, dom, domClass, lang, on, has, mouse, domReady, win){ + + // module: + // dojo/touch + + var ios4 = has("ios") < 5; + + // Detect if platform supports Pointer Events, and if so, the names of the events (pointerdown vs. MSPointerDown). + var hasPointer = has("pointer-events") || has("MSPointer"), + pointer = (function () { + var pointer = {}; + for (var type in { down: 1, move: 1, up: 1, cancel: 1, over: 1, out: 1 }) { + pointer[type] = has("MSPointer") ? + "MSPointer" + type.charAt(0).toUpperCase() + type.slice(1) : + "pointer" + type; + } + return pointer; + })(); + + // Detect if platform supports the webkit touchstart/touchend/... events + var hasTouch = has("touch-events"); + + // Click generation variables + var clicksInited, clickTracker, useTarget = false, clickTarget, clickX, clickY, clickDx, clickDy, clickTime; + + // Time of most recent touchstart, touchmove, or touchend event + var lastTouch; + + function dualEvent(mouseType, touchType, pointerType){ + // Returns synthetic event that listens for both the specified mouse event and specified touch event. + // But ignore fake mouse events that were generated due to the user touching the screen. + if(hasPointer && pointerType){ + // IE10+: MSPointer* events are designed to handle both mouse and touch in a uniform way, + // so just use that regardless of hasTouch. + return function(node, listener){ + return on(node, pointerType, listener); + } + }else if(hasTouch){ + return function(node, listener){ + var handle1 = on(node, touchType, function(evt){ + listener.call(this, evt); + + // On slow mobile browsers (see https://bugs.dojotoolkit.org/ticket/17634), + // a handler for a touch event may take >1s to run. That time shouldn't + // be included in the calculation for lastTouch. + lastTouch = (new Date()).getTime(); + }), + handle2 = on(node, mouseType, function(evt){ + if(!lastTouch || (new Date()).getTime() > lastTouch + 1000){ + listener.call(this, evt); + } + }); + return { + remove: function(){ + handle1.remove(); + handle2.remove(); + } + }; + }; + }else{ + // Avoid creating listeners for touch events on performance sensitive older browsers like IE6 + return function(node, listener){ + return on(node, mouseType, listener); + } + } + } + + function marked(/*DOMNode*/ node){ + // Search for node ancestor has been marked with the dojoClick property to indicate special processing. + // Returns marked ancestor. + do{ + if(node.dojoClick !== undefined){ return node; } + }while(node = node.parentNode); + } + + function doClicks(e, moveType, endType){ + // summary: + // Setup touch listeners to generate synthetic clicks immediately (rather than waiting for the browser + // to generate clicks after the double-tap delay) and consistently (regardless of whether event.preventDefault() + // was called in an event listener. Synthetic clicks are generated only if a node or one of its ancestors has + // its dojoClick property set to truthy. If a node receives synthetic clicks because one of its ancestors has its + // dojoClick property set to truthy, you can disable synthetic clicks on this node by setting its own dojoClick property + // to falsy. + + var markedNode = marked(e.target); + clickTracker = !e.target.disabled && markedNode && markedNode.dojoClick; // click threshold = true, number, x/y object, or "useTarget" + if(clickTracker){ + useTarget = (clickTracker == "useTarget"); + clickTarget = (useTarget?markedNode:e.target); + if(useTarget){ + // We expect a click, so prevent any other + // default action on "touchpress" + e.preventDefault(); + } + clickX = e.changedTouches ? e.changedTouches[0].pageX - win.global.pageXOffset : e.clientX; + clickY = e.changedTouches ? e.changedTouches[0].pageY - win.global.pageYOffset : e.clientY; + clickDx = (typeof clickTracker == "object" ? clickTracker.x : (typeof clickTracker == "number" ? clickTracker : 0)) || 4; + clickDy = (typeof clickTracker == "object" ? clickTracker.y : (typeof clickTracker == "number" ? clickTracker : 0)) || 4; + + // add move/end handlers only the first time a node with dojoClick is seen, + // so we don't add too much overhead when dojoClick is never set. + if(!clicksInited){ + clicksInited = true; + + function updateClickTracker(e){ + if(useTarget){ + clickTracker = dom.isDescendant( + win.doc.elementFromPoint( + (e.changedTouches ? e.changedTouches[0].pageX - win.global.pageXOffset : e.clientX), + (e.changedTouches ? e.changedTouches[0].pageY - win.global.pageYOffset : e.clientY)), + clickTarget); + }else{ + clickTracker = clickTracker && + (e.changedTouches ? e.changedTouches[0].target : e.target) == clickTarget && + Math.abs((e.changedTouches ? e.changedTouches[0].pageX - win.global.pageXOffset : e.clientX) - clickX) <= clickDx && + Math.abs((e.changedTouches ? e.changedTouches[0].pageY - win.global.pageYOffset : e.clientY) - clickY) <= clickDy; + } + } + + win.doc.addEventListener(moveType, function(e){ + updateClickTracker(e); + if(useTarget){ + // prevent native scroll event and ensure touchend is + // fire after touch moves between press and release. + e.preventDefault(); + } + }, true); + + win.doc.addEventListener(endType, function(e){ + updateClickTracker(e); + if(clickTracker){ + clickTime = (new Date()).getTime(); + var target = (useTarget?clickTarget:e.target); + if(target.tagName === "LABEL"){ + // when clicking on a label, forward click to its associated input if any + target = dom.byId(target.getAttribute("for")) || target; + } + //some attributes can be on the Touch object, not on the Event: + //http://www.w3.org/TR/touch-events/#touch-interface + var src = (e.changedTouches) ? e.changedTouches[0] : e; + //create the synthetic event. + //http://www.w3.org/TR/DOM-Level-3-Events/#widl-MouseEvent-initMouseEvent + var clickEvt = document.createEvent("MouseEvents"); + clickEvt._dojo_click = true; + clickEvt.initMouseEvent("click", + true, //bubbles + true, //cancelable + e.view, + e.detail, + src.screenX, + src.screenY, + src.clientX, + src.clientY, + e.ctrlKey, + e.altKey, + e.shiftKey, + e.metaKey, + 0, //button + null //related target + ); + setTimeout(function(){ + on.emit(target, "click", clickEvt); + + // refresh clickTime in case app-defined click handler took a long time to run + clickTime = (new Date()).getTime(); + }, 0); + } + }, true); + + function stopNativeEvents(type){ + win.doc.addEventListener(type, function(e){ + // Stop native events when we emitted our own click event. Note that the native click may occur + // on a different node than the synthetic click event was generated on. For example, + // click on a menu item, causing the menu to disappear, and then (~300ms later) the browser + // sends a click event to the node that was *underneath* the menu. So stop all native events + // sent shortly after ours, similar to what is done in dualEvent. + // The INPUT.dijitOffScreen test is for offscreen inputs used in dijit/form/Button, on which + // we call click() explicitly, we don't want to stop this event. + if(!e._dojo_click && + (new Date()).getTime() <= clickTime + 1000 && + !(e.target.tagName == "INPUT" && domClass.contains(e.target, "dijitOffScreen"))){ + e.stopPropagation(); + e.stopImmediatePropagation && e.stopImmediatePropagation(); + if(type == "click" && (e.target.tagName != "INPUT" || e.target.type == "radio" || e.target.type == "checkbox") + && e.target.tagName != "TEXTAREA" && e.target.tagName != "AUDIO" && e.target.tagName != "VIDEO"){ + // preventDefault() breaks textual s on android, keyboard doesn't popup, + // but it is still needed for checkboxes and radio buttons, otherwise in some cases + // the checked state becomes inconsistent with the widget's state + e.preventDefault(); + } + } + }, true); + } + + stopNativeEvents("click"); + + // We also stop mousedown/up since these would be sent well after with our "fast" click (300ms), + // which can confuse some dijit widgets. + stopNativeEvents("mousedown"); + stopNativeEvents("mouseup"); + } + } + } + + var hoveredNode; + + if(hasPointer){ + // MSPointer (IE10+) already has support for over and out, so we just need to init click support + domReady(function(){ + win.doc.addEventListener(pointer.down, function(evt){ + doClicks(evt, pointer.move, pointer.up); + }, true); + }); + }else if(hasTouch){ + domReady(function(){ + // Keep track of currently hovered node + hoveredNode = win.body(); // currently hovered node + + win.doc.addEventListener("touchstart", function(evt){ + lastTouch = (new Date()).getTime(); + + // Precede touchstart event with touch.over event. DnD depends on this. + // Use addEventListener(cb, true) to run cb before any touchstart handlers on node run, + // and to ensure this code runs even if the listener on the node does event.stop(). + var oldNode = hoveredNode; + hoveredNode = evt.target; + on.emit(oldNode, "dojotouchout", { + relatedTarget: hoveredNode, + bubbles: true + }); + on.emit(hoveredNode, "dojotouchover", { + relatedTarget: oldNode, + bubbles: true + }); + + doClicks(evt, "touchmove", "touchend"); // init click generation + }, true); + + function copyEventProps(evt){ + // Make copy of event object and also set bubbles:true. Used when calling on.emit(). + var props = lang.delegate(evt, { + bubbles: true + }); + + if(has("ios") >= 6){ + // On iOS6 "touches" became a non-enumerable property, which + // is not hit by for...in. Ditto for the other properties below. + props.touches = evt.touches; + props.altKey = evt.altKey; + props.changedTouches = evt.changedTouches; + props.ctrlKey = evt.ctrlKey; + props.metaKey = evt.metaKey; + props.shiftKey = evt.shiftKey; + props.targetTouches = evt.targetTouches; + } + + return props; + } + + on(win.doc, "touchmove", function(evt){ + lastTouch = (new Date()).getTime(); + + var newNode = win.doc.elementFromPoint( + evt.pageX - (ios4 ? 0 : win.global.pageXOffset), // iOS 4 expects page coords + evt.pageY - (ios4 ? 0 : win.global.pageYOffset) + ); + + if(newNode){ + // Fire synthetic touchover and touchout events on nodes since the browser won't do it natively. + if(hoveredNode !== newNode){ + // touch out on the old node + on.emit(hoveredNode, "dojotouchout", { + relatedTarget: newNode, + bubbles: true + }); + + // touchover on the new node + on.emit(newNode, "dojotouchover", { + relatedTarget: hoveredNode, + bubbles: true + }); + + hoveredNode = newNode; + } + + // Unlike a listener on "touchmove", on(node, "dojotouchmove", listener) fires when the finger + // drags over the specified node, regardless of which node the touch started on. + if(!on.emit(newNode, "dojotouchmove", copyEventProps(evt))){ + // emit returns false when synthetic event "dojotouchmove" is cancelled, so we prevent the + // default behavior of the underlying native event "touchmove". + evt.preventDefault(); + } + } + }); + + // Fire a dojotouchend event on the node where the finger was before it was removed from the screen. + // This is different than the native touchend, which fires on the node where the drag started. + on(win.doc, "touchend", function(evt){ + lastTouch = (new Date()).getTime(); + var node = win.doc.elementFromPoint( + evt.pageX - (ios4 ? 0 : win.global.pageXOffset), // iOS 4 expects page coords + evt.pageY - (ios4 ? 0 : win.global.pageYOffset) + ) || win.body(); // if out of the screen + + on.emit(node, "dojotouchend", copyEventProps(evt)); + }); + }); + } + + //device neutral events - touch.press|move|release|cancel/over/out + var touch = { + press: dualEvent("mousedown", "touchstart", pointer.down), + move: dualEvent("mousemove", "dojotouchmove", pointer.move), + release: dualEvent("mouseup", "dojotouchend", pointer.up), + cancel: dualEvent(mouse.leave, "touchcancel", hasPointer ? pointer.cancel : null), + over: dualEvent("mouseover", "dojotouchover", pointer.over), + out: dualEvent("mouseout", "dojotouchout", pointer.out), + enter: mouse._eventHandler(dualEvent("mouseover","dojotouchover", pointer.over)), + leave: mouse._eventHandler(dualEvent("mouseout", "dojotouchout", pointer.out)) + }; + + /*===== + touch = { + // summary: + // This module provides unified touch event handlers by exporting + // press, move, release and cancel which can also run well on desktop. + // Based on http://dvcs.w3.org/hg/webevents/raw-file/tip/touchevents.html + // Also, if the dojoClick property is set to truthy on a DOM node, dojo/touch generates + // click events immediately for this node and its descendants (except for descendants that + // have a dojoClick property set to falsy), to avoid the delay before native browser click events, + // and regardless of whether evt.preventDefault() was called in a touch.press event listener. + // + // example: + // Used with dojo/on + // | define(["dojo/on", "dojo/touch"], function(on, touch){ + // | on(node, touch.press, function(e){}); + // | on(node, touch.move, function(e){}); + // | on(node, touch.release, function(e){}); + // | on(node, touch.cancel, function(e){}); + // example: + // Used with touch.* directly + // | touch.press(node, function(e){}); + // | touch.move(node, function(e){}); + // | touch.release(node, function(e){}); + // | touch.cancel(node, function(e){}); + // example: + // Have dojo/touch generate clicks without delay, with a default move threshold of 4 pixels + // | node.dojoClick = true; + // example: + // Have dojo/touch generate clicks without delay, with a move threshold of 10 pixels horizontally and vertically + // | node.dojoClick = 10; + // example: + // Have dojo/touch generate clicks without delay, with a move threshold of 50 pixels horizontally and 10 pixels vertically + // | node.dojoClick = {x:50, y:5}; + // example: + // Disable clicks without delay generated by dojo/touch on a node that has an ancestor with property dojoClick set to truthy + // | node.dojoClick = false; + + press: function(node, listener){ + // summary: + // Register a listener to 'touchstart'|'mousedown' for the given node + // node: Dom + // Target node to listen to + // listener: Function + // Callback function + // returns: + // A handle which will be used to remove the listener by handle.remove() + }, + move: function(node, listener){ + // summary: + // Register a listener that fires when the mouse cursor or a finger is dragged over the given node. + // node: Dom + // Target node to listen to + // listener: Function + // Callback function + // returns: + // A handle which will be used to remove the listener by handle.remove() + }, + release: function(node, listener){ + // summary: + // Register a listener to releasing the mouse button while the cursor is over the given node + // (i.e. "mouseup") or for removing the finger from the screen while touching the given node. + // node: Dom + // Target node to listen to + // listener: Function + // Callback function + // returns: + // A handle which will be used to remove the listener by handle.remove() + }, + cancel: function(node, listener){ + // summary: + // Register a listener to 'touchcancel'|'mouseleave' for the given node + // node: Dom + // Target node to listen to + // listener: Function + // Callback function + // returns: + // A handle which will be used to remove the listener by handle.remove() + }, + over: function(node, listener){ + // summary: + // Register a listener to 'mouseover' or touch equivalent for the given node + // node: Dom + // Target node to listen to + // listener: Function + // Callback function + // returns: + // A handle which will be used to remove the listener by handle.remove() + }, + out: function(node, listener){ + // summary: + // Register a listener to 'mouseout' or touch equivalent for the given node + // node: Dom + // Target node to listen to + // listener: Function + // Callback function + // returns: + // A handle which will be used to remove the listener by handle.remove() + }, + enter: function(node, listener){ + // summary: + // Register a listener to mouse.enter or touch equivalent for the given node + // node: Dom + // Target node to listen to + // listener: Function + // Callback function + // returns: + // A handle which will be used to remove the listener by handle.remove() + }, + leave: function(node, listener){ + // summary: + // Register a listener to mouse.leave or touch equivalent for the given node + // node: Dom + // Target node to listen to + // listener: Function + // Callback function + // returns: + // A handle which will be used to remove the listener by handle.remove() + } + }; + =====*/ + + 1 && (dojo.touch = touch); + + return touch; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/uacss.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/uacss.js new file mode 100644 index 00000000..0e637fc0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/uacss.js @@ -0,0 +1,33 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/uacss",["./dom-geometry","./_base/lang","./domReady","./sniff","./_base/window"],function(_1,_2,_3,_4,_5){ +var _6=_5.doc.documentElement,ie=_4("ie"),_7=_4("opera"),_8=Math.floor,ff=_4("ff"),_9=_1.boxModel.replace(/-/,""),_a={"dj_quirks":_4("quirks"),"dj_opera":_7,"dj_khtml":_4("khtml"),"dj_webkit":_4("webkit"),"dj_safari":_4("safari"),"dj_chrome":_4("chrome"),"dj_gecko":_4("mozilla"),"dj_ios":_4("ios"),"dj_android":_4("android")}; +if(ie){ +_a["dj_ie"]=true; +_a["dj_ie"+_8(ie)]=true; +_a["dj_iequirks"]=_4("quirks"); +} +if(ff){ +_a["dj_ff"+_8(ff)]=true; +} +_a["dj_"+_9]=true; +var _b=""; +for(var _c in _a){ +if(_a[_c]){ +_b+=_c+" "; +} +} +_6.className=_2.trim(_6.className+" "+_b); +_3(function(){ +if(!_1.isBodyLtr()){ +var _d="dj_rtl dijitRtl "+_b.replace(/ /g,"-rtl "); +_6.className=_2.trim(_6.className+" "+_d+"dj_rtl dijitRtl "+_b.replace(/ /g,"-rtl ")); +} +}); +return _4; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/uacss.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/uacss.js.uncompressed.js new file mode 100644 index 00000000..475f9b52 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/uacss.js.uncompressed.js @@ -0,0 +1,79 @@ +define("dojo/uacss", ["./dom-geometry", "./_base/lang", "./domReady", "./sniff", "./_base/window"], + function(geometry, lang, domReady, has, baseWindow){ + + // module: + // dojo/uacss + + /*===== + return { + // summary: + // Applies pre-set CSS classes to the top-level HTML node, based on: + // + // - browser (ex: dj_ie) + // - browser version (ex: dj_ie6) + // - box model (ex: dj_contentBox) + // - text direction (ex: dijitRtl) + // + // In addition, browser, browser version, and box model are + // combined with an RTL flag when browser text is RTL. ex: dj_ie-rtl. + // + // Returns the has() method. + }; + =====*/ + + var + html = baseWindow.doc.documentElement, + ie = has("ie"), + opera = has("opera"), + maj = Math.floor, + ff = has("ff"), + boxModel = geometry.boxModel.replace(/-/,''), + + classes = { + "dj_quirks": has("quirks"), + + // NOTE: Opera not supported by dijit + "dj_opera": opera, + + "dj_khtml": has("khtml"), + + "dj_webkit": has("webkit"), + "dj_safari": has("safari"), + "dj_chrome": has("chrome"), + + "dj_gecko": has("mozilla"), + + "dj_ios": has("ios"), + "dj_android": has("android") + }; // no dojo unsupported browsers + + if(ie){ + classes["dj_ie"] = true; + classes["dj_ie" + maj(ie)] = true; + classes["dj_iequirks"] = has("quirks"); + } + if(ff){ + classes["dj_ff" + maj(ff)] = true; + } + + classes["dj_" + boxModel] = true; + + // apply browser, browser version, and box model class names + var classStr = ""; + for(var clz in classes){ + if(classes[clz]){ + classStr += clz + " "; + } + } + html.className = lang.trim(html.className + " " + classStr); + + // If RTL mode, then add dj_rtl flag plus repeat existing classes with -rtl extension. + // We can't run the code below until the tag has loaded (so we can check for dir=rtl). + domReady(function(){ + if(!geometry.isBodyLtr()){ + var rtlClassStr = "dj_rtl dijitRtl " + classStr.replace(/ /g, "-rtl "); + html.className = lang.trim(html.className + " " + rtlClassStr + "dj_rtl dijitRtl " + classStr.replace(/ /g, "-rtl ")); + } + }); + return has; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/when.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/when.js new file mode 100644 index 00000000..5e5b2db0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/when.js @@ -0,0 +1,31 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/when",["./Deferred","./promise/Promise"],function(_1,_2){ +"use strict"; +return function when(_3,_4,_5,_6){ +var _7=_3&&typeof _3.then==="function"; +var _8=_7&&_3 instanceof _2; +if(!_7){ +if(arguments.length>1){ +return _4?_4(_3):_3; +}else{ +return new _1().resolve(_3); +} +}else{ +if(!_8){ +var _9=new _1(_3.cancel); +_3.then(_9.resolve,_9.reject,_9.progress); +_3=_9.promise; +} +} +if(_4||_5||_6){ +return _3.then(_4,_5,_6); +} +return _3; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/when.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/when.js.uncompressed.js new file mode 100644 index 00000000..6f0ee274 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/when.js.uncompressed.js @@ -0,0 +1,55 @@ +define("dojo/when", [ + "./Deferred", + "./promise/Promise" +], function(Deferred, Promise){ + "use strict"; + + // module: + // dojo/when + + return function when(valueOrPromise, callback, errback, progback){ + // summary: + // Transparently applies callbacks to values and/or promises. + // description: + // Accepts promises but also transparently handles non-promises. If no + // callbacks are provided returns a promise, regardless of the initial + // value. Foreign promises are converted. + // + // If callbacks are provided and the initial value is not a promise, + // the callback is executed immediately with no error handling. Returns + // a promise if the initial value is a promise, or the result of the + // callback otherwise. + // valueOrPromise: + // Either a regular value or an object with a `then()` method that + // follows the Promises/A specification. + // callback: Function? + // Callback to be invoked when the promise is resolved, or a non-promise + // is received. + // errback: Function? + // Callback to be invoked when the promise is rejected. + // progback: Function? + // Callback to be invoked when the promise emits a progress update. + // returns: dojo/promise/Promise + // Promise, or if a callback is provided, the result of the callback. + + var receivedPromise = valueOrPromise && typeof valueOrPromise.then === "function"; + var nativePromise = receivedPromise && valueOrPromise instanceof Promise; + + if(!receivedPromise){ + if(arguments.length > 1){ + return callback ? callback(valueOrPromise) : valueOrPromise; + }else{ + return new Deferred().resolve(valueOrPromise); + } + }else if(!nativePromise){ + var deferred = new Deferred(valueOrPromise.cancel); + valueOrPromise.then(deferred.resolve, deferred.reject, deferred.progress); + valueOrPromise = deferred.promise; + } + + if(callback || errback || progback){ + return valueOrPromise.then(callback, errback, progback); + } + return valueOrPromise; + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/window.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/window.js new file mode 100644 index 00000000..efad440d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/window.js @@ -0,0 +1,146 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +//>>built +define("dojo/window",["./_base/lang","./sniff","./_base/window","./dom","./dom-geometry","./dom-style","./dom-construct"],function(_1,_2,_3,_4,_5,_6,_7){ +_2.add("rtl-adjust-position-for-verticalScrollBar",function(_8,_9){ +var _a=_3.body(_9),_b=_7.create("div",{style:{overflow:"scroll",overflowX:"visible",direction:"rtl",visibility:"hidden",position:"absolute",left:"0",top:"0",width:"64px",height:"64px"}},_a,"last"),_c=_7.create("div",{style:{overflow:"hidden",direction:"ltr"}},_b,"last"),_d=_5.position(_c).x!=0; +_b.removeChild(_c); +_a.removeChild(_b); +return _d; +}); +_2.add("position-fixed-support",function(_e,_f){ +var _10=_3.body(_f),_11=_7.create("span",{style:{visibility:"hidden",position:"fixed",left:"1px",top:"1px"}},_10,"last"),_12=_7.create("span",{style:{position:"fixed",left:"0",top:"0"}},_11,"last"),ret=_5.position(_12).x!=_5.position(_11).x; +_11.removeChild(_12); +_10.removeChild(_11); +return ret; +}); +var _13={getBox:function(doc){ +doc=doc||_3.doc; +var _14=(doc.compatMode=="BackCompat")?_3.body(doc):doc.documentElement,_15=_5.docScroll(doc),w,h; +if(_2("touch")){ +var _16=_13.get(doc); +w=_16.innerWidth||_14.clientWidth; +h=_16.innerHeight||_14.clientHeight; +}else{ +w=_14.clientWidth; +h=_14.clientHeight; +} +return {l:_15.x,t:_15.y,w:w,h:h}; +},get:function(doc){ +if(_2("ie")&&_13!==document.parentWindow){ +doc.parentWindow.execScript("document._parentWindow = window;","Javascript"); +var win=doc._parentWindow; +doc._parentWindow=null; +return win; +} +return doc.parentWindow||doc.defaultView; +},scrollIntoView:function(_17,pos){ +try{ +_17=_4.byId(_17); +var doc=_17.ownerDocument||_3.doc,_18=_3.body(doc),_19=doc.documentElement||_18.parentNode,_1a=_2("ie"),_1b=_2("webkit"); +if(_17==_18||_17==_19){ +return; +} +if(!(_2("mozilla")||_1a||_1b||_2("opera")||_2("trident"))&&("scrollIntoView" in _17)){ +_17.scrollIntoView(false); +return; +} +var _1c=doc.compatMode=="BackCompat",_1d=Math.min(_18.clientWidth||_19.clientWidth,_19.clientWidth||_18.clientWidth),_1e=Math.min(_18.clientHeight||_19.clientHeight,_19.clientHeight||_18.clientHeight),_1f=(_1b||_1c)?_18:_19,_20=pos||_5.position(_17),el=_17.parentNode,_21=function(el){ +return (_1a<=6||(_1a==7&&_1c))?false:(_2("position-fixed-support")&&(_6.get(el,"position").toLowerCase()=="fixed")); +},_22=this,_23=function(el,x,y){ +if(el.tagName=="BODY"||el.tagName=="HTML"){ +_22.get(el.ownerDocument).scrollBy(x,y); +}else{ +x&&(el.scrollLeft+=x); +y&&(el.scrollTop+=y); +} +}; +if(_21(_17)){ +return; +} +while(el){ +if(el==_18){ +el=_1f; +} +var _24=_5.position(el),_25=_21(el),rtl=_6.getComputedStyle(el).direction.toLowerCase()=="rtl"; +if(el==_1f){ +_24.w=_1d; +_24.h=_1e; +if(_1f==_19&&(_1a||_2("trident"))&&rtl){ +_24.x+=_1f.offsetWidth-_24.w; +} +if(_24.x<0||!_1a||_1a>=9||_2("trident")){ +_24.x=0; +} +if(_24.y<0||!_1a||_1a>=9||_2("trident")){ +_24.y=0; +} +}else{ +var pb=_5.getPadBorderExtents(el); +_24.w-=pb.w; +_24.h-=pb.h; +_24.x+=pb.l; +_24.y+=pb.t; +var _26=el.clientWidth,_27=_24.w-_26; +if(_26>0&&_27>0){ +if(rtl&&_2("rtl-adjust-position-for-verticalScrollBar")){ +_24.x+=_27; +} +_24.w=_26; +} +_26=el.clientHeight; +_27=_24.h-_26; +if(_26>0&&_27>0){ +_24.h=_26; +} +} +if(_25){ +if(_24.y<0){ +_24.h+=_24.y; +_24.y=0; +} +if(_24.x<0){ +_24.w+=_24.x; +_24.x=0; +} +if(_24.y+_24.h>_1e){ +_24.h=_1e-_24.y; +} +if(_24.x+_24.w>_1d){ +_24.w=_1d-_24.x; +} +} +var l=_20.x-_24.x,t=_20.y-_24.y,r=l+_20.w-_24.w,bot=t+_20.h-_24.h; +var s,old; +if(r*l>0&&(!!el.scrollLeft||el==_1f||el.scrollWidth>el.offsetHeight)){ +s=Math[l<0?"max":"min"](l,r); +if(rtl&&((_1a==8&&!_1c)||_1a>=9||_2("trident"))){ +s=-s; +} +old=el.scrollLeft; +_23(el,s,0); +s=el.scrollLeft-old; +_20.x-=s; +} +if(bot*t>0&&(!!el.scrollTop||el==_1f||el.scrollHeight>el.offsetHeight)){ +s=Math.ceil(Math[t<0?"max":"min"](t,bot)); +old=el.scrollTop; +_23(el,0,s); +s=el.scrollTop-old; +_20.y-=s; +} +el=(el!=_1f)&&!_25&&el.parentNode; +} +} +catch(error){ +console.error("scrollIntoView: "+error); +_17.scrollIntoView(false); +} +}}; +1&&_1.setObject("dojo.window",_13); +return _13; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/window.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/window.js.uncompressed.js new file mode 100644 index 00000000..47cec4ec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojo/window.js.uncompressed.js @@ -0,0 +1,238 @@ +define("dojo/window", ["./_base/lang", "./sniff", "./_base/window", "./dom", "./dom-geometry", "./dom-style", "./dom-construct"], + function(lang, has, baseWindow, dom, geom, style, domConstruct){ + + // feature detection + /* not needed but included here for future reference + has.add("rtl-innerVerticalScrollBar-on-left", function(win, doc){ + var body = baseWindow.body(doc), + scrollable = domConstruct.create('div', { + style: {overflow:'scroll', overflowX:'hidden', direction:'rtl', visibility:'hidden', position:'absolute', left:'0', width:'64px', height:'64px'} + }, body, "last"), + center = domConstruct.create('center', { + style: {overflow:'hidden', direction:'ltr'} + }, scrollable, "last"), + inner = domConstruct.create('div', { + style: {overflow:'visible', display:'inline' } + }, center, "last"); + inner.innerHTML=" "; + var midPoint = Math.max(inner.offsetLeft, geom.position(inner).x); + var ret = midPoint >= 32; + center.removeChild(inner); + scrollable.removeChild(center); + body.removeChild(scrollable); + return ret; + }); + */ + has.add("rtl-adjust-position-for-verticalScrollBar", function(win, doc){ + var body = baseWindow.body(doc), + scrollable = domConstruct.create('div', { + style: {overflow:'scroll', overflowX:'visible', direction:'rtl', visibility:'hidden', position:'absolute', left:'0', top:'0', width:'64px', height:'64px'} + }, body, "last"), + div = domConstruct.create('div', { + style: {overflow:'hidden', direction:'ltr'} + }, scrollable, "last"), + ret = geom.position(div).x != 0; + scrollable.removeChild(div); + body.removeChild(scrollable); + return ret; + }); + + has.add("position-fixed-support", function(win, doc){ + // IE6, IE7+quirks, and some older mobile browsers don't support position:fixed + var body = baseWindow.body(doc), + outer = domConstruct.create('span', { + style: {visibility:'hidden', position:'fixed', left:'1px', top:'1px'} + }, body, "last"), + inner = domConstruct.create('span', { + style: {position:'fixed', left:'0', top:'0'} + }, outer, "last"), + ret = geom.position(inner).x != geom.position(outer).x; + outer.removeChild(inner); + body.removeChild(outer); + return ret; + }); + + // module: + // dojo/window + + var window = { + // summary: + // TODOC + + getBox: function(/*Document?*/ doc){ + // summary: + // Returns the dimensions and scroll position of the viewable area of a browser window + + doc = doc || baseWindow.doc; + + var + scrollRoot = (doc.compatMode == 'BackCompat') ? baseWindow.body(doc) : doc.documentElement, + // get scroll position + scroll = geom.docScroll(doc), // scrollRoot.scrollTop/Left should work + w, h; + + if(has("touch")){ // if(scrollbars not supported) + var uiWindow = window.get(doc); // use UI window, not dojo.global window + // on mobile, scrollRoot.clientHeight <= uiWindow.innerHeight <= scrollRoot.offsetHeight, return uiWindow.innerHeight + w = uiWindow.innerWidth || scrollRoot.clientWidth; // || scrollRoot.clientXXX probably never evaluated + h = uiWindow.innerHeight || scrollRoot.clientHeight; + }else{ + // on desktops, scrollRoot.clientHeight <= scrollRoot.offsetHeight <= uiWindow.innerHeight, return scrollRoot.clientHeight + // uiWindow.innerWidth/Height includes the scrollbar and cannot be used + w = scrollRoot.clientWidth; + h = scrollRoot.clientHeight; + } + return { + l: scroll.x, + t: scroll.y, + w: w, + h: h + }; + }, + + get: function(/*Document*/ doc){ + // summary: + // Get window object associated with document doc. + // doc: + // The document to get the associated window for. + + // In some IE versions (at least 6.0), document.parentWindow does not return a + // reference to the real window object (maybe a copy), so we must fix it as well + // We use IE specific execScript to attach the real window reference to + // document._parentWindow for later use + if(has("ie") && window !== document.parentWindow){ + /* + In IE 6, only the variable "window" can be used to connect events (others + may be only copies). + */ + doc.parentWindow.execScript("document._parentWindow = window;", "Javascript"); + //to prevent memory leak, unset it after use + //another possibility is to add an onUnload handler which seems overkill to me (liucougar) + var win = doc._parentWindow; + doc._parentWindow = null; + return win; // Window + } + + return doc.parentWindow || doc.defaultView; // Window + }, + + scrollIntoView: function(/*DomNode*/ node, /*Object?*/ pos){ + // summary: + // Scroll the passed node into view using minimal movement, if it is not already. + + // Don't rely on node.scrollIntoView working just because the function is there since + // it forces the node to the page's bottom or top (and left or right in IE) without consideration for the minimal movement. + // WebKit's node.scrollIntoViewIfNeeded doesn't work either for inner scrollbars in right-to-left mode + // and when there's a fixed position scrollable element + + try{ // catch unexpected/unrecreatable errors (#7808) since we can recover using a semi-acceptable native method + node = dom.byId(node); + var doc = node.ownerDocument || baseWindow.doc, // TODO: why baseWindow.doc? Isn't node.ownerDocument always defined? + body = baseWindow.body(doc), + html = doc.documentElement || body.parentNode, + isIE = has("ie"), + isWK = has("webkit"); + // if an untested browser, then use the native method + if(node == body || node == html){ return; } + if(!(has("mozilla") || isIE || isWK || has("opera") || has("trident")) && ("scrollIntoView" in node)){ + node.scrollIntoView(false); // short-circuit to native if possible + return; + } + var backCompat = doc.compatMode == 'BackCompat', + rootWidth = Math.min(body.clientWidth || html.clientWidth, html.clientWidth || body.clientWidth), + rootHeight = Math.min(body.clientHeight || html.clientHeight, html.clientHeight || body.clientHeight), + scrollRoot = (isWK || backCompat) ? body : html, + nodePos = pos || geom.position(node), + el = node.parentNode, + isFixed = function(el){ + return (isIE <= 6 || (isIE == 7 && backCompat)) + ? false + : (has("position-fixed-support") && (style.get(el, 'position').toLowerCase() == "fixed")); + }, + self = this, + scrollElementBy = function(el, x, y){ + if(el.tagName == "BODY" || el.tagName == "HTML"){ + self.get(el.ownerDocument).scrollBy(x, y); + }else{ + x && (el.scrollLeft += x); + y && (el.scrollTop += y); + } + }; + if(isFixed(node)){ return; } // nothing to do + while(el){ + if(el == body){ el = scrollRoot; } + var elPos = geom.position(el), + fixedPos = isFixed(el), + rtl = style.getComputedStyle(el).direction.toLowerCase() == "rtl"; + + if(el == scrollRoot){ + elPos.w = rootWidth; elPos.h = rootHeight; + if(scrollRoot == html && (isIE || has("trident")) && rtl){ elPos.x += scrollRoot.offsetWidth-elPos.w; } // IE workaround where scrollbar causes negative x + if(elPos.x < 0 || !isIE || isIE >= 9 || has("trident")){ elPos.x = 0; } // older IE can have values > 0 + if(elPos.y < 0 || !isIE || isIE >= 9 || has("trident")){ elPos.y = 0; } + }else{ + var pb = geom.getPadBorderExtents(el); + elPos.w -= pb.w; elPos.h -= pb.h; elPos.x += pb.l; elPos.y += pb.t; + var clientSize = el.clientWidth, + scrollBarSize = elPos.w - clientSize; + if(clientSize > 0 && scrollBarSize > 0){ + if(rtl && has("rtl-adjust-position-for-verticalScrollBar")){ + elPos.x += scrollBarSize; + } + elPos.w = clientSize; + } + clientSize = el.clientHeight; + scrollBarSize = elPos.h - clientSize; + if(clientSize > 0 && scrollBarSize > 0){ + elPos.h = clientSize; + } + } + if(fixedPos){ // bounded by viewport, not parents + if(elPos.y < 0){ + elPos.h += elPos.y; elPos.y = 0; + } + if(elPos.x < 0){ + elPos.w += elPos.x; elPos.x = 0; + } + if(elPos.y + elPos.h > rootHeight){ + elPos.h = rootHeight - elPos.y; + } + if(elPos.x + elPos.w > rootWidth){ + elPos.w = rootWidth - elPos.x; + } + } + // calculate overflow in all 4 directions + var l = nodePos.x - elPos.x, // beyond left: < 0 +// t = nodePos.y - Math.max(elPos.y, 0), // beyond top: < 0 + t = nodePos.y - elPos.y, // beyond top: < 0 + r = l + nodePos.w - elPos.w, // beyond right: > 0 + bot = t + nodePos.h - elPos.h; // beyond bottom: > 0 + var s, old; + if(r * l > 0 && (!!el.scrollLeft || el == scrollRoot || el.scrollWidth > el.offsetHeight)){ + s = Math[l < 0? "max" : "min"](l, r); + if(rtl && ((isIE == 8 && !backCompat) || isIE >= 9 || has("trident"))){ s = -s; } + old = el.scrollLeft; + scrollElementBy(el, s, 0); + s = el.scrollLeft - old; + nodePos.x -= s; + } + if(bot * t > 0 && (!!el.scrollTop || el == scrollRoot || el.scrollHeight > el.offsetHeight)){ + s = Math.ceil(Math[t < 0? "max" : "min"](t, bot)); + old = el.scrollTop; + scrollElementBy(el, 0, s); + s = el.scrollTop - old; + nodePos.y -= s; + } + el = (el != scrollRoot) && !fixedPos && el.parentNode; + } + }catch(error){ + console.error('scrollIntoView: ' + error); + node.scrollIntoView(false); + } + } + }; + + 1 && lang.setObject("dojo.window", window); + + return window; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/CONTRIBUTING.md b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/CONTRIBUTING.md new file mode 100644 index 00000000..79142257 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/CONTRIBUTING.md @@ -0,0 +1,227 @@ +_Do you have a contribution? We welcome contributions, but please ensure that you read the following information +before issuing a pull request. Also refer back to this document as a checklist before issuing your pull request. +This will save time for everyone._ + +# Before You Start + +## Understanding the Basics + +If you don't understand what a *pull request* is, or how to submit one, please refer to the [help documentation][] +provided by GitHub. + +## Is It Really a Support Issue + +If you aren't sure if your contribution is needed or necessary, please visit the [support forum][] before attempting to +submit a pull request or a ticket. + +## Search Dojo Toolkit's Bug Database + +We require every commit to be tracked via our [bug database][]. It is useful, before you get too far, that you have +checked that your issue isn't already known, otherwise addressed? If you think it is a valid defect or enhancement, +please open a new ticket before submitting your pull request. + +## Discuss Non-Trivial Contributions with the Committers + +If your desired contribution is more than a non-trivial fix, you should discuss it on the +[contributor's mailing list][dojo-contrib]. If you currently are not a member, you can request to be added. + +## Contributor License Agreement + +We require all contributions, to be covered under the Dojo Foundation's [Contributor License Agreement][cla]. This can +be done electronically and essentially ensures that you are making it clear that your contributions are your +contributions, you have the legal right to contribute and you are transferring the copyright of your works to the Dojo +Foundation. + +If you are an unfamiliar contributor to the committer assessing your pull request, it is best to make it clear how +you are covered by a CLA in the notes of the pull request. The committer will [verify][claCheck] your status. + +If your GitHub user id you are submitting your pull request from differs from the Dojo Community ID or e-mail address +which you have signed your CLA under, you should specifically note what you have your CLA filed under (and for CCLA +that you are listed under your companies authorised contributors). + +# Submitting a Pull Request + +The following are the general steps you should follow in creating a pull request. Subsequent pull requests only need +to follow step 3 and beyond: + +1. Fork the repository on GitHub +2. Clone the forked repository to your machine +3. Create a "feature" branch in your local repository +4. Make your changes and commit them to your local repository +5. Rebase and push your commits to your GitHub remote fork/repository +6. Issue a Pull Request to the official repository +7. Your Pull Request is reviewed by a committer and merged into the repository + +*Note* While there are other ways to accomplish the steps using other tools, the examples here will assume the most +actions will be performed via the `git` command line. + +## 1. Fork the Repository + +When logged into your GitHub account, and you are viewing one of the main repositories, you will see the *Fork* button. +Clicking this button will show you which repositories your can fork to. Choose your own account. Once the process +finishes, you will have your own repository that is "forked" from the GitHub one. + +Forking is a GitHub term and not a git term. Git is a wholly distributed source control system and simply worries +about local and remote repositories and allows you to manage your code against them. GitHub then adds this additional +layer of structure of how repositories can relate to each other. + +## 2. Clone the Forked Repository + +Once you have successfully forked your repository, you will need to clone it locally to your machine: + +```bash +$ git clone --recursive git@github.com:username/dojox.git +``` + +This will clone your fork to your current path in a directory named `dojox`. + +It is important that you clone recursively for ``dojox``, ``demos`` or ``util`` because some of the code is contained in +submodules. You won't be able to submit your changes to the repositories that way though. If you are working on any of +these sub-projects, you should contact those project leads to see if their workflow differs. + +You should also setup the `upstream` repository. This will allow you to take changes from the "master" repository +and merge them into your local clone and then push them to your GitHub fork: + +```bash +$ cd dojo +$ git remote add upstream git@github.com:dojo/dojox.git +$ git fetch upstream +``` + +Then you can retrieve upstream changes and rebase on them into your code like this: + +```bash +$ git pull --rebase upstream master +``` + +For more information on maintaining a fork, please see the GitHub Help article [Fork a Repo][] and information on +[rebasing][] from git. + +## 3. Create a Branch + +The easiest workflow is to keep your master branch in sync with the upstream branch and do not locate any of your own +commits in that branch. When you want to work on a new feature, you then ensure you are on the master branch and create +a new branch from there. While the name of the branch can be anything, it can often be easy to use the ticket number +you might be working on. For example: + +```bash +$ git checkout -b t12345 master +Switched to a new branch 't12345' +``` + +You will then be on the feature branch. You can verify what branch you are on like this: + +```bash +$ git status +# On branch t12345 +nothing to commit, working directory clean +``` + +## 4. Make Changes and Commit + +Now you just need to make your changes. Once you have finished your changes (and tested them) you need to commit them +to your local repository (assuming you have staged your changes for committing): + +```bash +$ git status +# On branch t12345 +# Changes to be committed: +# (use "git reset HEAD ..." to unstage) +# +# modified: somefile.js +# +$ git commit -m "Corrects some defect, fixes #12345, refs #12346" +[t12345 0000000] Corrects some defect, fixes #12345, refs #12346 + 1 file changed, 2 insertions(+), 2 deletions(-) +``` + +## 5. Rebase and Push Changes + +If you have been working on your contribution for a while, the upstream repository may have changed. You may want to +ensure your work is on top of the latest changes so your pull request can be applied cleanly: + +```bash +$ git pull --rebase upstream master +``` + +When you are ready to push your commit to your GitHub repository for the first time on this branch you would do the +following: + +```bash +$ git push -u origin t12345 +``` + +After the first time, you simply need to do: + +```bash +$ git push +``` + +## 6. Issue a Pull Request + +In order to have your commits merged into the main repository, you need to create a pull request. The instructions for +this can be found in the GitHub Help Article [Creating a Pull Request][]. Essentially you do the following: + +1. Go to the site for your repository. +2. Click the Pull Request button. +3. Select the feature branch from your repository. +4. Enter a title and description of your pull request mentioning the corresponding [bug database][] ticket in the description. +5. Review the commit and files changed tabs. +6. Click `Send Pull Request` + +You will get notified about the status of your pull request based on your GitHub settings. + +## 7. Request is Reviewed and Merged + +Your request will be reviewed. It may be merged directly, or you may receive feedback or questions on your pull +request. + +# What Makes a Successful Pull Request? + +Having your contribution accepted is more than just the mechanics of getting your contribution into a pull request, +there are several other things that are expected when contributing to the Dojo Toolkit which are covered below. + +## Coding Style and Linting + +Dojo has a very specific [coding style][styleguide]. All pull requests should adhere to this. + +## Inline Documentation + +Dojo has an inline API documentation called [DojoDoc][]. Any pull request should ensure it has updated the inline +documentation appropriately or added the appropriate inline documentation. + +## Test Cases + +If the pull request changes the functional behaviour or is fixing a defect, the unit test cases should be modified to +reflect this. The committer reviewing your pull request is likely to request the appropriate changes in the test +cases. Dojo utilises its own test harness called [D.O.H.][] and is available as part of the [dojo/util][] repository. + +It is expected that you will have tested your changes against the existing test cases and appropriate platforms prior to +submitting your pull request. + +## Licensing + +All of your submissions are licensed under a dual "New" BSD/AFL license. + +## Expect Discussion and Rework + +Unless you have been working with contributing to Dojo for a while, expect a a significant amount of feedback on your +pull requests. We are a very passionate community and even the committers often will provide robust feedback to each +other about their code. Don't be offended by such feedback or feel that your contributions aren't welcome, it is just +that we are quite passionate and Dojo has a long history with many things that are the "Dojo-way" which may be +unfamiliar to those who are just starting to contribute. + +[help documentation]: http://help.github.com/send-pull-requests +[bug database]: http://bugs.dojotoolkit.org/ +[support forum]: http://dojotoolkit.org/community/ +[dojo-contrib]: http://mail.dojotoolkit.org/mailman/listinfo/dojo-contributors +[cla]: http://dojofoundation.org/about/cla +[claCheck]: http://dojofoundation.org/about/claCheck +[Creating a Pull Request]: https://help.github.com/articles/creating-a-pull-request +[Fork a Repo]: https://help.github.com/articles/fork-a-repo +[styleguide]: http://dojotoolkit.org/reference-guide/developer/styleguide.html +[DojoDoc]: http://dojotoolkit.org/reference-guide/developer/markup.html +[D.O.H.]: http://dojotoolkit.org/reference-guide/util/doh.html +[dojo/util]: https://github.com/dojo/util +[interactive rebase]: http://git-scm.com/book/en/Git-Tools-Rewriting-History#Changing-Multiple-Commit-Messages +[rebasing]: http://git-scm.com/book/en/Git-Branching-Rebasing diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/LICENSE b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/LICENSE new file mode 100644 index 00000000..2640cee7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/LICENSE @@ -0,0 +1,195 @@ +Dojo is available under *either* the terms of the modified BSD license *or* the +Academic Free License version 2.1. As a recipient of Dojo, you may choose which +license to receive this code under (except as noted in per-module LICENSE +files). Some modules may not be the copyright of the Dojo Foundation. These +modules contain explicit declarations of copyright in both the LICENSE files in +the directories in which they reside and in the code itself. No external +contributions are allowed under licenses which are fundamentally incompatible +with the AFL or BSD licenses that Dojo is distributed under. + +The text of the AFL and BSD licenses is reproduced below. + +------------------------------------------------------------------------------- +The "New" BSD License: +********************** + +Copyright (c) 2005-2014, The Dojo Foundation +All rights reserved. + +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. + * Neither the name of the Dojo Foundation nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 THE COPYRIGHT OWNER OR 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. + +------------------------------------------------------------------------------- +The Academic Free License, v. 2.1: +********************************** + +This Academic Free License (the "License") applies to any original work of +authorship (the "Original Work") whose owner (the "Licensor") has placed the +following notice immediately following the copyright notice for the Original +Work: + +Licensed under the Academic Free License version 2.1 + +1) Grant of Copyright License. Licensor hereby grants You a world-wide, +royalty-free, non-exclusive, perpetual, sublicenseable license to do the +following: + +a) to reproduce the Original Work in copies; + +b) to prepare derivative works ("Derivative Works") based upon the Original +Work; + +c) to distribute copies of the Original Work and Derivative Works to the +public; + +d) to perform the Original Work publicly; and + +e) to display the Original Work publicly. + +2) Grant of Patent License. Licensor hereby grants You a world-wide, +royalty-free, non-exclusive, perpetual, sublicenseable license, under patent +claims owned or controlled by the Licensor that are embodied in the Original +Work as furnished by the Licensor, to make, use, sell and offer for sale the +Original Work and Derivative Works. + +3) Grant of Source Code License. The term "Source Code" means the preferred +form of the Original Work for making modifications to it and all available +documentation describing how to modify the Original Work. Licensor hereby +agrees to provide a machine-readable copy of the Source Code of the Original +Work along with each copy of the Original Work that Licensor distributes. +Licensor reserves the right to satisfy this obligation by placing a +machine-readable copy of the Source Code in an information repository +reasonably calculated to permit inexpensive and convenient access by You for as +long as Licensor continues to distribute the Original Work, and by publishing +the address of that information repository in a notice immediately following +the copyright notice that applies to the Original Work. + +4) Exclusions From License Grant. Neither the names of Licensor, nor the names +of any contributors to the Original Work, nor any of their trademarks or +service marks, may be used to endorse or promote products derived from this +Original Work without express prior written permission of the Licensor. Nothing +in this License shall be deemed to grant any rights to trademarks, copyrights, +patents, trade secrets or any other intellectual property of Licensor except as +expressly stated herein. No patent license is granted to make, use, sell or +offer to sell embodiments of any patent claims other than the licensed claims +defined in Section 2. No right is granted to the trademarks of Licensor even if +such marks are included in the Original Work. Nothing in this License shall be +interpreted to prohibit Licensor from licensing under different terms from this +License any Original Work that Licensor otherwise would have a right to +license. + +5) This section intentionally omitted. + +6) Attribution Rights. You must retain, in the Source Code of any Derivative +Works that You create, all copyright, patent or trademark notices from the +Source Code of the Original Work, as well as any notices of licensing and any +descriptive text identified therein as an "Attribution Notice." You must cause +the Source Code for any Derivative Works that You create to carry a prominent +Attribution Notice reasonably calculated to inform recipients that You have +modified the Original Work. + +7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that +the copyright in and to the Original Work and the patent rights granted herein +by Licensor are owned by the Licensor or are sublicensed to You under the terms +of this License with the permission of the contributor(s) of those copyrights +and patent rights. Except as expressly stated in the immediately proceeding +sentence, the Original Work is provided under this License on an "AS IS" BASIS +and WITHOUT WARRANTY, either express or implied, including, without limitation, +the warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. +This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No +license to Original Work is granted hereunder except under this disclaimer. + +8) Limitation of Liability. Under no circumstances and under no legal theory, +whether in tort (including negligence), contract, or otherwise, shall the +Licensor be liable to any person for any direct, indirect, special, incidental, +or consequential damages of any character arising as a result of this License +or the use of the Original Work including, without limitation, damages for loss +of goodwill, work stoppage, computer failure or malfunction, or any and all +other commercial damages or losses. This limitation of liability shall not +apply to liability for death or personal injury resulting from Licensor's +negligence to the extent applicable law prohibits such limitation. Some +jurisdictions do not allow the exclusion or limitation of incidental or +consequential damages, so this exclusion and limitation may not apply to You. + +9) Acceptance and Termination. If You distribute copies of the Original Work or +a Derivative Work, You must make a reasonable effort under the circumstances to +obtain the express assent of recipients to the terms of this License. Nothing +else but this License (or another written agreement between Licensor and You) +grants You permission to create Derivative Works based upon the Original Work +or to exercise any of the rights granted in Section 1 herein, and any attempt +to do so except under the terms of this License (or another written agreement +between Licensor and You) is expressly prohibited by U.S. copyright law, the +equivalent laws of other countries, and by international treaty. Therefore, by +exercising any of the rights granted to You in Section 1 herein, You indicate +Your acceptance of this License and all of its terms and conditions. + +10) Termination for Patent Action. This License shall terminate automatically +and You may no longer exercise any of the rights granted to You by this License +as of the date You commence an action, including a cross-claim or counterclaim, +against Licensor or any licensee alleging that the Original Work infringes a +patent. This termination provision shall not apply for an action alleging +patent infringement by combinations of the Original Work with other software or +hardware. + +11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this +License may be brought only in the courts of a jurisdiction wherein the +Licensor resides or in which Licensor conducts its primary business, and under +the laws of that jurisdiction excluding its conflict-of-law provisions. The +application of the United Nations Convention on Contracts for the International +Sale of Goods is expressly excluded. Any use of the Original Work outside the +scope of this License or after its termination shall be subject to the +requirements and penalties of the U.S. Copyright Act, 17 U.S.C. § 101 et +seq., the equivalent laws of other countries, and international treaty. This +section shall survive the termination of this License. + +12) Attorneys Fees. In any action to enforce the terms of this License or +seeking damages relating thereto, the prevailing party shall be entitled to +recover its costs and expenses, including, without limitation, reasonable +attorneys' fees and costs incurred in connection with such action, including +any appeal of such action. This section shall survive the termination of this +License. + +13) Miscellaneous. This License represents the complete agreement concerning +the subject matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent necessary to +make it enforceable. + +14) Definition of "You" in This License. "You" throughout this License, whether +in upper or lower case, means an individual or a legal entity exercising rights +under, and complying with all of the terms of, this License. For legal +entities, "You" includes any entity that controls, is controlled by, or is +under common control with you. For purposes of this definition, "control" means +(i) the power, direct or indirect, to cause the direction or management of such +entity, whether by contract or otherwise, or (ii) ownership of fifty percent +(50%) or more of the outstanding shares, or (iii) beneficial ownership of such +entity. + +15) Right to Use. You may use the Original Work in all ways not otherwise +restricted or conditioned by this License or by law, and Licensor promises not +to interfere with or be responsible for such uses by You. + +This license is Copyright (C) 2003-2004 Lawrence E. Rosen. All rights reserved. +Permission is hereby granted to copy and distribute this license without +modification. This license may not be modified without the express written +permission of its copyright owner. diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/NodeList/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/NodeList/README new file mode 100644 index 00000000..039c37d9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/NodeList/README @@ -0,0 +1,33 @@ +------------------------------------------------------------------------------- +Project Name: NodeList +------------------------------------------------------------------------------- +Version 0.01 +Release date: 07/20/2010 +------------------------------------------------------------------------------- +Project state: + experimental +------------------------------------------------------------------------------- +Credits: + Bill Keese +------------------------------------------------------------------------------- +Project description + +This project is meant to extend NodeList with various methods. The first is +delegate(), similar to jQuery's delegate method (http://api.jquery.com/delegate/) +------------------------------------------------------------------------------- +Dependencies: + dojo base + dojo.NodeList-traverse +------------------------------------------------------------------------------- +Documentation + Documentation resides at: + http://api.dojotoolkit.org/NodeList + +------------------------------------------------------------------------------- +Installation instructions + +Just dojo.require("dojox.NodeList.delegate") in your application and then +delegate() is added as a method to NodeList. + +------------------------------------------------------------------------------- + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/NodeList/delegate.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/NodeList/delegate.js new file mode 100644 index 00000000..c1aabfcf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/NodeList/delegate.js @@ -0,0 +1,13 @@ +//>>built +define("dojox/NodeList/delegate",["dojo/_base/lang","dojo/query","dojo/_base/NodeList","dojo/NodeList-traverse"],function(_1,_2){ +var _3=_2.NodeList; +_1.extend(_3,{delegate:function(_4,_5,fn){ +return this.connect(_5,function(_6){ +var _7=_2(_6.target).closest(_4,this); +if(_7.length){ +fn.call(_7[0],_6); +} +}); +}}); +return _3; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/NodeList/delegate.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/NodeList/delegate.js.uncompressed.js new file mode 100644 index 00000000..094eb76a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/NodeList/delegate.js.uncompressed.js @@ -0,0 +1,66 @@ +define("dojox/NodeList/delegate", [ + "dojo/_base/lang", + "dojo/query", + "dojo/_base/NodeList", // for this.connect() + "dojo/NodeList-traverse" +], function(lang, query) { + +// module: +// dojox/NodeList/delegate + +var NodeList = query.NodeList; + +lang.extend(NodeList, { + delegate: function(/*String*/ selector, /*String*/ eventName, /*Function*/ fn){ + // summary: + // Monitor nodes in this NodeList for [bubbled] events on nodes that match selector. + // Calls fn(evt) for those events, where (inside of fn()), this == the node + // that matches the selector. + // description: + // Sets up event handlers that can catch events on any subnodes matching a given selector, + // including nodes created after delegate() has been called. + // + // This allows an app to setup a single event handler on a high level node, rather than many + // event handlers on subnodes. For example, one onclick handler for a Tree widget, rather than separate + // handlers for each node in the tree. + // Since setting up many event handlers is expensive, this can increase performance. + // + // Note that delegate() will not work for events that don't bubble, like focus. + // onmouseenter/onmouseleave also don't currently work. + // selector: + // CSS selector valid to `dojo.query`, like ".foo" or "div > span". The + // selector is relative to the nodes in this NodeList, not the document root. + // For example myNodeList.delegate("> a", "onclick", ...) will catch events on + // anchor nodes which are (immediate) children of the nodes in myNodeList. + // eventName: + // Standard event name used as an argument to `dojo.connect`, like "onclick". + // fn: + // Callback function passed the event object, and where this == the node that matches the selector. + // That means that for example, after setting up a handler via + // | dojo.query("body").delegate("fieldset", "onclick", ...) + // clicking on a fieldset or *any nodes inside of a fieldset* will be reported + // as a click on the fieldset itself. + // example: + // | dojo.query("navbar").delegate("a", "onclick", function(evt){ + // | console.log("user clicked anchor ", this.node); + // | }); + + // Possible future tasks: + // - change signature of callback to be fn(node, evt), and then have scope argument + // to delegate(selector, eventName, scope, fn)? + // - support non-bubbling events like focus + // - support onmouseenter/onmouseleave + // - maybe should return an array of connect handles instead, to allow undelegate()? + // - single node version + + return this.connect(eventName, function(evt){ + var closest = query(evt.target).closest(selector, this); + if(closest.length){ + fn.call(closest[0], evt); + } + }); //dojo/NodeList + } +}); + +return NodeList; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/README.md b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/README.md new file mode 100644 index 00000000..859c4acd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/README.md @@ -0,0 +1,43 @@ +# dojox + +**dojox** is a meta-package of other packages that was historically a development area for the Dojo Toolkit. It +contains packages that run the gamut of JavaScript technology. Over the years the modules and sub-packages have taken +dramatically different paths. Some of the code is very mature, some of the code is experimental and some of the code is +essentially abandoned. All of the packages require the Dojo Toolkit [core][] and some require the widget library +[dijit][]. + +You should read the ``README`` file contained in each sub-package to understand the status of the code contained +within. + +DojoX is currently not accepting any new sub-packages or projects. There are many community packages available at +[Dojo Foundation Packages][] and additional packages can be registered there as well. If you are interested in adding +to the community of packages, please discuss in the [Community Forum][]. + +## Installing + +Installation instructions are available at [dojotoolkit.org/download][download]. + +## Getting Started + +If you are starting out with Dojo, the following resources are available to you: + +* [Tutorials][] +* [Reference Guide][] +* [API Documentation][] +* [Community Forum][] + +## License and Copyright + +The Dojo Toolkit (including this package) is dual licensed under BSD 3-Clause and AFL. For more information on the +license please see the [License Information][]. The Dojo Toolkit is Copyright (c) 2005-2013, The Dojo Foundation. All +rights reserved. + +[core]: https://github.com/dojo/dojo/ +[dijit]: https://github.com/dojo/dijit/ +[download]: http://dojotoolkit.org/download/ +[Tutorials]: http://dojotoolkit.org/documentation/ +[Reference Guide]: http://dojotoolkit.org/reference-guide/ +[API Documentation]: http://dojotoolkit.org/api/ +[Community Forum]: http://dojotoolkit.org/community/ +[License Information]: http://dojotoolkit.org/license +[Dojo Foundation Packages]: http://packages.dojofoundation.org/ diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics.js new file mode 100644 index 00000000..de4c0f41 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics.js @@ -0,0 +1,4 @@ +//>>built +define("dojox/analytics",["./analytics/_base"],function(_1){ +return _1; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics.js.uncompressed.js new file mode 100644 index 00000000..dd533c0a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics.js.uncompressed.js @@ -0,0 +1,10 @@ +define("dojox/analytics", ["./analytics/_base"], function(analytics) { + /*===== + return { + // summary: + // Deprecated. Should require dojox/analytics modules directly rather than trying to access them through + // this module. + }; + =====*/ + return analytics; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/README new file mode 100644 index 00000000..a6c46552 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/README @@ -0,0 +1,199 @@ +------------------------------------------------------------------------------- +dojox.analytics +------------------------------------------------------------------------------- +Version 1.0 +Release date: 12/17/2007 +------------------------------------------------------------------------------- +Project state: +[base]: alpha +[Urchin]: alpha +------------------------------------------------------------------------------- +Project authors + Dustin Machi (dmachi) + Peter Higgins (dante) + Ed Chatelain (edchat) added touch and gesture support 11/15/2011. +------------------------------------------------------------------------------- +Project description + analytics and client monitoring system. Including the base analytics +system and any number of plugins enables logging of different system data +back to the server. Plugins included at this time: + + dojo - reports dojo startup collected information + window - reports available window information to the server + mouseOver - allows periodic sampling of mouseOver + mouseClick - reports any mouse clicks to the server + idle - reports idle/activity + consoleMessages - reports console.* messages to the server + touchPress - reports touch.press and touch.release + touchMove - allows periodic sampling during a touch.move + gestureEvents - reports swipe, tap, tap.doubletap, tap.taphold + + Additionally, a Google Analytics (Urchin tracker) helper is included + in this project, though is unrelated to the Core dojox.analytics + project code. + +------------------------------------------------------------------------------- +Dependencies: + +Dojo Core (package loader). +------------------------------------------------------------------------------- +Documentation + +Usage: + +The primary intended usage will be to create a custom build layer that includes +the particular plugins you need for your project. However in practice you +can use the system as such: + + + + + +When done using a build, none of the dojo.require() statement will be requires +would already be in the build. + +Most of the plugins and the base itself have a number of configurable params +that are passed in via the djConfig variable set. This approach is taken so that +the parameters can be easily provided in the case of a build or for a custom +dojo.js build with analytics built in. Examples for different build profiles +are in the profiles directory. + +Available Configuration Parameters: + + Base Configs + sendInterval - Normal send interval. Default 5000 + sendMethod - "script" || "xhrPost" + inTransitRetry - Delay before retrying an a send if it was in transit + or if there is still data to be sent after a post. + Default 1000 + analyticsUrl - url to send logging data to. defaults to the test php + file for now + maxRequestSize - Maximum size of GET style requests. Capped at 2000 for + IE, and 4000 otherwise + + consoleMessages Config: + + consoleLogFuncs - functions from the console object that you will log to + the server. If the console object doesn't exist + or a particular method doesn't exist it will be + created as a remote logging only method. This provides + a quick and convenient way to automatically define + a remote logging function that includes the functions + name in the log. The 'rlog' in the default parameters + is an example of this. Defaults to ["error", "warn", "info", "rlog"] + + idle Config: + + idleTime - Number of ms to be idle before being reported to the server as idle + + mouseClick config: + targetProps - the properties whose values will be reported for each target from + a mouse click sample. + defaults to ["id","className","nodeName", "localName","href", "spellcheck", "lang"] + + textContentMaxChars - the max number of characters to show for text or textContent, defaults to 50 + + mouseOver config: + targetProps - the properties whose values will be reported for each target from + a mouse over sample. + defaults to ["id","className","localName","href", "spellcheck", "lang", "textContent", "value" ] + + watchMouseOver - log mouseover and mouseout events defaults to true + + sampleDelay - the delay in ms between mouseover samples. Defaults to 2500 + + textContentMaxChars - the max number of characters to show for text or textContent, defaults to 50 + + window config: + windowConnects - methods on the window objec that will be attached to + have its data passed to the server when called. + + touchPress config: + targetProps - the properties whose values will be reported for each target from + a touch.press or touch.release sample. + defaults to ["id","className","nodeName", "localName","href", "spellcheck", "lang"] + + textContentMaxChars - the max number of characters to show for text or textContent, defaults to 50 + + showTouchesDetails - include the details for the touches in the touches array, defaults to true + + + touchMove config: + targetProps - the properties whose values will be reported for each target from + a touch move sample. + defaults to ["id","className","localName","href", "spellcheck", "lang", "textContent", "value" ] + + textContentMaxChars - the max number of characters to show for text or textContent, defaults to 50 + + showTouchesDetails - include the details for the touches in the touches array, defaults to true + + touchSampleDelay - the delay in ms between touch.move samples. Defaults to 1000 + + gestureEvents config: + targetProps - the properties whose values will be reported for each target from + a gesture event (tap, taphold, doubletap, swipe) sample. + defaults to ["id","className","localName","href", "spellcheck", "lang", "textContent", "value" ] + + swipeSampleDelay - the delay in ms between swipe samples. Defaults to 1000 + + textContentMaxChars - the max number of characters to show for text or textContent, defaults to 50 + + watchSwipe - log swipe events in addition to the tap events, defaults to true + + + +Note that the basic usage of this system simply serializes json with toJson() when passed +to the analytics addData() method. If data is passed that has circular references +it will die. Take care not to do that or be surprised when it doens't work +in those cases. + +------------------------------------------------------------------------------- +Installation instructions + +Grab the following from the Dojo SVN Repository: +http://svn.dojotoolkit.org/var/src/dojo/dojox/trunk/analytics + +Install into the following directory structure: +/dojox/analytics/ + +...which should be at the same level as your Dojo checkout. diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/Urchin.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/Urchin.js new file mode 100644 index 00000000..4ad7bff5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/Urchin.js @@ -0,0 +1,23 @@ +//>>built +define("dojox/analytics/Urchin",["dojo/_base/lang","dojo/_base/declare","dojo/_base/window","dojo/_base/config","dojo/dom-construct"],function(_1,_2,_3,_4,_5){ +return _2("dojox.analytics.Urchin",null,{acct:"",constructor:function(_6){ +this.tracker=null; +_1.mixin(this,_6); +this.acct=this.acct||_4.urchin; +var re=/loaded|complete/,_7=("https:"==_3.doc.location.protocol)?"https://ssl.":"http://www.",h=_3.doc.getElementsByTagName("head")[0],n=_5.create("script",{src:_7+"google-analytics.com/ga.js"},h); +n.onload=n.onreadystatechange=_1.hitch(this,function(e){ +if(e&&e.type=="load"||re.test(n.readyState)){ +n.onload=n.onreadystatechange=null; +this._gotGA(); +h.removeChild(n); +} +}); +},_gotGA:function(){ +this.tracker=_gat._getTracker(this.acct); +this.GAonLoad.apply(this,arguments); +},GAonLoad:function(){ +this.trackPageView(); +},trackPageView:function(_8){ +this.tracker._trackPageview.apply(this.tracker,arguments); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/Urchin.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/Urchin.js.uncompressed.js new file mode 100644 index 00000000..022a36e3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/Urchin.js.uncompressed.js @@ -0,0 +1,132 @@ +define("dojox/analytics/Urchin", ["dojo/_base/lang", "dojo/_base/declare", "dojo/_base/window", + "dojo/_base/config", "dojo/dom-construct" +], function(lang, declare, window, config, construct){ + + /*===== + lang.mixin(config,{ + // urchin: String + // Used by `dojox.analytics.Urchin` as the default UA-123456-7 account + // number used when being created. Alternately, you can pass an acct:"" + // parameter to the constructor a la: new dojox.analytics.Urchin({ acct:"UA-123456-7" }); + urchin: "" + }); + =====*/ + + return declare("dojox.analytics.Urchin", null, { + // summary: + // A Google-analytics helper, for post-onLoad inclusion of the tracker, and + // dynamic tracking during long-lived page cycles. + // description: + // A small class object will allows for lazy-loading the Google Analytics API + // at any point during a page lifecycle. Most commonly, Google-Analytics is loaded + // via a synchronous script tag in the body, which causes `dojo.addOnLoad` to + // stall until the external API has been completely loaded. The Urchin helper + // will load the API on the fly, and provide a convenient API to use, wrapping + // Analytics for Ajaxy or single page applications. + // + // The class can be instantiated two ways: Programatically, by passing an + // `acct:` parameter, or via Markup / dojoType and defining a djConfig + // parameter `urchin:` + // + // IMPORTANT: + // This module will not work simultaneously with the core dojox.analytics + // package. If you need the ability to run Google Analytics AND your own local + // analytics system, you MUST include dojox.analytics._base BEFORE dojox.analytics.Urchin + // example: + // | // create the tracker programatically: + // | var tracker = new dojox.analytics.Urchin({ acct:"UA-123456-7" }); + // + // example: + // | // define the urchin djConfig option: + // | var djConfig = { urchin: "UA-123456-7" }; + // | + // | // and in markup: + // |
    + // | // or code: + // | new dojox.analytics.Urchin(); + // + // example: + // | // create and define all analytics with one tag. + // |
    + + // acct: String + // your GA urchin tracker account number. Overrides `djConfig.urchin` + acct: "", + + constructor: function(args){ + // summary: + // Initialize this Urchin instance. Immediately starts the load + // sequence, so defer construction until (ideally) after onLoad and + // potentially widget parsing. + this.tracker = null; + lang.mixin(this, args); + this.acct = this.acct || config.urchin; + + var re = /loaded|complete/, + gaHost = ("https:" == window.doc.location.protocol) ? "https://ssl." : "http://www.", + h = window.doc.getElementsByTagName("head")[0], + n = construct.create('script', { + src: gaHost + "google-analytics.com/ga.js" + }, h); + + n.onload = n.onreadystatechange = lang.hitch(this, function(e){ + if(e && e.type == "load" || re.test(n.readyState)){ + n.onload = n.onreadystatechange = null; + this._gotGA(); + h.removeChild(n); + } + }); + + }, + + _gotGA: function(){ + // summary: + // initialize the tracker + this.tracker = _gat._getTracker(this.acct); + this.GAonLoad.apply(this, arguments); + }, + + GAonLoad: function(){ + // summary: + // Stub function to fire when urchin is complete + // description: + // This function is executed when the tracker variable is + // complete and initialized. The initial trackPageView (with + // no arguments) is called here as well, so remeber to call + // manually if overloading this method. + // + // example: + // Create an Urchin tracker that will track a specific page on init + // after page load (or parsing, if parseOnLoad is true) + // | dojo.addOnLoad(function(){ + // | new dojox.ananlytics.Urchin({ + // | acct:"UA-12345-67", + // | GAonLoad: function(){ + // | this.trackPageView("/custom-page"); + // | } + // | }); + // | }); + + this.trackPageView(); + }, + + trackPageView: function(/* string */url){ + // summary: + // A public API attached to this widget instance, allowing you + // Ajax-like notification of updates. + // url: String + // A location to tell the tracker to track, eg: "/my-ajaxy-endpoint" + // example: + // Track clicks from a container of anchors and populate a `ContentPane` + // | // 'tracker' is our `Urchin` instance, pane is the `ContentPane` ref. + // | dojo.connect(container, "onclick", function(e){ + // | var ref = dojo.attr(e.target, "href"); + // | tracker.trackPageView(ref); + // | pane.attr("href", ref); + // | }); + + this.tracker._trackPageview.apply(this.tracker, arguments); + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/_base.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/_base.js new file mode 100644 index 00000000..30657fb9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/_base.js @@ -0,0 +1,72 @@ +//>>built +define("dojox/analytics/_base",["dojo/_base/lang","dojo/_base/config","dojo/ready","dojo/_base/unload","dojo/_base/sniff","dojo/request","dojo/json","dojo/io-query","dojo/request/script"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9){ +var _a=function(){ +this._data=[]; +this._id=1; +this.sendInterval=_2["sendInterval"]||5000; +this.inTransitRetry=_2["inTransitRetry"]||200; +this.dataUrl=_2["analyticsUrl"]||require.toUrl("dojox/analytics/logger/dojoxAnalytics.php"); +this.sendMethod=_2["sendMethod"]||"xhrPost"; +this.maxRequestSize=_5("ie")?2000:_2["maxRequestSize"]||4000; +_3(this,"schedulePusher"); +_4.addOnUnload(this,function(){ +this.pushData(); +}); +}; +_1.extend(_a,{schedulePusher:function(_b){ +setTimeout(_1.hitch(this,"checkData"),_b||this.sendInterval); +},addData:function(_c,_d){ +if(arguments.length>2){ +_d=Array.prototype.slice.call(arguments,1); +} +this._data.push({plugin:_c,data:_d}); +},checkData:function(){ +if(this._inTransit){ +this.schedulePusher(this.inTransitRetry); +return; +} +if(this.pushData()){ +return; +} +this.schedulePusher(); +},pushData:function(){ +if(this._data.length){ +this._inTransit=this._data; +this._data=[]; +var _e; +switch(this.sendMethod){ +case "script": +_e=_9.get(this.getQueryPacket(),{preventCache:1,callbackParamName:"callback"}); +break; +case "xhrPost": +default: +_e=_6.post(this.dataUrl,{data:{id:this._id++,data:_7.stringify(this._inTransit)}}); +break; +} +_e.then(_1.hitch(this,"onPushComplete")); +return _e; +} +return false; +},getQueryPacket:function(){ +while(true){ +var _f={id:this._id++,data:_7.stringify(this._inTransit)}; +var _10=this.dataUrl+"?"+_8.objectToQuery(_f); +if(_10.length>this.maxRequestSize){ +this._data.unshift(this._inTransit.pop()); +this._split=1; +}else{ +return _10; +} +} +},onPushComplete:function(_11){ +if(this._inTransit){ +delete this._inTransit; +} +if(this._data.length>0){ +this.schedulePusher(this.inTransitRetry); +}else{ +this.schedulePusher(); +} +}}); +return _1.setObject("dojox.analytics",new _a()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/_base.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/_base.js.uncompressed.js new file mode 100644 index 00000000..ef559418 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/_base.js.uncompressed.js @@ -0,0 +1,133 @@ +define("dojox/analytics/_base", ["dojo/_base/lang", "dojo/_base/config", "dojo/ready", "dojo/_base/unload", + "dojo/_base/sniff", "dojo/request", "dojo/json", "dojo/io-query", "dojo/request/script" +], function(lang, config, ready, unload, has, request, JSON, ioQuery, script){ + + var Analytics = function(){ + // summary: + // where we store data until we're ready to send it off. + + // the data queue; + this._data = []; + + // id of messages for this session/page + this._id = 1; + + // some default values + this.sendInterval = config["sendInterval"] || 5000; + this.inTransitRetry = config["inTransitRetry"] || 200; + this.dataUrl = config["analyticsUrl"] || require.toUrl("dojox/analytics/logger/dojoxAnalytics.php"); + this.sendMethod = config["sendMethod"] || "xhrPost"; + this.maxRequestSize = has("ie") ? 2000 : config["maxRequestSize"] || 4000; + + // while we can go ahead and being logging as soon as this constructor is completed + // we're not going to schedule pushing data to the server until after the page + // has completed loading + ready(this, "schedulePusher"); + unload.addOnUnload(this, function(){ + this.pushData(); + }); + }; + + lang.extend(Analytics, { + schedulePusher: function(/* Int */interval){ + // summary: + // Schedule the data pushing routines to happen in interval ms + setTimeout(lang.hitch(this, "checkData"), interval || this.sendInterval); + }, + + addData: function(dataType, data){ + // summary: + // add data to the queue. Will be pusshed to the server on the next + // data push + + if(arguments.length > 2){ + // FIXME: var c = dojo._toArray(arguments) ? + data = Array.prototype.slice.call(arguments,1); + } + + this._data.push({ plugin: dataType, data: data }); + }, + + checkData: function(){ + // summary: + // TODOC? + if(this._inTransit){ + this.schedulePusher(this.inTransitRetry); + return; + } + + if(this.pushData()){ return; } + this.schedulePusher(); + }, + + pushData: function(){ + // summary: + // pushes data to the server if any exists. If a push is done, return + // the deferred after hooking up completion callbacks. If there is no data + // to be pushed, return false; + if(this._data.length){ + // clear the queue + this._inTransit = this._data; + this._data = []; + var promise; + switch(this.sendMethod){ + case "script": + promise = script.get(this.getQueryPacket(), { + preventCache: 1, + callbackParamName: "callback" + }); + break; + case "xhrPost": + default: + promise = request.post(this.dataUrl, { + data:{ + id: this._id++, + data: JSON.stringify(this._inTransit) + } + }); + break; + } + promise.then(lang.hitch(this, "onPushComplete")); + return promise; + } + return false; + }, + + getQueryPacket: function(){ + // TODOC + while(true){ + var content = { + id: this._id++, + data: JSON.stringify(this._inTransit) + }; + + // FIXME would like a much better way to get the query down to length + var query = this.dataUrl + '?' + ioQuery.objectToQuery(content); + if(query.length > this.maxRequestSize){ + this._data.unshift(this._inTransit.pop()); + this._split = 1; + }else{ + return query; + } + } + }, + + onPushComplete: function(results){ + // summary: + // If our data push was successfully, remove the _inTransit data and schedule the next + // parser run. + if(this._inTransit){ + delete this._inTransit; + } + + if(this._data.length > 0){ + this.schedulePusher(this.inTransitRetry); + }else{ + this.schedulePusher(); + } + } + }); + + // create the analytics singleton + return lang.setObject("dojox.analytics",new Analytics()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/logger/JSON.php b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/logger/JSON.php new file mode 100644 index 00000000..e87e4d0b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/logger/JSON.php @@ -0,0 +1,724 @@ + + * @author Matt Knapp + * @author Brett Stimmerman + * @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: + * + * + * // 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); + * + */ +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/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/logger/dojoxAnalytics.php b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/logger/dojoxAnalytics.php new file mode 100644 index 00000000..e4724989 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/logger/dojoxAnalytics.php @@ -0,0 +1,31 @@ +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 = '{"eventsReceived": "' . sizeof($items) . '", "id": "' . $id . '"}'; + if ($_REQUEST["callback"]){ + print htmlentities($_REQUEST["callback"]) . "(" . $response . ");"; + }else{ + print $response; + } + +?> diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/consoleMessages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/consoleMessages.js new file mode 100644 index 00000000..a878e761 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/consoleMessages.js @@ -0,0 +1,18 @@ +//>>built +define("dojox/analytics/plugins/consoleMessages",["dojo/_base/lang","../_base","dojo/_base/config","dojo/aspect"],function(_1,_2,_3,_4){ +var _5=_1.getObject("dojox.analytics.plugins.consoleMessages",true); +_5.addData=_1.hitch(_2,"addData","consoleMessages"); +var _6=_3["consoleLogFuncs"]||["error","warn","info","rlog"]; +if(!console){ +console={}; +} +for(var i=0;i<_6.length;i++){ +var _7=_6[i],_8=_1.hitch(_5,"addData",_7); +if(console[_7]){ +_4.after(console,_7,_8,true); +}else{ +console[_7]=_8; +} +} +return _5; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/consoleMessages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/consoleMessages.js.uncompressed.js new file mode 100644 index 00000000..5c33b8df --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/consoleMessages.js.uncompressed.js @@ -0,0 +1,24 @@ +define("dojox/analytics/plugins/consoleMessages", ["dojo/_base/lang", "../_base", "dojo/_base/config", "dojo/aspect" +], function(lang, dxa, config, aspect){ + + var consoleMessages = lang.getObject("dojox.analytics.plugins.consoleMessages", true); + + // summary: + // plugin to have analyitcs return the base info dojo collects + consoleMessages.addData = lang.hitch(dxa, "addData", "consoleMessages"); + + var lvls = config["consoleLogFuncs"] || ["error", "warn", "info", "rlog"]; + if(!console){ + console = {}; + } + + for(var i = 0; i < lvls.length; i++){ + var fnName = lvls[i], _addData = lang.hitch(consoleMessages, "addData", fnName); + if(console[fnName]){ + aspect.after(console, fnName, _addData,true); + }else{ + console[fnName] = _addData; + } + } + return consoleMessages; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/dojo.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/dojo.js new file mode 100644 index 00000000..c51c6243 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/dojo.js @@ -0,0 +1,19 @@ +//>>built +define("dojox/analytics/plugins/dojo",["dojo/_base/lang","../_base","dojo/_base/config","dojo/ready"],function(_1,_2,_3,_4){ +var _5=_1.getObject("dojox.analytics.plugins",true); +return (_5.dojo=new (function(){ +this.addData=_1.hitch(_2,"addData","dojo"); +_4(_1.hitch(this,function(){ +var _6={}; +for(var i in dojo){ +if((i=="version")||((!(typeof dojo[i]=="object"||typeof dojo[i]=="function"))&&(i[0]!="_"))){ +_6[i]=dojo[i]; +} +} +if(_3){ +_6.djConfig=_3; +} +this.addData(_6); +})); +})()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/dojo.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/dojo.js.uncompressed.js new file mode 100644 index 00000000..c298f19e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/dojo.js.uncompressed.js @@ -0,0 +1,21 @@ +define("dojox/analytics/plugins/dojo", ["dojo/_base/lang","../_base", "dojo/_base/config", "dojo/ready" +], function(lang, dxa, config, ready){ + var plugins = lang.getObject("dojox.analytics.plugins", true); + + return (plugins.dojo = new (function(){ + // summary: + // plugin to have analyitcs return the base info dojo collects + this.addData = lang.hitch(dxa, "addData", "dojo"); + ready(lang.hitch(this, function(){ + var data = {}; + for(var i in dojo){ + if((i == "version") || ((!(typeof dojo[i] == "object" || typeof dojo[i] == "function")) && (i[0] != "_"))){ + data[i] = dojo[i]; + } + } + + if(config){data.djConfig = config} + this.addData(data); + })); + })()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/gestureEvents.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/gestureEvents.js new file mode 100644 index 00000000..bef74f57 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/gestureEvents.js @@ -0,0 +1,79 @@ +//>>built +define("dojox/analytics/plugins/gestureEvents",["dojo/_base/lang","../_base","dojo/_base/window","dojo/on","dojo/_base/config","dojo/touch","dojox/gesture/tap","dojox/gesture/swipe"],function(_1,_2,_3,on,_4,_5,_6,_7){ +return (_2.plugins.gestureEvents=new (function(){ +if(_4["watchSwipe"]!==undefined&&!_4["watchSwipe"]){ +this.watchSwipe=false; +}else{ +this.watchSwipe=true; +} +this.swipeSampleDelay=_4["swipeSampleDelay"]||1000; +this.targetProps=_4["targetProps"]||["id","className","localName","href","spellcheck","lang","textContent","value"]; +this.textContentMaxChars=_4["textContentMaxChars"]||50; +this.addDataSwipe=_1.hitch(_2,"addData","gesture.swipe"); +this.sampleSwipe=function(e){ +if(!this._rateLimited){ +this.addDataSwipe(this.trimEvent(e)); +this._rateLimited=true; +setTimeout(_1.hitch(this,function(){ +if(this._rateLimited){ +this.trimEvent(this._lastSwipeEvent); +delete this._lastSwipeEvent; +delete this._rateLimited; +} +}),this.swipeSampleDelay); +} +this._lastSwipeEvent=e; +return e; +}; +if(this.watchSwipe){ +on(_3.doc,_7,_1.hitch(this,"sampleSwipe")); +} +this.addData=_1.hitch(_2,"addData","gesture.tap"); +this.onGestureTap=function(e){ +this.addData(this.trimEvent(e)); +}; +on(_3.doc,_6,_1.hitch(this,"onGestureTap")); +this.addDataDoubleTap=_1.hitch(_2,"addData","gesture.tap.doubletap"); +this.onGestureDoubleTap=function(e){ +this.addDataDoubleTap(this.trimEvent(e)); +}; +on(_3.doc,_6.doubletap,_1.hitch(this,"onGestureDoubleTap")); +this.addDataTapHold=_1.hitch(_2,"addData","gesture.tap.taphold"); +this.onGestureTapHold=function(e){ +this.addDataTapHold(this.trimEvent(e)); +}; +on(_3.doc,_6.hold,_1.hitch(this,"onGestureTapHold")); +this.trimEvent=function(e){ +var t={}; +for(var i in e){ +switch(i){ +case "target": +var _8=this.targetProps; +t[i]={}; +for(var j=0;j<_8.length;j++){ +if(e[i][_8[j]]){ +if(_8[j]=="text"||_8[j]=="textContent"){ +if((e[i]["localName"]!="HTML")&&(e[i]["localName"]!="BODY")){ +t[i][_8[j]]=e[i][_8[j]].substr(0,this.textContentMaxChars); +} +}else{ +t[i][_8[j]]=e[i][_8[j]]; +} +} +} +break; +case "clientX": +case "clientY": +case "screenX": +case "screenY": +case "dx": +case "dy": +case "time": +t[i]=e[i]; +break; +} +} +return t; +}; +})()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/gestureEvents.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/gestureEvents.js.uncompressed.js new file mode 100644 index 00000000..8b95763c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/gestureEvents.js.uncompressed.js @@ -0,0 +1,95 @@ +define("dojox/analytics/plugins/gestureEvents", ["dojo/_base/lang","../_base", "dojo/_base/window", "dojo/on", "dojo/_base/config", "dojo/touch", + "dojox/gesture/tap", "dojox/gesture/swipe" + +], function(lang, dxa, window, on, config, touch, tap, swipe){ + + // window startup data + return (dxa.plugins.gestureEvents = new (function(){ + + // watch for dojox.gesture.swipe, use delay to avoid getting too many + if(config["watchSwipe"] !== undefined && !config["watchSwipe"]){ + this.watchSwipe = false; + }else{ + this.watchSwipe = true; + } + this.swipeSampleDelay = config["swipeSampleDelay"] || 1000; + this.targetProps = config["targetProps"] || ["id","className","localName","href", "spellcheck", "lang", "textContent", "value" ]; + this.textContentMaxChars = config["textContentMaxChars"] || 50; + + this.addDataSwipe = lang.hitch(dxa, "addData", "gesture.swipe"); + this.sampleSwipe = function(e){ + if(!this._rateLimited){ + this.addDataSwipe(this.trimEvent(e)); + this._rateLimited = true; + setTimeout(lang.hitch(this, function(){ + if(this._rateLimited){ + this.trimEvent(this._lastSwipeEvent); + delete this._lastSwipeEvent; + delete this._rateLimited; + } + }), this.swipeSampleDelay); + } + this._lastSwipeEvent = e; + return e; + } + if(this.watchSwipe){ + on(window.doc, swipe, lang.hitch(this, "sampleSwipe")); + } + + + // watch for dojox.gesture.tap + this.addData = lang.hitch(dxa, "addData", "gesture.tap"); + this.onGestureTap = function(e){ + this.addData(this.trimEvent(e)); + } + on(window.doc, tap, lang.hitch(this, "onGestureTap")); + + // watch for dojox.gesture.tap.doubletap + this.addDataDoubleTap = lang.hitch(dxa, "addData", "gesture.tap.doubletap"); + this.onGestureDoubleTap = function(e){ + this.addDataDoubleTap(this.trimEvent(e)); + } + on(window.doc, tap.doubletap, lang.hitch(this, "onGestureDoubleTap")); + + // watch for dojox.gesture.tap.taphold + this.addDataTapHold = lang.hitch(dxa, "addData", "gesture.tap.taphold"); + this.onGestureTapHold = function(e){ + this.addDataTapHold(this.trimEvent(e)); + } + on(window.doc, tap.hold, lang.hitch(this, "onGestureTapHold")); + + + this.trimEvent = function(e){ + var t = {}; + for(var i in e){ + switch(i){ + case "target": + var props = this.targetProps; + t[i] = {}; + for(var j = 0;j < props.length;j++){ + if(e[i][props[j]]){ + if(props[j] == "text" || props[j] == "textContent"){ + if((e[i]["localName"] != "HTML") && (e[i]["localName"] != "BODY")){ + t[i][props[j]] = e[i][props[j]].substr(0,this.textContentMaxChars); + } + }else{ + t[i][props[j]] = e[i][props[j]]; + } + } + } + break; + case "clientX": + case "clientY": + case "screenX": + case "screenY": + case "dx": + case "dy": + case "time": + t[i] = e[i]; + break; + } + } + return t; + } + })()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/idle.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/idle.js new file mode 100644 index 00000000..777b913c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/idle.js @@ -0,0 +1,27 @@ +//>>built +define("dojox/analytics/plugins/idle",["dojo/_base/lang","../_base","dojo/_base/config","dojo/ready","dojo/aspect","dojo/_base/window"],function(_1,_2,_3,_4,_5,_6){ +return (_2.plugins.idle=new (function(){ +this.addData=_1.hitch(_2,"addData","idle"); +this.idleTime=_3["idleTime"]||60000; +this.idle=true; +this.setIdle=function(){ +this.addData("isIdle"); +this.idle=true; +}; +_4(_1.hitch(this,function(){ +var _7=["onmousemove","onkeydown","onclick","onscroll"]; +for(var i=0;i<_7.length;i++){ +_5.after(_6.doc,_7[i],_1.hitch(this,function(e){ +if(this.idle){ +this.idle=false; +this.addData("isActive"); +this.idleTimer=setTimeout(_1.hitch(this,"setIdle"),this.idleTime); +}else{ +clearTimeout(this.idleTimer); +this.idleTimer=setTimeout(_1.hitch(this,"setIdle"),this.idleTime); +} +}),true); +} +})); +})()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/idle.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/idle.js.uncompressed.js new file mode 100644 index 00000000..9ff5cb0d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/idle.js.uncompressed.js @@ -0,0 +1,33 @@ +define("dojox/analytics/plugins/idle", ["dojo/_base/lang", "../_base", "dojo/_base/config", "dojo/ready", + "dojo/aspect", "dojo/_base/window" +], function(lang, dxa, config, ready, aspect, window){ + + // window startup data + return (dxa.plugins.idle = new (function(){ + this.addData = lang.hitch(dxa, "addData", "idle"); + this.idleTime = config["idleTime"] || 60000; + this.idle = true; + + this.setIdle = function(){ + this.addData("isIdle"); + this.idle = true; + + } + + ready(lang.hitch(this, function(){ + var idleResets = ["onmousemove","onkeydown","onclick","onscroll"]; + for(var i = 0;i < idleResets.length;i++){ + aspect.after(window.doc,idleResets[i],lang.hitch(this, function(e){ + if(this.idle){ + this.idle = false; + this.addData("isActive"); + this.idleTimer = setTimeout(lang.hitch(this,"setIdle"), this.idleTime); + }else{ + clearTimeout(this.idleTimer); + this.idleTimer = setTimeout(lang.hitch(this,"setIdle"), this.idleTime); + } + }),true); + } + })); + })()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseClick.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseClick.js new file mode 100644 index 00000000..ddc7d89b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseClick.js @@ -0,0 +1,45 @@ +//>>built +define("dojox/analytics/plugins/mouseClick",["dojo/_base/lang","../_base","dojo/_base/config","dojo/_base/window","dojo/on"],function(_1,_2,_3,_4,on){ +return (_2.plugins.mouseClick=new (function(){ +this.addData=_1.hitch(_2,"addData","mouseClick"); +this.targetProps=_3["targetProps"]||["id","className","nodeName","localName","href","spellcheck","lang"]; +this.textContentMaxChars=_3["textContentMaxChars"]||50; +this.onClick=function(e){ +this.addData(this.trimEvent(e)); +}; +on(_4.doc,"click",_1.hitch(this,"onClick")); +this.trimEvent=function(e){ +var t={}; +for(var i in e){ +switch(i){ +case "target": +case "originalTarget": +case "explicitOriginalTarget": +var _5=this.targetProps; +t[i]={}; +for(var j=0;j<_5.length;j++){ +if(e[i][_5[j]]){ +if(_5[j]=="text"||_5[j]=="textContent"){ +if((e[i]["localName"]!="HTML")&&(e[i]["localName"]!="BODY")){ +t[i][_5[j]]=e[i][_5[j]].substr(0,this.textContentMaxChars); +} +}else{ +t[i][_5[j]]=e[i][_5[j]]; +} +} +} +break; +case "clientX": +case "clientY": +case "pageX": +case "pageY": +case "screenX": +case "screenY": +t[i]=e[i]; +break; +} +} +return t; +}; +})()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseClick.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseClick.js.uncompressed.js new file mode 100644 index 00000000..42e5b268 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseClick.js.uncompressed.js @@ -0,0 +1,50 @@ +define("dojox/analytics/plugins/mouseClick", ["dojo/_base/lang","../_base", "dojo/_base/config", "dojo/_base/window", "dojo/on" +], function(lang, dxa, config, window, on){ + + // window startup data + return (dxa.plugins.mouseClick = new (function(){ + this.addData = lang.hitch(dxa, "addData", "mouseClick"); + this.targetProps = config["targetProps"] || ["id","className","nodeName", "localName","href", "spellcheck", "lang"]; + this.textContentMaxChars = config["textContentMaxChars"] || 50; + + this.onClick = function(e){ + this.addData(this.trimEvent(e)); + }; + on(window.doc, "click", lang.hitch(this, "onClick")); + + this.trimEvent = function(e){ + var t = {}; + for(var i in e){ + switch(i){ + case "target": + case "originalTarget": + case "explicitOriginalTarget": + //var props = ["id","className","nodeName", "localName","href", "spellcheck", "lang"]; + var props = this.targetProps; + t[i] = {}; + for(var j = 0;j < props.length;j++){ + if(e[i][props[j]]){ + if(props[j] == "text" || props[j] == "textContent"){ + if((e[i]["localName"] != "HTML") && (e[i]["localName"] != "BODY")){ + t[i][props[j]] = e[i][props[j]].substr(0,this.textContentMaxChars); + } + }else{ + t[i][props[j]] = e[i][props[j]]; + } + } + } + break; + case "clientX": + case "clientY": + case "pageX": + case "pageY": + case "screenX": + case "screenY": + t[i] = e[i]; + break; + } + } + return t; + }; + })()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseOver.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseOver.js new file mode 100644 index 00000000..ed5b0fa5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseOver.js @@ -0,0 +1,71 @@ +//>>built +define("dojox/analytics/plugins/mouseOver",["dojo/_base/lang","../_base","dojo/_base/config","dojo/_base/window","dojo/on"],function(_1,_2,_3,_4,on){ +return (_2.plugins.mouseOver=new (function(){ +this.watchMouse=_3["watchMouseOver"]||true; +this.mouseSampleDelay=_3["sampleDelay"]||2500; +this.addData=_1.hitch(_2,"addData","mouseOver"); +this.targetProps=_3["targetProps"]||["id","className","localName","href","spellcheck","lang","textContent","value"]; +this.textContentMaxChars=_3["textContentMaxChars"]||50; +this.toggleWatchMouse=function(){ +if(this._watchingMouse){ +this._watchingMouse.remove(); +delete this._watchingMouse; +return; +} +on(_4.doc,"mousemove",_1.hitch(this,"sampleMouse")); +}; +if(this.watchMouse){ +on(_4.doc,"mouseover",_1.hitch(this,"toggleWatchMouse")); +on(_4.doc,"mouseout",_1.hitch(this,"toggleWatchMouse")); +} +this.sampleMouse=function(e){ +if(!this._rateLimited){ +this.addData("sample",this.trimMouseEvent(e)); +this._rateLimited=true; +setTimeout(_1.hitch(this,function(){ +if(this._rateLimited){ +this.trimMouseEvent(this._lastMouseEvent); +delete this._lastMouseEvent; +delete this._rateLimited; +} +}),this.mouseSampleDelay); +} +this._lastMouseEvent=e; +return e; +}; +this.trimMouseEvent=function(e){ +var t={}; +for(var i in e){ +switch(i){ +case "target": +var _5=this.targetProps; +t[i]={}; +for(var j=0;j<_5.length;j++){ +if((typeof e[i]=="object"||typeof e[i]=="function")&&_5[j] in e[i]){ +if(_5[j]=="text"||_5[j]=="textContent"){ +if(e[i]["localName"]&&(e[i]["localName"]!="HTML")&&(e[i]["localName"]!="BODY")){ +t[i][_5[j]]=e[i][_5[j]].substr(0,this.textContentMaxChars); +} +}else{ +t[i][_5[j]]=e[i][_5[j]]; +} +} +} +break; +case "screenX": +case "screenY": +case "x": +case "y": +if(e[i]){ +var _6=e[i]; +t[i]=_6+""; +} +break; +default: +break; +} +} +return t; +}; +})()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseOver.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseOver.js.uncompressed.js new file mode 100644 index 00000000..dcc67056 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/mouseOver.js.uncompressed.js @@ -0,0 +1,90 @@ +define("dojox/analytics/plugins/mouseOver", ["dojo/_base/lang", "../_base", "dojo/_base/config", "dojo/_base/window", "dojo/on" +], function(lang, dxa, config, window, on){ + + return (dxa.plugins.mouseOver = new (function(){ + this.watchMouse = config["watchMouseOver"] || true; + this.mouseSampleDelay = config["sampleDelay"] || 2500; + this.addData = lang.hitch(dxa, "addData", "mouseOver"); + this.targetProps = config["targetProps"] || ["id","className","localName","href", "spellcheck", "lang", "textContent", "value" ]; + this.textContentMaxChars = config["textContentMaxChars"] || 50; + + this.toggleWatchMouse = function(){ + if(this._watchingMouse){ + this._watchingMouse.remove(); + delete this._watchingMouse; + return; + } + on(window.doc, "mousemove", lang.hitch(this, "sampleMouse")); + }; + + if(this.watchMouse){ + on(window.doc, "mouseover", lang.hitch(this, "toggleWatchMouse")); + on(window.doc, "mouseout", lang.hitch(this, "toggleWatchMouse")); + } + + this.sampleMouse = function(e){ + if(!this._rateLimited){ + this.addData("sample",this.trimMouseEvent(e)); + this._rateLimited = true; + setTimeout(lang.hitch(this, function(){ + if(this._rateLimited){ + //this.addData("sample", this.trimMouseEvent(this._lastMouseEvent)); + this.trimMouseEvent(this._lastMouseEvent); + delete this._lastMouseEvent; + delete this._rateLimited; + } + }), this.mouseSampleDelay); + } + this._lastMouseEvent = e; + return e; + }; + + this.trimMouseEvent = function(e){ + var t = {}; + for(var i in e){ + switch(i){ + //case "currentTarget": //currentTarget caused an error + case "target": + //case "originalTarget": + //case "explicitOriginalTarget": + var props = this.targetProps; + t[i] = {}; + //console.log(e, i, e[i]); + for(var j = 0;j < props.length;j++){ + if((typeof e[i] == "object" || typeof e[i] == "function") && props[j] in e[i]){ + + if(props[j] == "text" || props[j] == "textContent"){ + if(e[i]["localName"] && (e[i]["localName"] != "HTML") && (e[i]["localName"] != "BODY")){ + t[i][props[j]] = e[i][props[j]].substr(0,this.textContentMaxChars); + } + }else{ + t[i][props[j]] = e[i][props[j]]; + } + } + } + break; + // clientX, pageX and x are usually the same so no need to show all 3, same for y + //case "clientX": + //case "clientY": + //case "pageX": + //case "pageY": + case "screenX": + case "screenY": + case "x": + case "y": + if(e[i]){ + //console.log("Attempting: " + i); + var val = e[i]; + //console.log("val: " + val); console.log(i + "e of i: " + val); + t[i] = val + ''; + } + break; + default: + //console.log("Skipping: ", i); + break; + } + } + return t; + }; + })()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/touchMove.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/touchMove.js new file mode 100644 index 00000000..02cd2ef6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/plugins/touchMove.js @@ -0,0 +1,100 @@ +//>>built +define("dojox/analytics/plugins/touchMove",["dojo/_base/lang","../_base","dojo/_base/config","dojo/_base/window","dojo/on","dojo/touch"],function(_1,_2,_3,_4,on,_5){ +return (_2.plugins.touchMove=new (function(){ +if(_3["watchTouch"]!==undefined&&!_3["watchTouch"]){ +this.watchTouch=false; +}else{ +this.watchTouch=true; +} +if(_3["showTouchesDetails"]!==undefined&&!_3["showTouchesDetails"]){ +this.showTouchesDetails=false; +}else{ +this.showTouchesDetails=true; +} +this.touchSampleDelay=_3["touchSampleDelay"]||1000; +this.targetProps=_3["targetProps"]||["id","className","localName","href","spellcheck","lang","textContent","value"]; +this.textContentMaxChars=_3["textContentMaxChars"]||50; +this.addData=_1.hitch(_2,"addData","touch.move"); +this.sampleTouchMove=function(e){ +if(!this._rateLimited){ +this.addData("sample",this.trimTouchEvent(e)); +this._rateLimited=true; +setTimeout(_1.hitch(this,function(){ +if(this._rateLimited){ +this.trimTouchEvent(this._lastTouchEvent); +delete this._lastTouchEvent; +delete this._rateLimited; +} +}),this.touchSampleDelay); +} +this._lastTouchEvent=e; +return e; +}; +on(_4.doc,_5.move,_1.hitch(this,"sampleTouchMove")); +this.handleTarget=function(t,_6,i){ +var _7=this.targetProps; +t[i]={}; +for(var j=0;j<_7.length;j++){ +if((typeof _6=="object"||typeof _6=="function")&&_7[j] in _6){ +if(_7[j]=="text"||_7[j]=="textContent"){ +if(_6["localName"]&&(_6["localName"]!="HTML")&&(_6["localName"]!="BODY")){ +t[i][_7[j]]=_6[_7[j]].substr(0,this.textContentMaxChars); +} +}else{ +t[i][_7[j]]=_6[_7[j]]; +} +} +} +}; +this.trimTouchEvent=function(e){ +var t={}; +var _8; +for(var i in e){ +switch(i){ +case "target": +this.handleTarget(t,e[i],i); +break; +case "touches": +if(e[i].length!==0){ +t["touches.length"]=e[i].length; +} +if(this.showTouchesDetails){ +for(var j=0;j>built +define("dojox/analytics/plugins/touchPress",["dojo/_base/lang","../_base","dojo/_base/config","dojo/_base/window","dojo/on","dojo/touch"],function(_1,_2,_3,_4,on,_5){ +return (_2.plugins.touchPress=new (function(){ +if(_3["showTouchesDetails"]!==undefined&&!_3["showTouchesDetails"]){ +this.showTouchesDetails=false; +}else{ +this.showTouchesDetails=true; +} +this.targetProps=_3["targetProps"]||["id","className","nodeName","localName","href","spellcheck","lang"]; +this.textContentMaxChars=_3["textContentMaxChars"]||50; +this.addData=_1.hitch(_2,"addData","touch.press"); +this.onTouchPress=function(e){ +this.addData(this.trimEvent(e)); +}; +this.addDataRelease=_1.hitch(_2,"addData","touch.release"); +this.onTouchRelease=function(e){ +this.addDataRelease(this.trimEvent(e)); +}; +on(_4.doc,_5.press,_1.hitch(this,"onTouchPress")); +on(_4.doc,_5.release,_1.hitch(this,"onTouchRelease")); +this.handleTarget=function(t,_6,i){ +var _7=this.targetProps; +t[i]={}; +for(var j=0;j<_7.length;j++){ +if((typeof _6=="object"||typeof _6=="function")&&_7[j] in _6){ +if(_7[j]=="text"||_7[j]=="textContent"){ +if(_6["localName"]&&(_6["localName"]!="HTML")&&(_6["localName"]!="BODY")){ +t[i][_7[j]]=_6[_7[j]].substr(0,this.textContentMaxChars); +} +}else{ +t[i][_7[j]]=_6[_7[j]]; +} +} +} +}; +this.trimEvent=function(e){ +var t={}; +for(var i in e){ +switch(i){ +case "target": +this.handleTarget(t,e[i],i); +break; +case "touches": +if(e[i].length!==0){ +t["touches.length"]=e[i].length; +} +if(this.showTouchesDetails){ +for(var j=0;j>built +define("dojox/analytics/plugins/window",["dojo/_base/lang","../_base","dojo/ready","dojo/_base/config","dojo/aspect"],function(_1,_2,_3,_4,_5){ +return (_2.plugins.window=new (function(){ +this.addData=_1.hitch(_2,"addData","window"); +this.windowConnects=_4["windowConnects"]||["open","onerror"]; +for(var i=0;i>built +dependencies={layers:[{name:"../dojox/analytics.js",dependencies:["dojox.analytics","dojox.analytics.plugins.dojo","dojox.analytics.plugins.window","dojox.analytics.plugins.consoleMessages","dojox.analytics.plugins.mouseOver","dojox.analytics.plugins.mouseClick","dojox.analytics.plugins.touchPress","dojox.analytics.plugins.touchMove","dojox.analytics.plugins.gestureEvents","dojox.analytics.plugins.idle"]}],prefixes:[["dojox","../dojox"],["dijit","../dijit"]]}; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analytics.profile.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analytics.profile.js.uncompressed.js new file mode 100644 index 00000000..5fbaec78 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analytics.profile.js.uncompressed.js @@ -0,0 +1,17 @@ +dependencies = { + layers : [ { + name : "../dojox/analytics.js", + dependencies : [ "dojox.analytics", + "dojox.analytics.plugins.dojo", + "dojox.analytics.plugins.window", + "dojox.analytics.plugins.consoleMessages", + "dojox.analytics.plugins.mouseOver", + "dojox.analytics.plugins.mouseClick", + "dojox.analytics.plugins.touchPress", + "dojox.analytics.plugins.touchMove", + "dojox.analytics.plugins.gestureEvents", + "dojox.analytics.plugins.idle"] + } ], + + prefixes : [ [ "dojox", "../dojox" ], [ "dijit", "../dijit" ] ] +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analyticsInBase.profile.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analyticsInBase.profile.js new file mode 100644 index 00000000..04d5eb7f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analyticsInBase.profile.js @@ -0,0 +1,2 @@ +//>>built +dependencies={layers:[{name:"dojo.js",dependencies:["dojox.analytics","dojox.analytics.plugins.dojo","dojox.analytics.plugins.window","dojox.analytics.plugins.consoleMessages","dojox.analytics.plugins.mouseOver","dojox.analytics.plugins.mouseClick","dojox.analytics.plugins.touchPress","dojox.analytics.plugins.touchMove","dojox.analytics.plugins.gestureEvents","dojox.analytics.plugins.idle"]}],prefixes:[["dojox","../dojox"],["dijit","../dijit"]]}; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analyticsInBase.profile.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analyticsInBase.profile.js.uncompressed.js new file mode 100644 index 00000000..e348031d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/analytics/profiles/analyticsInBase.profile.js.uncompressed.js @@ -0,0 +1,24 @@ +dependencies = { + layers: [ + { + //name: "../dojox/analytics.js", + name: "dojo.js", + dependencies: [ + "dojox.analytics", + "dojox.analytics.plugins.dojo", + "dojox.analytics.plugins.window", + "dojox.analytics.plugins.consoleMessages", + "dojox.analytics.plugins.mouseOver", + "dojox.analytics.plugins.mouseClick", + "dojox.analytics.plugins.touchPress", + "dojox.analytics.plugins.touchMove", + "dojox.analytics.plugins.gestureEvents", + "dojox.analytics.plugins.idle"] + } + ], + + prefixes: [ + [ "dojox", "../dojox" ], + [ "dijit", "../dijit" ] + ] +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/CONTRIBUTING.md b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/CONTRIBUTING.md new file mode 100644 index 00000000..5ae012f8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/CONTRIBUTING.md @@ -0,0 +1,3 @@ +All contributions to this repository must: +- be done under the Dojo Contributor License Agreement (CLA, http://dojofoundation.org/about/claForm) that you must sign +- follow the Dojo style guide (https://dojotoolkit.org/community/styleGuide) diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/Controller.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/Controller.js new file mode 100644 index 00000000..7303bc9a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/Controller.js @@ -0,0 +1,33 @@ +//>>built +define("dojox/app/Controller",["dojo/_base/lang","dojo/_base/declare","dojo/on"],function(_1,_2,on){ +return _2("dojox.app.Controller",null,{constructor:function(_3,_4){ +this.events=this.events||_4; +this._boundEvents=[]; +this.app=_3; +},bind:function(_5,_6,_7){ +if(arguments.length==0){ +if(this.events){ +for(var _8 in this.events){ +if(_8.charAt(0)!=="_"){ +this.bind(this.app,_8,_1.hitch(this,this.events[_8])); +} +} +} +}else{ +var _9=on(_5,_6,_7); +this._boundEvents.push({"event":_6,"evented":_5,"signal":_9}); +} +return this; +},unbind:function(_a,_b){ +var _c=this._boundEvents.length; +for(var i=0;i<_c;i++){ +if((this._boundEvents[i]["event"]==_b)&&(this._boundEvents[i]["evented"]==_a)){ +this._boundEvents[i]["signal"].remove(); +this._boundEvents.splice(i,1); +return; +} +} +console.warn("event '"+_b+"' not bind on ",_a); +return this; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/Controller.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/Controller.js.uncompressed.js new file mode 100644 index 00000000..c73d8a5f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/Controller.js.uncompressed.js @@ -0,0 +1,75 @@ +define("dojox/app/Controller", ["dojo/_base/lang", "dojo/_base/declare", "dojo/on"], function(lang, declare, on){ + // module: + // dojox/app/Controller + // summary: + // Bind events on dojox/app application's dojo/Evented instance or document. + + return declare("dojox.app.Controller", null, { + constructor: function(app, events){ + // summary: + // bind events on application dojo/Evented instance. + // bind css selector events on document. + // + // app: + // dojox/app application instance. + // events: + // {event : handler} + + this.events = this.events || events; + this._boundEvents = []; + this.app = app; + }, + + bind: function(evented, event, handler){ + // summary: + // Bind event on dojo/Evented instance, document, domNode or window. + // Save event signal in controller instance. If no parameter is provided + // automatically bind all events registered in controller events property. + // + // evented: Object + // dojo/Evented instance, document, domNode or window + // event: String + // event + // handler: Function + // event handler + if(arguments.length == 0){ + if(this.events){ + for(var item in this.events){ + if(item.charAt(0) !== "_"){//skip the private properties + this.bind(this.app, item, lang.hitch(this, this.events[item])); + } + } + } + }else{ + var signal = on(evented, event, handler); + this._boundEvents.push({ + "event": event, + "evented": evented, + "signal": signal + }); + } + return this; + }, + + unbind: function(evented, event){ + // summary: + // remove a binded event signal. + // + // evented: Object + // dojo/Evented instance, document, domNode or window + // event: String + // event + + var len = this._boundEvents.length; + for(var i = 0; i < len; i++){ + if((this._boundEvents[i]['event'] == event) && (this._boundEvents[i]['evented'] == evented)){ + this._boundEvents[i]['signal'].remove(); + this._boundEvents.splice(i, 1); + return; + } + } + console.warn("event '"+event+"' not bind on ", evented); + return this; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/LICENSE b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/LICENSE new file mode 100644 index 00000000..6a527af4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/LICENSE @@ -0,0 +1,195 @@ +Dojo is available under *either* the terms of the modified BSD license *or* the +Academic Free License version 2.1. As a recipient of Dojo, you may choose which +license to receive this code under (except as noted in per-module LICENSE +files). Some modules may not be the copyright of the Dojo Foundation. These +modules contain explicit declarations of copyright in both the LICENSE files in +the directories in which they reside and in the code itself. No external +contributions are allowed under licenses which are fundamentally incompatible +with the AFL or BSD licenses that Dojo is distributed under. + +The text of the AFL and BSD licenses is reproduced below. + +------------------------------------------------------------------------------- +The "New" BSD License: +********************** + +Copyright (c) 2005-2013, The Dojo Foundation +All rights reserved. + +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. + * Neither the name of the Dojo Foundation nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 THE COPYRIGHT OWNER OR 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. + +------------------------------------------------------------------------------- +The Academic Free License, v. 2.1: +********************************** + +This Academic Free License (the "License") applies to any original work of +authorship (the "Original Work") whose owner (the "Licensor") has placed the +following notice immediately following the copyright notice for the Original +Work: + +Licensed under the Academic Free License version 2.1 + +1) Grant of Copyright License. Licensor hereby grants You a world-wide, +royalty-free, non-exclusive, perpetual, sublicenseable license to do the +following: + +a) to reproduce the Original Work in copies; + +b) to prepare derivative works ("Derivative Works") based upon the Original +Work; + +c) to distribute copies of the Original Work and Derivative Works to the +public; + +d) to perform the Original Work publicly; and + +e) to display the Original Work publicly. + +2) Grant of Patent License. Licensor hereby grants You a world-wide, +royalty-free, non-exclusive, perpetual, sublicenseable license, under patent +claims owned or controlled by the Licensor that are embodied in the Original +Work as furnished by the Licensor, to make, use, sell and offer for sale the +Original Work and Derivative Works. + +3) Grant of Source Code License. The term "Source Code" means the preferred +form of the Original Work for making modifications to it and all available +documentation describing how to modify the Original Work. Licensor hereby +agrees to provide a machine-readable copy of the Source Code of the Original +Work along with each copy of the Original Work that Licensor distributes. +Licensor reserves the right to satisfy this obligation by placing a +machine-readable copy of the Source Code in an information repository +reasonably calculated to permit inexpensive and convenient access by You for as +long as Licensor continues to distribute the Original Work, and by publishing +the address of that information repository in a notice immediately following +the copyright notice that applies to the Original Work. + +4) Exclusions From License Grant. Neither the names of Licensor, nor the names +of any contributors to the Original Work, nor any of their trademarks or +service marks, may be used to endorse or promote products derived from this +Original Work without express prior written permission of the Licensor. Nothing +in this License shall be deemed to grant any rights to trademarks, copyrights, +patents, trade secrets or any other intellectual property of Licensor except as +expressly stated herein. No patent license is granted to make, use, sell or +offer to sell embodiments of any patent claims other than the licensed claims +defined in Section 2. No right is granted to the trademarks of Licensor even if +such marks are included in the Original Work. Nothing in this License shall be +interpreted to prohibit Licensor from licensing under different terms from this +License any Original Work that Licensor otherwise would have a right to +license. + +5) This section intentionally omitted. + +6) Attribution Rights. You must retain, in the Source Code of any Derivative +Works that You create, all copyright, patent or trademark notices from the +Source Code of the Original Work, as well as any notices of licensing and any +descriptive text identified therein as an "Attribution Notice." You must cause +the Source Code for any Derivative Works that You create to carry a prominent +Attribution Notice reasonably calculated to inform recipients that You have +modified the Original Work. + +7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that +the copyright in and to the Original Work and the patent rights granted herein +by Licensor are owned by the Licensor or are sublicensed to You under the terms +of this License with the permission of the contributor(s) of those copyrights +and patent rights. Except as expressly stated in the immediately proceeding +sentence, the Original Work is provided under this License on an "AS IS" BASIS +and WITHOUT WARRANTY, either express or implied, including, without limitation, +the warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. +This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No +license to Original Work is granted hereunder except under this disclaimer. + +8) Limitation of Liability. Under no circumstances and under no legal theory, +whether in tort (including negligence), contract, or otherwise, shall the +Licensor be liable to any person for any direct, indirect, special, incidental, +or consequential damages of any character arising as a result of this License +or the use of the Original Work including, without limitation, damages for loss +of goodwill, work stoppage, computer failure or malfunction, or any and all +other commercial damages or losses. This limitation of liability shall not +apply to liability for death or personal injury resulting from Licensor's +negligence to the extent applicable law prohibits such limitation. Some +jurisdictions do not allow the exclusion or limitation of incidental or +consequential damages, so this exclusion and limitation may not apply to You. + +9) Acceptance and Termination. If You distribute copies of the Original Work or +a Derivative Work, You must make a reasonable effort under the circumstances to +obtain the express assent of recipients to the terms of this License. Nothing +else but this License (or another written agreement between Licensor and You) +grants You permission to create Derivative Works based upon the Original Work +or to exercise any of the rights granted in Section 1 herein, and any attempt +to do so except under the terms of this License (or another written agreement +between Licensor and You) is expressly prohibited by U.S. copyright law, the +equivalent laws of other countries, and by international treaty. Therefore, by +exercising any of the rights granted to You in Section 1 herein, You indicate +Your acceptance of this License and all of its terms and conditions. + +10) Termination for Patent Action. This License shall terminate automatically +and You may no longer exercise any of the rights granted to You by this License +as of the date You commence an action, including a cross-claim or counterclaim, +against Licensor or any licensee alleging that the Original Work infringes a +patent. This termination provision shall not apply for an action alleging +patent infringement by combinations of the Original Work with other software or +hardware. + +11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this +License may be brought only in the courts of a jurisdiction wherein the +Licensor resides or in which Licensor conducts its primary business, and under +the laws of that jurisdiction excluding its conflict-of-law provisions. The +application of the United Nations Convention on Contracts for the International +Sale of Goods is expressly excluded. Any use of the Original Work outside the +scope of this License or after its termination shall be subject to the +requirements and penalties of the U.S. Copyright Act, 17 U.S.C. � 101 et +seq., the equivalent laws of other countries, and international treaty. This +section shall survive the termination of this License. + +12) Attorneys Fees. In any action to enforce the terms of this License or +seeking damages relating thereto, the prevailing party shall be entitled to +recover its costs and expenses, including, without limitation, reasonable +attorneys' fees and costs incurred in connection with such action, including +any appeal of such action. This section shall survive the termination of this +License. + +13) Miscellaneous. This License represents the complete agreement concerning +the subject matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent necessary to +make it enforceable. + +14) Definition of "You" in This License. "You" throughout this License, whether +in upper or lower case, means an individual or a legal entity exercising rights +under, and complying with all of the terms of, this License. For legal +entities, "You" includes any entity that controls, is controlled by, or is +under common control with you. For purposes of this definition, "control" means +(i) the power, direct or indirect, to cause the direction or management of such +entity, whether by contract or otherwise, or (ii) ownership of fifty percent +(50%) or more of the outstanding shares, or (iii) beneficial ownership of such +entity. + +15) Right to Use. You may use the Original Work in all ways not otherwise +restricted or conditioned by this License or by law, and Licensor promises not +to interfere with or be responsible for such uses by You. + +This license is Copyright (C) 2003-2004 Lawrence E. Rosen. All rights reserved. +Permission is hereby granted to copy and distribute this license without +modification. This license may not be modified without the express written +permission of its copyright owner. \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/README.txt b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/README.txt new file mode 100644 index 00000000..71185459 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/README.txt @@ -0,0 +1,247 @@ +------------------------------------------------------------------------------- +dojox/app +------------------------------------------------------------------------------- +Project state: stable + +This project is licensed under the Dojo Tookit licensing scheme and contributions +provided under the Dojo CLA. +------------------------------------------------------------------------------- +Project authors + Dustin Machi + Stephen Zhang + Eric Wang + Ed Chatelain + Christophe Jolif +------------------------------------------------------------------------------- +Project description + +dojox/app is a small application framework providing a set of classes to manage the the lifecycle and behavior of a single page application delivered to a mobile or desktop platform. +The main class, Application, is responsible for providing the lifecycle of the application and is designed to be easily modified with additional custom behaviors. +An application instance contains views which provide the visible user interface. +The available views, module dependencies, and other information about the application are all passed into the Application class through a JSON configuration file. +------------------------------------------------------------------------------- +Dependencies: + +Dojo Core (dijit, dojox/mobile). +------------------------------------------------------------------------------- +Documentation + +config.json + +The config file defines all of the dependencies, application behaviors, top level views, and any other information required for the application to function. + +Example Config: +```javascript +{ + /* any object that complies with Dojo AMD loader configuration. */ + "loaderConfig" : { + "paths": { + "mypackage" : "can/be/found/here" + } + }, + + /* global application dependencies */ + "dependencies": [ + "dojox/mobile/Heading", + "dojo/mobile/RoundRect", + "my/custom/module" + ], + + /* Application Modules. These are implicitly added to the above set of dependencies */ + modules: [ + "dojox/app/module/history", + "my/custom/appModule" + ], + + /* Application Controllers. */ + "controllers": [ + "dojox/app/controllers/History", + "my/custom/appController" + ], + + /* The Application level HTML template. */ + template: "./views/example.html", + + /* Application level view controller. Application will have a root view even if it has no template. + "./views/myView.js" -- load controller from "./views/myView.js", + no controller -- no controller for this view */ + "controller": "./views/myView.js", + + /* the view to start on by default */ + "defaultView": "home", + + /* transition to use if none has been provided */ + "defaultTransition": "slide", + + /* Views */ + "views": { + + /* home is a top level dojox.app.view */ + "home": { + + /* dependencies specific to this view */ + "dependencies: [ + "dojox/mobile/ListItem", + "dojox/mobile/EdgeToEdgeCategory" + ], + + /* template to use for this view */ + template: "./views/home.html" + + /* view controller. "none" -- , + "./views/myHome.js" -- load controller from "./views/myHome.js", + no controller -- no controller for this view */ + }, + + /* tabs view contains three child views */ + "tabs": { + /* the tabs view template */ + "template": "./views/tabScene.html", + + /* the default view within tabs view */ + "defaultView": "tab1", + + /* when transitioning between tabs, use a flip animation by default */ + "defaultTransition": "flip", + + //the views available to tabs view + "views": { + "tab1":{ + "template": "./views/tabs/tab1.html" + /* no controller define for tab1 view, load tab1 view controller from the same location as the template. */ + }, + "tab2":{ + "template": "./views/tabs/tab2.html" + }, + "tab3":{ + "template": "./views/tabs/tab3.html" + } + }, + + /* dependencies specific to tabs view */ + "dependencies":["dojox/mobile/RoundRectList","dojox/mobile/ListItem", "dojox/mobile/EdgeToEdgeCategory"] + } + + } +} +``` + +Property descriptions + + - loaderConfig - This is the configuration that will be passed to the Dojo AMD loader. This allows to specify for example where the loader needs to find modules. + See: http://livedocs.dojotoolkit.org/loader/amd#module-identifiers + + - dependencies - These are the modules that are required for the application to run when defined at the root of the configuration. + When defined inside of a view, the dependency property defines modules which must be loaded before that view can be instantiated. + + - modules - The modules property defines application modules that will mixed into the Application class to control the lifecycle and behavior of the application. This property will become the array of mixins provided to a dojo/declare extending the base Application class. In other words, the Application class that is instantiated dynamically is created at run time using the base class and this list of modules. + + - controllers - The controllers property defines application controllers that will be loaded during application startup to respond to events of the application. The controllers bind events on application's root domNode and the events can be triggered by application's emit() method and documented actions. + + - template - This is the template/HTML that is used for the application when defined at the root of the configuration. + Within the context of a view, it is the template/HTML for defining the view. + + - controller - This is the view controller that is used for the application template view when defined at the root of the configuration. It implements the view's life cycle interface like init(), beforeActivate(), destroy(), etc. and allows one to control the view. + + - defaultView - The defaultView defines the startup view for the application. + + - defaultTransition - This is the default transition method for top level views when defined at the root of the configuration. + When defined within a view, it is the default transition method for the associated views only. + + - views - The views property is a nested set of objects defining the views available to the application. Details of views classes is discussed below. + + - stores - The dojo/store implementations that will be used by the application + + - models - The models (potentially dojox/mvc models) connecting to the stores and exposing data to the application. + + - id - The identifier of the application, a global variable with the id name is created by the application. + +Some additional properties, such as name and description are reserved for future use, but their exact use is still under development. + +The Application module: + +The Application class itself doesn't currently exist as an exported class. +This module exports a generation function, which when provided a configuration file will declare & instantiate the application class that will actually be used on a page. Finally it then starts it up at a specific node: + +```javascript + require(["dojox/json/ref", "dojox/app/main", "dojo/text!app/config.json"],function(json, Application, config){ + app = Application(json.parse(config)); + }); +``` + +The View module: + +The View module provides a View class to construct View instances, a template rendering engine to render view template and view lifecycle APIs. Each View can have one parent view and several children views. It provides a templated container to host the domNodes for the children views. Its purpose is to allow the layout of the view to be provided through an html template and to have a set of children views which the view transitions between. For example, to display a set of tabs, you would use a View with a child view for each tab. The view's template would define where within the view the children views are displayed and where any tab buttons and such are displayed. +In this case the "template", for the base View is pretty simple. It is a simple HTML content. However, nodes within the template can be tagged with data-app-constraint="top" (bottom, left, right) to define where that node and its children should be displayed. +For example: + +```html +
    +
    Tab View
    +
      +
    • Tab 1
    • +
    • Tab 2
    • +
    • Tab 3
    • +
    +
    +``` + +This template for the tabs view defines two areas with region top, a header and the tab buttons. The will be placed at the top of this main view when rendered. + +Normally, when using a BorderContainer, one would also have a data-app-constraint="center" section. In the case of a View however, the "center" region will be applied to the currently active view (the current tab for example). + +The application can also provide view controller modules to implement the View lifecyle APIs (like init(), destory(),...) for each view. The Transition controller controls the transition from one child view to another. This includes propagating transition events on to children if the active child is itself another view. + +The Controller module: + +The Controller module provides a base Class to control the application by binding events on application's root domNode. Several controllers required by the framework are implemented in dojox/app/controllers package: + + * Load controller: load view templates and view controllers + * Transition controller: respond to "startTransition" event and do transition between views + * Layout controller: perform views layout + * History controller: maintain application's history. This is based on HTML5 history APIs and will not work on platforms that do not support it like IE, Android 3 & 4, iOS4, etc. + * HistoryHash controller: maintain application's history. This is based on URL hash and has limitation if refresh the browser and back to an URL which out of current application's history stack. + +A developer using the dojox/app framwork can define additional custom controller by extending the base class (dojox/app/Controller) and specifying them in the application configuration file. The events binding to application's root domNode is done by default. +A developer can use Controller's bind() method to bind event to document, window or dojo/Evented object if needed. + +```javascript +define(["dojo/_base/lang", "dojo/_base/declare"], function(lang, declare){ + + return declare("myApp.myController", Controller, { + + constructor: function(app, events){ + // summary: + // bind "myEvent1" and "myEvent2" events on application's root domNode. + // bind "resize" event on window + // app: + // dojox.app application instance. + // events: + // {event : handler} + this.events = { + "myEvent1": this.myEvent1, + "myEvent2": this.myEvent2 + }; + this.inherited(arguments); + + // bind "resize" event on window + this.bind(window, "resize", this.onResize); + }, + + myEvent1: function(){ + // add your code here + }, + + myEvent2: function(){ + // add your code here + }, + + onResize: function(){ + // add your code here + } + }); +}); +``` diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/View.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/View.js new file mode 100644 index 00000000..7191cc24 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/View.js @@ -0,0 +1,76 @@ +//>>built +define("dojox/app/View",["require","dojo/when","dojo/on","dojo/_base/declare","dojo/_base/lang","dojo/Deferred","dijit/Destroyable","dijit/_TemplatedMixin","dijit/_WidgetsInTemplateMixin","./ViewBase","./utils/nls"],function(_1,_2,on,_3,_4,_5,_6,_7,_8,_9,_a){ +return _3("dojox.app.View",[_7,_8,_6,_9],{constructor:function(_b){ +},connect:function(_c,_d,_e){ +return this.own(on(_c,_d,_4.hitch(this,_e)))[0]; +},_loadTemplate:function(){ +if(this.templateString){ +return true; +}else{ +var _f=this.template; +var _10=this.dependencies?this.dependencies:[]; +if(_f){ +if(_f.indexOf("./")==0){ +_f="app/"+_f; +} +_10=_10.concat(["dojo/text!"+_f]); +} +var def=new _5(); +if(_10.length>0){ +var _11; +try{ +_11=_1.on?_1.on("error",_4.hitch(this,function(_12){ +if(def.isResolved()||def.isRejected()){ +return; +} +if(_12.info[0]&&_12.info[0].indexOf(this.template)>=0){ +def.resolve(false); +if(_11){ +_11.remove(); +} +} +})):null; +_1(_10,function(){ +def.resolve.call(def,arguments); +if(_11){ +_11.remove(); +} +}); +} +catch(e){ +def.resolve(false); +if(_11){ +_11.remove(); +} +} +}else{ +def.resolve(true); +} +var _13=new _5(); +_2(def,_4.hitch(this,function(){ +this.templateString=this.template?arguments[0][arguments[0].length-1]:"
    "; +_13.resolve(this); +})); +return _13; +} +},load:function(){ +var _14=new _5(); +var _15=this.inherited(arguments); +var _16=_a(this); +_2(_15,_4.hitch(this,function(){ +_2(_16,_4.hitch(this,function(nls){ +this.nls=_4.mixin({},this.parent.nls); +if(nls){ +_4.mixin(this.nls,nls); +} +_2(this._loadTemplate(),function(_17){ +_14.resolve(_17); +}); +})); +})); +return _14; +},_startup:function(){ +this.buildRendering(); +this.inherited(arguments); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/View.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/View.js.uncompressed.js new file mode 100644 index 00000000..15404ff8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/View.js.uncompressed.js @@ -0,0 +1,153 @@ +define("dojox/app/View", ["require", "dojo/when", "dojo/on", "dojo/_base/declare", "dojo/_base/lang", "dojo/Deferred", + "dijit/Destroyable", "dijit/_TemplatedMixin", "dijit/_WidgetsInTemplateMixin", "./ViewBase", "./utils/nls"], + function(require, when, on, declare, lang, Deferred, Destroyable, _TemplatedMixin, _WidgetsInTemplateMixin, ViewBase, nls){ + + return declare("dojox.app.View", [_TemplatedMixin, _WidgetsInTemplateMixin, Destroyable, ViewBase], { + // summary: + // View class inheriting from ViewBase adding templating & globalization capabilities. + constructor: function(params){ + // summary: + // Constructs a View instance either from a configuration or programmatically. + // + // example: + // | use configuration file + // | + // | // load view controller from views/simple.js by default + // | "simple":{ + // | "template": "myapp/views/simple.html", + // | "nls": "myapp/nls/simple" + // | "dependencies":["dojox/mobile/TextBox"] + // | } + // | + // | "home":{ + // | "template": "myapp/views/home.html", // no controller set to not use a view controller + // | "dependencies":["dojox/mobile/TextBox"] + // | } + // | "main":{ + // | "template": "myapp/views/main.html", + // | "controller": "myapp/views/main.js", // identify load view controller from views/main.js + // | "dependencies":["dojox/mobile/TextBox"] + // | } + // + // example: + // | var viewObj = new View({ + // | app: this.app, + // | id: this.id, + // | name: this.name, + // | parent: this, + // | templateString: this.templateString, + // | template: this.template, + // | controller: this.controller + // | }); + // | viewObj.start(); // start view + // + // params: + // view parameters, include: + // + // - app: the app + // - id: view id + // - name: view name + // - template: view template identifier. If templateString is not empty, this parameter is ignored. + // - templateString: view template string + // - controller: view controller module identifier + // - parent: parent view + // - children: children views + // - nls: nls definition module identifier + }, + + // _TemplatedMixin requires a connect method if data-dojo-attach-* are used + connect: function(obj, event, method){ + return this.own(on(obj, event, lang.hitch(this, method)))[0]; // handle + }, + + _loadTemplate: function(){ + // summary: + // load view HTML template and dependencies. + // tags: + // private + // + + if(this.templateString){ + return true; + }else{ + var tpl = this.template; + var deps = this.dependencies?this.dependencies:[]; + if(tpl){ + if(tpl.indexOf("./") == 0){ + tpl = "app/"+tpl; + } + deps = deps.concat(["dojo/text!"+tpl]); + } + var def = new Deferred(); + if(deps.length > 0){ + var requireSignal; + try{ + requireSignal = require.on ? require.on("error", lang.hitch(this, function(error){ + if(def.isResolved() || def.isRejected()){ + return; + } + if(error.info[0] && error.info[0].indexOf(this.template) >= 0 ){ + def.resolve(false); + if(requireSignal){ + requireSignal.remove(); + } + } + })) : null; + require(deps, function(){ + def.resolve.call(def, arguments); + if(requireSignal){ + requireSignal.remove(); + } + }); + }catch(e){ + def.resolve(false); + if(requireSignal){ + requireSignal.remove(); + } + } + }else{ + def.resolve(true); + } + var loadViewDeferred = new Deferred(); + when(def, lang.hitch(this, function(){ + this.templateString = this.template ? arguments[0][arguments[0].length - 1] : "
    "; + loadViewDeferred.resolve(this); + })); + return loadViewDeferred; + } + }, + + // start view + load: function(){ + var tplDef = new Deferred(); + var defDef = this.inherited(arguments); + var nlsDef = nls(this); + // when parent loading is done (controller), proceed with template + // (for data-dojo-* to work we need to wait for controller to be here, this is also + // useful when the controller is used as a layer for the view) + when(defDef, lang.hitch(this, function(){ + when(nlsDef, lang.hitch(this, function(nls){ + // we inherit from the parent NLS + this.nls = lang.mixin({}, this.parent.nls); + if(nls){ + // make sure template can access nls doing ${nls.myprop} + lang.mixin(this.nls, nls); + } + when(this._loadTemplate(), function(value){ + tplDef.resolve(value); + }); + })); + })); + return tplDef; + }, + + _startup: function(){ + // summary: + // startup widgets in view template. + // tags: + // private + this.buildRendering(); + this.inherited(arguments); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/ViewBase.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/ViewBase.js new file mode 100644 index 00000000..4c8c0bdf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/ViewBase.js @@ -0,0 +1,161 @@ +//>>built +define("dojox/app/ViewBase",["require","dojo/when","dojo/on","dojo/dom-attr","dojo/dom-style","dojo/_base/declare","dojo/_base/lang","dojo/Deferred","./utils/model","./utils/constraints"],function(_1,_2,on,_3,_4,_5,_6,_7,_8,_9){ +return _5("dojox.app.ViewBase",null,{constructor:function(_a){ +this.id=""; +this.name=""; +this.children={}; +this.selectedChildren={}; +this.loadedStores={}; +this._started=false; +_6.mixin(this,_a); +if(this.parent.views){ +_6.mixin(this,this.parent.views[this.name]); +} +},start:function(){ +if(this._started){ +return this; +} +this._startDef=new _7(); +_2(this.load(),_6.hitch(this,function(){ +this._createDataStore(this); +this._setupModel(); +})); +return this._startDef; +},load:function(){ +var _b=this._loadViewController(); +_2(_b,_6.hitch(this,function(_c){ +if(_c){ +_5.safeMixin(this,_c); +} +})); +return _b; +},_createDataStore:function(){ +if(this.parent.loadedStores){ +_6.mixin(this.loadedStores,this.parent.loadedStores); +} +if(this.stores){ +for(var _d in this.stores){ +if(_d.charAt(0)!=="_"){ +var _e=this.stores[_d].type?this.stores[_d].type:"dojo/store/Memory"; +var _f={}; +if(this.stores[_d].params){ +_6.mixin(_f,this.stores[_d].params); +} +try{ +var _10=_1(_e); +} +catch(e){ +throw new Error(_e+" must be listed in the dependencies"); +} +if(_f.data&&_6.isString(_f.data)){ +_f.data=_6.getObject(_f.data); +} +if(this.stores[_d].observable){ +try{ +var _11=_1("dojo/store/Observable"); +} +catch(e){ +throw new Error("dojo/store/Observable must be listed in the dependencies"); +} +this.stores[_d].store=_11(new _10(_f)); +}else{ +this.stores[_d].store=new _10(_f); +} +this.loadedStores[_d]=this.stores[_d].store; +} +} +} +},_setupModel:function(){ +if(!this.loadedModels){ +var _12; +try{ +_12=_8(this.models,this.parent,this.app); +} +catch(e){ +throw new Error("Error creating models: "+e.message); +} +_2(_12,_6.hitch(this,function(_13){ +if(_13){ +this.loadedModels=_6.isArray(_13)?_13[0]:_13; +} +this._startup(); +}),function(err){ +throw new Error("Error creating models: "+err.message); +}); +}else{ +this._startup(); +} +},_startup:function(){ +this._initViewHidden(); +this._needsResize=true; +this._startLayout(); +},_initViewHidden:function(){ +_4.set(this.domNode,"visibility","hidden"); +},_startLayout:function(){ +this.app.log(" > in app/ViewBase _startLayout firing layout for name=[",this.name,"], parent.name=[",this.parent.name,"]"); +if(!this.hasOwnProperty("constraint")){ +this.constraint=_3.get(this.domNode,"data-app-constraint")||"center"; +} +_9.register(this.constraint); +this.app.emit("app-initLayout",{"view":this,"callback":_6.hitch(this,function(){ +this.startup(); +this.app.log(" > in app/ViewBase calling init() name=[",this.name,"], parent.name=[",this.parent.name,"]"); +this.init(); +this._started=true; +if(this._startDef){ +this._startDef.resolve(this); +} +})}); +},_loadViewController:function(){ +var _14=new _7(); +var _15; +if(!this.controller){ +this.app.log(" > in app/ViewBase _loadViewController no controller set for view name=[",this.name,"], parent.name=[",this.parent.name,"]"); +_14.resolve(true); +return _14; +}else{ +_15=this.controller.replace(/(\.js)$/,""); +} +var _16; +try{ +var _17=_15; +var _18=_17.indexOf("./"); +if(_18>=0){ +_17=_15.substring(_18+2); +} +_16=_1.on?_1.on("error",function(_19){ +if(_14.isResolved()||_14.isRejected()){ +return; +} +if(_19.info[0]&&(_19.info[0].indexOf(_17)>=0)){ +_14.resolve(false); +if(_16){ +_16.remove(); +} +} +}):null; +if(_15.indexOf("./")==0){ +_15="app/"+_15; +} +_1([_15],function(_1a){ +_14.resolve(_1a); +if(_16){ +_16.remove(); +} +}); +} +catch(e){ +_14.reject(e); +if(_16){ +_16.remove(); +} +} +return _14; +},init:function(){ +},beforeActivate:function(){ +},afterActivate:function(){ +},beforeDeactivate:function(){ +},afterDeactivate:function(){ +},destroy:function(){ +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/ViewBase.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/ViewBase.js.uncompressed.js new file mode 100644 index 00000000..9389ec39 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/ViewBase.js.uncompressed.js @@ -0,0 +1,270 @@ +define("dojox/app/ViewBase", ["require", "dojo/when", "dojo/on", "dojo/dom-attr", "dojo/dom-style", "dojo/_base/declare", "dojo/_base/lang", + "dojo/Deferred", "./utils/model", "./utils/constraints"], + function(require, when, on, domAttr, domStyle, declare, lang, Deferred, model, constraints){ + return declare("dojox.app.ViewBase", null, { + // summary: + // View base class with model & controller capabilities. Subclass must implement rendering capabilities. + constructor: function(params){ + // summary: + // Constructs a ViewBase instance. + // params: + // view parameters, include: + // + // - app: the app + // - id: view id + // - name: view name + // - parent: parent view + // - controller: view controller module identifier + // - children: children views + this.id = ""; + this.name = ""; + this.children = {}; + this.selectedChildren = {}; + this.loadedStores = {}; + // private + this._started = false; + lang.mixin(this, params); + // mixin views configuration to current view instance. + if(this.parent.views){ + lang.mixin(this, this.parent.views[this.name]); + } + }, + + // start view + start: function(){ + // summary: + // start view object. + // load view template, view controller implement and startup all widgets in view template. + if(this._started){ + return this; + } + this._startDef = new Deferred(); + when(this.load(), lang.hitch(this, function(){ + // call setupModel, after setupModel startup will be called after startup the loadViewDeferred will be resolved + this._createDataStore(this); + this._setupModel(); + })); + return this._startDef; + }, + + load: function(){ + var vcDef = this._loadViewController(); + when(vcDef, lang.hitch(this, function(controller){ + if(controller){ + //lang.mixin(this, controller); + declare.safeMixin(this, controller); + } + })); + return vcDef; + }, + + _createDataStore: function(){ + // summary: + // Create data store instance for View specific stores + // + // TODO: move this into a common place for use by main and ViewBase + // + if(this.parent.loadedStores){ + lang.mixin(this.loadedStores, this.parent.loadedStores); + } + + if(this.stores){ + //create stores in the configuration. + for(var item in this.stores){ + if(item.charAt(0) !== "_"){//skip the private properties + var type = this.stores[item].type ? this.stores[item].type : "dojo/store/Memory"; + var config = {}; + if(this.stores[item].params){ + lang.mixin(config, this.stores[item].params); + } + // we assume the store is here through dependencies + try{ + var storeCtor = require(type); + }catch(e){ + throw new Error(type+" must be listed in the dependencies"); + } + if(config.data && lang.isString(config.data)){ + //get the object specified by string value of data property + //cannot assign object literal or reference to data property + //because json.ref will generate __parent to point to its parent + //and will cause infinitive loop when creating StatefulModel. + config.data = lang.getObject(config.data); + } + if(this.stores[item].observable){ + try{ + var observableCtor = require("dojo/store/Observable"); + }catch(e){ + throw new Error("dojo/store/Observable must be listed in the dependencies"); + } + this.stores[item].store = observableCtor(new storeCtor(config)); + }else{ + this.stores[item].store = new storeCtor(config); + } + this.loadedStores[item] = this.stores[item].store; // add this store to loadedStores for the view + } + } + } + }, + + _setupModel: function(){ + // summary: + // Load views model if it is not already loaded then call _startup. + // tags: + // private + + if(!this.loadedModels){ + var createPromise; + try{ + createPromise = model(this.models, this.parent, this.app); + }catch(e){ + throw new Error("Error creating models: "+e.message); + } + when(createPromise, lang.hitch(this, function(models){ + if(models){ + // if models is an array it comes from dojo/promise/all. Each array slot contains the same result object + // so pick slot 0. + this.loadedModels = lang.isArray(models)?models[0]:models; + } + this._startup(); + }), + function(err){ + throw new Error("Error creating models: "+err.message); + }); + }else{ // loadedModels already created so call _startup + this._startup(); + } + }, + + _startup: function(){ + // summary: + // startup widgets in view template. + // tags: + // private + + this._initViewHidden(); + this._needsResize = true; // flag used to be sure resize has been called before transition + + this._startLayout(); + }, + + _initViewHidden: function(){ + domStyle.set(this.domNode, "visibility", "hidden"); + }, + + _startLayout: function(){ + // summary: + // startup widgets in view template. + // tags: + // private + this.app.log(" > in app/ViewBase _startLayout firing layout for name=[",this.name,"], parent.name=[",this.parent.name,"]"); + + if(!this.hasOwnProperty("constraint")){ + this.constraint = domAttr.get(this.domNode, "data-app-constraint") || "center"; + } + constraints.register(this.constraint); + + + this.app.emit("app-initLayout", { + "view": this, + "callback": lang.hitch(this, function(){ + //start widget + this.startup(); + + // call view assistant's init() method to initialize view + this.app.log(" > in app/ViewBase calling init() name=[",this.name,"], parent.name=[",this.parent.name,"]"); + this.init(); + this._started = true; + if(this._startDef){ + this._startDef.resolve(this); + } + }) + }); + }, + + + _loadViewController: function(){ + // summary: + // Load view controller by configuration or by default. + // tags: + // private + // + var viewControllerDef = new Deferred(); + var path; + + if(!this.controller){ // no longer using this.controller === "none", if we dont have one it means none. + this.app.log(" > in app/ViewBase _loadViewController no controller set for view name=[",this.name,"], parent.name=[",this.parent.name,"]"); + viewControllerDef.resolve(true); + return viewControllerDef; + }else{ + path = this.controller.replace(/(\.js)$/, ""); + } + + var requireSignal; + try{ + var loadFile = path; + var index = loadFile.indexOf("./"); + if(index >= 0){ + loadFile = path.substring(index+2); + } + requireSignal = require.on ? require.on("error", function(error){ + if(viewControllerDef.isResolved() || viewControllerDef.isRejected()){ + return; + } + if(error.info[0] && (error.info[0].indexOf(loadFile) >= 0)){ + viewControllerDef.resolve(false); + if(requireSignal){ + requireSignal.remove(); + } + } + }) : null; + + if(path.indexOf("./") == 0){ + path = "app/"+path; + } + + require([path], function(controller){ + viewControllerDef.resolve(controller); + if(requireSignal){ + requireSignal.remove(); + } + }); + }catch(e){ + viewControllerDef.reject(e); + if(requireSignal){ + requireSignal.remove(); + } + } + return viewControllerDef; + }, + + init: function(){ + // summary: + // view life cycle init() + }, + + beforeActivate: function(){ + // summary: + // view life cycle beforeActivate() + }, + + afterActivate: function(){ + // summary: + // view life cycle afterActivate() + }, + + beforeDeactivate: function(){ + // summary: + // view life cycle beforeDeactivate() + }, + + afterDeactivate: function(){ + // summary: + // view life cycle afterDeactivate() + }, + + destroy: function(){ + // summary: + // view life cycle destroy() + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/build/buildControlApp.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/build/buildControlApp.js new file mode 100644 index 00000000..6d8eeaa5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/build/buildControlApp.js @@ -0,0 +1,9 @@ +define(["build/buildControlDefault"], function(bc){ + // module: + // dojox/app/build/buildControlApp + // summary: + // This module extend default build control module to add dojox/app build support + // enhance buildControl + bc.discoveryProcs.splice(0, 0, "dojox/app/build/discoverAppConfig"); + return bc; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/build/discoverAppConfig.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/build/discoverAppConfig.js new file mode 100644 index 00000000..608472bd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/build/discoverAppConfig.js @@ -0,0 +1,122 @@ +define([ + "build/argv", + "build/fs", + "build/buildControl", + "build/messages", + "build/process", + "dojox/json/ref" +], function(argv, fs, bc, messages, process, json){ + var parseViews = function(mids, mainLayer, views, params){ + for(var key in views){ + // ignore naming starting with _ (jsonref adding is own stuff in there) + if(key.indexOf("_") == 0){ + continue; + } + var view = views[key]; + // TODO deal with "./" shortcut & default view location (which relies on "./") + if(view.controller && view.controller != "none"){ + var mid = view.controller.replace(/(\.js)$/, ""); + if(!bc.layers[mid] && bc.multipleAppConfigLayers){ + bc.layers[mid] = { include: [], exclude: [ "dojo/dojo", mainLayer ] }; + mids = bc.layers[mid].include; + } + mids.push(mid); + } + if(view.template){ + // we need dojo/text to load templates, let's put it in the main layer in all cases + // as this will be shared by a lot of views + if(!params.text){ + params.text = true; + bc.layers[mainLayer].include.push("dojo/text"); + } + mids.push(view.template); + } + if(view.nls){ + // we use nls let's add dojo/i18n to the main layer as it will be shared by a lot of views + if(!params.nls){ + params.nls = true; + bc.layers[mainLayer].include.push("dojo/i18n"); + } + mids.push(view.nls); + } + if(view.dependencies){ + Array.prototype.splice.apply(mids, [ mids.length, 0 ].concat(view.dependencies)); + } + if(view.views){ + parseViews(mids, mainLayer, view.views, params); + } + } + }; + return function(){ + var config; + try{ + config = json.fromJson(fs.readFileSync(bc.getSrcModuleInfo(argv.args.appConfigFile, null, false).url)); + }catch(e){ + console.log(e); + } + if(config){ + var mids = [], params = {}; + if(config.loaderConfig){ + require(config.loaderConfig); + } + // main layer + var mainLayer; + if(!argv.args.appConfigLayer){ + // no layer specified, take the first one + for(var l in bc.layers){ + mainLayer = l; + break; + } + }else{ + mainLayer = argv.args.appConfigLayer; + if(!bc.layers[mainLayer]){ + bc.layers[mainLayer] = { include: [], exclude: [ "dojo/dojo"] }; + } + } + if(config.dependencies){ + mids = mids.concat(config.dependencies); + } + if(config.controllers){ + mids = mids.concat(config.controllers); + } + if(config.modules){ + mids = mids.concat(config.modules); + } + if(config.transit){ + mids.push(config.transit); + }else{ + mids.push("dojox/css3/transit"); + } + if(config.template){ + params.text = true; + bc.layers[mainLayer].include.push("dojo/text"); + mids.push(config.template); + } + if(config.controller && config.controller != "none"){ + mids.push(config.controller.replace(/(\.js)$/, "")); + } + if(config.nls){ + // we use nls let's add dojo/i18n to the main layer as it will be shared by a lot of views + params.nls = true; + bc.layers[mainLayer].include.push("dojo/i18n"); + mids.push(config.nls); + } + if(config.view){ + // we use a custom view class + mids.push(config.view); + }else{ + // regular view + mids.push("dojox/app/View"); + } + // go into the view children + if(config.views){ + parseViews(mids, mainLayer, config.views, params); + } + Array.prototype.splice.apply(bc.layers[mainLayer].include, [bc.layers[mainLayer].length, 0].concat(mids)); + }else{ + messages.log("pacify", argv.args.appConfigFile+" is not a valid dojox/app JSON config file"); + process.exit(-1); + } + }; +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/BorderLayout.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/BorderLayout.js new file mode 100644 index 00000000..59bbe901 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/BorderLayout.js @@ -0,0 +1,62 @@ +//>>built +define("dojox/app/controllers/BorderLayout",["dojo/_base/declare","dojo/dom-attr","dojo/dom-style","./LayoutBase","dijit/layout/BorderContainer","dijit/layout/StackContainer","dijit/layout/ContentPane","dijit/registry"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +return _1("dojox.app.controllers.BorderLayout",_4,{initLayout:function(_9){ +this.app.log("in app/controllers/BorderLayout.initLayout event.view.name=[",_9.view.name,"] event.view.parent.name=[",_9.view.parent.name,"]"); +var bc; +if(!this.borderLayoutCreated){ +this.borderLayoutCreated=true; +bc=new _5({id:this.app.id+"-BC",style:"height:100%;width:100%;border:1px solid black"}); +_9.view.parent.domNode.appendChild(bc.domNode); +bc.startup(); +}else{ +bc=_8.byId(this.app.id+"-BC"); +} +this.app.log("in app/controllers/BorderLayout.initLayout event.view.constraint=",_9.view.constraint); +var _a=_9.view.constraint; +if(_9.view.parent.id==this.app.id){ +var _b=_8.byId(_9.view.parent.id+"-"+_a); +if(_b){ +var _c=_8.byId(_9.view.id+"-cp-"+_a); +if(!_c){ +_c=new _7({id:_9.view.id+"-cp-"+_a}); +_c.addChild(_9.view); +_b.addChild(_c); +bc.addChild(_b); +}else{ +_c.domNode.appendChild(_9.view.domNode); +} +}else{ +var _d=this.app.borderLayoutNoSplitter||false; +var _e=new _6({doLayout:true,splitter:!_d,region:_a,id:_9.view.parent.id+"-"+_a}); +var _c=new _7({id:_9.view.id+"-cp-"+_a}); +_c.addChild(_9.view); +_e.addChild(_c); +bc.addChild(_e); +} +}else{ +_9.view.parent.domNode.appendChild(_9.view.domNode); +_2.set(_9.view.domNode,"data-app-constraint",_9.view.constraint); +} +this.inherited(arguments); +},hideView:function(_f){ +var bc=_8.byId(this.app.id+"-BC"); +var sc=_8.byId(_f.parent.id+"-"+_f.constraint); +if(bc&&sc){ +sc.removedFromBc=true; +bc.removeChild(sc); +} +},showView:function(_10){ +var sc=_8.byId(_10.parent.id+"-"+_10.constraint); +var cp=_8.byId(_10.id+"-cp-"+_10.constraint); +if(sc&&cp){ +if(sc.removedFromBc){ +sc.removedFromBc=false; +_8.byId(this.app.id+"-BC").addChild(sc); +_3.set(_10.domNode,"display",""); +} +_3.set(cp.domNode,"display",""); +sc.selectChild(cp); +sc.resize(); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/BorderLayout.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/BorderLayout.js.uncompressed.js new file mode 100644 index 00000000..9898363f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/BorderLayout.js.uncompressed.js @@ -0,0 +1,93 @@ +define("dojox/app/controllers/BorderLayout", ["dojo/_base/declare", "dojo/dom-attr", "dojo/dom-style", "./LayoutBase","dijit/layout/BorderContainer", + "dijit/layout/StackContainer", "dijit/layout/ContentPane", "dijit/registry"], +function(declare, domAttr, domStyle, LayoutBase, BorderContainer, StackContainer, ContentPane, registry){ + // module: + // dojox/app/controllers/BorderLayout + // summary: + // Will layout an application with a BorderContainer. + // Each view to be shown in a region of the BorderContainer will be wrapped in a StackContainer and a ContentPane. + // + + return declare("dojox.app.controllers.BorderLayout", LayoutBase, { + + initLayout: function(event){ + // summary: + // Response to dojox/app "app-initLayout" event which is setup in LayoutBase. + // The initLayout event is called once when the View is being created the first time. + // + // example: + // Use emit to trigger "app-initLayout" event, and this function will respond to the event. For example: + // | this.app.emit("app-initLayout", view); + // + // event: Object + // | {"view": view, "callback": function(){}}; + this.app.log("in app/controllers/BorderLayout.initLayout event.view.name=[",event.view.name,"] event.view.parent.name=[",event.view.parent.name,"]"); + + var bc; + if(!this.borderLayoutCreated){ // If the BorderContainer has not been created yet, create it. + this.borderLayoutCreated = true; + bc = new BorderContainer({id:this.app.id+"-BC", style: "height:100%;width:100%;border:1px solid black"}); + event.view.parent.domNode.appendChild(bc.domNode); // put the border container into the parent (app) + + bc.startup(); // startup the BorderContainer + }else{ + bc = registry.byId(this.app.id+"-BC"); + } + + this.app.log("in app/controllers/BorderLayout.initLayout event.view.constraint=",event.view.constraint); + var constraint = event.view.constraint; // constraint holds the region for this view, center, top etc. + + if(event.view.parent.id == this.app.id){ // If the parent of this view is the app we are working with the BorderContainer + var reg = registry.byId(event.view.parent.id+"-"+constraint); + if(reg){ // already has a stackContainer, just create the contentPane for this view and add it to the stackContainer. + var cp1 = registry.byId(event.view.id+"-cp-"+constraint); + if(!cp1){ + cp1 = new ContentPane({id:event.view.id+"-cp-"+constraint}); + cp1.addChild(event.view); // important to add the widget to the cp before adding cp to BorderContainer for height + reg.addChild(cp1); + bc.addChild(reg); + }else{ + cp1.domNode.appendChild(event.view.domNode); + } + }else{ // need a contentPane + // this is where the region (constraint) is set for the BorderContainer's StackContainer + var noSplitter = this.app.borderLayoutNoSplitter || false; + var sc1 = new StackContainer({doLayout: true, splitter:!noSplitter, region:constraint, id:event.view.parent.id+"-"+constraint}); + var cp1 = new ContentPane({id:event.view.id+"-cp-"+constraint}); + cp1.addChild(event.view); // should we use addChild or appendChild? + sc1.addChild(cp1); + bc.addChild(sc1); + } + }else{ // Not a top level page transition, so not changing a page in the BorderContainer, so handle it like Layout. + event.view.parent.domNode.appendChild(event.view.domNode); + domAttr.set(event.view.domNode, "data-app-constraint", event.view.constraint); + } + + this.inherited(arguments); + }, + + hideView: function(view){ + var bc = registry.byId(this.app.id+"-BC"); + var sc = registry.byId(view.parent.id+"-"+view.constraint); + if(bc && sc){ + sc.removedFromBc = true; + bc.removeChild(sc); + } + }, + + showView: function(view){ + var sc = registry.byId(view.parent.id+"-"+view.constraint); + var cp = registry.byId(view.id+"-cp-"+view.constraint); + if(sc && cp){ + if(sc.removedFromBc){ + sc.removedFromBc = false; + registry.byId(this.app.id+"-BC").addChild(sc); + domStyle.set(view.domNode, "display", ""); + } + domStyle.set(cp.domNode, "display", ""); + sc.selectChild(cp); + sc.resize(); + } + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/History.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/History.js new file mode 100644 index 00000000..1057d959 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/History.js @@ -0,0 +1,50 @@ +//>>built +define("dojox/app/controllers/History",["dojo/_base/lang","dojo/_base/declare","dojo/on","../Controller","../utils/hash","dojo/topic"],function(_1,_2,on,_3,_4,_5){ +return _2("dojox.app.controllers.History",_3,{_currentPosition:0,currentState:{},constructor:function(){ +this.events={"app-domNode":this.onDomNodeChange}; +if(this.app.domNode){ +this.onDomNodeChange({oldNode:null,newNode:this.app.domNode}); +} +this.bind(window,"popstate",_1.hitch(this,this.onPopState)); +},onDomNodeChange:function(_6){ +if(_6.oldNode!=null){ +this.unbind(_6.oldNode,"startTransition"); +} +this.bind(_6.newNode,"startTransition",_1.hitch(this,this.onStartTransition)); +},onStartTransition:function(_7){ +var _8=window.location.hash; +var _9=_4.getTarget(_8,this.app.defaultView); +var _a=_4.getParams(_8); +var _b=_1.clone(_7.detail); +_b.target=_b.title=_9; +_b.url=_8; +_b.params=_a; +_b.id=this._currentPosition; +if(history.length==1){ +history.pushState(_b,_b.href,_8); +} +_b.bwdTransition=_b.transition; +_1.mixin(this.currentState,_b); +history.replaceState(this.currentState,this.currentState.href,_8); +this._currentPosition+=1; +_7.detail.id=this._currentPosition; +var _c=_7.detail.url||"#"+_7.detail.target; +if(_7.detail.params){ +_c=_4.buildWithParams(_c,_7.detail.params); +} +_7.detail.fwdTransition=_7.detail.transition; +history.pushState(_7.detail,_7.detail.href,_c); +this.currentState=_1.clone(_7.detail); +_5.publish("/app/history/pushState",_7.detail.target); +},onPopState:function(_d){ +if((this.app.getStatus()!==this.app.lifecycle.STARTED)||!_d.state){ +return; +} +var _e=_d.state.id>built +define("dojox/app/controllers/HistoryHash",["dojo/_base/lang","dojo/_base/declare","dojo/topic","dojo/on","../Controller","../utils/hash","dojo/hash"],function(_1,_2,_3,on,_4,_5){ +return _2("dojox.app.controllers.HistoryHash",_4,{constructor:function(_6){ +this.events={"app-domNode":this.onDomNodeChange}; +if(this.app.domNode){ +this.onDomNodeChange({oldNode:null,newNode:this.app.domNode}); +} +_3.subscribe("/dojo/hashchange",_1.hitch(this,function(_7){ +this._onHashChange(_7); +})); +this._historyStack=[]; +this._historyLen=0; +this._historyDiff=0; +this._current=null; +this._next=null; +this._previous=null; +this._index=0; +this._oldHistoryLen=0; +this._newHistoryLen=0; +this._addToHistoryStack=false; +this._startTransitionEvent=false; +var _8=window.location.hash; +if(_8&&(_8.length>1)){ +_8=_8.substr(1); +} +this._historyStack.push({"hash":_8,"url":window.location.href,"detail":{target:_8}}); +this._historyLen=window.history.length; +this._index=this._historyStack.length-1; +this._current=_8; +this._historyDiff=window.history.length-this._historyStack.length; +},onDomNodeChange:function(_9){ +if(_9.oldNode!=null){ +this.unbind(_9.oldNode,"startTransition"); +} +this.bind(_9.newNode,"startTransition",_1.hitch(this,this.onStartTransition)); +},onStartTransition:function(_a){ +var _b=_a.detail.target; +var _c=/#(.+)/; +if(!_b&&_c.test(_a.detail.href)){ +_b=_a.detail.href.match(_c)[1]; +} +var _d=_a.detail.url||"#"+_b; +if(_a.detail.params){ +_d=_5.buildWithParams(_d,_a.detail.params); +} +this._oldHistoryLen=window.history.length; +window.location.hash=_d; +this._addToHistoryStack=true; +this._startTransitionEvent=true; +},_addHistory:function(_e){ +this._historyStack.push({"hash":_e,"url":window.location.href,"detail":{target:_e}}); +this._historyLen=window.history.length; +this._index=this._historyStack.length-1; +this._previous=this._current; +this._current=_e; +this._next=null; +this._historyDiff=window.history.length-this._historyStack.length; +this._addToHistoryStack=false; +},_onHashChange:function(_f){ +if(this._index<0||this._index>(window.history.length-1)){ +throw Error("Application history out of management."); +} +this._newHistoryLen=window.history.length; +if(this._oldHistoryLen>this._newHistoryLen){ +this._historyStack.splice((this._newHistoryLen-this._historyDiff-1),(this._historyStack.length-1)); +this._historyLen=this._historyStack.length; +this._oldHistoryLen=0; +} +if(this._addToHistoryStack&&(this._oldHistoryLen===this._newHistoryLen)){ +this._historyStack.splice((this._newHistoryLen-this._historyDiff-1),(this._historyStack.length-1)); +this._addHistory(_f); +return; +} +if(this._historyLen0;i--){ +if(_f===this._historyStack[i]["hash"]){ +_10=i; +break; +} +} +if(-1===_10){ +for(var i=this._index;i0){ +this._previous=this._historyStack[this._index-1]["hash"]; +}else{ +this._previous=null; +} +this._current=_11; +var _13=_5.getTarget(_11,this.app.defaultView); +_3.publish("/app/history/back",{"viewId":_13,"detail":_12}); +this.app.emit("app-transition",{viewId:_13,opts:_1.mixin({reverse:true},_12,{"params":_5.getParams(_11)})}); +},_forward:function(_14,_15){ +this.app.log("forward"); +this._previous=this._historyStack[this._index]["hash"]; +this._index++; +if(this._indexwindow.history.length-1)){ +throw Error("Application history.go steps out of management, index: "+_17+" length: "+window.history.length); +} +this._index=_17; +this._current=this._historyStack[_17]["hash"]; +this._previous=this._historyStack[_17-1]?this._historyStack[_17-1]["hash"]:null; +this._next=this._historyStack[_17+1]?this._historyStack[_17+1]["hash"]:null; +var _19=_5.getTarget(this._current,this.app.defaultView); +_3.publish("/app/history/go",{"viewId":_19,"step":_18,"detail":this._historyStack[_17]["detail"]}); +this.app.emit("app-transition",{viewId:_19,opts:_1.mixin({reverse:(_18<=0)},this._historyStack[_17]["detail"],{"params":_5.getParams(this._current)})}); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/HistoryHash.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/HistoryHash.js.uncompressed.js new file mode 100644 index 00000000..bed47f4e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/HistoryHash.js.uncompressed.js @@ -0,0 +1,291 @@ +define("dojox/app/controllers/HistoryHash", ["dojo/_base/lang", "dojo/_base/declare", "dojo/topic", "dojo/on", "../Controller", "../utils/hash", "dojo/hash"], + function(lang, declare, topic, on, Controller, hash){ + // module: + // dojox/app/controllers/HistoryHash + // summary: + // Bind "app-domNode" event on dojox/app application instance, + // Bind "startTransition" event on dojox/app application domNode, + // Bind "/dojo/hashchange" event on window object. + // Maintain history by history hash. + + return declare("dojox.app.controllers.HistoryHash", Controller, { + + constructor: function(app){ + // summary: + // Bind "app-domNode" event on dojox/app application instance, + // Bind "startTransition" event on dojox/app application domNode, + // subscribe "/dojo/hashchange" event. + // + // app: + // dojox/app application instance. + this.events = { + "app-domNode": this.onDomNodeChange + }; + if(this.app.domNode){ + this.onDomNodeChange({oldNode: null, newNode: this.app.domNode}); + } + topic.subscribe("/dojo/hashchange", lang.hitch(this, function(newhash){ + this._onHashChange(newhash); + })); + + this._historyStack = []; // application history stack + this._historyLen = 0; // current window.history length + this._historyDiff = 0; // the diff of window.history stack and application history stack + this._current = null; // current history item in application history stack + this._next = null; // next history item in application history stack + this._previous = null; // previous history item in application history stack + this._index = 0; // identify current history item's index in application history stack + this._oldHistoryLen = 0;// window.history stack length before hash change + this._newHistoryLen = 0;// window.history stack length after hash change + this._addToHistoryStack = false; + this._startTransitionEvent = false; + + // push the default page to the history stack + var currentHash = window.location.hash; + if(currentHash && (currentHash.length > 1)){ + currentHash = currentHash.substr(1); + } + this._historyStack.push({ + "hash": currentHash, + "url": window.location.href, + "detail": {target:currentHash} + }); + this._historyLen = window.history.length; + this._index = this._historyStack.length - 1; + this._current = currentHash; + + // get the diff of window.history and application history + this._historyDiff = window.history.length - this._historyStack.length; + }, + + onDomNodeChange: function(evt){ + if(evt.oldNode != null){ + this.unbind(evt.oldNode, "startTransition"); + } + this.bind(evt.newNode, "startTransition", lang.hitch(this, this.onStartTransition)); + }, + + onStartTransition: function(evt){ + // summary: + // Response to dojox/app "startTransition" event. + // + // example: + // Use "dojox/mobile/TransitionEvent" to trigger "startTransition" event, and this function will response the event. For example: + // | var transOpts = { + // | title:"List", + // | target:"items,list", + // | url: "#items,list" + // | params: {"param1":"p1value"} + // | }; + // | new TransitionEvent(domNode, transOpts, e).dispatch(); + // + // evt: Object + // transition options parameter + + var target = evt.detail.target; + var regex = /#(.+)/; + if(!target && regex.test(evt.detail.href)){ + target = evt.detail.href.match(regex)[1]; + } + + var currentHash = evt.detail.url || "#" + target; + + if(evt.detail.params){ + currentHash = hash.buildWithParams(currentHash, evt.detail.params); + } + + this._oldHistoryLen = window.history.length; + // pushState on iOS will not change location bar hash because of security. + // window.history.pushState(evt.detail, title, currentHash); + + // history.length will be changed by set location hash + // change url hash, to workaround iOS pushState not change address bar issue. + window.location.hash = currentHash; + + // The operation above will trigger hashchange. + // Use _addToHistoryStack flag to indicate the _onHashChange method should add this hash to history stack. + // When add hash to history stack, this flag should be set to false, we do this in _addHistory. + this._addToHistoryStack = true; + //set startTransition event flag to true if the hash change from startTransition event. + this._startTransitionEvent = true; + }, + + _addHistory: function(hash){ + // summary: + // Add hash to application history stack, update history management flags. + // + // hash: + // new hash should be added to _historyStack. + this._historyStack.push({ + "hash": hash, + "url": window.location.href, + "detail": {target:hash} + }); + + this._historyLen = window.history.length; + this._index = this._historyStack.length - 1; + + this._previous = this._current; + this._current = hash; + this._next = null; + + this._historyDiff = window.history.length - this._historyStack.length; + + // In order to make sure _addToHistoryStack flag invalid after add hash to history stack, + // we set this flag to false in every addHistory operation even if it's already false. + this._addToHistoryStack = false; + }, + + _onHashChange: function(currentHash){ + // summary: + // subscribe /dojo/hashchange and do add history, back, forward and go operation. + // + // currentHash: + // the new url hash when /dojo/hashchange is triggered. + + if(this._index < 0 || this._index > (window.history.length - 1)){ + throw Error("Application history out of management."); + } + + this._newHistoryLen = window.history.length; + + // Application history stack asynchronized with window.history, refresh application history stack. + if(this._oldHistoryLen > this._newHistoryLen){ + //console.log("need to refresh _historyStack, oldLen:"+this._oldHistoryLen+", newLen: "+this._newHistoryLen+", diff:"+this._historyDiff); + this._historyStack.splice((this._newHistoryLen - this._historyDiff - 1), (this._historyStack.length - 1)); + + // Reset _historyLen to make sure this._historyLen 0; i--){ + if(currentHash === this._historyStack[i]["hash"]){ + index = i; + break; + } + } + + //search in "forward" + if(-1 === index){ + for(var i = this._index; i < this._historyStack.length; i++){ + if(currentHash === this._historyStack[i]["hash"]){ + index = i; + break; + } + } + } + + if(0 < index < this._historyStack.length){ + this._go(index, (index - this._index)); + }else{ + this.app.log("go error. index out of history stack."); + } + } + } + // set startTransition event flag to false + this._startTransitionEvent = false; + }, + + _back: function(currentHash, detail){ + this.app.log("back"); + this._next = this._historyStack[this._index]["hash"]; + this._index--; + if(this._index > 0){ + this._previous = this._historyStack[this._index - 1]["hash"]; + }else{ + this._previous = null; + } + this._current = currentHash; + + var target = hash.getTarget(currentHash, this.app.defaultView); + + // publish history back event + topic.publish("/app/history/back", {"viewId": target, "detail": detail}); + + // transition to the target view + this.app.emit("app-transition", { + viewId: target, + opts: lang.mixin({reverse: true}, detail, {"params": hash.getParams(currentHash)}) + }); + }, + + _forward: function(currentHash, detail){ + this.app.log("forward"); + this._previous = this._historyStack[this._index]["hash"]; + this._index++; + if(this._index < this._historyStack.length - 1){ + this._next = this._historyStack[this._index + 1]["hash"]; + }else{ + this._next = null; + } + this._current = currentHash; + + var target = hash.getTarget(currentHash, this.app.defaultView); + + // publish history forward event + topic.publish("/app/history/forward", {"viewId": target, "detail": detail}); + + // transition to the target view + this.app.emit("app-transition", { + viewId: target, + opts: lang.mixin({reverse: false}, detail, {"params": hash.getParams(currentHash)}) + }); + }, + + _go: function(index, step){ + if(index < 0 || (index > window.history.length - 1)){ + throw Error("Application history.go steps out of management, index: "+index+" length: "+window.history.length); + } + + this._index = index; + this._current = this._historyStack[index]["hash"]; + this._previous = this._historyStack[index - 1] ? this._historyStack[index - 1]["hash"] : null; + this._next = this._historyStack[index + 1] ? this._historyStack[index + 1]["hash"] : null; + + var target = hash.getTarget(this._current, this.app.defaultView); + + // publish history go event + topic.publish("/app/history/go", {"viewId": target, "step": step, "detail": this._historyStack[index]["detail"]}); + + // transition to the target view + this.app.emit("app-transition", { + viewId: target, + opts: lang.mixin({reverse: (step <= 0)}, this._historyStack[index]["detail"], {"params": hash.getParams(this._current)}) + }); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Layout.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Layout.js new file mode 100644 index 00000000..a907b231 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Layout.js @@ -0,0 +1,119 @@ +//>>built +define("dojox/app/controllers/Layout",["dojo/_base/declare","dojo/_base/lang","dojo/_base/array","dojo/_base/window","dojo/query","dojo/dom-geometry","dojo/dom-attr","dojo/dom-style","dijit/registry","./LayoutBase","../utils/layout","../utils/constraints","dojo/sniff"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d){ +return _1("dojox.app.controllers.Layout",_a,{constructor:function(_e,_f){ +},onResize:function(){ +this._doResize(this.app); +this.resizeSelectedChildren(this.app); +},resizeSelectedChildren:function(w){ +for(var _10 in w.selectedChildren){ +if(w.selectedChildren[_10]&&w.selectedChildren[_10].domNode){ +this.app.log("in Layout resizeSelectedChildren calling resizeSelectedChildren calling _doResize for w.selectedChildren[hash].id="+w.selectedChildren[_10].id); +this._doResize(w.selectedChildren[_10]); +_3.forEach(w.selectedChildren[_10].domNode.children,function(_11){ +if(_9.byId(_11.id)&&_9.byId(_11.id).resize){ +_9.byId(_11.id).resize(); +} +}); +this.resizeSelectedChildren(w.selectedChildren[_10]); +} +} +},initLayout:function(_12){ +this.app.log("in app/controllers/Layout.initLayout event=",_12); +this.app.log("in app/controllers/Layout.initLayout event.view.parent.name=[",_12.view.parent.name,"]"); +if(!_12.view.domNode.parentNode||(_d("ie")==8&&!_12.view.domNode.parentElement)){ +if(this.app.useConfigOrder){ +_12.view.parent.domNode.appendChild(_12.view.domNode); +}else{ +this.addViewToParentDomByConstraint(_12); +} +} +_7.set(_12.view.domNode,"data-app-constraint",_12.view.constraint); +this.inherited(arguments); +},addViewToParentDomByConstraint:function(_13){ +var _14=_13.view.constraint; +if(_14==="bottom"){ +_13.view.parent.domNode.appendChild(_13.view.domNode); +}else{ +if(_14==="top"){ +_13.view.parent.domNode.insertBefore(_13.view.domNode,_13.view.parent.domNode.firstChild); +}else{ +if(_13.view.parent.domNode.children.length>0){ +for(var _15 in _13.view.parent.domNode.children){ +var _16=_13.view.parent.domNode.children[_15]; +var dir=_8.get(_13.view.parent.domNode,"direction"); +var _17=(dir==="ltr"); +var _18=_17?"left":"right"; +var _19=_17?"right":"left"; +if(_16.getAttribute&&_16.getAttribute("data-app-constraint")){ +var _1a=_16.getAttribute("data-app-constraint"); +if(_1a==="bottom"||(_1a===_19)||(_1a!=="top"&&(_14===_18))){ +_13.view.parent.domNode.insertBefore(_13.view.domNode,_16); +break; +} +} +} +} +} +} +if(!_13.view.domNode.parentNode||(_d("ie")==8&&!_13.view.domNode.parentElement)){ +_13.view.parent.domNode.appendChild(_13.view.domNode); +} +},_doResize:function(_1b){ +var _1c=_1b.domNode; +if(!_1c){ +this.app.log("Warning - View has not been loaded, in Layout _doResize view.domNode is not set for view.id="+_1b.id+" view=",_1b); +return; +} +var mb={}; +if(!("h" in mb)||!("w" in mb)){ +mb=_2.mixin(_6.getMarginBox(_1c),mb); +} +if(_1b!==this.app){ +var cs=_8.getComputedStyle(_1c); +var me=_6.getMarginExtents(_1c,cs); +var be=_6.getBorderExtents(_1c,cs); +var bb=(_1b._borderBox={w:mb.w-(me.w+be.w),h:mb.h-(me.h+be.h)}); +var pe=_6.getPadExtents(_1c,cs); +_1b._contentBox={l:_8.toPixelValue(_1c,cs.paddingLeft),t:_8.toPixelValue(_1c,cs.paddingTop),w:bb.w-pe.w,h:bb.h-pe.h}; +}else{ +_1b._contentBox={l:0,t:0,h:_4.global.innerHeight||_4.doc.documentElement.clientHeight,w:_4.global.innerWidth||_4.doc.documentElement.clientWidth}; +} +this.inherited(arguments); +},layoutView:function(_1d){ +if(_1d.view){ +this.inherited(arguments); +if(_1d.doResize){ +this._doResize(_1d.parent||this.app); +this._doResize(_1d.view); +} +} +},_doLayout:function(_1e){ +if(!_1e){ +console.warn("layout empty view."); +return; +} +this.app.log("in Layout _doLayout called for view.id="+_1e.id+" view=",_1e); +var _1f; +var _20=_c.getSelectedChild(_1e,_1e.constraint); +if(_20&&_20.isFullScreen){ +console.warn("fullscreen sceen layout"); +}else{ +_1f=_5("> [data-app-constraint]",_1e.domNode).map(function(_21){ +var w=_9.getEnclosingWidget(_21); +if(w){ +w._constraint=_7.get(_21,"data-app-constraint"); +return w; +} +return {domNode:_21,_constraint:_7.get(_21,"data-app-constraint")}; +}); +if(_20){ +_1f=_3.filter(_1f,function(c){ +return c.domNode&&c._constraint; +},_1e); +} +} +if(_1e._contentBox){ +_b.layoutChildren(_1e.domNode,_1e._contentBox,_1f); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Layout.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Layout.js.uncompressed.js new file mode 100644 index 00000000..2444148e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Layout.js.uncompressed.js @@ -0,0 +1,240 @@ +define("dojox/app/controllers/Layout", ["dojo/_base/declare", "dojo/_base/lang", "dojo/_base/array", "dojo/_base/window", + "dojo/query", "dojo/dom-geometry", "dojo/dom-attr", "dojo/dom-style", "dijit/registry", + "./LayoutBase", "../utils/layout", "../utils/constraints", "dojo/sniff"], +function(declare, lang, array, win, query, domGeom, domAttr, domStyle, registry, LayoutBase, layout, constraints, has){ + // module: + // dojox/app/controllers/Layout + // summary: + // Extends LayoutBase which binds "app-initLayout", "app-layoutView" and "app-resize" events on application instance. + + return declare("dojox.app.controllers.Layout", LayoutBase, { + + constructor: function(app, events){ + // summary: + // bind "app-initLayout" and "app-layoutView" events on application instance. + // + // app: + // dojox/app application instance. + // events: + // {event : handler} + }, + + onResize: function(){ + this._doResize(this.app); + // this is needed to resize the children on an orientation change or a resize of the browser. + // it was being done in _doResize, but was not needed for every call to _doResize. + this.resizeSelectedChildren(this.app); + }, + + + resizeSelectedChildren: function(w){ + for(var hash in w.selectedChildren){ // need this to handle all selectedChildren + if(w.selectedChildren[hash] && w.selectedChildren[hash].domNode){ + this.app.log("in Layout resizeSelectedChildren calling resizeSelectedChildren calling _doResize for w.selectedChildren[hash].id="+w.selectedChildren[hash].id); + this._doResize(w.selectedChildren[hash]); + // Call resize on child widgets, needed to get the scrollableView to resize correctly initially + array.forEach(w.selectedChildren[hash].domNode.children, function(child){ + if(registry.byId(child.id) && registry.byId(child.id).resize){ + registry.byId(child.id).resize(); + } + }); + + this.resizeSelectedChildren(w.selectedChildren[hash]); + } + } + }, + + initLayout: function(event){ + // summary: + // Response to dojox/app "app-initLayout" event. + // + // example: + // Use emit to trigger "app-initLayout" event, and this function will respond to the event. For example: + // | this.app.emit("app-initLayout", view); + // + // event: Object + // | {"view": view, "callback": function(){}}; + this.app.log("in app/controllers/Layout.initLayout event=",event); + this.app.log("in app/controllers/Layout.initLayout event.view.parent.name=[",event.view.parent.name,"]"); + + if (!event.view.domNode.parentNode || (has("ie") == 8 && !event.view.domNode.parentElement)) { + if(this.app.useConfigOrder){ + event.view.parent.domNode.appendChild(event.view.domNode); + }else{ + this.addViewToParentDomByConstraint(event); + } + } + domAttr.set(event.view.domNode, "data-app-constraint", event.view.constraint); + this.inherited(arguments); + }, + + addViewToParentDomByConstraint: function(event){ + // summary: + // Insert the view domNode into the parent domNode based upon the constraints. + // It should layout the children in this order: top, left, center, right, bottom + // Unless it is rtl then it should layout the children in this order: top, right, center, left, bottom + // + // event: Object + // | {"parent":parent, "view":view, "removeView": boolean} + var newViewConstraint = event.view.constraint; + if(newViewConstraint === "bottom"){ // if new is bottom always place last + event.view.parent.domNode.appendChild(event.view.domNode); + }else if(newViewConstraint === "top"){ // if new is top always place first + event.view.parent.domNode.insertBefore(event.view.domNode, event.view.parent.domNode.firstChild); + }else{ // need to compare new constraint to the previous ones + if(event.view.parent.domNode.children.length > 0){ // parent node has children, check constraints + // in this loop if previous is top or left skip it and look for next child, otherwise process it + for(var childIndex in event.view.parent.domNode.children){ + var child = event.view.parent.domNode.children[childIndex]; + var dir = domStyle.get(event.view.parent.domNode,"direction"); + var isltr = (dir === "ltr"); + var LEADING_VIEW = isltr ? "left" : "right"; + var TRAILING_VIEW = isltr ? "right" : "left"; + if(child.getAttribute && child.getAttribute("data-app-constraint")) { + var previousViewConstraint = child.getAttribute("data-app-constraint"); + // if previous is bottom or previous is Trailing + // or previous is not top and newView is Leading we need to insert before this child + if(previousViewConstraint === "bottom" || + (previousViewConstraint === TRAILING_VIEW) || + (previousViewConstraint !== "top" && + (newViewConstraint === LEADING_VIEW))){ + event.view.parent.domNode.insertBefore(event.view.domNode, child); + break; + } + } + } + } + } + // if the domNode was not added to the parent yet add it to the end now + if (!event.view.domNode.parentNode || (has("ie") == 8 && !event.view.domNode.parentElement)) { + event.view.parent.domNode.appendChild(event.view.domNode); + } + }, + + _doResize: function(view){ + // summary: + // resize view. + // + // view: Object + // view instance needs to do layout. + var node = view.domNode; + if(!node){ + this.app.log("Warning - View has not been loaded, in Layout _doResize view.domNode is not set for view.id="+view.id+" view=",view); + return; + } + + // If either height or width wasn't specified by the user, then query node for it. + // But note that setting the margin box and then immediately querying dimensions may return + // inaccurate results, so try not to depend on it. + var mb = {}; + if( !("h" in mb) || !("w" in mb) ){ + mb = lang.mixin(domGeom.getMarginBox(node), mb); // just use dojo/_base/html.marginBox() to fill in missing values + } + + // Compute and save the size of my border box and content box + // (w/out calling dojo/_base/html.contentBox() since that may fail if size was recently set) + if(view !== this.app){ + var cs = domStyle.getComputedStyle(node); + var me = domGeom.getMarginExtents(node, cs); + var be = domGeom.getBorderExtents(node, cs); + var bb = (view._borderBox = { + w: mb.w - (me.w + be.w), + h: mb.h - (me.h + be.h) + }); + var pe = domGeom.getPadExtents(node, cs); + view._contentBox = { + l: domStyle.toPixelValue(node, cs.paddingLeft), + t: domStyle.toPixelValue(node, cs.paddingTop), + w: bb.w - pe.w, + h: bb.h - pe.h + }; + }else{ + // if we are layouting the top level app the above code does not work when hiding address bar + // so let's use similar code to dojo mobile. + view._contentBox = { + l: 0, + t: 0, + h: win.global.innerHeight || win.doc.documentElement.clientHeight, + w: win.global.innerWidth || win.doc.documentElement.clientWidth + }; + } + + this.inherited(arguments); + }, + + layoutView: function(event){ + // summary: + // Response to dojox/app "app-layoutView" event. + // + // example: + // Use emit to trigger "app-layoutView" event, and this function will response the event. For example: + // | this.app.emit("app-layoutView", view); + // + // event: Object + // | {"parent":parent, "view":view, "removeView": boolean} + if(event.view){ + this.inherited(arguments); + // normally when called from transition doResize will be false, and the resize will only be done when the app-resize event is fired + if(event.doResize){ + this._doResize(event.parent || this.app); + this._doResize(event.view); + } + } + }, + + _doLayout: function(view){ + // summary: + // do view layout. + // + // view: Object + // view instance needs to do layout. + + if(!view){ + console.warn("layout empty view."); + return; + } + this.app.log("in Layout _doLayout called for view.id="+view.id+" view=",view); + + var children; + // TODO: probably need to handle selectedChildren here, not just selected child... + // TODO: why are we passing view here? not parent? This call does not seem logical? + var selectedChild = constraints.getSelectedChild(view, view.constraint); + if(selectedChild && selectedChild.isFullScreen){ + console.warn("fullscreen sceen layout"); + /* + fullScreenScene=true; + children=[{domNode: selectedChild.domNode,constraint: "center"}]; + query("> [constraint]",this.domNode).forEach(function(c){ + if(selectedChild.domNode!==c.domNode){ + dstyle(c.domNode,"display","none"); + } + }) + */ + }else{ + children = query("> [data-app-constraint]", view.domNode).map(function(node){ + var w = registry.getEnclosingWidget(node); + if(w){ + w._constraint = domAttr.get(node, "data-app-constraint"); + return w; + } + + return { + domNode: node, + _constraint: domAttr.get(node, "data-app-constraint") + }; + }); + + if(selectedChild){ + children = array.filter(children, function(c){ + // do not need to set display none here it is set in select. + return c.domNode && c._constraint; + }, view); + } + } + // We don't need to layout children if this._contentBox is null for the operation will do nothing. + if(view._contentBox){ + layout.layoutChildren(view.domNode, view._contentBox, children); + } + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/LayoutBase.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/LayoutBase.js new file mode 100644 index 00000000..6f044d84 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/LayoutBase.js @@ -0,0 +1,67 @@ +//>>built +define("dojox/app/controllers/LayoutBase",["dojo/_base/lang","dojo/_base/declare","dojo/sniff","dojo/_base/window","dojo/_base/config","dojo/dom-attr","dojo/topic","dojo/dom-style","../utils/constraints","../Controller"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a){ +return _2("dojox.app.controllers.LayoutBase",_a,{constructor:function(_b,_c){ +this.events={"app-initLayout":this.initLayout,"app-layoutView":this.layoutView,"app-resize":this.onResize}; +if(_5.mblHideAddressBar){ +_7.subscribe("/dojox/mobile/afterResizeAll",_1.hitch(this,this.onResize)); +}else{ +this.bind(_4.global,_3("ios")?"orientationchange":"resize",_1.hitch(this,this.onResize)); +} +},onResize:function(){ +this._doResize(this.app); +for(var _d in this.app.selectedChildren){ +if(this.app.selectedChildren[_d]){ +this._doResize(this.app.selectedChildren[_d]); +} +} +},initLayout:function(_e){ +_6.set(_e.view.domNode,"id",_e.view.id); +if(_e.callback){ +_e.callback(); +} +},_doLayout:function(_f){ +if(!_f){ +console.warn("layout empty view."); +} +},_doResize:function(_10){ +this.app.log("in LayoutBase _doResize called for view.id="+_10.id+" view=",_10); +this._doLayout(_10); +},layoutView:function(_11){ +var _12=_11.parent||this.app; +var _13=_11.view; +if(!_13){ +return; +} +this.app.log("in LayoutBase layoutView called for event.view.id="+_11.view.id); +var _14=_9.getSelectedChild(_12,_13.constraint); +if(_11.removeView){ +_13.viewShowing=false; +this.hideView(_13); +if(_13==_14){ +_9.setSelectedChild(_12,_13.constraint,null); +} +}else{ +if(_13!==_14){ +if(_14){ +_14.viewShowing=false; +if(_11.transition=="none"||_11.currentLastSubChildMatch!==_14){ +this.hideView(_14); +} +} +_13.viewShowing=true; +this.showView(_13); +_9.setSelectedChild(_12,_13.constraint,_13); +}else{ +_13.viewShowing=true; +} +} +},hideView:function(_15){ +this.app.log("logTransitions:","LayoutBase"+" setting domStyle display none for view.id=["+_15.id+"], visibility=["+_15.domNode.style.visibility+"]"); +_8.set(_15.domNode,"display","none"); +},showView:function(_16){ +if(_16.domNode){ +this.app.log("logTransitions:","LayoutBase"+" setting domStyle display to display for view.id=["+_16.id+"], visibility=["+_16.domNode.style.visibility+"]"); +_8.set(_16.domNode,"display",""); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/LayoutBase.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/LayoutBase.js.uncompressed.js new file mode 100644 index 00000000..1055d774 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/LayoutBase.js.uncompressed.js @@ -0,0 +1,140 @@ +define("dojox/app/controllers/LayoutBase", ["dojo/_base/lang", "dojo/_base/declare", "dojo/sniff", "dojo/_base/window", "dojo/_base/config", + "dojo/dom-attr", "dojo/topic", "dojo/dom-style", "../utils/constraints", "../Controller"], +function(lang, declare, has, win, config, domAttr, topic, domStyle, constraints, Controller){ + // module: + // dojox/app/controllers/LayoutBase + // summary: + // Bind "app-initLayout", "app-layoutView" and "app-resize" events on application instance. + + return declare("dojox.app.controllers.LayoutBase", Controller, { + + constructor: function(app, events){ + // summary: + // bind "app-initLayout", "app-layoutView" and "app-resize" events on application instance. + // + // app: + // dojox/app application instance. + // events: + // {event : handler} + this.events = { + "app-initLayout": this.initLayout, + "app-layoutView": this.layoutView, + "app-resize": this.onResize + }; + // if we are using dojo mobile & we are hiding address bar we need to be bit smarter and listen to + // dojo mobile events instead + if(config.mblHideAddressBar){ + topic.subscribe("/dojox/mobile/afterResizeAll", lang.hitch(this, this.onResize)); + }else{ + // bind to browsers orientationchange event for ios otherwise bind to browsers resize + this.bind(win.global, has("ios") ? "orientationchange" : "resize", lang.hitch(this, this.onResize)); + } + }, + + onResize: function(){ + this._doResize(this.app); + // this is needed to resize the children on an orientation change or a resize of the browser. + // it was being done in _doResize, but was not needed for every call to _doResize. + for(var hash in this.app.selectedChildren){ // need this to handle all selectedChildren + if(this.app.selectedChildren[hash]){ + this._doResize(this.app.selectedChildren[hash]); + } + } + + }, + + initLayout: function(event){ + // summary: + // Response to dojox/app "app-initLayout" event. + // + // example: + // Use emit to trigger "app-initLayout" event, and this function will respond to the event. For example: + // | this.app.emit("app-initLayout", view); + // + // event: Object + // | {"view": view, "callback": function(){}}; + domAttr.set(event.view.domNode, "id", event.view.id); // Set the id for the domNode + if(event.callback){ // if the event has a callback, call it. + event.callback(); + } + }, + + _doLayout: function(view){ + // summary: + // do view layout. + // + // view: Object + // view instance needs to do layout. + + if(!view){ + console.warn("layout empty view."); + } + }, + + _doResize: function(view){ + // summary: + // resize view. + // + // view: Object + // view instance needs to do resize. + this.app.log("in LayoutBase _doResize called for view.id="+view.id+" view=",view); + this._doLayout(view); + }, + + layoutView: function(event){ + // summary: + // Response to dojox/app "app-layoutView" event. + // + // example: + // Use emit to trigger "app-layoutView" event, and this function will response the event. For example: + // | this.app.emit("app-layoutView", view); + // + // event: Object + // | {"parent":parent, "view":view, "removeView": boolean} + var parent = event.parent || this.app; + var view = event.view; + + if(!view){ + return; + } + + this.app.log("in LayoutBase layoutView called for event.view.id="+event.view.id); + + // if the parent has a child in the view constraint it has to be hidden, and this view displayed. + var parentSelChild = constraints.getSelectedChild(parent, view.constraint); + if(event.removeView){ // if this view is being removed set display to none and the selectedChildren entry to null + view.viewShowing = false; + this.hideView(view); + if(view == parentSelChild){ + constraints.setSelectedChild(parent, view.constraint, null); // remove from selectedChildren + } + }else if(view !== parentSelChild){ + if(parentSelChild){ + // domStyle.set(parentSelChild.domNode, "zIndex", 25); + parentSelChild.viewShowing = false; + if(event.transition == "none" || event.currentLastSubChildMatch !== parentSelChild){ + this.hideView(parentSelChild); // only call hideView for transition none or when the transition will not hide it + } + } + view.viewShowing = true; + this.showView(view); + //domStyle.set(view.domNode, "zIndex", 50); + constraints.setSelectedChild(parent, view.constraint, view); + }else{ // this view is already the selected child and showing + view.viewShowing = true; + } + }, + + hideView: function(view){ + this.app.log("logTransitions:","LayoutBase"+" setting domStyle display none for view.id=["+view.id+"], visibility=["+view.domNode.style.visibility+"]"); + domStyle.set(view.domNode, "display", "none"); + }, + + showView: function(view){ + if(view.domNode){ + this.app.log("logTransitions:","LayoutBase"+" setting domStyle display to display for view.id=["+view.id+"], visibility=["+view.domNode.style.visibility+"]"); + domStyle.set(view.domNode, "display", ""); + } + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Load.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Load.js new file mode 100644 index 00000000..359d420e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Load.js @@ -0,0 +1,172 @@ +//>>built +define("dojox/app/controllers/Load",["require","dojo/_base/lang","dojo/_base/declare","dojo/on","dojo/Deferred","dojo/when","dojo/dom-style","../Controller"],function(_1,_2,_3,on,_4,_5,_6,_7,_8){ +return _3("dojox.app.controllers.Load",_7,{_waitingQueue:[],constructor:function(_9,_a){ +this.events={"app-init":this.init,"app-load":this.load}; +},init:function(_b){ +_5(this.createView(_b.parent,null,null,{templateString:_b.templateString,controller:_b.controller},null,_b.type),function(_c){ +_5(_c.start(),_b.callback); +}); +},load:function(_d){ +this.app.log("in app/controllers/Load event.viewId="+_d.viewId+" event =",_d); +var _e=_d.viewId||""; +var _f=[]; +var _10=_e.split("+"); +while(_10.length>0){ +var _11=_10.shift(); +_f.push(_11); +} +var def; +this.proceedLoadViewDef=new _4(); +if(_f&&_f.length>1){ +for(var i=0;i<_f.length-1;i++){ +var _12=_2.clone(_d); +_12.callback=null; +_12.viewId=_f[i]; +this._waitingQueue.push(_12); +} +this.proceedLoadView(this._waitingQueue.shift()); +_5(this.proceedLoadViewDef,_2.hitch(this,function(){ +var _13=_2.clone(_d); +_13.viewId=_f[i]; +def=this.loadView(_13); +return def; +})); +}else{ +def=this.loadView(_d); +return def; +} +},proceedLoadView:function(_14){ +var def=this.loadView(_14); +_5(def,_2.hitch(this,function(){ +this.app.log("in app/controllers/Load proceedLoadView back from loadView for event",_14); +var _15=this._waitingQueue.shift(); +if(_15){ +this.app.log("in app/controllers/Load proceedLoadView back from loadView calling this.proceedLoadView(nextEvt) for ",_15); +this.proceedLoadView(_15); +}else{ +this._waitingQueue=[]; +this.proceedLoadViewDef.resolve(); +} +})); +},loadView:function(_16){ +var _17=_16.parent||this.app; +var _18=_16.viewId||""; +var _19=_18.split(","); +var _1a=_19.shift(); +var _1b=_19.join(","); +var _1c=_16.params||""; +this._handleDefault=false; +this._defaultHasPlus=false; +var def=this.loadChild(_17,_1a,_1b,_1c,_16); +if(_16.callback){ +_5(def,_2.hitch(this,function(){ +if(this._handleDefault&&!_16.initLoad){ +this.app.log("logTransitions:",""," emit app-transition this.childViews=["+this.childViews+"]"); +this.app.emit("app-transition",{viewId:this.childViews,defaultView:true,forceTransitionNone:_16.forceTransitionNone,opts:{params:_1c}}); +} +_16.callback(this._handleDefault,this._defaultHasPlus); +})); +} +return def; +},createChild:function(_1d,_1e,_1f,_20){ +var id=_1d.id+"_"+_1e; +if(!_20&&_1d.views[_1e]&&_1d.views[_1e].defaultParams){ +_20=_1d.views[_1e].defaultParams; +} +var _21=_1d.children[id]; +if(_21){ +if(_20){ +_21.params=_20; +} +this.app.log("in app/controllers/Load createChild view is already loaded so return the loaded view with the new parms ",_21); +return _21; +} +var def=new _4(); +_5(this.createView(_1d,id,_1e,null,_20,_1d.views[_1e].type),function(_22){ +_1d.children[id]=_22; +_5(_22.start(),function(_23){ +def.resolve(_23); +}); +}); +return def; +},createView:function(_24,id,_25,_26,_27,_28){ +var def=new _4(); +var app=this.app; +_1([_28?_28:"../View"],function(_29){ +var _2a=new _29(_2.mixin({"app":app,"id":id,"name":_25,"parent":_24},{"params":_27},_26)); +def.resolve(_2a); +}); +return def; +},loadChild:function(_2b,_2c,_2d,_2e,_2f){ +if(!_2b){ +throw Error("No parent for Child '"+_2c+"'."); +} +if(!_2c){ +var _30=_2b.defaultView?_2b.defaultView.split(","):"default"; +if(_2b.defaultView&&!_2f.initLoad){ +var _31=this._getViewNamesFromDefaults(_2b); +this.app.log("logTransitions:","Load:loadChild","setting _handleDefault true for parent.defaultView childViews=["+_31+"]"); +this._handleDefault=true; +if(_2b.defaultView.indexOf("+")>=0){ +this._defaultHasPlus=true; +} +}else{ +_2c=_30.shift(); +_2d=_30.join(","); +} +} +var _32=new _4(); +var _33; +try{ +_33=this.createChild(_2b,_2c,_2d,_2e); +} +catch(ex){ +console.warn("logTransitions:","","emit reject load exception for =["+_2c+"]",ex); +_32.reject("load child '"+_2c+"' error."); +return _32.promise; +} +_5(_33,_2.hitch(this,function(_34){ +if(!_2d&&_34.defaultView){ +var _35=this._getViewNamesFromDefaults(_34); +this.app.log("logTransitions:","Load:loadChild"," setting _handleDefault = true child.defaultView childViews=["+_35+"]"); +this._handleDefault=true; +if(_34.defaultView.indexOf("+")>=0){ +this._defaultHasPlus=true; +} +this.childViews=_35; +_32.resolve(); +} +var _36=_2d.split(","); +_2c=_36.shift(); +_2d=_36.join(","); +if(_2c){ +var _37=this.loadChild(_34,_2c,_2d,_2e,_2f); +_5(_37,function(){ +_32.resolve(); +},function(){ +_32.reject("load child '"+_2c+"' error."); +}); +}else{ +_32.resolve(); +} +}),function(){ +console.warn("loadChildDeferred.REJECT() for ["+_2c+"] subIds=["+_2d+"]"); +_32.reject("load child '"+_2c+"' error."); +}); +return _32.promise; +},_getViewNamesFromDefaults:function(_38){ +var _39=_38.parent; +var _3a=_38.name; +var _3b=""; +while(_39!==this.app){ +_3a=_39.name+","+_3a; +_39=_39.parent; +} +var _3c=_38.defaultView.split("+"); +for(var _3d in _3c){ +_3c[_3d]=_3a+","+_3c[_3d]; +} +_3b=_3c.join("+"); +return _3b; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Load.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Load.js.uncompressed.js new file mode 100644 index 00000000..4f5fe815 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Load.js.uncompressed.js @@ -0,0 +1,333 @@ +define("dojox/app/controllers/Load", ["require", "dojo/_base/lang", "dojo/_base/declare", "dojo/on", "dojo/Deferred", "dojo/when", "dojo/dom-style", "../Controller"], + function(require, lang, declare, on, Deferred, when, domStyle, Controller, View){ + // module: + // dojox/app/controllers/Load + // summary: + // Bind "app-load" event on dojox/app application instance. + // Load child view and sub children at one time. + + return declare("dojox.app.controllers.Load", Controller, { + + + _waitingQueue:[], + + constructor: function(app, events){ + // summary: + // bind "app-load" event on application instance. + // + // app: + // dojox/app application instance. + // events: + // {event : handler} + this.events = { + "app-init": this.init, + "app-load": this.load + }; + }, + + init: function(event){ + // when the load controller received "app-init", before the lifecycle really starts we create the root view + // if any. This used to be done in main.js but must be done in Load to be able to create custom + // views from the Load controller. + //create and start child. return Deferred + when(this.createView(event.parent, null, null, { + templateString: event.templateString, + controller: event.controller + }, null, event.type), function(newView){ + when(newView.start(), event.callback); + }); + }, + + load: function(event){ + // summary: + // Response to dojox/app "loadArray" event. + // + // example: + // Use trigger() to trigger "loadArray" event, and this function will response the event. For example: + // | this.trigger("app-load", {"parent":parent, "viewId":viewId, "viewArray":viewArray, "callback":function(){...}}); + // + // event: Object + // LoadArray event parameter. It should be like this: {"parent":parent, "viewId":viewId, "viewArray":viewArray, "callback":function(){...}} + // returns: + // A dojo/Deferred object. + // The return value cannot return directly. + // If the caller need to use the return value, pass callback function in event parameter and process return value in callback function. + + this.app.log("in app/controllers/Load event.viewId="+event.viewId+" event =", event); + var views = event.viewId || ""; + var viewArray = []; + // create an array from the diff views in event.viewId (they are separated by +) + var parts = views.split('+'); + while(parts.length > 0){ + var viewId = parts.shift(); + viewArray.push(viewId); + } + + var def; + this.proceedLoadViewDef = new Deferred(); + if(viewArray && viewArray.length > 1){ + // loop thru the array calling loadView for each item in the array + for(var i = 0; i < viewArray.length-1; i++){ + var newEvent = lang.clone(event); + newEvent.callback = null; // skip callback until after last view is loaded. + newEvent.viewId = viewArray[i]; + this._waitingQueue.push(newEvent); + } + this.proceedLoadView(this._waitingQueue.shift()); + when(this.proceedLoadViewDef, lang.hitch(this, function(){ + // for last view leave the callback to be notified + var newEvent = lang.clone(event); + newEvent.viewId = viewArray[i]; + def = this.loadView(newEvent); + return def; + })); + }else{ + def = this.loadView(event); + return def; + } + }, + + proceedLoadView: function(loadEvt){ + // summary: + // Proceed load queue by FIFO by default. + // If load is in proceeding, add the next load to waiting queue. + // + // loadEvt: Object + // LoadArray event parameter. It should be like this: {"parent":parent, "viewId":viewId, "viewArray":viewArray, "callback":function(){...}} + + var def = this.loadView(loadEvt); + when(def, lang.hitch(this, function(){ + this.app.log("in app/controllers/Load proceedLoadView back from loadView for event", loadEvt); + var nextEvt = this._waitingQueue.shift(); + if(nextEvt){ + this.app.log("in app/controllers/Load proceedLoadView back from loadView calling this.proceedLoadView(nextEvt) for ",nextEvt); + this.proceedLoadView(nextEvt); + }else{ + this._waitingQueue = []; + this.proceedLoadViewDef.resolve(); + } + })); + }, + + loadView: function(loadEvent){ + // summary: + // Response to dojox/app "app-load" event. + // + // example: + // Use trigger() to trigger "app-load" event, and this function will response the event. For example: + // | this.trigger("app-load", {"parent":parent, "viewId":viewId, "callback":function(){...}}); + // + // loadEvent: Object + // Load event parameter. It should be like this: {"parent":parent, "viewId":viewId, "callback":function(){...}} + // returns: + // A dojo/Deferred object. + // The return value cannot return directly. + // If the caller need to use the return value, pass callback function in event parameter and process return value in callback function. + + var parent = loadEvent.parent || this.app; + var viewId = loadEvent.viewId || ""; + var parts = viewId.split(','); + var childId = parts.shift(); + var subIds = parts.join(","); + var params = loadEvent.params || ""; + + this._handleDefault = false; + this._defaultHasPlus = false; + var def = this.loadChild(parent, childId, subIds, params, loadEvent); + // call Load event callback + if(loadEvent.callback){ + when(def, lang.hitch(this, function(){ + if(this._handleDefault && !loadEvent.initLoad){ + this.app.log("logTransitions:",""," emit app-transition this.childViews=["+this.childViews+"]"); + this.app.emit("app-transition", { + viewId: this.childViews, + defaultView: true, + forceTransitionNone: loadEvent.forceTransitionNone, + opts: { params: params } + }); + } + loadEvent.callback(this._handleDefault, this._defaultHasPlus); + })) + } + return def; + }, + + createChild: function(parent, childId, subIds, params){ + // summary: + // Create a view instance if not already loaded by calling createView. This is typically a + // dojox/app/View. + // + // parent: Object + // parent of the view. + // childId: String + // view id need to be loaded. + // subIds: String + // sub views' id of this view. + // returns: + // If view exist, return the view object. + // Otherwise, create the view and return a dojo.Deferred instance. + + var id = parent.id + '_' + childId; + + // check for possible default params if no params were provided + if(!params && parent.views[childId] && parent.views[childId].defaultParams){ + params = parent.views[childId].defaultParams; + } + var view = parent.children[id]; + if(view){ + // set params to new value before returning + if(params){ + view.params = params; + } + this.app.log("in app/controllers/Load createChild view is already loaded so return the loaded view with the new parms ",view); + return view; + } + var def = new Deferred(); + // create and start child. return Deferred + when(this.createView(parent, id, childId, null, params, parent.views[childId].type), function(newView){ + parent.children[id] = newView; + when(newView.start(), function(view){ + def.resolve(view); + }); + }); + return def; + }, + + createView: function(parent, id, name, mixin, params, type){ + // summary: + // Create a dojox/app/View instance. Can be overridden to create different type of views. + // parent: Object + // parent of this view. + // id: String + // view id. + // name: String + // view name. + // mixin: String + // additional property to be mixed into the view (templateString, controller...) + // params: Object + // params of this view. + // type: String + // the MID of the View. If not provided "dojox/app/View". + // returns: + // A dojo/Deferred instance which will be resolved when the view will be instantiated. + // tags: + // protected + var def = new Deferred(); + var app = this.app; + require([type?type:"../View"], function(View){ + var newView = new View(lang.mixin({ + "app": app, + "id": id, + "name": name, + "parent": parent + }, { "params": params }, mixin)); + def.resolve(newView); + }); + return def; + }, + + loadChild: function(parent, childId, subIds, params, loadEvent){ + // summary: + // Load child and sub children views recursively. + // + // parent: Object + // parent of this view. + // childId: String + // view id need to be loaded. + // subIds: String + // sub views' id of this view. + // params: Object + // params of this view. + // loadEvent: Object + // the event passed for the load of this view. + // returns: + // A dojo/Deferred instance which will be resolved when all views loaded. + + if(!parent){ + throw Error("No parent for Child '" + childId + "'."); + } + + if(!childId){ + var parts = parent.defaultView ? parent.defaultView.split(",") : "default"; + if(parent.defaultView && !loadEvent.initLoad){ // in this case we need to call transfer to handle the defaultView calls to activate + var childViews = this._getViewNamesFromDefaults(parent); + this.app.log("logTransitions:","Load:loadChild","setting _handleDefault true for parent.defaultView childViews=["+childViews+"]"); + this._handleDefault = true; + if(parent.defaultView.indexOf("+") >= 0){ + this._defaultHasPlus = true; + } + }else{ + childId = parts.shift(); + subIds = parts.join(','); + } + + } + + var loadChildDeferred = new Deferred(); + var createPromise; + try{ + createPromise = this.createChild(parent, childId, subIds, params); + }catch(ex){ + console.warn("logTransitions:","","emit reject load exception for =["+childId+"]",ex); + loadChildDeferred.reject("load child '"+childId+"' error."); + return loadChildDeferred.promise; + } + when(createPromise, lang.hitch(this, function(child){ + // if no subIds and current view has default view, load the default view. + if(!subIds && child.defaultView){ // in this case we need to call transfer to handle the defaultView activate + var childViews = this._getViewNamesFromDefaults(child); + this.app.log("logTransitions:","Load:loadChild"," setting _handleDefault = true child.defaultView childViews=["+childViews+"]"); + this._handleDefault = true; + if(child.defaultView.indexOf("+") >= 0){ + this._defaultHasPlus = true; + } + this.childViews = childViews; + loadChildDeferred.resolve(); + } + + var parts = subIds.split(','); + childId = parts.shift(); + subIds = parts.join(','); + if(childId){ + var subLoadDeferred = this.loadChild(child, childId, subIds, params, loadEvent); + when(subLoadDeferred, function(){ + loadChildDeferred.resolve(); + }, + function(){ + loadChildDeferred.reject("load child '"+childId+"' error."); + }); + }else{ + loadChildDeferred.resolve(); + } + }), + function(){ + console.warn("loadChildDeferred.REJECT() for ["+childId+"] subIds=["+subIds+"]"); + loadChildDeferred.reject("load child '"+childId+"' error.") + }); + return loadChildDeferred.promise; // dojo/Deferred.promise + }, + + _getViewNamesFromDefaults: function(view){ + // summary: + // Build the full nested view name from the view and its defaultView(s) + // + // view: Object + // the view with defaultViews to process + // returns: + // A string with the full nested view names + var parent = view.parent; + var parentNames = view.name; + var viewNames = ""; + while(parent !== this.app){ + parentNames = parent.name+","+parentNames; + parent = parent.parent; + } + var parts = view.defaultView.split('+'); + for(var item in parts){ + parts[item] = parentNames+","+parts[item]; + } + viewNames = parts.join('+'); + return viewNames; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Transition.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Transition.js new file mode 100644 index 00000000..21e7a9b3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Transition.js @@ -0,0 +1,480 @@ +//>>built +define("dojox/app/controllers/Transition",["require","dojo/_base/lang","dojo/_base/declare","dojo/has","dojo/on","dojo/Deferred","dojo/when","dojo/dom-style","../Controller","../utils/constraints"],function(_1,_2,_3,_4,on,_5,_6,_7,_8,_9){ +var _a; +var _b="app/controllers/Transition"; +var _c="logTransitions:"; +return _3("dojox.app.controllers.Transition",_8,{proceeding:false,waitingQueue:[],constructor:function(_d,_e){ +this.events={"app-transition":this.transition,"app-domNode":this.onDomNodeChange}; +_1([this.app.transit||"dojox/css3/transit"],function(t){ +_a=t; +}); +if(this.app.domNode){ +this.onDomNodeChange({oldNode:null,newNode:this.app.domNode}); +} +},transition:function(_f){ +var F=_b+":transition"; +this.app.log(_c,F," "); +this.app.log(_c,F,"New Transition event.viewId=["+_f.viewId+"]"); +this.app.log(F,"event.viewId=["+_f.viewId+"]","event.opts=",_f.opts); +var _10=_f.viewId||""; +this.proceedingSaved=this.proceeding; +var _11=_10.split("+"); +var _12=_10.split("-"); +var _13,_14; +if(_11.length>0||_12.length>0){ +while(_11.length>1){ +_13=_11.shift(); +_14=_2.clone(_f); +if(_13.indexOf("-")>=0){ +var _15=_13.split("-"); +if(_15.length>0){ +_13=_15.shift(); +if(_13){ +_14._removeView=false; +_14.viewId=_13; +this.proceeding=true; +this.proceedTransition(_14); +_14=_2.clone(_f); +} +_13=_15.shift(); +if(_13){ +_14._removeView=true; +_14.viewId=_13; +this.proceeding=true; +this.proceedTransition(_14); +} +} +}else{ +_14._removeView=false; +_14.viewId=_13; +this.proceeding=true; +this.proceedTransition(_14); +} +} +_13=_11.shift(); +var _15=_13.split("-"); +if(_15.length>0){ +_13=_15.shift(); +} +if(_13.length>0){ +this.proceeding=this.proceedingSaved; +_f.viewId=_13; +_f._doResize=true; +_f._removeView=false; +this.proceedTransition(_f); +} +if(_15.length>0){ +while(_15.length>0){ +var _16=_15.shift(); +_14=_2.clone(_f); +_14.viewId=_16; +_14._removeView=true; +_14._doResize=true; +this.proceedTransition(_14); +} +} +}else{ +_f._doResize=true; +_f._removeView=false; +this.proceedTransition(_f); +} +},onDomNodeChange:function(evt){ +if(evt.oldNode!=null){ +this.unbind(evt.oldNode,"startTransition"); +} +this.bind(evt.newNode,"startTransition",_2.hitch(this,this.onStartTransition)); +},onStartTransition:function(evt){ +if(evt.preventDefault){ +evt.preventDefault(); +} +evt.cancelBubble=true; +if(evt.stopPropagation){ +evt.stopPropagation(); +} +var _17=evt.detail.target; +var _18=/#(.+)/; +if(!_17&&_18.test(evt.detail.href)){ +_17=evt.detail.href.match(_18)[1]; +} +this.transition({"viewId":_17,opts:_2.mixin({},evt.detail),data:evt.detail.data}); +},_addTransitionEventToWaitingQueue:function(_19){ +if(_19.defaultView&&this.waitingQueue.length>0){ +var _1a=false; +for(var i=0;i=0;i--){ +var v=_3c[i]; +if(_42||v.id==_41.id){ +_42=true; +if(!v._needsResize&&v.domNode){ +this.app.log(_c,F," setting domStyle visibility hidden for v.id=["+v.id+"], display=["+v.domNode.style.display+"], visibility=["+v.domNode.style.visibility+"]"); +this._setViewVisible(v,false); +} +} +} +} +if(_3d&&_3d._active){ +this._handleBeforeDeactivateCalls(_3e,this.nextLastSubChildMatch||_3b,_3d,_32,_3a); +} +if(_3b){ +this.app.log(F+" calling _handleBeforeActivateCalls next name=[",_3b.name,"], parent.name=[",_3b.parent.name,"]"); +this._handleBeforeActivateCalls(_3c,this.currentLastSubChildMatch||_3d,_32,_3a); +} +if(!_34){ +var _41=this.nextLastSubChildMatch||_3b; +var _43=this._getTransition(_41,_33,_39,_30,_36); +this.app.log(F+" calling _handleLayoutAndResizeCalls trans="+_43); +this._handleLayoutAndResizeCalls(_3c,_34,_35,_3a,_36,_43); +}else{ +for(var i=0;i<_3c.length;i++){ +var v=_3c[i]; +this.app.log(_c,F,"setting visibility visible for v.id=["+v.id+"]"); +if(v.domNode){ +this.app.log(_c,F," setting domStyle for removeView visibility visible for v.id=["+v.id+"], display=["+v.domNode.style.display+"]"); +this._setViewVisible(v,true); +} +} +} +var _44=true; +if(_a&&(!_37||this.currentLastSubChildMatch!=null)&&this.currentLastSubChildMatch!==_3b){ +_44=this._handleTransit(_3b,_33,this.currentLastSubChildMatch,_30,_39,_34,_36,_35); +} +_6(_44,_2.hitch(this,function(){ +if(_3b){ +this.app.log(F+" back from transit for next ="+_3b.name); +} +if(_34){ +var _45=this.nextLastSubChildMatch||_3b; +var _46=this._getTransition(_45,_33,_39,_30,_36); +this._handleLayoutAndResizeCalls(_3c,_34,_35,_3a,_36,_46); +} +this._handleAfterDeactivateCalls(_3e,this.nextLastSubChildMatch||_3b,_3d,_32,_3a); +this._handleAfterActivateCalls(_3c,_34,this.currentLastSubChildMatch||_3d,_32,_3a); +})); +return _44; +} +},_handleMatchingViews:function(_47,_48,_49,_4a,_4b,_4c,_4d,_4e,_4f,_50,_51,_52){ +var F=_b+":_handleMatchingViews"; +this._handleBeforeDeactivateCalls(_47,this.nextLastSubChildMatch||_48,_49,_4b,_4e); +this._handleAfterDeactivateCalls(_47,this.nextLastSubChildMatch||_48,_49,_4b,_4e); +this._handleBeforeActivateCalls(_47,this.currentLastSubChildMatch||_49,_4b,_4e); +var _53=this.nextLastSubChildMatch||_48; +var _54=this._getTransition(_53,_4a,_50,_52,_51); +this._handleLayoutAndResizeCalls(_47,_4c,_4d,_4e,_54); +this._handleAfterActivateCalls(_47,_4c,this.currentLastSubChildMatch||_49,_4b,_4e); +},_handleBeforeDeactivateCalls:function(_55,_56,_57,_58,_59){ +var F=_b+":_handleBeforeDeactivateCalls"; +if(_57._active){ +for(var i=_55.length-1;i>=0;i--){ +var v=_55[i]; +if(v&&v.beforeDeactivate&&v._active){ +this.app.log(_c,F,"beforeDeactivate for v.id="+v.id); +v.beforeDeactivate(_56,_58); +} +} +} +},_handleAfterDeactivateCalls:function(_5a,_5b,_5c,_5d,_5e){ +var F=_b+":_handleAfterDeactivateCalls"; +if(_5c&&_5c._active){ +for(var i=0;i<_5a.length;i++){ +var v=_5a[i]; +if(v&&v.beforeDeactivate&&v._active){ +this.app.log(_c,F,"afterDeactivate for v.id="+v.id); +v.afterDeactivate(_5b,_5d); +v._active=false; +} +} +} +},_handleBeforeActivateCalls:function(_5f,_60,_61,_62){ +var F=_b+":_handleBeforeActivateCalls"; +for(var i=_5f.length-1;i>=0;i--){ +var v=_5f[i]; +this.app.log(_c,F,"beforeActivate for v.id="+v.id); +v.beforeActivate(_60,_61); +} +},_handleLayoutAndResizeCalls:function(_63,_64,_65,_66,_67,_68){ +var F=_b+":_handleLayoutAndResizeCalls"; +var _69=_64; +for(var i=0;i<_63.length;i++){ +var v=_63[i]; +this.app.log(_c,F,"emit layoutView v.id=["+v.id+"] removeView=["+_69+"]"); +this.app.emit("app-layoutView",{"parent":v.parent,"view":v,"removeView":_69,"doResize":false,"transition":_68,"currentLastSubChildMatch":this.currentLastSubChildMatch}); +_69=false; +} +if(_65){ +this.app.log(_c,F,"emit doResize called"); +this.app.emit("app-resize"); +if(_68=="none"){ +this._showSelectedChildren(this.app); +} +} +},_showSelectedChildren:function(w){ +var F=_b+":_showSelectedChildren"; +this.app.log(_c,F," setting domStyle visibility visible for w.id=["+w.id+"], display=["+w.domNode.style.display+"], visibility=["+w.domNode.style.visibility+"]"); +this._setViewVisible(w,true); +w._needsResize=false; +for(var _6a in w.selectedChildren){ +if(w.selectedChildren[_6a]&&w.selectedChildren[_6a].domNode){ +this.app.log(_c,F," calling _showSelectedChildren for w.selectedChildren[hash].id="+w.selectedChildren[_6a].id); +this._showSelectedChildren(w.selectedChildren[_6a]); +} +} +},_setViewVisible:function(v,_6b){ +if(_6b){ +_7.set(v.domNode,"visibility","visible"); +}else{ +_7.set(v.domNode,"visibility","hidden"); +} +},_handleAfterActivateCalls:function(_6c,_6d,_6e,_6f,_70){ +var F=_b+":_handleAfterActivateCalls"; +var _71=0; +if(_6d&&_6c.length>1){ +_71=1; +} +for(var i=_71;i<_6c.length;i++){ +var v=_6c[i]; +if(v.afterActivate){ +this.app.log(_c,F,"afterActivate for v.id="+v.id); +v.afterActivate(_6e,_6f); +v._active=true; +} +} +},_getNextSubViewArray:function(_72,_73,_74){ +var F=_b+":_getNextSubViewArray"; +var _75=[]; +var p=_73||_74; +if(_72){ +_75=_72.split(","); +} +var _76=[p]; +for(var i=0;i<_75.length;i++){ +toId=_75[i]; +var v=p.children[p.id+"_"+toId]; +if(v){ +_76.push(v); +p=v; +} +} +_76.reverse(); +return _76; +},_getCurrentSubViewArray:function(_77,_78,_79){ +var F=_b+":_getCurrentSubViewArray"; +var _7a=[]; +var _7b,_7c,_7d; +var p=_77; +this.currentLastSubChildMatch=null; +this.nextLastSubChildMatch=null; +for(var i=_78.length-1;i>=0;i--){ +_7b=_78[i].constraint; +_7c=typeof (_7b); +_7d=(_7c=="string"||_7c=="number")?_7b:_7b.__hash; +if(p&&p.selectedChildren&&p.selectedChildren[_7d]){ +if(p.selectedChildren[_7d]==_78[i]){ +this.currentLastSubChildMatch=p.selectedChildren[_7d]; +this.nextLastSubChildMatch=_78[i]; +_7a.push(this.currentLastSubChildMatch); +p=this.currentLastSubChildMatch; +}else{ +this.currentLastSubChildMatch=p.selectedChildren[_7d]; +_7a.push(this.currentLastSubChildMatch); +this.nextLastSubChildMatch=_78[i]; +if(!_79){ +var _7e=_9.getAllSelectedChildren(this.currentLastSubChildMatch); +_7a=_7a.concat(_7e); +} +break; +} +}else{ +this.currentLastSubChildMatch=null; +this.nextLastSubChildMatch=_78[i]; +break; +} +} +if(_79){ +var _7e=_9.getAllSelectedChildren(p); +_7a=_7a.concat(_7e); +} +return _7a; +},_getNamesFromArray:function(_7f,_80){ +var F=_b+":_getNamesFromArray"; +var _81=""; +if(_80){ +for(var i=_7f.length-1;i>=0;i--){ +_81=_81?_81+","+_7f[i].name:_7f[i].name; +} +}else{ +for(var i=0;i<_7f.length;i++){ +_81=_81?_81+","+_7f[i].name:_7f[i].name; +} +} +return _81; +},_handleTransit:function(_82,_83,_84,_85,_86,_87,_88,_89){ +var F=_b+":_handleTransit"; +var _8a=this.nextLastSubChildMatch||_82; +var _8b=_2.mixin({},_85); +_8b=_2.mixin({},_8b,{reverse:(_8b.reverse||_8b.transitionDir===-1)?true:false,transition:this._getTransition(_8a,_83,_86,_8b,_88)}); +if(_87){ +_8a=null; +} +if(_84){ +this.app.log(_c,F,"transit FROM currentLastSubChild.id=["+_84.id+"]"); +} +if(_8a){ +if(_8b.transition!=="none"){ +if(!_89&&_8a._needsResize){ +this.app.log(_c,F,"emit doResize called from _handleTransit"); +this.app.emit("app-resize"); +} +this.app.log(_c,F," calling _showSelectedChildren for w3.id=["+_8a.id+"], display=["+_8a.domNode.style.display+"], visibility=["+_8a.domNode.style.visibility+"]"); +this._showSelectedChildren(this.app); +} +this.app.log(_c,F,"transit TO nextLastSubChild.id=["+_8a.id+"] transition=["+_8b.transition+"]"); +}else{ +this._showSelectedChildren(this.app); +} +return _a(_84&&_84.domNode,_8a&&_8a.domNode,_8b); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Transition.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Transition.js.uncompressed.js new file mode 100644 index 00000000..ab1c74e1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/controllers/Transition.js.uncompressed.js @@ -0,0 +1,781 @@ +define("dojox/app/controllers/Transition", ["require", "dojo/_base/lang", "dojo/_base/declare", "dojo/has", "dojo/on", "dojo/Deferred", "dojo/when", + "dojo/dom-style", "../Controller", "../utils/constraints"], + function(require, lang, declare, has, on, Deferred, when, domStyle, Controller, constraints){ + + var transit; + var MODULE = "app/controllers/Transition"; + var LOGKEY = "logTransitions:"; + + // module: + // dojox/app/controllers/Transition + // Bind "app-transition" event on dojox/app application instance. + // Do transition from one view to another view. + return declare("dojox.app.controllers.Transition", Controller, { + + proceeding: false, + + waitingQueue:[], + + constructor: function(app, events){ + // summary: + // bind "app-transition" event on application instance. + // + // app: + // dojox/app application instance. + // events: + // {event : handler} + this.events = { + "app-transition": this.transition, + "app-domNode": this.onDomNodeChange + }; + require([this.app.transit || "dojox/css3/transit"], function(t){ + transit = t; + }); + if(this.app.domNode){ + this.onDomNodeChange({oldNode: null, newNode: this.app.domNode}); + } + }, + + transition: function(event){ + // summary: + // Response to dojox/app "app-transition" event. + // + // example: + // Use emit to trigger "app-transition" event, and this function will response to the event. For example: + // | this.app.emit("app-transition", {"viewId": viewId, "opts": opts}); + // + // event: Object + // "app-transition" event parameter. It should be like: {"viewId": viewId, "opts": opts} + var F = MODULE+":transition"; + this.app.log(LOGKEY,F," "); + this.app.log(LOGKEY,F,"New Transition event.viewId=["+event.viewId+"]"); + this.app.log(F,"event.viewId=["+event.viewId+"]","event.opts=",event.opts); + + var viewsId = event.viewId || ""; + this.proceedingSaved = this.proceeding; + var parts = viewsId.split('+'); + var removePartsTest = viewsId.split('-'); + var viewId, newEvent; + if(parts.length > 0 || removePartsTest.length > 0){ + while(parts.length > 1){ + viewId = parts.shift(); + newEvent = lang.clone(event); + if(viewId.indexOf("-") >= 0){ // there is a remove + var removeParts = viewId.split('-'); + if(removeParts.length > 0){ + viewId = removeParts.shift(); + if(viewId){ + newEvent._removeView = false; + newEvent.viewId = viewId; + this.proceeding = true; + this.proceedTransition(newEvent); + newEvent = lang.clone(event); + } + viewId = removeParts.shift(); + if(viewId){ + newEvent._removeView = true; + newEvent.viewId = viewId; + this.proceeding = true; + this.proceedTransition(newEvent); + } + } + }else{ + newEvent._removeView = false; + newEvent.viewId = viewId; + this.proceeding = true; + this.proceedTransition(newEvent); + } + } + viewId = parts.shift(); + var removeParts = viewId.split('-'); + if(removeParts.length > 0){ + viewId = removeParts.shift(); + } + if(viewId.length > 0){ // check viewId.length > 0 to skip this section for a transition with only -viewId + this.proceeding = this.proceedingSaved; + event.viewId = viewId; + event._doResize = true; // at the end of the last transition call resize + event._removeView = false; + this.proceedTransition(event); + } + if(removeParts.length > 0){ + while(removeParts.length > 0){ + var remViewId = removeParts.shift(); + newEvent = lang.clone(event); + newEvent.viewId = remViewId; + newEvent._removeView = true; + newEvent._doResize = true; // at the end of the last transition call resize + this.proceedTransition(newEvent); + } + } + }else{ + event._doResize = true; // at the end of the last transition call resize + event._removeView = false; + this.proceedTransition(event); + } + }, + + onDomNodeChange: function(evt){ + if(evt.oldNode != null){ + this.unbind(evt.oldNode, "startTransition"); + } + this.bind(evt.newNode, "startTransition", lang.hitch(this, this.onStartTransition)); + }, + + onStartTransition: function(evt){ + // summary: + // Response to dojox/app "startTransition" event. + // + // example: + // Use "dojox/mobile/TransitionEvent" to trigger "startTransition" event, and this function will response the event. For example: + // | var transOpts = { + // | title:"List", + // | target:"items,list", + // | url: "#items,list", + // | data: {} + // | }; + // | new TransitionEvent(domNode, transOpts, e).dispatch(); + // + // evt: Object + // transition options parameter + + // prevent event from bubbling to window and being + // processed by dojox/mobile/ViewController + if(evt.preventDefault){ + evt.preventDefault(); + } + evt.cancelBubble = true; + if(evt.stopPropagation){ + evt.stopPropagation(); + } + + var target = evt.detail.target; + var regex = /#(.+)/; + if(!target && regex.test(evt.detail.href)){ + target = evt.detail.href.match(regex)[1]; + } + + // transition to the target view + this.transition({ "viewId":target, opts: lang.mixin({}, evt.detail), data: evt.detail.data }); + }, + + _addTransitionEventToWaitingQueue: function(transitionEvt){ + if(transitionEvt.defaultView && this.waitingQueue.length > 0){ // need to test for defaultView to position this view correctly + var addedEvt = false; + for(var i = 0; i < this.waitingQueue.length; i++){ + var evt = this.waitingQueue[i]; + if(!evt.defaultView){ + this.waitingQueue.splice(i,0,transitionEvt); // insert before first non defaultView + addedEvt = true; + break; + } + } + if(!addedEvt){ + this.waitingQueue.push(transitionEvt); + } + }else{ + this.waitingQueue.push(transitionEvt); + } + }, + proceedTransition: function(transitionEvt){ + // summary: + // Proceed transition queue by FIFO by default. + // If transition is in proceeding, add the next transition to waiting queue. + // + // transitionEvt: Object + // "app-transition" event parameter. It should be like: {"viewId":viewId, "opts":opts} + var F = MODULE+":proceedTransition"; + + if(this.proceeding){ + this._addTransitionEventToWaitingQueue(transitionEvt); + this.app.log(F+" added this event to waitingQueue", transitionEvt); + this.processingQueue = false; + return; + } + // If there are events waiting, needed to have the last in be the last processed, so add it to waitingQueue + // process the events in order. + this.app.log(F+" this.waitingQueue.length ="+ this.waitingQueue.length+ " this.processingQueue="+this.processingQueue); + if(this.waitingQueue.length > 0 && !this.processingQueue){ + this.processingQueue = true; + this._addTransitionEventToWaitingQueue(transitionEvt); + this.app.log(F+" added this event to waitingQueue passed proceeding", transitionEvt); + transitionEvt = this.waitingQueue.shift(); + this.app.log(F+" shifted waitingQueue to process", transitionEvt); + } + + this.proceeding = true; + + this.app.log(F+" calling trigger load", transitionEvt); + if(!transitionEvt.opts){ + transitionEvt.opts = {}; + } + var params = transitionEvt.params || transitionEvt.opts.params; + this.app.emit("app-load", { + "viewId": transitionEvt.viewId, + "params": params, + "forceTransitionNone": transitionEvt.forceTransitionNone, + "callback": lang.hitch(this, function(needToHandleDefaultView, defaultHasPlus){ + if(needToHandleDefaultView){ // do not process this view if needToHandleDefaultView true + this.proceeding = false; + this.processingQueue = true; + // use pop instead of shift here to get the last event for the defaultView when the default does not have a + + // use shift when it has a + or the defaults will be out of order but it can move the default to be after other views if we are processing views with a + + var nextEvt = (defaultHasPlus) ? this.waitingQueue.shift() : this.waitingQueue.pop(); + if(nextEvt){ + this.proceedTransition(nextEvt); + } + }else{ + var transitionDef = this._doTransition(transitionEvt.viewId, transitionEvt.opts, params, transitionEvt.opts.data, this.app, transitionEvt._removeView, transitionEvt._doResize, transitionEvt.forceTransitionNone); + when(transitionDef, lang.hitch(this, function(){ + this.proceeding = false; + this.processingQueue = true; + var nextEvt = this.waitingQueue.shift(); + if(nextEvt){ + this.proceedTransition(nextEvt); + } + })); + } + }) + }); + }, + + _getTransition: function(nextView, parent, transitionTo, opts, forceTransitionNone){ + // summary: + // Get view's transition type from the config for the view or from the parent view recursively. + // If not available use the transition option otherwise get view default transition type in the + // config from parent view. + // + // parent: Object + // view's parent + // transitionTo: Object + // view to transition to + // opts: Object + // transition options + // forceTransitionNone: boolean + // true if the transition type should be forced to none, used for the initial defaultView + // + // returns: + // transition type like "slide", "fade", "flip" or "none". + if(forceTransitionNone){ + return "none"; + } + var parentView = parent; + var transition = null; + if(nextView){ + transition = nextView.transition; + } + if(!transition && parentView.views[transitionTo]){ + transition = parentView.views[transitionTo].transition; + } + if(!transition){ + transition = parentView.transition; + } + var defaultTransition = (nextView && nextView.defaultTransition) ? nextView.defaultTransition : parentView.defaultTransition; + while(!transition && parentView.parent){ + parentView = parentView.parent; + transition = parentView.transition; + if(!defaultTransition){ + defaultTransition = parentView.defaultTransition; + } + } + return transition || opts.transition || defaultTransition || "none"; + }, + + + _getParamsForView: function(view, params){ + // summary: + // Get view's params only include view specific params if they are for this view. + // + // view: String + // the view's name + // params: Object + // the params + // + // returns: + // params Object for this view + var viewParams = {}; + for(var item in params){ + var value = params[item]; + if(lang.isObject(value)){ // view specific params + if(item == view){ // it is for this view + // need to add these params for the view + viewParams = lang.mixin(viewParams, value); + } + }else{ // these params are for all views, so add them + if(item && value != null){ + viewParams[item] = params[item]; + } + } + } + return viewParams; + }, + + _doTransition: function(transitionTo, opts, params, data, parent, removeView, doResize, forceTransitionNone, nested){ + // summary: + // Transitions from the currently visible view to the defined view. + // It should determine what would be the best transition unless + // an override in opts tells it to use a specific transitioning methodology + // the transitionTo is a string in the form of [view1,view2]. + // + // transitionTo: Object + // transition to view id. It looks like #tabView,tab1 + // opts: Object + // transition options + // params: Object + // params + // data: Object + // data object that will be passed on activate & de-activate methods of the view + // parent: Object + // view's parent + // removeView: Boolean + // remove the view instead of transition to it + // doResize: Boolean + // emit a resize event + // forceTransitionNone: Boolean + // force the transition type to be none, used for the initial default view + // nested: Boolean + // whether the method is called from the transitioning of a parent view + // + // returns: + // transit dojo/promise/all object. + var F = MODULE+":_doTransition"; + + if(!parent){ + throw Error("view parent not found in transition."); + } + + this.app.log(F+" transitionTo=[",transitionTo,"], removeView=[",removeView,"] parent.name=[",parent.name,"], opts=",opts); + + var parts, toId, subIds, next; + if(transitionTo){ + parts = transitionTo.split(","); + }else{ + // If parent.defaultView is like "main,main", we also need to split it and set the value to toId and subIds. + // Or cannot get the next view by "parent.children[parent.id + '_' + toId]" + parts = parent.defaultView.split(","); + } + toId = parts.shift(); + subIds = parts.join(','); + + // next is loaded and ready for transition + next = parent.children[parent.id + '_' + toId]; + if(!next){ + if(removeView){ + this.app.log(F+" called with removeView true, but that view is not available to remove"); + return; // trying to remove a view which is not showing + } + throw Error("child view must be loaded before transition."); + } + // if no subIds and next has default view, + // set the subIds to the default view and transition to default view. + if(!subIds && next.defaultView){ + subIds = next.defaultView; + } + + var nextSubViewArray = [next || parent]; + if(subIds){ + nextSubViewArray = this._getNextSubViewArray(subIds, next, parent); + } + + var current = constraints.getSelectedChild(parent, next.constraint); + var currentSubViewArray = this._getCurrentSubViewArray(parent, nextSubViewArray, removeView); + + var currentSubNames = this._getNamesFromArray(currentSubViewArray, false); + var nextSubNames = this._getNamesFromArray(nextSubViewArray, true); + + // set params on next view. + next.params = this._getParamsForView(next.name, params); + + if(removeView){ + if(next !== current){ // nothing to remove + this.app.log(F+" called with removeView true, but that view is not available to remove"); + return; // trying to remove a view which is not showing + } + this.app.log(LOGKEY,F,"Transition Remove current From=["+currentSubNames+"]"); + // if next == current we will set next to null and remove the view with out a replacement + next = null; + } + + if(nextSubNames == currentSubNames && next == current){ // new test to see if current matches next + this.app.log(LOGKEY,F,"Transition current and next DO MATCH From=["+currentSubNames+"] TO=["+nextSubNames+"]"); + this._handleMatchingViews(nextSubViewArray, next, current, parent, data, removeView, doResize, subIds, currentSubNames, toId, forceTransitionNone, opts); + + }else{ + this.app.log(LOGKEY,F,"Transition current and next DO NOT MATCH From=["+currentSubNames+"] TO=["+nextSubNames+"]"); + //When clicking fast, history module will cache the transition request que + //and prevent the transition conflicts. + //Originally when we conduct transition, selectedChild will not be the + //view we want to start transition. For example, during transition 1 -> 2 + //if user click button to transition to 3 and then transition to 1. After + //1->2 completes, it will perform transition 2 -> 3 and 2 -> 1 because + //selectedChild is always point to 2 during 1 -> 2 transition and transition + //will record 2->3 and 2->1 right after the button is clicked. + + //assume next is already loaded so that this.set(...) will not return + //a promise object. this.set(...) will handles the this.selectedChild, + //activate or deactivate views and refresh layout. + + //necessary, to avoid a flash when the layout sets display before resize + if(!removeView && next){ + var nextLastSubChild = this.nextLastSubChildMatch || next; + var startHiding = false; // only hide views which will transition in + for(var i = nextSubViewArray.length-1; i >= 0; i--){ + var v = nextSubViewArray[i]; + if(startHiding || v.id == nextLastSubChild.id){ + startHiding = true; + if(!v._needsResize && v.domNode){ + this.app.log(LOGKEY,F," setting domStyle visibility hidden for v.id=["+v.id+"], display=["+v.domNode.style.display+"], visibility=["+v.domNode.style.visibility+"]"); + this._setViewVisible(v, false); + } + } + } + } + + if(current && current._active){ + this._handleBeforeDeactivateCalls(currentSubViewArray, this.nextLastSubChildMatch || next, current, data, subIds); + } + if(next){ + this.app.log(F+" calling _handleBeforeActivateCalls next name=[",next.name,"], parent.name=[",next.parent.name,"]"); + this._handleBeforeActivateCalls(nextSubViewArray, this.currentLastSubChildMatch || current, data, subIds); + } + if(!removeView){ + var nextLastSubChild = this.nextLastSubChildMatch || next; + var trans = this._getTransition(nextLastSubChild, parent, toId, opts, forceTransitionNone) + this.app.log(F+" calling _handleLayoutAndResizeCalls trans="+trans); + this._handleLayoutAndResizeCalls(nextSubViewArray, removeView, doResize, subIds, forceTransitionNone, trans); + }else{ + // for removeView need to set visible before transition do it here + for(var i = 0; i < nextSubViewArray.length; i++){ + var v = nextSubViewArray[i]; + this.app.log(LOGKEY,F,"setting visibility visible for v.id=["+v.id+"]"); + if(v.domNode){ + this.app.log(LOGKEY,F," setting domStyle for removeView visibility visible for v.id=["+v.id+"], display=["+v.domNode.style.display+"]"); + this._setViewVisible(v, true); + } + } + } + var result = true; + + // this.currentLastSubChildMatch holds the view to transition from + if(transit && (!nested || this.currentLastSubChildMatch != null) && this.currentLastSubChildMatch !== next){ + // css3 transit has the check for IE so it will not try to do it on ie, so we do not need to check it here. + // We skip in we are transitioning to a nested view from a parent view and that nested view + // did not have any current + result = this._handleTransit(next, parent, this.currentLastSubChildMatch, opts, toId, removeView, forceTransitionNone, doResize); + } + when(result, lang.hitch(this, function(){ + if(next){ + this.app.log(F+" back from transit for next ="+next.name); + } + if(removeView){ + var nextLastSubChild = this.nextLastSubChildMatch || next; + var trans = this._getTransition(nextLastSubChild, parent, toId, opts, forceTransitionNone) + this._handleLayoutAndResizeCalls(nextSubViewArray, removeView, doResize, subIds, forceTransitionNone, trans); + } + + // Add call to handleAfterDeactivate and handleAfterActivate here! + this._handleAfterDeactivateCalls(currentSubViewArray, this.nextLastSubChildMatch || next, current, data, subIds); + this._handleAfterActivateCalls(nextSubViewArray, removeView, this.currentLastSubChildMatch || current, data, subIds); + })); + return result; // dojo/promise/all + } + }, + + _handleMatchingViews: function(subs, next, current, parent, data, removeView, doResize, subIds, currentSubNames, toId, forceTransitionNone, opts){ + // summary: + // Called when the current views and the next views match + var F = MODULE+":_handleMatchingViews"; + + this._handleBeforeDeactivateCalls(subs, this.nextLastSubChildMatch || next, current, data, subIds); + // this is the order that things were being done before on a reload of the same views, so I left it + // calling _handleAfterDeactivateCalls here instead of after _handleLayoutAndResizeCalls + this._handleAfterDeactivateCalls(subs, this.nextLastSubChildMatch || next, current, data, subIds); + this._handleBeforeActivateCalls(subs, this.currentLastSubChildMatch || current, data, subIds); + var nextLastSubChild = this.nextLastSubChildMatch || next; + var trans = this._getTransition(nextLastSubChild, parent, toId, opts, forceTransitionNone) + this._handleLayoutAndResizeCalls(subs, removeView, doResize, subIds, trans); + this._handleAfterActivateCalls(subs, removeView, this.currentLastSubChildMatch || current, data, subIds); + }, + + _handleBeforeDeactivateCalls: function(subs, next, current, /*parent,*/ data, /*removeView, doResize,*/ subIds/*, currentSubNames*/){ + // summary: + // Call beforeDeactivate for each of the current views which are about to be deactivated + var F = MODULE+":_handleBeforeDeactivateCalls"; + if(current._active){ + //now we need to loop backwards thru subs calling beforeDeactivate + for(var i = subs.length-1; i >= 0; i--){ + var v = subs[i]; + if(v && v.beforeDeactivate && v._active){ + this.app.log(LOGKEY,F,"beforeDeactivate for v.id="+v.id); + v.beforeDeactivate(next, data); + } + } + } + }, + + _handleAfterDeactivateCalls: function(subs, next, current, data, subIds){ + // summary: + // Call afterDeactivate for each of the current views which have been deactivated + var F = MODULE+":_handleAfterDeactivateCalls"; + if(current && current._active){ + //now we need to loop forwards thru subs calling afterDeactivate + for(var i = 0; i < subs.length; i++){ + var v = subs[i]; + if(v && v.beforeDeactivate && v._active){ + this.app.log(LOGKEY,F,"afterDeactivate for v.id="+v.id); + v.afterDeactivate(next, data); + v._active = false; + } + } + + } + }, + + _handleBeforeActivateCalls: function(subs, current, data, subIds){ + // summary: + // Call beforeActivate for each of the next views about to be activated + var F = MODULE+":_handleBeforeActivateCalls"; + //now we need to loop backwards thru subs calling beforeActivate (ok since next matches current) + for(var i = subs.length-1; i >= 0; i--){ + var v = subs[i]; + this.app.log(LOGKEY,F,"beforeActivate for v.id="+v.id); + v.beforeActivate(current, data); + } + }, + + _handleLayoutAndResizeCalls: function(subs, removeView, doResize, subIds, forceTransitionNone, transition){ + // summary: + // fire app-layoutView for each of the next views about to be activated, and fire app-resize if doResize is true + var F = MODULE+":_handleLayoutAndResizeCalls"; + var remove = removeView; + for(var i = 0; i < subs.length; i++){ + var v = subs[i]; + this.app.log(LOGKEY,F,"emit layoutView v.id=["+v.id+"] removeView=["+remove+"]"); + // it seems like we should be able to minimize calls to resize by passing doResize: false and only doing resize on the app-resize emit + this.app.emit("app-layoutView", {"parent": v.parent, "view": v, "removeView": remove, "doResize": false, "transition": transition, "currentLastSubChildMatch": this.currentLastSubChildMatch}); + remove = false; + } + if(doResize){ + this.app.log(LOGKEY,F,"emit doResize called"); + this.app.emit("app-resize"); // after last layoutView fire app-resize + if(transition == "none"){ + this._showSelectedChildren(this.app); // Need to set visible too before transition do it now. + } + } + + }, + + _showSelectedChildren: function(w){ + var F = MODULE+":_showSelectedChildren"; + this.app.log(LOGKEY,F," setting domStyle visibility visible for w.id=["+w.id+"], display=["+w.domNode.style.display+"], visibility=["+w.domNode.style.visibility+"]"); + this._setViewVisible(w, true); + w._needsResize = false; + for(var hash in w.selectedChildren){ // need this to handle all selectedChildren + if(w.selectedChildren[hash] && w.selectedChildren[hash].domNode){ + this.app.log(LOGKEY,F," calling _showSelectedChildren for w.selectedChildren[hash].id="+w.selectedChildren[hash].id); + this._showSelectedChildren(w.selectedChildren[hash]); + } + } + }, + + _setViewVisible: function(v, visible){ + if(visible){ + domStyle.set(v.domNode, "visibility", "visible"); + }else{ + domStyle.set(v.domNode, "visibility", "hidden"); + } + }, + + + _handleAfterActivateCalls: function(subs, removeView, current, data, subIds){ + // summary: + // Call afterActivate for each of the next views which have been activated + var F = MODULE+":_handleAfterActivateCalls"; + //now we need to loop backwards thru subs calling beforeActivate (ok since next matches current) + var startInt = 0; + if(removeView && subs.length > 1){ + startInt = 1; + } + for(var i = startInt; i < subs.length; i++){ + var v = subs[i]; + if(v.afterActivate){ + this.app.log(LOGKEY,F,"afterActivate for v.id="+v.id); + v.afterActivate(current, data); + v._active = true; + } + } + }, + + _getNextSubViewArray: function(subIds, next, parent){ + // summary: + // Get next sub view array, this array will hold the views which are about to be transitioned to + // + // subIds: String + // the subids, the views are separated with a comma + // next: Object + // the next view to be transitioned to. + // parent: Object + // the parent view used in place of next if next is not set. + // + // returns: + // Array of views which will be transitioned to during this transition + var F = MODULE+":_getNextSubViewArray"; + var parts = []; + var p = next || parent; + if(subIds){ + parts = subIds.split(","); + } + var nextSubViewArray = [p]; + //now we need to loop forwards thru subIds calling beforeActivate + for(var i = 0; i < parts.length; i++){ + toId = parts[i]; + var v = p.children[p.id + '_' + toId]; + if(v){ + nextSubViewArray.push(v); + p = v; + } + } + nextSubViewArray.reverse(); + return nextSubViewArray; + }, + + _getCurrentSubViewArray: function(parent, nextSubViewArray, removeView){ + // summary: + // Get current sub view array which will be replaced by the views in the nextSubViewArray + // + // parent: String + // the parent view whose selected children will be replaced + // nextSubViewArray: Array + // the array of views which are to be transitioned to. + // + // returns: + // Array of views which will be deactivated during this transition + var F = MODULE+":_getCurrentSubViewArray"; + var currentSubViewArray = []; + var constraint, type, hash; + var p = parent; + this.currentLastSubChildMatch = null; + this.nextLastSubChildMatch = null; + + for(var i = nextSubViewArray.length-1; i >= 0; i--){ + constraint = nextSubViewArray[i].constraint; + type = typeof(constraint); + hash = (type == "string" || type == "number") ? constraint : constraint.__hash; + // if there is a selected child for this constraint, and the child matches this view, push it. + if(p && p.selectedChildren && p.selectedChildren[hash]){ + if(p.selectedChildren[hash] == nextSubViewArray[i]){ + this.currentLastSubChildMatch = p.selectedChildren[hash]; + this.nextLastSubChildMatch = nextSubViewArray[i]; + currentSubViewArray.push(this.currentLastSubChildMatch); + p = this.currentLastSubChildMatch; + }else{ + this.currentLastSubChildMatch = p.selectedChildren[hash]; + currentSubViewArray.push(this.currentLastSubChildMatch); + this.nextLastSubChildMatch = nextSubViewArray[i]; // setting this means the transition will be done to the child instead of the parent + // since the constraint was set, but it did not match, need to deactivate all selected children of this.currentLastSubChildMatch + if(!removeView){ + var selChildren = constraints.getAllSelectedChildren(this.currentLastSubChildMatch); + currentSubViewArray = currentSubViewArray.concat(selChildren); + } + break; + } + }else{ // the else is for the constraint not matching which means no more to deactivate. + this.currentLastSubChildMatch = null; // there was no view selected for this constraint + this.nextLastSubChildMatch = nextSubViewArray[i]; // set this to the next view for transition to an empty constraint + break; + } + + } + // Here since they had the constraint but it was not the same I need to deactivate all children of p + if(removeView){ + var selChildren = constraints.getAllSelectedChildren(p); + currentSubViewArray = currentSubViewArray.concat(selChildren); + } + + return currentSubViewArray; + }, + + _getNamesFromArray: function(subViewArray, backward){ + // summary: + // Get names from the sub view names array + // + // subViewArray: Array + // the array of views to get the names from. + // backward: boolean + // the direction to loop thru the array to get the names. + // + // returns: + // String of view names separated by a comma + // + var F = MODULE+":_getNamesFromArray"; + var subViewNames = ""; + if(backward){ + for (var i = subViewArray.length - 1; i >= 0; i--) { + subViewNames = subViewNames ? subViewNames+","+subViewArray[i].name : subViewArray[i].name; + } + }else{ + for(var i = 0; i < subViewArray.length; i++){ + subViewNames = subViewNames ? subViewNames+","+subViewArray[i].name : subViewArray[i].name; + } + } + return subViewNames; + }, + + _handleTransit: function(next, parent, currentLastSubChild, opts, toId, removeView, forceTransitionNone, resizeDone){ + // summary: + // Setup the options and call transit to do the transition + // + // next: Object + // the next view, the view which will be transitioned to + // parent: Object + // the parent view which is used to get the transition type to be used + // currentLastSubChild: Object + // the current view which is being transitioned away from + // opts: Object + // the options used for the transition + // toId: String + // the id of the view being transitioned to + // removeView: boolean + // true if the view is being removed + // forceTransitionNone: boolean + // true if the transition type should be forced to none, used for the initial defaultView + // resizeDone: boolean + // true if resize was called before this transition + // + // returns: + // the promise returned by the call to transit + var F = MODULE+":_handleTransit"; + + var nextLastSubChild = this.nextLastSubChildMatch || next; + + var mergedOpts = lang.mixin({}, opts); // handle reverse from mergedOpts or transitionDir + mergedOpts = lang.mixin({}, mergedOpts, { + reverse: (mergedOpts.reverse || mergedOpts.transitionDir === -1)?true:false, + // if transition is set for the view (or parent) in the config use it, otherwise use it from the event or defaultTransition from the config + transition: this._getTransition(nextLastSubChild, parent, toId, mergedOpts, forceTransitionNone) + }); + + if(removeView){ + nextLastSubChild = null; + } + if(currentLastSubChild){ + this.app.log(LOGKEY,F,"transit FROM currentLastSubChild.id=["+currentLastSubChild.id+"]"); + } + if(nextLastSubChild){ + if(mergedOpts.transition !== "none"){ + if(!resizeDone && nextLastSubChild._needsResize){ // need to resize if not done yet or things will not be positioned correctly + this.app.log(LOGKEY,F,"emit doResize called from _handleTransit"); + this.app.emit("app-resize"); // after last layoutView fire app-resize + } + this.app.log(LOGKEY,F," calling _showSelectedChildren for w3.id=["+nextLastSubChild.id+"], display=["+nextLastSubChild.domNode.style.display+"], visibility=["+nextLastSubChild.domNode.style.visibility+"]"); + this._showSelectedChildren(this.app); // Need to set visible too before transition do it now. + } + this.app.log(LOGKEY,F,"transit TO nextLastSubChild.id=["+nextLastSubChild.id+"] transition=["+mergedOpts.transition+"]"); + }else{ + this._showSelectedChildren(this.app); // Need to set visible too before transition do it now. + } + return transit(currentLastSubChild && currentLastSubChild.domNode, nextLastSubChild && nextLastSubChild.domNode, mergedOpts); + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/main.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/main.js new file mode 100644 index 00000000..7d3454b7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/main.js @@ -0,0 +1,238 @@ +//>>built +define("dojox/app/main",["require","dojo/_base/kernel","dojo/_base/lang","dojo/_base/declare","dojo/_base/config","dojo/_base/window","dojo/Evented","dojo/Deferred","dojo/when","dojo/has","dojo/on","dojo/ready","dojo/dom-construct","dojo/dom-attr","./utils/model","./utils/nls","./module/lifecycle","./utils/hash","./utils/constraints","./utils/config"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,on,_b,_c,_d,_e,_f,_10,_11,_12,_13){ +_a.add("app-log-api",(_5["app"]||{}).debugApp); +var _14=_4(_7,{constructor:function(_15,_16){ +_4.safeMixin(this,_15); +this.params=_15; +this.id=_15.id; +this.defaultView=_15.defaultView; +this.controllers=[]; +this.children={}; +this.loadedModels={}; +this.loadedStores={}; +this.setDomNode(_c.create("div",{id:this.id+"_Root",style:"width:100%; height:100%; overflow-y:hidden; overflow-x:hidden;"})); +_16.appendChild(this.domNode); +},createDataStore:function(_17){ +if(_17.stores){ +for(var _18 in _17.stores){ +if(_18.charAt(0)!=="_"){ +var _19=_17.stores[_18].type?_17.stores[_18].type:"dojo/store/Memory"; +var _1a={}; +if(_17.stores[_18].params){ +_3.mixin(_1a,_17.stores[_18].params); +} +try{ +var _1b=_1(_19); +} +catch(e){ +throw new Error(_19+" must be listed in the dependencies"); +} +if(_1a.data&&_3.isString(_1a.data)){ +_1a.data=_3.getObject(_1a.data); +} +if(_17.stores[_18].observable){ +try{ +var _1c=_1("dojo/store/Observable"); +} +catch(e){ +throw new Error("dojo/store/Observable must be listed in the dependencies"); +} +_17.stores[_18].store=_1c(new _1b(_1a)); +}else{ +_17.stores[_18].store=new _1b(_1a); +} +this.loadedStores[_18]=_17.stores[_18].store; +} +} +} +},createControllers:function(_1d){ +if(_1d){ +var _1e=[]; +for(var i=0;i<_1d.length;i++){ +_1e.push(_1d[i]); +} +var def=new _8(); +var _1f; +try{ +_1f=_1.on?_1.on("error",function(_20){ +if(def.isResolved()||def.isRejected()){ +return; +} +def.reject("load controllers error."); +if(_1f){ +_1f.remove(); +} +}):null; +_1(_1e,function(){ +def.resolve.call(def,arguments); +if(_1f){ +_1f.remove(); +} +}); +} +catch(e){ +def.reject(e); +if(_1f){ +_1f.remove(); +} +} +var _21=new _8(); +_9(def,_3.hitch(this,function(){ +for(var i=0;i>built +define("dojox/app/module/env",["dojo/_base/declare"],function(_1){ +return _1(null,{mode:"",init:function(){ +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/env.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/env.js.uncompressed.js new file mode 100644 index 00000000..feeffaf1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/env.js.uncompressed.js @@ -0,0 +1,21 @@ +define("dojox/app/module/env", ["dojo/_base/declare"], function(declare){ + return declare(null, { + mode: "", + init: function(){ + + //TODO BROADLY categorize the mode of the app...mobile,desktop + // This should be done with UA sniffing, but remember + // very broadly, this is for purposes of deciding + // which ui to render, NOT feature detection + /* + this.mode="mobile"; + var def = this.inherited(arguments); + + //just an example + return def.then(function(){ + console.log("env init after inherited inits"); + }); + */ + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/lifecycle.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/lifecycle.js new file mode 100644 index 00000000..824c8df9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/lifecycle.js @@ -0,0 +1,9 @@ +//>>built +define("dojox/app/module/lifecycle",["dojo/_base/declare","dojo/topic"],function(_1,_2){ +return _1(null,{lifecycle:{UNKNOWN:0,STARTING:1,STARTED:2,STOPPING:3,STOPPED:4},_status:0,getStatus:function(){ +return this._status; +},setStatus:function(_3){ +this._status=_3; +_2.publish("/app/status",_3); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/lifecycle.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/lifecycle.js.uncompressed.js new file mode 100644 index 00000000..1973dcc2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/module/lifecycle.js.uncompressed.js @@ -0,0 +1,26 @@ +define("dojox/app/module/lifecycle", ["dojo/_base/declare", "dojo/topic"], function(declare, topic){ + return declare(null, { + + lifecycle: { + UNKNOWN: 0, //unknown + STARTING: 1, //starting + STARTED: 2, //started + STOPPING: 3, //stopping + STOPPED: 4 //stopped + }, + + _status: 0, //unknown + + getStatus: function(){ + return this._status; + }, + + setStatus: function(newStatus){ + this._status = newStatus; + + // publish /app/status event. + // application can subscribe this event to do some status change operation. + topic.publish("/app/status", newStatus); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/README new file mode 100644 index 00000000..7e514bb3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/README @@ -0,0 +1 @@ +Schemas to validate application configs, not fully in sync with what is being accepted just yet diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/application.json b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/application.json new file mode 100644 index 00000000..ac4bf30f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/application.json @@ -0,0 +1,55 @@ +{ + "description":"A representation of an Application", + "type": "object", + "properties":{ + "author": {"$ref": "http://json-schema.org/card"}, + + "description": { + "description": "Description of the application represented here", + "type": "string" + }, + + "modules": { + "type": "array", + "description": "Modules this application requires ", + "default": [], + "items":{ + "type": "string", + "description": "Module to be loaded and mixed into the application" + } + }, + + + "defaultScene": { + "type": "string", + "description": "id of scene to load for this application at startup" + }, + + "scenes": { + "type": "object", + "description": "This object contains references to scene objects, which are collections of views and models making up a closely related set of the ui", + "additionalProperties":{"$ref":"/jdoe/test/schema/scene.json"} + }, + + "stores": { + "type": "object", + "description":"This object contains references to store instances that the rest of the application will use.", + "additionalProperties": {"$ref":"/jdoe/test/schema/scene.json"}, + "default": {} + }, + + "models": { + "type": "object", + "description": "This object contains references to model instances the application uses", + "additionalProperties":{"$ref":"/jdoe/test/schema/model.json"}, + "default": {} + }, + + "views": { + "type": "object", + "description": "This object contains references to view instances the application uses", + "additionalProperties":{"$ref":"/jdoe/test/schema/view.json"}, + "default": {} + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/model.json b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/model.json new file mode 100644 index 00000000..02de20ab --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/model.json @@ -0,0 +1,11 @@ +{ + "description":"An applications model declaration", + "type": "object", + "properties":{ + "type": { + "type": "string", + "description": "Model Instance Type (Class)" + } + }, + "additionalProperties": true +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/scene.json b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/scene.json new file mode 100644 index 00000000..41989e41 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/scene.json @@ -0,0 +1,30 @@ +{ + "description":"An application's scene instance declarations", + "type": "object", + "properties":{ + "type": { + "type": "string", + "description": "Scene Instance Type (Class)" + }, + "models": { + "type": "array", + "items": {"$ref": "/jdoe/test/schema/model"} + }, + "views": { + "type": "array", + "items": { + "type": "object", + "properties" : { + "id": { + "type": "string" + }, + "view": {"$ref": "/jdoe/test/schema/view"}, + "params": { + "type": "object" + } + } + } + } + }, + "additionalProperties": true +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/store.json b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/store.json new file mode 100644 index 00000000..2d41641b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/store.json @@ -0,0 +1,11 @@ +{ + "description":"An applications store instance declarations", + "type": "object", + "properties":{ + "type": { + "type": "string", + "description": "Store Instance Type (Class)" + } + }, + "additionalProperties": true +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/view.json b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/view.json new file mode 100644 index 00000000..b6c1c545 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/schema/view.json @@ -0,0 +1,30 @@ +{ + "description": "Base View Schema for defining View Instances in an application", + "type": "object", + "properties": { + "type": { + "type":"string", + "description": "The Name of the Class to be used for this view" + }, + + "models": { + "type": "array", + "items": { + "type":"string", + "description": "Models that this view requires. These should reference one of the available #models", + "dependences":{} + } + }, + + "persist": { + "type": "boolean", + "description":"Keep this view loaded on the dom or memory, but not necessarily visible" + }, + + "template": { + "type": "string", + "description": "Template to be used with this view" + } + } +} + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/config.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/config.js new file mode 100644 index 00000000..50238c6b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/config.js @@ -0,0 +1,48 @@ +//>>built +define("dojox/app/utils/config",["dojo/sniff"],function(_1){ +return {configProcessHas:function(_2){ +for(var _3 in _2){ +var _4=_2[_3]; +if(_3=="has"){ +for(var _5 in _4){ +if(!(_5.charAt(0)=="_"&&_5.charAt(1)=="_")&&_4&&typeof _4==="object"){ +var _6=_5.split(","); +if(_6.length>0){ +while(_6.length>0){ +var _7=_6.shift(); +if((_1(_7))||(_7.charAt(0)=="!"&&!(_1(_7.substring(1))))){ +var _8=_4[_5]; +this.configMerge(_2,_8); +break; +} +} +} +} +} +delete _2["has"]; +}else{ +if(!(_3.charAt(0)=="_"&&_3.charAt(1)=="_")&&_4&&typeof _4==="object"){ +this.configProcessHas(_4); +} +} +} +return _2; +},configMerge:function(_9,_a){ +for(var _b in _a){ +var _c=_9[_b]; +var _d=_a[_b]; +if(_c!==_d&&!(_b.charAt(0)=="_"&&_b.charAt(1)=="_")){ +if(_c&&typeof _c==="object"&&_d&&typeof _d==="object"){ +this.configMerge(_c,_d); +}else{ +if(_9 instanceof Array){ +_9.push(_d); +}else{ +_9[_b]=_d; +} +} +} +} +return _9; +}}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/config.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/config.js.uncompressed.js new file mode 100644 index 00000000..22f884c8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/config.js.uncompressed.js @@ -0,0 +1,85 @@ +define("dojox/app/utils/config", ["dojo/sniff"], function(has){ + +// module: +// dojox/app/utils/config + +return { + // summary: + // This module contains the config + + configProcessHas: function(/*Object*/ source){ + // summary: + // scan the source config for has checks and call configMerge to merge has sections, and remove the has sections from the source. + // description: + // configProcessHas will scan the source config for has checks. + // For each has section the items inside the has section will be tested with has (sniff) + // If the has test is true it will call configMerge to merge has sections back into the source config. + // It will always remove the has section from the source after processing it. + // The names in the has section can be separated by a comma, indicating that any of those being true will satisfy the test. + // source: + // an object representing the config to be processed. + // returns: + // the updated source object. + for(var name in source){ + var sval = source[name]; + if(name == "has"){ // found a "has" section in source + for(var hasname in sval){ // get the hasnames from the has section + if(!(hasname.charAt(0) == '_' && hasname.charAt(1) == '_') && sval && typeof sval === 'object'){ + // need to handle multiple has checks separated by a ",". + var parts = hasname.split(','); + if(parts.length > 0){ + while(parts.length > 0){ + var haspart = parts.shift(); + // check for has(haspart) or if haspart starts with ! check for !(has(haspart)) + if((has(haspart)) || (haspart.charAt(0) == '!' && !(has(haspart.substring(1))))){ // if true this one should be merged + var hasval = sval[hasname]; + this.configMerge(source, hasval); // merge this has section into the source config + break; // found a match for this multiple has test, so go to the next one + } + } + } + } + } + delete source["has"]; // after merge remove this has section from the config + }else{ + if(!(name.charAt(0) == '_' && name.charAt(1) == '_') && sval && typeof sval === 'object'){ + this.configProcessHas(sval); + } + } + } + return source; + }, + + configMerge: function(/*Object*/ target, /*Object*/ source){ + // summary: + // does a deep copy of the source into the target to merge the config from the source into the target + // description: + // configMerge will merge the source config into the target config with a deep copy. + // anything starting with __ will be skipped and if the target is an array the source items will be pushed into the target. + // target: + // an object representing the config which will be updated by merging in the source. + // source: + // an object representing the config to be merged into the target. + // returns: + // the updated target object. + + for(var name in source){ + var tval = target[name]; + var sval = source[name]; + if(tval !== sval && !(name.charAt(0) == '_' && name.charAt(1) == '_')){ + if(tval && typeof tval === 'object' && sval && typeof sval === 'object'){ + this.configMerge(tval, sval); + }else{ + if(target instanceof Array){ + target.push(sval); + }else{ + target[name] = sval; + } + } + } + } + return target; + } +}; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/constraints.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/constraints.js new file mode 100644 index 00000000..9414d4f5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/constraints.js @@ -0,0 +1,57 @@ +//>>built +define("dojox/app/utils/constraints",["dojo/_base/array"],function(_1){ +var _2=[]; +return {getSelectedChild:function(_3,_4){ +var _5=typeof (_4); +var _6=(_5=="string"||_5=="number")?_4:_4.__hash; +return (_3&&_3.selectedChildren&&_3.selectedChildren[_6])?_3.selectedChildren[_6]:null; +},setSelectedChild:function(_7,_8,_9){ +var _a=typeof (_8); +var _b=(_a=="string"||_a=="number")?_8:_8.__hash; +_7.selectedChildren[_b]=_9; +},getAllSelectedChildren:function(_c,_d){ +_d=_d||[]; +if(_c&&_c.selectedChildren){ +for(var _e in _c.selectedChildren){ +if(_c.selectedChildren[_e]){ +var _f=_c.selectedChildren[_e]; +_d.push(_f); +this.getAllSelectedChildren(_f,_d); +} +} +} +return _d; +},register:function(_10){ +var _11=typeof (_10); +if(!_10.__hash&&_11!="string"&&_11!="number"){ +var _12=null; +_1.some(_2,function(_13){ +var ok=true; +for(var _14 in _13){ +if(_14.charAt(0)!=="_"){ +if(_13[_14]!=_10[_14]){ +ok=false; +break; +} +} +} +if(ok==true){ +_12=_13; +} +return ok; +}); +if(_12){ +_10.__hash=_12.__hash; +}else{ +var _15=""; +for(var _16 in _10){ +if(_16.charAt(0)!=="_"){ +_15+=_10[_16]; +} +} +_10.__hash=_15; +_2.push(_10); +} +} +}}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/constraints.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/constraints.js.uncompressed.js new file mode 100644 index 00000000..d68a6918 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/constraints.js.uncompressed.js @@ -0,0 +1,99 @@ +define("dojox/app/utils/constraints", ["dojo/_base/array"], function(arr){ + var constraints = []; + return { + getSelectedChild: function(view, constraint){ + // summary: + // get current selected child according to the constraint + // + // view: View + // the View to get the child from + // constraint: Object + // tbe constraint object + // + // returns: + // the selected child view for this constraint + var type = typeof(constraint); + var hash = (type == "string" || type == "number") ? constraint : constraint.__hash; + return (view && view.selectedChildren && view.selectedChildren[hash]) ? + view.selectedChildren[hash] : null; + }, + + setSelectedChild: function(view, constraint, child){ + // summary: + // set current selected child according to the constraint + // + // view: View + // the View to set the selected child to + // constraint: Object + // tbe constraint object + // child: View + // the child to select + var type = typeof(constraint); + var hash = (type == "string" || type == "number") ? constraint : constraint.__hash; + view.selectedChildren[hash] = child; + }, + + + getAllSelectedChildren: function(view, selChildren){ + // summary: + // get current all selected children for this view and it's selected subviews + // + // view: View + // the View to get the child from + // + // selChildren: Array + // the Array of the subChildren found + // + // returns: + // selChildren array of all of the selected child views + // + selChildren = selChildren || []; + if(view && view.selectedChildren){ + for(var hash in view.selectedChildren){ + if(view.selectedChildren[hash]){ + var subChild = view.selectedChildren[hash]; + selChildren.push(subChild); + this.getAllSelectedChildren(subChild, selChildren); + } + } + } + return selChildren; + }, + + register: function(constraint){ + // if the constraint has already been registered we don't care about it... + var type = typeof(constraint); + if(!constraint.__hash && type != "string" && type != "number"){ + var match = null; + arr.some(constraints, function(item){ + var ok = true; + for(var prop in item){ + if(prop.charAt(0) !== "_"){//skip the private properties + if(item[prop] != constraint[prop]){ + ok = false; + break; + } + } + } + if(ok == true){ + match = item; + } + return ok; + }); + if(match){ + constraint.__hash = match.__hash; + }else{ + // create a new "hash" + var hash = ""; + for(var prop in constraint){ + if(prop.charAt(0) !== "_"){ + hash += constraint[prop]; + } + } + constraint.__hash = hash; + constraints.push(constraint); + } + } + } + }; +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/hash.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/hash.js new file mode 100644 index 00000000..2a3e3bb4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/hash.js @@ -0,0 +1,95 @@ +//>>built +define("dojox/app/utils/hash",["dojo/_base/lang"],function(_1){ +var _2={getParams:function(_3){ +var _4; +if(_3&&_3.length){ +while(_3.indexOf("(")>0){ +var _5=_3.indexOf("("); +var _6=_3.indexOf(")"); +var _7=_3.substring(_5,_6+1); +if(!_4){ +_4={}; +} +_4=_2.getParamObj(_4,_7); +var _8=_7.substring(1,_7.indexOf("&")); +_3=_3.replace(_7,_8); +} +for(var _9=_3.split("&"),x=0;x<_9.length;x++){ +var tp=_9[x].split("="),_a=tp[0],_b=encodeURIComponent(tp[1]||""); +if(_a&&_b){ +if(!_4){ +_4={}; +} +_4[_a]=_b; +} +} +} +return _4; +},getParamObj:function(_c,_d){ +var _e; +var _f=_d.substring(1,_d.indexOf("&")); +var _10=_d.substring(_d.indexOf("&"),_d.length-1); +for(var _11=_10.split("&"),x=0;x<_11.length;x++){ +var tp=_11[x].split("="),_12=tp[0],_13=encodeURIComponent(tp[1]||""); +if(_12&&_13){ +if(!_e){ +_e={}; +} +_e[_12]=_13; +} +} +_c[_f]=_e; +return _c; +},buildWithParams:function(_14,_15){ +if(_14.charAt(0)!=="#"){ +_14="#"+_14; +} +for(var _16 in _15){ +var _17=_15[_16]; +if(_1.isObject(_17)){ +_14=_2.addViewParams(_14,_16,_17); +}else{ +if(_16&&_17!=null){ +_14=_14+"&"+_16+"="+_15[_16]; +} +} +} +return _14; +},addViewParams:function(_18,_19,_1a){ +if(_18.charAt(0)!=="#"){ +_18="#"+_18; +} +var _1b=_18.indexOf(_19); +if(_1b>0){ +if((_18.charAt(_1b-1)=="#"||_18.charAt(_1b-1)=="+")&&(_18.charAt(_1b+_19.length)=="&"||_18.charAt(_1b+_19.length)=="+"||_18.charAt(_1b+_19.length)=="-")){ +var _1c=_18.substring(_1b-1,_1b+_19.length+1); +var _1d=_2.getParamString(_1a); +var _1e=_18.charAt(_1b-1)+"("+_19+_1d+")"+_18.charAt(_1b+_19.length); +_18=_18.replace(_1c,_1e); +} +} +return _18; +},getParamString:function(_1f){ +var _20=""; +for(var _21 in _1f){ +var _22=_1f[_21]; +if(_21&&_22!=null){ +_20=_20+"&"+_21+"="+_1f[_21]; +} +} +return _20; +},getTarget:function(_23,_24){ +if(!_24){ +_24=""; +} +while(_23.indexOf("(")>0){ +var _25=_23.indexOf("("); +var _26=_23.indexOf(")"); +var _27=_23.substring(_25,_26+1); +var _28=_27.substring(1,_27.indexOf("&")); +_23=_23.replace(_27,_28); +} +return (((_23&&_23.charAt(0)=="#")?_23.substr(1):_23)||_24).split("&")[0]; +}}; +return _2; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/hash.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/hash.js.uncompressed.js new file mode 100644 index 00000000..768215f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/hash.js.uncompressed.js @@ -0,0 +1,176 @@ +define("dojox/app/utils/hash", ["dojo/_base/lang"], function(lang){ + +// module: +// dojox/app/utils/hash + +var hashUtil = { + // summary: + // This module contains the hash + + getParams: function(/*String*/ hash){ + // summary: + // get the params from the hash + // + // hash: String + // the url hash + // + // returns: + // the params object + // + var params; + if(hash && hash.length){ + // fixed handle view specific params + + while(hash.indexOf("(") > 0){ + var index = hash.indexOf("("); + var endindex = hash.indexOf(")"); + var viewPart = hash.substring(index,endindex+1); + if(!params){ params = {}; } + params = hashUtil.getParamObj(params, viewPart); + // next need to remove the viewPart from the hash, and look for the next one + var viewName = viewPart.substring(1,viewPart.indexOf("&")); + hash = hash.replace(viewPart, viewName); + } + // after all of the viewParts need to get the other params + + for(var parts = hash.split("&"), x = 0; x < parts.length; x++){ + var tp = parts[x].split("="), name = tp[0], value = encodeURIComponent(tp[1] || ""); + if(name && value){ + if(!params){ params = {}; } + params[name] = value; + } + } + } + return params; // Object + }, + + getParamObj: function(/*Object*/ params, /*String*/ viewPart){ + // summary: + // called to handle a view specific params object + // params: Object + // the view specific params object + // viewPart: String + // the part of the view with the params for the view + // + // returns: + // the params object for the view + // + var viewparams; + var viewName = viewPart.substring(1,viewPart.indexOf("&")); + var hash = viewPart.substring(viewPart.indexOf("&"), viewPart.length-1); + for(var parts = hash.split("&"), x = 0; x < parts.length; x++){ + var tp = parts[x].split("="), name = tp[0], value = encodeURIComponent(tp[1] || ""); + if(name && value){ + if(!viewparams){ viewparams = {}; } + viewparams[name] = value; + } + } + params[viewName] = viewparams; + return params; // Object + }, + + buildWithParams: function(/*String*/ hash, /*Object*/ params){ + // summary: + // build up the url hash adding the params + // hash: String + // the url hash + // params: Object + // the params object + // + // returns: + // the params object + // + if(hash.charAt(0) !== "#"){ + hash = "#"+hash; + } + for(var item in params){ + var value = params[item]; + // add a check to see if the params includes a view name if so setup the hash like (viewName&item=value); + if(lang.isObject(value)){ + hash = hashUtil.addViewParams(hash, item, value); + }else{ + if(item && value != null){ + hash = hash+"&"+item+"="+params[item]; + } + } + } + return hash; // String + }, + + addViewParams: function(/*String*/ hash, /*String*/ view, /*Object*/ params){ + // summary: + // add the view specific params to the hash for example (view1¶m1=value1) + // hash: String + // the url hash + // view: String + // the view name + // params: Object + // the params for this view + // + // returns: + // the hash string + // + if(hash.charAt(0) !== "#"){ + hash = "#"+hash; + } + var index = hash.indexOf(view); + if(index > 0){ // found the view? + if((hash.charAt(index-1) == "#" || hash.charAt(index-1) == "+") && // assume it is the view? or could check the char after for + or & or - + (hash.charAt(index+view.length) == "&" || hash.charAt(index+view.length) == "+" || hash.charAt(index+view.length) == "-")){ + // found the view at this index. + var oldView = hash.substring(index-1,index+view.length+1); + var paramString = hashUtil.getParamString(params); + var newView = hash.charAt(index-1) + "(" + view + paramString + ")" + hash.charAt(index+view.length); + hash = hash.replace(oldView, newView); + } + } + + return hash; // String + }, + + getParamString: function(/*Object*/ params){ + // summary: + // return the param string + // params: Object + // the params object + // + // returns: + // the params string + // + var paramStr = ""; + for(var item in params){ + var value = params[item]; + if(item && value != null){ + paramStr = paramStr+"&"+item+"="+params[item]; + } + } + return paramStr; // String + }, + + getTarget: function(/*String*/ hash, /*String?*/ defaultView){ + // summary: + // return the target string + // hash: String + // the hash string + // defaultView: String + // the optional defaultView string + // + // returns: + // the target string + // + if(!defaultView){ defaultView = ""} + while(hash.indexOf("(") > 0){ + var index = hash.indexOf("("); + var endindex = hash.indexOf(")"); + var viewPart = hash.substring(index,endindex+1); + var viewName = viewPart.substring(1,viewPart.indexOf("&")); + hash = hash.replace(viewPart, viewName); + } + + return (((hash && hash.charAt(0) == "#") ? hash.substr(1) : hash) || defaultView).split('&')[0]; // String + } +}; + +return hashUtil; + +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/layout.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/layout.js new file mode 100644 index 00000000..afef5d5b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/layout.js @@ -0,0 +1,72 @@ +//>>built +define("dojox/app/utils/layout",["dojo/_base/array","dojo/dom-class","dojo/dom-geometry","dojo/dom-style","dojo/_base/lang"],function(_1,_2,_3,_4,_5){ +var _6={}; +_6.marginBox2contentBox=function(_7,mb){ +var cs=_4.getComputedStyle(_7); +var me=_3.getMarginExtents(_7,cs); +var pb=_3.getPadBorderExtents(_7,cs); +return {l:_4.toPixelValue(_7,cs.paddingLeft),t:_4.toPixelValue(_7,cs.paddingTop),w:mb.w-(me.w+pb.w),h:mb.h-(me.h+pb.h)}; +}; +function _8(_9){ +return _9.substring(0,1).toUpperCase()+_9.substring(1); +}; +function _a(_b,_c){ +var _d=_b.resize?_b.resize(_c):_3.setMarginBox(_b.domNode,_c); +if(_d){ +_5.mixin(_b,_d); +}else{ +_5.mixin(_b,_3.getMarginBox(_b.domNode)); +_5.mixin(_b,_c); +} +}; +_6.layoutChildren=function(_e,_f,_10,_11,_12){ +_f=_5.mixin({},_f); +_2.add(_e,"dijitLayoutContainer"); +_10=_1.filter(_10,function(_13){ +return _13._constraint!="center"&&_13.layoutAlign!="client"; +}).concat(_1.filter(_10,function(_14){ +return _14._constraint=="center"||_14.layoutAlign=="client"; +})); +_1.forEach(_10,function(_15){ +var elm=_15.domNode,pos=(_15._constraint||_15.layoutAlign); +if(!pos){ +throw new Error("No constraint setting for "+_15.id); +} +var _16=elm.style; +_16.left=_f.l+"px"; +_16.top=_f.t+"px"; +_16.position="absolute"; +_2.add(elm,"dijitAlign"+_8(pos)); +var _17={}; +if(_11&&_11==_15.id){ +_17[_15._constraint=="top"||_15._constraint=="bottom"?"h":"w"]=_12; +} +if(pos=="top"||pos=="bottom"){ +_17.w=_f.w; +_a(_15,_17); +_f.h-=_15.h; +if(pos=="top"){ +_f.t+=_15.h; +}else{ +_16.top=_f.t+_f.h+"px"; +} +}else{ +if(pos=="left"||pos=="right"){ +_17.h=_f.h; +_a(_15,_17); +_f.w-=_15.w; +if(pos=="left"){ +_f.l+=_15.w; +}else{ +_16.left=_f.l+_f.w+"px"; +} +}else{ +if(pos=="client"||pos=="center"){ +_a(_15,_f); +} +} +} +}); +}; +return {marginBox2contentBox:_6.marginBox2contentBox,layoutChildren:_6.layoutChildren}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/layout.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/layout.js.uncompressed.js new file mode 100644 index 00000000..d469885b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/layout.js.uncompressed.js @@ -0,0 +1,141 @@ +define("dojox/app/utils/layout", [ + "dojo/_base/array", // array.filter array.forEach + "dojo/dom-class", // domClass.add domClass.remove + "dojo/dom-geometry", // domGeometry.marginBox + "dojo/dom-style", // domStyle.getComputedStyle + "dojo/_base/lang" // lang.mixin +], function(array, domClass, domGeometry, domStyle, lang){ + + // module: + // dijit/layout/utils + // summary: + // marginBox2contentBox() and layoutChildren() + + var layout = {}; + /*===== layout = dijit/layout =====*/ + + layout.marginBox2contentBox = function(/*DomNode*/ node, /*Object*/ mb){ + // summary: + // Given the margin-box size of a node, return its content box size. + // Functions like domGeometry.contentBox() but is more reliable since it doesn't have + // to wait for the browser to compute sizes. + var cs = domStyle.getComputedStyle(node); + var me = domGeometry.getMarginExtents(node, cs); + var pb = domGeometry.getPadBorderExtents(node, cs); + return { + l: domStyle.toPixelValue(node, cs.paddingLeft), + t: domStyle.toPixelValue(node, cs.paddingTop), + w: mb.w - (me.w + pb.w), + h: mb.h - (me.h + pb.h) + }; + }; + + function capitalize(word){ + return word.substring(0,1).toUpperCase() + word.substring(1); + } + + function size(widget, dim){ + // size the child + var newSize = widget.resize ? widget.resize(dim) : domGeometry.setMarginBox(widget.domNode, dim); + + // record child's size + if(newSize){ + // if the child returned it's new size then use that + lang.mixin(widget, newSize); + }else{ + // otherwise, call getMarginBox(), but favor our own numbers when we have them. + // the browser lies sometimes + lang.mixin(widget, domGeometry.getMarginBox(widget.domNode)); + lang.mixin(widget, dim); + } + } + + layout.layoutChildren = function(/*DomNode*/ container, /*Object*/ dim, /*Widget[]*/ children, + /*String?*/ changedRegionId, /*Number?*/ changedRegionSize){ + // summary: + // Layout a bunch of child dom nodes within a parent dom node + // container: + // parent node + // dim: + // {l, t, w, h} object specifying dimensions of container into which to place children + // children: + // An array of Widgets or at least objects containing: + // + // - domNode: pointer to DOM node to position + // - constraint or layoutAlign: position to place DOM node + // - resize(): (optional) method to set size of node + // - id: (optional) Id of widgets, referenced from resize object, below. + // changedRegionId: + // If specified, the slider for the region with the specified id has been dragged, and thus + // the region's height or width should be adjusted according to changedRegionSize + // changedRegionSize: + // See changedRegionId. + + // copy dim because we are going to modify it + dim = lang.mixin({}, dim); + + domClass.add(container, "dijitLayoutContainer"); + + // Move "client" elements to the end of the array for layout. a11y dictates that the author + // needs to be able to put them in the document in tab-order, but this algorithm requires that + // client be last. TODO: move these lines to LayoutContainer? Unneeded other places I think. + children = array.filter(children, function(item){ return item._constraint != "center" && item.layoutAlign != "client"; }) + .concat(array.filter(children, function(item){ return item._constraint == "center" || item.layoutAlign == "client"; })); + + // set positions/sizes + array.forEach(children, function(child){ + var elm = child.domNode, + pos = (child._constraint || child.layoutAlign); + if(!pos){ + throw new Error("No constraint setting for " + child.id) + } + + // set elem to upper left corner of unused space; may move it later + var elmStyle = elm.style; + elmStyle.left = dim.l+"px"; + elmStyle.top = dim.t+"px"; + elmStyle.position = "absolute"; + + domClass.add(elm, "dijitAlign" + capitalize(pos)); + + // Size adjustments to make to this child widget + var sizeSetting = {}; + + // Check for optional size adjustment due to splitter drag (height adjustment for top/bottom align + // panes and width adjustment for left/right align panes. + if(changedRegionId && changedRegionId == child.id){ + sizeSetting[child._constraint == "top" || child._constraint == "bottom" ? "h" : "w"] = changedRegionSize; + } + + // set size && adjust record of remaining space. + // note that setting the width of a
    may affect its height. + if(pos == "top" || pos == "bottom"){ + sizeSetting.w = dim.w; + size(child, sizeSetting); + dim.h -= child.h; + if(pos == "top"){ + dim.t += child.h; + }else{ + elmStyle.top = dim.t + dim.h + "px"; + } + }else if(pos == "left" || pos == "right"){ + sizeSetting.h = dim.h; + size(child, sizeSetting); + dim.w -= child.w; + if(pos == "left"){ + dim.l += child.w; + }else{ + elmStyle.left = dim.l + dim.w + "px"; + } + }else if(pos == "client" || pos == "center"){ + size(child, dim); + } + }); + }; + + + return { + marginBox2contentBox: layout.marginBox2contentBox, + layoutChildren: layout.layoutChildren + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/model.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/model.js new file mode 100644 index 00000000..f0a332fa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/model.js @@ -0,0 +1,47 @@ +//>>built +define("dojox/app/utils/model",["dojo/_base/lang","dojo/Deferred","dojo/promise/all","dojo/when"],function(_1,_2,_3,_4){ +return function(_5,_6,_7){ +var _8={}; +if(_6.loadedModels){ +_1.mixin(_8,_6.loadedModels); +} +if(_5){ +var _9=[]; +for(var _a in _5){ +if(_a.charAt(0)!=="_"){ +_9.push(_b(_5,_a,_7,_8)); +} +} +return (_9.length==0)?_8:_3(_9); +}else{ +return _8; +} +}; +function _b(_c,_d,_e,_f){ +var _10=_c[_d].params?_c[_d].params:{}; +var _11=_c[_d].modelLoader?_c[_d].modelLoader:"dojox/app/utils/simpleModel"; +try{ +var _12=require(_11); +} +catch(e){ +throw new Error(_11+" must be listed in the dependencies"); +} +var _13=new _2(); +var _14; +try{ +_14=_12(_c,_10,_d); +} +catch(e){ +throw new Error("Error creating "+_11+" for model named ["+_d+"]: "+e.message); +} +_4(_14,_1.hitch(this,function(_15){ +_f[_d]=_15; +_e.log("in app/model, for item=[",_d,"] loadedModels =",_f); +_13.resolve(_f); +return _f; +}),function(e){ +throw new Error("Error loading model named ["+_d+"]: "+e.message); +}); +return _13; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/model.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/model.js.uncompressed.js new file mode 100644 index 00000000..b31ce35a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/model.js.uncompressed.js @@ -0,0 +1,62 @@ +define("dojox/app/utils/model", ["dojo/_base/lang", "dojo/Deferred", "dojo/promise/all", "dojo/when"], function(lang, Deferred, all, when){ + return function(/*Object*/ config, /*Object*/ parent, /*Object*/ app){ + // summary: + // model is called to create all of the models for the app, and all models for a view, it will + // create and call the appropriate model utility based upon the modelLoader set in the model in the config + // description: + // Called for each view or for the app. For each model in the config, it will + // create the model utility based upon the modelLoader and call it to create and load the model. + // config: Object + // The models section of the config for this view or for the app. + // parent: Object + // The parent of this view or the app itself, so that models from the parent will be + // available to the view. + // returns: loadedModels + // loadedModels is an object holding all of the available loaded models for this view. + var loadedModels = {}; + if(parent.loadedModels){ + lang.mixin(loadedModels, parent.loadedModels); + } + if(config){ + var allDeferred = []; + for(var item in config){ + if(item.charAt(0) !== "_"){ + allDeferred.push(setupModel(config, item, app, loadedModels)); + } + } + return (allDeferred.length == 0) ? loadedModels : all(allDeferred); + }else{ + return loadedModels; + } + }; + + function setupModel(config, item, app, loadedModels){ + // Here we need to create the modelLoader and call it passing in the item and the config[item].params + var params = config[item].params ? config[item].params : {}; + + var modelLoader = config[item].modelLoader ? config[item].modelLoader : "dojox/app/utils/simpleModel"; + // modelLoader must be listed in the dependencies and has thus already been loaded so it _must_ be here + // => no need for complex code here + try{ + var modelCtor = require(modelLoader); + }catch(e){ + throw new Error(modelLoader+" must be listed in the dependencies"); + } + var loadModelDeferred = new Deferred(); + var createModelPromise; + try{ + createModelPromise = modelCtor(config, params, item); + }catch(e){ + throw new Error("Error creating "+modelLoader+" for model named ["+item+"]: "+e.message); + } + when(createModelPromise, lang.hitch(this, function(newModel){ + loadedModels[item] = newModel; + app.log("in app/model, for item=[",item,"] loadedModels =", loadedModels); + loadModelDeferred.resolve(loadedModels); + return loadedModels; + }), function(e){ + throw new Error("Error loading model named ["+item+"]: "+e.message); + }); + return loadModelDeferred; + } +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/mvcModel.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/mvcModel.js new file mode 100644 index 00000000..c083e2c4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/mvcModel.js @@ -0,0 +1,69 @@ +//>>built +define("dojox/app/utils/mvcModel",["dojo/_base/lang","dojo/Deferred","dojo/when","dojox/mvc/getStateful"],function(_1,_2,_3,_4){ +return function(_5,_6,_7){ +var _8={}; +var _9=new _2(); +var _a=function(_b){ +var _c={}; +for(var _d in _b){ +if(_d.charAt(0)!=="_"){ +_c[_d]=_b[_d]; +} +} +return (_c); +}; +var _e; +if(_6.store){ +_e={"store":_6.store.store,"query":_6.query?_a(_6.query):_6.store.query?_a(_6.store.query):{}}; +}else{ +if(_6.datastore){ +try{ +var _f=require("dojo/store/DataStore"); +} +catch(e){ +throw new Error("When using datastore the dojo/store/DataStore module must be listed in the dependencies"); +} +_e={"store":new _f({store:_6.datastore.store}),"query":_a(_6.query)}; +}else{ +if(_6.data){ +if(_6.data&&_1.isString(_6.data)){ +_6.data=_1.getObject(_6.data); +} +_e={"data":_6.data,query:{}}; +}else{ +console.warn("mvcModel: Missing parameters."); +} +} +} +var _10=_5[_7].type?_5[_7].type:"dojox/mvc/EditStoreRefListController"; +try{ +var _11=require(_10); +} +catch(e){ +throw new Error(_10+" must be listed in the dependencies"); +} +var _12=new _11(_e); +var _13; +try{ +if(_12.queryStore){ +_13=_12.queryStore(_e.query); +}else{ +var _14=_12._refSourceModelProp||_12._refModelProp||"model"; +_12.set(_14,_4(_e.data)); +_13=_12; +} +} +catch(ex){ +_9.reject("load mvc model error."); +return _9.promise; +} +_3(_13,_1.hitch(this,function(){ +_8=_12; +_9.resolve(_8); +return _8; +}),function(){ +_9.reject("load model error."); +}); +return _9; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/mvcModel.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/mvcModel.js.uncompressed.js new file mode 100644 index 00000000..d94581a2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/mvcModel.js.uncompressed.js @@ -0,0 +1,99 @@ +define("dojox/app/utils/mvcModel", ["dojo/_base/lang", "dojo/Deferred", "dojo/when", "dojox/mvc/getStateful"], +function(lang, Deferred, when, getStateful){ + return function(/*Object*/config, /*Object*/params, /*String*/item){ + // summary: + // mvcModel is called for each mvc model, to create the mvc model based upon the type and params. + // It will also load models and return the either the loadedModels or a promise. + // description: + // Called for each model with a modelLoader of "dojox/app/utils/mvcModel", it will + // create the model based upon the type and the params set for the model in the config. + // config: Object + // The models section of the config for this view or for the app. + // params: Object + // The params set into the config for this model. + // item: String + // The String with the name of this model + // returns: model + // The model, of the type specified in the config for this model. + var loadedModels = {}; + var loadMvcModelDeferred = new Deferred(); + + var fixupQuery = function(query){ + var ops = {}; + for(var item in query){ // need this to handle query params without errors + if(item.charAt(0) !== "_"){ + ops[item] = query[item]; + } + } + return(ops); + }; + + var options; + if(params.store){ + // if query is not set on the model params, it may be set on the store + options = { + "store": params.store.store, + "query": params.query ? fixupQuery(params.query) : params.store.query ? fixupQuery(params.store.query) : {} + }; + }else if(params.datastore){ + try{ + var dataStoreCtor = require("dojo/store/DataStore"); + }catch(e){ + throw new Error("When using datastore the dojo/store/DataStore module must be listed in the dependencies"); + } + options = { + "store": new dataStoreCtor({ + store: params.datastore.store + }), + "query": fixupQuery(params.query) + }; + }else if(params.data){ + if(params.data && lang.isString(params.data)){ + //get the object specified by string value of data property + //cannot assign object literal or reference to data property + //because json.ref will generate __parent to point to its parent + //and will cause infinitive loop when creating StatefulModel. + params.data = lang.getObject(params.data); + } + options = {"data": params.data, query: {}}; + } + else{ + console.warn("mvcModel: Missing parameters."); + } + + var type = config[item].type ? config[item].type : "dojox/mvc/EditStoreRefListController"; + // need to load the class to use for the model + // modelLoader must be listed in the dependencies and has thus already been loaded so it _must_ be here + // => no need for complex code here + try{ + var modelCtor = require(type); + }catch(e){ + throw new Error(type+" must be listed in the dependencies"); + } + var newModel = new modelCtor(options); + var createMvcPromise; + try{ + if(newModel.queryStore){ + createMvcPromise = newModel.queryStore(options.query); + }else{ + var modelProp = newModel._refSourceModelProp || newModel._refModelProp || "model"; + newModel.set(modelProp, getStateful(options.data)); + createMvcPromise = newModel; + } + }catch(ex){ + //console.warn("load mvc model error.", ex); + loadMvcModelDeferred.reject("load mvc model error."); + return loadMvcModelDeferred.promise; + } + when(createMvcPromise, lang.hitch(this, function(){ + // now the loadedModels[item].models is set. + loadedModels = newModel; + loadMvcModelDeferred.resolve(loadedModels); + //this.app.log("in mvcModel promise path, loadedModels = ", loadedModels); + return loadedModels; + }), function(){ + loadMvcModelDeferred.reject("load model error.") + }); + return loadMvcModelDeferred; + } +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/nls.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/nls.js new file mode 100644 index 00000000..fa7db30b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/nls.js @@ -0,0 +1,44 @@ +//>>built +define("dojox/app/utils/nls",["require","dojo/Deferred"],function(_1,_2){ +return function(_3,_4){ +var _5=_3.nls; +if(_5){ +var _6=new _2(); +var _7; +try{ +var _8=_5; +var _9=_8.indexOf("./"); +if(_9>=0){ +_8=_5.substring(_9+2); +} +_7=_1.on?_1.on("error",function(_a){ +if(_6.isResolved()||_6.isRejected()){ +return; +} +if(_a.info[0]&&(_a.info[0].indexOf(_8)>=0)){ +_6.resolve(false); +if(_7){ +_7.remove(); +} +} +}):null; +if(_5.indexOf("./")==0){ +_5="app/"+_5; +} +_1(["dojo/i18n!"+_5],function(_b){ +_6.resolve(_b); +_7.remove(); +}); +} +catch(e){ +_6.reject(e); +if(_7){ +_7.remove(); +} +} +return _6; +}else{ +return false; +} +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/nls.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/nls.js.uncompressed.js new file mode 100644 index 00000000..b62a3ac2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/nls.js.uncompressed.js @@ -0,0 +1,51 @@ +define("dojox/app/utils/nls", ["require", "dojo/Deferred"], function(require, Deferred){ + return function(/*Object*/ config, /*Object*/ parent){ + // summary: + // nsl is called to create to load the nls all for the app, or for a view. + // config: Object + // The section of the config for this view or for the app. + // parent: Object + // The parent of this view or the app itself, so that models from the parent will be + // available to the view. + var path = config.nls; + if(path){ + var nlsDef = new Deferred(); + var requireSignal; + try{ + var loadFile = path; + var index = loadFile.indexOf("./"); + if(index >= 0){ + loadFile = path.substring(index+2); + } + requireSignal = require.on ? require.on("error", function(error){ + if (nlsDef.isResolved() || nlsDef.isRejected()) { + return; + } + if(error.info[0] && (error.info[0].indexOf(loadFile)>= 0)){ + nlsDef.resolve(false); + if(requireSignal){ + requireSignal.remove(); + } + } + }) : null; + + if(path.indexOf("./") == 0){ + path = "app/"+path; + } + + require(["dojo/i18n!"+path], function(nls){ + nlsDef.resolve(nls); + requireSignal.remove(); + }); + }catch(e){ + nlsDef.reject(e); + if(requireSignal){ + requireSignal.remove(); + } + } + return nlsDef; + }else{ + return false; + } + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/simpleModel.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/simpleModel.js new file mode 100644 index 00000000..02ba6788 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/simpleModel.js @@ -0,0 +1,85 @@ +//>>built +define("dojox/app/utils/simpleModel",["dojo/_base/lang","dojo/Deferred","dojo/when"],function(_1,_2,_3){ +return function(_4,_5,_6){ +var _7={}; +var _8=new _2(); +var _9=function(_a){ +var _b={}; +for(var _c in _a){ +if(_c.charAt(0)!=="_"){ +_b[_c]=_a[_c]; +} +} +return (_b); +}; +var _d,_e; +if(_5.store){ +if(!_5.store.params){ +throw new Error("Invalid store for model ["+_6+"]"); +}else{ +if((_5.store.params.data||_5.store.params.store)){ +_d={"store":_5.store.store,"query":_5.query?_9(_5.query):_5.store.query?_9(_5.store.query):{}}; +}else{ +if(_5.store.params.url){ +try{ +_e=require("dojo/store/DataStore"); +} +catch(e){ +throw new Error("dojo/store/DataStore must be listed in the dependencies"); +} +_d={"store":new _e({store:_5.store.store}),"query":_5.query?_9(_5.query):_5.store.query?_9(_5.store.query):{}}; +}else{ +if(_5.store.store){ +_d={"store":_5.store.store,"query":_5.query?_9(_5.query):_5.store.query?_9(_5.store.query):{}}; +} +} +} +} +}else{ +if(_5.datastore){ +try{ +_e=require("dojo/store/DataStore"); +} +catch(e){ +throw new Error("When using datastore the dojo/store/DataStore module must be listed in the dependencies"); +} +_d={"store":new _e({store:_5.datastore.store}),"query":_9(_5.query)}; +}else{ +if(_5.data){ +if(_5.data&&_1.isString(_5.data)){ +_5.data=_1.getObject(_5.data); +} +_d={"data":_5.data,query:{}}; +}else{ +console.warn("simpleModel: Missing parameters."); +} +} +} +var _f; +try{ +if(_d.store){ +_f=_d.store.query(); +}else{ +_f=_d.data; +} +} +catch(ex){ +_8.reject("load simple model error."); +return _8.promise; +} +if(_f.then){ +_3(_f,_1.hitch(this,function(_10){ +_7=_10; +_8.resolve(_7); +return _7; +}),function(){ +loadModelLoaderDeferred.reject("load model error."); +}); +}else{ +_7=_f; +_8.resolve(_7); +return _7; +} +return _8; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/simpleModel.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/simpleModel.js.uncompressed.js new file mode 100644 index 00000000..855d4f02 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/utils/simpleModel.js.uncompressed.js @@ -0,0 +1,110 @@ +define("dojox/app/utils/simpleModel", ["dojo/_base/lang", "dojo/Deferred", "dojo/when"], +function(lang, Deferred, when){ + return function(/*Object*/config, /*Object*/params, /*String*/item){ + // summary: + // simpleModel is called for each simple model, to create the simple model from the DataStore + // based upon the store and query params. + // It will also load models and return the either the loadedModels or a promise. + // description: + // Called for each model with a modelLoader of "dojox/app/utils/simpleModel", it will + // create the model based upon the store and query params set for the model in the config. + // config: Object + // The models section of the config for this view or for the app. + // params: Object + // The params set into the config for this model. + // item: String + // The String with the name of this model + // returns: model + // The model, of the store and query params specified in the config for this model. + var loadedModels = {}; + var loadSimpleModelDeferred = new Deferred(); + + var fixupQuery = function(query){ + var ops = {}; + for(var item in query){ // need this to handle query params without errors + if(item.charAt(0) !== "_"){ + ops[item] = query[item]; + } + } + return(ops); + }; + + var options, dataStoreCtor; + if(params.store){ + if(!params.store.params){ + throw new Error("Invalid store for model ["+item+"]"); + }else if((params.store.params.data || params.store.params.store)){ + options = { + "store": params.store.store, + "query": params.query ? fixupQuery(params.query) : params.store.query ? fixupQuery(params.store.query) : {} + }; + }else if(params.store.params.url){ + try{ + dataStoreCtor = require("dojo/store/DataStore"); + }catch(e){ + throw new Error("dojo/store/DataStore must be listed in the dependencies"); + } + options = { + "store": new dataStoreCtor({ + store: params.store.store + }), + "query": params.query ? fixupQuery(params.query) : params.store.query ? fixupQuery(params.store.query) : {} + }; + } else if(params.store.store){ + // if query is not set on the model params, it may be set on the store + options = { + "store": params.store.store, + "query": params.query ? fixupQuery(params.query) : params.store.query ? fixupQuery(params.store.query) : {} + }; + } + }else if(params.datastore){ + try{ + dataStoreCtor = require("dojo/store/DataStore"); + }catch(e){ + throw new Error("When using datastore the dojo/store/DataStore module must be listed in the dependencies"); + } + options = { + "store": new dataStoreCtor({ + store: params.datastore.store + }), + "query": fixupQuery(params.query) + }; + }else if(params.data){ + if(params.data && lang.isString(params.data)){ + params.data = lang.getObject(params.data); + } + options = {"data": params.data, query: {}}; + } else{ + console.warn("simpleModel: Missing parameters."); + } + var createSimplePromise; + try{ + if(options.store){ + createSimplePromise = options.store.query(); + }else{ + createSimplePromise = options.data; + } + }catch(ex){ + loadSimpleModelDeferred.reject("load simple model error."); + return loadSimpleModelDeferred.promise; + } + if(createSimplePromise.then){ + when(createSimplePromise, lang.hitch(this, function(newModel){ + // now the loadedModels[item].models is set. + //console.log("in simpleModel promise path, loadedModels = ", loadedModels); + loadedModels = newModel; + loadSimpleModelDeferred.resolve(loadedModels); + return loadedModels; + }), function(){ + loadModelLoaderDeferred.reject("load model error.") + }); + }else{ // query did not return a promise, so use newModel + loadedModels = createSimplePromise; + //console.log("in simpleModel else path, loadedModels = ",loadedModels); + loadSimpleModelDeferred.resolve(loadedModels); + return loadedModels; + } + + return loadSimpleModelDeferred; + } +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/Container.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/Container.js new file mode 100644 index 00000000..8002fbd9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/Container.js @@ -0,0 +1,65 @@ +//>>built +define("dojox/app/widgets/Container",["dojo/_base/declare","dojo/_base/lang","dijit/registry","dojo/dom-attr","dojo/dom-geometry","dojo/dom-style","dijit/_WidgetBase","dijit/_Container","dijit/_Contained","dojo/_base/array","dojo/query","../utils/layout","./_ScrollableMixin"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d){ +return _1("dojox.app.widgets.Container",[_7,_8,_9,_d],{scrollable:false,fixedFooter:"",fixedHeader:"",buildRendering:function(){ +if(!this._constraint){ +this._constraint="center"; +_4.set(this.srcNodeRef,"data-app-constraint","center"); +} +this.inherited(arguments); +_6.set(this.domNode,"overflow-x","hidden"); +_6.set(this.domNode,"overflow-y","auto"); +if(this.scrollable){ +this.inherited(arguments); +this.domNode.style.position="absolute"; +this.domNode.style.width="100%"; +this.domNode.style.height="100%"; +} +},startup:function(){ +if(this._started){ +return; +} +if(this.scrollable){ +this.inherited(arguments); +} +this._started=true; +},resize:function(_e,_f){ +var _10=this.domNode; +if(this.scrollable){ +this.inherited(arguments); +this.layout(); +return; +} +if(_e){ +_5.setMarginBox(_10,_e); +} +var mb=_f||{}; +_2.mixin(mb,_e||{}); +if(!("h" in mb)||!("w" in mb)){ +mb=_2.mixin(_5.getMarginBox(_10),mb); +} +var cs=_6.getComputedStyle(_10); +var me=_5.getMarginExtents(_10,cs); +var be=_5.getBorderExtents(_10,cs); +var bb=(this._borderBox={w:mb.w-(me.w+be.w),h:mb.h-(me.h+be.h)}); +var pe=_5.getPadExtents(_10,cs); +this._contentBox={l:_6.toPixelValue(_10,cs.paddingLeft),t:_6.toPixelValue(_10,cs.paddingTop),w:bb.w-pe.w,h:bb.h-pe.h}; +this.layout(); +},layout:function(){ +var _11=_b("> [data-app-constraint]",this.domNode).map(function(_12){ +var w=_3.getEnclosingWidget(_12); +if(w){ +w._constraint=_4.get(_12,"data-app-constraint"); +return w; +} +return {domNode:_12,_constraint:_4.get(_12,"data-app-constraint")}; +}); +if(this._contentBox){ +_c.layoutChildren(this.domNode,this._contentBox,_11); +} +_a.forEach(this.getChildren(),function(_13){ +if(!_13._started&&_13.startup){ +_13.startup(); +} +}); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/Container.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/Container.js.uncompressed.js new file mode 100644 index 00000000..ae1c401b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/Container.js.uncompressed.js @@ -0,0 +1,150 @@ +define("dojox/app/widgets/Container", ["dojo/_base/declare", "dojo/_base/lang", "dijit/registry", "dojo/dom-attr", "dojo/dom-geometry", + "dojo/dom-style", "dijit/_WidgetBase", "dijit/_Container", "dijit/_Contained", "dojo/_base/array", "dojo/query", "../utils/layout", "./_ScrollableMixin"], +function(declare, lang, registry, domAttr, domGeom, domStyle, WidgetBase, Container, Contained, array, query, layoutUtils, ScrollableMixin){ + return declare("dojox.app.widgets.Container", [WidgetBase, Container, Contained, ScrollableMixin], { + scrollable: false, + fixedFooter:"", + fixedHeader:"", + + buildRendering: function(){ + //set default _constraint="center" + if(!this._constraint){ + this._constraint = "center"; + domAttr.set(this.srcNodeRef, "data-app-constraint", "center"); + } + this.inherited(arguments); + + //fix slide transition issue on tablet + domStyle.set(this.domNode, "overflow-x", "hidden"); + domStyle.set(this.domNode, "overflow-y", "auto"); + + // build scrollable container if scrollable=true + if(this.scrollable){ + this.inherited(arguments); + this.domNode.style.position = "absolute"; + this.domNode.style.width = "100%"; + this.domNode.style.height = "100%"; + } + }, + + startup: function(){ + if(this._started){ + return; + } + // startup scrollable container if scrollable=true + if(this.scrollable){ + this.inherited(arguments); + } + this._started = true; + }, + + resize: function(changeSize, resultSize){ + // summary: + // Call this to resize a widget, or after its size has changed. + // description: + // ####Change size mode + // + // When changeSize is specified, changes the marginBox of this widget + // and forces it to re-layout its contents accordingly. + // changeSize may specify height, width, or both. + // + // If resultSize is specified it indicates the size the widget will + // become after changeSize has been applied. + // + // ####Notification mode + // + // When changeSize is null, indicates that the caller has already changed + // the size of the widget, or perhaps it changed because the browser + // window was resized. Tells widget to re-layout its contents accordingly. + // + // If resultSize is also specified it indicates the size the widget has + // become. + // + // In either mode, this method also: + // + // 1. Sets this._borderBox and this._contentBox to the new size of + // the widget. Queries the current domNode size if necessary. + // 2. Calls layout() to resize contents (and maybe adjust child widgets). + // + // changeSize: Object? + // Sets the widget to this margin-box size and position. + // May include any/all of the following properties: + // | {w: int, h: int, l: int, t: int} + // + // resultSize: Object? + // The margin-box size of this widget after applying changeSize (if + // changeSize is specified). If caller knows this size and + // passes it in, we don't need to query the browser to get the size. + // | {w: int, h: int} + + var node = this.domNode; + + if(this.scrollable){ + this.inherited(arguments); + this.layout(); + return; + } + + // set margin box size, unless it wasn't specified, in which case use current size + if(changeSize){ + domGeom.setMarginBox(node, changeSize); + } + + // If either height or width wasn't specified by the user, then query node for it. + // But note that setting the margin box and then immediately querying dimensions may return + // inaccurate results, so try not to depend on it. + var mb = resultSize || {}; + lang.mixin(mb, changeSize || {}); // changeSize overrides resultSize + if( !("h" in mb) || !("w" in mb) ){ + mb = lang.mixin(domGeom.getMarginBox(node), mb); // just use domGeometry.marginBox() to fill in missing values + } + + // Compute and save the size of my border box and content box + // (w/out calling domGeometry.getContentBox() since that may fail if size was recently set) + var cs = domStyle.getComputedStyle(node); + var me = domGeom.getMarginExtents(node, cs); + var be = domGeom.getBorderExtents(node, cs); + var bb = (this._borderBox = { + w: mb.w - (me.w + be.w), + h: mb.h - (me.h + be.h) + }); + var pe = domGeom.getPadExtents(node, cs); + this._contentBox = { + l: domStyle.toPixelValue(node, cs.paddingLeft), + t: domStyle.toPixelValue(node, cs.paddingTop), + w: bb.w - pe.w, + h: bb.h - pe.h + }; + + // Callback for widget to adjust size of its children + this.layout(); + }, + + layout: function(){ + // summary: + // layout container + + var children = query("> [data-app-constraint]", this.domNode).map(function(node){ + var w = registry.getEnclosingWidget(node); + if(w){ + w._constraint = domAttr.get(node, "data-app-constraint"); + return w; + } + + return { + domNode: node, + _constraint: domAttr.get(node, "data-app-constraint") + }; + }); + + if(this._contentBox){ + layoutUtils.layoutChildren(this.domNode, this._contentBox, children); + } + array.forEach(this.getChildren(), function(child){ + if(!child._started && child.startup){ + child.startup(); + } + }); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/_ScrollableMixin.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/_ScrollableMixin.js new file mode 100644 index 00000000..f1da90d0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/_ScrollableMixin.js @@ -0,0 +1,93 @@ +//>>built +define("dojox/app/widgets/_ScrollableMixin",["dojo/_base/declare","dojo/_base/lang","dojo/_base/array","dojo/_base/window","dojo/dom-class","dijit/registry","dojo/dom","dojo/dom-construct","dojox/mobile/scrollable"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9){ +return _1("dojox.app.widgets._ScrollableMixin",_9,{scrollableParams:null,appBars:true,allowNestedScrolls:true,constructor:function(){ +this.scrollableParams={noResize:true}; +},destroy:function(){ +this.cleanup(); +this.inherited(arguments); +},startup:function(){ +if(this._started){ +return; +} +this.findAppBars(); +var _a,_b=this.scrollableParams; +if(this.fixedHeader){ +_a=_7.byId(this.fixedHeader); +if(_a.parentNode==this.domNode){ +this.isLocalHeader=true; +} +_b.fixedHeaderHeight=_a.offsetHeight; +} +if(this.fixedFooter){ +_a=_7.byId(this.fixedFooter); +if(_a){ +if(_a.parentNode==this.domNode){ +this.isLocalFooter=true; +_a.style.bottom="0px"; +} +_b.fixedFooterHeight=_a.offsetHeight; +} +} +this.init(_b); +this.inherited(arguments); +this.reparent(); +},buildRendering:function(){ +this.inherited(arguments); +_5.add(this.domNode,"mblScrollableView"); +this.domNode.style.overflow="hidden"; +this.domNode.style.top="0px"; +this.containerNode=_8.create("div",{className:"mblScrollableViewContainer"},this.domNode); +this.containerNode.style.position="absolute"; +this.containerNode.style.top="0px"; +if(this.scrollDir==="v"){ +this.containerNode.style.width="100%"; +} +},reparent:function(){ +var i,_c,_d,c; +for(i=0,_c=0,_d=this.domNode.childNodes.length;i<_d;i++){ +c=this.domNode.childNodes[_c]; +if(c===this.containerNode||this.checkFixedBar(c,true)){ +_c++; +continue; +} +this.containerNode.appendChild(this.domNode.removeChild(c)); +} +},resize:function(){ +this.inherited(arguments); +_3.forEach(this.getChildren(),function(_e){ +if(_e.resize){ +_e.resize(); +} +}); +},findAppBars:function(){ +if(!this.appBars){ +return; +} +var i,_f,c; +for(i=0,_f=_4.body().childNodes.length;i<_f;i++){ +c=_4.body().childNodes[i]; +this.checkFixedBar(c,false); +} +if(this.domNode.parentNode){ +for(i=0,_f=this.domNode.parentNode.childNodes.length;i<_f;i++){ +c=this.domNode.parentNode.childNodes[i]; +this.checkFixedBar(c,false); +} +} +this.fixedFooterHeight=this.fixedFooter?this.fixedFooter.offsetHeight:0; +},checkFixedBar:function(_10,_11){ +if(_10.nodeType===1){ +var _12=_10.getAttribute("data-app-constraint")||(_6.byNode(_10)&&_6.byNode(_10)["data-app-constraint"]); +if(_12==="bottom"){ +_5.add(_10,"mblFixedBottomBar"); +if(_11){ +this.fixedFooter=_10; +}else{ +this._fixedAppFooter=_10; +} +return _12; +} +} +return null; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/_ScrollableMixin.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/_ScrollableMixin.js.uncompressed.js new file mode 100644 index 00000000..f25888e9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/app/widgets/_ScrollableMixin.js.uncompressed.js @@ -0,0 +1,164 @@ +// This module is modified from dojox/mobile/_ScrollableMixin and dojox/mobile/ScrollableView +define("dojox/app/widgets/_ScrollableMixin", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/_base/array", + "dojo/_base/window", + "dojo/dom-class", + "dijit/registry", + "dojo/dom", + "dojo/dom-construct", + "dojox/mobile/scrollable"], + function(declare, lang, array, win, domClass, registry, dom, domConstruct, Scrollable){ + // module: + // dojox/mobile/_ScrollableMixin + // summary: + // Mixin for widgets to have a touch scrolling capability. + + return declare("dojox.app.widgets._ScrollableMixin", Scrollable, { + // summary: + // Mixin for widgets to have a touch scrolling capability. + // description: + // Actual implementation is in dojox/mobile/scrollable.js. + // scrollable.js is not a dojo class, but just a collection + // of functions. This module makes scrollable.js a dojo class. + + // scrollableParams: Object + // Parameters for dojox/mobile/scrollable.init(). + scrollableParams: null, + + // appBars: Boolean + // Enables the search for application-specific bars (header or footer). + appBars: true, + + // allowNestedScrolls: Boolean + // e.g. Allow ScrollableView in a SwapView. + allowNestedScrolls: true, + + constructor: function(){ + this.scrollableParams = {noResize: true}; // set noResize to true to match the way it was done in app/widgets/scrollable.js + }, + + destroy: function(){ + this.cleanup(); + this.inherited(arguments); + }, + + startup: function(){ + if(this._started){ return; } + this.findAppBars(); + var node, params = this.scrollableParams; + if(this.fixedHeader){ + node = dom.byId(this.fixedHeader); + if(node.parentNode == this.domNode){ // local footer + this.isLocalHeader = true; + } + params.fixedHeaderHeight = node.offsetHeight; + } + if(this.fixedFooter){ + node = dom.byId(this.fixedFooter); + if(node){ + if(node.parentNode == this.domNode){ // local footer + this.isLocalFooter = true; + node.style.bottom = "0px"; + } + params.fixedFooterHeight = node.offsetHeight; + } + } + + this.init(params); + this.inherited(arguments); + this.reparent(); + }, + + // build scrollable container domNode. This method from dojox/mobile/ScrollableView + buildRendering: function(){ + this.inherited(arguments); + domClass.add(this.domNode, "mblScrollableView"); + this.domNode.style.overflow = "hidden"; + this.domNode.style.top = "0px"; + this.containerNode = domConstruct.create("div", {className:"mblScrollableViewContainer"}, this.domNode); + this.containerNode.style.position = "absolute"; + this.containerNode.style.top = "0px"; // view bar is relative + if(this.scrollDir === "v"){ + this.containerNode.style.width = "100%"; + } + }, + + // This method from dojox/mobile/ScrollableView + reparent: function(){ + // summary: + // Moves all the children to containerNode. + var i, idx, len, c; + for(i = 0, idx = 0, len = this.domNode.childNodes.length; i < len; i++){ + c = this.domNode.childNodes[idx]; + // search for view-specific header or footer + // if(c === this.containerNode){ + if(c === this.containerNode || this.checkFixedBar(c, true)){ + idx++; + continue; + } + this.containerNode.appendChild(this.domNode.removeChild(c)); + } + }, + + // This method from dojox/mobile/ScrollableView + resize: function(){ + // summary: + // Calls resize() of each child widget. + this.inherited(arguments); // scrollable#resize() will be called + array.forEach(this.getChildren(), function(child){ + if(child.resize){ child.resize(); } + }); + }, + + + findAppBars: function(){ + // summary: + // Search for application-specific header or footer. + if(!this.appBars){ return; } + var i, len, c; + for(i = 0, len = win.body().childNodes.length; i < len; i++){ + c = win.body().childNodes[i]; + this.checkFixedBar(c, false); + } + if(this.domNode.parentNode){ + for(i = 0, len = this.domNode.parentNode.childNodes.length; i < len; i++){ + c = this.domNode.parentNode.childNodes[i]; + this.checkFixedBar(c, false); + } + } + this.fixedFooterHeight = this.fixedFooter ? this.fixedFooter.offsetHeight : 0; + }, + + + checkFixedBar: function(/*DomNode*/node, /*Boolean*/local){ + // summary: + // Checks if the given node is a fixed bar or not. + if(node.nodeType === 1){ + var fixed = node.getAttribute("data-app-constraint") + || (registry.byNode(node) && registry.byNode(node)["data-app-constraint"]); + /* if(fixed === "top"){ + domClass.add(node, "mblFixedHeaderBar"); + if(local){ + node.style.top = "0px"; + this.fixedHeader = node; + } + return fixed; + }else + */ + if(fixed === "bottom"){ + domClass.add(node, "mblFixedBottomBar"); + if(local){ + this.fixedFooter = node; + }else{ + this._fixedAppFooter = node; + } + return fixed; + } + } + return null; + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/README new file mode 100644 index 00000000..d5e447ca --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/README @@ -0,0 +1,53 @@ +------------------------------------------------------------------------------- +DojoX Data +------------------------------------------------------------------------------- +Version 1.0 +Release date: 11/18/2008 +------------------------------------------------------------------------------- +Project state: experimental +------------------------------------------------------------------------------- +Project authors + Jared Jurkiewicz (jared.jurkiewicz@gmail.com) + Benjamin Schell (Corporate CLA) + +------------------------------------------------------------------------------- +Project description + +The DojoX Atom project is an implementation of the ATOM document format in a +JavaScript model and a full Atom Publishing Protocol (APP) io library for working +with ATOM feeds + +------------------------------------------------------------------------------- +Dependencies: + +DojoX Atom has dependencies on core dojo (dojo.data) and the D.O.H. unit test +framework. +------------------------------------------------------------------------------- +Documentation: + +See the Dojo API tool (http://dojotoolkit.org/api) +as well as the reference guide (http://dojotoolkit.org/reference-guide/dojox/atom.html) +------------------------------------------------------------------------------- +Contributions: + +Contributions of documentation, examples, and fixes are always welcome. + +------------------------------------------------------------------------------- +Installation instructions + +Grab the following from the Dojo SVN Repository: +http://svn.dojotoolkit.org/src/dojo/dojox/trunk/atom/* + +Install into the following directory structure: +/dojox/atom/ + +...which should be at the same level as your Dojo checkout. + +/dojox/atom/* + +Require in the sections you wish to use (the model, IO library, etc) +------------------------------------------------------------------------------- +Additional Notes: + This library is still undergoing some work and as such the API may change + hence the marking of 'experimental'. + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/io/Connection.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/io/Connection.js new file mode 100644 index 00000000..7efa0d74 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/io/Connection.js @@ -0,0 +1,246 @@ +//>>built +define("dojox/atom/io/Connection",["dojo/_base/declare","dojo/_base/kernel","dojo/_base/xhr","./model"],function(_1,_2,_3,_4){ +return _1("dojox.atom.io.Connection",null,{constructor:function(_5,_6){ +this.sync=_5; +this.preventCache=_6; +},preventCache:false,alertsEnabled:false,getFeed:function(_7,_8,_9,_a){ +this._getXmlDoc(_7,"feed",new _4.Feed(),_4._Constants.ATOM_NS,_8,_9,_a); +},getService:function(_b,_c,_d,_e){ +this._getXmlDoc(_b,"service",new _4.Service(_b),_4._Constants.APP_NS,_c,_d,_e); +},getEntry:function(_f,_10,_11,_12){ +this._getXmlDoc(_f,"entry",new _4.Entry(),_4._Constants.ATOM_NS,_10,_11,_12); +},_getXmlDoc:function(url,_13,_14,_15,_16,_17,_18){ +if(!_18){ +_18=_2.global; +} +var ae=this.alertsEnabled; +var _19={url:url,handleAs:"xml",sync:this.sync,preventCache:this.preventCache,load:function(_1a,_1b){ +var _1c=null; +var _1d=_1a; +var _1e; +if(_1d){ +if(typeof (_1d.getElementsByTagNameNS)!="undefined"){ +_1e=_1d.getElementsByTagNameNS(_15,_13); +if(_1e&&_1e.length>0){ +_1c=_1e.item(0); +}else{ +if(_1d.lastChild){ +_1c=_1d.lastChild; +} +} +}else{ +if(typeof (_1d.getElementsByTagName)!="undefined"){ +_1e=_1d.getElementsByTagName(_13); +if(_1e&&_1e.length>0){ +for(var i=0;i<_1e.length;i++){ +if(_1e[i].namespaceURI==_15){ +_1c=_1e[i]; +break; +} +} +}else{ +if(_1d.lastChild){ +_1c=_1d.lastChild; +} +} +}else{ +if(_1d.lastChild){ +_1c=_1d.lastChild; +}else{ +_16.call(_18,null,null,_1b); +return; +} +} +} +_14.buildFromDom(_1c); +if(_16){ +_16.call(_18,_14,_1d,_1b); +}else{ +if(ae){ +throw new Error("The callback value does not exist."); +} +} +}else{ +_16.call(_18,null,null,_1b); +} +}}; +if(this.user&&this.user!==null){ +_19.user=this.user; +} +if(this.password&&this.password!==null){ +_19.password=this.password; +} +if(_17){ +_19.error=function(_1f,_20){ +_17.call(_18,_1f,_20); +}; +}else{ +_19.error=function(){ +throw new Error("The URL requested cannot be accessed"); +}; +} +_3.get(_19); +},updateEntry:function(_21,_22,_23,_24,_25,_26){ +if(!_26){ +_26=_2.global; +} +_21.updated=new Date(); +var url=_21.getEditHref(); +if(!url){ +throw new Error("A URL has not been specified for editing this entry."); +} +var _27=this; +var ae=this.alertsEnabled; +var _28={url:url,handleAs:"text",contentType:"text/xml",sync:this.sync,preventCache:this.preventCache,load:function(_29,_2a){ +var _2b=null; +if(_24){ +_2b=_2a.xhr.getResponseHeader("Location"); +if(!_2b){ +_2b=url; +} +var _2c=function(_2d,dom,_2e){ +if(_22){ +_22.call(_26,_2d,_2b,_2e); +}else{ +if(ae){ +throw new Error("The callback value does not exist."); +} +} +}; +_27.getEntry(_2b,_2c); +}else{ +if(_22){ +_22.call(_26,_21,_2a.xhr.getResponseHeader("Location"),_2a); +}else{ +if(ae){ +throw new Error("The callback value does not exist."); +} +} +} +return _29; +}}; +if(this.user&&this.user!==null){ +_28.user=this.user; +} +if(this.password&&this.password!==null){ +_28.password=this.password; +} +if(_23){ +_28.error=function(_2f,_30){ +_23.call(_26,_2f,_30); +}; +}else{ +_28.error=function(){ +throw new Error("The URL requested cannot be accessed"); +}; +} +if(_25){ +_28.postData=_21.toString(true); +_28.headers={"X-Method-Override":"PUT"}; +_3.post(_28); +}else{ +_28.putData=_21.toString(true); +var xhr=_3.put(_28); +} +},addEntry:function(_31,url,_32,_33,_34,_35){ +if(!_35){ +_35=_2.global; +} +_31.published=new Date(); +_31.updated=new Date(); +var _36=_31.feedUrl; +var ae=this.alertsEnabled; +if(!url&&_36){ +url=_36; +} +if(!url){ +if(ae){ +throw new Error("The request cannot be processed because the URL parameter is missing."); +} +return; +} +var _37=this; +var _38={url:url,handleAs:"text",contentType:"text/xml",sync:this.sync,preventCache:this.preventCache,postData:_31.toString(true),load:function(_39,_3a){ +var _3b=_3a.xhr.getResponseHeader("Location"); +if(!_3b){ +_3b=url; +} +if(!_3a.retrieveEntry){ +if(_32){ +_32.call(_35,_31,_3b,_3a); +}else{ +if(ae){ +throw new Error("The callback value does not exist."); +} +} +}else{ +var _3c=function(_3d,dom,_3e){ +if(_32){ +_32.call(_35,_3d,_3b,_3e); +}else{ +if(ae){ +throw new Error("The callback value does not exist."); +} +} +}; +_37.getEntry(_3b,_3c); +} +return _39; +}}; +if(this.user&&this.user!==null){ +_38.user=this.user; +} +if(this.password&&this.password!==null){ +_38.password=this.password; +} +if(_33){ +_38.error=function(_3f,_40){ +_33.call(_35,_3f,_40); +}; +}else{ +_38.error=function(){ +throw new Error("The URL requested cannot be accessed"); +}; +} +_3.post(_38); +},deleteEntry:function(_41,_42,_43,_44,_45){ +if(!_45){ +_45=_2.global; +} +var url=null; +if(typeof (_41)=="string"){ +url=_41; +}else{ +url=_41.getEditHref(); +} +if(!url){ +_42.call(_45,false,null); +throw new Error("The request cannot be processed because the URL parameter is missing."); +} +var _46={url:url,handleAs:"text",sync:this.sync,preventCache:this.preventCache,load:function(_47,_48){ +_42.call(_45,_48); +return _47; +}}; +if(this.user&&this.user!==null){ +_46.user=this.user; +} +if(this.password&&this.password!==null){ +_46.password=this.password; +} +if(_43){ +_46.error=function(_49,_4a){ +_43.call(_45,_49,_4a); +}; +}else{ +_46.error=function(){ +throw new Error("The URL requested cannot be accessed"); +}; +} +if(_44){ +_46.headers={"X-Method-Override":"DELETE"}; +dhxr.post(_46); +}else{ +_3.del(_46); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/io/Connection.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/io/Connection.js.uncompressed.js new file mode 100644 index 00000000..3777baac --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/io/Connection.js.uncompressed.js @@ -0,0 +1,425 @@ +define("dojox/atom/io/Connection", [ + "dojo/_base/declare", + "dojo/_base/kernel", + "dojo/_base/xhr", + "./model" +], function (declare, kernel, xhrUtil, model){ + +return declare("dojox.atom.io.Connection",null,{ + // summary: + // This object implements a transport layer for working with ATOM feeds and ATOM publishing protocols. + // description: + // This object implements a transport layer for working with ATOM feeds and ATOM publishing protocols. + // Specifically, it provides a mechanism by which feeds can be fetched and entries can be fetched, created + // deleted, and modified. It also provides access to the introspection data. + + constructor: function(/* Boolean */sync, /* Boolean */preventCache){ + // summary: + // initializer + this.sync = sync; + this.preventCache = preventCache; + }, + + preventCache: false, //Flag to denote if the instance should use the xhr prevent cache mechanism + + alertsEnabled: false, //Flag to turn on alerts instead of throwing errors. + + getFeed: function(/*String*/url, /*Function*/callback, /*Function*/errorCallback, scope){ + // summary: + // Function to obtain a s specific ATOM feed from a given ATOM Feed url. + // description: + // This function takes the URL for a specific ATOM feed and returns + // the data from that feed to the caller through the use of a callback + // handler. + // url: String + // The URL of the ATOM feed to fetch. + // callback: + // Function + // A function reference that will handle the feed when it has been retrieved. + // The callback should accept two parameters: The feed object and the original complete DOM object. + // scope: Object + // The scope to use for all callbacks. + // returns: + // Nothing. The return is handled through the callback handler. + this._getXmlDoc(url, "feed", new model.Feed(), model._Constants.ATOM_NS, callback, /*handleDocumentRetrieved,*/ errorCallback, scope); + }, + + getService: function(url, callback, errorCallback, scope){ + // summary: + // Function to retrieve an introspection document from the given URL. + // description: + // This function takes the URL for an ATOM item and feed and returns + // the introspection document. + // url: + // String + // The URL of the ATOM document to obtain the introspection document of. + // callback: + // Function + // A function reference that will handle the introspection document when it has been retrieved. + // The callback should accept two parameters: The introspection document object and the original complete DOM object. + // returns: + // Nothing. The return is handled through the callback handler. + this._getXmlDoc(url, "service", new model.Service(url), model._Constants.APP_NS, callback, errorCallback, scope); + }, + + getEntry: function(url, callback, errorCallback, scope){ + // summary: + // Function to retrieve a single entry from an ATOM feed from the given URL. + // description: + // This function takes the URL for an ATOM entry and returns the constructed dojox.atom.io.model.Entry object through + // the specified callback. + // url: + // String + // The URL of the ATOM Entry document to parse. + // callback: + // Function + // A function reference that will handle the Entry object obtained. + // The callback should accept two parameters, the dojox.atom.io.model.Entry object and the original dom. + // returns: + // Nothing. The return is handled through the callback handler. + this._getXmlDoc(url, "entry", new model.Entry(), model._Constants.ATOM_NS, callback, errorCallback, scope); + }, + + _getXmlDoc: function(url, nodeName, newNode, namespace, callback, errorCallback, scope){ + // summary: + // Internal Function to retrieve an XML document and pass the results to a callback. + // description: + // This internal function takes the URL for an XML document and and passes the + // parsed contents to a specified callback. + // url: + // String + // The URL of the XML document to retrieve + // callback: + // Function + // A function reference that will handle the retrieved XML data. + // The callback should accept one parameter, the DOM of the parsed XML document. + // returns: + // Nothing. The return is handled through the callback handler. + if(!scope){ + scope = kernel.global; + } + var ae = this.alertsEnabled; + var xhrArgs = { + url: url, + handleAs: "xml", + sync: this.sync, + preventCache: this.preventCache, + load: function(data, args){ + var node = null; + var evaldObj = data; + var nodes; + if(evaldObj){ + //find the first node of the appropriate name + if(typeof(evaldObj.getElementsByTagNameNS)!= "undefined"){ + nodes = evaldObj.getElementsByTagNameNS(namespace,nodeName); + if(nodes && nodes.length > 0){ + node = nodes.item(0); + }else if(evaldObj.lastChild){ + // name_spaces can be used without declaration of atom (for example + // gooogle feeds often returns iTunes name_space qualifiers on elements) + // Treat this situation like name_spaces not enabled. + node = evaldObj.lastChild; + } + }else if(typeof(evaldObj.getElementsByTagName)!= "undefined"){ + // Find the first eith the correct tag name and correct namespace. + nodes = evaldObj.getElementsByTagName(nodeName); + if(nodes && nodes.length > 0){ + for(var i=0; i>built +define("dojox/atom/io/model",["dojo/_base/kernel","dojo/_base/declare","dojo/_base/lang","dojo/date/stamp","dojox/xml/parser"],function(_1,_2,_3,_4,_5){ +var _6={}; +_1.setObject("dojox.atom.io.model",_6); +_6._Constants={"ATOM_URI":"http://www.w3.org/2005/Atom","ATOM_NS":"http://www.w3.org/2005/Atom","PURL_NS":"http://purl.org/atom/app#","APP_NS":"http://www.w3.org/2007/app"}; +_6._actions={"link":function(_7,_8){ +if(_7.links===null){ +_7.links=[]; +} +var _9=new _6.Link(); +_9.buildFromDom(_8); +_7.links.push(_9); +},"author":function(_a,_b){ +if(_a.authors===null){ +_a.authors=[]; +} +var _c=new _6.Person("author"); +_c.buildFromDom(_b); +_a.authors.push(_c); +},"contributor":function(_d,_e){ +if(_d.contributors===null){ +_d.contributors=[]; +} +var _f=new _6.Person("contributor"); +_f.buildFromDom(_e); +_d.contributors.push(_f); +},"category":function(obj,_10){ +if(obj.categories===null){ +obj.categories=[]; +} +var cat=new _6.Category(); +cat.buildFromDom(_10); +obj.categories.push(cat); +},"icon":function(obj,_11){ +obj.icon=_5.textContent(_11); +},"id":function(obj,_12){ +obj.id=_5.textContent(_12); +},"rights":function(obj,_13){ +obj.rights=_5.textContent(_13); +},"subtitle":function(obj,_14){ +var cnt=new _6.Content("subtitle"); +cnt.buildFromDom(_14); +obj.subtitle=cnt; +},"title":function(obj,_15){ +var cnt=new _6.Content("title"); +cnt.buildFromDom(_15); +obj.title=cnt; +},"updated":function(obj,_16){ +obj.updated=_6.util.createDate(_16); +},"issued":function(obj,_17){ +obj.issued=_6.util.createDate(_17); +},"modified":function(obj,_18){ +obj.modified=_6.util.createDate(_18); +},"published":function(obj,_19){ +obj.published=_6.util.createDate(_19); +},"entry":function(obj,_1a){ +if(obj.entries===null){ +obj.entries=[]; +} +var _1b=obj.createEntry?obj.createEntry():new _6.Entry(); +_1b.buildFromDom(_1a); +obj.entries.push(_1b); +},"content":function(obj,_1c){ +var cnt=new _6.Content("content"); +cnt.buildFromDom(_1c); +obj.content=cnt; +},"summary":function(obj,_1d){ +var _1e=new _6.Content("summary"); +_1e.buildFromDom(_1d); +obj.summary=_1e; +},"name":function(obj,_1f){ +obj.name=_5.textContent(_1f); +},"email":function(obj,_20){ +obj.email=_5.textContent(_20); +},"uri":function(obj,_21){ +obj.uri=_5.textContent(_21); +},"generator":function(obj,_22){ +obj.generator=new _6.Generator(); +obj.generator.buildFromDom(_22); +}}; +_6.util={createDate:function(_23){ +var _24=_5.textContent(_23); +if(_24){ +return _4.fromISOString(_3.trim(_24)); +} +return null; +},escapeHtml:function(str){ +return str.replace(/&/gm,"&").replace(//gm,">").replace(/"/gm,""").replace(/'/gm,"'"); +},unEscapeHtml:function(str){ +return str.replace(/</gm,"<").replace(/>/gm,">").replace(/"/gm,"\"").replace(/'/gm,"'").replace(/&/gm,"&"); +},getNodename:function(_25){ +var _26=null; +if(_25!==null){ +_26=_25.localName?_25.localName:_25.nodeName; +if(_26!==null){ +var _27=_26.indexOf(":"); +if(_27!==-1){ +_26=_26.substring((_27+1),_26.length); +} +} +} +return _26; +}}; +_6.Node=_2(null,{constructor:function(_28,_29,_2a,_2b,_2c){ +this.name_space=_28; +this.name=_29; +this.attributes=[]; +if(_2a){ +this.attributes=_2a; +} +this.content=[]; +this.rawNodes=[]; +this.textContent=null; +if(_2b){ +this.content.push(_2b); +} +this.shortNs=_2c; +this._objName="Node"; +this.nodeType="Node"; +},buildFromDom:function(_2d){ +this._saveAttributes(_2d); +this.name_space=_2d.namespaceURI; +this.shortNs=_2d.prefix; +this.name=_6.util.getNodename(_2d); +for(var x=0;x<_2d.childNodes.length;x++){ +var c=_2d.childNodes[x]; +if(_6.util.getNodename(c)!="#text"){ +this.rawNodes.push(c); +var n=new _6.Node(); +n.buildFromDom(c,true); +this.content.push(n); +}else{ +this.content.push(c.nodeValue); +} +} +this.textContent=_5.textContent(_2d); +},_saveAttributes:function(_2e){ +if(!this.attributes){ +this.attributes=[]; +} +var _2f=function(_30){ +var _31=_30.attributes; +if(_31===null){ +return false; +} +return (_31.length!==0); +}; +if(_2f(_2e)&&this._getAttributeNames){ +var _32=this._getAttributeNames(_2e); +if(_32&&_32.length>0){ +for(var x in _32){ +var _33=_2e.getAttribute(_32[x]); +if(_33){ +this.attributes[_32[x]]=_33; +} +} +} +} +},addAttribute:function(_34,_35){ +this.attributes[_34]=_35; +},getAttribute:function(_36){ +return this.attributes[_36]; +},_getAttributeNames:function(_37){ +var _38=[]; +for(var i=0;i<_37.attributes.length;i++){ +_38.push(_37.attributes[i].nodeName); +} +return _38; +},toString:function(){ +var xml=[]; +var x; +var _39=(this.shortNs?this.shortNs+":":"")+this.name; +var _3a=(this.name=="#cdata-section"); +if(_3a){ +xml.push(""); +}else{ +xml.push("<"); +xml.push(_39); +if(this.name_space){ +xml.push(" xmlns='"+this.name_space+"'"); +} +if(this.attributes){ +for(x in this.attributes){ +xml.push(" "+x+"='"+this.attributes[x]+"'"); +} +} +if(this.content){ +xml.push(">"); +for(x in this.content){ +xml.push(this.content[x]); +} +xml.push("\n"); +}else{ +xml.push("/>\n"); +} +} +return xml.join(""); +},addContent:function(_3b){ +this.content.push(_3b); +}}); +_6.AtomItem=_2(_6.Node,{constructor:function(_3c){ +this.ATOM_URI=_6._Constants.ATOM_URI; +this.links=null; +this.authors=null; +this.categories=null; +this.contributors=null; +this.icon=this.id=this.logo=this.xmlBase=this.rights=null; +this.subtitle=this.title=null; +this.updated=this.published=null; +this.issued=this.modified=null; +this.content=null; +this.extensions=null; +this.entries=null; +this.name_spaces={}; +this._objName="AtomItem"; +this.nodeType="AtomItem"; +},_getAttributeNames:function(){ +return null; +},_accepts:{},accept:function(tag){ +return Boolean(this._accepts[tag]); +},_postBuild:function(){ +},buildFromDom:function(_3d){ +var i,c,n; +for(i=0;i<_3d.attributes.length;i++){ +c=_3d.attributes.item(i); +n=_6.util.getNodename(c); +if(c.prefix=="xmlns"&&c.prefix!=n){ +this.addNamespace(c.nodeValue,n); +} +} +c=_3d.childNodes; +for(i=0;i\n"); +return s.join(""); +},buildFromDom:function(_61){ +this._saveAttributes(_61); +this.label=this.attributes.label; +this.scheme=this.attributes.scheme; +this.term=this.attributes.term; +if(this._postBuild){ +this._postBuild(); +} +}}); +_6.Content=_2(_6.Node,{constructor:function(_62,_63,src,_64,_65){ +this.tagName=_62; +this.value=_63; +this.src=src; +this.type=_64; +this.xmlLang=_65; +this.HTML="html"; +this.TEXT="text"; +this.XHTML="xhtml"; +this.XML="xml"; +this._useTextContent="true"; +this.nodeType="Content"; +},_getAttributeNames:function(){ +return ["type","src"]; +},_postBuild:function(){ +},buildFromDom:function(_66){ +var _67=_66.getAttribute("type"); +if(_67){ +_67=_67.toLowerCase(); +if(_67=="xml"||"text/xml"){ +_67=this.XML; +} +}else{ +_67="text"; +} +if(_67===this.XML){ +if(_66.firstChild){ +var i; +this.value=""; +for(i=0;i<_66.childNodes.length;i++){ +var c=_66.childNodes[i]; +if(c){ +this.value+=_5.innerXML(c); +} +} +} +}else{ +if(_66.innerHTML){ +this.value=_66.innerHTML; +}else{ +this.value=_5.textContent(_66); +} +} +this._saveAttributes(_66); +if(this.attributes){ +this.type=this.attributes.type; +this.scheme=this.attributes.scheme; +this.term=this.attributes.term; +} +if(!this.type){ +this.type="text"; +} +var _68=this.type.toLowerCase(); +if(_68==="html"||_68==="text/html"||_68==="xhtml"||_68==="text/xhtml"){ +this.value=this.value?_6.util.unEscapeHtml(this.value):""; +} +if(this._postBuild){ +this._postBuild(); +} +},toString:function(){ +var s=[]; +s.push("<"+this.tagName+" "); +if(!this.type){ +this.type="text"; +} +if(this.type){ +s.push(" type=\""+this.type+"\" "); +} +if(this.xmlLang){ +s.push(" xml:lang=\""+this.xmlLang+"\" "); +} +if(this.xmlBase){ +s.push(" xml:base=\""+this.xmlBase+"\" "); +} +if(this.type.toLowerCase()==this.HTML){ +s.push(">"+_6.util.escapeHtml(this.value)+"\n"); +}else{ +s.push(">"+this.value+"\n"); +} +var ret=s.join(""); +return ret; +}}); +_6.Link=_2(_6.Node,{constructor:function(_69,rel,_6a,_6b,_6c){ +this.href=_69; +this.hrefLang=_6a; +this.rel=rel; +this.title=_6b; +this.type=_6c; +this.nodeType="Link"; +},_getAttributeNames:function(){ +return ["href","jrefLang","rel","title","type"]; +},_postBuild:function(){ +},buildFromDom:function(_6d){ +this._saveAttributes(_6d); +this.href=this.attributes.href; +this.hrefLang=this.attributes.hreflang; +this.rel=this.attributes.rel; +this.title=this.attributes.title; +this.type=this.attributes.type; +if(this._postBuild){ +this._postBuild(); +} +},toString:function(){ +var s=[]; +s.push("\n"); +return s.join(""); +}}); +_6.Person=_2(_6.Node,{constructor:function(_6e,_6f,_70,uri){ +this.author="author"; +this.contributor="contributor"; +if(!_6e){ +_6e=this.author; +} +this.personType=_6e; +this.name=_6f||""; +this.email=_70||""; +this.uri=uri||""; +this._objName="Person"; +this.nodeType="Person"; +},_getAttributeNames:function(){ +return null; +},_postBuild:function(){ +},accept:function(tag){ +return Boolean(this._accepts[tag]); +},buildFromDom:function(_71){ +var c=_71.childNodes; +for(var i=0;i\n"); +if(this.name){ +s.push("\t"+this.name+"\n"); +} +if(this.email){ +s.push("\t"+this.email+"\n"); +} +if(this.uri){ +s.push("\t"+this.uri+"\n"); +} +s.push("\n"); +return s.join(""); +}}); +_6.Generator=_2(_6.Node,{constructor:function(uri,_74,_75){ +this.uri=uri; +this.version=_74; +this.value=_75; +},_postBuild:function(){ +},buildFromDom:function(_76){ +this.value=_5.textContent(_76); +this._saveAttributes(_76); +this.uri=this.attributes.uri; +this.version=this.attributes.version; +if(this._postBuild){ +this._postBuild(); +} +},toString:function(){ +var s=[]; +s.push(""+this.value+"\n"); +var ret=s.join(""); +return ret; +}}); +_6.Entry=_2(_6.AtomItem,{constructor:function(id){ +this.id=id; +this._objName="Entry"; +this.feedUrl=null; +},_getAttributeNames:function(){ +return null; +},_accepts:{"author":true,"content":true,"category":true,"contributor":true,"created":true,"id":true,"link":true,"published":true,"rights":true,"summary":true,"title":true,"updated":true,"xmlbase":true,"issued":true,"modified":true},toString:function(_77){ +var s=[]; +var i; +if(_77){ +s.push(""); +s.push("\n"); +s.push(""+(this.id?this.id:"")+"\n"); +if(this.issued&&!this.published){ +this.published=this.issued; +} +if(this.published){ +s.push(""+_4.toISOString(this.published)+"\n"); +} +if(this.created){ +s.push(""+_4.toISOString(this.created)+"\n"); +} +if(this.issued){ +s.push(""+_4.toISOString(this.issued)+"\n"); +} +if(this.modified){ +s.push(""+_4.toISOString(this.modified)+"\n"); +} +if(this.modified&&!this.updated){ +this.updated=this.modified; +} +if(this.updated){ +s.push(""+_4.toISOString(this.updated)+"\n"); +} +if(this.rights){ +s.push(""+this.rights+"\n"); +} +if(this.title){ +s.push(this.title.toString()); +} +if(this.summary){ +s.push(this.summary.toString()); +} +var _78=[this.authors,this.categories,this.links,this.contributors,this.extensions]; +for(var x in _78){ +if(_78[x]){ +for(var y in _78[x]){ +s.push(_78[x][y]); +} +} +} +if(this.content){ +s.push(this.content.toString()); +} +s.push("\n"); +return s.join(""); +},getEditHref:function(){ +if(this.links===null||this.links.length===0){ +return null; +} +for(var x in this.links){ +if(this.links[x].rel&&this.links[x].rel=="edit"){ +return this.links[x].href; +} +} +return null; +},setEditHref:function(url){ +if(this.links===null){ +this.links=[]; +} +for(var x in this.links){ +if(this.links[x].rel&&this.links[x].rel=="edit"){ +this.links[x].href=url; +return; +} +} +this.addLink(url,"edit"); +}}); +_6.Feed=_2(_6.AtomItem,{_accepts:{"author":true,"content":true,"category":true,"contributor":true,"created":true,"id":true,"link":true,"published":true,"rights":true,"summary":true,"title":true,"updated":true,"xmlbase":true,"entry":true,"logo":true,"issued":true,"modified":true,"icon":true,"subtitle":true},addEntry:function(_79){ +if(!_79.id){ +throw new Error("The entry object must be assigned an ID attribute."); +} +if(!this.entries){ +this.entries=[]; +} +_79.feedUrl=this.getSelfHref(); +this.entries.push(_79); +},getFirstEntry:function(){ +if(!this.entries||this.entries.length===0){ +return null; +} +return this.entries[0]; +},getEntry:function(_7a){ +if(!this.entries){ +return null; +} +for(var x in this.entries){ +if(this.entries[x].id==_7a){ +return this.entries[x]; +} +} +return null; +},removeEntry:function(_7b){ +if(!this.entries){ +return; +} +var _7c=0; +for(var i=0;i\n"); +s.push("\n"); +s.push(""+(this.id?this.id:"")+"\n"); +if(this.title){ +s.push(this.title); +} +if(this.copyright&&!this.rights){ +this.rights=this.copyright; +} +if(this.rights){ +s.push(""+this.rights+"\n"); +} +if(this.issued){ +s.push(""+_4.toISOString(this.issued)+"\n"); +} +if(this.modified){ +s.push(""+_4.toISOString(this.modified)+"\n"); +} +if(this.modified&&!this.updated){ +this.updated=this.modified; +} +if(this.updated){ +s.push(""+_4.toISOString(this.updated)+"\n"); +} +if(this.published){ +s.push(""+_4.toISOString(this.published)+"\n"); +} +if(this.icon){ +s.push(""+this.icon+"\n"); +} +if(this.language){ +s.push(""+this.language+"\n"); +} +if(this.logo){ +s.push(""+this.logo+"\n"); +} +if(this.subtitle){ +s.push(this.subtitle.toString()); +} +if(this.tagline){ +s.push(this.tagline.toString()); +} +var _7e=[this.alternateLinks,this.authors,this.categories,this.contributors,this.otherLinks,this.extensions,this.entries]; +for(i in _7e){ +if(_7e[i]){ +for(var x in _7e[i]){ +s.push(_7e[i][x]); +} +} +} +s.push(""); +return s.join(""); +},createEntry:function(){ +var _7f=new _6.Entry(); +_7f.feedUrl=this.getSelfHref(); +return _7f; +},getSelfHref:function(){ +if(this.links===null||this.links.length===0){ +return null; +} +for(var x in this.links){ +if(this.links[x].rel&&this.links[x].rel=="self"){ +return this.links[x].href; +} +} +return null; +}}); +_6.Service=_2(_6.AtomItem,{constructor:function(_80){ +this.href=_80; +},buildFromDom:function(_81){ +var i; +this.workspaces=[]; +if(_81.tagName!="service"){ +return; +} +if(_81.namespaceURI!=_6._Constants.PURL_NS&&_81.namespaceURI!=_6._Constants.APP_NS){ +return; +} +var ns=_81.namespaceURI; +this.name_space=_81.namespaceURI; +var _82; +if(typeof (_81.getElementsByTagNameNS)!="undefined"){ +_82=_81.getElementsByTagNameNS(ns,"workspace"); +}else{ +_82=[]; +var _83=_81.getElementsByTagName("workspace"); +for(i=0;i<_83.length;i++){ +if(_83[i].namespaceURI==ns){ +_82.push(_83[i]); +} +} +} +if(_82&&_82.length>0){ +var _84=0; +var _85; +for(i=0;i<_82.length;i++){ +_85=(typeof (_82.item)==="undefined"?_82[i]:_82.item(i)); +var _86=new _6.Workspace(); +_86.buildFromDom(_85); +this.workspaces[_84++]=_86; +} +} +},getCollection:function(url){ +for(var i=0;i,&, ", etc,) escaped. + return str.replace(/&/gm, "&").replace(//gm, ">").replace(/"/gm, """) + .replace(/'/gm, "'"); // String + }, + unEscapeHtml: function(/*String*/ str){ + // summary: + // Utility function to un-escape XML special characters in an HTML string. + // str: + // The string to un-escape. + // returns: + // HTML String converted back to the normal text (unescaped) characters (<,>,&, ", etc,). + return str.replace(/</gm, "<").replace(/>/gm, ">").replace(/"/gm, "\"") + .replace(/'/gm, "'").replace(/&/gm, "&"); // String + }, + getNodename: function(/*DOMNode*/ node){ + // summary: + // Utility function to get a node name and deal with IE's bad handling of namespaces + // on tag names. + // node: + // The DOM node whose name to retrieve. + // returns: String + // The name without namespace prefixes. + var name = null; + if(node !== null){ + name = node.localName ? node.localName: node.nodeName; + if(name !== null){ + var nsSep = name.indexOf(":"); + if(nsSep !== -1){ + name = name.substring((nsSep + 1), name.length); + } + } + } + return name; + } +}; + +model.Node = declare(null, { + constructor: function(name_space,name, attributes,content, shortNs){ + this.name_space = name_space; + this.name = name; + this.attributes = []; + if(attributes){ + this.attributes = attributes; + } + this.content = []; + this.rawNodes = []; + this.textContent = null; + if(content){ + this.content.push(content); + } + this.shortNs = shortNs; + this._objName = "Node";//for debugging purposes + this.nodeType = "Node"; + }, + buildFromDom: function(node){ + this._saveAttributes(node); + this.name_space = node.namespaceURI; + this.shortNs = node.prefix; + this.name = model.util.getNodename(node); + for(var x=0; x < node.childNodes.length; x++){ + var c = node.childNodes[x]; + if(model.util.getNodename(c) != "#text" ){ + this.rawNodes.push(c); + var n = new model.Node(); + n.buildFromDom(c, true); + this.content.push(n); + }else{ + this.content.push(c.nodeValue); + } + } + this.textContent = parser.textContent(node); + }, + _saveAttributes: function(node){ + if(!this.attributes){this.attributes = [];} + // Work around lack of hasAttributes() in IE + var hasAttributes = function(node){ + var attrs = node.attributes; + if(attrs === null){return false;} + return (attrs.length !== 0); + }; + + if(hasAttributes(node) && this._getAttributeNames){ + var names = this._getAttributeNames(node); + if(names && names.length > 0){ + for(var x in names){ + var attrib = node.getAttribute(names[x]); + if(attrib){this.attributes[names[x]] = attrib;} + } + } + } + }, + addAttribute: function(name, value){ + this.attributes[name]=value; + }, + getAttribute: function(name){ + return this.attributes[name]; + }, + //if child objects want their attributes parsed, they should override + //to return an array of attrib names + _getAttributeNames: function(node){ + var names = []; + for(var i =0; i"); + }else{ + xml.push("<"); + xml.push(name); + if(this.name_space){ + xml.push(" xmlns='" + this.name_space + "'"); + } + if(this.attributes){ + for(x in this.attributes){ + xml.push(" " + x + "='" + this.attributes[x] + "'"); + } + } + if(this.content){ + xml.push(">"); + for(x in this.content){ + xml.push(this.content[x]); + } + xml.push("\n"); + }else{ + xml.push("/>\n"); + } + } + return xml.join(''); + }, + addContent: function(content){ + this.content.push(content); + } +}); +//Types are as follows: links: array of Link, authors: array of Person, categories: array of Category +//contributors: array of Person, ico +model.AtomItem = declare(model.Node,{ + // summary: + // Class container for generic Atom items. + + constructor: function(args){ + this.ATOM_URI = model._Constants.ATOM_URI; + this.links = null; //Array of Link + this.authors = null; //Array of Person + this.categories = null; //Array of Category + this.contributors = null; //Array of Person + this.icon = this.id = this.logo = this.xmlBase = this.rights = null; //String + this.subtitle = this.title = null; //Content + this.updated = this.published = null; //Date + // Google news + this.issued = this.modified = null; //Date + this.content = null; //Content + this.extensions = null; //Array of Node, non atom based + this.entries = null; //Array of Entry + this.name_spaces = {}; + this._objName = "AtomItem"; //for debugging purposes + this.nodeType = "AtomItem"; + }, + + _getAttributeNames: function(){return null;}, + _accepts: {}, + accept: function(tag){return Boolean(this._accepts[tag]);}, + _postBuild: function(){},//child objects can override this if they want to be called after a Dom build + buildFromDom: function(node){ + var i, c, n; + for(i=0; i\n'); + return s.join(''); + }, + buildFromDom: function(/*DOMNode*/ node){ + // summary: + // Function to do construction of the Category data from the DOM node containing it. + // node: + // The DOM node to process for content. + this._saveAttributes(node);//just get the attributes from the node + this.label = this.attributes.label; + this.scheme = this.attributes.scheme; + this.term = this.attributes.term; + if(this._postBuild){this._postBuild();} + } +}); + +model.Content = declare(model.Node,{ + // summary: + // Class container for 'Content' types. Such as summary, content, username, and so on types of data. + + constructor: function(tagName, value, src, type,xmlLang){ + this.tagName = tagName; this.value = value; this.src = src; this.type=type; this.xmlLang = xmlLang; + this.HTML = "html"; this.TEXT = "text"; this.XHTML = "xhtml"; this.XML="xml"; + this._useTextContent = "true"; + this.nodeType = "Content"; + }, + _getAttributeNames: function(){return ["type","src"];}, + _postBuild: function(){}, + buildFromDom: function(/*DOMNode*/ node){ + // summary: + // Function to do construction of the Content data from the DOM node containing it. + // node: + // The DOM node to process for content. + + // Handle checking for XML content as the content type + var type = node.getAttribute("type"); + if(type){ + type = type.toLowerCase(); + if(type == "xml" || "text/xml"){ + type = this.XML; + } + }else{ + type="text"; + } + if(type === this.XML){ + if(node.firstChild){ + var i; + this.value = ""; + for(i = 0; i < node.childNodes.length; i++){ + var c = node.childNodes[i]; + if(c){ + this.value += parser.innerXML(c); + } + } + } + } else if(node.innerHTML){ + this.value = node.innerHTML; + }else{ + this.value = parser.textContent(node); + } + + this._saveAttributes(node); + + if(this.attributes){ + this.type = this.attributes.type; + this.scheme = this.attributes.scheme; + this.term = this.attributes.term; + } + if(!this.type){this.type = "text";} + + //We need to unescape the HTML content here so that it can be displayed correctly when the value is fetched. + var lowerType = this.type.toLowerCase(); + if(lowerType === "html" || lowerType === "text/html" || lowerType === "xhtml" || lowerType === "text/xhtml"){ + this.value = this.value?model.util.unEscapeHtml(this.value):""; + } + + if(this._postBuild){this._postBuild();} + }, + toString: function(){ + // summary: + // Function to construct string form of the content tag, which is an XML structure. + + var s = []; + s.push('<'+this.tagName+' '); + if(!this.type){this.type = "text";} + if(this.type){s.push(' type="'+this.type+'" ');} + if(this.xmlLang){s.push(' xml:lang="'+this.xmlLang+'" ');} + if(this.xmlBase){s.push(' xml:base="'+this.xmlBase+'" ');} + + //all HTML must be escaped + if(this.type.toLowerCase() == this.HTML){ + s.push('>'+model.util.escapeHtml(this.value)+'\n'); + }else{ + s.push('>'+this.value+'\n'); + } + var ret = s.join(''); + return ret; + } +}); + +model.Link = declare(model.Node,{ + // summary: + // Class container for 'link' types. + + constructor: function(href,rel,hrefLang,title,type){ + this.href = href; this.hrefLang = hrefLang; this.rel = rel; this.title = title;this.type = type; + this.nodeType = "Link"; + }, + _getAttributeNames: function(){return ["href","jrefLang","rel","title","type"];}, + _postBuild: function(){}, + buildFromDom: function(node){ + // summary: + // Function to do construction of the link data from the DOM node containing it. + // node: + // The DOM node to process for link data. + this._saveAttributes(node);//just get the attributes from the node + this.href = this.attributes.href; + this.hrefLang = this.attributes.hreflang; + this.rel = this.attributes.rel; + this.title = this.attributes.title; + this.type = this.attributes.type; + if(this._postBuild){this._postBuild();} + }, + toString: function(){ + // summary: + // Function to construct string form of the link tag, which is an XML structure. + + var s = []; + s.push('\n'); + return s.join(''); + } +}); + +model.Person = declare(model.Node,{ + // summary: + // Class container for 'person' types, such as Author, contributors, and so on. + + constructor: function(personType, name, email, uri){ + this.author = "author"; + this.contributor = "contributor"; + if(!personType){ + personType = this.author; + } + this.personType = personType; + this.name = name || ''; + this.email = email || ''; + this.uri = uri || ''; + this._objName = "Person";//for debugging + this.nodeType = "Person"; + }, + _getAttributeNames: function(){return null;}, + _postBuild: function(){}, + accept: function(tag){return Boolean(this._accepts[tag]);}, + buildFromDom: function(node){ + // summary: + // Function to do construction of the person data from the DOM node containing it. + // node: + // The DOM node to process for person data. + var c = node.childNodes; + for(var i = 0; i< c.length; i++){ + var name = model.util.getNodename(c[i]); + + if(!name){continue;} + + if(c[i].namespaceURI != model._Constants.ATOM_NS && name != "#text"){ + if(!this.extensions){this.extensions = [];} + var extensionNode = new model.Node(); + extensionNode.buildFromDom(c[i]); + this.extensions.push(extensionNode); + } + if(!this.accept(name.toLowerCase())){ + continue; + } + var fn = model._actions[name]; + if(fn) { + fn(this,c[i]); + } + } + this._saveAttributes(node); + if(this._postBuild){this._postBuild();} + }, + _accepts: { + 'name': true, + 'uri': true, + 'email': true + }, + toString: function(){ + // summary: + // Function to construct string form of the Person tag, which is an XML structure. + + var s = []; + s.push('<'+this.personType+'>\n'); + if(this.name){s.push('\t'+this.name+'\n');} + if(this.email){s.push('\t'+this.email+'\n');} + if(this.uri){s.push('\t'+this.uri+'\n');} + s.push('\n'); + return s.join(''); + } +}); + +model.Generator = declare(model.Node,{ + // summary: + // Class container for 'Generator' types. + + constructor: function(/*String*/ uri, /*String*/ version, /*String*/ value){ + this.uri = uri; + this.version = version; + this.value = value; + }, + _postBuild: function(){}, + buildFromDom: function(node){ + // summary: + // Function to do construction of the generator data from the DOM node containing it. + // node: + // The DOM node to process for link data. + + this.value = parser.textContent(node); + this._saveAttributes(node); + + this.uri = this.attributes.uri; + this.version = this.attributes.version; + + if(this._postBuild){this._postBuild();} + }, + toString: function(){ + // summary: + // Function to construct string form of the Generator tag, which is an XML structure. + + var s = []; + s.push(''+this.value+'\n'); + var ret = s.join(''); + return ret; + } +}); + +model.Entry = declare(model.AtomItem,{ + // summary: + // Class container for 'Entry' types. + + constructor: function(/*String*/ id){ + this.id = id; this._objName = "Entry"; this.feedUrl = null; + }, + _getAttributeNames: function(){return null;}, + _accepts: { + 'author': true, + 'content': true, + 'category': true, + 'contributor': true, + 'created': true, + 'id': true, + 'link': true, + 'published': true, + 'rights': true, + 'summary': true, + 'title': true, + 'updated': true, + 'xmlbase': true, + 'issued': true, + 'modified': true + }, + toString: function(amPrimary){ + // summary: + // Function to construct string form of the entry tag, which is an XML structure. + + var s = []; + var i; + if(amPrimary){ + s.push(""); + s.push("\n'); + s.push('' + (this.id ? this.id: '') + '\n'); + if(this.issued && !this.published){this.published = this.issued;} + if(this.published){s.push(''+stamp.toISOString(this.published)+'\n');} + if(this.created){s.push(''+stamp.toISOString(this.created)+'\n');} + //Google News + if(this.issued){s.push(''+stamp.toISOString(this.issued)+'\n');} + + //Google News + if(this.modified){s.push(''+stamp.toISOString(this.modified)+'\n');} + + if(this.modified && !this.updated){this.updated = this.modified;} + if(this.updated){s.push(''+stamp.toISOString(this.updated)+'\n');} + if(this.rights){s.push(''+this.rights+'\n');} + if(this.title){s.push(this.title.toString());} + if(this.summary){s.push(this.summary.toString());} + var arrays = [this.authors,this.categories,this.links,this.contributors,this.extensions]; + for(var x in arrays){ + if(arrays[x]){ + for(var y in arrays[x]){ + s.push(arrays[x][y]); + } + } + } + if(this.content){s.push(this.content.toString());} + s.push("\n"); + return s.join(''); //string + }, + getEditHref: function(){ + // summary: + // Function to get the href that allows editing of this feed entry. + // returns: + // The href that specifies edit capability. + if(this.links === null || this.links.length === 0){ + return null; + } + for(var x in this.links){ + if(this.links[x].rel && this.links[x].rel == "edit"){ + return this.links[x].href; //string + } + } + return null; + }, + setEditHref: function(url){ + if(this.links === null){ + this.links = []; + } + for(var x in this.links){ + if(this.links[x].rel && this.links[x].rel == "edit"){ + this.links[x].href = url; + return; + } + } + this.addLink(url, 'edit'); + } +}); + +model.Feed = declare(model.AtomItem,{ + // summary: + // Class container for 'Feed' types. + + _accepts: { + 'author': true, + 'content': true, + 'category': true, + 'contributor': true, + 'created': true, + 'id': true, + 'link': true, + 'published': true, + 'rights': true, + 'summary': true, + 'title': true, + 'updated': true, + 'xmlbase': true, + 'entry': true, + 'logo': true, + 'issued': true, + 'modified': true, + 'icon': true, + 'subtitle': true + }, + addEntry: function(/*object*/ entry){ + // summary: + // Function to add an entry to this feed. + // entry: + // The entry object to add. + if(!entry.id){ + throw new Error("The entry object must be assigned an ID attribute."); + } + if(!this.entries){this.entries = [];} + entry.feedUrl = this.getSelfHref(); + this.entries.push(entry); + }, + getFirstEntry: function(){ + // summary: + // Function to get the first entry of the feed. + // returns: + // The first entry in the feed. + if(!this.entries || this.entries.length === 0){return null;} + return this.entries[0]; //object + }, + getEntry: function(/*String*/ entryId){ + // summary: + // Function to get an entry by its id. + // returns: + // The entry desired, or null if none. + if(!this.entries){return null;} + for(var x in this.entries){ + if(this.entries[x].id == entryId){ + return this.entries[x]; + } + } + return null; + }, + removeEntry: function(/*object*/ entry){ + // summary: + // Function to remove an entry from the list of links. + // entry: + // The entry. + if(!this.entries){return;} + var count = 0; + for(var i = 0; i < this.entries.length; i++){ + if(this.entries[i] === entry){ + this.entries.splice(i,1); + count++; + } + } + return count; + }, + setEntries: function(/*array*/ arrayOfEntry){ + // summary: + // Function to add a set of entries to the feed. + // arrayOfEntry: + // An array of entry objects to add to the feed. + for(var x in arrayOfEntry){ + this.addEntry(arrayOfEntry[x]); + } + }, + toString: function(){ + // summary: + // Function to construct string form of the feed tag, which is an XML structure. + var s = []; + var i; + s.push('\n'); + s.push('\n'); + s.push('' + (this.id ? this.id: '') + '\n'); + if(this.title){s.push(this.title);} + if(this.copyright && !this.rights){this.rights = this.copyright;} + if(this.rights){s.push('' + this.rights + '\n');} + + // Google news + if(this.issued){s.push(''+stamp.toISOString(this.issued)+'\n');} + if(this.modified){s.push(''+stamp.toISOString(this.modified)+'\n');} + + if(this.modified && !this.updated){this.updated=this.modified;} + if(this.updated){s.push(''+stamp.toISOString(this.updated)+'\n');} + if(this.published){s.push(''+stamp.toISOString(this.published)+'\n');} + if(this.icon){s.push(''+this.icon+'\n');} + if(this.language){s.push(''+this.language+'\n');} + if(this.logo){s.push(''+this.logo+'\n');} + if(this.subtitle){s.push(this.subtitle.toString());} + if(this.tagline){s.push(this.tagline.toString());} + //TODO: need to figure out what to do with xmlBase + var arrays = [this.alternateLinks,this.authors,this.categories,this.contributors,this.otherLinks,this.extensions,this.entries]; + for(i in arrays){ + if(arrays[i]){ + for(var x in arrays[i]){ + s.push(arrays[i][x]); + } + } + } + s.push(''); + return s.join(''); + }, + createEntry: function(){ + // summary: + // Function to Create a new entry object in the feed. + // returns: + // An empty entry object in the feed. + var entry = new model.Entry(); + entry.feedUrl = this.getSelfHref(); + return entry; //object + }, + getSelfHref: function(){ + // summary: + // Function to get the href that refers to this feed. + // returns: + // The href that refers to this feed or null if none. + if(this.links === null || this.links.length === 0){ + return null; + } + for(var x in this.links){ + if(this.links[x].rel && this.links[x].rel == "self"){ + return this.links[x].href; //string + } + } + return null; + } +}); + +model.Service = declare(model.AtomItem,{ + // summary: + // Class container for 'Feed' types. + + constructor: function(href){ + this.href = href; + }, + //builds a Service document. each element of this, except for the namespace, is the href of + //a service that the server supports. Some of the common services are: + //"create-entry" , "user-prefs" , "search-entries" , "edit-template" , "categories" + buildFromDom: function(/*DOMNode*/ node){ + // summary: + // Function to do construction of the Service data from the DOM node containing it. + // node: + // The DOM node to process for content. + var i; + this.workspaces = []; + if(node.tagName != "service"){ + // FIXME: Need 0.9 DOM util... + //node = dojox.xml.parser.firstElement(node,"service"); + //if(!node){return;} + return; + } + if(node.namespaceURI != model._Constants.PURL_NS && node.namespaceURI != model._Constants.APP_NS){return;} + var ns = node.namespaceURI; + this.name_space = node.namespaceURI; + //find all workspaces, and create them + var workspaces ; + if(typeof(node.getElementsByTagNameNS)!= "undefined"){ + workspaces = node.getElementsByTagNameNS(ns,"workspace"); + }else{ + // This block is IE only, which doesn't have a 'getElementsByTagNameNS' function + workspaces = []; + var temp = node.getElementsByTagName('workspace'); + for(i=0; i 0){ + var wkLen = 0; + var workspace; + for(i = 0; i< workspaces.length; i++){ + workspace = (typeof(workspaces.item)==="undefined"?workspaces[i]:workspaces.item(i)); + var wkspace = new model.Workspace(); + wkspace.buildFromDom(workspace); + this.workspaces[wkLen++] = wkspace; + } + } + }, + getCollection: function(/*String*/ url){ + // summary: + // Function to collections that match a specific url. + // url: + // e URL to match collections against. + for(var i=0;i>built +require({cache:{"url:dojox/atom/widget/templates/FeedEntryEditor.html":"
    \n \n \n \t\n \n \n \n \n \n \n \n \n \n \n\t\t\n\t\t\n \n \n \n \n
    \n \n \t\n \n \n \n \n \n \n
    \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n
    \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n\t\t\t\t\n
    \n \n \n \n \n \n\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n \t\n
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n \t\n
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n \t\n
    \n
    \n
    \n
    \n","url:dojox/atom/widget/templates/PeopleEditor.html":"
    \n\t\n\t\t\n\t
    \n\t\n
    "}}); +define("dojox/atom/widget/FeedEntryEditor",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/connect","dojo/_base/declare","dojo/_base/fx","dojo/_base/sniff","dojo/dom","dojo/dom-style","dojo/dom-construct","dijit/_Widget","dijit/_Templated","dijit/_Container","dijit/Editor","dijit/form/TextBox","dijit/form/SimpleTextarea","./FeedEntryViewer","../io/model","dojo/text!./templates/FeedEntryEditor.html","dojo/text!./templates/PeopleEditor.html","dojo/i18n!./nls/FeedEntryViewer","dojo/i18n!./nls/FeedEntryEditor","dojo/i18n!./nls/PeopleEditor"],function(_1,_2,_3,_4,fx,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e,_f,_10,_11,_12,_13,_14,_15){ +_1.experimental("dojox.atom.widget.FeedEntryEditor"); +var _16=_4("dojox.atom.widget.FeedEntryEditor",_f,{_contentEditor:null,_oldContent:null,_setObject:null,enableEdit:false,_contentEditorCreator:null,_editors:{},entryNewButton:null,_editable:false,templateString:_11,postCreate:function(){ +if(this.entrySelectionTopic!==""){ +this._subscriptions=[_1.subscribe(this.entrySelectionTopic,this,"_handleEvent")]; +} +var _17=_13; +this.displayOptions.innerHTML=_17.displayOptions; +this.feedEntryCheckBoxLabelTitle.innerHTML=_17.title; +this.feedEntryCheckBoxLabelAuthors.innerHTML=_17.authors; +this.feedEntryCheckBoxLabelContributors.innerHTML=_17.contributors; +this.feedEntryCheckBoxLabelId.innerHTML=_17.id; +this.close.innerHTML=_17.close; +this.feedEntryCheckBoxLabelUpdated.innerHTML=_17.updated; +this.feedEntryCheckBoxLabelSummary.innerHTML=_17.summary; +this.feedEntryCheckBoxLabelContent.innerHTML=_17.content; +_17=_14; +this.doNew.innerHTML=_17.doNew; +this.edit.innerHTML=_17.edit; +this.save.innerHTML=_17.save; +this.cancel.innerHTML=_17.cancel; +},setEntry:function(_18,_19,_1a){ +if(this._entry!==_18){ +this._editMode=false; +_1a=false; +}else{ +_1a=true; +} +_16.superclass.setEntry.call(this,_18,_19); +this._editable=this._isEditable(_18); +if(!_1a&&!this._editable){ +_7.set(this.entryEditButton,"display","none"); +_7.set(this.entrySaveCancelButtons,"display","none"); +} +if(this._editable&&this.enableEdit){ +if(!_1a){ +_7.set(this.entryEditButton,"display",""); +if(this.enableMenuFade&&this.entrySaveCancelButton){ +fx.fadeOut({node:this.entrySaveCancelButton,duration:250}).play(); +} +} +} +},_toggleEdit:function(){ +if(this._editable&&this.enableEdit){ +_7.set(this.entryEditButton,"display","none"); +_7.set(this.entrySaveCancelButtons,"display",""); +this._editMode=true; +this.setEntry(this._entry,this._feed,true); +} +},_handleEvent:function(_1b){ +if(_1b.source!=this&&_1b.action=="delete"&&_1b.entry&&_1b.entry==this._entry){ +_7.set(this.entryEditButton,"display","none"); +} +_16.superclass._handleEvent.call(this,_1b); +},_isEditable:function(_1c){ +var _1d=false; +if(_1c&&_1c!==null&&_1c.links&&_1c.links!==null){ +for(var x in _1c.links){ +if(_1c.links[x].rel&&_1c.links[x].rel=="edit"){ +_1d=true; +break; +} +} +} +return _1d; +},setTitle:function(_1e,_1f,_20){ +if(!_1f){ +_16.superclass.setTitle.call(this,_1e,_1f,_20); +if(_20.title&&_20.title.value&&_20.title.value!==null){ +this.setFieldValidity("title",true); +} +}else{ +if(_20.title&&_20.title.value&&_20.title.value!==null){ +if(!this._toLoad){ +this._toLoad=[]; +} +this.entryTitleSelect.value=_20.title.type; +var _21=this._createEditor(_1e,_20.title,true,_20.title.type==="html"||_20.title.type==="xhtml"); +_21.name="title"; +this._toLoad.push(_21); +this.setFieldValidity("titleedit",true); +this.setFieldValidity("title",true); +} +} +},setAuthors:function(_22,_23,_24){ +if(!_23){ +_16.superclass.setAuthors.call(this,_22,_23,_24); +if(_24.authors&&_24.authors.length>0){ +this.setFieldValidity("authors",true); +} +}else{ +if(_24.authors&&_24.authors.length>0){ +this._editors.authors=this._createPeopleEditor(this.entryAuthorNode,{data:_24.authors,name:"Author"}); +this.setFieldValidity("authors",true); +} +} +},setContributors:function(_25,_26,_27){ +if(!_26){ +_16.superclass.setContributors.call(this,_25,_26,_27); +if(_27.contributors&&_27.contributors.length>0){ +this.setFieldValidity("contributors",true); +} +}else{ +if(_27.contributors&&_27.contributors.length>0){ +this._editors.contributors=this._createPeopleEditor(this.entryContributorNode,{data:_27.contributors,name:"Contributor"}); +this.setFieldValidity("contributors",true); +} +} +},setId:function(_28,_29,_2a){ +if(!_29){ +_16.superclass.setId.call(this,_28,_29,_2a); +if(_2a.id&&_2a.id!==null){ +this.setFieldValidity("id",true); +} +}else{ +if(_2a.id&&_2a.id!==null){ +this._editors.id=this._createEditor(_28,_2a.id); +this.setFieldValidity("id",true); +} +} +},setUpdated:function(_2b,_2c,_2d){ +if(!_2c){ +_16.superclass.setUpdated.call(this,_2b,_2c,_2d); +if(_2d.updated&&_2d.updated!==null){ +this.setFieldValidity("updated",true); +} +}else{ +if(_2d.updated&&_2d.updated!==null){ +this._editors.updated=this._createEditor(_2b,_2d.updated); +this.setFieldValidity("updated",true); +} +} +},setSummary:function(_2e,_2f,_30){ +if(!_2f){ +_16.superclass.setSummary.call(this,_2e,_2f,_30); +if(_30.summary&&_30.summary.value&&_30.summary.value!==null){ +this.setFieldValidity("summary",true); +} +}else{ +if(_30.summary&&_30.summary.value&&_30.summary.value!==null){ +if(!this._toLoad){ +this._toLoad=[]; +} +this.entrySummarySelect.value=_30.summary.type; +var _31=this._createEditor(_2e,_30.summary,true,_30.summary.type==="html"||_30.summary.type==="xhtml"); +_31.name="summary"; +this._toLoad.push(_31); +this.setFieldValidity("summaryedit",true); +this.setFieldValidity("summary",true); +} +} +},setContent:function(_32,_33,_34){ +if(!_33){ +_16.superclass.setContent.call(this,_32,_33,_34); +if(_34.content&&_34.content.value&&_34.content.value!==null){ +this.setFieldValidity("content",true); +} +}else{ +if(_34.content&&_34.content.value&&_34.content.value!==null){ +if(!this._toLoad){ +this._toLoad=[]; +} +this.entryContentSelect.value=_34.content.type; +var _35=this._createEditor(_32,_34.content,true,_34.content.type==="html"||_34.content.type==="xhtml"); +_35.name="content"; +this._toLoad.push(_35); +this.setFieldValidity("contentedit",true); +this.setFieldValidity("content",true); +} +} +},_createEditor:function(_36,_37,_38,rte){ +var _39; +var box; +if(!_37){ +if(rte){ +return {anchorNode:_36,entryValue:"",editor:null,generateEditor:function(){ +var _3a=document.createElement("div"); +_3a.innerHTML=this.entryValue; +this.anchorNode.appendChild(_3a); +var _3b=new _c({},_3a); +this.editor=_3b; +return _3b; +}}; +} +if(_38){ +_39=document.createElement("textarea"); +_36.appendChild(_39); +_7.set(_39,"width","90%"); +box=new _e({},_39); +}else{ +_39=document.createElement("input"); +_36.appendChild(_39); +_7.set(_39,"width","95%"); +box=new _d({},_39); +} +box.attr("value",""); +return box; +} +var _3c; +if(_37.value!==undefined){ +_3c=_37.value; +}else{ +if(_37.attr){ +_3c=_37.attr("value"); +}else{ +_3c=_37; +} +} +if(rte){ +if(_3c.indexOf("<")!=-1){ +_3c=_3c.replace(/")!==0){ +_4b="
    "+_4b+"
    "; +} +} +_4d.title=new _10.Content("title",_4b,null,this.entryTitleSelect.value); +_4a=true; +} +if(this._editors.id.attr("value")!=_4d.id){ +_4d.id=this._editors.id.attr("value"); +_4a=true; +} +if(this._editors.summary&&(this._editors.summary.attr("value")!=_4d.summary.value||this.entrySummarySelect.value!=_4d.summary.type)){ +_4b=this._editors.summary.attr("value"); +if(this.entrySummarySelect.value==="xhtml"){ +_4b=this._enforceXhtml(_4b); +if(_4b.indexOf("
    ")!==0){ +_4b="
    "+_4b+"
    "; +} +} +_4d.summary=new _10.Content("summary",_4b,null,this.entrySummarySelect.value); +_4a=true; +} +if(this._editors.content&&(this._editors.content.attr("value")!=_4d.content.value||this.entryContentSelect.value!=_4d.content.type)){ +_4b=this._editors.content.attr("value"); +if(this.entryContentSelect.value==="xhtml"){ +_4b=this._enforceXhtml(_4b); +if(_4b.indexOf("
    ")!==0){ +_4b="
    "+_4b+"
    "; +} +} +_4d.content=new _10.Content("content",_4b,null,this.entryContentSelect.value); +_4a=true; +} +if(this._editors.authors){ +if(_4a){ +_4d.authors=[]; +_4e=this._editors.authors.getValues(); +for(i in _4e){ +if(_4e[i].name||_4e[i].email||_4e[i].uri){ +_4d.addAuthor(_4e[i].name,_4e[i].email,_4e[i].uri); +} +} +}else{ +var _50=_4d.authors; +var _51=function(_52,_53,uri){ +for(i in _50){ +if(_50[i].name===_52&&_50[i].email===_53&&_50[i].uri===uri){ +return true; +} +} +return false; +}; +_4e=this._editors.authors.getValues(); +_4c=false; +for(i in _4e){ +if(!_51(_4e[i].name,_4e[i].email,_4e[i].uri)){ +_4c=true; +break; +} +} +if(_4c){ +_4d.authors=[]; +for(i in _4e){ +if(_4e[i].name||_4e[i].email||_4e[i].uri){ +_4d.addAuthor(_4e[i].name,_4e[i].email,_4e[i].uri); +} +} +_4a=true; +} +} +} +if(this._editors.contributors){ +if(_4a){ +_4d.contributors=[]; +_4f=this._editors.contributors.getValues(); +for(i in _4f){ +if(_4f[i].name||_4f[i].email||_4f[i].uri){ +_4d.addAuthor(_4f[i].name,_4f[i].email,_4f[i].uri); +} +} +}else{ +var _54=_4d.contributors; +var _55=function(_56,_57,uri){ +for(i in _54){ +if(_54[i].name===_56&&_54[i].email===_57&&_54[i].uri===uri){ +return true; +} +} +return false; +}; +_4f=this._editors.contributors.getValues(); +_4c=false; +for(i in _4f){ +if(_55(_4f[i].name,_4f[i].email,_4f[i].uri)){ +_4c=true; +break; +} +} +if(_4c){ +_4d.contributors=[]; +for(i in _4f){ +if(_4f[i].name||_4f[i].email||_4f[i].uri){ +_4d.addContributor(_4f[i].name,_4f[i].email,_4f[i].uri); +} +} +_4a=true; +} +} +} +if(_4a){ +_1.publish(this.entrySelectionTopic,[{action:"update",source:this,entry:_4d,callback:this._handleSave}]); +} +}else{ +this._new=false; +_4d=new _10.Entry(); +_4b=this._editors.title.attr("value"); +if(this.entryTitleSelect.value==="xhtml"){ +_4b=this._enforceXhtml(_4b); +_4b="
    "+_4b+"
    "; +} +_4d.setTitle(_4b,this.entryTitleSelect.value); +_4d.id=this._editors.id.attr("value"); +_4e=this._editors.authors.getValues(); +for(i in _4e){ +if(_4e[i].name||_4e[i].email||_4e[i].uri){ +_4d.addAuthor(_4e[i].name,_4e[i].email,_4e[i].uri); +} +} +_4f=this._editors.contributors.getValues(); +for(i in _4f){ +if(_4f[i].name||_4f[i].email||_4f[i].uri){ +_4d.addContributor(_4f[i].name,_4f[i].email,_4f[i].uri); +} +} +_4b=this._editors.summary.attr("value"); +if(this.entrySummarySelect.value==="xhtml"){ +_4b=this._enforceXhtml(_4b); +_4b="
    "+_4b+"
    "; +} +_4d.summary=new _10.Content("summary",_4b,null,this.entrySummarySelect.value); +_4b=this._editors.content.attr("value"); +if(this.entryContentSelect.value==="xhtml"){ +_4b=this._enforceXhtml(_4b); +_4b="
    "+_4b+"
    "; +} +_4d.content=new _10.Content("content",_4b,null,this.entryContentSelect.value); +_7.set(this.entryNewButton,"display",""); +_1.publish(this.entrySelectionTopic,[{action:"post",source:this,entry:_4d}]); +} +this._editMode=false; +this.setEntry(_4d,this._feed,true); +},_handleSave:function(_58,_59){ +this._editMode=false; +this.clear(); +this.setEntry(_58,this.getFeed(),true); +},cancelEdits:function(){ +this._new=false; +_7.set(this.entrySaveCancelButtons,"display","none"); +if(this._editable){ +_7.set(this.entryEditButton,"display",""); +} +_7.set(this.entryNewButton,"display",""); +this._editMode=false; +this.clearEditors(); +this.setEntry(this.getEntry(),this.getFeed(),true); +},clear:function(){ +this._editable=false; +this.clearEditors(); +_16.superclass.clear.apply(this); +if(this._contentEditor){ +this._contentEditor=this._setObject=this._oldContent=this._contentEditorCreator=null; +this._editors={}; +} +},clearEditors:function(){ +for(var key in this._editors){ +if(this._editors[key].isInstanceOf(_c)){ +this._editors[key].close(false,true); +} +this._editors[key].destroy(); +} +this._editors={}; +},_enforceXhtml:function(_5a){ +var _5b=null; +if(_5a){ +var _5c=/
    /g; +_5b=_5a.replace(_5c,"
    "); +_5b=this._closeTag(_5b,"hr"); +_5b=this._closeTag(_5b,"img"); +} +return _5b; +},_closeTag:function(_5d,tag){ +var _5e="<"+tag; +var _5f=_5d.indexOf(_5e); +if(_5f!==-1){ +while(_5f!==-1){ +var _60=""; +var _61=false; +for(var i=0;i<_5d.length;i++){ +var c=_5d.charAt(i); +if(i<=_5f||_61){ +_60+=c; +}else{ +if(c===">"){ +_60+="/"; +_61=true; +} +_60+=c; +} +} +_5d=_60; +_5f=_5d.indexOf(_5e,_5f+1); +} +} +return _5d; +},_toggleNew:function(){ +_7.set(this.entryNewButton,"display","none"); +_7.set(this.entryEditButton,"display","none"); +_7.set(this.entrySaveCancelButtons,"display",""); +this.entrySummarySelect.value="text"; +this.entryContentSelect.value="text"; +this.entryTitleSelect.value="text"; +this.clearNodes(); +this._new=true; +var _62=_13; +var _63=new _f.EntryHeader({title:_62.title}); +this.entryTitleHeader.appendChild(_63.domNode); +this._editors.title=this._createEditor(this.entryTitleNode,null); +this.setFieldValidity("title",true); +var _64=new _f.EntryHeader({title:_62.authors}); +this.entryAuthorHeader.appendChild(_64.domNode); +this._editors.authors=this._createPeopleEditor(this.entryAuthorNode,{name:"Author"}); +this.setFieldValidity("authors",true); +var _65=new _f.EntryHeader({title:_62.contributors}); +this.entryContributorHeader.appendChild(_65.domNode); +this._editors.contributors=this._createPeopleEditor(this.entryContributorNode,{name:"Contributor"}); +this.setFieldValidity("contributors",true); +var _66=new _f.EntryHeader({title:_62.id}); +this.entryIdHeader.appendChild(_66.domNode); +this._editors.id=this._createEditor(this.entryIdNode,null); +this.setFieldValidity("id",true); +var _67=new _f.EntryHeader({title:_62.updated}); +this.entryUpdatedHeader.appendChild(_67.domNode); +this._editors.updated=this._createEditor(this.entryUpdatedNode,null); +this.setFieldValidity("updated",true); +var _68=new _f.EntryHeader({title:_62.summary}); +this.entrySummaryHeader.appendChild(_68.domNode); +this._editors.summary=this._createEditor(this.entrySummaryNode,null,true); +this.setFieldValidity("summaryedit",true); +this.setFieldValidity("summary",true); +var _69=new _f.EntryHeader({title:_62.content}); +this.entryContentHeader.appendChild(_69.domNode); +this._editors.content=this._createEditor(this.entryContentNode,null,true); +this.setFieldValidity("contentedit",true); +this.setFieldValidity("content",true); +this._displaySections(); +},_displaySections:function(){ +_7.set(this.entrySummarySelect,"display","none"); +_7.set(this.entryContentSelect,"display","none"); +_7.set(this.entryTitleSelect,"display","none"); +if(this.isFieldValid("contentedit")){ +_7.set(this.entryContentSelect,"display",""); +} +if(this.isFieldValid("summaryedit")){ +_7.set(this.entrySummarySelect,"display",""); +} +if(this.isFieldValid("titleedit")){ +_7.set(this.entryTitleSelect,"display",""); +} +_16.superclass._displaySections.apply(this); +if(this._toLoad){ +for(var i in this._toLoad){ +var _6a; +if(this._toLoad[i].generateEditor){ +_6a=_2.hitch(this._toLoad[i],this._toLoad[i].generateEditor)(); +}else{ +_6a=this._toLoad[i]; +} +this._editors[this._toLoad[i].name]=_6a; +this._toLoad[i]=null; +} +this._toLoad=null; +} +}}); +var _49=_4("dojox.atom.widget.PeopleEditor",[_9,_a,_b],{templateString:_12,_rows:[],_editors:[],_index:0,_numRows:0,postCreate:function(){ +var _6b=_15; +if(this.name){ +if(this.name=="Author"){ +this.peopleEditorButton.appendChild(document.createTextNode("["+_6b.addAuthor+"]")); +}else{ +if(this.name=="Contributor"){ +this.peopleEditorButton.appendChild(document.createTextNode("["+_6b.addContributor+"]")); +} +} +}else{ +this.peopleEditorButton.appendChild(document.createTextNode("["+_6b.add+"]")); +} +this._editors=[]; +if(!this.data||this.data.length===0){ +this._createEditors(null,null,null,0,this.name); +this._index=1; +}else{ +for(var i in this.data){ +this._createEditors(this.data[i].name,this.data[i].email,this.data[i].uri,i); +this._index++; +this._numRows++; +} +} +},destroy:function(){ +for(var key in this._editors){ +for(var _6c in this._editors[key]){ +this._editors[key][_6c].destroy(); +} +} +this._editors=[]; +},_createEditors:function(_6d,_6e,uri,_6f,_70){ +var row=document.createElement("tr"); +this.peopleEditorEditors.appendChild(row); +row.id="removeRow"+_6f; +var _71=document.createElement("td"); +_71.setAttribute("align","right"); +row.appendChild(_71); +_71.colSpan=2; +if(this._numRows>0){ +var hr=document.createElement("hr"); +_71.appendChild(hr); +hr.id="hr"+_6f; +} +row=document.createElement("span"); +_71.appendChild(row); +row.className="peopleEditorButton"; +_7.set(row,"font-size","x-small"); +_3.connect(row,"onclick",this,"_removeEditor"); +row.id="remove"+_6f; +_71=document.createTextNode("[X]"); +row.appendChild(_71); +row=document.createElement("tr"); +this.peopleEditorEditors.appendChild(row); +row.id="editorsRow"+_6f; +var _72=document.createElement("td"); +row.appendChild(_72); +_7.set(_72,"width","20%"); +_71=document.createElement("td"); +row.appendChild(_71); +row=document.createElement("table"); +_72.appendChild(row); +_7.set(row,"width","100%"); +_72=document.createElement("tbody"); +row.appendChild(_72); +row=document.createElement("table"); +_71.appendChild(row); +_7.set(row,"width","100%"); +_71=document.createElement("tbody"); +row.appendChild(_71); +this._editors[_6f]=[]; +this._editors[_6f].push(this._createEditor(_6d,_70+"name"+_6f,"Name:",_72,_71)); +this._editors[_6f].push(this._createEditor(_6e,_70+"email"+_6f,"Email:",_72,_71)); +this._editors[_6f].push(this._createEditor(uri,_70+"uri"+_6f,"URI:",_72,_71)); +},_createEditor:function(_73,id,_74,_75,_76){ +var row=document.createElement("tr"); +_75.appendChild(row); +var _77=document.createElement("label"); +_77.setAttribute("for",id); +_77.appendChild(document.createTextNode(_74)); +_75=document.createElement("td"); +_75.appendChild(_77); +row.appendChild(_75); +row=document.createElement("tr"); +_76.appendChild(row); +_76=document.createElement("td"); +row.appendChild(_76); +var _78=document.createElement("input"); +_78.setAttribute("id",id); +_76.appendChild(_78); +_7.set(_78,"width","95%"); +var box=new _d({},_78); +box.attr("value",_73); +return box; +},_removeEditor:function(_79){ +var _7a=null; +if(_5("ie")){ +_7a=_79.srcElement; +}else{ +_7a=_79.target; +} +var id=_7a.id; +id=id.substring(6); +for(var key in this._editors[id]){ +this._editors[id][key].destroy(); +} +var _7b=_6.byId("editorsRow"+id); +var _7c=_7b.parentNode; +_7c.removeChild(_7b); +_7b=_6.byId("removeRow"+id); +_7c=_7b.parentNode; +_7c.removeChild(_7b); +this._numRows--; +if(this._numRows===1&&_7c.firstChild.firstChild.firstChild.tagName.toLowerCase()==="hr"){ +_7b=_7c.firstChild.firstChild; +_7b.removeChild(_7b.firstChild); +} +this._editors[id]=null; +},_add:function(){ +this._createEditors(null,null,null,this._index); +this._index++; +this._numRows++; +},getValues:function(){ +var _7d=[]; +for(var i in this._editors){ +if(this._editors[i]){ +_7d.push({name:this._editors[i][0].attr("value"),email:this._editors[i][1].attr("value"),uri:this._editors[i][2].attr("value")}); +} +} +return _7d; +}}); +return _16; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..584fc649 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,1183 @@ +require({cache:{ +'url:dojox/atom/widget/templates/FeedEntryEditor.html':"
    \n \n \n \t\n \n \n \n \n \n \n \n \n \n \n\t\t\n\t\t\n \n \n \n \n
    \n \n \t\n \n \n \n \n \n \n
    \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n
    \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n\t\t\t\t\n
    \n \n \n \n \n \n\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n \t\n
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n \t\n
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n \t\n
    \n
    \n
    \n
    \n", +'url:dojox/atom/widget/templates/PeopleEditor.html':"
    \n\t\n\t\t\n\t
    \n\t\n
    "}}); +define("dojox/atom/widget/FeedEntryEditor", [ + "dojo/_base/kernel", + "dojo/_base/lang", + "dojo/_base/connect", + "dojo/_base/declare", + "dojo/_base/fx", + "dojo/_base/sniff", + "dojo/dom", + "dojo/dom-style", + "dojo/dom-construct", + "dijit/_Widget", + "dijit/_Templated", + "dijit/_Container", + "dijit/Editor", + "dijit/form/TextBox", + "dijit/form/SimpleTextarea", + "./FeedEntryViewer", + "../io/model", + "dojo/text!./templates/FeedEntryEditor.html", + "dojo/text!./templates/PeopleEditor.html", + "dojo/i18n!./nls/FeedEntryViewer", + "dojo/i18n!./nls/FeedEntryEditor", + "dojo/i18n!./nls/PeopleEditor" +], function (dojo, lang, connect, declare, fx, has, domUtil, domStyle, domConstruct, + _Widget, _Templated, _Container, Editor, TextBox, SimpleTextarea, + FeedEntryViewer, model, template, peopleEditorTemplate, i18nViewer, i18nEditor, i18nPeople) { +dojo.experimental("dojox.atom.widget.FeedEntryEditor"); + + +var FeedEntryEditor = declare("dojox.atom.widget.FeedEntryEditor", FeedEntryViewer,{ + // summary: + // An ATOM feed entry editor that allows viewing of the individual attributes of an entry. + + _contentEditor: null, + _oldContent: null, + _setObject: null, + enableEdit: false, + _contentEditorCreator: null, + _editors: {}, + entryNewButton: null, + _editable: false, //Flag denoting if the current entry is editable or not. + + //Templates for the HTML rendering. Need to figure these out better, admittedly. + templateString: template, + + postCreate: function(){ + if(this.entrySelectionTopic !== ""){ + this._subscriptions = [dojo.subscribe(this.entrySelectionTopic, this, "_handleEvent")]; + } + var _nlsResources = i18nViewer; + this.displayOptions.innerHTML = _nlsResources.displayOptions; + this.feedEntryCheckBoxLabelTitle.innerHTML = _nlsResources.title; + this.feedEntryCheckBoxLabelAuthors.innerHTML = _nlsResources.authors; + this.feedEntryCheckBoxLabelContributors.innerHTML = _nlsResources.contributors; + this.feedEntryCheckBoxLabelId.innerHTML = _nlsResources.id; + this.close.innerHTML = _nlsResources.close; + this.feedEntryCheckBoxLabelUpdated.innerHTML = _nlsResources.updated; + this.feedEntryCheckBoxLabelSummary.innerHTML = _nlsResources.summary; + this.feedEntryCheckBoxLabelContent.innerHTML = _nlsResources.content; + + _nlsResources = i18nEditor; + this.doNew.innerHTML = _nlsResources.doNew; + this.edit.innerHTML = _nlsResources.edit; + this.save.innerHTML = _nlsResources.save; + this.cancel.innerHTML = _nlsResources.cancel; + }, + + setEntry: function(/*object*/entry, /*object*/feed, /*boolean*/leaveMenuState){ + // summary: + // Function to set the current entry that is being edited. + // entry: + // Instance of dojox.atom.io.model.Entry to display for reading/editing. + if(this._entry !== entry){ + //If we swap entries, we don't want to keep the menu states and modes. + this._editMode=false; + leaveMenuState=false; + }else{ + leaveMenuState = true; + } + FeedEntryEditor.superclass.setEntry.call(this, entry, feed); + this._editable = this._isEditable(entry); + if(!leaveMenuState && !this._editable){ + domStyle.set(this.entryEditButton, 'display', 'none'); + domStyle.set(this.entrySaveCancelButtons, 'display', 'none'); + } + if(this._editable && this.enableEdit){ + if(!leaveMenuState){ + domStyle.set(this.entryEditButton, 'display', ''); + //TODO double check this &&... + if(this.enableMenuFade && this.entrySaveCancelButton){ + fx.fadeOut({node: this.entrySaveCancelButton,duration: 250}).play(); + } + } + } + }, + + _toggleEdit: function(){ + // summary: + // Internal function for toggling/enabling the display of edit mode + // returns: + // Nothing. + if(this._editable && this.enableEdit){ + domStyle.set(this.entryEditButton, 'display', 'none'); + domStyle.set(this.entrySaveCancelButtons, 'display', ''); + this._editMode = true; + + //Rebuild the view using the same entry and feed. + this.setEntry(this._entry, this._feed, true); + } + }, + + _handleEvent: function(/*object*/entrySelectionEvent){ + // summary: + // Internal function for listening to a topic that will handle entry notification. + // entrySelectionEvent: + // The topic message containing the entry that was selected for view. + // returns: + // Nothing. + if(entrySelectionEvent.source != this && entrySelectionEvent.action == "delete" && + entrySelectionEvent.entry && entrySelectionEvent.entry == this._entry){ + domStyle.set(this.entryEditButton, 'display', 'none'); + } + FeedEntryEditor.superclass._handleEvent.call(this, entrySelectionEvent); + }, + + _isEditable: function(/*object*/entry){ + // summary: + // Internal function for determining of a particular entry is editable. + // description: + // Internal function for determining of a particular entry is editable. + // This is used for determining if the delete action should be displayed or not. + // entry: + // The dojox.atom.io.model.Entry object to examine + // returns: + // Boolean denoting if the entry seems editable or not.. + var retVal = false; + if(entry && entry !== null && entry.links && entry.links !== null){ + for(var x in entry.links){ + if(entry.links[x].rel && entry.links[x].rel == "edit"){ + retVal = true; + break; + } + } + } + return retVal; + }, + + // The following set functions override the corresponding functions in FeedEntryViewer. These handle + // the editMode flag by inserting appropriate editor widgets inside of just splashing the content in the page. + setTitle: function(/*DOM node*/titleAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the title node in the template to some value from the entry. + // description: + // Function to set the contents of the title node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // titleAnchorNode: + // The DOM node to attach the title data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + + if(!editMode){ + FeedEntryEditor.superclass.setTitle.call(this, titleAnchorNode, editMode, entry); + if(entry.title && entry.title.value && entry.title.value !== null){ + this.setFieldValidity("title", true); + } + }else{ + if(entry.title && entry.title.value && entry.title.value !== null){ + if(!this._toLoad){ + this._toLoad = []; + } + this.entryTitleSelect.value = entry.title.type; + + var editor = this._createEditor(titleAnchorNode, entry.title, true, entry.title.type === "html" || entry.title.type === "xhtml"); + editor.name = "title"; + this._toLoad.push(editor); + this.setFieldValidity("titleedit",true); + this.setFieldValidity("title",true); + } + } + }, + + setAuthors: function(/*DOM node*/authorsAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the author node in the template to some value from the entry. + // description: + // Function to set the contents of the author node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // authorsAnchorNode: + // The DOM node to attach the author data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + if(!editMode){ + FeedEntryEditor.superclass.setAuthors.call(this, authorsAnchorNode, editMode, entry); + if(entry.authors && entry.authors.length > 0){ + this.setFieldValidity("authors", true); + } + }else{ + if(entry.authors && entry.authors.length > 0){ + this._editors.authors = this._createPeopleEditor(this.entryAuthorNode, {data: entry.authors, name: "Author"}); + this.setFieldValidity("authors", true); + } + } + }, + + + setContributors: function(/*DOM node*/contributorsAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the contributor node in the template to some value from the entry. + // description: + // Function to set the contents of the contributor node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // contributorsAnchorNode: + // The DOM node to attach the contributor data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + if(!editMode){ + FeedEntryEditor.superclass.setContributors.call(this, contributorsAnchorNode, editMode, entry); + if(entry.contributors && entry.contributors.length > 0){ + this.setFieldValidity("contributors", true); + } + }else{ + if(entry.contributors && entry.contributors.length > 0){ + this._editors.contributors = this._createPeopleEditor(this.entryContributorNode, {data: entry.contributors, name: "Contributor"}); + this.setFieldValidity("contributors", true); + } + } + }, + + + setId: function(/*DOM node*/idAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the ID node in the template to some value from the entry. + // description: + // Function to set the contents of the ID node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // idAnchorNode: + // The DOM node to attach the ID data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + if(!editMode){ + FeedEntryEditor.superclass.setId.call(this, idAnchorNode, editMode, entry); + if(entry.id && entry.id !== null){ + this.setFieldValidity("id", true); + } + }else{ + if(entry.id && entry.id !== null){ + this._editors.id = this._createEditor(idAnchorNode, entry.id); + this.setFieldValidity("id",true); + } + } + }, + + setUpdated: function(/*DOM node*/updatedAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the updated node in the template to some value from the entry. + // description: + // Function to set the contents of the updated node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // updatedAnchorNode: + // The DOM node to attach the updated data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + if(!editMode){ + FeedEntryEditor.superclass.setUpdated.call(this, updatedAnchorNode, editMode, entry); + if(entry.updated && entry.updated !== null){ + this.setFieldValidity("updated", true); + } + }else{ + if(entry.updated && entry.updated !== null){ + this._editors.updated = this._createEditor(updatedAnchorNode, entry.updated); + this.setFieldValidity("updated",true); + } + } + }, + + + setSummary: function(/*DOM node*/summaryAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the summary node in the template to some value from the entry. + // description: + // Function to set the contents of the summary node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // summaryAnchorNode: + // The DOM node to attach the summary data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + if(!editMode){ + FeedEntryEditor.superclass.setSummary.call(this, summaryAnchorNode, editMode, entry); + if(entry.summary && entry.summary.value && entry.summary.value !== null){ + this.setFieldValidity("summary", true); + } + }else{ + if(entry.summary && entry.summary.value && entry.summary.value !== null){ + if(!this._toLoad){ + this._toLoad = []; + } + this.entrySummarySelect.value = entry.summary.type; + + var editor = this._createEditor(summaryAnchorNode, entry.summary, true, entry.summary.type === "html" || entry.summary.type === "xhtml"); + editor.name = "summary"; + this._toLoad.push(editor); + this.setFieldValidity("summaryedit",true); + this.setFieldValidity("summary",true); + } + } + }, + + setContent: function(/*DOM node*/contentAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the content node in the template to some value from the entry. + // description: + // Function to set the contents of the content node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // summaryAnchorNode: + // The DOM node to attach the content data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + if(!editMode){ + FeedEntryEditor.superclass.setContent.call(this, contentAnchorNode, editMode, entry); + if(entry.content && entry.content.value && entry.content.value !== null){ + this.setFieldValidity("content",true); + } + }else{ + if(entry.content && entry.content.value && entry.content.value !== null){ + if(!this._toLoad){ + this._toLoad = []; + } + this.entryContentSelect.value = entry.content.type; + var editor = this._createEditor(contentAnchorNode, entry.content, true, entry.content.type === "html" || entry.content.type === "xhtml"); + editor.name = "content"; + this._toLoad.push(editor); + this.setFieldValidity("contentedit",true); + this.setFieldValidity("content",true); + } + } + }, + + _createEditor: function(/*DOM node*/anchorNode, /*DOM node*/node, /*boolean*/multiline, /*object*/rte){ + // summary: + // Function to create an appropriate text editor widget based on the given parameters. + // anchorNode: + // The DOM node to attach the editor widget to. + // node: + // An object containing the value to be put into the editor. This ranges from an anonymous object + // with a value parameter to a dojox.atom.io.model.Content object. + // multiline: + // A boolean indicating whether the content should be multiline (such as a textarea) instead of a + // single line (such as a textbox). + // rte: + // A boolean indicating whether the content should be a rich text editor widget. + // returns: + // Either a widget (for textarea or textbox widgets) or an anonymous object to be used to create a + // rich text area widget. + var viewNode; + var box; + if(!node){ + if(rte){ + // Returns an anonymous object which would then be loaded later, after the containing element + // exists on the page. + return {anchorNode: anchorNode, + entryValue: "", + editor: null, + generateEditor: function(){ + // The only way I found I could get the editor to behave consistently was to + // create the content on a span, and allow the content editor to replace it. + // This gets around the dynamic/delayed way in which content editors get created. + var node = document.createElement("div"); + node.innerHTML = this.entryValue; + this.anchorNode.appendChild(node); + var _editor = new Editor({}, node); + this.editor = _editor; + return _editor; + } + }; + } + if(multiline){ + // If multiline, create a textarea + viewNode = document.createElement("textarea"); + anchorNode.appendChild(viewNode); + domStyle.set(viewNode, 'width', '90%'); + box = new SimpleTextarea({},viewNode); + }else{ + // If single line, create a textbox. + viewNode = document.createElement("input"); + anchorNode.appendChild(viewNode); + domStyle.set(viewNode, 'width', '95%'); + box = new TextBox({},viewNode); + } + box.attr('value', ''); + return box; + } + + // Check through the node parameter to get the value to be used. + var value; + if(node.value !== undefined){ + value = node.value; + }else if(node.attr){ + value = node.attr('value'); + }else{ + value = node; + } + if(rte){ + // Returns an anonymous object which would then be loaded later, after the containing element + // exists on the page. + if(value.indexOf("<") != -1){ + value = value.replace(/') !== 0){ + value = '
    ' + value + '
    '; + } + } + entry.title = new model.Content("title", value, null, this.entryTitleSelect.value); + modifiedEntry = true; + } + + if(this._editors.id.attr('value') != entry.id){ + entry.id = this._editors.id.attr('value'); + modifiedEntry = true; + } + + if(this._editors.summary && (this._editors.summary.attr('value') != entry.summary.value || this.entrySummarySelect.value != entry.summary.type)){ + value = this._editors.summary.attr('value'); + if(this.entrySummarySelect.value === "xhtml"){ + value = this._enforceXhtml(value); + if(value.indexOf('
    ') !== 0){ + value = '
    ' + value + '
    '; + } + } + entry.summary = new model.Content("summary", value, null, this.entrySummarySelect.value); + modifiedEntry = true; + } + + if(this._editors.content && (this._editors.content.attr('value') != entry.content.value || this.entryContentSelect.value != entry.content.type)){ + value = this._editors.content.attr('value'); + if(this.entryContentSelect.value === "xhtml"){ + value = this._enforceXhtml(value); + if(value.indexOf('
    ') !== 0){ + value = '
    ' + value + '
    '; + } + } + entry.content = new model.Content("content", value, null, this.entryContentSelect.value); + modifiedEntry = true; + } + + if(this._editors.authors){ + if(modifiedEntry){ + entry.authors = []; + authors = this._editors.authors.getValues(); + for(i in authors){ + if(authors[i].name || authors[i].email || authors[i].uri){ + entry.addAuthor(authors[i].name, authors[i].email, authors[i].uri); + } + } + }else{ + var currentAuthors = entry.authors; + var searchAuthors = function(name, email, uri){ + for(i in currentAuthors){ + if(currentAuthors[i].name === name && currentAuthors[i].email === email && currentAuthors[i].uri === uri){ + return true; + } + } + return false; + }; + authors = this._editors.authors.getValues(); + changed = false; + for(i in authors){ + if(!searchAuthors(authors[i].name, authors[i].email, authors[i].uri)){ + changed = true; + break; + } + } + if(changed){ + entry.authors = []; + for(i in authors){ + if(authors[i].name || authors[i].email || authors[i].uri){ + entry.addAuthor(authors[i].name, authors[i].email, authors[i].uri); + } + } + modifiedEntry = true; + } + } + } + + if(this._editors.contributors){ + if(modifiedEntry){ + entry.contributors = []; + contributors = this._editors.contributors.getValues(); + for(i in contributors){ + if(contributors[i].name || contributors[i].email || contributors[i].uri){ + entry.addAuthor(contributors[i].name, contributors[i].email, contributors[i].uri); + } + } + }else{ + var currentContributors = entry.contributors; + var searchContributors = function(name, email, uri){ + for(i in currentContributors){ + if(currentContributors[i].name === name && currentContributors[i].email === email && currentContributors[i].uri === uri){ + return true; + } + } + return false; + }; + contributors = this._editors.contributors.getValues(); + changed = false; + for(i in contributors){ + if(searchContributors(contributors[i].name, contributors[i].email, contributors[i].uri)){ + changed = true; + break; + } + } + if(changed){ + entry.contributors = []; + for(i in contributors){ + if(contributors[i].name || contributors[i].email || contributors[i].uri){ + entry.addContributor(contributors[i].name, contributors[i].email, contributors[i].uri); + } + } + modifiedEntry = true; + } + } + } + + if(modifiedEntry){ + dojo.publish(this.entrySelectionTopic, [{action: "update", source: this, entry: entry, callback: this._handleSave }]); + //TODO: REMOVE BELOW + //var atomIO = new dojox.atom.io.Connection(); + //atomIO.updateEntry(entry, dojo.hitch(this,this._handleSave)); + //WARNING: Use above when testing with SimpleProxy (or any other servlet which + // doesn't actually create a new entry and return it properly) + //atomIO.updateEntry(entry, dojo.hitch(this,this._handleSave), true); + } + }else{ + this._new = false; + entry = new model.Entry(); + + value = this._editors.title.attr('value'); + if(this.entryTitleSelect.value === "xhtml"){ + value = this._enforceXhtml(value); + value = '
    ' + value + '
    '; + } + entry.setTitle(value, this.entryTitleSelect.value); + entry.id = this._editors.id.attr('value'); + + authors = this._editors.authors.getValues(); + for(i in authors){ + if(authors[i].name || authors[i].email || authors[i].uri){ + entry.addAuthor(authors[i].name, authors[i].email, authors[i].uri); + } + } + + contributors = this._editors.contributors.getValues(); + for(i in contributors){ + if(contributors[i].name || contributors[i].email || contributors[i].uri){ + entry.addContributor(contributors[i].name, contributors[i].email, contributors[i].uri); + } + } + + + value = this._editors.summary.attr('value'); + if(this.entrySummarySelect.value === "xhtml"){ + value = this._enforceXhtml(value); + value = '
    ' + value + '
    '; + } + entry.summary = new model.Content("summary", value, null, this.entrySummarySelect.value); + + value = this._editors.content.attr('value'); + if(this.entryContentSelect.value === "xhtml"){ + value = this._enforceXhtml(value); + value = '
    ' + value + '
    '; + } + entry.content = new model.Content("content", value, null, this.entryContentSelect.value); + + domStyle.set(this.entryNewButton, 'display', ''); + dojo.publish(this.entrySelectionTopic, [{action: "post", source: this, entry: entry }]); + } + this._editMode = false; + + //Rebuild the view using the same entry and feed. + this.setEntry(entry, this._feed, true); + }, + + _handleSave: function(/*object*/entry, /*string*/ location){ + // summary: + // Function for handling the save of an entry, cleaning up the display after the edit is completed. + // entry: dojox.atom.io.model.Entry object + // The entry that was saved. + // Location: String + // A URL to be used, not used here, but part of the call back from the AtomIO + // returns: Nothing + + //Close the editor and revert out. + this._editMode = false; + + //Rebuild the view using the same entry and feed. + this.clear(); + this.setEntry(entry, this.getFeed(), true); + }, + + cancelEdits: function(){ + // summary: + // Cancels edits and reverts the editor to its previous state (display mode) + // returns: + // Nothing. + this._new = false; + domStyle.set(this.entrySaveCancelButtons, 'display', 'none'); + if(this._editable){ + domStyle.set(this.entryEditButton, 'display', ''); + } + domStyle.set(this.entryNewButton, 'display', ''); + this._editMode = false; + + //Rebuild the view using the same entry and feed. + this.clearEditors(); + this.setEntry(this.getEntry(), this.getFeed(), true); + }, + + clear: function(){ + // summary: + // Clears the editor, destroys all editors, leaving the editor completely clear + this._editable=false; + this.clearEditors(); + FeedEntryEditor.superclass.clear.apply(this); + if(this._contentEditor){ + // Note that the superclass clear destroys the widget since it's in the child widget list, + // so this is just ref clearing. + this._contentEditor = this._setObject = this._oldContent = this._contentEditorCreator = null; + this._editors = {}; + } + }, + + clearEditors: function(){ + for(var key in this._editors){ + if(this._editors[key].isInstanceOf(Editor)){ + this._editors[key].close(false, true); + } + this._editors[key].destroy(); + } + this._editors = {}; + }, + + _enforceXhtml: function(/*string*/html){ + // summary: + // Function for cleaning up/enforcing the XHTML standard in HTML returned from the editor2 widget. + // html: + // HTML string to be enforced as xhtml. + // returns: + // string of cleaned up HTML. + var xhtml = null; + if(html){ + //Handle
    + var brRegExp = /
    /g; + xhtml = html.replace(brRegExp, "
    "); + + //Handle
    + xhtml = this._closeTag(xhtml, "hr"); + + //Handle + xhtml = this._closeTag(xhtml, "img"); + } + return xhtml; + }, + + _closeTag: function(/*string*/xhtml, /*string*/tag){ + // summary: + // Function for closing tags in a text of HTML/XHTML + // xhtml: String + // XHTML string which needs the closing tag. + // tag: + // The tag to close. + // returns: + // string of cleaned up HTML. + + // NOTE: Probably should redo this function in a more efficient way. This could get expensive. + var tagStart = "<" + tag; + var tagIndex = xhtml.indexOf(tagStart); + if(tagIndex !== -1){ + while (tagIndex !== -1){ + var tempString = ""; + var foundTagEnd = false; + for (var i = 0; i < xhtml.length; i++){ + var c = xhtml.charAt(i); + if(i <= tagIndex ||foundTagEnd){ + tempString += c; + } + else + { + if(c === '>'){ + tempString += "/"; + foundTagEnd = true; + } + tempString +=c; + } + } + xhtml = tempString; + tagIndex = xhtml.indexOf(tagStart, tagIndex + 1); + } + } + return xhtml; + }, + + _toggleNew: function(){ + // summary: + // Function to put the editor into a state to create a new entry. + + // Hide the edit/new buttons and show the save/cancel buttons. + domStyle.set(this.entryNewButton, 'display', 'none'); + domStyle.set(this.entryEditButton, 'display', 'none'); + domStyle.set(this.entrySaveCancelButtons, 'display', ''); + + // Reset the type select boxes to text. + this.entrySummarySelect.value = "text"; + this.entryContentSelect.value = "text"; + this.entryTitleSelect.value = "text"; + + // Clear all nodes. + this.clearNodes(); + this._new = true; + + var _nlsResources = i18nViewer; + // Create all headers and editors. + var titleHeader = new FeedEntryViewer.EntryHeader({title: _nlsResources.title}); + this.entryTitleHeader.appendChild(titleHeader.domNode); + + this._editors.title = this._createEditor(this.entryTitleNode, null); + this.setFieldValidity("title",true); + + var authorHeader = new FeedEntryViewer.EntryHeader({title: _nlsResources.authors}); + this.entryAuthorHeader.appendChild(authorHeader.domNode); + + this._editors.authors = this._createPeopleEditor(this.entryAuthorNode, {name: "Author"}); + this.setFieldValidity("authors", true); + + var contributorHeader = new FeedEntryViewer.EntryHeader({title: _nlsResources.contributors}); + this.entryContributorHeader.appendChild(contributorHeader.domNode); + + this._editors.contributors = this._createPeopleEditor(this.entryContributorNode, {name: "Contributor"}); + this.setFieldValidity("contributors", true); + + var idHeader = new FeedEntryViewer.EntryHeader({title: _nlsResources.id}); + this.entryIdHeader.appendChild(idHeader.domNode); + + this._editors.id = this._createEditor(this.entryIdNode, null); + this.setFieldValidity("id",true); + + var updatedHeader = new FeedEntryViewer.EntryHeader({title: _nlsResources.updated}); + this.entryUpdatedHeader.appendChild(updatedHeader.domNode); + + this._editors.updated = this._createEditor(this.entryUpdatedNode, null); + this.setFieldValidity("updated",true); + + var summaryHeader = new FeedEntryViewer.EntryHeader({title: _nlsResources.summary}); + this.entrySummaryHeader.appendChild(summaryHeader.domNode); + + this._editors.summary = this._createEditor(this.entrySummaryNode, null, true); + this.setFieldValidity("summaryedit",true); + this.setFieldValidity("summary",true); + + var contentHeader = new FeedEntryViewer.EntryHeader({title: _nlsResources.content}); + this.entryContentHeader.appendChild(contentHeader.domNode); + + this._editors.content = this._createEditor(this.entryContentNode, null, true); + this.setFieldValidity("contentedit",true); + this.setFieldValidity("content",true); + + // Show the sections. + this._displaySections(); + }, + + _displaySections: function(){ + // summary: + // Function to display the appropriate sections based on validity. + + // Hide select boxes. + domStyle.set(this.entrySummarySelect, 'display', 'none'); + domStyle.set(this.entryContentSelect, 'display', 'none'); + domStyle.set(this.entryTitleSelect, 'display', 'none'); + + // Show select boxes if the flags are set. + if(this.isFieldValid("contentedit")){ + domStyle.set(this.entryContentSelect, 'display', ''); + } + if(this.isFieldValid("summaryedit")){ + domStyle.set(this.entrySummarySelect, 'display', ''); + } + if(this.isFieldValid("titleedit")){ + domStyle.set(this.entryTitleSelect, 'display', ''); + } + // Call super's _displaySections. + FeedEntryEditor.superclass._displaySections.apply(this); + + // If we have editors to load after the nodes are created on the page, execute those now. + if(this._toLoad){ + for(var i in this._toLoad){ + var editor; + if(this._toLoad[i].generateEditor){ + editor = lang.hitch(this._toLoad[i], this._toLoad[i].generateEditor)(); + }else{ + editor = this._toLoad[i]; + } + this._editors[this._toLoad[i].name] = editor; + this._toLoad[i] = null; + } + this._toLoad = null; + } + } +}); + +var PeopleEditor = declare("dojox.atom.widget.PeopleEditor", [_Widget, _Templated, _Container],{ + // summary: + // An editor for dojox.atom.io.model.Person objects. + // description: + // An editor for dojox.atom.io.model.Person objects. Displays multiple rows for the respective arrays + // of people. Can add/remove rows on the fly. + templateString: peopleEditorTemplate, + + _rows: [], + _editors: [], + _index: 0, + _numRows: 0, + + postCreate: function(){ + // Initializer function for the PeopleEditor widget. + var _nlsResources = i18nPeople; + if(this.name){ + if(this.name == "Author"){ + this.peopleEditorButton.appendChild(document.createTextNode("["+_nlsResources.addAuthor+"]")); + }else if(this.name == "Contributor"){ + this.peopleEditorButton.appendChild(document.createTextNode("["+_nlsResources.addContributor+"]")); + } + }else{ + this.peopleEditorButton.appendChild(document.createTextNode("["+_nlsResources.add+"]")); + } + this._editors = []; + + if(!this.data || this.data.length===0){ + this._createEditors(null, null, null, 0, this.name); + this._index = 1; + }else{ + for(var i in this.data){ + this._createEditors(this.data[i].name, this.data[i].email, this.data[i].uri, i); + this._index++; + this._numRows++; + } + } + }, + + destroy: function(){ + for(var key in this._editors){ + for(var key2 in this._editors[key]){ + this._editors[key][key2].destroy(); + } + } + this._editors = []; + }, + + _createEditors: function(/*string*/name, /*string*/email, /*string*/uri, /*int*/index, /*string*/widgetName){ + // summary: + // creates editor boxes (textbox widgets) for the individual values of a Person. + // name: + // The name of this Person. + // email: + // The email of this Person. + // uri: + // The Person's URI. + // index: + // The row index to use for this Person. + var row = document.createElement("tr"); + this.peopleEditorEditors.appendChild(row); + row.id = "removeRow"+index; + + var node = document.createElement("td"); + node.setAttribute('align', 'right'); + row.appendChild(node); + node.colSpan = 2; + + if(this._numRows>0){ + var hr = document.createElement("hr"); + node.appendChild(hr); + hr.id = "hr"+index; + } + + row = document.createElement("span"); + node.appendChild(row); + row.className = "peopleEditorButton"; + domStyle.set(row, 'font-size', 'x-small'); + connect.connect(row, "onclick", this, "_removeEditor"); + row.id = "remove"+index; + + node = document.createTextNode("[X]"); + row.appendChild(node); + + row = document.createElement("tr"); + this.peopleEditorEditors.appendChild(row); + row.id = "editorsRow"+index; + + var labelNode = document.createElement("td"); + row.appendChild(labelNode); + domStyle.set(labelNode, 'width', '20%'); + + node = document.createElement("td"); + row.appendChild(node); + + row = document.createElement("table"); + labelNode.appendChild(row); + domStyle.set(row, 'width', '100%'); + + labelNode = document.createElement("tbody"); + row.appendChild(labelNode); + + row = document.createElement("table"); + node.appendChild(row); + domStyle.set(row, 'width', '100%'); + + node = document.createElement("tbody"); + row.appendChild(node); + + this._editors[index] = []; + this._editors[index].push(this._createEditor(name, widgetName+'name'+index, 'Name:', labelNode, node)); + this._editors[index].push(this._createEditor(email, widgetName+'email'+index, 'Email:', labelNode, node)); + this._editors[index].push(this._createEditor(uri, widgetName+'uri'+index, 'URI:', labelNode, node)); + }, + + _createEditor: function(/*string*/value, /*string*/id, /*string*/name, /*DOM node*/labelNode, /*DOM node*/node){ + // summary: + // Creates an individual editor widget (textbox) for a value. + // value: + // The initial value of the textbox + // id: + // The id the textbox should have. + // name: + // The text to put in the label element for this textbox. + // labelNode: + // The node to attach the label to. + // node: + // The node to attach the editor rows to. + // returns: + // Editor widget. + var row = document.createElement("tr"); + labelNode.appendChild(row); + + var label = document.createElement("label"); + label.setAttribute('for', id); + label.appendChild(document.createTextNode(name)); + labelNode = document.createElement("td"); + labelNode.appendChild(label); + row.appendChild(labelNode); + + row = document.createElement("tr"); + node.appendChild(row); + + node = document.createElement("td"); + row.appendChild(node); + + var viewNode = document.createElement("input"); + viewNode.setAttribute('id', id); + node.appendChild(viewNode); + domStyle.set(viewNode, 'width', '95%'); + + var box = new TextBox({},viewNode); + box.attr('value', value); + return box; + }, + + _removeEditor: function(/*object*/event){ + // summary: + // Removes a Person from our list of editors. + // description: + // Removes a Person from our list of editors by removing the block of editors that + // make up that Person. + // event: + // The event generated when the remove button is pressed on the page. + var target = null; + + if(has("ie")){ + target = event.srcElement; + }else{ + target = event.target; + } + + var id = target.id; + id = id.substring(6); + for(var key in this._editors[id]){ + this._editors[id][key].destroy(); + } + + var node = domUtil.byId("editorsRow"+id); + var parent = node.parentNode; + parent.removeChild(node); + + node = domUtil.byId("removeRow"+id); + parent = node.parentNode; + parent.removeChild(node); + + this._numRows--; + if(this._numRows === 1 && parent.firstChild.firstChild.firstChild.tagName.toLowerCase() === "hr"){ + node = parent.firstChild.firstChild; + node.removeChild(node.firstChild); + } + this._editors[id] = null; + }, + + _add: function(){ + // summary: + // Adds a new block of blank editors to represent a Person. + this._createEditors(null, null, null, this._index); + this._index++; + this._numRows++; + }, + + getValues: function(){ + // summary: + // Gets the values of this editor in an array. + // description: + // Gets the values of this editor in an array, with each Person as an object within the array. + // returns: + // An array of anonymous objects representing dojox.atom.io.model.Persons. + var values = []; + for(var i in this._editors){ + if(this._editors[i]){ + values.push({name: this._editors[i][0].attr('value'), email: this._editors[i][1].attr('value'), uri: this._editors[i][2].attr('value')}); + } + } + return values; + } +}); + +return FeedEntryEditor; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedEntryViewer.js new file mode 100644 index 00000000..20637686 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedEntryViewer.js @@ -0,0 +1,383 @@ +//>>built +require({cache:{"url:dojox/atom/widget/templates/EntryHeader.html":"\n","url:dojox/atom/widget/templates/FeedEntryViewer.html":"
    \n \n \n \n \n \n \n \n \n \n \n\t\t\n\t\t\n \n \n \n \n
    \n \n
    \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n
    \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n\t\t\t\t\n
    \n \n \n \n \n \n\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n
    \n"}}); +define("dojox/atom/widget/FeedEntryViewer",["dojo/_base/kernel","dojo/_base/connect","dojo/_base/declare","dojo/_base/fx","dojo/_base/array","dojo/dom-style","dojo/dom-construct","dijit/_Widget","dijit/_Templated","dijit/_Container","dijit/layout/ContentPane","../io/Connection","dojo/text!./templates/FeedEntryViewer.html","dojo/text!./templates/EntryHeader.html","dojo/i18n!./nls/FeedEntryViewer"],function(_1,_2,_3,fx,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e){ +_1.experimental("dojox.atom.widget.FeedEntryViewer"); +var _f=_3("dojox.atom.widget.FeedEntryViewer",[_7,_8,_9],{entrySelectionTopic:"",_validEntryFields:{},displayEntrySections:"",_displayEntrySections:null,enableMenu:false,enableMenuFade:false,_optionButtonDisplayed:true,templateString:_c,_entry:null,_feed:null,_editMode:false,postCreate:function(){ +if(this.entrySelectionTopic!==""){ +this._subscriptions=[_1.subscribe(this.entrySelectionTopic,this,"_handleEvent")]; +} +var _10=_e; +this.displayOptions.innerHTML=_10.displayOptions; +this.feedEntryCheckBoxLabelTitle.innerHTML=_10.title; +this.feedEntryCheckBoxLabelAuthors.innerHTML=_10.authors; +this.feedEntryCheckBoxLabelContributors.innerHTML=_10.contributors; +this.feedEntryCheckBoxLabelId.innerHTML=_10.id; +this.close.innerHTML=_10.close; +this.feedEntryCheckBoxLabelUpdated.innerHTML=_10.updated; +this.feedEntryCheckBoxLabelSummary.innerHTML=_10.summary; +this.feedEntryCheckBoxLabelContent.innerHTML=_10.content; +},startup:function(){ +if(this.displayEntrySections===""){ +this._displayEntrySections=["title","authors","contributors","summary","content","id","updated"]; +}else{ +this._displayEntrySections=this.displayEntrySections.split(","); +} +this._setDisplaySectionsCheckboxes(); +if(this.enableMenu){ +_5.set(this.feedEntryViewerMenu,"display",""); +if(this.entryCheckBoxRow&&this.entryCheckBoxRow2){ +if(this.enableMenuFade){ +fx.fadeOut({node:this.entryCheckBoxRow,duration:250}).play(); +fx.fadeOut({node:this.entryCheckBoxRow2,duration:250}).play(); +} +} +} +},clear:function(){ +this.destroyDescendants(); +this._entry=null; +this._feed=null; +this.clearNodes(); +},clearNodes:function(){ +_4.forEach(["entryTitleRow","entryAuthorRow","entryContributorRow","entrySummaryRow","entryContentRow","entryIdRow","entryUpdatedRow"],function(_11){ +_5.set(this[_11],"display","none"); +},this); +_4.forEach(["entryTitleNode","entryTitleHeader","entryAuthorHeader","entryContributorHeader","entryContributorNode","entrySummaryHeader","entrySummaryNode","entryContentHeader","entryContentNode","entryIdNode","entryIdHeader","entryUpdatedHeader","entryUpdatedNode"],function(_12){ +while(this[_12].firstChild){ +_6.destroy(this[_12].firstChild); +} +},this); +},setEntry:function(_13,_14,_15){ +this.clear(); +this._validEntryFields={}; +this._entry=_13; +this._feed=_14; +if(_13!==null){ +if(this.entryTitleHeader){ +this.setTitleHeader(this.entryTitleHeader,_13); +} +if(this.entryTitleNode){ +this.setTitle(this.entryTitleNode,this._editMode,_13); +} +if(this.entryAuthorHeader){ +this.setAuthorsHeader(this.entryAuthorHeader,_13); +} +if(this.entryAuthorNode){ +this.setAuthors(this.entryAuthorNode,this._editMode,_13); +} +if(this.entryContributorHeader){ +this.setContributorsHeader(this.entryContributorHeader,_13); +} +if(this.entryContributorNode){ +this.setContributors(this.entryContributorNode,this._editMode,_13); +} +if(this.entryIdHeader){ +this.setIdHeader(this.entryIdHeader,_13); +} +if(this.entryIdNode){ +this.setId(this.entryIdNode,this._editMode,_13); +} +if(this.entryUpdatedHeader){ +this.setUpdatedHeader(this.entryUpdatedHeader,_13); +} +if(this.entryUpdatedNode){ +this.setUpdated(this.entryUpdatedNode,this._editMode,_13); +} +if(this.entrySummaryHeader){ +this.setSummaryHeader(this.entrySummaryHeader,_13); +} +if(this.entrySummaryNode){ +this.setSummary(this.entrySummaryNode,this._editMode,_13); +} +if(this.entryContentHeader){ +this.setContentHeader(this.entryContentHeader,_13); +} +if(this.entryContentNode){ +this.setContent(this.entryContentNode,this._editMode,_13); +} +} +this._displaySections(); +},setTitleHeader:function(_16,_17){ +if(_17.title&&_17.title.value&&_17.title.value!==null){ +var _18=_e; +var _19=new _1a({title:_18.title}); +_16.appendChild(_19.domNode); +} +},setTitle:function(_1b,_1c,_1d){ +if(_1d.title&&_1d.title.value&&_1d.title.value!==null){ +if(_1d.title.type=="text"){ +var _1e=document.createTextNode(_1d.title.value); +_1b.appendChild(_1e); +}else{ +var _1f=document.createElement("span"); +var _20=new _a({refreshOnShow:true,executeScripts:false},_1f); +_20.attr("content",_1d.title.value); +_1b.appendChild(_20.domNode); +} +this.setFieldValidity("title",true); +} +},setAuthorsHeader:function(_21,_22){ +if(_22.authors&&_22.authors.length>0){ +var _23=_e; +var _24=new _1a({title:_23.authors}); +_21.appendChild(_24.domNode); +} +},setAuthors:function(_25,_26,_27){ +_25.innerHTML=""; +if(_27.authors&&_27.authors.length>0){ +for(var i in _27.authors){ +if(_27.authors[i].name){ +var _28=_25; +if(_27.authors[i].uri){ +var _29=document.createElement("a"); +_28.appendChild(_29); +_29.href=_27.authors[i].uri; +_28=_29; +} +var _2a=_27.authors[i].name; +if(_27.authors[i].email){ +_2a=_2a+" ("+_27.authors[i].email+")"; +} +var _2b=document.createTextNode(_2a); +_28.appendChild(_2b); +var _2c=document.createElement("br"); +_25.appendChild(_2c); +this.setFieldValidity("authors",true); +} +} +} +},setContributorsHeader:function(_2d,_2e){ +if(_2e.contributors&&_2e.contributors.length>0){ +var _2f=_e; +var _30=new _1a({title:_2f.contributors}); +_2d.appendChild(_30.domNode); +} +},setContributors:function(_31,_32,_33){ +if(_33.contributors&&_33.contributors.length>0){ +for(var i in _33.contributors){ +var _34=document.createTextNode(_33.contributors[i].name); +_31.appendChild(_34); +var _35=document.createElement("br"); +_31.appendChild(_35); +this.setFieldValidity("contributors",true); +} +} +},setIdHeader:function(_36,_37){ +if(_37.id&&_37.id!==null){ +var _38=_e; +var _39=new _1a({title:_38.id}); +_36.appendChild(_39.domNode); +} +},setId:function(_3a,_3b,_3c){ +if(_3c.id&&_3c.id!==null){ +var _3d=document.createTextNode(_3c.id); +_3a.appendChild(_3d); +this.setFieldValidity("id",true); +} +},setUpdatedHeader:function(_3e,_3f){ +if(_3f.updated&&_3f.updated!==null){ +var _40=_e; +var _41=new _1a({title:_40.updated}); +_3e.appendChild(_41.domNode); +} +},setUpdated:function(_42,_43,_44){ +if(_44.updated&&_44.updated!==null){ +var _45=document.createTextNode(_44.updated); +_42.appendChild(_45); +this.setFieldValidity("updated",true); +} +},setSummaryHeader:function(_46,_47){ +if(_47.summary&&_47.summary.value&&_47.summary.value!==null){ +var _48=_e; +var _49=new _1a({title:_48.summary}); +_46.appendChild(_49.domNode); +} +},setSummary:function(_4a,_4b,_4c){ +if(_4c.summary&&_4c.summary.value&&_4c.summary.value!==null){ +var _4d=document.createElement("span"); +var _4e=new _a({refreshOnShow:true,executeScripts:false},_4d); +_4e.attr("content",_4c.summary.value); +_4a.appendChild(_4e.domNode); +this.setFieldValidity("summary",true); +} +},setContentHeader:function(_4f,_50){ +if(_50.content&&_50.content.value&&_50.content.value!==null){ +var _51=_e; +var _52=new _1a({title:_51.content}); +_4f.appendChild(_52.domNode); +} +},setContent:function(_53,_54,_55){ +if(_55.content&&_55.content.value&&_55.content.value!==null){ +var _56=document.createElement("span"); +var _57=new _a({refreshOnShow:true,executeScripts:false},_56); +_57.attr("content",_55.content.value); +_53.appendChild(_57.domNode); +this.setFieldValidity("content",true); +} +},_displaySections:function(){ +_5.set(this.entryTitleRow,"display","none"); +_5.set(this.entryAuthorRow,"display","none"); +_5.set(this.entryContributorRow,"display","none"); +_5.set(this.entrySummaryRow,"display","none"); +_5.set(this.entryContentRow,"display","none"); +_5.set(this.entryIdRow,"display","none"); +_5.set(this.entryUpdatedRow,"display","none"); +for(var i in this._displayEntrySections){ +var _58=this._displayEntrySections[i].toLowerCase(); +if(_58==="title"&&this.isFieldValid("title")){ +_5.set(this.entryTitleRow,"display",""); +} +if(_58==="authors"&&this.isFieldValid("authors")){ +_5.set(this.entryAuthorRow,"display",""); +} +if(_58==="contributors"&&this.isFieldValid("contributors")){ +_5.set(this.entryContributorRow,"display",""); +} +if(_58==="summary"&&this.isFieldValid("summary")){ +_5.set(this.entrySummaryRow,"display",""); +} +if(_58==="content"&&this.isFieldValid("content")){ +_5.set(this.entryContentRow,"display",""); +} +if(_58==="id"&&this.isFieldValid("id")){ +_5.set(this.entryIdRow,"display",""); +} +if(_58==="updated"&&this.isFieldValid("updated")){ +_5.set(this.entryUpdatedRow,"display",""); +} +} +},setDisplaySections:function(_59){ +if(_59!==null){ +this._displayEntrySections=_59; +this._displaySections(); +}else{ +this._displayEntrySections=["title","authors","contributors","summary","content","id","updated"]; +} +},_setDisplaySectionsCheckboxes:function(){ +var _5a=["title","authors","contributors","summary","content","id","updated"]; +for(var i in _5a){ +if(_4.indexOf(this._displayEntrySections,_5a[i])==-1){ +_5.set(this["feedEntryCell"+_5a[i]],"display","none"); +}else{ +this["feedEntryCheckBox"+_5a[i].substring(0,1).toUpperCase()+_5a[i].substring(1)].checked=true; +} +} +},_readDisplaySections:function(){ +var _5b=[]; +if(this.feedEntryCheckBoxTitle.checked){ +_5b.push("title"); +} +if(this.feedEntryCheckBoxAuthors.checked){ +_5b.push("authors"); +} +if(this.feedEntryCheckBoxContributors.checked){ +_5b.push("contributors"); +} +if(this.feedEntryCheckBoxSummary.checked){ +_5b.push("summary"); +} +if(this.feedEntryCheckBoxContent.checked){ +_5b.push("content"); +} +if(this.feedEntryCheckBoxId.checked){ +_5b.push("id"); +} +if(this.feedEntryCheckBoxUpdated.checked){ +_5b.push("updated"); +} +this._displayEntrySections=_5b; +},_toggleCheckbox:function(_5c){ +if(_5c.checked){ +_5c.checked=false; +}else{ +_5c.checked=true; +} +this._readDisplaySections(); +this._displaySections(); +},_toggleOptions:function(_5d){ +if(this.enableMenu){ +var _5e=null; +var _5f; +var _60; +if(this._optionButtonDisplayed){ +if(this.enableMenuFade){ +_5f=fx.fadeOut({node:this.entryCheckBoxDisplayOptions,duration:250}); +_2.connect(_5f,"onEnd",this,function(){ +_5.set(this.entryCheckBoxDisplayOptions,"display","none"); +_5.set(this.entryCheckBoxRow,"display",""); +_5.set(this.entryCheckBoxRow2,"display",""); +fx.fadeIn({node:this.entryCheckBoxRow,duration:250}).play(); +fx.fadeIn({node:this.entryCheckBoxRow2,duration:250}).play(); +}); +_5f.play(); +}else{ +_5.set(this.entryCheckBoxDisplayOptions,"display","none"); +_5.set(this.entryCheckBoxRow,"display",""); +_5.set(this.entryCheckBoxRow2,"display",""); +} +this._optionButtonDisplayed=false; +}else{ +if(this.enableMenuFade){ +_5f=fx.fadeOut({node:this.entryCheckBoxRow,duration:250}); +_60=fx.fadeOut({node:this.entryCheckBoxRow2,duration:250}); +_2.connect(_5f,"onEnd",this,function(){ +_5.set(this.entryCheckBoxRow,"display","none"); +_5.set(this.entryCheckBoxRow2,"display","none"); +_5.set(this.entryCheckBoxDisplayOptions,"display",""); +fx.fadeIn({node:this.entryCheckBoxDisplayOptions,duration:250}).play(); +}); +_5f.play(); +_60.play(); +}else{ +_5.set(this.entryCheckBoxRow,"display","none"); +_5.set(this.entryCheckBoxRow2,"display","none"); +_5.set(this.entryCheckBoxDisplayOptions,"display",""); +} +this._optionButtonDisplayed=true; +} +} +},_handleEvent:function(_61){ +if(_61.source!=this){ +if(_61.action=="set"&&_61.entry){ +this.setEntry(_61.entry,_61.feed); +}else{ +if(_61.action=="delete"&&_61.entry&&_61.entry==this._entry){ +this.clear(); +} +} +} +},setFieldValidity:function(_62,_63){ +if(_62){ +var _64=_62.toLowerCase(); +this._validEntryFields[_62]=_63; +} +},isFieldValid:function(_65){ +return this._validEntryFields[_65.toLowerCase()]; +},getEntry:function(){ +return this._entry; +},getFeed:function(){ +return this._feed; +},destroy:function(){ +this.clear(); +_4.forEach(this._subscriptions,_1.unsubscribe); +}}); +var _1a=_f.EntryHeader=_3("dojox.atom.widget.EntryHeader",[_7,_8,_9],{title:"",templateString:_d,postCreate:function(){ +this.setListHeader(); +},setListHeader:function(_66){ +this.clear(); +if(_66){ +this.title=_66; +} +var _67=document.createTextNode(this.title); +this.entryHeaderNode.appendChild(_67); +},clear:function(){ +this.destroyDescendants(); +if(this.entryHeaderNode){ +for(var i=0;i\n", +'url:dojox/atom/widget/templates/FeedEntryViewer.html':"
    \n \n \n \n \n \n \n \n \n \n \n\t\t\n\t\t\n \n \n \n \n
    \n \n
    \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n
    \n \n\t\t\t\t\n \n \n\t\t\t\t\n \n \n\t\t\t\t\n
    \n \n \n \n \n \n\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n \n \n\t\t\t\t\t\t\n \n \n \n \n
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n
    \n
    \n
    \n"}}); +define("dojox/atom/widget/FeedEntryViewer", [ + "dojo/_base/kernel", + "dojo/_base/connect", + "dojo/_base/declare", + "dojo/_base/fx", + "dojo/_base/array", + "dojo/dom-style", + "dojo/dom-construct", + "dijit/_Widget", + "dijit/_Templated", + "dijit/_Container", + "dijit/layout/ContentPane", + "../io/Connection", + "dojo/text!./templates/FeedEntryViewer.html", + "dojo/text!./templates/EntryHeader.html", + "dojo/i18n!./nls/FeedEntryViewer" +], function (dojo, connect, declare, fx, arrayUtil, domStyle, domConstruct, _Widget, _Templated, _Container, ContentPane, Connection, template, headerTemplate, i18nViewer) { + +dojo.experimental("dojox.atom.widget.FeedEntryViewer"); + + +var FeedEntryViewer = declare("dojox.atom.widget.FeedEntryViewer", [_Widget, _Templated, _Container],{ + // summary: + // An ATOM feed entry editor for publishing updated ATOM entries, or viewing non-editable entries. + + entrySelectionTopic: "", //The topic to listen on for entries to edit. + + _validEntryFields: {}, //The entry fields that were present on the entry and are being displayed. + //This works in conjunction with what is selected to be displayed. + displayEntrySections: "", //What current sections of the entries to display as a comma separated list. + _displayEntrySections: null, + + //Control options for the display options menu. + enableMenu: false, + enableMenuFade: false, + _optionButtonDisplayed: true, + + //Templates for the HTML rendering. Need to figure these out better, admittedly. + templateString: template, + + _entry: null, //The entry that is being viewed/edited. + _feed: null, //The feed the entry came from. + + _editMode: false, //Flag denoting the state of the widget, in edit mode or not. + + postCreate: function(){ + if(this.entrySelectionTopic !== ""){ + this._subscriptions = [dojo.subscribe(this.entrySelectionTopic, this, "_handleEvent")]; + } + var _nlsResources = i18nViewer; + this.displayOptions.innerHTML = _nlsResources.displayOptions; + this.feedEntryCheckBoxLabelTitle.innerHTML = _nlsResources.title; + this.feedEntryCheckBoxLabelAuthors.innerHTML = _nlsResources.authors; + this.feedEntryCheckBoxLabelContributors.innerHTML = _nlsResources.contributors; + this.feedEntryCheckBoxLabelId.innerHTML = _nlsResources.id; + this.close.innerHTML = _nlsResources.close; + this.feedEntryCheckBoxLabelUpdated.innerHTML = _nlsResources.updated; + this.feedEntryCheckBoxLabelSummary.innerHTML = _nlsResources.summary; + this.feedEntryCheckBoxLabelContent.innerHTML = _nlsResources.content; + }, + + startup: function(){ + if(this.displayEntrySections === ""){ + this._displayEntrySections = ["title","authors","contributors","summary","content","id","updated"]; + }else{ + this._displayEntrySections = this.displayEntrySections.split(","); + } + this._setDisplaySectionsCheckboxes(); + + if(this.enableMenu){ + domStyle.set(this.feedEntryViewerMenu, 'display', ''); + if(this.entryCheckBoxRow && this.entryCheckBoxRow2){ + if(this.enableMenuFade){ + fx.fadeOut({node: this.entryCheckBoxRow,duration: 250}).play(); + fx.fadeOut({node: this.entryCheckBoxRow2,duration: 250}).play(); + } + } + } + }, + + clear: function(){ + // summary: + // Function to clear the state of the widget. + + this.destroyDescendants(); + this._entry=null; + this._feed=null; + this.clearNodes(); + }, + + clearNodes: function(){ + // summary: + // Function to clear all the display nodes for the ATOM entry from the viewer. + + arrayUtil.forEach([ + "entryTitleRow", "entryAuthorRow", "entryContributorRow", "entrySummaryRow", "entryContentRow", + "entryIdRow", "entryUpdatedRow" + ], function(node){ + domStyle.set(this[node], "display", "none"); + }, this); + + arrayUtil.forEach([ + "entryTitleNode", "entryTitleHeader", "entryAuthorHeader", "entryContributorHeader", + "entryContributorNode", "entrySummaryHeader", "entrySummaryNode", "entryContentHeader", + "entryContentNode", "entryIdNode", "entryIdHeader", "entryUpdatedHeader", "entryUpdatedNode" + ], function(part){ + while(this[part].firstChild){ + domConstruct.destroy(this[part].firstChild); + } + } + ,this); + + }, + + setEntry: function(/*object*/entry, /*object*/feed, /*boolean*/leaveMenuState){ + // summary: + // Function to set the current entry that is being edited. + // entry: + // Instance of dojox.atom.io.model.Entry to display for reading/editing. + this.clear(); + this._validEntryFields = {}; + this._entry = entry; + this._feed = feed; + + if(entry !== null){ + // Handle the title. + if(this.entryTitleHeader){ + this.setTitleHeader(this.entryTitleHeader, entry); + } + + if(this.entryTitleNode){ + this.setTitle(this.entryTitleNode, this._editMode, entry); + } + + if(this.entryAuthorHeader){ + this.setAuthorsHeader(this.entryAuthorHeader, entry); + } + + if(this.entryAuthorNode){ + this.setAuthors(this.entryAuthorNode, this._editMode, entry); + } + + if(this.entryContributorHeader){ + this.setContributorsHeader(this.entryContributorHeader, entry); + } + + if(this.entryContributorNode){ + this.setContributors(this.entryContributorNode, this._editMode, entry); + } + + if(this.entryIdHeader){ + this.setIdHeader(this.entryIdHeader, entry); + } + + if(this.entryIdNode){ + this.setId(this.entryIdNode, this._editMode, entry); + } + + if(this.entryUpdatedHeader){ + this.setUpdatedHeader(this.entryUpdatedHeader, entry); + } + + if(this.entryUpdatedNode){ + this.setUpdated(this.entryUpdatedNode, this._editMode, entry); + } + + if(this.entrySummaryHeader){ + this.setSummaryHeader(this.entrySummaryHeader, entry); + } + + if(this.entrySummaryNode){ + this.setSummary(this.entrySummaryNode, this._editMode, entry); + } + + if(this.entryContentHeader){ + this.setContentHeader(this.entryContentHeader, entry); + } + + if(this.entryContentNode){ + this.setContent(this.entryContentNode, this._editMode, entry); + } + } + this._displaySections(); + }, + + setTitleHeader: function(/*DOMNode*/ titleHeaderNode, /*object*/entry){ + // summary: + // Function to set the contents of the title header node in the template to some value. + // description: + // Function to set the contents of the title header node in the template to some value. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // titleAnchorNode: + // The DOM node to attach the title data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + + if(entry.title && entry.title.value && entry.title.value !== null){ + var _nlsResources = i18nViewer; + var titleHeader = new EntryHeader({title: _nlsResources.title}); + titleHeaderNode.appendChild(titleHeader.domNode); + } + }, + + setTitle: function(titleAnchorNode, editMode, entry){ + // summary: + // Function to set the contents of the title node in the template to some value from the entry. + // description: + // Function to set the contents of the title node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // titleAnchorNode: + // The DOM node to attach the title data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + if(entry.title && entry.title.value && entry.title.value !== null){ + if(entry.title.type == "text"){ + var titleNode = document.createTextNode(entry.title.value); + titleAnchorNode.appendChild(titleNode); + }else{ + var titleViewNode = document.createElement("span"); + var titleView = new ContentPane({refreshOnShow: true, executeScripts: false}, titleViewNode); + titleView.attr('content', entry.title.value); + titleAnchorNode.appendChild(titleView.domNode); + } + this.setFieldValidity("title", true); + } + }, + + setAuthorsHeader: function(/*DOMNode*/ authorHeaderNode, /*object*/entry){ + // summary: + // Function to set the title format for the authors section of the author row in the template to some value from the entry. + // description: + // Function to set the title format for the authors section of the author row in the template to some value from the entry. + // This exists specifically so users can over-ride how the author data is filled out from an entry. + // authorHeaderNode: + // The DOM node to attach the author section header data to. + // entry: + // The Feed Entry to work with. + if(entry.authors && entry.authors.length > 0){ + var _nlsResources = i18nViewer; + var authorHeader = new EntryHeader({title: _nlsResources.authors}); + authorHeaderNode.appendChild(authorHeader.domNode); + } + }, + + setAuthors: function(/*DOMNode*/ authorsAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the author node in the template to some value from the entry. + // description: + // Function to set the contents of the author node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // authorsAnchorNode: + // The DOM node to attach the author data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + authorsAnchorNode.innerHTML = ""; + if(entry.authors && entry.authors.length > 0){ + for(var i in entry.authors){ + if(entry.authors[i].name){ + var anchor = authorsAnchorNode; + if(entry.authors[i].uri){ + var link = document.createElement("a"); + anchor.appendChild(link); + link.href = entry.authors[i].uri; + anchor = link; + } + var name = entry.authors[i].name; + if(entry.authors[i].email){ + name = name + " (" + entry.authors[i].email + ")"; + } + var authorNode = document.createTextNode(name); + anchor.appendChild(authorNode); + var breakNode = document.createElement("br"); + authorsAnchorNode.appendChild(breakNode); + this.setFieldValidity("authors", true); + } + } + } + }, + + setContributorsHeader: function(/*DOMNode*/ contributorsHeaderNode, /*object*/entry){ + // summary: + // Function to set the contents of the contributor header node in the template to some value from the entry. + // description: + // Function to set the contents of the contributor header node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // contributorsHeaderNode: + // The DOM node to attach the contributor title to. + // entry: + // The Feed Entry to work with. + if(entry.contributors && entry.contributors.length > 0){ + var _nlsResources = i18nViewer; + var contributorHeader = new EntryHeader({title: _nlsResources.contributors}); + contributorsHeaderNode.appendChild(contributorHeader.domNode); + } + }, + + + setContributors: function(/*DOMNode*/ contributorsAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the contributor node in the template to some value from the entry. + // description: + // Function to set the contents of the contributor node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // contributorsAnchorNode: + // The DOM node to attach the contributor data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + if(entry.contributors && entry.contributors.length > 0){ + for(var i in entry.contributors){ + var contributorNode = document.createTextNode(entry.contributors[i].name); + contributorsAnchorNode.appendChild(contributorNode); + var breakNode = document.createElement("br"); + contributorsAnchorNode.appendChild(breakNode); + this.setFieldValidity("contributors", true); + } + } + }, + + + setIdHeader: function(/*DOMNode*/ idHeaderNode, /*object*/entry){ + // summary: + // Function to set the contents of the ID node in the template to some value from the entry. + // description: + // Function to set the contents of the ID node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // idAnchorNode: + // The DOM node to attach the ID data to. + // entry: + // The Feed Entry to work with. + if(entry.id && entry.id !== null){ + var _nlsResources = i18nViewer; + var idHeader = new EntryHeader({title: _nlsResources.id}); + idHeaderNode.appendChild(idHeader.domNode); + } + }, + + + setId: function(/*DOMNode*/ idAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the ID node in the template to some value from the entry. + // description: + // Function to set the contents of the ID node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // idAnchorNode: + // The DOM node to attach the ID data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + if(entry.id && entry.id !== null){ + var idNode = document.createTextNode(entry.id); + idAnchorNode.appendChild(idNode); + this.setFieldValidity("id", true); + } + }, + + setUpdatedHeader: function(/*DOMNode*/ updatedHeaderNode, /*object*/entry){ + // summary: + // Function to set the contents of the updated header node in the template to some value from the entry. + // description: + // Function to set the contents of the updated header node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // updatedHeaderNode: + // The DOM node to attach the updated header data to. + // entry: + // The Feed Entry to work with. + if(entry.updated && entry.updated !== null){ + var _nlsResources = i18nViewer; + var updatedHeader = new EntryHeader({title: _nlsResources.updated}); + updatedHeaderNode.appendChild(updatedHeader.domNode); + } + }, + + setUpdated: function(/*DOMNode*/ updatedAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the updated node in the template to some value from the entry. + // description: + // Function to set the contents of the updated node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // updatedAnchorNode: + // The DOM node to attach the udpated data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + if(entry.updated && entry.updated !== null){ + var updatedNode = document.createTextNode(entry.updated); + updatedAnchorNode.appendChild(updatedNode); + this.setFieldValidity("updated", true); + } + }, + + setSummaryHeader: function(/*DOMNode*/ summaryHeaderNode, /*object*/entry){ + // summary: + // Function to set the contents of the summary node in the template to some value from the entry. + // description: + // Function to set the contents of the summary node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // summaryHeaderNode: + // The DOM node to attach the summary title to. + // entry: + // The Feed Entry to work with. + if(entry.summary && entry.summary.value && entry.summary.value !== null){ + var _nlsResources = i18nViewer; + var summaryHeader = new EntryHeader({title: _nlsResources.summary}); + summaryHeaderNode.appendChild(summaryHeader.domNode); + } + }, + + + setSummary: function(/*DOMNode*/ summaryAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the summary node in the template to some value from the entry. + // description: + // Function to set the contents of the summary node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // summaryAnchorNode: + // The DOM node to attach the summary data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + if(entry.summary && entry.summary.value && entry.summary.value !== null){ + var summaryViewNode = document.createElement("span"); + var summaryView = new ContentPane({refreshOnShow: true, executeScripts: false}, summaryViewNode); + summaryView.attr('content', entry.summary.value); + summaryAnchorNode.appendChild(summaryView.domNode); + this.setFieldValidity("summary", true); + } + }, + + setContentHeader: function(/*DOMNode*/ contentHeaderNode, /*object*/entry){ + // summary: + // Function to set the contents of the content node in the template to some value from the entry. + // description: + // Function to set the contents of the content node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // contentHeaderNode: + // The DOM node to attach the content data to. + // entry: + // The Feed Entry to work with. + if(entry.content && entry.content.value && entry.content.value !== null){ + var _nlsResources = i18nViewer; + var contentHeader = new EntryHeader({title: _nlsResources.content}); + contentHeaderNode.appendChild(contentHeader.domNode); + } + }, + + setContent: function(/*DOMNode*/ contentAnchorNode, /*boolean*/editMode, /*object*/entry){ + // summary: + // Function to set the contents of the content node in the template to some value from the entry. + // description: + // Function to set the contents of the content node in the template to some value from the entry. + // This exists specifically so users can over-ride how the title data is filled out from an entry. + // contentAnchorNode: + // The DOM node to attach the content data to. + // editMode: + // Boolean to indicate if the display should be in edit mode or not. + // entry: + // The Feed Entry to work with. + if(entry.content && entry.content.value && entry.content.value !== null){ + var contentViewNode = document.createElement("span"); + var contentView = new ContentPane({refreshOnShow: true, executeScripts: false},contentViewNode); + contentView.attr('content', entry.content.value); + contentAnchorNode.appendChild(contentView.domNode); + this.setFieldValidity("content", true); + } + }, + + + _displaySections: function(){ + // summary: + // Internal function for determining which sections of the view to actually display. + // returns: + // Nothing. + domStyle.set(this.entryTitleRow, 'display', 'none'); + domStyle.set(this.entryAuthorRow, 'display', 'none'); + domStyle.set(this.entryContributorRow, 'display', 'none'); + domStyle.set(this.entrySummaryRow, 'display', 'none'); + domStyle.set(this.entryContentRow, 'display', 'none'); + domStyle.set(this.entryIdRow, 'display', 'none'); + domStyle.set(this.entryUpdatedRow, 'display', 'none'); + + for(var i in this._displayEntrySections){ + var section = this._displayEntrySections[i].toLowerCase(); + if(section === "title" && this.isFieldValid("title")){ + domStyle.set(this.entryTitleRow, 'display', ''); + } + if(section === "authors" && this.isFieldValid("authors")){ + domStyle.set(this.entryAuthorRow, 'display', ''); + } + if(section === "contributors" && this.isFieldValid("contributors")){ + domStyle.set(this.entryContributorRow, 'display', ''); + } + if(section === "summary" && this.isFieldValid("summary")){ + domStyle.set(this.entrySummaryRow, 'display', ''); + } + if(section === "content" && this.isFieldValid("content")){ + domStyle.set(this.entryContentRow, 'display', ''); + } + if(section === "id" && this.isFieldValid("id")){ + domStyle.set(this.entryIdRow, 'display', ''); + } + if(section === "updated" && this.isFieldValid("updated")){ + domStyle.set(this.entryUpdatedRow, 'display', ''); + } + + } + }, + + setDisplaySections: function(/*array*/sectionsArray){ + // summary: + // Function for setting which sections of the entry should be displayed. + // sectionsArray: + // Array of string names that indicate which sections to display. + // returns: + // Nothing. + if(sectionsArray !== null){ + this._displayEntrySections = sectionsArray; + this._displaySections(); + }else{ + this._displayEntrySections = ["title","authors","contributors","summary","content","id","updated"]; + } + }, + + _setDisplaySectionsCheckboxes: function(){ + // summary: + // Internal function for setting which checkboxes on the display are selected. + // returns: + // Nothing. + var items = ["title","authors","contributors","summary","content","id","updated"]; + for(var i in items){ + if(arrayUtil.indexOf(this._displayEntrySections, items[i]) == -1){ + domStyle.set(this["feedEntryCell"+items[i]], 'display', 'none'); + }else{ + this["feedEntryCheckBox"+items[i].substring(0,1).toUpperCase()+items[i].substring(1)].checked=true; + } + } + }, + + _readDisplaySections: function(){ + // summary: + // Internal function for reading what is currently checked for display and generating the display list from it. + var checkedList = []; + + if(this.feedEntryCheckBoxTitle.checked){ + checkedList.push("title"); + } + if(this.feedEntryCheckBoxAuthors.checked){ + checkedList.push("authors"); + } + if(this.feedEntryCheckBoxContributors.checked){ + checkedList.push("contributors"); + } + if(this.feedEntryCheckBoxSummary.checked){ + checkedList.push("summary"); + } + if(this.feedEntryCheckBoxContent.checked){ + checkedList.push("content"); + } + if(this.feedEntryCheckBoxId.checked){ + checkedList.push("id"); + } + if(this.feedEntryCheckBoxUpdated.checked){ + checkedList.push("updated"); + } + this._displayEntrySections = checkedList; + }, + + _toggleCheckbox: function(/*object*/checkBox){ + // summary: + // Internal function for determining of a particular entry is editable. + // description: + // Internal function for determining of a particular entry is editable. + // This is used for determining if the delete action should be displayed or not. + // checkBox: + // The checkbox object to toggle the selection on. + if(checkBox.checked){ + checkBox.checked=false; + }else{ + checkBox.checked=true; + } + this._readDisplaySections(); + this._displaySections(); + }, + + _toggleOptions: function(/*object*/checkBox){ + // summary: + // Internal function for determining of a particular entry is editable. + // description: + // Internal function for determining of a particular entry is editable. + // This is used for determining if the delete action should be displayed or not. + // checkBox: + // The checkbox object to toggle the selection on. + if(this.enableMenu){ + var fade = null; + var anim; + var anim2; + if(this._optionButtonDisplayed){ + if(this.enableMenuFade){ + anim = fx.fadeOut({node: this.entryCheckBoxDisplayOptions,duration: 250}); + connect.connect(anim, "onEnd", this, function(){ + domStyle.set(this.entryCheckBoxDisplayOptions, 'display', 'none'); + domStyle.set(this.entryCheckBoxRow, 'display', ''); + domStyle.set(this.entryCheckBoxRow2, 'display', ''); + fx.fadeIn({node: this.entryCheckBoxRow, duration: 250}).play(); + fx.fadeIn({node: this.entryCheckBoxRow2, duration: 250}).play(); + }); + anim.play(); + }else{ + domStyle.set(this.entryCheckBoxDisplayOptions, 'display', 'none'); + domStyle.set(this.entryCheckBoxRow, 'display', ''); + domStyle.set(this.entryCheckBoxRow2, 'display', ''); + } + this._optionButtonDisplayed=false; + }else{ + if(this.enableMenuFade){ + anim = fx.fadeOut({node: this.entryCheckBoxRow,duration: 250}); + anim2 = fx.fadeOut({node: this.entryCheckBoxRow2,duration: 250}); + connect.connect(anim, "onEnd", this, function(){ + domStyle.set(this.entryCheckBoxRow, 'display', 'none'); + domStyle.set(this.entryCheckBoxRow2, 'display', 'none'); + domStyle.set(this.entryCheckBoxDisplayOptions, 'display', ''); + fx.fadeIn({node: this.entryCheckBoxDisplayOptions, duration: 250}).play(); + }); + anim.play(); + anim2.play(); + }else{ + domStyle.set(this.entryCheckBoxRow, 'display', 'none'); + domStyle.set(this.entryCheckBoxRow2, 'display', 'none'); + domStyle.set(this.entryCheckBoxDisplayOptions, 'display', ''); + } + this._optionButtonDisplayed=true; + } + } + }, + + _handleEvent: function(/*object*/entrySelectionEvent){ + // summary: + // Internal function for listening to a topic that will handle entry notification. + // entrySelectionEvent: + // The topic message containing the entry that was selected for view. + // returns: + // Nothing. + if(entrySelectionEvent.source != this){ + if(entrySelectionEvent.action == "set" && entrySelectionEvent.entry){ + this.setEntry(entrySelectionEvent.entry, entrySelectionEvent.feed); + }else if(entrySelectionEvent.action == "delete" && entrySelectionEvent.entry && entrySelectionEvent.entry == this._entry){ + this.clear(); + } + } + }, + + setFieldValidity: function(/*string*/field, /*boolean*/isValid){ + // summary: + // Function to set whether a field in the view is valid and displayable. + // description: + // Function to set whether a field in the view is valid and displayable. + // This is needed for over-riding of the set* functions and customization of how data is displayed in the attach point. + // So if custom implementations use their own display logic, they can still enable the field. + // field: + // The field name to set the valid parameter on. Such as 'content', 'id', etc. + // isValid: + // Flag denoting if the field is valid or not. + // returns: + // Nothing. + if(field){ + var lowerField = field.toLowerCase(); + this._validEntryFields[field] = isValid; + } + }, + + isFieldValid: function(/*string*/field){ + // summary: + // Function to return if a displayable field is valid or not + // field: + // The field name to get the valid parameter of. Such as 'content', 'id', etc. + // returns: + // boolean denoting if the field is valid and set. + return this._validEntryFields[field.toLowerCase()]; + }, + + getEntry: function(){ + return this._entry; + }, + + getFeed: function(){ + return this._feed; + }, + + destroy: function(){ + this.clear(); + arrayUtil.forEach(this._subscriptions, dojo.unsubscribe); + } +}); + +var EntryHeader = FeedEntryViewer.EntryHeader = declare("dojox.atom.widget.EntryHeader", [_Widget, _Templated, _Container],{ + // summary: + // Widget representing a header in a FeedEntryViewer/Editor + title: "", + templateString: headerTemplate, + + postCreate: function(){ + this.setListHeader(); + }, + + setListHeader: function(/*string*/title){ + this.clear(); + if(title){ + this.title = title; + } + var textNode = document.createTextNode(this.title); + this.entryHeaderNode.appendChild(textNode); + }, + + clear: function(){ + this.destroyDescendants(); + if(this.entryHeaderNode){ + for(var i = 0; i < this.entryHeaderNode.childNodes.length; i++){ + this.entryHeaderNode.removeChild(this.entryHeaderNode.childNodes[i]); + } + } + }, + + destroy: function(){ + this.clear(); + } +}); + + +return FeedEntryViewer; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedViewer.js new file mode 100644 index 00000000..aa2de702 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/FeedViewer.js @@ -0,0 +1,396 @@ +//>>built +require({cache:{"url:dojox/atom/widget/templates/FeedViewerGrouping.html":"\n\t\n\t\n","url:dojox/atom/widget/templates/FeedViewer.html":"
    \n\t\n\t\t\n\t\t\n\t
    \n
    \n","url:dojox/atom/widget/templates/FeedViewerEntry.html":"\n \n \n \n \n \n \n \n \n
    \n \n [delete]\n
    \n \n"}}); +define("dojox/atom/widget/FeedViewer",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/array","dojo/_base/connect","dojo/_base/declare","dojo/dom-class","dijit/_Widget","dijit/_Templated","dijit/_Container","../io/Connection","dojo/text!./templates/FeedViewer.html","dojo/text!./templates/FeedViewerEntry.html","dojo/text!./templates/FeedViewerGrouping.html","dojo/i18n!./nls/FeedViewerEntry"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e){ +_1.experimental("dojox.atom.widget.FeedViewer"); +var _f=_5("dojox.atom.widget.FeedViewer",[_7,_8,_9],{feedViewerTableBody:null,feedViewerTable:null,entrySelectionTopic:"",url:"",xmethod:false,localSaveOnly:false,templateString:_b,_feed:null,_currentSelection:null,_includeFilters:null,alertsEnabled:false,postCreate:function(){ +this._includeFilters=[]; +if(this.entrySelectionTopic!==""){ +this._subscriptions=[_1.subscribe(this.entrySelectionTopic,this,"_handleEvent")]; +} +this.atomIO=new _a(); +this.childWidgets=[]; +},startup:function(){ +this.containerNode=this.feedViewerTableBody; +var _10=this.getDescendants(); +for(var i in _10){ +var _11=_10[i]; +if(_11&&_11.isFilter){ +this._includeFilters.push(new _f.CategoryIncludeFilter(_11.scheme,_11.term,_11.label)); +_11.destroy(); +} +} +if(this.url!==""){ +this.setFeedFromUrl(this.url); +} +},clear:function(){ +this.destroyDescendants(); +},setFeedFromUrl:function(url){ +if(url!==""){ +if(this._isRelativeURL(url)){ +var _12=""; +if(url.charAt(0)!=="/"){ +_12=this._calculateBaseURL(window.location.href,true); +}else{ +_12=this._calculateBaseURL(window.location.href,false); +} +this.url=_12+url; +} +this.atomIO.getFeed(url,_2.hitch(this,this.setFeed)); +} +},setFeed:function(_13){ +this._feed=_13; +this.clear(); +var _14=function(a,b){ +var _15=this._displayDateForEntry(a); +var _16=this._displayDateForEntry(b); +if(_15>_16){ +return -1; +} +if(_15<_16){ +return 1; +} +return 0; +}; +var _17=function(_18){ +var _19=_18.split(","); +_19.pop(); +return _19.join(","); +}; +var _1a=_13.entries.sort(_2.hitch(this,_14)); +if(_13){ +var _1b=null; +for(var i=0;i<_1a.length;i++){ +var _1c=_1a[i]; +if(this._isFilterAccepted(_1c)){ +var _1d=this._displayDateForEntry(_1c); +var _1e=""; +if(_1d!==null){ +_1e=_17(_1d.toLocaleString()); +if(_1e===""){ +_1e=""+(_1d.getMonth()+1)+"/"+_1d.getDate()+"/"+_1d.getFullYear(); +} +} +if((_1b===null)||(_1b!=_1e)){ +this.appendGrouping(_1e); +_1b=_1e; +} +this.appendEntry(_1c); +} +} +} +},_displayDateForEntry:function(_1f){ +if(_1f.updated){ +return _1f.updated; +} +if(_1f.modified){ +return _1f.modified; +} +if(_1f.issued){ +return _1f.issued; +} +return new Date(); +},appendGrouping:function(_20){ +var _21=new _22({}); +_21.setText(_20); +this.addChild(_21); +this.childWidgets.push(_21); +},appendEntry:function(_23){ +var _24=new _25({"xmethod":this.xmethod}); +_24.setTitle(_23.title.value); +_24.setTime(this._displayDateForEntry(_23).toLocaleTimeString()); +_24.entrySelectionTopic=this.entrySelectionTopic; +_24.feed=this; +this.addChild(_24); +this.childWidgets.push(_24); +this.connect(_24,"onClick","_rowSelected"); +_23.domNode=_24.entryNode; +_23._entryWidget=_24; +_24.entry=_23; +},deleteEntry:function(_26){ +if(!this.localSaveOnly){ +this.atomIO.deleteEntry(_26.entry,_2.hitch(this,this._removeEntry,_26),null,this.xmethod); +}else{ +this._removeEntry(_26,true); +} +_1.publish(this.entrySelectionTopic,[{action:"delete",source:this,entry:_26.entry}]); +},_removeEntry:function(_27,_28){ +if(_28){ +var idx=_3.indexOf(this.childWidgets,_27); +var _29=this.childWidgets[idx-1]; +var _2a=this.childWidgets[idx+1]; +if(_29.isInstanceOf(widget.FeedViewerGrouping)&&(_2a===undefined||_2a.isInstanceOf(widget.FeedViewerGrouping))){ +_29.destroy(); +} +_27.destroy(); +}else{ +} +},_rowSelected:function(evt){ +var _2b=evt.target; +while(_2b){ +if(_6.contains(_2b,"feedViewerEntry")){ +break; +} +_2b=_2b.parentNode; +} +for(var i=0;i0)&&(_38<_35.length)&&(_38!==(_35.length-1))){ +_37=_35.substring(0,(_38+1)); +}else{ +_37=_35; +} +}else{ +_38=_35.indexOf("://"); +if(_38>0){ +_38=_38+3; +var _39=_35.substring(0,_38); +var _3a=_35.substring(_38,_35.length); +_38=_3a.indexOf("/"); +if((_38<_3a.length)&&(_38>0)){ +_37=_39+_3a.substring(0,_38); +}else{ +_37=_39+_3a; +} +} +} +} +return _37; +},_isFilterAccepted:function(_3b){ +var _3c=false; +if(this._includeFilters&&(this._includeFilters.length>0)){ +for(var i=0;i0){ +for(var i=0;i0){ +for(var i=0;i\n\t\n\t\n", +'url:dojox/atom/widget/templates/FeedViewer.html':"
    \n\t\n\t\t\n\t\t\n\t
    \n
    \n", +'url:dojox/atom/widget/templates/FeedViewerEntry.html':"\n \n \n \n \n \n \n \n \n
    \n \n [delete]\n
    \n \n"}}); +define("dojox/atom/widget/FeedViewer", [ + "dojo/_base/kernel", + "dojo/_base/lang", + "dojo/_base/array", + "dojo/_base/connect", + "dojo/_base/declare", + "dojo/dom-class", + "dijit/_Widget", + "dijit/_Templated", + "dijit/_Container", + "../io/Connection", + "dojo/text!./templates/FeedViewer.html", + "dojo/text!./templates/FeedViewerEntry.html", + "dojo/text!./templates/FeedViewerGrouping.html", + "dojo/i18n!./nls/FeedViewerEntry" +], function (dojo, lang, arrayUtil, connect, declare, domClass, _Widget, _Templated, _Container, Connection, template, entryTemplate, groupingTemplate, i18nViewer) { +dojo.experimental("dojox.atom.widget.FeedViewer"); + +var FeedViewer = declare("dojox.atom.widget.FeedViewer", [_Widget, _Templated, _Container],{ + // summary: + // An ATOM feed viewer that allows for viewing a feed, deleting entries, and editing entries. + + feedViewerTableBody: null, //The body of the feed viewer table so we can access it and populate it. Will be assigned via template. + feedViewerTable: null, //The overal table container which contains the feed viewer table. Will be assigned via template. + entrySelectionTopic: "", //The topic to broadcast when any entry is clicked so that a listener can pick up it and display it. + url: "", //The URL to which to connect to initially on creation. + xmethod: false, + localSaveOnly: false, + + //Templates for the HTML rendering. Need to figure these out better, admittedly. + templateString: template, + + _feed: null, + _currentSelection: null, // Currently selected entry + + _includeFilters: null, + + alertsEnabled: false, + + postCreate: function(){ + // summary: + // The postCreate function. + // description: + // The postCreate function. Creates our AtomIO object for future interactions and subscribes to the + // event given in markup/creation. + this._includeFilters = []; + + if(this.entrySelectionTopic !== ""){ + this._subscriptions = [dojo.subscribe(this.entrySelectionTopic, this, "_handleEvent")]; + } + this.atomIO = new Connection(); + this.childWidgets = []; + }, + + startup: function(){ + // summary: + // The startup function. + // description: + // The startup function. Parses the filters and sets the feed based on the given url. + this.containerNode = this.feedViewerTableBody; + var children = this.getDescendants(); + for(var i in children){ + var child = children[i]; + if(child && child.isFilter){ + this._includeFilters.push(new FeedViewer.CategoryIncludeFilter(child.scheme, child.term, child.label)); + child.destroy(); + } + } + + if(this.url !== ""){ + this.setFeedFromUrl(this.url); + } + }, + + clear: function(){ + // summary: + // Function clearing all current entries in the feed view. + // returns: + // Nothing. + this.destroyDescendants(); + }, + + setFeedFromUrl: function(/*string*/url){ + // summary: + // Function setting the feed from a URL which to get the feed. + // url: + // The URL to the feed to load. + // returns: + // Nothing. + if(url !== ""){ + if(this._isRelativeURL(url)){ + var baseUrl = ""; + if(url.charAt(0) !== '/'){ + baseUrl = this._calculateBaseURL(window.location.href, true); + }else{ + baseUrl = this._calculateBaseURL(window.location.href, false); + } + this.url = baseUrl + url; + } + + this.atomIO.getFeed(url,lang.hitch(this,this.setFeed)); + } + }, + + + setFeed: function(/*object*/feed){ + // summary: + // Function setting the dojox.atom.io.model.Feed data into the view. + // entry: + // The dojox.atom.io.model.Feed object to process + // returns: + // Nothing. + this._feed = feed; + this.clear(); + var entrySorter=function(a,b){ + var dispA = this._displayDateForEntry(a); + var dispB = this._displayDateForEntry(b); + if(dispA > dispB){return -1;} + if(dispA < dispB){return 1;} + return 0; + }; + + // This function may not be safe in different locales. + var groupingStr = function(dateStr){ + var dpts = dateStr.split(','); + + dpts.pop(); // remove year and time + return dpts.join(","); + }; + var sortedEntries = feed.entries.sort(lang.hitch(this,entrySorter)); + if(feed){ + var lastSectionTitle = null; + for(var i=0;i 0) && (index < fullURL.length) && (index !== (fullURL.length -1))){ + //We want to include the terminating / + baseURL = fullURL.substring(0,(index + 1)); + }else{ + baseURL = fullURL; + } + }else{ + //We want to find the first occurrence of / after the :// + index = fullURL.indexOf("://"); + if(index > 0){ + index = index + 3; + var protocol = fullURL.substring(0,index); + var fragmentURL = fullURL.substring(index, fullURL.length); + index = fragmentURL.indexOf("/"); + if((index < fragmentURL.length) && (index > 0) ){ + baseURL = protocol + fragmentURL.substring(0,index); + }else{ + baseURL = protocol + fragmentURL; + } + } + } + } + return baseURL; + }, + + _isFilterAccepted: function(/*object*/entry) { + // summary: + // Internal function to do matching of category filters to widgets. + // returns: + // boolean denoting if this entry matched one of the accept filters. + var accepted = false; + if (this._includeFilters && (this._includeFilters.length > 0)) { + for (var i = 0; i < this._includeFilters.length; i++) { + var filter = this._includeFilters[i]; + if (filter.match(entry)) { + accepted = true; + break; + } + } + } + else { + accepted = true; + } + return accepted; + }, + + addCategoryIncludeFilter: function(/*object*/filter) { + // summary: + // Function to add a filter for entry inclusion in the feed view. + // filter: + // The basic items to filter on and the values. + // Should be of format: {scheme: ``some text or null``, term: ``some text or null``, label: ``some text or null``} + // returns: + // Nothing. + if (filter) { + var scheme = filter.scheme; + var term = filter.term; + var label = filter.label; + var addIt = true; + + if (!scheme) { + scheme = null; + } + if (!term) { + scheme = null; + } + if (!label) { + scheme = null; + } + + if (this._includeFilters && this._includeFilters.length > 0) { + for (var i = 0; i < this._includeFilters.length; i++) { + var eFilter = this._includeFilters[i]; + if ((eFilter.term === term) && (eFilter.scheme === scheme) && (eFilter.label === label)) { + //Verify we don't have this filter already. + addIt = false; + break; + } + } + } + + if (addIt) { + this._includeFilters.push(widget.FeedViewer.CategoryIncludeFilter(scheme, term, label)); + } + } + }, + + removeCategoryIncludeFilter: function(/*object*/filter) { + // summary: + // Function to remove a filter for entry inclusion in the feed view. + // filter: + // The basic items to identify the filter that is present. + // Should be of format: {scheme: ``some text or null``, term: ``some text or null``, label: ``some text or null``} + // returns: + // Nothing. + if (filter) { + var scheme = filter.scheme; + var term = filter.term; + var label = filter.label; + + if (!scheme) { + scheme = null; + } + if (!term) { + scheme = null; + } + if (!label) { + scheme = null; + } + + var newFilters = []; + if (this._includeFilters && this._includeFilters.length > 0) { + for (var i = 0; i < this._includeFilters.length; i++) { + var eFilter = this._includeFilters[i]; + if (!((eFilter.term === term) && (eFilter.scheme === scheme) && (eFilter.label === label))) { + //Keep only filters that do not match + newFilters.push(eFilter); + } + } + this._includeFilters = newFilters; + } + } + }, + + _handleEvent: function(/*object*/entrySelectionEvent) { + // summary: + // Internal function for listening to a topic that will handle entry notification. + // entrySelectionEvent: + // The topic message containing the entry that was selected for view. + // returns: + // Nothing. + if(entrySelectionEvent.source != this) { + if(entrySelectionEvent.action == "update" && entrySelectionEvent.entry) { + var evt = entrySelectionEvent; + if(!this.localSaveOnly){ + this.atomIO.updateEntry(evt.entry, lang.hitch(evt.source,evt.callback), null, true); + } + this._currentSelection._entryWidget.setTime(this._displayDateForEntry(evt.entry).toLocaleTimeString()); + this._currentSelection._entryWidget.setTitle(evt.entry.title.value); + } else if(entrySelectionEvent.action == "post" && entrySelectionEvent.entry) { + if(!this.localSaveOnly){ + this.atomIO.addEntry(entrySelectionEvent.entry, this.url, lang.hitch(this,this._addEntry)); + }else{ + this._addEntry(entrySelectionEvent.entry); + } + } + } + }, + + _addEntry: function(/*object*/entry) { + // summary: + // callback function used when adding an entry to the feed. + // description: + // callback function used when adding an entry to the feed. After the entry has been posted to the feed, + // we add it to our feed representation (to show it on the page) and publish an event to update any entry viewers. + this._feed.addEntry(entry); + this.setFeed(this._feed); + dojo.publish(this.entrySelectionTopic, [{ action: "set", source: this, feed: this._feed, entry: entry }]); + }, + + destroy: function(){ + // summary: + // Destroys this widget, including all descendants and subscriptions. + this.clear(); + arrayUtil.forEach(this._subscriptions, dojo.unsubscribe); + } +}); + +var FeedViewerEntry = FeedViewer.FeedViewerEntry = declare("dojox.atom.widget.FeedViewerEntry", [_Widget, _Templated],{ + // summary: + // Widget for handling the display of an entry and specific events associated with it. + + templateString: entryTemplate, + + entryNode: null, + timeNode: null, + deleteButton: null, + entry: null, + feed: null, + + postCreate: function(){ + var _nlsResources = i18nViewer; + this.deleteButton.innerHTML = _nlsResources.deleteButton; + }, + + setTitle: function(/*string*/text){ + // summary: + // Function to set the title of the entry. + // text: + // The title. + // returns: + // Nothing. + if (this.titleNode.lastChild){this.titleNode.removeChild(this.titleNode.lastChild);} + + var titleTextNode = document.createElement("div"); + titleTextNode.innerHTML = text; + this.titleNode.appendChild(titleTextNode); + }, + + setTime: function(/*string*/timeText){ + // summary: + // Function to set the time of the entry. + // timeText: + // The string form of the date. + // returns: + // Nothing. + if (this.timeNode.lastChild){this.timeNode.removeChild(this.timeNode.lastChild);} + var timeTextNode = document.createTextNode(timeText); + this.timeNode.appendChild(timeTextNode); + }, + + enableDelete: function(){ + // summary: + // Function to enable the delete action on this entry. + // returns: + // Nothing. + if (this.deleteButton !== null) { + //TODO Fix this + this.deleteButton.style.display = 'inline'; + } + }, + + disableDelete: function(){ + // summary: + // Function to disable the delete action on this entry. + // returns: + // Nothing. + if (this.deleteButton !== null) { + this.deleteButton.style.display = 'none'; + } + }, + + deleteEntry: function(/*object*/event) { + // summary: + // Function to handle the delete event and delete the entry. + // returns: + // Nothing. + event.preventDefault(); + event.stopPropagation(); + this.feed.deleteEntry(this); + }, + + onClick: function(/*object*/e){ + // summary: + // Attach point for when a row is clicked on. + // e: + // The event generated by the click. + } +}); + +var FeedViewerGrouping = FeedViewer.FeedViewerGrouping = declare("dojox.atom.widget.FeedViewerGrouping", [_Widget, _Templated],{ + // summary: + // Grouping of feed entries. + + templateString: groupingTemplate, + + groupingNode: null, + titleNode: null, + + setText: function(text){ + // summary: + // Sets the text to be shown above this grouping. + // text: + // The text to show. + if (this.titleNode.lastChild){this.titleNode.removeChild(this.titleNode.lastChild);} + var textNode = document.createTextNode(text); + this.titleNode.appendChild(textNode); + } +}); + +FeedViewer.AtomEntryCategoryFilter = declare("dojox.atom.widget.AtomEntryCategoryFilter", null,{ + // summary: + // A filter to be applied to the list of entries. + scheme: "", + term: "", + label: "", + isFilter: true +}); + +FeedViewer.CategoryIncludeFilter = declare("dojox.atom.widget.FeedViewer.CategoryIncludeFilter", null,{ + constructor: function(scheme, term, label){ + // summary: + // The initializer function. + this.scheme = scheme; + this.term = term; + this.label = label; + }, + + match: function(entry) { + // summary: + // Function to determine if this category filter matches against a category on an atom entry + // returns: + // boolean denoting if this category filter matched to this entry. + var matched = false; + if (entry !== null) { + var categories = entry.categories; + if (categories !== null) { + for (var i = 0; i < categories.length; i++) { + var category = categories[i]; + + if (this.scheme !== "") { + if (this.scheme !== category.scheme) { + break; + } + } + + if (this.term !== "") { + if (this.term !== category.term) { + break; + } + } + + if (this.label !== "") { + if (this.label !== category.label) { + break; + } + } + //Made it this far, everything matched. + matched = true; + } + } + } + return matched; + } +}); + +return FeedViewer; +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryEditor.js new file mode 100644 index 00000000..b46208d0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/FeedEntryEditor",{root:({doNew:"[new]",edit:"[edit]",save:"[save]",cancel:"[cancel]"}),"ar":true,"az":true,"bg":true,"ca":true,"cs":true,"da":true,"de":true,"el":true,"es":true,"fi":true,"fr":true,"he":true,"hu":true,"hr":true,"it":true,"id":true,"ja":true,"kk":true,"ko":true,"nb":true,"nl":true,"pl":true,"pt-pt":true,"pt":true,"ro":true,"ru":true,"sk":true,"sl":true,"sv":true,"th":true,"tr":true,"uk":true,"zh":true,"zh-tw":true}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..76d4009f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,45 @@ +define("dojox/atom/widget/nls/FeedEntryEditor", { root: +//begin v1.x content +({ + doNew: "[new]", + edit: "[edit]", + save: "[save]", + cancel: "[cancel]" +}) +//end v1.x content +, +"ar": true, +"az": true, +"bg": true, +"ca": true, +"cs": true, +"da": true, +"de": true, +"el": true, +"es": true, +"fi": true, +"fr": true, +"he": true, +"hu": true, +"hr": true, +"it": true, +"id": true, +"ja": true, +"kk": true, +"ko": true, +"nb": true, +"nl": true, +"pl": true, +"pt-pt": true, +"pt": true, +"ro": true, +"ru": true, +"sk": true, +"sl": true, +"sv": true, +"th": true, +"tr": true, +"uk": true, +"zh": true, +"zh-tw": true +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryViewer.js new file mode 100644 index 00000000..cdadb03f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/FeedEntryViewer",{root:({displayOptions:"[display options]",title:"Title",authors:"Authors",contributors:"Contributors",id:"ID",close:"[close]",updated:"Updated",summary:"Summary",content:"Content"}),"ar":true,"az":true,"bg":true,"ca":true,"cs":true,"da":true,"de":true,"el":true,"es":true,"fi":true,"fr":true,"he":true,"hu":true,"hr":true,"it":true,"id":true,"ja":true,"kk":true,"ko":true,"nb":true,"nl":true,"pl":true,"pt-pt":true,"pt":true,"ro":true,"ru":true,"sk":true,"sl":true,"sv":true,"th":true,"tr":true,"uk":true,"zh":true,"zh-tw":true}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..069aa3d2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,50 @@ +define("dojox/atom/widget/nls/FeedEntryViewer", { root: +//begin v1.x content +({ + displayOptions: "[display options]", + title: "Title", + authors: "Authors", + contributors: "Contributors", + id: "ID", + close: "[close]", + updated: "Updated", + summary: "Summary", + content: "Content" +}) +//end v1.x content +, +"ar": true, +"az": true, +"bg": true, +"ca": true, +"cs": true, +"da": true, +"de": true, +"el": true, +"es": true, +"fi": true, +"fr": true, +"he": true, +"hu": true, +"hr": true, +"it": true, +"id": true, +"ja": true, +"kk": true, +"ko": true, +"nb": true, +"nl": true, +"pl": true, +"pt-pt": true, +"pt": true, +"ro": true, +"ru": true, +"sk": true, +"sl": true, +"sv": true, +"th": true, +"tr": true, +"uk": true, +"zh": true, +"zh-tw": true +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedViewerEntry.js new file mode 100644 index 00000000..afeeb24a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/FeedViewerEntry",{root:({deleteButton:"[Delete]"}),"ar":true,"az":true,"bg":true,"ca":true,"cs":true,"da":true,"de":true,"el":true,"es":true,"fi":true,"fr":true,"he":true,"hu":true,"hr":true,"it":true,"id":true,"ja":true,"kk":true,"ko":true,"nb":true,"nl":true,"pl":true,"pt-pt":true,"pt":true,"ro":true,"ru":true,"sk":true,"sl":true,"sv":true,"th":true,"tr":true,"uk":true,"zh":true,"zh-tw":true}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..8316051b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,42 @@ +define("dojox/atom/widget/nls/FeedViewerEntry", { root: +//begin v1.x content +({ + deleteButton: "[Delete]" +}) +//end v1.x content +, +"ar": true, +"az": true, +"bg": true, +"ca": true, +"cs": true, +"da": true, +"de": true, +"el": true, +"es": true, +"fi": true, +"fr": true, +"he": true, +"hu": true, +"hr": true, +"it": true, +"id": true, +"ja": true, +"kk": true, +"ko": true, +"nb": true, +"nl": true, +"pl": true, +"pt-pt": true, +"pt": true, +"ro": true, +"ru": true, +"sk": true, +"sl": true, +"sv": true, +"th": true, +"tr": true, +"uk": true, +"zh": true, +"zh-tw": true +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/PeopleEditor.js new file mode 100644 index 00000000..5d6034dc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/PeopleEditor",{root:({add:"Add",addAuthor:"Add Author",addContributor:"Add Contributor"}),"ar":true,"az":true,"bg":true,"ca":true,"cs":true,"da":true,"de":true,"el":true,"es":true,"fi":true,"fr":true,"he":true,"hu":true,"hr":true,"it":true,"id":true,"ja":true,"kk":true,"ko":true,"nb":true,"nl":true,"pl":true,"pt-pt":true,"pt":true,"ro":true,"ru":true,"sk":true,"sl":true,"sv":true,"th":true,"tr":true,"uk":true,"zh":true,"zh-tw":true}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..f6960a8d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/PeopleEditor.js.uncompressed.js @@ -0,0 +1,44 @@ +define("dojox/atom/widget/nls/PeopleEditor", { root: +//begin v1.x content +({ + add: "Add", + addAuthor: "Add Author", + addContributor: "Add Contributor" +}) +//end v1.x content +, +"ar": true, +"az": true, +"bg": true, +"ca": true, +"cs": true, +"da": true, +"de": true, +"el": true, +"es": true, +"fi": true, +"fr": true, +"he": true, +"hu": true, +"hr": true, +"it": true, +"id": true, +"ja": true, +"kk": true, +"ko": true, +"nb": true, +"nl": true, +"pl": true, +"pt-pt": true, +"pt": true, +"ro": true, +"ru": true, +"sk": true, +"sl": true, +"sv": true, +"th": true, +"tr": true, +"uk": true, +"zh": true, +"zh-tw": true +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryEditor.js new file mode 100644 index 00000000..45205235 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ar/FeedEntryEditor",({doNew:"[جديد]",edit:"[تحرير]",save:"[حفظ]",cancel:"[الغاء]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..6e222d36 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/ar/FeedEntryEditor", ({ + doNew: "[جديد]", + edit: "[تحرير]", + save: "[حفظ]", + cancel: "[الغاء]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryViewer.js new file mode 100644 index 00000000..0b626ac6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ar/FeedEntryViewer",({displayOptions:"[اختيارات العرض]",title:"العنوان",authors:"المؤلفين",contributors:"المساهمين",id:"الكود",close:"[اغلاق]",updated:"تحديث في",summary:"الملخص",content:"المحتويات"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..cf7d6164 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/ar/FeedEntryViewer", ({ + displayOptions: "[اختيارات العرض]", + title: "العنوان", + authors: "المؤلفين", + contributors: "المساهمين", + id: "الكود", + close: "[اغلاق]", + updated: "تحديث في", + summary: "الملخص", + content: "المحتويات" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedViewerEntry.js new file mode 100644 index 00000000..7700f6b7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ar/FeedViewerEntry",({deleteButton:"[حذف]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..11f31bb5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/ar/FeedViewerEntry", ({ + deleteButton: "[حذف]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/PeopleEditor.js new file mode 100644 index 00000000..70e4d6db --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ar/PeopleEditor",({add:"اضافة",addAuthor:"اضافة مؤلف",addContributor:"اضافة مشارك"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..5bb07c8e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ar/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/ar/PeopleEditor", ({ + add: "اضافة", + addAuthor: "اضافة مؤلف", + addContributor: "اضافة مشارك" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryEditor.js new file mode 100644 index 00000000..71d3666d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/az/FeedEntryEditor",({"edit":"[tərtib et]","save":"[saxla]","cancel":"[ləğv et]","doNew":"[yeni]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..4d933a9f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/az/FeedEntryEditor", ({ + "edit" : "[tərtib et]", + "save" : "[saxla]", + "cancel" : "[ləğv et]", + "doNew" : "[yeni]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryViewer.js new file mode 100644 index 00000000..b9638c9e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/az/FeedEntryViewer",({"close":"[çıx]","title":"Başlıq","authors":"Yazıçılar","summary":"Məzmun","content":"Tərkib","contributors":"Əməyi keçənlər","updated":"Yeniləndi","displayOptions":"[göstərmə seçimləri]","id":"Şəxsiyyət"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..b0b090c4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/az/FeedEntryViewer", ({ + "close" : "[çıx]", + "title" : "Başlıq", + "authors" : "Yazıçılar", + "summary" : "Məzmun", + "content" : "Tərkib", + "contributors" : "Əməyi keçənlər", + "updated" : "Yeniləndi", + "displayOptions" : "[göstərmə seçimləri]", + "id" : "Şəxsiyyət" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedViewerEntry.js new file mode 100644 index 00000000..b185595f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/az/FeedViewerEntry",({"deleteButton":"[Sil]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..53243eb1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/az/FeedViewerEntry", ({ + "deleteButton" : "[Sil]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/PeopleEditor.js new file mode 100644 index 00000000..ee749edf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/az/PeopleEditor",({"add":"Əlavə Et","addAuthor":"Yazıçı Əlavə Et","addContributor":"Əməyi keçənlərə Əlavə Et"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..f94fdb6b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/az/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/az/PeopleEditor", ({ + "add" : "Əlavə Et", + "addAuthor" : "Yazıçı Əlavə Et", + "addContributor" : "Əməyi keçənlərə Əlavə Et" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryEditor.js new file mode 100644 index 00000000..fa6052c4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/bg/FeedEntryEditor",({doNew:"[нов]",edit:"[редактирай]",save:"[запази]",cancel:"[отмени]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..c1c64e45 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/bg/FeedEntryEditor", ({ + doNew: "[нов]", + edit: "[редактирай]", + save: "[запази]", + cancel: "[отмени]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryViewer.js new file mode 100644 index 00000000..c40872f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/bg/FeedEntryViewer",({displayOptions:"[опция за показване]",title:"Заглавие",authors:"Автори",contributors:"Сътрудници",id:"Идентификатор",close:"[затвори]",updated:"Обновен",summary:"Обобщение",content:"Съдържание"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..75c27714 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/bg/FeedEntryViewer", ({ + displayOptions: "[опция за показване]", + title: "Заглавие", + authors: "Автори", + contributors: "Сътрудници", + id: "Идентификатор", + close: "[затвори]", + updated: "Обновен", + summary: "Обобщение", + content: "Съдържание" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedViewerEntry.js new file mode 100644 index 00000000..a54a36b6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/bg/FeedViewerEntry",({deleteButton:"[Изтрий]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..42e981a1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/bg/FeedViewerEntry", ({ + deleteButton: "[Изтрий]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/PeopleEditor.js new file mode 100644 index 00000000..ee442342 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/bg/PeopleEditor",({add:"Добави",addAuthor:"Добави автор",addContributor:"Добави сътрудник"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..2a4209da --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/bg/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/bg/PeopleEditor", ({ + add: "Добави", + addAuthor: "Добави автор", + addContributor: "Добави сътрудник" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryEditor.js new file mode 100644 index 00000000..10bc9753 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ca/FeedEntryEditor",({doNew:"[nou]",edit:"[edita]",save:"[desa]",cancel:"[cancel·la]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..3f9416ad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/ca/FeedEntryEditor", ({ + doNew: "[nou]", + edit: "[edita]", + save: "[desa]", + cancel: "[cancel·la]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryViewer.js new file mode 100644 index 00000000..3c05a740 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ca/FeedEntryViewer",({displayOptions:"[mostra opcions]",title:"Títol",authors:"Autors",contributors:"Col·laboradors",id:"ID",close:"[tanca]",updated:"Actualitzat",summary:"Resum",content:"Contingut"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..71cdc827 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/ca/FeedEntryViewer", ({ + displayOptions: "[mostra opcions]", + title: "Títol", + authors: "Autors", + contributors: "Col·laboradors", + id: "ID", + close: "[tanca]", + updated: "Actualitzat", + summary: "Resum", + content: "Contingut" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedViewerEntry.js new file mode 100644 index 00000000..0b455000 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ca/FeedViewerEntry",({deleteButton:"[Suprimeix]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..22d093ca --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/ca/FeedViewerEntry", ({ + deleteButton: "[Suprimeix]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/PeopleEditor.js new file mode 100644 index 00000000..1108cc1b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ca/PeopleEditor",({add:"Afegeix",addAuthor:"Afegeix un autor",addContributor:"Afegeix un col·laborador"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..71885802 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ca/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/ca/PeopleEditor", ({ + add: "Afegeix", + addAuthor: "Afegeix un autor", + addContributor: "Afegeix un col·laborador" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryEditor.js new file mode 100644 index 00000000..4823d632 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/cs/FeedEntryEditor",({doNew:"[nové]",edit:"[upravit]",save:"[uložit]",cancel:"[storno]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..66664d62 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/cs/FeedEntryEditor", ({ + doNew: "[nové]", + edit: "[upravit]", + save: "[uložit]", + cancel: "[storno]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryViewer.js new file mode 100644 index 00000000..e861911c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/cs/FeedEntryViewer",({displayOptions:"[volby zobrazení]",title:"Název",authors:"Autoři",contributors:"Přispěvatelé",id:"ID",close:"[zavřít]",updated:"Aktualizováno",summary:"Souhrn",content:"Obsah"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..f2c69219 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/cs/FeedEntryViewer", ({ + displayOptions: "[volby zobrazení]", + title: "Název", + authors: "Autoři", + contributors: "Přispěvatelé", + id: "ID", + close: "[zavřít]", + updated: "Aktualizováno", + summary: "Souhrn", + content: "Obsah" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedViewerEntry.js new file mode 100644 index 00000000..72c21803 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/cs/FeedViewerEntry",({deleteButton:"[Odstranit]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..fbc7bb69 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/cs/FeedViewerEntry", ({ + deleteButton: "[Odstranit]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/PeopleEditor.js new file mode 100644 index 00000000..8df4afeb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/cs/PeopleEditor",({add:"Přidat",addAuthor:"Přidat autora",addContributor:"Přidat přispěvatele"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..26e99324 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/cs/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/cs/PeopleEditor", ({ + add: "Přidat", + addAuthor: "Přidat autora", + addContributor: "Přidat přispěvatele" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryEditor.js new file mode 100644 index 00000000..fcb76f1d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/da/FeedEntryEditor",({doNew:"[ny]",edit:"[redigér]",save:"[gem]",cancel:"[annullér]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..9b8086f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/da/FeedEntryEditor", ({ + doNew: "[ny]", + edit: "[redigér]", + save: "[gem]", + cancel: "[annullér]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryViewer.js new file mode 100644 index 00000000..90e0915c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/da/FeedEntryViewer",({displayOptions:"[visningsindstillinger]",title:"Titel",authors:"Forfattere",contributors:"Bidragydere",id:"Id",close:"[luk]",updated:"Opdateret",summary:"Resumé",content:"Indhold"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..a3562831 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/da/FeedEntryViewer", ({ + displayOptions: "[visningsindstillinger]", + title: "Titel", + authors: "Forfattere", + contributors: "Bidragydere", + id: "Id", + close: "[luk]", + updated: "Opdateret", + summary: "Resumé", + content: "Indhold" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedViewerEntry.js new file mode 100644 index 00000000..15b7c655 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/da/FeedViewerEntry",({deleteButton:"[Slet]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..43f1711f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/da/FeedViewerEntry", ({ + deleteButton: "[Slet]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/PeopleEditor.js new file mode 100644 index 00000000..b9f0c17c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/da/PeopleEditor",({add:"Tilføj",addAuthor:"Tilføj forfatter",addContributor:"Tilføj bidragyder"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..027d5d6e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/da/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/da/PeopleEditor", ({ + add: "Tilføj", + addAuthor: "Tilføj forfatter", + addContributor: "Tilføj bidragyder" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryEditor.js new file mode 100644 index 00000000..1bbccd92 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/de/FeedEntryEditor",({doNew:"[Neu]",edit:"[Bearbeiten]",save:"[Speichern]",cancel:"[Abbrechen]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..06ef9ab7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/de/FeedEntryEditor", ({ + doNew: "[Neu]", + edit: "[Bearbeiten]", + save: "[Speichern]", + cancel: "[Abbrechen]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryViewer.js new file mode 100644 index 00000000..50f4b752 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/de/FeedEntryViewer",({displayOptions:"[Anzeigeoptionen]",title:"Titel",authors:"Autoren",contributors:"Mitwirkende",id:"ID",close:"[Schließen]",updated:"Aktualisiert",summary:"Zusammenfassung",content:"Inhalt"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..3aa9431c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/de/FeedEntryViewer", ({ + displayOptions: "[Anzeigeoptionen]", + title: "Titel", + authors: "Autoren", + contributors: "Mitwirkende", + id: "ID", + close: "[Schließen]", + updated: "Aktualisiert", + summary: "Zusammenfassung", + content: "Inhalt" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedViewerEntry.js new file mode 100644 index 00000000..b157cf85 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/de/FeedViewerEntry",({deleteButton:"[Löschen]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..5cf11680 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/de/FeedViewerEntry", ({ + deleteButton: "[Löschen]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/PeopleEditor.js new file mode 100644 index 00000000..78429090 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/de/PeopleEditor",({add:"Hinzufügen",addAuthor:"Autor hinzufügen",addContributor:"Mitwirkenden hinzufügen"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..12255908 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/de/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/de/PeopleEditor", ({ + add: "Hinzufügen", + addAuthor: "Autor hinzufügen", + addContributor: "Mitwirkenden hinzufügen" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryEditor.js new file mode 100644 index 00000000..a1a5dae4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/el/FeedEntryEditor",({doNew:"[δημιουργία]",edit:"[τροποποίηση]",save:"[αποθήκευση]",cancel:"[ακύρωση]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..4e0f4fac --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/el/FeedEntryEditor", ({ + doNew: "[δημιουργία]", + edit: "[τροποποίηση]", + save: "[αποθήκευση]", + cancel: "[ακύρωση]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryViewer.js new file mode 100644 index 00000000..ae825fff --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/el/FeedEntryViewer",({displayOptions:"[επιλογές παρουσίασης]",title:"Τίτλος",authors:"Συντάκτες",contributors:"Συνεισφέροντες",id:"Ταυτότητα",close:"[κλείσιμο]",updated:"Ενημερώθηκε",summary:"Περίληψη",content:"Περιεχόμενο"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..19b25f8f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/el/FeedEntryViewer", ({ + displayOptions: "[επιλογές παρουσίασης]", + title: "Τίτλος", + authors: "Συντάκτες", + contributors: "Συνεισφέροντες", + id: "Ταυτότητα", + close: "[κλείσιμο]", + updated: "Ενημερώθηκε", + summary: "Περίληψη", + content: "Περιεχόμενο" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedViewerEntry.js new file mode 100644 index 00000000..5e0caee7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/el/FeedViewerEntry",({deleteButton:"[Διαγραφή]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..26933b8f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/el/FeedViewerEntry", ({ + deleteButton: "[Διαγραφή]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/PeopleEditor.js new file mode 100644 index 00000000..052bef7b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/el/PeopleEditor",({add:"Προσθήκη",addAuthor:"Προσθήκη συντάκτη",addContributor:"Προσθήκη συνεισφέροντα"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..47b7a0dd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/el/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/el/PeopleEditor", ({ + add: "Προσθήκη", + addAuthor: "Προσθήκη συντάκτη", + addContributor: "Προσθήκη συνεισφέροντα" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryEditor.js new file mode 100644 index 00000000..07ad44e1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/es/FeedEntryEditor",({doNew:"[nuevo]",edit:"[editar]",save:"[guardar]",cancel:"[cancelar]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..96971913 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/es/FeedEntryEditor", ({ + doNew: "[nuevo]", + edit: "[editar]", + save: "[guardar]", + cancel: "[cancelar]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryViewer.js new file mode 100644 index 00000000..91a58d5e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/es/FeedEntryViewer",({displayOptions:"[opciones de visualización]",title:"Título",authors:"Autores",contributors:"Colaboradores",id:"ID",close:"[cerrar]",updated:"Actualizado",summary:"Resumen",content:"Contenido"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..b87e1b48 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/es/FeedEntryViewer", ({ + displayOptions: "[opciones de visualización]", + title: "Título", + authors: "Autores", + contributors: "Colaboradores", + id: "ID", + close: "[cerrar]", + updated: "Actualizado", + summary: "Resumen", + content: "Contenido" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedViewerEntry.js new file mode 100644 index 00000000..6b086ac3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/es/FeedViewerEntry",({deleteButton:"[Suprimir]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..0a947a8e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/es/FeedViewerEntry", ({ + deleteButton: "[Suprimir]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/PeopleEditor.js new file mode 100644 index 00000000..b5c83c6a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/es/PeopleEditor",({add:"Añadir",addAuthor:"Añadir autor",addContributor:"Añadir colaborador"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..1b03d89b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/es/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/es/PeopleEditor", ({ + add: "Añadir", + addAuthor: "Añadir autor", + addContributor: "Añadir colaborador" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryEditor.js new file mode 100644 index 00000000..489250fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/fi/FeedEntryEditor",({doNew:"[uusi]",edit:"[muokkaa]",save:"[tallenna]",cancel:"[peruuta]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..924ca5c1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/fi/FeedEntryEditor", ({ + doNew: "[uusi]", + edit: "[muokkaa]", + save: "[tallenna]", + cancel: "[peruuta]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryViewer.js new file mode 100644 index 00000000..89cf5a00 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/fi/FeedEntryViewer",({displayOptions:"[näyttöasetukset]",title:"Otsikko",authors:"Tekijät",contributors:"Lisääjät",id:"Tunnus",close:"[sulje]",updated:"Päivitetty",summary:"Yhteenveto",content:"Sisältö"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..43957771 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/fi/FeedEntryViewer", ({ + displayOptions: "[näyttöasetukset]", + title: "Otsikko", + authors: "Tekijät", + contributors: "Lisääjät", + id: "Tunnus", + close: "[sulje]", + updated: "Päivitetty", + summary: "Yhteenveto", + content: "Sisältö" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedViewerEntry.js new file mode 100644 index 00000000..4507c764 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/fi/FeedViewerEntry",({deleteButton:"[Poista]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..595dd662 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/fi/FeedViewerEntry", ({ + deleteButton: "[Poista]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/PeopleEditor.js new file mode 100644 index 00000000..7162c0fb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/fi/PeopleEditor",({add:"Lisää",addAuthor:"Lisää tekijä",addContributor:"Lisää lisääjä"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..5b0c23f8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fi/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/fi/PeopleEditor", ({ + add: "Lisää", + addAuthor: "Lisää tekijä", + addContributor: "Lisää lisääjä" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryEditor.js new file mode 100644 index 00000000..6e52f010 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/fr/FeedEntryEditor",({doNew:"[nouveau]",edit:"[éditer]",save:"[sauvegarder]",cancel:"[annuler]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..10e2d179 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/fr/FeedEntryEditor", ({ + doNew: "[nouveau]", + edit: "[éditer]", + save: "[sauvegarder]", + cancel: "[annuler]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryViewer.js new file mode 100644 index 00000000..e8e34011 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/fr/FeedEntryViewer",({displayOptions:"[options d'affichage]",title:"Titre",authors:"Auteurs",contributors:"Collaborateurs",id:"ID",close:"[fermer]",updated:"Mis à jour",summary:"Récapitulatif",content:"Contenu"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..89a44c33 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/fr/FeedEntryViewer", ({ + displayOptions: "[options d'affichage]", + title: "Titre", + authors: "Auteurs", + contributors: "Collaborateurs", + id: "ID", + close: "[fermer]", + updated: "Mis à jour", + summary: "Récapitulatif", + content: "Contenu" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedViewerEntry.js new file mode 100644 index 00000000..dc612a63 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/fr/FeedViewerEntry",({deleteButton:"[Supprimer]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..a48ecf56 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/fr/FeedViewerEntry", ({ + deleteButton: "[Supprimer]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/PeopleEditor.js new file mode 100644 index 00000000..2cbe3460 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/fr/PeopleEditor",({add:"Ajouter",addAuthor:"Ajouter un auteur",addContributor:"Ajouter un collaborateur"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..370106e5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/fr/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/fr/PeopleEditor", ({ + add: "Ajouter", + addAuthor: "Ajouter un auteur", + addContributor: "Ajouter un collaborateur" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryEditor.js new file mode 100644 index 00000000..90166007 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/he/FeedEntryEditor",({doNew:"[חדש]",edit:"[עריכה]",save:"[שמירה]",cancel:"[ביטול]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..13c37195 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/he/FeedEntryEditor", ({ + doNew: "[חדש]", + edit: "[עריכה]", + save: "[שמירה]", + cancel: "[ביטול]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryViewer.js new file mode 100644 index 00000000..21f680a8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/he/FeedEntryViewer",({displayOptions:"[אפשרויות הצגה]",title:"כותרת",authors:"מחברים",contributors:"תורמים",id:"זיהוי",close:"[סגירה]",updated:"עודכן",summary:"סיכום",content:"תוכן"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..28b676dc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/he/FeedEntryViewer", ({ + displayOptions: "[אפשרויות הצגה]", + title: "כותרת", + authors: "מחברים", + contributors: "תורמים", + id: "זיהוי", + close: "[סגירה]", + updated: "עודכן", + summary: "סיכום", + content: "תוכן" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedViewerEntry.js new file mode 100644 index 00000000..f5aba35b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/he/FeedViewerEntry",({deleteButton:"[מחיקה]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..f150c918 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/he/FeedViewerEntry", ({ + deleteButton: "[מחיקה]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/PeopleEditor.js new file mode 100644 index 00000000..3d6648db --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/he/PeopleEditor",({add:"הוספה",addAuthor:"הוספת מחבר",addContributor:"הוספת תורם"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..4f623859 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/he/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/he/PeopleEditor", ({ + add: "הוספה", + addAuthor: "הוספת מחבר", + addContributor: "הוספת תורם" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryEditor.js new file mode 100644 index 00000000..52ccd36d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/hr/FeedEntryEditor",({doNew:"[novo]",edit:"[uredi]",save:"[spremi]",cancel:"[opoziv]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..d3fc9cfa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/hr/FeedEntryEditor", ({ + doNew: "[novo]", + edit: "[uredi]", + save: "[spremi]", + cancel: "[opoziv]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryViewer.js new file mode 100644 index 00000000..a09b211f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/hr/FeedEntryViewer",({displayOptions:"[opcije prikaza]",title:"Naslov",authors:"Autori",contributors:"Doprinositelji",id:"ID",close:"[zatvori]",updated:"Ažurirano",summary:"Sažetak",content:"Sadržaj"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..b2f7e46a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/hr/FeedEntryViewer", ({ + displayOptions: "[opcije prikaza]", + title: "Naslov", + authors: "Autori", + contributors: "Doprinositelji", + id: "ID", + close: "[zatvori]", + updated: "Ažurirano", + summary: "Sažetak", + content: "Sadržaj" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedViewerEntry.js new file mode 100644 index 00000000..c3b7acd6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/hr/FeedViewerEntry",({deleteButton:"[Izbriši]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..51b641f2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/hr/FeedViewerEntry", ({ + deleteButton: "[Izbriši]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/PeopleEditor.js new file mode 100644 index 00000000..2fdf5184 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/hr/PeopleEditor",({add:"Dodaj",addAuthor:"Dodaj autora",addContributor:"Dodaj doprinositelja"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..74ac1187 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hr/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/hr/PeopleEditor", ({ + add: "Dodaj", + addAuthor: "Dodaj autora", + addContributor: "Dodaj doprinositelja" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryEditor.js new file mode 100644 index 00000000..3c68e219 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/hu/FeedEntryEditor",({doNew:"[új]",edit:"[szerkesztés]",save:"[mentés]",cancel:"[mégse]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..7f78dab9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/hu/FeedEntryEditor", ({ + doNew: "[új]", + edit: "[szerkesztés]", + save: "[mentés]", + cancel: "[mégse]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryViewer.js new file mode 100644 index 00000000..1fba09e7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/hu/FeedEntryViewer",({displayOptions:"[megjelenítési beállítások]",title:"Cím",authors:"Szerzők",contributors:"Közreműködők",id:"Azonosító",close:"[bezárás]",updated:"Frissítve",summary:"Összegzés",content:"Tartalom"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..cdcab13d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/hu/FeedEntryViewer", ({ + displayOptions: "[megjelenítési beállítások]", + title: "Cím", + authors: "Szerzők", + contributors: "Közreműködők", + id: "Azonosító", + close: "[bezárás]", + updated: "Frissítve", + summary: "Összegzés", + content: "Tartalom" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedViewerEntry.js new file mode 100644 index 00000000..1084c787 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/hu/FeedViewerEntry",({deleteButton:"[Törlés]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..5420bfbf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/hu/FeedViewerEntry", ({ + deleteButton: "[Törlés]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/PeopleEditor.js new file mode 100644 index 00000000..27a3be7c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/hu/PeopleEditor",({add:"Hozzáadás",addAuthor:"Szerző hozzáadása",addContributor:"Közreműködő hozzáadása"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..18e6097c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/hu/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/hu/PeopleEditor", ({ + add: "Hozzáadás", + addAuthor: "Szerző hozzáadása", + addContributor: "Közreműködő hozzáadása" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryEditor.js new file mode 100644 index 00000000..49487162 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/id/FeedEntryEditor",({doNew:"[baru]",edit:"[edit]",save:"[simpan]",cancel:"[batal]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..5bb35569 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,9 @@ +define( +"dojox/atom/widget/nls/id/FeedEntryEditor", ({ + doNew: "[baru]", + edit: "[edit]", + save: "[simpan]", + cancel: "[batal]" +}) +); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryViewer.js new file mode 100644 index 00000000..270d2e6d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/id/FeedEntryViewer",({displayOptions:"[pilihan tampilan]",title:"Judul",authors:"Penulis",contributors:"kontributor",id:"ID",close:"[tutup]",updated:"Diperbarui",summary:"Ringkasan",content:"Konten"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..46865051 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/atom/widget/nls/id/FeedEntryViewer", ({ + displayOptions: "[pilihan tampilan]", + title: "Judul", + authors: "Penulis", + contributors: "kontributor", + id: "ID", + close: "[tutup]", + updated: "Diperbarui", + summary: "Ringkasan", + content: "Konten" +}) +); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedViewerEntry.js new file mode 100644 index 00000000..4bfb5df8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/id/FeedViewerEntry",({deleteButton:"[Hapus]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..f85f83ac --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,6 @@ +define( +"dojox/atom/widget/nls/id/FeedViewerEntry", ({ + deleteButton: "[Hapus]" +}) +); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/PeopleEditor.js new file mode 100644 index 00000000..2e726b28 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/id/PeopleEditor",({add:"Tambahkan",addAuthor:"Tambahkan Penulis",addContributor:"Tambahkan Kontributor"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..32307186 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/id/PeopleEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/id/PeopleEditor", ({ + add: "Tambahkan", + addAuthor: "Tambahkan Penulis", + addContributor: "Tambahkan Kontributor" +}) +); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryEditor.js new file mode 100644 index 00000000..ac142136 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/it/FeedEntryEditor",({doNew:"[nuovo]",edit:"[modifica]",save:"[salva]",cancel:"[annulla]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..ce639844 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/it/FeedEntryEditor", ({ + doNew: "[nuovo]", + edit: "[modifica]", + save: "[salva]", + cancel: "[annulla]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryViewer.js new file mode 100644 index 00000000..9243963c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/it/FeedEntryViewer",({displayOptions:"[visualizza opzioni]",title:"Titolo",authors:"Autori",contributors:"Contributor",id:"ID",close:"[chiudi]",updated:"Aggiornato",summary:"Riepilogo",content:"Contenuto"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..0cfa71a9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/it/FeedEntryViewer", ({ + displayOptions: "[visualizza opzioni]", + title: "Titolo", + authors: "Autori", + contributors: "Contributor", + id: "ID", + close: "[chiudi]", + updated: "Aggiornato", + summary: "Riepilogo", + content: "Contenuto" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedViewerEntry.js new file mode 100644 index 00000000..e6ad00f5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/it/FeedViewerEntry",({deleteButton:"[Elimina]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..7ebd50ef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/it/FeedViewerEntry", ({ + deleteButton: "[Elimina]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/PeopleEditor.js new file mode 100644 index 00000000..9b100b9f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/it/PeopleEditor",({add:"Aggiungi",addAuthor:"Aggiungi autore",addContributor:"Aggiungi contributor"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..72a4cd8c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/it/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/it/PeopleEditor", ({ + add: "Aggiungi", + addAuthor: "Aggiungi autore", + addContributor: "Aggiungi contributor" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryEditor.js new file mode 100644 index 00000000..5117ad15 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ja/FeedEntryEditor",({doNew:"[新規]",edit:"[編集]",save:"[保存]",cancel:"[キャンセル]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..6a7ee956 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/ja/FeedEntryEditor", ({ + doNew: "[新規]", + edit: "[編集]", + save: "[保存]", + cancel: "[キャンセル]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryViewer.js new file mode 100644 index 00000000..21743b59 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ja/FeedEntryViewer",({displayOptions:"[表示オプション]",title:"タイトル",authors:"作成者",contributors:"貢献者",id:"ID",close:"[閉じる]",updated:"更新",summary:"要約",content:"内容"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..b5bd0fcf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/ja/FeedEntryViewer", ({ + displayOptions: "[表示オプション]", + title: "タイトル", + authors: "作成者", + contributors: "貢献者", + id: "ID", + close: "[閉じる]", + updated: "更新", + summary: "要約", + content: "内容" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedViewerEntry.js new file mode 100644 index 00000000..e74b0002 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ja/FeedViewerEntry",({deleteButton:"[削除]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..1fc36695 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/ja/FeedViewerEntry", ({ + deleteButton: "[削除]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/PeopleEditor.js new file mode 100644 index 00000000..51a1f02e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ja/PeopleEditor",({add:"追加",addAuthor:"作成者の追加",addContributor:"貢献者の追加"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..4a2fc322 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ja/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/ja/PeopleEditor", ({ + add: "追加", + addAuthor: "作成者の追加", + addContributor: "貢献者の追加" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryEditor.js new file mode 100644 index 00000000..0cb4392d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/kk/FeedEntryEditor",({doNew:"[жаңа]",edit:"[өңдеу]",save:"[сақтау]",cancel:"[болдырмау]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..c8676d84 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/kk/FeedEntryEditor", ({ + doNew: "[жаңа]", + edit: "[өңдеу]", + save: "[сақтау]", + cancel: "[болдырмау]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryViewer.js new file mode 100644 index 00000000..0eddbaaa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/kk/FeedEntryViewer",({displayOptions:"[көрсету параметрлері]",title:"Тақырып",authors:"Авторлар",contributors:"Салымшылар",id:"Жалпылауыш",close:"[жабу]",updated:"Жаңартылған",summary:"Жиынтық",content:"Мазмұн"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..23372a56 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/kk/FeedEntryViewer", ({ + displayOptions: "[көрсету параметрлері]", + title: "Тақырып", + authors: "Авторлар", + contributors: "Салымшылар", + id: "Жалпылауыш", + close: "[жабу]", + updated: "Жаңартылған", + summary: "Жиынтық", + content: "Мазмұн" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedViewerEntry.js new file mode 100644 index 00000000..69f2c3cf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/kk/FeedViewerEntry",({deleteButton:"[Жою]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..1baf2d5f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/kk/FeedViewerEntry", ({ + deleteButton: "[Жою]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/PeopleEditor.js new file mode 100644 index 00000000..da1a65af --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/kk/PeopleEditor",({add:"Қосу",addAuthor:"Авторды қосу",addContributor:"Салымшыны қосу"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..9d461a18 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/kk/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/kk/PeopleEditor", ({ + add: "Қосу", + addAuthor: "Авторды қосу", + addContributor: "Салымшыны қосу" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryEditor.js new file mode 100644 index 00000000..bdea555e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ko/FeedEntryEditor",({doNew:"[새로 작성]",edit:"[편집]",save:"[저장]",cancel:"[취소]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..272d8ce1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/ko/FeedEntryEditor", ({ + doNew: "[새로 작성]", + edit: "[편집]", + save: "[저장]", + cancel: "[취소]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryViewer.js new file mode 100644 index 00000000..c1e344dc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ko/FeedEntryViewer",({displayOptions:"[옵션 표시]",title:"제목",authors:"작성자",contributors:"제공자",id:"ID",close:"[닫기]",updated:"업데이트된 날짜",summary:"요약",content:"컨텐츠"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..5fd77226 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/ko/FeedEntryViewer", ({ + displayOptions: "[옵션 표시]", + title: "제목", + authors: "작성자", + contributors: "제공자", + id: "ID", + close: "[닫기]", + updated: "업데이트된 날짜", + summary: "요약", + content: "컨텐츠" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedViewerEntry.js new file mode 100644 index 00000000..30c63ba0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ko/FeedViewerEntry",({deleteButton:"[삭제]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..600848a6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/ko/FeedViewerEntry", ({ + deleteButton: "[삭제]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/PeopleEditor.js new file mode 100644 index 00000000..e31a37ec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ko/PeopleEditor",({add:"추가",addAuthor:"작성자 추가",addContributor:"제공자 추가"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..ad12e2f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ko/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/ko/PeopleEditor", ({ + add: "추가", + addAuthor: "작성자 추가", + addContributor: "제공자 추가" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryEditor.js new file mode 100644 index 00000000..92240e20 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/nb/FeedEntryEditor",({doNew:"[ny(tt)]",edit:"[rediger]",save:"[lagre]",cancel:"[avbryt]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..392b5499 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/nb/FeedEntryEditor", ({ + doNew: "[ny(tt)]", + edit: "[rediger]", + save: "[lagre]", + cancel: "[avbryt]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryViewer.js new file mode 100644 index 00000000..7515796f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/nb/FeedEntryViewer",({displayOptions:"[visningsalternativer]",title:"Tittel",authors:"Forfattere",contributors:"Bidragsytere",id:"ID",close:"[lukk]",updated:"Oppdatert",summary:"Sammendrag",content:"Innhold"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..793dc5f5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/nb/FeedEntryViewer", ({ + displayOptions: "[visningsalternativer]", + title: "Tittel", + authors: "Forfattere", + contributors: "Bidragsytere", + id: "ID", + close: "[lukk]", + updated: "Oppdatert", + summary: "Sammendrag", + content: "Innhold" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedViewerEntry.js new file mode 100644 index 00000000..726ab941 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/nb/FeedViewerEntry",({deleteButton:"[Slett]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..a060dd8a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/nb/FeedViewerEntry", ({ + deleteButton: "[Slett]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/PeopleEditor.js new file mode 100644 index 00000000..69c223e3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/nb/PeopleEditor",({add:"Legg til",addAuthor:"Legg til forfatter",addContributor:"Legg til bidragsyter"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..91160e79 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nb/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/nb/PeopleEditor", ({ + add: "Legg til", + addAuthor: "Legg til forfatter", + addContributor: "Legg til bidragsyter" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryEditor.js new file mode 100644 index 00000000..4dfd2d4c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/nl/FeedEntryEditor",({doNew:"[nieuw]",edit:"[bewerken]",save:"[opslaan]",cancel:"[annuleren]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..dae91099 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/nl/FeedEntryEditor", ({ + doNew: "[nieuw]", + edit: "[bewerken]", + save: "[opslaan]", + cancel: "[annuleren]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryViewer.js new file mode 100644 index 00000000..e21bd01a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/nl/FeedEntryViewer",({displayOptions:"[weergaveopties]",title:"Titel",authors:"Auteurs",contributors:"Deelnemers",id:"ID",close:"[sluiten]",updated:"Bijgewerkt",summary:"Overzicht",content:"Content"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..4456fa69 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/nl/FeedEntryViewer", ({ + displayOptions: "[weergaveopties]", + title: "Titel", + authors: "Auteurs", + contributors: "Deelnemers", + id: "ID", + close: "[sluiten]", + updated: "Bijgewerkt", + summary: "Overzicht", + content: "Content" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedViewerEntry.js new file mode 100644 index 00000000..b07cadf4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/nl/FeedViewerEntry",({deleteButton:"[Wissen]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..1640df52 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/nl/FeedViewerEntry", ({ + deleteButton: "[Wissen]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/PeopleEditor.js new file mode 100644 index 00000000..3c6c0981 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/nl/PeopleEditor",({add:"Toevoegen",addAuthor:"Auteur toevoegen",addContributor:"Deelnemer toevoegen"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..47aed1d9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/nl/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/nl/PeopleEditor", ({ + add: "Toevoegen", + addAuthor: "Auteur toevoegen", + addContributor: "Deelnemer toevoegen" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryEditor.js new file mode 100644 index 00000000..0440dd76 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/pl/FeedEntryEditor",({doNew:"[nowy]",edit:"[edytuj]",save:"[zapisz]",cancel:"[anuluj]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..c5e64338 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/pl/FeedEntryEditor", ({ + doNew: "[nowy]", + edit: "[edytuj]", + save: "[zapisz]", + cancel: "[anuluj]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryViewer.js new file mode 100644 index 00000000..80d2bdd8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/pl/FeedEntryViewer",({displayOptions:"[opcje wyświetlania]",title:"Tytuł",authors:"Autorzy",contributors:"Kontrybutorzy",id:"ID",close:"[zamknij]",updated:"Zaktualizowano",summary:"Podsumowanie",content:"Treść"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..116fe09d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/pl/FeedEntryViewer", ({ + displayOptions: "[opcje wyświetlania]", + title: "Tytuł", + authors: "Autorzy", + contributors: "Kontrybutorzy", + id: "ID", + close: "[zamknij]", + updated: "Zaktualizowano", + summary: "Podsumowanie", + content: "Treść" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedViewerEntry.js new file mode 100644 index 00000000..f0ebd22c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/pl/FeedViewerEntry",({deleteButton:"[Usuń]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..688f79cd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/pl/FeedViewerEntry", ({ + deleteButton: "[Usuń]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/PeopleEditor.js new file mode 100644 index 00000000..1feac2f8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/pl/PeopleEditor",({add:"Dodaj",addAuthor:"Dodaj autora",addContributor:"Dodaj kontrybutora"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..3e4ab65c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pl/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/pl/PeopleEditor", ({ + add: "Dodaj", + addAuthor: "Dodaj autora", + addContributor: "Dodaj kontrybutora" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryEditor.js new file mode 100644 index 00000000..db76fdd0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/pt-pt/FeedEntryEditor",({doNew:"[novo]",edit:"[editar]",save:"[guardar]",cancel:"[cancelar]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..d163eb3b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/pt-pt/FeedEntryEditor", ({ + doNew: "[novo]", + edit: "[editar]", + save: "[guardar]", + cancel: "[cancelar]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryViewer.js new file mode 100644 index 00000000..44c03a0c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/pt-pt/FeedEntryViewer",({displayOptions:"[opções de visualização]",title:"Título",authors:"Autores",contributors:"Contribuintes",id:"ID",close:"[fechar]",updated:"Actualizado",summary:"Resumo",content:"Conteúdo"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..255eb3d1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/pt-pt/FeedEntryViewer", ({ + displayOptions: "[opções de visualização]", + title: "Título", + authors: "Autores", + contributors: "Contribuintes", + id: "ID", + close: "[fechar]", + updated: "Actualizado", + summary: "Resumo", + content: "Conteúdo" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedViewerEntry.js new file mode 100644 index 00000000..af4c8691 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/pt-pt/FeedViewerEntry",({deleteButton:"[Eliminar]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..2b25616f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/pt-pt/FeedViewerEntry", ({ + deleteButton: "[Eliminar]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/PeopleEditor.js new file mode 100644 index 00000000..ed74cc55 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/pt-pt/PeopleEditor",({add:"Adicionar",addAuthor:"Adicionar autor",addContributor:"Adicionar contribuinte"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..8c95ccfe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt-pt/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/pt-pt/PeopleEditor", ({ + add: "Adicionar", + addAuthor: "Adicionar autor", + addContributor: "Adicionar contribuinte" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryEditor.js new file mode 100644 index 00000000..39e22dce --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/pt/FeedEntryEditor",({doNew:"[novo]",edit:"[editar]",save:"[salvar]",cancel:"[cancelar]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..8a4f674b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/pt/FeedEntryEditor", ({ + doNew: "[novo]", + edit: "[editar]", + save: "[salvar]", + cancel: "[cancelar]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryViewer.js new file mode 100644 index 00000000..d867fc69 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/pt/FeedEntryViewer",({displayOptions:"[exibir opções]",title:"Título",authors:"Autores",contributors:"Contribuidores",id:"ID",close:"[fechar]",updated:"Atualizado",summary:"Resumo",content:"Conteúdo"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..b01545f8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/pt/FeedEntryViewer", ({ + displayOptions: "[exibir opções]", + title: "Título", + authors: "Autores", + contributors: "Contribuidores", + id: "ID", + close: "[fechar]", + updated: "Atualizado", + summary: "Resumo", + content: "Conteúdo" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedViewerEntry.js new file mode 100644 index 00000000..8a03a4c5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/pt/FeedViewerEntry",({deleteButton:"[Excluir]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..c51e71d5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/pt/FeedViewerEntry", ({ + deleteButton: "[Excluir]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/PeopleEditor.js new file mode 100644 index 00000000..f8d45dc9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/pt/PeopleEditor",({add:"Incluir",addAuthor:"Adicionar Autor",addContributor:"Adicionar Contribuidor"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..73537953 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/pt/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/pt/PeopleEditor", ({ + add: "Incluir", + addAuthor: "Adicionar Autor", + addContributor: "Adicionar Contribuidor" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryEditor.js new file mode 100644 index 00000000..50036f3e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ro/FeedEntryEditor",({doNew:"[nou]",edit:"[editare]",save:"[salvare]",cancel:"[anulare]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..66d879ce --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/ro/FeedEntryEditor", ({ + doNew: "[nou]", + edit: "[editare]", + save: "[salvare]", + cancel: "[anulare]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryViewer.js new file mode 100644 index 00000000..3efcc0b4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ro/FeedEntryViewer",({displayOptions:"[opţiuni de afişare]",title:"Titlu",authors:"Autori",contributors:"Contribuitori",id:"ID",close:"[închidere]",updated:"Actualizat",summary:"Sumar",content:"Conţinut"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..8748c3fb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/ro/FeedEntryViewer", ({ + displayOptions: "[opţiuni de afişare]", + title: "Titlu", + authors: "Autori", + contributors: "Contribuitori", + id: "ID", + close: "[închidere]", + updated: "Actualizat", + summary: "Sumar", + content: "Conţinut" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedViewerEntry.js new file mode 100644 index 00000000..a437aa29 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ro/FeedViewerEntry",({deleteButton:"[Ştergere]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..a0bdf549 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/ro/FeedViewerEntry", ({ + deleteButton: "[Ştergere]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/PeopleEditor.js new file mode 100644 index 00000000..1c071e10 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ro/PeopleEditor",({add:"Adăugare",addAuthor:"Adăugare autor",addContributor:"Adăugare contribuitor"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..efe1b471 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ro/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/ro/PeopleEditor", ({ + add: "Adăugare", + addAuthor: "Adăugare autor", + addContributor: "Adăugare contribuitor" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryEditor.js new file mode 100644 index 00000000..b9aa8f5e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ru/FeedEntryEditor",({doNew:"[создать]",edit:"[изменить]",save:"[сохранить]",cancel:"[отмена]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..c48c05b6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/ru/FeedEntryEditor", ({ + doNew: "[создать]", + edit: "[изменить]", + save: "[сохранить]", + cancel: "[отмена]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryViewer.js new file mode 100644 index 00000000..f391246a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ru/FeedEntryViewer",({displayOptions:"[показать опции]",title:"Название",authors:"Авторы",contributors:"Участники",id:"ИД",close:"[закрыть]",updated:"Обновлено",summary:"Сводка",content:"Информационное наполнение"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..19e0a012 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/ru/FeedEntryViewer", ({ + displayOptions: "[показать опции]", + title: "Название", + authors: "Авторы", + contributors: "Участники", + id: "ИД", + close: "[закрыть]", + updated: "Обновлено", + summary: "Сводка", + content: "Информационное наполнение" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedViewerEntry.js new file mode 100644 index 00000000..271eab46 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ru/FeedViewerEntry",({deleteButton:"[Удалить]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..f03dfbda --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/ru/FeedViewerEntry", ({ + deleteButton: "[Удалить]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/PeopleEditor.js new file mode 100644 index 00000000..15309898 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/ru/PeopleEditor",({add:"Добавить",addAuthor:"Добавить автора",addContributor:"Добавить участника"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..84853b04 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/ru/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/ru/PeopleEditor", ({ + add: "Добавить", + addAuthor: "Добавить автора", + addContributor: "Добавить участника" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryEditor.js new file mode 100644 index 00000000..afae995f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/sk/FeedEntryEditor",({doNew:"[nový]",edit:"[upraviť]",save:"[uložiť]",cancel:"[zrušiť]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..8965225a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/sk/FeedEntryEditor", ({ + doNew: "[nový]", + edit: "[upraviť]", + save: "[uložiť]", + cancel: "[zrušiť]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryViewer.js new file mode 100644 index 00000000..0d33d267 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/sk/FeedEntryViewer",({displayOptions:"[voľby zobrazenia]",title:"Nadpis",authors:"Autori",contributors:"Prispievatelia",id:"ID",close:"[zatvoriť]",updated:"Aktualizované",summary:"Zhrnutie",content:"Obsah"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..58d1f018 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/sk/FeedEntryViewer", ({ + displayOptions: "[voľby zobrazenia]", + title: "Nadpis", + authors: "Autori", + contributors: "Prispievatelia", + id: "ID", + close: "[zatvoriť]", + updated: "Aktualizované", + summary: "Zhrnutie", + content: "Obsah" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedViewerEntry.js new file mode 100644 index 00000000..351ef975 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/sk/FeedViewerEntry",({deleteButton:"[Odstrániť]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..f8eb57f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/sk/FeedViewerEntry", ({ + deleteButton: "[Odstrániť]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/PeopleEditor.js new file mode 100644 index 00000000..d8f5d3de --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/sk/PeopleEditor",({add:"Pridať",addAuthor:"Pridať autora",addContributor:"Pridať prispievateľa"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..f4934ed8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sk/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/sk/PeopleEditor", ({ + add: "Pridať", + addAuthor: "Pridať autora", + addContributor: "Pridať prispievateľa" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryEditor.js new file mode 100644 index 00000000..e68d61e4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/sl/FeedEntryEditor",({doNew:"[novo]",edit:"[urejanje]",save:"[shrani]",cancel:"[prekliči]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..9378a939 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/sl/FeedEntryEditor", ({ + doNew: "[novo]", + edit: "[urejanje]", + save: "[shrani]", + cancel: "[prekliči]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryViewer.js new file mode 100644 index 00000000..e05e25a0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/sl/FeedEntryViewer",({displayOptions:"[možnosti prikaza]",title:"Naslov",authors:"Avtorji",contributors:"Kontributorji",id:"ID",close:"[zapri]",updated:"Posodobljeno",summary:"Seštevek",content:"Vsebina"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..68c9847b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/sl/FeedEntryViewer", ({ + displayOptions: "[možnosti prikaza]", + title: "Naslov", + authors: "Avtorji", + contributors: "Kontributorji", + id: "ID", + close: "[zapri]", + updated: "Posodobljeno", + summary: "Seštevek", + content: "Vsebina" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedViewerEntry.js new file mode 100644 index 00000000..24b24488 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/sl/FeedViewerEntry",({deleteButton:"[Izbriši]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..b9836da8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/sl/FeedViewerEntry", ({ + deleteButton: "[Izbriši]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/PeopleEditor.js new file mode 100644 index 00000000..97df723c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/sl/PeopleEditor",({add:"Dodaj",addAuthor:"Dodaj avtorja",addContributor:"Dodaj kontributorja"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..60acdbf4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sl/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/sl/PeopleEditor", ({ + add: "Dodaj", + addAuthor: "Dodaj avtorja", + addContributor: "Dodaj kontributorja" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryEditor.js new file mode 100644 index 00000000..dc673dbb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/sv/FeedEntryEditor",({doNew:"[nytt]",edit:"[redigera]",save:"[spara]",cancel:"[avbryt]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..126215d9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/sv/FeedEntryEditor", ({ + doNew: "[nytt]", + edit: "[redigera]", + save: "[spara]", + cancel: "[avbryt]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryViewer.js new file mode 100644 index 00000000..074cff4f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/sv/FeedEntryViewer",({displayOptions:"[visningsalternativ]",title:"Namn",authors:"Författare",contributors:"Medverkande",id:"ID",close:"[stäng]",updated:"Uppdaterat",summary:"Översikt",content:"Innehåll"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..264ef851 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/sv/FeedEntryViewer", ({ + displayOptions: "[visningsalternativ]", + title: "Namn", + authors: "Författare", + contributors: "Medverkande", + id: "ID", + close: "[stäng]", + updated: "Uppdaterat", + summary: "Översikt", + content: "Innehåll" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedViewerEntry.js new file mode 100644 index 00000000..eea12539 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/sv/FeedViewerEntry",({deleteButton:"[Ta bort]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..83189abe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/sv/FeedViewerEntry", ({ + deleteButton: "[Ta bort]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/PeopleEditor.js new file mode 100644 index 00000000..fb7250d5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/sv/PeopleEditor",({add:"Lägg till",addAuthor:"Lägg till författare",addContributor:"Lägg till medverkande"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..dbe30c7a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/sv/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/sv/PeopleEditor", ({ + add: "Lägg till", + addAuthor: "Lägg till författare", + addContributor: "Lägg till medverkande" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryEditor.js new file mode 100644 index 00000000..e4dbb16a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/th/FeedEntryEditor",({doNew:"[สร้างใหม่]",edit:"[แก้ไข]",save:"[บันทึก]",cancel:"[ยกเลิก]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..be1fcc42 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/th/FeedEntryEditor", ({ + doNew: "[สร้างใหม่]", + edit: "[แก้ไข]", + save: "[บันทึก]", + cancel: "[ยกเลิก]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryViewer.js new file mode 100644 index 00000000..ea6fd317 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/th/FeedEntryViewer",({displayOptions:"[แสดงอ็อพชัน]",title:"หัวเรื่อง",authors:"ผู้เขียน",contributors:"ผู้ร่วมให้ข้อมูล",id:"ID",close:"[ปิด]",updated:"อัพเดต",summary:"ยอดรวม",content:"เนื้อหา"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..b993fc34 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/th/FeedEntryViewer", ({ + displayOptions: "[แสดงอ็อพชัน]", + title: "หัวเรื่อง", + authors: "ผู้เขียน", + contributors: "ผู้ร่วมให้ข้อมูล", + id: "ID", + close: "[ปิด]", + updated: "อัพเดต", + summary: "ยอดรวม", + content: "เนื้อหา" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedViewerEntry.js new file mode 100644 index 00000000..83784738 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/th/FeedViewerEntry",({deleteButton:"[ลบ]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..b23ea5de --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/th/FeedViewerEntry", ({ + deleteButton: "[ลบ]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/PeopleEditor.js new file mode 100644 index 00000000..01e271f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/th/PeopleEditor",({add:"เพิ่ม",addAuthor:"เพิ่มผู้เขียน",addContributor:"เพิ่มผู้ให้ข้อมูล"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..65fea7fe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/th/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/th/PeopleEditor", ({ + add: "เพิ่ม", + addAuthor: "เพิ่มผู้เขียน", + addContributor: "เพิ่มผู้ให้ข้อมูล" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryEditor.js new file mode 100644 index 00000000..bfd5342c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/tr/FeedEntryEditor",({doNew:"[yeni]",edit:"[düzenle]",save:"[kaydet]",cancel:"[iptal]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..f4847b5e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/tr/FeedEntryEditor", ({ + doNew: "[yeni]", + edit: "[düzenle]", + save: "[kaydet]", + cancel: "[iptal]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryViewer.js new file mode 100644 index 00000000..e7c03403 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/tr/FeedEntryViewer",({displayOptions:"[görüntüleme seçenekleri]",title:"Başlık",authors:"Yazarlar",contributors:"Katkıda Bulunanlar",id:"Kimlik",close:"[kapat]",updated:"Güncelleştirildi",summary:"Özet",content:"İçerik"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..1d163194 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/tr/FeedEntryViewer", ({ + displayOptions: "[görüntüleme seçenekleri]", + title: "Başlık", + authors: "Yazarlar", + contributors: "Katkıda Bulunanlar", + id: "Kimlik", + close: "[kapat]", + updated: "Güncelleştirildi", + summary: "Özet", + content: "İçerik" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedViewerEntry.js new file mode 100644 index 00000000..3008e90f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/tr/FeedViewerEntry",({deleteButton:"[Sil]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..2902155c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/tr/FeedViewerEntry", ({ + deleteButton: "[Sil]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/PeopleEditor.js new file mode 100644 index 00000000..7dd93cc5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/tr/PeopleEditor",({add:"Ekle",addAuthor:"Yazar Ekle",addContributor:"Katkıda Bulunan Ekle"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..044d6bd5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/tr/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/tr/PeopleEditor", ({ + add: "Ekle", + addAuthor: "Yazar Ekle", + addContributor: "Katkıda Bulunan Ekle" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryEditor.js new file mode 100644 index 00000000..3dce0829 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/uk/FeedEntryEditor",({doNew:"[створити]",edit:"[змінити]",save:"[зберегти]",cancel:"[скасувати]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..9e3d748a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/uk/FeedEntryEditor", ({ + doNew: "[створити]", + edit: "[змінити]", + save: "[зберегти]", + cancel: "[скасувати]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryViewer.js new file mode 100644 index 00000000..62487953 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/uk/FeedEntryViewer",({displayOptions:"[показати опції]",title:"Заголовок",authors:"Автори",contributors:"Учасники",id:"Ідентифікатор",close:"[закрити]",updated:"Оновлено",summary:"Підсумкові дані",content:"Вміст"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..8419d538 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/uk/FeedEntryViewer", ({ + displayOptions: "[показати опції]", + title: "Заголовок", + authors: "Автори", + contributors: "Учасники", + id: "Ідентифікатор", + close: "[закрити]", + updated: "Оновлено", + summary: "Підсумкові дані", + content: "Вміст" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedViewerEntry.js new file mode 100644 index 00000000..af1be912 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/uk/FeedViewerEntry",({deleteButton:"[Видалити]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..0b72decb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/uk/FeedViewerEntry", ({ + deleteButton: "[Видалити]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/PeopleEditor.js new file mode 100644 index 00000000..b0cbf517 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/uk/PeopleEditor",({add:"Додати",addAuthor:"Додати автора",addContributor:"Додати учасника"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..3226b222 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/uk/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/uk/PeopleEditor", ({ + add: "Додати", + addAuthor: "Додати автора", + addContributor: "Додати учасника" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryEditor.js new file mode 100644 index 00000000..874ee975 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/zh-tw/FeedEntryEditor",({doNew:"[新建]",edit:"[編輯]",save:"[儲存]",cancel:"[取消]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..671ac050 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/zh-tw/FeedEntryEditor", ({ + doNew: "[新建]", + edit: "[編輯]", + save: "[儲存]", + cancel: "[取消]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryViewer.js new file mode 100644 index 00000000..b4ac361f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/zh-tw/FeedEntryViewer",({displayOptions:"[顯示選項]",title:"標題",authors:"作者",contributors:"貢獻者",id:"ID",close:"[關閉]",updated:"已更新",summary:"摘要",content:"內容"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..f2829383 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/zh-tw/FeedEntryViewer", ({ + displayOptions: "[顯示選項]", + title: "標題", + authors: "作者", + contributors: "貢獻者", + id: "ID", + close: "[關閉]", + updated: "已更新", + summary: "摘要", + content: "內容" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedViewerEntry.js new file mode 100644 index 00000000..ae9870d8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/zh-tw/FeedViewerEntry",({deleteButton:"[刪除]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..51c3194b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/zh-tw/FeedViewerEntry", ({ + deleteButton: "[刪除]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/PeopleEditor.js new file mode 100644 index 00000000..59e92fc3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/zh-tw/PeopleEditor",({add:"新增",addAuthor:"新增作者",addContributor:"新增貢獻者"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..9c4c426a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh-tw/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/zh-tw/PeopleEditor", ({ + add: "新增", + addAuthor: "新增作者", + addContributor: "新增貢獻者" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryEditor.js new file mode 100644 index 00000000..38ccdd6c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/zh/FeedEntryEditor",({doNew:"[新建]",edit:"[编辑]",save:"[保存]",cancel:"[取消]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryEditor.js.uncompressed.js new file mode 100644 index 00000000..5e457eed --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryEditor.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/atom/widget/nls/zh/FeedEntryEditor", ({ + doNew: "[新建]", + edit: "[编辑]", + save: "[保存]", + cancel: "[取消]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryViewer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryViewer.js new file mode 100644 index 00000000..a5c7e43d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryViewer.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/zh/FeedEntryViewer",({displayOptions:"[显示选项]",title:"标题",authors:"创建者",contributors:"添加者",id:"标识",close:"[关闭]",updated:"已更新",summary:"概要",content:"内容"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryViewer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryViewer.js.uncompressed.js new file mode 100644 index 00000000..5971daf7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedEntryViewer.js.uncompressed.js @@ -0,0 +1,13 @@ +define( +"dojox/atom/widget/nls/zh/FeedEntryViewer", ({ + displayOptions: "[显示选项]", + title: "标题", + authors: "创建者", + contributors: "添加者", + id: "标识", + close: "[关闭]", + updated: "已更新", + summary: "概要", + content: "内容" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedViewerEntry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedViewerEntry.js new file mode 100644 index 00000000..8baa8a92 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedViewerEntry.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/zh/FeedViewerEntry",({deleteButton:"[删除]"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedViewerEntry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedViewerEntry.js.uncompressed.js new file mode 100644 index 00000000..e9ade670 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/FeedViewerEntry.js.uncompressed.js @@ -0,0 +1,5 @@ +define( +"dojox/atom/widget/nls/zh/FeedViewerEntry", ({ + deleteButton: "[删除]" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/PeopleEditor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/PeopleEditor.js new file mode 100644 index 00000000..a736173a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/PeopleEditor.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/atom/widget/nls/zh/PeopleEditor",({add:"添加",addAuthor:"添加作者",addContributor:"添加添加者"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/PeopleEditor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/PeopleEditor.js.uncompressed.js new file mode 100644 index 00000000..1657837a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/nls/zh/PeopleEditor.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/atom/widget/nls/zh/PeopleEditor", ({ + add: "添加", + addAuthor: "添加作者", + addContributor: "添加添加者" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/EntryHeader.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/EntryHeader.html new file mode 100644 index 00000000..67d1e81f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/EntryHeader.html @@ -0,0 +1 @@ + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedEntryEditor.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedEntryEditor.html new file mode 100644 index 00000000..6a7f4456 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedEntryEditor.html @@ -0,0 +1,195 @@ +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedEntryViewer.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedEntryViewer.html new file mode 100644 index 00000000..408c0712 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedEntryViewer.html @@ -0,0 +1,158 @@ +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedViewer.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedViewer.html new file mode 100644 index 00000000..f3d2108b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedViewer.html @@ -0,0 +1,6 @@ +
    + + + +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedViewerEntry.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedViewerEntry.html new file mode 100644 index 00000000..201f884a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedViewerEntry.html @@ -0,0 +1,15 @@ + + + + + + + + + +
    + + +
    + + \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedViewerGrouping.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedViewerGrouping.html new file mode 100644 index 00000000..467e4280 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/FeedViewerGrouping.html @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/PeopleEditor.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/PeopleEditor.html new file mode 100644 index 00000000..a034c768 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/PeopleEditor.html @@ -0,0 +1,6 @@ +
    + + +
    + +
    \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/EntryHeader.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/EntryHeader.css new file mode 100644 index 00000000..cdc3ec47 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/EntryHeader.css @@ -0,0 +1,27 @@ + +.containerNode { + visibility : visible; +} +.graphic-tab-lgray { + margin-bottom: 10px; +} +.newgraphic-tab-lgray { + border-bottom: #d9d9d9 solid 7px; +} +td.lp { + padding: 0px 13px 0px 10px; + font-weight: bold; + background: #d9d9d9; + border-bottom: #d9d9d9 solid 7px; +} +td.lp2 { + background: #FFFFFF; + border-bottom: #d9d9d9 solid 7px; +} +span.lp { + padding: 0px 13px 0px 10px; + font-weight: bold; + background: #d9d9d9; + border-bottom: #d9d9d9 solid 7px; + width: auto; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedEntryEditor.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedEntryEditor.css new file mode 100644 index 00000000..f31be852 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedEntryEditor.css @@ -0,0 +1,84 @@ +.feedEntryEditor { + color:#000000; + background: #FFFFFF; +} +.feedEntryEditorMenuTable { + background: #C0C0C0; + border:2px solid; + border-top-color: lightgrey; + border-left-color: lightgrey; + border-right-color: darkgray; + border-bottom-color: darkgray; +} +.feedEntryEditorMenu { + cursor: pointer; + color:#0000FF; + text-align: left; + font-size: small; +} +.feedEntryEditorDisplayCheckbox { + font-size: small; + text-align: left; +} +.feedEntryEditorMenu:hover { + text-decoration: underline; +} +.feedEntryEditorTitle { + color:#000000; + background: #FFFFFF; + text-align: left; + #padding-left: 10px; + font-size: 125%; + font-weight: bold; +} +.feedEntryEditorAuthor { + color:#000000; + background: #FFFFFF; +} +.feedEntryEditorAuthorNames { + color:#000000; + background: #FFFFFF; + text-align: left; + #padding-left: 10px; + font-size: 110%; + font-style: italic; + font-weight: normal; +} +.feedEntryEditorSummary { + color:#000000; + background: #FFFFFF; +} +.feedEntryEditorUpdated { + color:#000000; + background: #FFFFFF; +} +.feedEntryEditorUpdatedText { + color:#000000; + background: #FFFFFF; + font-size: 110%; + font-style: italic; + font-weight: normal; +} +.feedEntryEditorId { + color:#000000; + background: #FFFFFF; +} +.feedEntryEditorIdText { + color:#000000; + background: #FFFFFF; + font-style: italic; + font-size: 110%; + font-weight: normal; +} +.feedEntryEditorContent { + color:#000000; + background: #FFFFFF; +} +.feedEntryEditorContributorNames { + color:#000000; + text-align: left; + #padding-left: 10px; + font-size: 125%; + font-style: italic; + font-weight: normal; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedEntryViewer.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedEntryViewer.css new file mode 100644 index 00000000..7807f8c7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedEntryViewer.css @@ -0,0 +1,90 @@ +.feedEntryViewer { + color:#000000; + background: #FFFFFF; +} +.feedEntryViewerMenuTable { + background: #C0C0C0; + border:2px solid; + border-top-color: lightgrey; + border-left-color: lightgrey; + border-right-color: darkgray; + border-bottom-color: darkgray; + margin: 0; +} +.feedEntryViewerMenu, .peopleEditorButton { + cursor: pointer; + color:#0000FF; + text-align: left; + font-size: small; +} +.feedEntryViewerDisplayCheckbox { + font-size: small; + text-align: left; +} +.feedEntryViewerMenu:hover, .peopleEditorButton:hover { + text-decoration: underline; +} +.feedEntryViewerContainer, .feedEntryViewerContainer table { + border-width: 0; + margin: 0; +} +.feedEntryViewerTitle { + color:#000000; + background: #FFFFFF; + text-align: left; + + font-size: 125%; + font-weight: bold; +} +.feedEntryViewerAuthor { + color:#000000; + background: #FFFFFF; +} +.feedEntryViewerAuthorNames { + color:#000000; + background: #FFFFFF; + text-align: left; + + font-size: 110%; + font-style: italic; + font-weight: normal; +} +.feedEntryViewerSummary { + color:#000000; + background: #FFFFFF; +} +.feedEntryViewerUpdated { + color:#000000; + background: #FFFFFF; +} +.feedEntryViewerUpdatedText { + color:#000000; + background: #FFFFFF; + font-size: 110%; + font-style: italic; + font-weight: normal; +} +.feedEntryViewerId { + color:#000000; + background: #FFFFFF; +} +.feedEntryViewerIdText { + color:#000000; + background: #FFFFFF; + font-style: italic; + font-size: 110%; + font-weight: normal; +} +.feedEntryViewerContent { + color:#000000; + background: #FFFFFF; +} +.feedEntryViewerContributorNames { + color:#000000; + text-align: left; + + font-size: 125%; + font-weight: normal; +} +.feedEntryViewer table { +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedViewer.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedViewer.css new file mode 100644 index 00000000..70d3a57d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedViewer.css @@ -0,0 +1,14 @@ +.feedViewerTable { + font-size: small; + width:100%; + cursor:default; + padding:2px; +} +.feedViewerTable, .feedViewerTable table { + border-width: 0; + margin: 0; +} +.feedViewerTableBody { + overflow-x: auto; + overflow-y: auto; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedViewerEntry.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedViewerEntry.css new file mode 100644 index 00000000..8318b315 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedViewerEntry.css @@ -0,0 +1,60 @@ +.feedViewerEntry { + background: #F0F0F0; + padding: 2px; + overflow-x: auto; + overflow-y: auto; + cursor: pointer; +} +.feedViewerEntry:hover { + background: #a6c2e7; + padding: 2px; +} +.feedViewerEntrySelected { + color: #000000; + background: #C0C0C0; + text-align: left; + vertical-align: top; + padding-bottom: 2px; + padding: 2px; +} +.feedViewerEntrySelected:hover { + background: #a6c2e7; + padding: 2px; +} +.feedViewerEntryUpdated { + text-align: left; + vertical-align: top; + color: #909090; + padding-bottom: 2px; + padding: 2px; +} +.feedViewerEntryUpdatedSelected { + text-align: left; + vertical-align: top; + color: #000000; + padding-bottom: 2px; + padding: 2px; +} +.feedViewerEntryTitle { + color:#000000; + text-align: left; + text-decoration:none; + padding-left: 4px; + padding-bottom: 2px; +} +.feedViewerEntryTitle:hover { + color:#000000; + text-align: left; + text-decoration:underline; + padding-left: 4px; + padding-bottom: 2px; +} +.feedViewerDeleteButton { + cursor: pointer; + color:#0000FF; + text-align: left; + font-size: small; +} +.feedViewerDeleteButton:hover { + text-decoration: underline; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedViewerGrouping.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedViewerGrouping.css new file mode 100644 index 00000000..326781e0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/atom/widget/templates/css/HtmlFeedViewerGrouping.css @@ -0,0 +1,8 @@ +.feedViewerGrouping { +} +.feedViewerGroupingTitle { + font-weight: bold; + color:#606060; + border-bottom:1px solid #909090; + padding-top: 4px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLAudio.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLAudio.js new file mode 100644 index 00000000..fab3a838 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLAudio.js @@ -0,0 +1,101 @@ +//>>built +define("dojox/av/FLAudio",["dojo","dojox/embed/Flash","dojox/timing/doLater"],function(_1,_2){ +_1.experimental("dojox.av.FLVideo"); +return _1.declare("dojox.av.FLAudio",null,{id:"",initialVolume:0.7,initialPan:0,isDebug:false,statusInterval:200,_swfPath:_1.moduleUrl("dojox.av","resources/audio.swf"),allowScriptAccess:"always",allowNetworking:"all",constructor:function(_3){ +_1.global.swfIsInHTML=function(){ +return true; +}; +_1.mixin(this,_3||{}); +if(!this.id){ +this.id="flaudio_"+new Date().getTime(); +} +this.domNode=_1.doc.createElement("div"); +_1.style(this.domNode,{position:"relative",width:"1px",height:"1px",top:"1px",left:"1px"}); +_1.body().appendChild(this.domNode); +this.init(); +},init:function(){ +this._subs=[]; +this.initialVolume=this._normalizeVolume(this.initialVolume); +var _4={path:this._swfPath,width:"1px",height:"1px",minimumVersion:9,expressInstall:true,params:{wmode:"transparent",allowScriptAccess:this.allowScriptAccess,allowNetworking:this.allowNetworking},vars:{id:this.id,autoPlay:this.autoPlay,initialVolume:this.initialVolume,initialPan:this.initialPan,statusInterval:this.statusInterval,isDebug:this.isDebug}}; +this._sub("mediaError","onError"); +this._sub("filesProgress","onLoadStatus"); +this._sub("filesAllLoaded","onAllLoaded"); +this._sub("mediaPosition","onPlayStatus"); +this._sub("mediaEnd","onComplete"); +this._sub("mediaMeta","onID3"); +this._flashObject=new dojox.embed.Flash(_4,this.domNode); +this._flashObject.onError=function(_5){ +console.warn("Flash Error:",_5); +}; +this._flashObject.onLoad=_1.hitch(this,function(_6){ +this.flashMedia=_6; +this.isPlaying=this.autoPlay; +this.isStopped=!this.autoPlay; +this.onLoad(this.flashMedia); +}); +},load:function(_7){ +if(dojox.timing.doLater(this.flashMedia,this)){ +return false; +} +if(!_7.url){ +throw new Error("An url is required for loading media"); +}else{ +_7.url=this._normalizeUrl(_7.url); +} +this.flashMedia.load(_7); +return _7.url; +},doPlay:function(_8){ +this.flashMedia.doPlay(_8); +},pause:function(_9){ +this.flashMedia.pause(_9); +},stop:function(_a){ +this.flashMedia.doStop(_a); +},setVolume:function(_b){ +this.flashMedia.setVolume(_b); +},setPan:function(_c){ +this.flashMedia.setPan(_c); +},getVolume:function(_d){ +return this.flashMedia.getVolume(_d); +},getPan:function(_e){ +return this.flashMedia.getPan(_e); +},getPosition:function(_f){ +return this.flashMedia.getPosition(_f); +},onError:function(msg){ +console.warn("SWF ERROR:",msg); +},onLoadStatus:function(_10){ +},onAllLoaded:function(){ +},onPlayStatus:function(_11){ +},onComplete:function(_12){ +},onLoad:function(){ +},onID3:function(evt){ +},destroy:function(){ +if(!this.flashMedia){ +this._cons.push(_1.connect(this,"onLoad",this,"destroy")); +return; +} +_1.forEach(this._subs,function(s){ +_1.unsubscribe(s); +}); +_1.forEach(this._cons,function(c){ +_1.disconnect(c); +}); +this._flashObject.destroy(); +},_sub:function(_13,_14){ +_1.subscribe(this.id+"/"+_13,this,_14); +},_normalizeVolume:function(vol){ +if(vol>1){ +while(vol>1){ +vol*=0.1; +} +} +return vol; +},_normalizeUrl:function(_15){ +if(_15&&_15.toLowerCase().indexOf("http")<0){ +var loc=window.location.href.split("/"); +loc.pop(); +loc=loc.join("/")+"/"; +_15=loc+_15; +} +return _15; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLAudio.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLAudio.js.uncompressed.js new file mode 100644 index 00000000..94d6d5e6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLAudio.js.uncompressed.js @@ -0,0 +1,373 @@ +define("dojox/av/FLAudio", ['dojo', 'dojox/embed/Flash', 'dojox/timing/doLater'],function(dojo, dijit){ + +dojo.experimental("dojox.av.FLVideo"); + +return dojo.declare("dojox.av.FLAudio", null, { + + // summary: + // Play MP3 files through the Flash SWF built in the + // DEFT project. + // description: + // This class is brand new, so there is a lot of + // functionality not yet available. The initial + // purpose is for playing "event" sounds like button + // clicks, and for loading and controlling multiple + // sounds at once. As of yet, streaming is not supported + // and polling the sounds for events during playback + // may still be missing information. Markup is not + // supported, as it may not be needed. + // + // TODO: + // Streaming, playback events, crossdomain, CDN support, + // (alternate SWF location), global volume, ID3 tag, + // factor out doLater, onLoadStatus needs work, + // play(position) / seek() + // + // example: + // | new dojox.av.FLAudio({ + // | initialVolume:.7, + // | initialPan:0, + // | autoPlay:false + // | }); + + // id: String? + // The id of this widget and the id of the SWF movie. + id:"", + + // initialVolume: Number + // From 0-1 + // Sets volume for all files unless changed with doPlay + // or setVolume + initialVolume: 0.7, + + // initialPan: Number + // From -1 to 1 (-1 is left, 1 is right, 0 is middle) + // Sets pan for all files unless changed with play + // or setPan + initialPan: 0, + + // autoPlay: Boolean + // If true, all files will play upon load. If false, + // they load and wait for doPlay() command. + + // isDebug: Boolean? + // Setting to true tells the SWF to output log messages to Firebug. + isDebug: false, + + // statusInterval: Number + // How often in milliseconds that the status of the + // player is checked - both load and play + statusInterval:200, + + // _swfPath: Uri + // The path to the video player SWF resource + _swfPath: dojo.moduleUrl("dojox.av", "resources/audio.swf"), + + // allowScriptAccess: String + // Whether the SWF can access the container JS + allowScriptAccess:"always", + + // allowNetworking: String + // Whether SWF is restricted to a domain + allowNetworking: "all", + + constructor: function(/*Object*/options){ + + // Provide this function for the SWF to ensure that the it is playing + // in HTML. + dojo.global.swfIsInHTML = function(){ return true; } + + dojo.mixin(this, options || {}); + if(!this.id){ this.id = "flaudio_"+new Date().getTime(); } + this.domNode = dojo.doc.createElement("div"); + dojo.style(this.domNode, { + position:"relative", + width:"1px", + height:"1px", + top:"1px", + left:"1px" + }); + dojo.body().appendChild(this.domNode); + this.init(); + }, + + init: function(){ + // summary: + // Initialize the media. + + this._subs = []; + this.initialVolume = this._normalizeVolume(this.initialVolume); + + var args = { + path:this._swfPath, + width:"1px", + height:"1px", + minimumVersion:9, // this may need to be 10, not sure + expressInstall:true, + params:{ + wmode:"transparent", + allowScriptAccess:this.allowScriptAccess, + allowNetworking:this.allowNetworking + }, + // only pass in simple variables - no deep objects + vars:{ + id:this.id, + autoPlay:this.autoPlay, + initialVolume:this.initialVolume, + initialPan:this.initialPan, + statusInterval:this.statusInterval, + isDebug:this.isDebug + } + }; + + this._sub("mediaError", "onError"); + this._sub("filesProgress", "onLoadStatus"); + this._sub("filesAllLoaded", "onAllLoaded"); + this._sub("mediaPosition", "onPlayStatus"); + this._sub("mediaEnd", "onComplete"); + this._sub("mediaMeta", "onID3"); + + this._flashObject = new dojox.embed.Flash(args, this.domNode); + this._flashObject.onError = function(err){ + console.warn("Flash Error:", err); + }; + this._flashObject.onLoad = dojo.hitch(this, function(mov){ + this.flashMedia = mov; + this.isPlaying = this.autoPlay; + this.isStopped = !this.autoPlay; + this.onLoad(this.flashMedia); + }); + }, + + // ============== // + // Loading Files // + // ============== // + + load: function(/*Object*/options){ + // summary: + // Adds a media object to the playlist + // ***This can be called repeatedly to add multiple items. + // options: Object + // - url: String: + // (required) path to MP3 media + // url must be absolute or relative to SWF, + // not dojo or the html. An effort will be made + // to fix incorrect paths. + // - id: String: + // (optional) an identifier to later determine + // which media to control. + // returns: + // The normalized url, which can be used to identify the + // audio. + + if(dojox.timing.doLater(this.flashMedia, this)){ return false; } + if(!options.url){ + throw new Error("An url is required for loading media"); + }else{ + options.url = this._normalizeUrl(options.url); + } + this.flashMedia.load(options); + + return options.url; // String + }, + + // ============================= // + // Methods to control the sound // + // ============================= // + + doPlay: function(/*Object*/options){ + // summary: + // Tell media to play, based on + // the options passed. + // options: Object + // - volume: Number: + // Sets the volume + // - pan: Number: + // Sets left/right pan + // - index:Number OR id:String OR url:String: + // Choose one of the above to identify + // the media you wish to control. id is + // set by you. index is the order in which + // media was added (zero based) + // NOTE: lack of an identifier will default + // to first (or only) item. + + // NOTE: Can't name this method "play()" as it causes + // an IE error. + this.flashMedia.doPlay(options); + }, + + pause: function(/*Object*/options){ + // summary: + // Tell media to pause, based on identifier in + // the options passed. + // options: Object + // index:Number OR id:String OR url:String. + // See doPlay(). + + this.flashMedia.pause(options); + }, + + stop: function(/*Object*/options){ + // summary: + // Tell media to stop, based on identifier in + // the options passed. + // options: + // index:Number OR id:String OR url:String. + // See doPlay(). + + this.flashMedia.doStop(options); + }, + + setVolume: function(/*Object*/options){ + // summary: + // Set media volume, based on identifier in + // the options passed. + // options: + // volume: Number + // 0 to 1 + // index:Number OR id:String OR url:String. + // See doPlay(). + + this.flashMedia.setVolume(options); + }, + + setPan: function(/*Object*/options){ + // summary: + // Set media pan, based on identifier in + // the options passed. + // options: + // - pan:Number (from -1 to 1) + // - index:Number OR id:String OR url:String (see doPlay()) + + this.flashMedia.setPan(options); + }, + + getVolume: function(/*Object*/options){ + // summary: + // Get media volume, based on identifier in + // the options passed. + // options: + // index:Number OR id:String OR url:String. + // See doPlay(). + + return this.flashMedia.getVolume(options); + }, + + getPan: function(/*Object*/options){ + // summary: + // Set media pan, based on identifier in + // the options passed. + // options: + // index:Number OR id:String OR url:String. + // See doPlay(). + + return this.flashMedia.getPan(options); + }, + + getPosition: function(/*Object*/options){ + // summary: + // Get the current time. + // options: + // index:Number OR id:String OR url:String. + // See doPlay(). + + return this.flashMedia.getPosition(options); + }, + + // ============= // + // Sound Events // + // ============= // + onError: function(msg){ + // summary: + // stub fired when an error occurs + console.warn("SWF ERROR:", msg) + }, + + onLoadStatus: function(/*Array*/events){ + // summary: + }, + + onAllLoaded: function(){ + // summary: + // stub fired + }, + + onPlayStatus: function(/*Array*/events){ + // summary: + }, + + onComplete: function(/*Array*/events){ + // summary: + // Fired at the end of a media file. + }, + + onLoad: function(){ + // summary: + // stub fired when SWF is ready + }, + onID3: function(evt){ + // summary: + // Fired when the ID3 data is received. + }, + + + + destroy: function(){ + // summary: + // destroys flash + if(!this.flashMedia){ + this._cons.push(dojo.connect(this, "onLoad", this, "destroy")); + return; + } + dojo.forEach(this._subs, function(s){ + dojo.unsubscribe(s); + }); + dojo.forEach(this._cons, function(c){ + dojo.disconnect(c); + }); + this._flashObject.destroy(); + //dojo._destroyElement(this.flashDiv); + }, + + + + _sub: function(topic, method){ + // summary: + // helper for subscribing to topics + dojo.subscribe(this.id+"/"+topic, this, method); + }, + + _normalizeVolume: function(vol){ + // summary: + // Ensures volume is less than one + // + if(vol>1){ + while(vol>1){ + vol*=.1 + } + } + return vol; + }, + + _normalizeUrl: function(_url){ + // summary: + // Checks that path is relative to HTML file or + // converts it to an absolute path. + + if(_url && _url.toLowerCase().indexOf("http")<0){ + // + // Appears to be a relative path. Attempt to convert it to absolute, + // so it will better target the SWF. + var loc = window.location.href.split("/"); + loc.pop(); + loc = loc.join("/")+"/"; + + _url = loc+_url; + } + return _url; + } + +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLVideo.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLVideo.js new file mode 100644 index 00000000..157c18f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLVideo.js @@ -0,0 +1,96 @@ +//>>built +define("dojox/av/FLVideo",["dojo","dijit","dijit/_Widget","dojox/embed/Flash","dojox/av/_Media"],function(_1,_2,_3,_4,_5){ +_1.experimental("dojox.av.FLVideo"); +return _1.declare("dojox.av.FLVideo",[_3,_5],{_swfPath:_1.moduleUrl("dojox.av","resources/video.swf"),constructor:function(_6){ +_1.global.swfIsInHTML=function(){ +return true; +}; +},postCreate:function(){ +this._subs=[]; +this._cons=[]; +this.mediaUrl=this._normalizeUrl(this.mediaUrl); +this.initialVolume=this._normalizeVolume(this.initialVolume); +var _7={path:this._swfPath,width:"100%",height:"100%",minimumVersion:9,expressInstall:true,params:{allowFullScreen:this.allowFullScreen,wmode:this.wmode,allowScriptAccess:this.allowScriptAccess,allowNetworking:this.allowNetworking},vars:{videoUrl:this.mediaUrl,id:this.id,autoPlay:this.autoPlay,volume:this.initialVolume,isDebug:this.isDebug}}; +this._sub("stageClick","onClick"); +this._sub("stageSized","onSwfSized"); +this._sub("mediaStatus","onPlayerStatus"); +this._sub("mediaMeta","onMetaData"); +this._sub("mediaError","onError"); +this._sub("mediaStart","onStart"); +this._sub("mediaEnd","onEnd"); +this._flashObject=new dojox.embed.Flash(_7,this.domNode); +this._flashObject.onError=function(_8){ +console.error("Flash Error:",_8); +}; +this._flashObject.onLoad=_1.hitch(this,function(_9){ +this.flashMedia=_9; +this.isPlaying=this.autoPlay; +this.isStopped=!this.autoPlay; +this.onLoad(this.flashMedia); +this._initStatus(); +this._update(); +}); +this.inherited(arguments); +},play:function(_a){ +this.isPlaying=true; +this.isStopped=false; +this.flashMedia.doPlay(this._normalizeUrl(_a)); +},pause:function(){ +this.isPlaying=false; +this.isStopped=false; +if(this.onPaused){ +this.onPaused(); +} +this.flashMedia.pause(); +},seek:function(_b){ +this.flashMedia.seek(_b); +},volume:function(_c){ +if(_c){ +if(!this.flashMedia){ +this.initialVolume=_c; +} +this.flashMedia.setVolume(this._normalizeVolume(_c)); +} +if(!this.flashMedia||!this.flashMedia.doGetVolume){ +return this.initialVolume; +} +return this.flashMedia.getVolume(); +},_checkBuffer:function(_d,_e){ +if(this.percentDownloaded==100){ +if(this.isBuffering){ +this.onBuffer(false); +this.flashMedia.doPlay(); +} +return; +} +if(!this.isBuffering&&_e<0.1){ +this.onBuffer(true); +this.flashMedia.pause(); +return; +} +var _f=this.percentDownloaded*0.01*this.duration; +if(!this.isBuffering&&_d+this.minBufferTime*0.001>_f){ +this.onBuffer(true); +this.flashMedia.pause(); +}else{ +if(this.isBuffering&&_d+this.bufferTime*0.001<=_f){ +this.onBuffer(false); +this.flashMedia.doPlay(); +} +} +},_update:function(){ +var _10=Math.min(this.getTime()||0,this.duration); +var _11=this.flashMedia.getLoaded(); +this.percentDownloaded=Math.ceil(_11.bytesLoaded/_11.bytesTotal*100); +this.onDownloaded(this.percentDownloaded); +this.onPosition(_10); +if(this.duration){ +this._checkBuffer(_10,_11.buffer); +} +this._updateHandle=setTimeout(_1.hitch(this,"_update"),this.updateTime); +},destroy:function(){ +clearTimeout(this._updateHandle); +_1.disconnect(this._positionHandle); +this.inherited(arguments); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLVideo.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLVideo.js.uncompressed.js new file mode 100644 index 00000000..f70121fb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/FLVideo.js.uncompressed.js @@ -0,0 +1,322 @@ +define("dojox/av/FLVideo", ['dojo', 'dijit', 'dijit/_Widget', 'dojox/embed/Flash', 'dojox/av/_Media'], +function(dojo, dijit, _Widget, Flash, _Media){ + +dojo.experimental("dojox.av.FLVideo"); + +return dojo.declare("dojox.av.FLVideo", [_Widget, _Media], { + + // summary: + // Inserts a Flash FLV video into the HTML page and provides methods + // and events for controlling the video. Also plays the H264/M4V codec + // with a little trickery: change the '.M4V' extension to '.flv'. + // example: + // markup: + // |
    + // example: + // programmatic: + // | new dojox.av.FLVideo({ + // | initialVolume:.7, + // | mediaUrl:"../resources/Grog.flv" + // | }, "vid"); + + // mediaUrl: String + // REQUIRED: The Url of the video file that will be played. + // NOTE: Must be either an absolute URL or relative to the HTML file. + // Relative paths will be converted to absolute paths + + // _swfPath: Uri + // The path to the video player SWF resource + _swfPath: dojo.moduleUrl("dojox.av", "resources/video.swf"), + + constructor: function(/*Object*/options){ + // Provide this function for the SWF to ensure that the it is playing + // in HTML. + dojo.global.swfIsInHTML = function(){ return true; } + }, + + postCreate: function(){ + // summary: + // Initialize the media. + + this._subs = []; + this._cons = []; + this.mediaUrl = this._normalizeUrl(this.mediaUrl); + this.initialVolume = this._normalizeVolume(this.initialVolume); + + var args = { + path:this._swfPath, + width:"100%", + height:"100%", + minimumVersion:9, + expressInstall:true, + params:{ + allowFullScreen: this.allowFullScreen, + wmode:this.wmode, + allowScriptAccess:this.allowScriptAccess, + allowNetworking:this.allowNetworking + }, + // only pass in simple variables - no deep objects + vars:{ + videoUrl:this.mediaUrl, + id:this.id, + autoPlay:this.autoPlay, + volume:this.initialVolume, + isDebug:this.isDebug + } + }; + + // Setting up dojo.subscribes that listens to events + // from the player + this._sub("stageClick", "onClick"); + this._sub("stageSized", "onSwfSized"); + this._sub("mediaStatus", "onPlayerStatus"); + this._sub("mediaMeta", "onMetaData"); + this._sub("mediaError", "onError"); + this._sub("mediaStart", "onStart"); + this._sub("mediaEnd", "onEnd"); + + this._flashObject = new dojox.embed.Flash(args, this.domNode); + this._flashObject.onError = function(err){ + console.error("Flash Error:", err); + }; + this._flashObject.onLoad = dojo.hitch(this, function(mov){ + this.flashMedia = mov; + this.isPlaying = this.autoPlay; + this.isStopped = !this.autoPlay; + this.onLoad(this.flashMedia); + this._initStatus(); + this._update(); + }); + this.inherited(arguments); + }, + + // ============================= // + // Methods to control the player // + // ============================= // + + play: function(/* String? */newUrl){ + // summary: + // Plays the video. If an url is passed in, plays the new link. + this.isPlaying = true; + this.isStopped = false; + this.flashMedia.doPlay(this._normalizeUrl(newUrl)); + }, + + pause: function(){ + // summary: + // Pauses the video + this.isPlaying = false; + this.isStopped = false; + if(this.onPaused){ + this.onPaused(); + } + this.flashMedia.pause(); + }, + + seek: function(/* Float */ time ){ + // summary: + // Goes to the time passed in the argument + this.flashMedia.seek(time); + }, + + + // ===================== // + // Player Getter/Setters // + // ===================== // + + volume: function(/* Float */ vol){ + // summary: + // Sets the volume of the video to the time in the + // vol: + // between 0 - 1. + if(vol){ + if(!this.flashMedia) { + this.initialVolume = vol; + } + this.flashMedia.setVolume(this._normalizeVolume(vol)); + } + if(!this.flashMedia || !this.flashMedia.doGetVolume) { + return this.initialVolume; + } + return this.flashMedia.getVolume(); // Float + }, + + // ============= // + // Player Events // + // ============= // + + /*===== + onLoad: function(mov){ + // summary: + // Fired when the SWF player has loaded + // NOT when the video has loaded + }, + + onDownloaded: function(percent){ + // summary: + // Fires the amount of that the media has been + // downloaded. Number, 0-100 + }, + + onClick: function(evt){ + // summary: + // Fires when the player is clicked + // Could be used to toggle play/pause, or + // do an external activity, like opening a new + // window. + }, + + onSwfSized: function(data){ + // summary: + // Fired on SWF resize, or when its + // toggled between fullscreen. + }, + + onMetaData: function(data, evt){ + // summary: + // The video properties. Width, height, duration, etc. + // + // NOTE: if data is empty, this is an older FLV with no meta data. + // Duration cannot be determined. In original FLVs, duration + // could only be obtained with Flash Media Server. + // + // NOTE: Older FLVs can still return width and height + // and will do so on a second event call + }, + + onPosition: function( time){ + // summary: + // The position of the playhead in seconds + }, + + onStart: function( data){ + // summary: + // Fires when video starts + // Good for setting the play button to pause + // during an autoPlay for example + }, + + onPlay: function(data){ + // summary: + // Fires when video starts and resumes + }, + + onPause: function(data){ + // summary: + // Fires when the pause button is clicked + }, + + onEnd: function(data){ + // summary: + // Fires when video ends + // Could be used to change pause button to play + // or show a post video graphic, like YouTube + }, + + onStop: function(){ + // summary: + // Fire when the Stop button is clicked + + // TODO: This is not hooked up yet and shouldn't + // fire. + }, + + onBuffer: function(isBuffering){ + // summary: + // Fires a boolean to tell if media + // is paused for buffering or if buffering + // has finished + this.isBuffering = isBuffering; + }, + + onError: function(data, url){ + // summary: + // Fired when the player encounters an error + // example: + // | console.warn("ERROR-"+data.type.toUpperCase()+":", + // | data.info.code, " - URL:", url); + }, + + onStatus: function(data){ + // summary: + // Simple status + }, + + onPlayerStatus: function(data){ + // summary: + // The status of the video from the SWF + // playing, stopped, bufering, etc. + }, + + onResize: function(){ + // summary: + // Fired on page resize + }, + =====*/ + + // =============== // + // Private Methods // + // =============== // + + _checkBuffer: function(/* Float */time, /* Float */bufferLength){ + // summary: + // Checks that there is a proper buffer time between + // current playhead time and the amount of data loaded. + // Works only on FLVs with a duration (not older). Pauses + // the video while continuing download. + + if(this.percentDownloaded == 100){ + if(this.isBuffering){ + this.onBuffer(false); + this.flashMedia.doPlay(); + } + return; + } + + if(!this.isBuffering && bufferLength<.1){ + this.onBuffer(true); + this.flashMedia.pause(); + return; + } + + var timePercentLoad = this.percentDownloaded*.01*this.duration; + + // check if start buffer needed + if(!this.isBuffering && time+this.minBufferTime*.001>timePercentLoad){ + this.onBuffer(true); + this.flashMedia.pause(); + + // check if end buffer needed + }else if(this.isBuffering && time+this.bufferTime*.001<=timePercentLoad){ + this.onBuffer(false); + this.flashMedia.doPlay(); + } + + }, + _update: function(){ + // summary: + // Helper function to fire onPosition, check download progress, + // and check buffer. + var time = Math.min(this.getTime() || 0, this.duration); + + var dObj = this.flashMedia.getLoaded(); + this.percentDownloaded = Math.ceil(dObj.bytesLoaded/dObj.bytesTotal*100); + this.onDownloaded(this.percentDownloaded); + this.onPosition(time); + if(this.duration){ + this._checkBuffer(time, dObj.buffer); + } + // FIXME: need to remove this on destroy + this._updateHandle = setTimeout(dojo.hitch(this, "_update"), this.updateTime); + }, + + destroy: function(){ + clearTimeout(this._updateHandle); + dojo.disconnect(this._positionHandle); + this.inherited(arguments); + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/README new file mode 100644 index 00000000..b249a2e1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/README @@ -0,0 +1,65 @@ +------------------------------------------------------------------------------- +DojoX Audio/Video +------------------------------------------------------------------------------- +Version 0.1 +Release date: 01/15/2008 +------------------------------------------------------------------------------- +Project state: +experimental +------------------------------------------------------------------------------- +Credits + Tom Trenka (ttrenka AT gmail.com) + Mike Wilcox (AnM8tR AT Yahoo.com) +------------------------------------------------------------------------------- +Project description + +DojoX A/V aims to bring audio and video capabilities to the Open Web, first +by wrapping common media types (Flash and Quicktime) and then by providing +easy to use objects to accomplish basic A/V tasks. As of version 0.1, only +the base is included (Flash and Quicktime embedding mechanisms); in the near +future, usable objects will appear, both in raw programmatic form and also with +Dijit-compatible wrappers. +------------------------------------------------------------------------------- +Dependencies: + +DojoX A/V depends on dojox.embed, and uses Flash movies created in the deft +project using Flex OSS 3. You do not need any of the deft code; compiled +movies are included with dojox.av. If you want to modify the actual movies, +you can look in the deft project (under the package deft.av). +------------------------------------------------------------------------------- +Documentation + +TBD. +------------------------------------------------------------------------------- +Included media: + +Video: +test/video/Grog.flv and test/video/OldMan.flv are both created by Mike Wilcox +and may be freely used and distributed in any way. I only ask for credit if +widely shown. + +Audio: +test/audio/Ola.mp3, test/audio/Hio.mp3, test/audio/FuzzWah.mp3 are from a +sounds effects CD and are not to be redistributed. They will most likely +be swapped out when a better open source option is avaialable. + +------------------------------------------------------------------------------- +Installation instructions + +Grab the following from the Dojo SVN Repository: + +http://svn.dojotoolkit.org/src/dojox/trunk/embed/* +http://svn.dojotoolkit.org/src/dojox/trunk/av/* + +Install into the following directory structure: +/dojox/av/ + +...which should be at the same level as your Dojo checkout. + +------------------------------------------------------------------------------- +Change history + +2008-01-15 Initial checkin, with basic movie embedding code. +2008-06-04 Removed the base code, after moving it into dojox.embed and modifying it. +2008-08-14 Implemented FLVideo for Flash Video +2009-02-08 Implemented FLAudio for Flash Audio diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/_Media.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/_Media.js new file mode 100644 index 00000000..bd4bd6b4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/_Media.js @@ -0,0 +1,117 @@ +//>>built +define("dojox/av/_Media",["dojo"],function(_1){ +_1.experimental("dojox.av.FLVideo"); +return _1.declare("dojox.av._Media",null,{mediaUrl:"",initialVolume:1,autoPlay:false,bufferTime:2000,minBufferTime:300,updateTime:100,id:"",isDebug:false,percentDownloaded:0,_flashObject:null,flashMedia:null,allowScriptAccess:"always",allowNetworking:"all",wmode:"transparent",allowFullScreen:true,_initStatus:function(){ +this.status="ready"; +this._positionHandle=_1.connect(this,"onPosition",this,"_figureStatus"); +},getTime:function(){ +return this.flashMedia.getTime(); +},onLoad:function(_2){ +},onDownloaded:function(_3){ +},onClick:function(_4){ +},onSwfSized:function(_5){ +},onMetaData:function(_6,_7){ +console.warn("onMeta",_6); +this.duration=_6.duration; +},onPosition:function(_8){ +},onStart:function(_9){ +},onPlay:function(_a){ +},onPause:function(_b){ +},onEnd:function(_c){ +},onStop:function(){ +},onBuffer:function(_d){ +this.isBuffering=_d; +},onError:function(_e,_f){ +console.warn("ERROR-"+_e.type.toUpperCase()+":",_e.info.code," - URL:",_f); +},onStatus:function(_10){ +},onPlayerStatus:function(_11){ +},onResize:function(){ +},_figureStatus:function(){ +var pos=this.getTime(); +if(this.status=="stopping"){ +this.status="stopped"; +this.onStop(this._eventFactory()); +}else{ +if(this.status=="ending"&&pos==this._prevPos){ +this.status="ended"; +this.onEnd(this._eventFactory()); +}else{ +if(this.duration&&pos>this.duration-0.5){ +this.status="ending"; +}else{ +if(pos===0){ +if(this.status=="ready"){ +}else{ +this.status="stopped"; +if(this._prevStatus!="stopped"){ +this.onStop(this._eventFactory()); +} +} +}else{ +if(this.status=="ready"){ +this.status="started"; +this.onStart(this._eventFactory()); +this.onPlay(this._eventFactory()); +}else{ +if(this.isBuffering){ +this.status="buffering"; +}else{ +if(this.status=="started"||(this.status=="playing"&&pos!=this._prevPos)){ +this.status="playing"; +}else{ +if(!this.isStopped&&this.status=="playing"&&pos==this._prevPos){ +this.status="paused"; +console.warn("pause",pos,this._prevPos); +if(this.status!=this._prevStatus){ +this.onPause(this._eventFactory()); +} +}else{ +if((this.status=="paused"||this.status=="stopped")&&pos!=this._prevPos){ +this.status="started"; +this.onPlay(this._eventFactory()); +} +} +} +} +} +} +} +} +} +this._prevPos=pos; +this._prevStatus=this.status; +this.onStatus(this.status); +},_eventFactory:function(){ +var evt={status:this.status}; +return evt; +},_sub:function(_12,_13){ +_1.subscribe(this.id+"/"+_12,this,_13); +},_normalizeVolume:function(vol){ +if(vol>1){ +while(vol>1){ +vol*=0.1; +} +} +return vol; +},_normalizeUrl:function(_14){ +if(_14&&(_14.toLowerCase().indexOf("http")<0||_14.indexOf("/")==0)){ +var loc=window.location.href.split("/"); +loc.pop(); +loc=loc.join("/")+"/"; +_14=loc+_14; +} +return _14; +},destroy:function(){ +if(!this.flashMedia){ +this._cons.push(_1.connect(this,"onLoad",this,"destroy")); +return; +} +_1.forEach(this._subs,function(s){ +_1.unsubscribe(s); +}); +_1.forEach(this._cons,function(c){ +_1.disconnect(c); +}); +this._flashObject.destroy(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/_Media.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/_Media.js.uncompressed.js new file mode 100644 index 00000000..5f0d0c3d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/_Media.js.uncompressed.js @@ -0,0 +1,356 @@ +define("dojox/av/_Media", ['dojo'],function(dojo){ + + dojo.experimental("dojox.av.FLVideo"); + + return dojo.declare("dojox.av._Media", null, { + // summary: + // Used as a mixin for dojox and AIR media + // description: + // Calculates the current status of the playing media and fires + // the appropriate events. + + mediaUrl:"", + + // initialVolume: Float? + // The initial volume setting of the player. Acccepts between 0 and 1. + initialVolume:1, + + // autoPlay:Boolean? + // Whether the video automatically plays on load or not. + autoPlay: false, + + // bufferTime: Number? + // Time in milliseconds that the video should be loaded before it will + // play. May pause and resume to build up buffer. Prevents stuttering. + // + // Note: Older FLVs, without a duration, cannot be buffered. + bufferTime: 2000, + + // minBufferTime: Number + // Time in milliseconds between the playhead time and loaded time that + // will trigger the buffer. When buffer is triggered, video will pause + // until the bufferTime amount is buffered. + // Note: Should be a small number, greater than zero. + minBufferTime:300, + + // updateTime: Number + // How often, in milliseconds to get an update of the video position. + updateTime: 100, + + // id: String? + // The id of this widget and the id of the SWF movie. + id:"", + + // isDebug: Boolean? + // Setting to true tells the SWF to output log messages to Firebug. + isDebug: false, + + // percentDownloaded: read-only-Number + // The percentage the media has downloaded; from 0-100 + percentDownloaded:0, + + // _flashObject: read-only-Object + // The dojox.embed object + _flashObject:null, + + // flashMedia: read-only-SWF + // The SWF object. Methods are passed to this. + flashMedia:null, + + // allowScriptAccess: String + // Whether the SWF can access the container JS + allowScriptAccess:"always", + + // allowNetworking: String + // Whether SWF is restricted to a domain + allowNetworking: "all", + + // wmode: String + // The render type of the SWF + wmode: "transparent", + + // allowFullScreen: Boolean + // Whether to allow the SWF to go to fullscreen + allowFullScreen:true, + + _initStatus: function(){ + // summary: + // Connect mediaStatus to the media. + // + this.status = "ready"; + this._positionHandle = dojo.connect(this, "onPosition", this, "_figureStatus"); + + }, + + // ============== // + // Player Getters // + // ============== // + + getTime: function(){ + // summary: + // Returns the current time of the video + + // Note: + // Consider the onPosition event, which returns + // the time at a set interval. Too many trips to + // the SWF could impact performance. + return this.flashMedia.getTime(); // Float + }, + + // ============= // + // Player Events // + // ============= // + + onLoad: function(/* SWF */ mov){ + // summary: + // Fired when the SWF player has loaded + // NOT when the video has loaded + }, + + onDownloaded: function(/* Number */percent){ + // summary: + // Fires the amount of that the media has been + // downloaded. Number, 0-100 + }, + + onClick: function(/* Object */ evt){ + // summary: + // Fires when the player is clicked + // Could be used to toggle play/pause, or + // do an external activity, like opening a new + // window. + + // TODO: Return x/y of click + }, + + onSwfSized: function(/* Object */ data){ + // summary: + // Fired on SWF resize, or when its + // toggled between fullscreen. + }, + + onMetaData: function(/* Object */ data, /* Object */ evt){ + // summary: + // The video properties. Width, height, duration, etc. + + // NOTE: if data is empty, this is an older FLV with no meta data. + // Duration cannot be determined. In original FLVs, duration + // could only be obtained with Flash Media Server. + // NOTE: Older FLVs can still return width and height + // and will do so on a second event call + + console.warn("onMeta", data) + this.duration = data.duration; + }, + + onPosition: function(/* Float */ time){ + // summary: + // The position of the playhead in seconds + }, + + onStart: function(/* Object */ data){ + // summary: + // Fires when video starts + // Good for setting the play button to pause + // during an autoPlay for example + }, + + onPlay: function(/* Object */ data){ + // summary: + // Fires when video starts and resumes + }, + + onPause: function(/* Object */ data){ + // summary: + // Fires when the pause button is clicked + }, + + onEnd: function(/* Object */ data){ + // summary: + // Fires when video ends + // Could be used to change pause button to play + // or show a post video graphic, like YouTube + }, + + onStop: function(){ + // summary: + // Fire when the Stop button is clicked + + // TODO: This is not hooked up yet and shouldn't + // fire. + }, + + onBuffer: function(/* Boolean */ isBuffering){ + // summary: + // Fires a boolean to tell if media + // is paused for buffering or if buffering + // has finished + this.isBuffering = isBuffering; + }, + + onError: function(/* Object */ data, /* String */ url){ + // summary: + // Fired when the player encounters an error + // example: + // | console.warn("ERROR-"+data.type.toUpperCase()+":", + // | data.info.code, " - URL:", url); + console.warn("ERROR-"+data.type.toUpperCase()+":", data.info.code, " - URL:", url); + }, + + onStatus: function(/* Object */data){ + // summary: + // Simple status + }, + + onPlayerStatus: function(/* Object */data){ + // summary: + // The status of the video from the SWF + // playing, stopped, bufering, etc. + }, + + onResize: function(){ + + }, + + _figureStatus: function(){ + // summary: + // Calculate media status, based on playhead movement, and + // onStop and onStart events + + // TODO: + // Figure in real status from the media for more accurate results. + + var pos = this.getTime(); + //console.log(pos, this.duration, (pos>this.duration-.5), (this.duration && pos>this.duration-.5)) + + if(this.status=="stopping"){ + // stop was fired, need to fake pos==0 + this.status = "stopped"; + this.onStop(this._eventFactory()); + + }else if(this.status=="ending" && pos==this._prevPos){ + this.status = "ended"; + this.onEnd(this._eventFactory()); + + }else if(this.duration && pos>this.duration-.5){ + this.status="ending" + + }else if(pos===0 ){//|| this.status == "stopped" + if(this.status == "ready"){ + //never played + }else{ + //stopped + this.status = "stopped"; + if(this._prevStatus != "stopped"){ + this.onStop(this._eventFactory()); + } + } + + }else{ + // pos > 0 + if(this.status == "ready"){ + //started + this.status = "started"; + this.onStart(this._eventFactory()); + this.onPlay(this._eventFactory()); + + }else if(this.isBuffering){ + this.status = "buffering"; + + }else if(this.status == "started" || (this.status == "playing" && pos != this._prevPos)){ + this.status = "playing"; + //this.onPosition(this._eventFactory()); + + }else if(!this.isStopped && this.status == "playing" && pos == this._prevPos){ + this.status = "paused"; + console.warn("pause", pos, this._prevPos) + if(this.status != this._prevStatus){ + this.onPause(this._eventFactory()); + } + + }else if((this.status == "paused" ||this.status == "stopped") && pos != this._prevPos){ + this.status = "started"; + this.onPlay(this._eventFactory()); + } + } + + this._prevPos = pos; + this._prevStatus = this.status; + this.onStatus(this.status); + + + }, + + _eventFactory: function(){ + // summary: + // Creates a generic event object. + // + var evt = { + //position:this._channel.position, + //seconds:this.toSeconds(this._channel.position*.001), + //percentPlayed:this._getPercent(), + status:this.status + }; + return evt; // Object + }, + + + + _sub: function(topic, method){ + // summary: + // helper for subscribing to topics + dojo.subscribe(this.id+"/"+topic, this, method); + }, + + _normalizeVolume: function(vol){ + // summary: + // Ensures volume is less than one + // + if(vol>1){ + while(vol>1){ + vol*=.1 + } + } + return vol; + }, + + _normalizeUrl: function(_url){ + // summary: + // Checks that path is relative to HTML file or + // converts it to an absolute path. + + console.log(" url:", _url); + + if(_url && (_url.toLowerCase().indexOf("http")<0 || _url.indexOf("/") == 0)){ + // + // Appears to be a relative path. Attempt to convert it to absolute, + // so it will better target the SWF. + var loc = window.location.href.split("/"); + loc.pop(); + + loc = loc.join("/")+"/"; + console.log(" loc:", loc); + _url = loc+_url; + } + return _url; + }, + + destroy: function(){ + // summary: + // destroys flash + if(!this.flashMedia){ + this._cons.push(dojo.connect(this, "onLoad", this, "destroy")); + return; + } + dojo.forEach(this._subs, function(s){ + dojo.unsubscribe(s); + }); + dojo.forEach(this._cons, function(c){ + dojo.disconnect(c); + }); + this._flashObject.destroy(); + //dojo._destroyElement(this.flashDiv); + + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/resources/audio.swf b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/resources/audio.swf new file mode 100644 index 0000000000000000000000000000000000000000..c436539c02e34988450bd55b6442875c34703e87 GIT binary patch literal 7348 zcmV;l982RvS5prCF8}~|+KqY%U>nzQ=$pmvJ}dx|0Cu)uUWorrRlpa`?{n0 zMc*yH_LcdZ+9YAbp%p>fR;j76*-gRtRP%Hq9!dvMCIeaV$*ZR@7SriKG?EPKiMDj? zLM%ROF0le-G{JbWd%w^P4dRwO+^xdxdcDL-h#gu{p z4>aFkYzu<>*G4+sZ`ux!4q${5{&}S4wuWQ4;TcCrH&Wx;%y@TS zdpZ<}lP{NjX(u6wB1S@+(svOzX(AGQ4IG3B2LJr%&=&+E&cq`j*&jHs2UBu?dMcnN z=#h9ls%tTMFqMeJCZ+a7Lc2uS0!`XXF=yWqM_-A=^n{D=UXwniS?kys=Z(V`>qXnIO_Sfi6#tT>s{Qt4!GETt!Aw5Z7VNYh$6sf)=}d|FBBDRYjD zJ)~DA3xG)uaI#lC8DVOO(YO|JqaV#gLVAZ5jRv&fg`|_qiXJusDb}*I>$5VVXjEAU!#WMyA1dEQwaHy(zZU!j|W4v(^+LeWoLxj-^C4azsJ{`XqJ| zmz;Pk3w@@*DJ>O5Z+4n?Pp2Z$q{R2EWZKfxq9{QP`*4CDV!G-fg>fFxwa_JsM(IuI zQzb|iyufG%xtYx|6UiLgv`~mz=ZD5)U5P|IA?T6f)ppS%@=!tx>WTF?*V;sSS0hbF zlW_kc!K&Xzv~onn8Z#AqRfvRaXpy36JrP7=Q@^q`qmD41Sv}-I`=m~;M%WpInaY{M zhehTbXHZjLI&Qj~BNk8jqI`~nJ6nj&qCuPy)1#K(Wra{ zQ#T7#W-f{c2qRt|h~Biv>J~@hd>5@@$+UH(t+9Q4%5-yO92ZQ@Xo;jUZbUE}Xvquq zh~@ouhQqL@+4CrQoNqXdBs)Jw*1Z4_!#X`=cX6R;k zN{T5xnX;j)i9z&LWgJ)T(9jzdZAObkwLnytrxUsnxhSPBP3uYfIOB0bo3@YZF@_D% zKq5Yy)DvPLo(hXBfY`^;%ZHGwS{KG8MQl*LypE%jqHPq!|2J47VO-J>VUd&K~{TW4P<2zqfzL4eO~Ptul52b{@SqZgA; z&(MiJD@i6VB{6W?2lZeY6Wt|fbfUk;XFKCl7@i#5h>2e2^NDyo<%kx>7)MwN$26AQ zWR*87rA_zO54Sg7peLLHHyM2xPYbAXjJJY6H z`PeMqHcThjUzL%!H#9Y2i5Kz(^Vt~3H=~n7JX7Lp5Vxm`QJCwrGuBp5L-U z#m$Z9v@&!P9()=5Sf@&?;Js9oNAQ^D%8yuVD-2kSE70*+S73)RuRz8^Ny+K~dbBju zd!lQ=jaqX(`Y=uFC{D4p9~V*jm==|zJZ6>j$9?=@S_w*u;9gv$Rt6NO)5)-GVv2A} z@L>B)8_`5M7Gsql&p~qBEEbbI{K{BhbX}Yl?z|HwX+lTS1oi4rJeX#e0JMf#us5aR zX0&#N;^*T{R$Tzio-Rv5Zf67M7U_{Dwxd372Z_fD&_Q#eiut;0<8Sj1V}vg(QZf}v zj=8>xqhkMXU!OSQ@9ngmKG9dT*3-@U4Nv{F zQs|YVhux9Zq7fs4RRat8{dh!`;TX#?q1INo2kwP)Fe<1HP=r<=ID~t)2sXW-E$7vnl_5ZW(PNq zuQ8v08htTc4<&u^nC?S(YBuiE5|i9iNtb!$3Fs`ZRj(GGC#qmx2eA_`C9KM0<$}Fn z(njuRJ|4y!eGN4YzA&C%R_p|HJ?68@ZWb_`oICTMHlK4E*`~sYczQCdm}ZUXDaY_Y z-++Es8jqqqpWke~oqJrpey)*uh3NI0S;L;sN8Z6g(UM>%58c};JL4FVFLk49Q|7-Y zZ?Wme`S4=T*FdsalTmg9z>QM4NBd{+#0>g}`#THSma?5^eE5=Bh{lrac3PZVGj!t3 z!Dm)qt#;PO60DV)HCSsor{zb@7qs$rt50MOVh^Pg+;3%E9!+h-Dhpkp(Ne$F=L}rJ zIAxwb2k#HXQ(AO)1ytB892M>=uS6=gRBf%Oui93%9sA8y`>PICv{fChYR6H(MA*0D z;~j_Evuusy_$SpNHx%K=l_9Ua zxRp|{wIHo`*MH(vfr5>KNI{|?Q=n8(sLe^iMQugYR!oHwDtf3~N`*2ims7cd%9T{E zqVhT_S5vu$%Im3IOXUqz-biI1l{Zm&Go^J@X`rq~3OlGvrLLXS)kKS0sB0H>l~Y#* zbyZSV6?N^Vu#Q4Cg&GR$Db!NfKw%>VA9d}au3M<*+DerJ)P0D; z5egj?Iw^Ef=%#R#LJuwNrKQJcX&)^;LCgHK^dv34gO&}@(sEi_K}#!XX%#IUq@_a? zhAE6tI7Q(!g)_ADEG<1pOYfwmqqKC4mX1@HprBC*PzX{8QP63*K{1R%m_mfYc?uUO zL@7*Bh*5}Bn5J+Sg#@igQb^ItG_9PWm9w<+BCWhcEAOUo53PI)t-P03{vL(5Qn-w! ze;c+d*zUu2KhVlKY!6`nL2Pfw_6WAeuswn8Dz>MwJ&Wxf*xrfl-PqoX?fuxE$Mzz& zm#}>h+lR1S$M*Z!J_@wz6ZrlVQ1MlKe;V6s*ggZw5l|*UDF<{J3V#4fB`8&(bO5#e zDH4AT+t;yu1C%;}*8CaJnm-4n0sZ9-Bwqw&SX4&Pb-n}2UxHX8Dn~@6LsU9N<&;Qk zz6Z(~Q8|tHzd`E11*J@?K@a;OC_h3^+wx-s{xi0pV*44ke*q;W)0$~o-=VY$%D)0t zeu?c8Rqm!rn$n{Gi%z0^2SE=Dl-4{Z(4uFtT|))KuD0Wg#HVTS^Y$7Fs;v{v|K4f9DZDP)_nOS=ad(;uKmDICG z1Cw?e6L&jbv5~L1gG-_U*}4-*eG`y|W+2;IfNb9dq;WTp9eaSNw*c9BE0Ct!fHdC@ zq-8IVUHgFSZUwSuzn~P8gXDmql#r9;prCljFv0ZTC8z7!&`JP@`13HXC)(QidPjJ_ zgFibtq>I_J8z0BvC4YpSuIdodZBd z2W@0*P$1(&HZn0J5N+5-0>c6cjtC@lN+9}aAjTOWlV^d1&jE?t3FQ1JkPCzqD`U*{ z#)%-131X9pR%$EJyrMf$DtQ84*&8gSr9rQ~tkMxe_jEXPkFCn^i0dXjQgzrP*F-#Y z{dteQ_JT**aLVJ@81*=PTga{UDUa>8m`A)l?veIRd*pq4J+$>Mf|)l>>(= zl5FJ^TRDx2kr{#~c$P>axkzM@T=Lis-|Z3G@9{`S-r|uv?)A`4!(;FIJ&)4;R*&Q8 zW$-wAPI+9tQBTpaw}Gel_!aP!^qu#(PuvF{PyhYk@%jfU<^WfD2;c#9GwET#41#Ct zQGkcg-K56>vk4xACjlNtx09X%%q)aT&j37%?k8OX%rZogo&$Is-B5ZLV8$U%={*2X zqDxBe1I#|8NSX(D3P`c^0$?U0CDI1~o&n;PUIxrc#3Q`|a1Dr8`Y>RIBBjzt0GN zg7JR1EG$lJ$Qko6*XY4>y#8q&ld(rQREgUG8P zEet|eLArMVo=N*^$ZiHvRzvnMh{J}EicAaI=qr#lJ_vq8;5_#-o=yQA4hQ1Cig2h$ zdY4UbxYC)HQ;l!1Ie*CDxN(1k`%~uMD`2-eW0ae{KSp4M+1->e)|+cX zwfqxyA$c(-0nzlc5<#$u_DsvzSXLXuv74bJRC^3{^5l`@S#2DV-aK*~k)?U$L{^(X zWLX|Lfyi>qiIU8{7f}@`p3R+U8T|+_`GnI@8{UBMN&!q3p$094<0{6|!NyrFG!a5R z>qLaqBGZt!4E=S#F^zhE6GkB0{rdp^j{?)a`esDmx`C+XW<-B+1JU}M5oK;5s%1o# zNMxe3H=sA%j7RPUqK!8rTDXD8cQc}I-$1l!jioo|E&Vae(n4)`Bf__=?0B6`5~Z^^ zVT6P?Wrj(3Gka{o`I&6EA(IPl%PfSqX98llF*CX~V>BMy3gNnpQ8!^XK8}uioBtCa ztYGRhM!ki(ondf=tpb)Q<+wukEyTm(RVLegD_Ezxo*~O_MEZ9!=^Jj2Yht)<3|IME zOpQ;1Hi+o$zXSa#(1sA*xLPEvb?QhDCol%l$#(oMP^=@VpyWP_fh?yULDGPPq{vV0C=6Z)^{=2X`YfoY z3WLwVu;~9hz$$?H*HDVJVf|7=Pz*>{k$XTgwJd+v@^U6OanN`K{QEE@?zq;-a>Vw4 zIOD|{Z566MyaOZQ_gN(5&_~S)b>@b)6r&%$dqoSTg6N)FQ9)d-f@rC5rZD&dsKbT9 zCqW%43_fM)CR)15dEGeRi{KTQVgV7g5(A>8)q~5+3topM|C3BolyR4gA#Dtg6J^`L zHYj5>WQ=VYWBV~GU8ajTIcIX;k~0qFwAZk=IcK!-UPE{XYHNH6Jd|x^o&U>#ulfR@ zo&j)`-8Njs%TvwX9HyCxgSo6f&eq>!L-(mRF(}q!z_Gk%QQVS0@PA+(cw23_1mU-` z(5hf4y=$0gcOl?5NwSHk%BCxe*=N9;)LlCeyLD#$;>she`#hF(B z5q#a#!W;+h6-Ap^pJ`FwgozD?rv4MmXXkSxw#)L;#2U*j9JAqoAZB-FT5Y6R2~2`iR<8-LvD8&UuUPWI*bwct_BSU zC`7`0h7cW0dDNd{NM^DyaBm(J(#$bO@Ae&_a4WF3;=pq|v_{`=jzp*46sK0`F zEjgA(KTMCMR2zONer5cM`29D)$NyoEe+Tu~pbF}LfchK$?>|BPFBo=cDHOh)ZCfL% zpBl|!{>x#py8v^GIcDJ8oVy4E_5XuBYJLuV?g%s3X0*uN+3veRrC8VE@!oC?ZP$4e z=xIR84grsOTc*V~x0E%$&83%^RlW^9btJu5M}i_A6Upsj$3zN<8|IdBSJR8TCDHR! zJRFi;%psRfsmLZiFEBPi#dlc_I@D!QFAF1r`Zhtmg6|Olp`v=95R}yWg`hn8mTdQ1 zARVN*O3=Q*R9TpFqgX273YKP=asu+)9FxL{Qn=h7XHvKV&JDOszI zAkX`{@3k>l4v83_`GCY|+;|r+%r~j$1NHzdLuWuXSGeTT6-K(-<@EHTrCfIB0$Qp| zR&3&PB8x>qd0UX8!R!+=JZtk@z#dEN5fu4TV)mi#pP=H|0L681+UVT@85P8t0W@DR z!L{tFtqf0APJK{Vz=%GNwx4IQc_F|Pfcqs*L(4WWnui3;bd2bVNrd}qQoWT^{TG;I zZx;fx@y04L(IPv|$$kT6nEKqu`QX=pE=E};Qv%wGa-VwIoQhCnDy}eH!%yV=zPh}OoVr=MFmn|@lUQ0o zSqVEAOIhxxR~DJT93hldVvj?aBO(Eq1bEn)9M1^W+6x#Ray&XP0IqVBFnrt;n;V9bpIu`zXGByF#ItI@$DRsQh2*ICrswxq%$Glh3E--9K$ zlh;sqk{1`Qrk55>~?<- z$o$;m#H_c7T|?CO3OWC@;KnnD4EmWxno(n3{Y_jf&}11+DGp}Wg3M`t7M(pfEt#F4 zdjkc^S^}M1lh*FYr?tPf(wbBoK7jB6R^GhEa@icH4}mrZV-JA(FlZ0J*n_ABXb-~J zLwG7cdkDtfj(!c=+hOcs^h?klhOtM`F+h6+#vTRr8fcHg*khnR2ijvW_BierXph6# z6KHwRo`A6@L46-+Pr}$$Q0GCr3S&=!`T}TA!PwKFegL$mVeA=DUk2?N7<(4fS3r9f z#;$?-VbHF@*gHV|2x#wsvF8AD;B!pLK^qohcVt?y=3Sb24hzfggLgOEz0{Js26xYb zH3r26dDM$QJE`0;=op#C2tsro@7JdCyS zD>&;AmdYsb8FoY4$ZlvoUMyTQ_%?n5;iLG*Ye+`@FwQ`-vy809B=aCy9a$l{Zjzj1 zwfM8Z?sESOERJ&`_cj)XepqS0aKC`?kcIPy*#-Abwv*-_jWR)fxQ$!4{>p|| z^vhe{$XYk_JJ?!T>)J8Kt{t~xy>j_qVUa1mj$KN6j9&r+o}N;u*q+*$;GQCzmdgzHA;;hHu1kLGPHIPKQ8jg{36=_vd9oF;>Se-Ok+2{ zCVh&}MMm8?KbUuKqZ_G0Y>!no>dF|y*RPqsb7l;@D|TGJ#(5(=+=b6m;SRGj)Y+U$ z(=VLn;y;0{Z_*dBGDNh&1T?Ka$z(te;@7jM`SmPgoM1&zWxmiER|n3d;bo@68pKA zE%*fF%=_SZwni0SDF-h>GTq|8K10Piw=J a{jgWc{twCeW7ekpUv^{VK>iyn=Ji^kPbF9Y literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/resources/version.mov b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/resources/version.mov new file mode 100644 index 0000000000000000000000000000000000000000..4f2cb73f57df73c31567ff3d24519e5f34ce89c7 GIT binary patch literal 1667 zcmb_c&1(}u6rXJpX={oe0!<}{0eh%YmbA1qEtV!V)duW`ZP9`jI>}6$B|F)4cd~6n zrHB_V9z07=UV8EBNf3mBe}bYHLGbED5DM|V-A&u1EmH6$FYo*JX5P$%5JHQpUfoob z(nyG)BrOzKk(T9x%am@3W9Z|%&j-kabgY88NHl`qBWf|g-DancGEdVw0Qau4Ss8*4 zRoUx#3Htr?dmf@Ko+xhXbC?+#w|(`DU)pFuB+A7$4l*8O#U14hA5H86 zhfW576R?^BNF?+(V<<892m=9O4Gz5q9CK8`3jB~8c@28B#uf8@9g|XcI&F>={qivG zXFIZu%?DtK>G=cy@J6?j_SeZT&XI#<|^VO5~R)w42>Qob4fBT7Izo>h#) zjRe^X+$4{mEt|lz&TuO)Xil;X zu_PF;Lk>JG2^Y}oAH9EP;U*c>UV*=BS(pnTNms@+Z=r(JS+s>fxdnd;AR7|acg%*X z$5|= I%pY(17j@rRcK`qY literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/resources/video.swf b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/resources/video.swf new file mode 100644 index 0000000000000000000000000000000000000000..f2f7ed3213e384f6b8446e3a7fbdf48a63ca2b63 GIT binary patch literal 6873 zcmV;~8YbmKS5poLEC2v_+I>0)bQ{O9J9~#)96*8qnO@k-mPJdlC>D`2 zMbIp27Rv#+BVd65jY3McW7D$bUX$3VPUI5DiDSnpPIr2bod8rMrT6yJd;Yio|M;_e z2NqfR6z6VsW_EUVc6MftPsfS;GeSI15mE)D!?&Cea&y_&fsh@^u-Q7$(d9or8H=Y{ zakR4`l1@*xHaE}A%rwnxX-Xs~nm29VzP-6+bMxlS8&P6o>O?%PAKw^Ht!>yP6m%G= zP%=7|jwa%MKGuVYOnPTSgRM0jnpZlNNydcAaH!dc8Iwjlooe3HvN+AvyaA&B$1~R(QuJClO|)DA7n{a zCKemSjT-SzPH>2)Ykwk>G6bp&rjyb5grhB))K4gVnaQA$R06?kjZm8HNhD&19(Q(S z;vv2_PoI$JA~`3MJxkLztpk%(#&*Mx)y2=}tY9PW0m%ZlMD= zXXulvu$yBpK|L4^rz4g?w-KF)q>IOJBT2MZEW@Uf#&pz}DJ~EbvCO1V6isnori3q@ zd>a^D>0&XX-yXRmda8iSlZmiVv{-LxBEF!ZJ%Ryd6er^7&6^5O;LzG~NFv7jD0mZ}ivhF5bk5pN0`!OX-2Mi9fp zNnyOyT$I~tbKQ%$GQVTqMFer_DhpAuG`5}5lxWqikbTkzW z#^&R%CmuGAGkajgY%i)Y(6LJwC{SINr#kesj%a(v=ubp3S&WGTWzkdze@n5%ghNo| zXxvQ5GkP-aFu2#Ga5O2WF`yWKph1pEG#!dKCZorraqi2wA!FW|RO7sA#PBejW0RKa z)Ul~VDm|?yQ|g!*#d@Ttjya>YN1dF9iC1?PSniZ=8deTV$!Q~%mN0PT5XP#6*Fzmc zMeTYhVyODG9*ybf6Q!+vs3*{;=ptb#`#Xoa104#+QX~;B?&|679BU8k@9*s#>MY`m zv?nH~Vn*8VaMs}1U}tY<`%q^`G3TWQv0#SMM%ZSyxAnCn-)6S!@euM0%;EmtKwC$F zIXo2;k!v&i2LgKsItK?WW`8mZ8lltPeFEBWZZC@DyaN~Jr=P)FxbPrQY;u4Oi}KfB8xdV)Hc-9;}$IIcDd&n z14FI?J(*VRh5I_3*0S-it-pP^vp>+&H)QF@c$(tz~mNqio;0u@GFo^B+{e|F>G=l9;a5&m>CV<=&fC|wKWk_+}! zykz^n*Ep;4;y!lURjdgUpMp3xv<}`GpC~RcL^docjCfX@AMorrFDJ6(ygJO5^I|+< zmMk9d?3oHBrVKTMS=>ZB!ggzvNk?NTbASaST(kt&Dq272t+JB~*X*JD+~ zah|08>4ZO)K>r$k5qYhChln60B0{8QzN2g6C*5S>eTj5e0-aR$8g62${53SpS2as| z$0i$X8q9=3n0+f2rtHa>rjcyo?VG!8@Ni$dwLv8mi}J2lPp7fQ%!_-vdfNuO{XEfb z+_-TU9ETG=%uRkCQU16w0INXcY4HO3uaB#$=X zz9sw)m8UYPh%=l?3i+at9v{T!b%?h#MS3P2P4I{b;Wv&53VWc6k0hL8xP(mDK&8b( zg0~8sQEV~nQO%N8rzvDtqgFq^ZaWo!9M$cV`BU+yPfQ`spIa-TQmS-RmQ__aNM%*! zippJ8yDQtO+N(Moq-vmQsB*aKVAUbS#~p8oQ4fs%WE5C-(ql}I)I?7;- zQJv8ss|+z3X4GKRWORbj2%}L(uVwTYqcKJ&8I3cVV04Pn>ljTknqoA~Xok^gMrRm3 z&gcn7uV?fIMsH-xUdQN7jNZ)XEx_ol2&WM4K)4Ix9)$Z49zb{q;SC56BfJUWEeLNz zcogBC2#+B=f$%Pbrx2b7Ccg*Y??re9@%Q2TS%l{h-jDD+!UqsOh`bNs`@;w?AbbSW zk7ATmf?5M=Kd50)KMP3zJi-?czJ%~qSb@*4BYXpxltm3WggJyWz^cz8oCEbr%4&ZE zto9_VkkoS^G5TX*m;4kb{S4vf2){u1B?|ur>AwZ_4=7W8Lj4O!>emtW$c+9KCH{uc zt^NxfjQSa^MNeT!oqTSi_r;_7;Sa6L<^kiY3fuDsI2-lUExw26!kIcRv$-r z0^t>Kt54$lT?kJhyo%#@Bb-9m1=bc2N)(HwAm$dXpg>(qrKt-Qa_cA) zGK*Q%<+K;GkHEFqGFU7+FITWvE%B-j0&9HS;!;A&NI4-Dq>@{)jF2j_oNKA(j}=_k zO8%(frbw$$#^qW~h@aF7bPeiQ3v2Nd>wrj?0Fmo~I2wQ`>wvKJK%9+uEE|BhG$8Jc zK#H1x6gLC$v;ZmD1jM@;h;Iv!(yc(sE(KD48Ia0ts_G(Z$mOb9L^crcs>P&f<#ujv zD>wHFZtf0l?oMvxF8;WZKX!BL+k|0z#Is#IJAgEI0%_?2vS}}n&D}t@^Z?nq56Gox z+GS|kHZ<*WG;RA;Kw8nfD|#u}(JPUiXxc6`?aKYCT0*)>pQ?Jv012pSDLF{|UbT!I zarg6szM9)JAiOll9X5n0m4<;_gC00~U@aLrD3Q^Fl#CssWc;wIR*(=q0wjD55CiRY z9px9mHR6+&kNV{5F`r|_xKCNB`&doT=Uf%?sjI_2m*4QYYwH}QPpY5r$qf;oV_npz ztiRUB8aI+Q^%%xKi4i>NNg^>4FO&AfOXc=NnWH07s&r13v9767=iYtJ>wMBxNuS)C z@;UaWeM(=(#{$y?R5DZQ?4K!9uO6yAj=E+6P7tb`1h}3^%54BQ5Lvk$;6~z5?gV%p zQIxv@ZX!&%7vN^%RPG0u#RFF!1h@qcU3opgNj!MvjR3de;VX{-+=c<5ycysW27&Tc zfZH(;l(z%ifx)1>1K>^!2<0@uT^JO~;{bPKU?@)l+=IcPl9W#xz88G*fx{$7)MZd2 z16d2(WP+{w<#=m%1IR?`f&DU(2cb_UjzbWTiK2sFCd`DxGI35|u5hYSwq-BR7n16F zf@WK?J!HI3dpC5Y;pEv|{c^lRd&lpC@%zDi0Q3ie;}3!PdeGk>aM^q#WX($g4+G^x z$$SKdb%mkBd=m~E#PITwHzWQQFy9JYxNq}q&~+`$s^{j+w?ipj*Ex>pkHVb!DEPdD zXf^d(xL&K&J`KZ?kb4KzS7YYO)<-Jm%y(k1f;dMaHFM@^EWG~M;pt}6%Dszoi|4d^k7J&6xvv#@^*Uy@(%|qQdryDaZrK-z=ayjz} zh^)#6>iKLLGmxv8&t4noCN|NbAh9*uf`)&QyVZOW(0c95Hm-d|AnyY0lB~Ikd*keQ zU_4;n3EI~nkfNwTk*vkW1KQ&YRK`u%#!ZNBxC5~~r zQ^KgI&$iT&^f@o4NEKaQo6XIcPeGs&<{nC)o6DK+hKgV2^C+zr_REFL)j1SFs*4*| zBKDiBBYfrtPIhB|;!-U)Xxs%wiwGMzp?DFYi4#0rzsu4TXy!^vIAtQ+;>9eiqKC9E zfc`XiG5x4w_>vf6_VZ$1O0vU?vrCGDd!cfnv<**4$`e+p=bhg|%kQ zEf#h~*4%1g+q33o3%fjPZnCh;vSzb|eG7J1Acm$bqnH^QvMmM~S6jy411;n4MR*3` zeF$FsJw$56PoxCJt0+h^x?%KagMJjp%PEy)7a!;JqvJ<$XVo%NYA`yFmST||?=#c5 z-nZcZLI)8!C%8Lno=K`UciwS-A0-;r0Xc-Dw?C)K`UVSkg-@ib} ze=(sSTp(0?F`*w`AhZS(wnGv57e{OH03>g=W#s+9Pe45cHIZ$5d6=T7t?;=-rm|c; z{ydC-0L%{pBDqE%cBbnOkgg8_MW@%JfKtYz>3oX;xk>zHpPQt+FX<-u;lPXB2LOv2 zX^>r#d@n|we^w1C{!<|~OlH;db&v_kb9lQmA%{1JH)<{@<2qcXj)a^+rh+>Q^!`x<%rUT=+qig-QqNGZ0JxgfL0`UhdN>hyg!pLeQGXHb3!7YoWk zN5v!gd=712MbJt>m%8h>ML;*$VcQTbM$7eXv|GUW8G z;Cpih8SYKa1?7=zbHV|0UDr}>y_5NVgw{KqEZ1E}&d)1R%YTO()qV%nSXb&#p7s8K z4}UL)4LE$6kP&CD%L%!1Y$Gux)wfX6(oZB>x%Ir^K+ODJ9#I;hsEaS zaoA%I{edq4uLmuPLv=k*MIHS+>TgKY>F{gg%jD5nRy@L{(5)`%{p zUGPtW_6jO(HNOPfs{;8l3{#w<3ifT*^yBDqVOvPn{u_d_U82yr+W!=W!0(&(zl9<7 zHsUZ}7)m^1wOMKp<@ti<5CzTQlvg~E&pS%<`IdaXJD(rV=Z$>+0a4jDagWb%k5{2P z_f)1YB${V=A1|mAER^D0R@|$^&a2Z}>pJ+F?X}3|{z2(fWLusYu$}As5cH-+B z5ZRUGty9*#GQz9y7Rjl)p1}mR?(DjA>&~wW$?HOnbs=S4h~W~Y5Ae2TXXb3y+?6?J z^;4PiRy&nx49RDnzyvp!!>70&gZNVwh&J8_HT_yg3c%8gn;~*$v=r;kLK=DunQzLU^86E{Jytq8+|j ztMl5%``KdAx9#C)CWx2wM&%OTxwQG5){%LIYxY<}jd;aLiq33%K|_P3K@eLnAYR3Z zSMU~U8CScT_i$XD=$h?0JNT+@!8UUsda9iid(f%^X?Bhm0=*YUb9#<@a@Twhw%ZJ& z{FRE;oon~$g8j@voQfrohv^>!4Pv78=5W@mvJLuOZjIhoTZk-4|PoJ3~#k}TR&$fD=%EGpMT z_9J~CZ?>?d9GxB}`ZN-*ayTS;G}}^p@?7p=?Lk`I!ZXKttYNaZlGiZ#%qnEfja-L~ z`*)!0I?%rZn`O!Ob1Yx7Q}XgM^sx32t;VEUVqT zBROYvB;zwa%uW98f~)~CZeSORcY9Z2V6@D&93hS88(TI^@~^r#Q-j7J5TrFuX)lyD zZ1_I>0N{t%%`g&>uw^JmUoPm(%>{lW7VbwY)!XgP+5rD4)HZGYn0G7H5xf}F4LT0c zh?&yEgcxAiqdiIw2wS)~`sE#T4+sl+%~iOZrHIoWc?30BCg-@x=PqJ06>D}w!+2QO z{S)ASr?{HO1Rkhm1R6WABn}1(aqv?+4jeU+KBN!vICu)TGjSR7DjKuBM1E! z7{yZcM$k{f=&hhV0{X2mdK+kO2K_b|Jq6lZK|ckfw}XbC>9@n^9q16y?|@PK3Ox<_ zoiKVA;J2rK7mVHw+LNH)4Wst}2I)O~Q^OKQ>DA&>^8ENcSciWGrJH%6rq7E`%ck*! zj4#ZuZLr=cpLr;K{*28se-0Jr^7**~aPr)EA0BOrHeduE;Kz>NDz=nQ#p6Wu0MUO2 zHf=8O3&2=7zuRD0p&OgyD z-4%b%=TTu!eAtij>at!`m**Qx(Pis%mejN2uL8Nq5E{{+HHXY!Lu3#qjPWeX-DVD< z6UTXK7g>C$E?+Kg+q^ik^+Ia>&A(5r%ucO-R32PNt)V5y6E4T>co?(GW7rE|H~%=k zehb(ENoZYz0 zSq0aSsO;D%4(>fD^EWuHy%#f>`FBL#$B}=)d}nw^p-P*Dp!ugAG|rmHVWgLr@jp1* T|HG=O@ZURkBklhH$V~3{8`win literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/PlayButton.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/PlayButton.js new file mode 100644 index 00000000..4c40d560 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/PlayButton.js @@ -0,0 +1,34 @@ +//>>built +define("dojox/av/widget/PlayButton",["dojo","dijit","dijit/_Widget","dijit/_TemplatedMixin"],function(_1,_2,_3,_4){ +return _1.declare("dojox.av.widget.PlayButton",[_3,_4],{templateString:_1.cache("dojox.av.widget","resources/PlayButton.html"),postCreate:function(){ +this.showPlay(); +},setMedia:function(_5){ +this.media=_5; +_1.connect(this.media,"onEnd",this,"showPlay"); +_1.connect(this.media,"onStart",this,"showPause"); +},onClick:function(){ +if(this._mode=="play"){ +this.onPlay(); +}else{ +this.onPause(); +} +},onPlay:function(){ +if(this.media){ +this.media.play(); +} +this.showPause(); +},onPause:function(){ +if(this.media){ +this.media.pause(); +} +this.showPlay(); +},showPlay:function(){ +this._mode="play"; +_1.removeClass(this.domNode,"Pause"); +_1.addClass(this.domNode,"Play"); +},showPause:function(){ +this._mode="pause"; +_1.addClass(this.domNode,"Pause"); +_1.removeClass(this.domNode,"Play"); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/PlayButton.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/PlayButton.js.uncompressed.js new file mode 100644 index 00000000..5263aa59 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/PlayButton.js.uncompressed.js @@ -0,0 +1,74 @@ +define("dojox/av/widget/PlayButton", ['dojo', 'dijit', 'dijit/_Widget', 'dijit/_TemplatedMixin'],function(dojo, dijit, _Widget, _TemplatedMixin){ + +return dojo.declare("dojox.av.widget.PlayButton", [_Widget, _TemplatedMixin], { + // summary: + // A Play/Pause button widget to use with dojox.av.widget.Player + + templateString: dojo.cache("dojox.av.widget","resources/PlayButton.html"), + + postCreate: function(){ + // summary: + // Initialize button. + this.showPlay(); + }, + + setMedia: function(/* Object */med){ + // summary: + // A common method to set the media in all Player widgets. + // May do connections and initializations. + + this.media = med; + dojo.connect(this.media, "onEnd", this, "showPlay"); + dojo.connect(this.media, "onStart", this, "showPause"); + }, + + onClick: function(){ + // summary: + // Fired on play or pause click. + + if(this._mode=="play"){ + this.onPlay(); + }else{ + this.onPause(); + } + }, + + onPlay: function(){ + // summary: + // Fired on play click. + + if(this.media){ + this.media.play(); + } + this.showPause(); + }, + onPause: function(){ + // summary: + // Fired on pause click. + + if(this.media){ + this.media.pause(); + } + this.showPlay(); + }, + showPlay: function(){ + // summary: + // Toggles the pause button invisible and the play + // button visible.. + + this._mode = "play"; + dojo.removeClass(this.domNode, "Pause"); + dojo.addClass(this.domNode, "Play"); + }, + showPause: function(){ + // summary: + // Toggles the play button invisible and the pause + // button visible. + + this._mode = "pause"; + dojo.addClass(this.domNode, "Pause"); + dojo.removeClass(this.domNode, "Play"); + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Player.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Player.js new file mode 100644 index 00000000..f8a45a4a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Player.js @@ -0,0 +1,69 @@ +//>>built +define("dojox/av/widget/Player",["dojo","dijit","dijit/_Widget","dijit/_TemplatedMixin"],function(_1,_2,_3,_4){ +_1.experimental("dojox.av.widget.Player"); +return _1.declare("dojox.av.widget.Player",[_3,_4],{playerWidth:"480px",widgetsInTemplate:true,templateString:_1.cache("dojox.av.widget","resources/Player.html"),_fillContent:function(){ +if(!this.items&&this.srcNodeRef){ +this.items=[]; +var _5=_1.query("*",this.srcNodeRef); +_1.forEach(_5,function(n){ +this.items.push(n); +},this); +} +},postCreate:function(){ +_1.style(this.domNode,"width",this.playerWidth+(_1.isString(this.playerWidth)?"":"px")); +if(_1.isString(this.playerWidth)&&this.playerWidth.indexOf("%")){ +_1.connect(window,"resize",this,"onResize"); +} +this.children=[]; +var _6; +_1.forEach(this.items,function(n,i){ +n.id=_2.getUniqueId("player_control"); +switch(_1.attr(n,"controlType")){ +case "play": +this.playContainer.appendChild(n); +break; +case "volume": +this.controlsBottom.appendChild(n); +break; +case "status": +this.statusContainer.appendChild(n); +break; +case "progress": +case "slider": +this.progressContainer.appendChild(n); +break; +case "video": +this.mediaNode=n; +this.playerScreen.appendChild(n); +break; +default: +} +this.items[i]=n.id; +},this); +},startup:function(){ +this.media=_2.byId(this.mediaNode.id); +if(!_1.isAIR){ +_1.style(this.media.domNode,"width","100%"); +_1.style(this.media.domNode,"height","100%"); +} +_1.forEach(this.items,function(id){ +if(id!==this.mediaNode.id){ +var _7=_2.byId(id); +this.children.push(_7); +if(_7){ +_7.setMedia(this.media,this); +} +} +},this); +},onResize:function(_8){ +var _9=_1.marginBox(this.domNode); +if(this.media&&this.media.onResize!==null){ +this.media.onResize(_9); +} +_1.forEach(this.children,function(_a){ +if(_a.onResize){ +_a.onResize(_9); +} +}); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Player.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Player.js.uncompressed.js new file mode 100644 index 00000000..74d7bc0f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Player.js.uncompressed.js @@ -0,0 +1,126 @@ +define("dojox/av/widget/Player", ['dojo', 'dijit', 'dijit/_Widget', 'dijit/_TemplatedMixin'],function(dojo, dijit, _Widget, _TemplatedMixin){ + +dojo.experimental("dojox.av.widget.Player"); + +return dojo.declare("dojox.av.widget.Player", [_Widget, _TemplatedMixin], { + // summary: + // A Media Player UI widget for all types of dojox.av and AIR media. + // description: + // Currently for markup only. All controls should reside as child + // nodes within the Player node. 'controlType' is used to determine + // the placement of the control. If no type or an unrecognized type + // is used, it will be left-aligned in the same row as the volume. + // + // Note: + // Be sure to use 'controlType' as a node attribute. It is not a + // property of the widget. + // example: + // |
    + // |
    + // |
    + // |
    + // |
    + // |
    + // |
    + + // playerWidth: Number|String + // Sets the width of the player (not the video size) + // Number will be converted to pixels + // String will be used literally. EX: "320px" or "100%" + playerWidth: "480px", + + // TODO: + //playerHeight + //videoWidth: 320, + //videoHeight: 240, + + widgetsInTemplate:true, + templateString: dojo.cache("dojox.av.widget","resources/Player.html"), + + _fillContent: function(){ + // summary: + // Finding and collecting child nodes + if(!this.items && this.srcNodeRef){ + this.items = []; + var nodes = dojo.query("*", this.srcNodeRef); + dojo.forEach(nodes, function(n){ + this.items.push(n); + }, this); + } + }, + + postCreate: function(){ + // summary: + // Do player styling, and place child widgets in the proper location. + + dojo.style(this.domNode, "width", this.playerWidth+(dojo.isString(this.playerWidth)?"":"px")); + + if(dojo.isString(this.playerWidth) && this.playerWidth.indexOf("%")){ + dojo.connect(window, "resize", this, "onResize"); + } + this.children = []; + var domNode; + dojo.forEach(this.items, function(n, i){ + n.id = dijit.getUniqueId("player_control"); + switch(dojo.attr(n, "controlType")){ + case "play": + this.playContainer.appendChild(n); break; + case "volume" : + this.controlsBottom.appendChild(n); break; + case "status" : + this.statusContainer.appendChild(n); break; + case "progress": + case "slider": + this.progressContainer.appendChild(n); break; + case "video": + this.mediaNode = n; + this.playerScreen.appendChild(n); break; + default: + + } + this.items[i] = n.id; + }, this); + + }, + startup: function(){ + // summary: + // Fired when all children are ready. Set the media in + // all children with setMedia() + + this.media = dijit.byId(this.mediaNode.id); + if(!dojo.isAIR){ + dojo.style(this.media.domNode, "width", "100%"); + dojo.style(this.media.domNode, "height", "100%"); + } + dojo.forEach(this.items, function(id){ + if(id !== this.mediaNode.id){ + var child = dijit.byId(id); + this.children.push(child); + if(child){ + child.setMedia(this.media, this); + } + } + }, this); + }, + + onResize: function(evt){ + // summary: + // If a player size is a percentage, this will fire an onResize + // event for all children, passing the size of the player. + + var dim = dojo.marginBox(this.domNode); + if(this.media && this.media.onResize !== null){ + this.media.onResize(dim); + } + dojo.forEach(this.children, function(child){ + if(child.onResize){ + child.onResize(dim); + } + }); + } + +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/ProgressSlider.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/ProgressSlider.js new file mode 100644 index 00000000..dc3d6614 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/ProgressSlider.js @@ -0,0 +1,78 @@ +//>>built +define("dojox/av/widget/ProgressSlider",["dojo","dijit","dijit/_Widget","dijit/_TemplatedMixin"],function(_1,_2,_3,_4){ +return _1.declare("dojox.av.widget.ProgressSlider",[_3,_4],{templateString:_1.cache("dojox.av.widget","resources/ProgressSlider.html"),postCreate:function(){ +this.seeking=false; +this.handleWidth=_1.marginBox(this.handle).w; +var _5=_1.coords(this.domNode); +this.finalWidth=_5.w; +this.width=_5.w-this.handleWidth; +this.x=_5.x; +_1.setSelectable(this.domNode,false); +_1.setSelectable(this.handle,false); +},setMedia:function(_6,_7){ +this.playerWidget=_7; +this.media=_6; +_1.connect(this.media,"onMetaData",this,function(_8){ +if(_8&&_8.duration){ +this.duration=_8.duration; +} +}); +_1.connect(this.media,"onEnd",this,function(){ +_1.disconnect(this.posCon); +this.setHandle(this.duration); +}); +_1.connect(this.media,"onStart",this,function(){ +this.posCon=_1.connect(this.media,"onPosition",this,"setHandle"); +}); +_1.connect(this.media,"onDownloaded",this,function(_9){ +this.setLoadedPosition(_9*0.01); +this.width=this.finalWidth*0.01*_9; +}); +},onDrag:function(_a){ +var x=_a.clientX-this.x; +if(x<0){ +x=0; +} +if(x>this.width-this.handleWidth){ +x=this.width-this.handleWidth; +} +var p=x/this.finalWidth; +this.media.seek(this.duration*p); +_1.style(this.handle,"marginLeft",x+"px"); +_1.style(this.progressPosition,"width",x+"px"); +},startDrag:function(){ +_1.setSelectable(this.playerWidget.domNode,false); +this.seeking=true; +this.cmove=_1.connect(_1.doc,"mousemove",this,"onDrag"); +this.cup=_1.connect(_1.doc,"mouseup",this,"endDrag"); +},endDrag:function(){ +_1.setSelectable(this.playerWidget.domNode,true); +this.seeking=false; +if(this.cmove){ +_1.disconnect(this.cmove); +} +if(this.cup){ +_1.disconnect(this.cup); +} +this.handleOut(); +},setHandle:function(_b){ +if(!this.seeking){ +var w=this.width-this.handleWidth; +var p=_b/this.duration; +var x=p*w; +_1.style(this.handle,"marginLeft",x+"px"); +_1.style(this.progressPosition,"width",x+"px"); +} +},setLoadedPosition:function(_c){ +_1.style(this.progressLoaded,"width",(this.finalWidth*_c)+"px"); +},handleOver:function(){ +_1.addClass(this.handle,"over"); +},handleOut:function(){ +if(!this.seeking){ +_1.removeClass(this.handle,"over"); +} +},onResize:function(_d){ +var _e=_1.coords(this.domNode); +this.finalWidth=_e.w; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/ProgressSlider.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/ProgressSlider.js.uncompressed.js new file mode 100644 index 00000000..0e40c20c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/ProgressSlider.js.uncompressed.js @@ -0,0 +1,132 @@ +define("dojox/av/widget/ProgressSlider", ['dojo', 'dijit', 'dijit/_Widget', 'dijit/_TemplatedMixin'],function(dojo, dijit, _Widget, _TemplatedMixin){ + +return dojo.declare("dojox.av.widget.ProgressSlider", [_Widget, _TemplatedMixin], { + // summary: + // A custom slider widget to use with dojox.av.widget.Player. + // description: + // Displays the current playhead position of the media. Has two + // progress bars: one for playhead position, and one for download + // progress. + + templateString: dojo.cache("dojox.av.widget","resources/ProgressSlider.html"), + postCreate: function(){ + // summary: + // Initialize slider. + + this.seeking = false; + this.handleWidth = dojo.marginBox(this.handle).w; + var dim = dojo.coords(this.domNode); + this.finalWidth = dim.w + this.width = dim.w-this.handleWidth; + this.x = dim.x; + + dojo.setSelectable(this.domNode, false); + dojo.setSelectable(this.handle, false); + }, + setMedia: function(/* Object */med, playerWidget){ + // summary: + // A common method to set the media in all Player widgets. + // May do connections and initializations. + + this.playerWidget = playerWidget; + this.media = med; + dojo.connect(this.media, "onMetaData", this, function(data){ + if(data && data.duration){ + this.duration = data.duration; + } + }); + dojo.connect(this.media, "onEnd", this, function(){ + dojo.disconnect(this.posCon); + this.setHandle(this.duration); + }); + dojo.connect(this.media, "onStart", this, function(){ + this.posCon = dojo.connect(this.media, "onPosition", this, "setHandle"); + }); + + dojo.connect(this.media, "onDownloaded", this, function(percent){ + this.setLoadedPosition(percent*.01); + this.width = this.finalWidth * .01 * percent; + }); + + }, + onDrag: function(/* HTMLEvent */ evt){ + // summary: + // Fired when the mouse is moved. Sets the slider. + + var x = evt.clientX - this.x; + if(x<0) x = 0; + if(x>this.width-this.handleWidth) x=this.width-this.handleWidth; + + var p = x/this.finalWidth; + this.media.seek( this.duration * p ); + dojo.style(this.handle, "marginLeft", x+"px"); + dojo.style(this.progressPosition, "width", x+"px"); + }, + startDrag: function(){ + // summary: + // Fired onmousedown of the slider handle. + + dojo.setSelectable(this.playerWidget.domNode, false); + this.seeking = true; + this.cmove = dojo.connect(dojo.doc, "mousemove", this, "onDrag"); + this.cup = dojo.connect(dojo.doc, "mouseup", this, "endDrag"); + }, + endDrag: function(){ + // summary: + // Fired on document.onmouseup. + + dojo.setSelectable(this.playerWidget.domNode, true); + this.seeking = false; + if(this.cmove) dojo.disconnect(this.cmove); + if(this.cup) dojo.disconnect(this.cup); + this.handleOut(); + }, + + setHandle: function(time){ + // summary: + // Sets the slider handle (when it is not being dragged) + + if(!this.seeking){ + var w = this.width-this.handleWidth; + var p = time/this.duration; + var x = p*w; + + dojo.style(this.handle, "marginLeft", x+"px"); + dojo.style(this.progressPosition, "width", x+"px"); + } + }, + + setLoadedPosition: function(decimal){ + // summary: + // Sets the download progress bar to the percentage of how much + // the media has been downloaded. + dojo.style(this.progressLoaded, "width", (this.finalWidth*decimal)+"px"); + }, + + handleOver: function(){ + // summary: + // Highlights the slider handle on mouseover, and + // stays highlighted during drag. + + dojo.addClass(this.handle, "over"); + }, + handleOut: function(){ + // summary: + // Unhighlights handle onmouseover, or on endDrag. + + if(!this.seeking){ + dojo.removeClass(this.handle, "over"); + } + }, + onResize: function(playerDimensions){ + // summary: + // Handles player resize. Need to recalculate the width of + // position an download bars. + var dim = dojo.coords(this.domNode); + this.finalWidth = dim.w; + + } + +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Status.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Status.js new file mode 100644 index 00000000..96586703 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Status.js @@ -0,0 +1,78 @@ +//>>built +define("dojox/av/widget/Status",["dojo","dijit","dijit/_Widget","dijit/_TemplatedMixin"],function(_1,_2,_3,_4){ +return _1.declare("dojox.av.widget.Status",[_3,_4],{templateString:_1.cache("dojox.av.widget","resources/Status.html"),setMedia:function(_5){ +this.media=_5; +_1.connect(this.media,"onMetaData",this,function(_6){ +this.duration=_6.duration; +this.durNode.innerHTML=this.toSeconds(this.duration); +}); +_1.connect(this.media,"onPosition",this,function(_7){ +this.timeNode.innerHTML=this.toSeconds(_7); +}); +var _8=["onMetaData","onPosition","onStart","onBuffer","onPlay","onPaused","onStop","onEnd","onError","onLoad"]; +_1.forEach(_8,function(c){ +_1.connect(this.media,c,this,c); +},this); +},onMetaData:function(_9){ +this.duration=_9.duration; +this.durNode.innerHTML=this.toSeconds(this.duration); +if(this.media.title){ +this.title=this.media.title; +}else{ +var a=this.media.mediaUrl.split("/"); +var b=a[a.length-1].split(".")[0]; +this.title=b; +} +},onBuffer:function(_a){ +this.isBuffering=_a; +console.warn("status onBuffer",this.isBuffering); +if(this.isBuffering){ +this.setStatus("buffering..."); +}else{ +this.setStatus("Playing"); +} +},onPosition:function(_b){ +},onStart:function(){ +this.setStatus("Starting"); +},onPlay:function(){ +this.setStatus("Playing"); +},onPaused:function(){ +this.setStatus("Paused"); +},onStop:function(){ +this.setStatus("Stopped"); +},onEnd:function(){ +this.setStatus("Stopped"); +},onError:function(_c){ +var _d=_c.info.code; +if(_d=="NetStream.Play.StreamNotFound"){ +_d="Stream Not Found"; +} +this.setStatus("ERROR: "+_d,true); +},onLoad:function(){ +this.setStatus("Loading..."); +},setStatus:function(_e,_f){ +if(_f){ +_1.addClass(this.titleNode,"statusError"); +}else{ +_1.removeClass(this.titleNode,"statusError"); +if(this.isBuffering){ +_e="buffering..."; +} +} +this.titleNode.innerHTML=""+this.title+" "+_e+""; +},toSeconds:function(_10){ +var ts=_10.toString(); +if(ts.indexOf(".")<0){ +ts+=".00"; +}else{ +if(ts.length-ts.indexOf(".")==2){ +ts+="0"; +}else{ +if(ts.length-ts.indexOf(".")>2){ +ts=ts.substring(0,ts.indexOf(".")+3); +} +} +} +return ts; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Status.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Status.js.uncompressed.js new file mode 100644 index 00000000..ce3aa106 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/Status.js.uncompressed.js @@ -0,0 +1,112 @@ +define("dojox/av/widget/Status", ['dojo', 'dijit', 'dijit/_Widget', 'dijit/_TemplatedMixin'],function(dojo, dijit, _Widget, _TemplatedMixin){ + +return dojo.declare("dojox.av.widget.Status", [_Widget, _TemplatedMixin], { + // summary: + // A Status widget to use with dojox.av.widget.Player + // description: + // Displays the name of the media file, and it's current status + // (playing, paused, buffering, etc.) in the middle. Displays + // the playhead time on the left and the duration on the right. + + templateString: dojo.cache("dojox.av.widget","resources/Status.html"), + + setMedia: function(/* Object */med){ + // summary: + // A common method to set the media in all Player widgets. + // May do connections and initializations. + + this.media = med; + dojo.connect(this.media, "onMetaData", this, function(data){ + this.duration = data.duration; + this.durNode.innerHTML = this.toSeconds(this.duration); + }); + dojo.connect(this.media, "onPosition", this, function(time){ + this.timeNode.innerHTML = this.toSeconds(time); + }); + + var cons = ["onMetaData", "onPosition", "onStart", "onBuffer", "onPlay", "onPaused", "onStop", "onEnd", "onError", "onLoad"]; + dojo.forEach(cons, function(c){ + dojo.connect(this.media, c, this, c); + }, this); + + }, + onMetaData: function(data){ + this.duration = data.duration; + this.durNode.innerHTML = this.toSeconds(this.duration); + if(this.media.title){ + this.title = this.media.title; + }else{ + var a = this.media.mediaUrl.split("/"); + var b = a[a.length-1].split(".")[0]; + this.title = b; + } + }, + onBuffer: function(isBuffering){ + this.isBuffering = isBuffering; + console.warn("status onBuffer", this.isBuffering); + if(this.isBuffering){ + this.setStatus("buffering..."); + }else{ + this.setStatus("Playing"); + } + }, + onPosition:function(time){ + //console.log("onPosition:", time) + // this.timeNode.innerHTML = this.toSeconds(time); + }, + onStart: function(){ + this.setStatus("Starting"); + }, + onPlay: function(){ + this.setStatus("Playing"); + }, + onPaused: function(){ + this.setStatus("Paused"); + }, + onStop: function(){ + this.setStatus("Stopped"); + }, + onEnd: function(){ + this.setStatus("Stopped"); + }, + onError: function(evt){ + console.log("status error:", evt) + var msg = evt.info.code; + if(msg == "NetStream.Play.StreamNotFound"){ + msg = "Stream Not Found" + } + this.setStatus("ERROR: "+ msg, true); + }, + onLoad: function(){ + this.setStatus("Loading..."); + }, + + setStatus: function(str, isError){ + if(isError){ + dojo.addClass(this.titleNode, "statusError"); + }else{ + dojo.removeClass(this.titleNode, "statusError"); + if(this.isBuffering){ + str = "buffering..."; + } + } + //console.log(this.titleNode, "title:",this.title, "str:",str) + this.titleNode.innerHTML = ''+this.title+' '+str+''; + }, + + toSeconds: function(time){ + var ts = time.toString() + + if(ts.indexOf(".")<0){ + ts += ".00" + }else if(ts.length - ts.indexOf(".")==2){ + ts+="0" + }else if(ts.length - ts.indexOf(".")>2){ + ts = ts.substring(0, ts.indexOf(".")+3) + } + return ts; + } + +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/VolumeButton.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/VolumeButton.js new file mode 100644 index 00000000..eaf6dd3a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/VolumeButton.js @@ -0,0 +1,107 @@ +//>>built +define("dojox/av/widget/VolumeButton",["dojo","dijit","dijit/_Widget","dijit/_TemplatedMixin","dijit/form/Button"],function(_1,_2,_3,_4,_5){ +return _1.declare("dojox.av.widget.VolumeButton",[_3,_4],{templateString:_1.cache("dojox.av.widget","resources/VolumeButton.html"),postCreate:function(){ +this.handleWidth=_1.marginBox(this.handle).w; +this.width=_1.marginBox(this.volumeSlider).w; +this.slotWidth=100; +_1.setSelectable(this.handle,false); +this.volumeSlider=this.domNode.removeChild(this.volumeSlider); +},setMedia:function(_6){ +this.media=_6; +this.updateIcon(); +},updateIcon:function(_7){ +_7=(_7===undefined)?this.media.volume():_7; +if(_7===0){ +_1.attr(this.domNode,"class","Volume mute"); +}else{ +if(_7<0.334){ +_1.attr(this.domNode,"class","Volume low"); +}else{ +if(_7<0.667){ +_1.attr(this.domNode,"class","Volume med"); +}else{ +_1.attr(this.domNode,"class","Volume high"); +} +} +} +},onShowVolume:function(_8){ +if(this.showing==undefined){ +_1.body().appendChild(this.volumeSlider); +this.showing=false; +} +if(!this.showing){ +var _9=2; +var _a=7; +var _b=this.media.volume(); +var _c=this._getVolumeDim(); +var _d=this._getHandleDim(); +this.x=_c.x-this.width; +_1.style(this.volumeSlider,"display",""); +_1.style(this.volumeSlider,"top",_c.y+"px"); +_1.style(this.volumeSlider,"left",(this.x)+"px"); +var x=(this.slotWidth*_b); +_1.style(this.handle,"top",(_9+(_d.w/2))+"px"); +_1.style(this.handle,"left",(x+_a+(_d.h/2))+"px"); +this.showing=true; +this.clickOff=_1.connect(_1.doc,"onmousedown",this,"onDocClick"); +}else{ +this.onHideVolume(); +} +},onDocClick:function(_e){ +if(!_1.isDescendant(_e.target,this.domNode)&&!_1.isDescendant(_e.target,this.volumeSlider)){ +this.onHideVolume(); +} +},onHideVolume:function(){ +this.endDrag(); +_1.style(this.volumeSlider,"display","none"); +this.showing=false; +},onDrag:function(_f){ +var beg=this.handleWidth/2; +var end=beg+this.slotWidth; +var x=_f.clientX-this.x; +if(xend){ +x=end; +} +_1.style(this.handle,"left",(x)+"px"); +var p=(x-beg)/(end-beg); +this.media.volume(p); +this.updateIcon(p); +},startDrag:function(){ +this.isDragging=true; +this.cmove=_1.connect(_1.doc,"mousemove",this,"onDrag"); +this.cup=_1.connect(_1.doc,"mouseup",this,"endDrag"); +},endDrag:function(){ +this.isDragging=false; +if(this.cmove){ +_1.disconnect(this.cmove); +} +if(this.cup){ +_1.disconnect(this.cup); +} +this.handleOut(); +},handleOver:function(){ +_1.addClass(this.handle,"over"); +},handleOut:function(){ +if(!this.isDragging){ +_1.removeClass(this.handle,"over"); +} +},_getVolumeDim:function(){ +if(this._domCoords){ +return this._domCoords; +} +this._domCoords=_1.coords(this.domNode); +return this._domCoords; +},_getHandleDim:function(){ +if(this._handleCoords){ +return this._handleCoords; +} +this._handleCoords=_1.marginBox(this.handle); +return this._handleCoords; +},onResize:function(_10){ +this.onHideVolume(); +this._domCoords=null; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/VolumeButton.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/VolumeButton.js.uncompressed.js new file mode 100644 index 00000000..cc8bef73 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/VolumeButton.js.uncompressed.js @@ -0,0 +1,185 @@ +define("dojox/av/widget/VolumeButton", ['dojo', 'dijit', 'dijit/_Widget', 'dijit/_TemplatedMixin', 'dijit/form/Button'], // TODO: why button?? +function(dojo, dijit, _Widget, _TemplatedMixin, Button){ + +return dojo.declare("dojox.av.widget.VolumeButton", [_Widget, _TemplatedMixin], { + // summary: + // A volume widget to use with dojox.av.widget.Player + // description: + // Controls and displays the volume of the media. This widget + // opens a slider on click that is used to adjust the volume. + // The icon changes according to the volume level. + + templateString: dojo.cache("dojox.av.widget","resources/VolumeButton.html"), + + postCreate: function(){ + // summary: + // Initialize the widget. + // + this.handleWidth = dojo.marginBox(this.handle).w; + this.width = dojo.marginBox(this.volumeSlider).w; + this.slotWidth = 100; + dojo.setSelectable(this.handle, false); + this.volumeSlider = this.domNode.removeChild(this.volumeSlider); + }, + setMedia: function(/* Object */med){ + // summary: + // A common method to set the media in all Player widgets. + // May do connections and initializations. + // + this.media = med; + this.updateIcon(); + }, + updateIcon: function(/*Float*/ vol){ + // summary: + // Changes the icon on the button according to volume level. + // + vol = (vol===undefined) ? this.media.volume() : vol; + if(vol===0){ + dojo.attr(this.domNode, "class", "Volume mute"); + }else if(vol<.334){ + dojo.attr(this.domNode, "class", "Volume low"); + }else if(vol<.667){ + dojo.attr(this.domNode, "class", "Volume med"); + }else{ + dojo.attr(this.domNode, "class", "Volume high"); + } + }, + + onShowVolume: function(/*DOMEvent*/evt){ + // summary: + // Shows the volume slider. + // + if(this.showing==undefined){ + dojo.body().appendChild(this.volumeSlider); + this.showing = false; + } + if(!this.showing){ + + var TOPMARG = 2; + var LEFTMARG = 7; + var vol = this.media.volume(); + var dim = this._getVolumeDim(); + var hand = this._getHandleDim(); + this.x = dim.x - this.width; + + + + dojo.style(this.volumeSlider, "display", ""); + dojo.style(this.volumeSlider, "top", dim.y+"px"); + dojo.style(this.volumeSlider, "left", (this.x)+"px"); + + var x = (this.slotWidth * vol); + + dojo.style(this.handle, "top", (TOPMARG+(hand.w/2))+"px"); + dojo.style(this.handle, "left", (x+LEFTMARG+(hand.h/2))+"px"); + + this.showing = true; + //this.startDrag(); + + this.clickOff = dojo.connect(dojo.doc, "onmousedown", this, "onDocClick"); + }else{ + this.onHideVolume(); + } + }, + onDocClick: function(/*DOMEvent*/evt){ + // summary: + // Fired on document.onmousedown. Checks if clicked inside + // of this widget or not. + // + if(!dojo.isDescendant(evt.target, this.domNode) && !dojo.isDescendant(evt.target, this.volumeSlider)){ + this.onHideVolume(); + } + }, + + onHideVolume: function(){ + // summary: + // Hides volume slider. + + this.endDrag(); + dojo.style(this.volumeSlider, "display", "none"); + this.showing = false; + }, + + onDrag: function(/*DOMEvent*/evt){ + // summary: + // Fired on mousemove. Updates volume and position of + // slider handle. + var beg = this.handleWidth/2; + var end = beg + this.slotWidth + var x = evt.clientX - this.x; + if(xend) x=end; + dojo.style(this.handle, "left", (x)+"px"); + + var p = (x-beg)/(end-beg); + this.media.volume(p); + this.updateIcon(p); + }, + startDrag: function(){ + // summary: + // Fired on mousedown of the slider handle. + + this.isDragging = true; + this.cmove = dojo.connect(dojo.doc, "mousemove", this, "onDrag"); + this.cup = dojo.connect(dojo.doc, "mouseup", this, "endDrag"); + }, + endDrag: function(){ + // summary: + // Fired on mouseup of the slider handle. + + this.isDragging = false; + if(this.cmove) dojo.disconnect(this.cmove); + if(this.cup) dojo.disconnect(this.cup); + this.handleOut(); + }, + + handleOver: function(){ + // summary: + // Highlights the slider handle on mouseover, and + // stays highlighted during drag. + + dojo.addClass(this.handle, "over"); + }, + handleOut: function(){ + // summary: + // Unhighlights handle onmouseover, or on endDrag. + // + if(!this.isDragging){ + dojo.removeClass(this.handle, "over"); + } + }, + + _getVolumeDim: function(){ + // summary: + // Gets dimensions of slider background node. + // Only uses dojo.coords once, unless the page + // or player is resized. + + if(this._domCoords){ + return this._domCoords; + } + this._domCoords = dojo.coords(this.domNode); + return this._domCoords; + }, + _getHandleDim: function(){ + // summary: + // Gets dimensions of slider handle. + // Only uses dojo.marginBox once. + if(this._handleCoords){ + return this._handleCoords; + } + this._handleCoords = dojo.marginBox(this.handle); + return this._handleCoords; + }, + + onResize: function(/*Object*/playerDimensions){ + // summary: + // Fired on player resize. Zeros dimensions + // so that it can be calculated again. + + this.onHideVolume(); + this._domCoords = null; + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/PlayButton.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/PlayButton.html new file mode 100644 index 00000000..cd7c1272 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/PlayButton.html @@ -0,0 +1,3 @@ +
    +
    +
    \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/Player.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/Player.css new file mode 100644 index 00000000..13946d31 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/Player.css @@ -0,0 +1,191 @@ +.playerContainer{ + width:480px; + background:#76C8C4; + text-align:center; +} +.PlayerScreen{ + background:#00FFFF; + width:320px; + height:240px; + margin-left:auto; + margin-right:auto; +} +.Controls{ + height:85px; + background:#333333; + text-align:left; + width:100%; +} +.ControlsRight{ + vertical-align:top; +} +.ControlsBottom{ + vertical-align:bottom; +} +.StatusContainer{ + width:100%; + height:100%; +} +.PlayContainer{ + width:60px; + height:60px; +} +.Progress{ + height:10px; +} +.Time, .Duration, .Status{ + height:16px; + margin-top:0px; + color:#F5FFC8; + width:100%; +} +.Time{ + padding-left:2px; +} +.Duration{ + padding-right:2px; + text-align:right; +} +.StatusContainer{ + padding:0; + border-collapse:collapse; +} +.Status{ + height:20px; + background:#ff0000; + table-layout:fixed; +} +.Status.statusError .statusTitle, .Status.statusError .statusInfo{ + color:#FF0000; +} +.Status .statusTitle{ + font-weight:bold; + color:#A5B3E9; +} +.Status .statusInfo{ + font-weight:normal; + color:#3770D6; +} +.Time, .Duration, .Status{ + font-family:Verdana, Arial, Helvetica, sans-serif; + font-size:9px; + background:#000000; +} +.Time, .Duration{ + width:60px; +} +.Volume{ + width:30px; + height:30px; + float:right; + margin-right:2px; + margin-top:auto; + background-image:url(images/player_sprite.png); + background-repeat:no-repeat; + background-position:-1px -62px; + cursor:pointer; +} +.Volume:hover{ + background-position:-33px -62px; +} +.PlayPauseToggle{ + width:60px; + height:60px; + background-image:url(images/player_sprite.png); + background-repeat:no-repeat; + background-position:-1px -1px; + cursor:pointer; + vertical-align:middle; + line-height:60px; +} +.PlayPauseToggle:hover{ + background-position:-63px -1px; + cursor:pointer; +} +.icon{ + background-image:url(images/dojoPlayerIcons.png); + background-repeat:no-repeat; + width:22px; + height:22px; +} +.PlayPauseToggle .icon{ + position:relative; + top:19px; + left:19px; + background-position:-1px -1px; +} +.PlayPauseToggle.Play .icon{ + background-position:-1px -1px; +} +.PlayPauseToggle.Pause .icon{ + background-position:-24px -1px; +} +.Progress{ + +} +.Progress, .ProgressLoaded, .ProgressPosition, .ProgressHandle{ + height:10px; +} +.ProgressLoaded, .ProgressPosition, .ProgressHandle{ + position:absolute; +} +.ProgressLoaded{ +background:url(images/progressLoadedBk.png) repeat-x; +} +.ProgressHandle{ + background-image:url(images/sliderHandleSprite.png); + background-position:0px 0px; + width:15px; + margin-left:0px; + cursor:pointer; +} +.ProgressHandle.over{ + background-position:-15px 0px; +} +.ProgressPosition{ + background:url(images/progressPositionBk.png) repeat-x; + width:0px; +} +.VolumeSlider{ + position:absolute; +} +.VolumeSliderBack{ + width:128px; + height:30px; + background-image:url(images/player_sprite.png); + background-repeat:no-repeat; + background-position:-1px -95px; +} +.VolumeSliderHandle{ + position:absolute; + width:12px; + height:14px; + background-image:url(images/player_sprite.png); + background-repeat:no-repeat; + background-position:-1px -140px; + cursor:pointer; +} +.VolumeSliderHandle.over{ + background-position:-15px -138px; + cursor:pointer; +} +.Volume .icon{ + background-position:-60px -43px; + width:18px; + height:16px; + position:relative; + top:7px; + left:7px; +} +.Volume.mute .icon{ + background-position:-1px -43px; +} +.Volume.low .icon{ + background-position:-20px -43px; +} +.Volume.med .icon{ + background-position:-40px -43px; +} +.Volume.high .icon{ + background-position:-60px -43px; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/Player.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/Player.html new file mode 100644 index 00000000..6d464df2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/Player.html @@ -0,0 +1,20 @@ +
    +
    + + + + + + + + +
    + + + + + + +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/ProgressSlider.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/ProgressSlider.html new file mode 100644 index 00000000..2691e02b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/ProgressSlider.html @@ -0,0 +1,6 @@ +
    + +
    +
    +
    +
    \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/Status.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/Status.html new file mode 100644 index 00000000..63e411b5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/Status.html @@ -0,0 +1,7 @@ + + + + + + +
    0.00
    Loading...
    0.00
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/VolumeButton.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/VolumeButton.html new file mode 100644 index 00000000..f5d3eb9a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/VolumeButton.html @@ -0,0 +1,7 @@ +
    +
    +
    +
    +
    +
    +
    \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/dojoPlayerIcons.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/dojoPlayerIcons.png new file mode 100644 index 0000000000000000000000000000000000000000..37fe536e1cf806d0187d2e416ccdcfe442de98c7 GIT binary patch literal 3086 zcmV+p4Ds`cP)(_`g8%^e{{R4h=>PzAFaQARU;qF*m;eA5Z<1fd zMgRZ{lu1NERCwC#Tv2ly)fN8E$^krhuAz?IKtv!Sn82hdG3S2nRk466Q-Ti_8!Nu; zCFcFwTN3j@+I3qjV5;4GqR4>y!L|^$fm~T|I!4G0o}krUtfplFc8K;u0)G390=DZ` zVzT!-8-T6??#PoSBd-fy;1kG<676==iJ~_c(5>22z;<1VNqq*|0w5b#GYtc&ZNZt- z_tBe?8GTqU+F>MQK%ixRfYxIDX0+uy@HiwEzB}MF4IuN_eY6&u(N;)C-(#Trq4O}K zTX!-I6NU9M=kOr1XG55iR(e}GJVFKoK=i?u0)R$G!RXGC;XS0kE_3E*L&3~RK)s;> z>=)4J_hD!P;9#A^VPm0C;`G1(GQSvVZ%$h24bA8y0-CfVV06e`Gi{nEe5P}j7`dlM z{mn^Oz4sbu?l+^YHZ1EPSpex9I%l38p=CcC?WdRjN8LN>yNw1w(N{A8U}@zJ=Vc7( z-;U5mRK54w>)?L7cb3)tz=@DQuYepyuO{`k!}E~o zK%Y!UzYoI@2p6Cs^V(Q%qI*9E83=18NJH+@I9)x4u1`QSurxr(TpT-m*d0p`fM%em zF)}k}S|4`D62OxQaM&d;9fRCAM(1S=nLj)dKK6Vp0f3eoN}7$#%s9Q?%T64(yD`XLibb z(BG{y53iT`+P7t1algA+;i>g~zIn64Q(?vsq<^PB-EFJ(3jp7id8MwW%=)^s=&Cs5 zW5517>2Jm?Y|-49fm?#e*JYkH_D~dzjLD5L4Iz=JTF8I3$M1es;fbKJjZXa=Wh@9r zTu8vMQ4%qv-MVkeJZCbdT^*)G+ApX1_#mws5;>*6>_5sp2>@q_c1?+NT?b?On=;S! z)V&J|^j8(0D3o|b*jO;VN!P_xbeR$aVFi& zXtgdbByykX{N)#VjX6<(u3A{A11V9Q9QHy0cT32*i!LM}*<-q&oF&?|7#WqhpX)qZ z_iVU<)$zL}Zz1{$^d~w`-MGs)h4fgX7M0N!4%a*EPF5ref4j@qKHoXakaqpwxXbgV zM8d7N-~suG&Qt1k7ZTa0MmmQGo*tn$8<;DRbI0}62yLiyH6_xY=;6+s)erm2`J^8gs!x(G(*KN5wH@9>2N`|H*>4eleICk#f$t*oJSQy_MI&2$i=nX4vf8(G zN58i<)>;^j;e|s~$D`qGT!NT1)hhhe9-lCdBMk$6>!r}*gt z0Db^j8z{PUmW2hk?$Q}rwt*!@Z}y$dV17FQT>m#;kU*;bdqVc&c&nSi!*W|Vd{M#hWGAi1b8cL2zMQF7|y z7J?mGi#t3l)q|5!Py=ZekOLv^)RhLHjG-SuyOW(cLzh9AW<-c;)qu#%oS|RNM948Z zOv)?zvWt!@c5$3GNb>+AAho#F*%c!L8LD0QaZ#uPxwyqs1SRI7A?Gr^uRzxUAEVXR z#_91;VM)dU29fAC>>5*iXAt73c;H?dqpKp?1ObWbTdiF&8_Gg3N*MIme0_`ORi>+Y zj~r-s;xprPjuY~L(*n0*?#vjis^!LEE)hC0y(fYH z>$flk05L|f7xpNuxa_=F{U1f(|2V^PL_llDumuKpin(YBArgMHhTcFp`G!zY1J3kiGN?&eD*t z+DN-0uZXvJ)iVs~|ye;swr=1W>!4uy=q0fRT>+ zDm=?hYD!p0HaJI)#XG1X#f%hy-;WaQes{pd?*&i#T^0CenI|b$8`I7{vP6ixdfb;d zzb*4D0m-vNbmg)8Xl;F;OS=b{2Cyt_6qusLJqDaDG2J`?$MFv(rj5Ad7Ax-P8Xu&M z^?fegtnk$19qy1A5()JILmit7i~#cL!;8Tv#Y`js90J;4>Q?09TxF zY#xLpfaNEKXzlAgPDVBzt>VUJNT91$u(-95C>nO>ozqU2yVaivXw^?lFo%L{HgR7K(Q52I10`rB=lR~28UYHS##6Sz(hTZyQO?BZ6iR5!9Yi7*>Hs2GVe>LKT z0&nc_mk!{e-*|FT{Z|3thRzEtQD`_20sOTF%+j+bJKt-2rk3$ub@UY=vD6IAfsLf* zMD{-4;bB7}{!9zqW-W4;ckFZH!a09G(s{yEu24AV*8%{1tn;L>{BOVp0=jW&kuq%* z&;(Fed3J<0KEA_gf&-4jq~DCt8i30Y^ewO4<{X?;-v#EmhrR!>uvha?a;1DBYh4e-!8Z~`eQkk(Fge_32eq`8))h-*G}QZNcoV$?z+ zMTqvmf*IP)_=*IL1Ajw-QR(wuX>=X@$~gfbA38j zUrAkKYbEpDI2>R$yXXjG6!c|G!Qcp#T5?AaqhrQ~&?}|NsC0|NsC0|NsC0 z|NsC0|NsC0|NsC0|NsC009;%f?EnA*fk{L`RCwC#mus_|AP|N@xd?^`cso&I{{O!` zt2I$BwmrvAXEN=6a2QsXhuxP|(c?`Fy%Q*E-vks3oc*D2+3WHh_pd;es=19HM;J_y z>N#S8>uH{24uggROboFe*H~>?s-$fef%1kmwYr9PD#bY`#;zmQZ!R%UJZGXtwo}qDuioOM4Z%JqJ1ekF_8jYP?ZfqyDx$g zM!0AgBf^*10Gy1$X_)#V;*^(!Qbz5OqW!WURZ*SGD5!`L#$eZKPg-H1UtFaRddL}) zdY}-#sd0M_bd3b{*))Fz&ecKl;`cZMQWPu;$)Ic1PJsfE*2Ak8Z1Y}5fs?t*VejOW zO)3payWF|rj7GOWa(oq@mgSVn=vDD<{7IJ=r0i`1l$O1dx09u(l+K(^?tq4ynMr4l zmr*-U9lyXc!E%XW(9$@0x2FzMO`zg{s-5&2R0gClt4msX8pXO~%@JvalzDA;1Eo5b zUXX8rvfkZTsim{QqNC}$eC)f+Lze7&$2w=merQAsS>lXBWvL8V z!o-P_Ls60}6Ad9`i5$uI>U`Jt*LPj-^WM*OKfmj~pZC6hzx%r0Oj{c>L6j5<002RA zqKO@3d!cn3$qT*B_vEV~!xu($jsyUHvHisb6ctNCPK-Cv&KdxIRRn+(DgbQnL3SPh zqBQ_u!4m-VZvucs=v9xNvj8A4XKrF_A2;^7#5zctBlBlj>_xwevF)wy&kr9@Lo3-I z&#OR(nFOeI!72$6)FJNnKaJI^D$+li{G!@JyoO3g4R5?WbhiER#!Jk{(yCER`39Ad zhkxCNJ)Was6ZHI2-BzUGq^!>3{Ta9T*uML*F{Nc6uatc4U)<~8>0jR)9B8Yf+x-UG z$zUsK;DyAl$@ch_x6!**1)5k|#*|C(7bjP9fNpn(2KHTOh?`w_bI-&62c>N0h&9S* z@5k<48YosGSyd1*y~cS_M;6PNnm%HU^zrfeXpQa8v=MT!(7QZ8RGEJbw(333Fs4ZB zhOsjrp5966?(gq+HhONopcJ+^7w2m@`N3~E9Pmq&JsDt&xs~;5a?<_x++3E1fPkRj zWtFNYPxR0zc(GBktfi&ptpSF15&{qq5|Ya!Vk8AF#Kn!C3m+U9kSiOMFSNRll$3O@ z*<2nbLI_&mBN^>#RlHILIv=W$;My8c3o@S1#BEK)o}4W>(BP20vprX4W+00IMwv_1 z&0C+}aRZ-LR-Vrf-@WvwwUk6}T58c9EE;v$Mlx0um1?V=I@T2GaWduFsi_kJ+^_s! zN3xpp{k2+r$3Ji8+;uvnVLiM)J({KJSZlwekV@#f5uVR0)14haR%fcP?zPWFZ&fLU ztZBX~tx5CMUW0!J`WpgwXR z@AN-_m*Br}$gTbJ=o5w}#FF|MlMyX6gcG)E;KfGK)oszKLIfx3Yp9$f5M=0gyi>f0 z_`KQ>-?{s(j*JsMa{IyeGb3d_);^Of*}uYnLoK&Zzc`5PCj#{|Ixc}^^1IfFD6oS- zp|?nz3~PDl6Yq9Pb^9Xb(UdR!magHT+uOu>4D>DfNH~E4UHpMK@edM)shT@eA3LQ^ zv0p@&$k89@Cp2#DCz+1zw=6U(*BZYLE941dDIF&{AiMY5HQrnt zc_k;OeV#g?sdxHx;=_j{Um)`GQGm|T(b4yWj8z)}dkZ~n=%~%*_;ORTc|MFQMcype zfQwB7r~T8T=qG?9Q^|X~k7Cufg7;|;5|lwg5vgHwWh&XqLQe=FWY8>`Wo?bS)h})w z>o_MqXVXOLy$(Bg@SvU|?WTWtu0c2?o43H{xE)#$j*d8-5ax^&c^fU0n3yOjB^6QG z04YN4=+O!%HG)N9QDNacSN&v?hGaLJjoDnDShU!2taI=A{@q}0`+M3ZU$yDB`+Z$N z+Au*fT}URPv5RE5%`-PxmJZ6fyE}yJ^(mEgdtW&{>+(L+1lH#x+UFB-=4awH&VcLD z^aR6|Kq@mhv}LOLyMBJ(Z6`HmTOwgWG{e`qmcRSq{UTUH@S#)!1%_QxrMn(AqkwkS z7-sN_e-=kKcM*4eMi-6r$}&Y@W#%CFBcjs3bgPHR`IC3h22I@lyu69_d6V`AVjAkB zcuh@+)Yc7cWWXhg{RkqYtV{4&m7Ye7>e$xe#z?okHW34|$!gOR=oi5h9;)$AUK0@< zvKj$VUB$%|&3J!8KAOdT?UT+UR~glwF|n)}s#;qSE=w3Hz-w8b(Up#AG`1cNL@^GW z*;LJfM3%$H7(Xuf46h&>-q;lw8B^d9X~REs9frFro#xfNj7jqfvIzgHE)}fJ?hcn0 z>M$>g1g(cbRH`efAyAK~xgn3FX-->)$3YnmBlK1?jar5D2_}LQ9ULw zt-5c1em?&i)p5mVzbPOA5(RM`=b$<}hgss9GlwSTspCe7fI|&or3FhoLp9sR#CY3F zrQ#0@1=p$27@cN!QO8wf2A&BU{mw6Ol+8-zFIK9Qr4$%-4P1OwYa~nD9QuDP8lJ*goThB{t_2UR9W=CO#uOVQe)V^d`ufiHPsW6DFv@K%*E7$i1`2*o zttmTd+Ku%=0}l1Ak?rfQk9-GnpA9BpvMR!s1vyqCNJ_`|){Hq;36P*@s8T ziN8}Q6m>@@H#gHUo~K*u9`X@i%D-|3b7i`&Y`#gp^%tpZR|sJDH02wh80~P)vAUTi zj~~L2pb4R&D@;{u5=nmj%875wkw)$wI%9S6-lqijxYJqAvhblv*uj?vBrSMOlqFM6 z$1@K<#x~m195h}jh3qY*)Oz+kmimEEX)-3BNBJZ*AU{OOCq~LfM(iN=$nUbP9J;=< zmaxgQ64_2U+RK=0?=cK@c*M*dzTOa@Vcv)HET-ywpwY-f)U3qcUwu!86cG^+eR_0| z0hSaswL;bl>wG^L1tApq@E}0q+Cbh#g&nIP+HikDvX@rpM&B zI;Gk>mJejl9qqinzF0Syw27-N;b)0{6+X*MSQZ{loZ^N`7X0DC5t=QAmLN#6H&lrJ zmacTTQN}L020?HE;djPBw%Qxk7co? zVi^URn^bSHeCCq$3JP9c1H0oZe@oT#vLe-9W%rdu66XnLJ=wV$4dHk_MLSoef)jYy zdf09hoM7P0u*CgwtZl9J#xvuYZ+H*s)2qr+>M6ek%v@B-SV0VdD*o(#~r_d<9Q&DK+eH(*vR97furl6zPtW--ml8EDIgeW465BdLB#T{q^OP zSXbjBuGbTJPz2xWfQg)K_|}xX<_N5C;dL(Mj`nokW4ejbYh%j%y(+wGF33W>q^8tO<=Bl%y|3^W zCiWJ1B%Z8@0p7#Z9&K=RQ@pv)5^YT4;c!Bm68#we0L5y6QW9OywCi@f$je1ehkc;@GK~2HD%OvF6AYE@b6Lg>5yu8~2Dq%4^tj54lP2-AHgoB6-I)jg@(o z_#3^5IXRr_OjDkvB7TftNiLkDkDa1!CvWt3!=6Kc9c@LeB#{{ zjwu6W`PY~1I`7oh;<(JOUC#V=rxyIXPH0M|iRE@?Mm@{i#K%ORNt2_ye5$Bk;A>m$ zPqV2tee=hwW&^R61D{&W*rhv^9a(_4gKI+w)%|POaq)Aa$J(*VLep*tXUG2ez0#{^ z{iQ$j*1s0S+_1!LZxnD_u`3Y{7S3;H&s+c4j=fydxY|8U}fi7AzZCsS>JimW|d978H@C8asA_T0I1N24ZFQ!~Y`d%^|-uJ{lamR5Z= zwYEdz?vEFr?(XVZG)rHl<&gM;=kCv#StJ-PZ)GZVx|~)7G={;`)z4*}Q$iB}k;5>s literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/progressPositionBk.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/progressPositionBk.png new file mode 100644 index 0000000000000000000000000000000000000000..9cbae278ad0fc1f8c144c9a6ea54219d50b135ac GIT binary patch literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^tU%1o!2~2N*e@IcQj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>JitIgI978H@C7I~HNOfT9301$h_`~@K=v;4x37q8^^JDR?quE4GJ|9x(XokIg7LxZ1Gqq+04i$J3oJYD@<);T3K F0RRfIIrjhn literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/sliderHandleNorm.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/sliderHandleNorm.png new file mode 100644 index 0000000000000000000000000000000000000000..fda2e9f256ad57ec4f25f9cecb8a46f1b0046d55 GIT binary patch literal 336 zcmV-W0k8gvP)0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUy@<~KNRCwBAOq;aANJW;1gN*?P`1bSn z(QEf^J$?QA-Al%GcfT&I$-HvvsF;`-R@I+Aefs>H!8)gfhev?%;iunGKCWWIg2KYW zxQySrb*rhPo2y?Kix?XdI}^{1YY$~*|Kd{p;q5QhpT9*I|FXPz^NaBx|L1ovp8fxV zOEvR<;jiDAUcCOr^6K4hhX4HEKC^%O{1caIHfGT;K-F)4v%G%$n~{N^okffRFZlM2 z`Q_VREI|6H_V+Po~-c70vQ=aSW-rmE<#f%OMZfY3mdKI;Vst0Pj+7wEzGB literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/sliderHandleSprite.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/av/widget/resources/images/sliderHandleSprite.png new file mode 100644 index 0000000000000000000000000000000000000000..fe639ff7e8f44e65acedf3276786bb7edf536791 GIT binary patch literal 426 zcmV;b0agBqP)Wx>6#jAaumq-Iu4n!~B71uJL2x@;N>~-0$4AbzT2g2SE@rw0Ur( zD6`vJ>$}Tk#F6INHEw9+xc_DthN`MXuGMPAw^tiGdw}C?%u{WYDb|T7i%PHiTCZnC z?%PXdMyw`efIXJ-R0GDgn+W4-=-VH8ROF;wjj3om3E-f@wHh!U`V8e&8p<>r6*(el z5mdVja9HB2b{Td&CZMW}^~sb{Y2YP*qgu{W4H(0L3y~#lGL7Q&bC>}Bfh8OPjGZwe zc&S3Be5o(=ILr~?EaiGe!1$)~@NUkhjm60{vF@|n{=-%&708qw*6G~B%C7(e06;UZ UleP=^H~;_u07*qoM6N<$f>x8fQ~&?~ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/FuncGen.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/FuncGen.js new file mode 100644 index 00000000..e82b1cd8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/FuncGen.js @@ -0,0 +1,65 @@ +//>>built +require({cache:{"url:dojox/calc/templates/FuncGen.html":"
    \n\t\n\t\n\t
    \n\t\n\t
    \n\t\n\t\n\t\n\t\n\t

    \n\t\n\t
    \n\t\n
    \n"}}); +define("dojox/calc/FuncGen",["dojo/_base/declare","dojo/_base/lang","dojo/dom-style","dijit/_WidgetBase","dijit/_WidgetsInTemplateMixin","dijit/_TemplatedMixin","dojox/math/_base","dijit/registry","dojo/text!./templates/FuncGen.html","dojox/calc/_Executor","dijit/form/ComboBox","dijit/form/SimpleTextarea","dijit/form/Button","dijit/form/TextBox"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a){ +var _b=_1("dojox.calc.FuncGen",[_4,_6,_5],{templateString:_9,onSelect:function(){ +this.reset(); +},onClear:function(){ +var _c=confirm("Do you want to clear the name, argument, and body text?"); +if(_c){ +this.clear(); +} +},saveFunction:function(_d,_e,_f){ +},onSaved:function(){ +},clear:function(){ +this.textarea.set("value",""); +this.args.set("value",""); +this.combo.set("value",""); +},reset:function(){ +if(this.combo.get("value") in this.functions){ +this.textarea.set("value",this.functions[this.combo.get("value")].body); +this.args.set("value",this.functions[this.combo.get("value")].args); +} +},onReset:function(){ +if(this.combo.get("value") in this.functions){ +var _10=confirm("Do you want to reset this function?"); +if(_10){ +this.reset(); +this.status.set("value","The function has been reset to its last save point."); +} +} +},deleteThing:function(_11){ +if(this.writeStore.isItem(_11)){ +this.writeStore.deleteItem(_11); +this.writeStore.save(); +}else{ +} +},deleteFunction:function(_12){ +},onDelete:function(){ +var _13; +if((_13=this.combo.get("value")) in this.functions){ +var _14=confirm("Do you want to delete this function?"); +if(_14){ +var _15=this.combo.item; +this.writeStore.deleteItem(_15); +this.writeStore.save(); +this.deleteFunction(_13); +delete this.functions[_13]; +this.clear(); +} +}else{ +this.status.set("value","Function cannot be deleted, it isn't saved."); +} +},readyStatus:function(){ +this.status.set("value","Ready"); +},writeStore:null,readStore:null,functions:null,startup:function(){ +this.combo.set("store",this.writeStore); +this.inherited(arguments); +var _16=_8.getEnclosingWidget(this.domNode.parentNode); +if(_16&&typeof _16.close=="function"){ +this.closeButton.set("onClick",_2.hitch(_16,"close")); +}else{ +_3.set(this.closeButton.domNode,{display:"none"}); +} +}}); +return _2.mixin(_a,{FuncGen:_b}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/FuncGen.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/FuncGen.js.uncompressed.js new file mode 100644 index 00000000..7dafbe04 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/FuncGen.js.uncompressed.js @@ -0,0 +1,152 @@ +require({cache:{ +'url:dojox/calc/templates/FuncGen.html':"
    \n\t\n\t\n\t
    \n\t\n\t
    \n\t\n\t\n\t\n\t\n\t

    \n\t\n\t
    \n\t\n
    \n"}}); +define("dojox/calc/FuncGen", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/dom-style", + "dijit/_WidgetBase", + "dijit/_WidgetsInTemplateMixin", + "dijit/_TemplatedMixin", + "dojox/math/_base", + "dijit/registry", + "dojo/text!./templates/FuncGen.html", + "dojox/calc/_Executor", + "dijit/form/ComboBox", // template + "dijit/form/SimpleTextarea", // template + "dijit/form/Button", // template + "dijit/form/TextBox" // template +], function(declare, lang, domStyle, WidgetBase, WidgetsInTemplateMixin, TemplatedMixin, math, registry, template, calc){ + + var FuncGen = declare( + "dojox.calc.FuncGen", + [WidgetBase, TemplatedMixin, WidgetsInTemplateMixin], + { + // summary: + // The dialog layout for making functions + + templateString: template, + + onSelect: function(){ + // summary: + // if they select something in the name combobox, then change the body and arguments to correspond to the function they selected + this.reset(); + }, + onClear: function(){ + // summary: + // The clear button in the template calls this. + // Clear the name, arguments, and body if the user says yes. + var answer = confirm("Do you want to clear the name, argument, and body text?"); + if(answer){ + this.clear(); + } + }, + saveFunction: function(name, args, body){ + // override me + }, + onSaved: function(){ + // this on save needs to be overriden if you want Executor parsing support + //console.log("Save was pressed"); + }, + clear: function(){ + // summary: + // clear the name, arguments, and body + this.textarea.set("value", ""); + this.args.set("value", ""); + this.combo.set("value", ""); + }, + reset: function(){ + // summary: + // set the arguments and body to match a function selected if it exists in the function list + if(this.combo.get("value") in this.functions){ + this.textarea.set("value", this.functions[this.combo.get("value")].body); + this.args.set("value", this.functions[this.combo.get("value")].args); + } + }, + onReset: function(){ + // summary: + // (Reset button on click event) reset the arguments and body to their previously saved state if the user says yes + + //console.log("Reset was pressed"); + if(this.combo.get("value") in this.functions){ + var answer = confirm("Do you want to reset this function?"); + if(answer){ + this.reset(); + this.status.set("value", "The function has been reset to its last save point."); + } + } + }, + deleteThing: function(item){ + // summary: + // delete an item in the writestore + if(this.writeStore.isItem(item)){ + // delete it + //console.log("Found item "+item); + this.writeStore.deleteItem(item); + this.writeStore.save(); + }else{ + //console.log("Unable to locate the item"); + } + }, + deleteFunction: function(name){ + // override me + }, + onDelete: function(){ + // summary: + // (Delete button on click event) delete a function if the user clicks yes + + //console.log("Delete was pressed"); + + var name; + if((name = this.combo.get("value")) in this.functions){ + var answer = confirm("Do you want to delete this function?"); + if(answer){ + var item = this.combo.item; + + //this.writeStore.fetchItemByIdentity({identity:name, onItem: this.deleteThing, onError:null}); + + this.writeStore.deleteItem(item); + this.writeStore.save(); + + this.deleteFunction(name); + delete this.functions[name]; + this.clear(); + } + }else{ + this.status.set("value", "Function cannot be deleted, it isn't saved."); + } + }, + readyStatus: function(){ + // summary: + // set the status in the template to ready + this.status.set("value", "Ready"); + }, + writeStore:null, //the user can save functions to the writestore + readStore:null, // users cannot edit the read store contents, but they can use them + functions:null, // use the names to get to the function + + /*postCreate: function(){ + this.functions = []; // use the names to get to the function + this.writeStore = new dojo.data.ItemFileWriteStore({data: {identifier: 'name', items:[]}}); + + this.combo.set("store", this.writeStore); + },*/ + + startup: function(){ + // summary: + // make sure the parent has a close button if it needs to be able to close + // link the write store too + this.combo.set("store", this.writeStore); + + this.inherited(arguments);// this is super class startup + // close is only valid if the parent is a widget with a close function + var parent = registry.getEnclosingWidget(this.domNode.parentNode); + if(parent && typeof parent.close == "function"){ + this.closeButton.set("onClick", lang.hitch(parent, 'close')); + }else{ + domStyle.set(this.closeButton.domNode, { display: "none" }); // hide the button + } + } + }); + + return lang.mixin(calc, { FuncGen: FuncGen }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/GraphPro.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/GraphPro.js new file mode 100644 index 00000000..5503b7ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/GraphPro.js @@ -0,0 +1,91 @@ +//>>built +require({cache:{"url:dojox/calc/templates/GraphPro.html":"
    \n\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t(-)\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\n
    \n"}}); +define("dojox/calc/GraphPro",["dojo/_base/declare","dojo/_base/lang","dojo/_base/window","dojo/dom-style","dojo/dom-construct","dojo/dom-geometry","dojo/ready","dojox/calc/Standard","dojox/calc/Grapher","dojox/layout/FloatingPane","dojo/text!./templates/GraphPro.html","dojox/calc/_Executor","dijit/Menu","dijit/MenuItem","dijit/form/ComboButton","dijit/form/Button","dijit/form/TextBox"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b){ +return _1("dojox.calc.GraphPro",_8,{templateString:_b,grapher:null,funcMaker:null,aFloatingPane:null,executorLoaded:function(){ +this.inherited(arguments); +_7(_2.hitch(this,function(){ +if(this.writeStore==null&&"functionMakerButton" in this){ +_4.set(this.functionMakerButton.domNode,{visibility:"hidden"}); +} +})); +},makeFunctionWindow:function(){ +var _c=_3.body(); +var _d=_5.create("div"); +_c.appendChild(_d); +this.aFloatingPane=new dojox.layout.FloatingPane({resizable:false,dockable:true,maxable:false,closable:true,duration:300,title:"Function Window",style:"position:absolute;left:10em;top:10em;width:50em;"},_d); +var _e=this; +var d=_5.create("div"); +this.funcMaker=new _9.FuncGen({writeStore:_e.writeStore,readStore:_e.readStore,functions:_e.functions,deleteFunction:_e.executor.deleteFunction,onSaved:function(){ +var _f,_c; +if((_f=this.combo.get("value"))==""){ +this.status.set("value","The function needs a name"); +}else{ +if((_c=this.textarea.get("value"))==""){ +this.status.set("value","The function needs a body"); +}else{ +var _10=this.args.get("value"); +if(!(_f in this.functions)){ +this.combo.item=this.writeStore.put({name:_f,args:_10,body:_c}); +} +this.saveFunction(_f,_10,_c); +this.status.set("value","Function "+_f+" was saved"); +} +} +},saveFunction:_2.hitch(_e,_e.saveFunction)},d); +this.aFloatingPane.set("content",this.funcMaker); +this.aFloatingPane.startup(); +this.aFloatingPane.bringToTop(); +},makeGrapherWindow:function(){ +var _11=_3.body(); +var _12=_5.create("div"); +_11.appendChild(_12); +this.aFloatingPane=new dojox.layout.FloatingPane({resizable:false,dockable:true,maxable:false,closable:true,duration:300,title:"Graph Window",style:"position:absolute;left:10em;top:5em;width:50em;"},_12); +var _13=this; +var d=_5.create("div"); +this.grapher=new _9.Grapher({myPane:this.aFloatingPane,drawOne:function(i){ +this.array[i][this.chartIndex].resize(this.graphWidth.get("value"),this.graphHeight.get("value")); +this.array[i][this.chartIndex].axes["x"].max=this.graphMaxX.get("value"); +if(this.array[i][this.expressionIndex].get("value")==""){ +this.setStatus(i,"Error"); +return; +} +var _14; +var _15=(this.array[i][this.functionMode]=="y="); +if(this.array[i][this.expressionIndex].get("value")!=this.array[i][this.evaluatedExpression]){ +var _16="x"; +if(!_15){ +_16="y"; +} +_14=_13.executor.Function("",_16,"return "+this.array[i][this.expressionIndex].get("value")); +this.array[i][this.evaluatedExpression]=this.array[i][this.expressionIndex].value; +this.array[i][this.functionRef]=_14; +}else{ +_14=this.array[i][this.functionRef]; +} +var _17=this.array[i][this.colorIndex].get("value"); +if(!_17){ +_17="black"; +} +_9.draw(this.array[i][this.chartIndex],_14,{graphNumber:this.array[i][this.funcNumberIndex],fOfX:_15,color:{stroke:{color:_17}}}); +this.setStatus(i,"Drawn"); +},onDraw:function(){ +for(var i=0;i\n\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t(-)\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\n
    \n"}}); +define("dojox/calc/GraphPro", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/_base/window", + "dojo/dom-style", + "dojo/dom-construct", + "dojo/dom-geometry", + "dojo/ready", + "dojox/calc/Standard", + "dojox/calc/Grapher", + "dojox/layout/FloatingPane", + "dojo/text!./templates/GraphPro.html", + "dojox/calc/_Executor", // template + "dijit/Menu", // template + "dijit/MenuItem", // template + "dijit/form/ComboButton", // template + "dijit/form/Button", // template + "dijit/form/TextBox" // template +], function(declare, lang, win, domStyle, domConstruct, domGeometry, ready, Standard, calc, FloatingPane, template){ + + + return declare( + "dojox.calc.GraphPro", + Standard, + { + // summary: + // The dialog widget for a graphing, scientific calculator + + templateString: template, + + grapher:null, + funcMaker:null, + aFloatingPane: null, + + executorLoaded: function(){ + // summary: + // when executor loads check to see if the writestore is there + this.inherited(arguments); + ready(lang.hitch(this, function(){ + if(this.writeStore == null && "functionMakerButton" in this){ + domStyle.set(this.functionMakerButton.domNode, { visibility: "hidden" }); + } + })); + }, + makeFunctionWindow: function(){ + // summary: + // use this function to create a function window (with the button on the layout) + var body = win.body(); + + var pane = domConstruct.create('div'); + body.appendChild(pane); + + this.aFloatingPane = new dojox.layout.FloatingPane({resizable:false, dockable:true, maxable:false, closable:true, duration:300, title:"Function Window", style:"position:absolute;left:10em;top:10em;width:50em;"}, pane); + var that = this; + var d = domConstruct.create("div"); + this.funcMaker = new calc.FuncGen({ + writeStore:that.writeStore, + readStore:that.readStore, + functions:that.functions, + deleteFunction: that.executor.deleteFunction, + onSaved:function(){ + var name, + body; + if((name = this.combo.get("value")) == ""){ + this.status.set("value", "The function needs a name"); + }else if((body = this.textarea.get("value")) == ""){ + // i don't think users need empty functions for math + this.status.set("value", "The function needs a body"); + }else{ + var args = this.args.get("value"); + if(!(name in this.functions)){ + this.combo.item = this.writeStore.put({name: name, args: args, body: body}); + } + this.saveFunction(name, args, body); + this.status.set("value", "Function "+name+" was saved"); + } + }, + saveFunction: lang.hitch(that, that.saveFunction) + }, d); + this.aFloatingPane.set('content', this.funcMaker); + this.aFloatingPane.startup(); + this.aFloatingPane.bringToTop(); + }, + makeGrapherWindow: function(){ + // summary: + // use this to make a Grapher window appear with a button + var body = win.body(); + + var pane = domConstruct.create('div'); + body.appendChild(pane); + + this.aFloatingPane = new dojox.layout.FloatingPane({resizable:false, dockable:true, maxable:false, closable:true, duration:300, title:"Graph Window", style:"position:absolute;left:10em;top:5em;width:50em;"}, pane); + var that = this; + + var d = domConstruct.create("div"); + this.grapher = new calc.Grapher({ + myPane: this.aFloatingPane, + drawOne: function(i){ + this.array[i][this.chartIndex].resize(this.graphWidth.get("value"), this.graphHeight.get("value")); + this.array[i][this.chartIndex].axes["x"].max = this.graphMaxX.get('value'); + if(this.array[i][this.expressionIndex].get("value")==""){ + this.setStatus(i, "Error"); + return; + } + var func; + var yEquals = (this.array[i][this.functionMode]=="y="); + if(this.array[i][this.expressionIndex].get("value")!=this.array[i][this.evaluatedExpression]){ + var args = 'x'; + if(!yEquals){ + args = 'y'; + } + func = that.executor.Function('', args, "return "+this.array[i][this.expressionIndex].get('value')); + this.array[i][this.evaluatedExpression] = this.array[i][this.expressionIndex].value; + this.array[i][this.functionRef] = func; + } + else{ + func = this.array[i][this.functionRef]; + } + var pickedColor = this.array[i][this.colorIndex].get("value"); + if(!pickedColor){ + pickedColor = 'black'; + } + calc.draw(this.array[i][this.chartIndex], func, {graphNumber:this.array[i][this.funcNumberIndex], fOfX:yEquals, color:{stroke:{color:pickedColor}}}); + this.setStatus(i, "Drawn"); + }, + onDraw:function(){ + for(var i = 0; i < this.rowCount; i++){ + if((!this.dirty && this.array[i][this.checkboxIndex].get("checked")) || (this.dirty && this.array[i][this.statusIndex].innerHTML=="Drawn")){ + this.drawOne(i); + }else{ + this.array[i][this.chartIndex].resize(this.graphWidth.get("value"), this.graphHeight.get("value")); + this.array[i][this.chartIndex].axes["x"].max = this.graphMaxX.get('value'); + } + } + + var bufferY = domGeometry.position(this.outerDiv).y-domGeometry.position(this.myPane.domNode).y; + bufferY*=2; + bufferY=Math.abs(bufferY); + var height = "" + Math.max(parseInt(this.graphHeight.get('value'))+50, this.outerDiv.scrollHeight+bufferY); + var width = "" + (parseInt(this.graphWidth.get('value')) + this.outerDiv.scrollWidth); + this.myPane.resize({w:width, h:height}); + } + }, d); + this.aFloatingPane.set('content', this.grapher); + this.aFloatingPane.startup(); + this.aFloatingPane.bringToTop(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Grapher.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Grapher.js new file mode 100644 index 00000000..85f43714 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Grapher.js @@ -0,0 +1,414 @@ +//>>built +require({cache:{"url:dojox/calc/templates/Grapher.html":"
    \n
    \n
    \n
    \n\t
    Window Options
    \n\t
    \n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t\t\t\t\tWidth:\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tHeight:\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\tX >=\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tX <=\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\tY >=\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tY <=\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t
    \n
    \n\n
    \n\n
    \n\t\n\t
    \n
    \n\n
    \n\t
    Add Function
    \n\t
    \n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t\t\t\t\tMode:\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t
    \n
    \n
    \n
    \n\n\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\n
    \n\t\t\t\n\t\t\n\t\t\t\n\t\t
    \n\t\t\t\n\t\t\n\t\t\t\n\t\t
    \n\t\t\t\n\t\t\n\t\t\t\n\t\t
    \n
    \n
    \n"}}); +define("dojox/calc/Grapher",["dojo/_base/declare","dojo/_base/lang","dojo/_base/window","dojo/dom-construct","dojo/dom-class","dojo/dom-style","dijit/_WidgetBase","dijit/_WidgetsInTemplateMixin","dijit/_TemplatedMixin","dojox/math/_base","dijit/registry","dijit/form/DropDownButton","dijit/TooltipDialog","dijit/form/TextBox","dijit/form/CheckBox","dijit/ColorPalette","dojox/charting/Chart","dojox/charting/axis2d/Default","dojox/charting/plot2d/Default","dojox/charting/plot2d/Lines","dojox/charting/themes/Tufte","dojo/colors","dojo/text!./templates/Grapher.html","dojox/calc/_Executor","dijit/form/Button","dijit/form/Select"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e,_f,_10,_11,_12,_13,_14,_15,_16,_17,_18){ +var _19=1e-15/9,_1a=1e+200,_1b=Math.log(2),_1c={graphNumber:0,fOfX:true,color:{stroke:"black"}}; +var _1d=_1("dojox.calc.Grapher",[_7,_9,_8],{templateString:_17,addXYAxes:function(_1e){ +return _1e.addAxis("x",{max:parseInt(this.graphMaxX.get("value")),min:parseInt(this.graphMinX.get("value")),majorLabels:true,minorLabels:true,minorTicks:false,microTicks:false,htmlLabels:true,labelFunc:function(_1f){ +return _1f; +},maxLabelSize:30,fixUpper:"major",fixLower:"major",majorTick:{length:3}}).addAxis("y",{max:parseInt(this.graphMaxY.get("value")),min:parseInt(this.graphMinY.get("value")),labelFunc:function(_20){ +return _20; +},maxLabelSize:50,vertical:true,microTicks:false,minorTicks:true,majorTick:{stroke:"black",length:3}}); +},selectAll:function(){ +for(var i=0;i0){ +for(;i<_32.length;i++){ +if(_32[i].length>0){ +_2f.addSeries("Series "+_31.graphNumber+"_"+i,_32[i],_31.color); +} +} +} +var _33="Series "+_31.graphNumber+"_"+i; +while(_33 in _2f.runs){ +_2f.removeSeries(_33); +i++; +_33="Series "+_31.graphNumber+"_"+i; +} +_2f.render(); +return _32; +},generatePoints:function(_34,x,y,_35,_36,_37,_38,_39){ +var _3a=(1<1){ +for(k=0;k<_3b[1].length;k++){ +if(_3b[0][_3b[0].length-1][x]==_3b[1][k][x]){ +continue; +} +_3b[0].push(_3b[1][k]); +} +_3b.splice(1,1); +} +_3b=_3b[0]; +var s=0; +var _43=[[]]; +for(k=0;k<_3b.length;k++){ +var x1,y1,b,_44; +if(isNaN(_3b[k][y])||isNaN(_3b[k][x])){ +while(isNaN(_3b[k][y])||isNaN(_3b[k][x])){ +_3b.splice(k,1); +} +_43[++s]=[]; +k--; +}else{ +if(_3b[k][y]>_39||_3b[k][y]<_38){ +if(k>0&&_3b[k-1].y!=_38&&_3b[k-1].y!=_39){ +_44=_41(_3b[k-1],_3b[k]); +if(_44>_1a){ +_44=_1a; +}else{ +if(_44<-_1a){ +_44=-_1a; +} +} +if(_3b[k][y]>_39){ +y1=_39; +}else{ +y1=_38; +} +b=_3b[k][y]-_44*_3b[k][x]; +x1=(y1-b)/_44; +p={}; +p[x]=x1; +p[y]=_34(x1); +if(p[y]!=y1){ +p=_45(_34,_3b[k-1],_3b[k],y1); +} +_43[s].push(p); +_43[++s]=[]; +} +var _46=k; +while(k<_3b.length&&(_3b[k][y]>_39||_3b[k][y]<_38)){ +k++; +} +if(k>=_3b.length){ +if(_43[s].length==0){ +_43.splice(s,1); +} +break; +} +if(k>0&&_3b[k].y!=_38&&_3b[k].y!=_39){ +_44=_41(_3b[k-1],_3b[k]); +if(_44>_1a){ +_44=_1a; +}else{ +if(_44<-_1a){ +_44=-_1a; +} +} +if(_3b[k-1][y]>_39){ +y1=_39; +}else{ +y1=_38; +} +b=_3b[k][y]-_44*_3b[k][x]; +x1=(y1-b)/_44; +p={}; +p[x]=x1; +p[y]=_34(x1); +if(p[y]!=y1){ +p=_45(_34,_3b[k-1],_3b[k],y1); +} +_43[s].push(p); +_43[s].push(_3b[k]); +} +}else{ +_43[s].push(_3b[k]); +} +} +} +return _43; +function _45(_47,_48,_49,_4a){ +while(_48<=_49){ +var _4b=(_48[x]+_49[x])/2; +var mid={}; +mid[x]=_4b; +mid[y]=_47(mid[x]); +if(_4a==mid[y]||mid[x]==_49[x]||mid[x]==_48[x]){ +return mid; +} +var _4c=true; +if(_4a=Math.abs(_53[y])){ +_50[0].push(_53); +_51=_56; +}else{ +_50[1].unshift(_53); +if(_52[x]==_53[x]){ +break; +} +_52=_53; +} +} +return _50; +}; +function _40(_57,_58){ +var _59=false,_5a=false; +if(_57<_58){ +_59=true; +} +if(_58>0){ +_5a=true; +} +return {inc:_59,pos:_5a}; +}; +function _55(v){ +var _5b; +if(v>-1&&v<1){ +if(v<0){ +if(v>=-_19){ +_5b=-v; +}else{ +_5b=v/Math.ceil(v/_19); +} +}else{ +_5b=_19; +} +}else{ +_5b=Math.abs(v)*_19; +} +return v+_5b; +}; +function _41(p1,p2){ +return (p2[y]-p1[y])/(p2[x]-p1[x]); +}; +},Grapher:_1d}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Grapher.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Grapher.js.uncompressed.js new file mode 100644 index 00000000..f8d51c9d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Grapher.js.uncompressed.js @@ -0,0 +1,657 @@ +require({cache:{ +'url:dojox/calc/templates/Grapher.html':"
    \n
    \n
    \n
    \n\t
    Window Options
    \n\t
    \n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t\t\t\t\tWidth:\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tHeight:\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\tX >=\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tX <=\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\tY >=\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tY <=\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t
    \n
    \n\n
    \n\n
    \n\t\n\t
    \n
    \n\n
    \n\t
    Add Function
    \n\t
    \n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t\t\t\t\tMode:\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t
    \n
    \n
    \n
    \n\n\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\n
    \n\t\t\t\n\t\t\n\t\t\t\n\t\t
    \n\t\t\t\n\t\t\n\t\t\t\n\t\t
    \n\t\t\t\n\t\t\n\t\t\t\n\t\t
    \n
    \n
    \n"}}); +define("dojox/calc/Grapher", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/_base/window", + "dojo/dom-construct", + "dojo/dom-class", + "dojo/dom-style", + "dijit/_WidgetBase", + "dijit/_WidgetsInTemplateMixin", + "dijit/_TemplatedMixin", + "dojox/math/_base", + "dijit/registry", + "dijit/form/DropDownButton", + "dijit/TooltipDialog", + "dijit/form/TextBox", + "dijit/form/CheckBox", + "dijit/ColorPalette", + "dojox/charting/Chart", + "dojox/charting/axis2d/Default", + "dojox/charting/plot2d/Default", + "dojox/charting/plot2d/Lines", + "dojox/charting/themes/Tufte", + "dojo/colors", + "dojo/text!./templates/Grapher.html", + "dojox/calc/_Executor", + "dijit/form/Button", // template + "dijit/form/Select" // template +], function(declare, lang, win, domConstruct, domClass, domStyle, WidgetBase, WidgetsInTemplateMixin, TemplatedMixin, math, registry, DropDownButton, TooltipDialog, TextBox, CheckBox, ColorPalette, Chart, axis2d, plot2d, Lines, Tufte, colors, template, calc){ + + var + epsilon = 1e-15 / 9, + bigNumber = 1e200, + log2 = Math.log(2), + defaultParams = {graphNumber:0, fOfX:true, color:{stroke:"black"}}; + + var Grapher = declare( + "dojox.calc.Grapher", + [WidgetBase, TemplatedMixin, WidgetsInTemplateMixin], + { + // summary: + // The dialog layout for making graphs + + templateString: template, + + addXYAxes: function(chart){ + // summary: + // add or re-add the default x/y axes to the Chart provided + // chart: dojox.charting.Chart + + return chart.addAxis("x", { + max: parseInt(this.graphMaxX.get("value")), + min: parseInt(this.graphMinX.get("value")), + majorLabels: true, + minorLabels: true, + //includeZero: true, + minorTicks: false, + microTicks: false, + //majorTickStep: 1, + htmlLabels: true, + labelFunc: function(value){ + return value; + }, + maxLabelSize: 30, + fixUpper: "major", fixLower: "major", + majorTick: { length: 3 } + }). + addAxis("y", { + max: parseInt(this.graphMaxY.get("value")), + min: parseInt(this.graphMinY.get("value")), + labelFunc: function(value){ + return value; + }, + maxLabelSize: 50, + vertical: true, + // htmlLabels: false, + microTicks: false, + minorTicks: true, + majorTick: { stroke: "black", length: 3 } + }); + }, + selectAll: function(){ + // summary: + // select all checkboxes inside the function table + for(var i = 0; i < this.rowCount; i++){ + this.array[i][this.checkboxIndex].set("checked", true); + } + }, + deselectAll: function(){ + // summary: + // deselect all checkboxes inside the function table + for(var i = 0; i < this.rowCount; i++){ + this.array[i][this.checkboxIndex].set("checked", false); + } + }, + drawOne: function(i){ + // i is a the index to this.array + // override me + }, + onDraw: function(){ + console.log("Draw was pressed"); + // override me + }, + erase: function(i){ + // summary: + // erase the chart inside this.array with the index i + // i: Integer + // index to this.array that represents the current row number in the table + var nameNum = 0; + var name = "Series "+this.array[i][this.funcNumberIndex]+"_"+nameNum; + while(name in this.array[i][this.chartIndex].runs){ + this.array[i][this.chartIndex].removeSeries(name); + nameNum++; + name = "Series "+this.array[i][this.funcNumberIndex]+"_"+nameNum; + } + this.array[i][this.chartIndex].render(); + this.setStatus(i, "Hidden"); + }, + onErase: function(){ + // summary: + // the erase button's onClick method + // it see's if the checkbox is checked and then erases it if it is. + for(var i = 0; i < this.rowCount; i++){ + if(this.array[i][this.checkboxIndex].get("checked")){ + this.erase(i); + } + } + }, + onDelete: function(){ + // summary: + // The delete button's onClick method. + // Delete all of the selected rows. + for(var i = 0; i < this.rowCount; i++){ + if(this.array[i][this.checkboxIndex].get("checked")){ + this.erase(i); + for(var k = 0; k < this.functionRef; k++){ + if(this.array[i][k] && this.array[i][k]["destroy"]){ + this.array[i][k].destroy(); + } + } + this.graphTable.deleteRow(i); + this.array.splice(i, 1); + this.rowCount--; + i--; + } + } + }, + // attributes to name the indices of this.array + checkboxIndex: 0, + functionMode: 1, + expressionIndex: 2, + colorIndex: 3, + dropDownIndex: 4, + tooltipIndex: 5, + colorBoxFieldsetIndex: 6, + statusIndex: 7, + chartIndex: 8, + funcNumberIndex: 9, + evaluatedExpression: 10, + functionRef: 11, + + createFunction: function(){ + // summary: + // create a new row in the table with all of the dojo objects. + + var tr = this.graphTable.insertRow(-1); + this.array[tr.rowIndex] = []; + var td = tr.insertCell(-1); + var d = domConstruct.create('div'); + td.appendChild(d); + var checkBox = new CheckBox({}, d); + this.array[tr.rowIndex][this.checkboxIndex] = checkBox; + domClass.add(d, "dojoxCalcCheckBox"); + + td = tr.insertCell(-1); + var funcMode = this.funcMode.get("value"); + d = win.doc.createTextNode(funcMode); + td.appendChild(d); + this.array[tr.rowIndex][this.functionMode] = funcMode; + //domClass.add(d, "dojoxCalcFunctionMode");// cannot use text nodes + + td = tr.insertCell(-1); + d = domConstruct.create('div'); + td.appendChild(d); + var expression = new TextBox({}, d); + this.array[tr.rowIndex][this.expressionIndex] = expression; + domClass.add(d, "dojoxCalcExpressionBox"); + + var b = domConstruct.create('div'); + var color = new ColorPalette({changedColor:this.changedColor}, b); + domClass.add(b, "dojoxCalcColorPalette"); + + this.array[tr.rowIndex][this.colorIndex] = color; + + var c = domConstruct.create('div'); + var dialog = new TooltipDialog({content:color}, c); + this.array[tr.rowIndex][this.tooltipIndex] = dialog; + domClass.add(c, "dojoxCalcContainerOfColor"); + + td = tr.insertCell(-1); + d = domConstruct.create('div'); + td.appendChild(d); + + var colorBoxFieldset = domConstruct.create('fieldset'); + domStyle.set(colorBoxFieldset, { backgroundColor: "black", width: "1em", height: "1em", display: "inline" }); + this.array[tr.rowIndex][this.colorBoxFieldsetIndex] = colorBoxFieldset; + + var drop = new DropDownButton({label:"Color ", dropDown:dialog}, d); + drop.containerNode.appendChild(colorBoxFieldset); + this.array[tr.rowIndex][this.dropDownIndex] = drop; + domClass.add(d, "dojoxCalcDropDownForColor"); + + /*td = tr.insertCell(-1); + d = domConstruct.create('div'); + td.appendChild(d); + var status = new TextBox({style:"width:50px", value:"Hidden", readOnly:true}, d);//hidden, drawn, or error + this.array[tr.rowIndex][this.statusIndex] = status; + domClass.add(d, "dojoxCalcStatusBox");*/ + + td = tr.insertCell(-1); + d = domConstruct.create('fieldset'); + d.innerHTML = "Hidden"; + this.array[tr.rowIndex][this.statusIndex] = d; + domClass.add(d, "dojoxCalcStatusBox"); + td.appendChild(d); + + d = domConstruct.create('div'); + domStyle.set(d, { position: "absolute", left: "0px", top: "0px" }) + this.chartsParent.appendChild(d); + this.array[tr.rowIndex][this.chartNodeIndex] = d; + domClass.add(d, "dojoxCalcChart"); + var chart = new dojox.charting.Chart(d).setTheme(dojox.charting.themes.Tufte). + addPlot("default", { type: "Lines", shadow: {dx: 1, dy: 1, width: 2, color: [0, 0, 0, 0.3]} }); + this.addXYAxes(chart); + this.array[tr.rowIndex][this.chartIndex] = chart; + color.set("chart", chart); + color.set("colorBox", colorBoxFieldset); + color.set("onChange", lang.hitch(color, 'changedColor')); + + this.array[tr.rowIndex][this.funcNumberIndex] = this.funcNumber++; + this.rowCount++; + }, + setStatus: function(i, status){ + // summary: + // set the status of the row i to be status + // i: Integer + // index of this.array as well as a row index + // status: String + // either Error, Hidden, or Drawn + this.array[i][this.statusIndex].innerHTML = status; //this.array[i][this.statusIndex].set("value", status); + }, + changedColor: function(){ + // summary: + // Make the color of the chart the new color. + // The context is changed to the colorPalette, and a reference to chart was added to it a an attribute. + var chart = this.get("chart"); + var colorBoxFieldset = this.get("colorBox"); + for(var i = 0; i < chart.series.length; i++){ + if(chart.series[i]["stroke"]){ + if(chart.series[i].stroke["color"]){ + chart.series[i]["stroke"].color = this.get("value"); + chart.dirty = true; + } + } + } + chart.render(); + domStyle.set(colorBoxFieldset, { backgroundColor: this.get("value") }); + }, + makeDirty: function(){ + // summary: + // if something in the window options is changed, this is called + this.dirty = true; + }, + checkDirty1: function(){ + // summary: + // to stay in sync with onChange, checkDirty is called with a timeout + setTimeout(lang.hitch(this, 'checkDirty'), 0); + }, + checkDirty: function(){ + // summary: + // adjust all charts in this.array according to any changes in window options + if(this.dirty){ + // change the axes of all charts if it is dirty + for(var i = 0; i < this.rowCount; i++){ + this.array[i][this.chartIndex].removeAxis("x"); + this.array[i][this.chartIndex].removeAxis("y"); + this.addXYAxes(this.array[i][this.chartIndex]); + } + this.onDraw(); + } + this.dirty = false; + }, + postCreate: function(){ + // summary: + // add Event handlers, some additional attributes, etc + this.inherited(arguments);// this is super class postCreate + this.createFunc.set("onClick", lang.hitch(this, 'createFunction')); + + this.selectAllButton.set("onClick", lang.hitch(this, 'selectAll')); + this.deselectAllButton.set("onClick", lang.hitch(this, 'deselectAll')); + + this.drawButton.set("onClick", lang.hitch(this, 'onDraw')); + this.eraseButton.set("onClick", lang.hitch(this, 'onErase')); + this.deleteButton.set("onClick", lang.hitch(this, 'onDelete')); + + this.dirty = false; + this.graphWidth.set("onChange", lang.hitch(this, 'makeDirty')); + this.graphHeight.set("onChange", lang.hitch(this, 'makeDirty')); + this.graphMaxX.set("onChange", lang.hitch(this, 'makeDirty')); + this.graphMinX.set("onChange", lang.hitch(this, 'makeDirty')); + this.graphMaxY.set("onChange", lang.hitch(this, 'makeDirty')); + this.graphMinY.set("onChange", lang.hitch(this, 'makeDirty')); + this.windowOptionsInside.set("onClose", lang.hitch(this, 'checkDirty1')); + + this.funcNumber = 0; + this.rowCount = 0; + this.array = []; + + }, + startup: function(){ + // summary: + // make sure the parent has a close button if it needs to be able to close + this.inherited(arguments);// this is super class startup + // close is only valid if the parent is a widget with a close function + var parent = registry.getEnclosingWidget(this.domNode.parentNode); + if(parent && typeof parent.close == "function"){ + this.closeButton.set("onClick", lang.hitch(parent, 'close')); + }else{ + domStyle.set(this.closeButton.domNode, { display: "none" }); // hide the button + } + // add one row at the start + this.createFunction(); + + // make the graph bounds appear initially + this.array[0][this.checkboxIndex].set("checked", true); + this.onDraw(); + this.erase(0); + this.array[0][this.expressionIndex].value = ""; + } + }); + + return lang.mixin(calc, { + draw: function(/*Chart*/ chart, /*Function*/ functionToGraph, params){ + // summary: + // graph a chart with the given function. + // chart: dojox.charting.Chart + // functionToGraph: Function + // Function with one numeric parameter (x or y typically) + // params: Object + // can contain the number of the graph in the chart it is (an integer), a boolean saying if the functionToGraph is a function of x (otherwise y) + // and the color, which is an object with a stroke with a color's name eg: color:{stroke:"black"} + + params = lang.mixin({}, defaultParams, params); + chart.fullGeometry(); + var x; + var y; + var points; + if(params.fOfX==true){ + x = 'x'; + y = 'y'; + points = calc.generatePoints(functionToGraph, x, y, chart.axes.x.scaler.bounds.span, chart.axes.x.scaler.bounds.lower, chart.axes.x.scaler.bounds.upper, chart.axes.y.scaler.bounds.lower, chart.axes.y.scaler.bounds.upper); + }else{ + x = 'y'; + y = 'x'; + points = calc.generatePoints(functionToGraph, x, y, chart.axes.y.scaler.bounds.span, chart.axes.y.scaler.bounds.lower, chart.axes.y.scaler.bounds.upper, chart.axes.x.scaler.bounds.lower, chart.axes.x.scaler.bounds.upper); + } + + var i = 0; + + if(points.length > 0){ + for(; i < points.length; i++){ + if(points[i].length>0){ + chart.addSeries("Series "+params.graphNumber+"_"+i, points[i], params.color); + } + } + } + // you only need to remove the excess i's + var name = "Series "+params.graphNumber+"_"+i; + while(name in chart.runs){ + chart.removeSeries(name); + i++; + name = "Series "+params.graphNumber+"_"+i; + } + chart.render(); + return points; + }, + + generatePoints: function(/*Function*/ funcToGraph, /*String*/ x, /*String*/ y, /*Number*/ width, /*Number*/ minX, /*Number*/ maxX, /*Number*/ minY, /*Number*/ maxY){ + // summary: + // create the points with information about the graph. + // funcToGraph: Function + // A function with one numeric parameter (x or y typically) + // x: String + // x and y are Strings which always have the values of "x" or "y". If y="x" and x="y" then it is creating points for the function as though it was a function of y + // y: String + // x and y are Strings which always have the values of "x" or "y". If y="x" and x="y" then it is creating points for the function as though it was a function of y + // minX: + // minX, maxX, minY, and maxY are all bounds of the chart. If x="y" then maxY should be the maximum bound of x rather than y + // maxX: + // minX, maxX, minY, and maxY are all bounds of the chart. If x="y" then maxY should be the maximum bound of x rather than y + // minY: + // minX, maxX, minY, and maxY are all bounds of the chart. If x="y" then maxY should be the maximum bound of x rather than y + // maxY: + // minX, maxX, minY, and maxY are all bounds of the chart. If x="y" then maxY should be the maximum bound of x rather than y + // width: + // pixel width of the chart + // output: + // an array of arrays of points + var pow2 = (1 << Math.ceil(Math.log(width) / log2)); + var + dx = (maxX - minX) / pow2, // divide by 2^n instead of width to avoid loss of precision + points = [], // [{x:value, y:value2},...] + series = 0, + slopeTrend, + slopeTrendTemp; + + points[series] = []; + + var i = minX, k, p; + for(var counter = 0; counter <= pow2; i += dx, counter++){ + p = {}; + p[x] = i; + p[y] = funcToGraph({_name:x, _value:i, _graphing:true});//funcToGraph(i); + if(p[x] == null || p[y] == null){ + return {};// someone pushed cancel in the val code + } + if(isNaN(p[y]) || isNaN(p[x])){ + continue; + } + points[series].push(p); + + if(points[series].length == 3){ + slopeTrend = getSlopePairTrend(slope(points[series][points[series].length - 3], points[series][points[series].length-2]), slope(points[series][points[series].length-2], points[series][points[series].length-1])); + continue; + } + if(points[series].length < 4){ + continue; + } + + slopeTrendTemp = getSlopePairTrend(slope(points[series][points[series].length - 3], points[series][points[series].length-2]), slope(points[series][points[series].length-2], points[series][points[series].length-1])); + if(slopeTrend.inc != slopeTrendTemp.inc || slopeTrend.pos != slopeTrendTemp.pos){ + // var a = asymptoteSearch(funcToGraph, points[series][points[series].length - 2], points[series][points[series].length-1]); + var a = asymptoteSearch(funcToGraph, points[series][points[series].length - 3], points[series][points[series].length-1]); + p = points[series].pop(); + // this pop was added after changing the var a line above + points[series].pop(); + for(var j = 0; j < a[0].length; j++){ + points[series].push(a[0][j]); + } + for(k = 1; k < a.length; k++){ + points[++series] = a.pop(); + } + points[series].push(p); + slopeTrend = slopeTrendTemp; + } + } + while(points.length > 1){ + for(k = 0; k < points[1].length; k++){ + if(points[0][points[0].length - 1][x] == points[1][k][x]){ + continue; + } + points[0].push(points[1][k]); + } + points.splice(1, 1); + } + points = points[0]; + + // make new series when it goes off the graph + var s = 0; + var points2 = [ [] ]; + for(k = 0; k < points.length; k++){ + var x1, y1, b, slope1; + if(isNaN(points[k][y]) || isNaN(points[k][x])){ + while(isNaN(points[k][y]) || isNaN(points[k][x])){ + points.splice(k, 1); + } + points2[++s] = []; + k--; + }else if(points[k][y] > maxY || points[k][y] < minY){ + // make the last point's y equal maxY and find a matching x + if(k > 0 && points[k - 1].y!=minY && points[k - 1].y!=maxY){ + slope1 = slope(points[k - 1], points[k]); + if(slope1 > bigNumber){ + slope1 = bigNumber; + }else if(slope1 < -bigNumber){ + slope1 = -bigNumber; + } + if(points[k][y] > maxY){ + y1 = maxY; + }else{ + y1 = minY; + } + b = points[k][y] - slope1 * points[k][x]; + x1 = (y1 - b) / slope1; + + p = {}; + p[x] = x1; + p[y] = funcToGraph(x1);//y1;// + + if(p[y]!=y1){ + p = findMinOrMaxY(funcToGraph, points[k - 1], points[k], y1); + } + + points2[s].push(p); + // setup the next series + points2[++s] = [] + } + var startK = k; + while(k < points.length && (points[k][y] > maxY || points[k][y] < minY)){ + k++; + } + if(k >= points.length){ + if(points2[s].length == 0){ + points2.splice(s, 1); + } + break; + } + // connect the end graph + if(k > 0 && points[k].y != minY && points[k].y != maxY){ + slope1 = slope(points[k - 1], points[k]); + if(slope1 > bigNumber){ + slope1 = bigNumber; + }else if(slope1 < -bigNumber){ + slope1 = -bigNumber; + } + if(points[k - 1][y] > maxY){ + y1 = maxY; + }else{ + y1 = minY; + } + b = points[k][y] - slope1 * points[k][x]; + x1 = (y1 - b) / slope1; + + p = {}; + p[x] = x1; + p[y] = funcToGraph(x1);//y1;// + if(p[y]!=y1){ + p = findMinOrMaxY(funcToGraph, points[k - 1], points[k], y1); + } + points2[s].push(p); + points2[s].push(points[k]); + } + }else{ + points2[s].push(points[k]); + } + } + return points2; + + function findMinOrMaxY(funcToGraph, left, right, minMaxY){ + + while(left<=right){ + var midX = (left[x]+right[x])/2; + var mid = {}; + mid[x] = midX; + mid[y] = funcToGraph(mid[x]); + + if(minMaxY==mid[y]||mid[x]==right[x]||mid[x]==left[x]){ + return mid; + } + + var moveTowardsLarger = true; + if(minMaxY= Math.abs(midpoint[y])){ + pointTemp[0].push(midpoint); + left = rightPoint; + }else{ + pointTemp[1].unshift(midpoint); + if(right[x] == midpoint[x]){ + break; + } + right = midpoint; + } + + } + return pointTemp; + } + + function getSlopePairTrend(slope1, slope2){ + var + isInc = false, + isPos = false; + + if(slope1 < slope2){ + isInc = true; + } + if(slope2 > 0){ + isPos = true; + } + return { inc: isInc, pos: isPos }; + } + + function nextNumber(v){ + var delta; + if(v > -1 && v < 1){ + if(v < 0){ // special handling as we approach 0 + if(v >= -epsilon){ + delta = -v; // always stop at 0 + }else{ + delta = v / Math.ceil(v / epsilon); // divide distance to 0 into equal tiny chunks + } + }else{ + delta = epsilon; + } + }else{ + delta = Math.abs(v) * epsilon; + } + return v + delta; + } + + function slope(p1, p2){ + return (p2[y] - p1[y]) / (p2[x] - p1[x]); + } + }, + Grapher: Grapher + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Readme.txt b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Readme.txt new file mode 100644 index 00000000..b70d1c7c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Readme.txt @@ -0,0 +1,175 @@ +Dojo Toolkit Graphing Calculator Project Readme +Author: Jason Hays +Trac ID: jason_hays22 + +Contents: + Expressions + Variables, Functions, and uninitializing variables + toFrac in GraphPro + Numbers and bases + Graphing equations + Substitutes for hard to type characters + Making Functions + Decimal points, commas, and semicolons in different languages + Important mathematical functions + + + +---------------Expressions---------------- +The calculator has the ability to simplify a valid expression. +With Augmented Mathematical Syntax, users are allowed to use nonstandard operators in their expressions. Those operators include ^, !, and radical. + +^ is used for exponentiation. + It is a binary operator, which means it needs a number on both the left and right side (like multiplication and division) + 2^5 is an example of valid use of ^, and represents two to the power of five. + +! is used for factorial. + It supports numbers that are not whole numbers through the use of the gamma function. It uses the number on its left side. Both 2! and 2.6! are examples of valid input in America. (2,6! is valid in some nations) + +radicals can be used for either square root or various other roots. + to use it as a square root sign, there should only be a number on its right. If you put a number on the left as well, then it will use that number as the root. + +To evaluate an expression, type in a valid expression, such as 2*(10+5), into the input box. If you are using GraphPro, then it is the smaller text box. + After you have chosen an expression, press Enter on either your keyboard or on the lower right of the calculator. + If it did not evaluate, make sure you correctly closed your parentheses. + In the Standard calculator, the answer will appear in the input box, in GraphPro, the answer will appear in the larger text box above. + On the keyboard, you can navigate through your previous inputs with the up and down arrow keys. + +If you enter an operator when the textbox is empty or highlighted (like *) then Ans* should appear. That means the answer you got before will be multiplied by whatever you input next. +So try Ans*3. Whenever you start the calculator, Ans is set to zero. + + +--------------Variables, Functions, and uninitializing variables---------------- +A variable is basically something that stores a value. If you saw Ans in the previous example, you've also seen a variable. +If you want to store your own number somewhere, you'll need to use the = operator. + + Valid variable and function names include cannot start with numbers, do not include spaces, but can start with the alphabet (a-z or A-Z) and can have numbers within the names "var1" is a valid name + + Input "myVar = 2" into the textbox and press "Enter." You've just saved a variable. Now if you ever type myVar into an expression, 2 will appear (unless you change it to something else). + Variables are best used to store Ans. Ans is overridden whenever you evaluate an expression, so it is good to store the value of Ans somewhere else before it is overridden. + + If you want a variable (like myVar) to become empty, or undefined, you just need to set it equal to undefined. + Now try "myVar = undefined" Now myVar is no longer defined. + + Functions are very useful for finding answers and gathering data. + You can use functions by inputting their name and their arguments. + For this example, I'll be using the functions named "sqrt" and "pow" + + sqrt is a function with one argument. That argument has a name too, its name is 'x.' x is a very common name amongst built in functions + So, let's run a function. Input "sqrt" then input a left parenthesis (all arguments of a function go within parentheses). Now type a value for x, like 2. + Now close the parentheses with the right parenthesis. If you used 2, you should have "sqrt(2)" in the text box. If you press enter, you should get the square root of 2 back from the calculator. + + Now for "pow" it has two arguments 'x' and 'y' + Type in "pow(" and pick a value for 'x' (I am picking 2 again) + but now, you need to separate the value you gave x with a list separator. Depending on your location, it is either a comma or a semicolon. I'm in America, and I use commas. + by this point, I have "pow(2," + Now we need a value for 'y' (I'm using 3). Put a ')' and now I have 'pow(2,3)' + Press Enter, and, following my example, you should get 8 + + In this calculator, there are several ways to input arguments. + You've already seen the first way, just input numbers in a specific order based on the names. + + The second way is with an arbitrary order, and storage. + With 'pow' I can input "pow(y=3, x=2)" and get the exact answer as before. x and y will retain their assigned values, so you will need to set them to undefined it you want to try the next way. + + The third way is to let the calculator ask you for the values. Input "pow()" If the values have been assigned globally, then it will use those values, but otherwise, it will ask for values of x and y. They will not be stored globally this way. + + I'll go ahead and mention that because of the way the calculator parses, underscores should not be used to name a variable like _#_ (where # is an integer of any length) + +---------------toFrac()---------------- +toFrac is a function that takes one parameter, x, and converts it to a fraction for you. It is only in GraphPro, not the Standard mode. + It will try to simplify pi, square roots, and rational numbers where the denominator is less than a set bound (100 right now). + Immediately after the calculator starts, toFrac may seen slow, but it just needs to finish loading when the calculator starts. After that, it will respond without delay. + For an example, input "toFrac(.5)" or (,5 for some). It will return "1/2" + For a more complicated example, input "toFrac(atan(1))" to get back "pi/4" (atan is also known as "arc tangent" or "inverse tangent") + +--------------Numbers and bases---------------- +This calculator supports multiple bases, and not only that, but non integer versions of multiple bases. + What is a base? Well, the numbers you know and love are base 10. That means that you count to all of the numbers up until 10 before you move on to add to the tenths place. + So, what about base 2? All of the numbers up until 2 are 0 and 1. If you want to type a base 2 number into the calculator, simply input "0b" (meaning base 2) followed by some number of 1's and 0's. 0b101 is 5 in base 10 + + Hexadecimal is 0x, and octal is 0o, but i won't go into too much detail on those here. + If you want an arbitrary integer base, type the number in the correct base, insert '#' and put the radix on the end. ".1#3" is the same as 1/3 in base 10 + Because there is not yet cause for it, you cannot have a base that is not a whole number. + +--------------Graphing Equations---------------- +First thing is first, in GraphPro only, the "Graph" button in the top left corner opens the Graph Window + So, now you should see a single text box adjacent to "y=" + Type the right side of the equation using 'x' as the independent variable. + "sin(x)" for example. To Graph it, make sure the checkbox to the left of the equation is selected, and press the Draw Selected button. + You can change the color in the color tab. By default, it is black. Under window options, you can change the window size and x/y boundaries + + Let's add a second function. Go to the Add Function button, select the mode you want, and press Create. Another input box will appear. + If you selected x= as the Mode, then y is the independent variable for the line (an example is "x=sin(y)"). + If you want to erase, check the checkboxes you want to erase, and press "Erase Selected" + And similarly, Delete Selected will delete the chosen functions + + "Close" will terminate the Graph Window completely + +---------------Substitutes for hard to type characters--------------- +Some characters are not simple to add in for keyboard users, so there are substitutes that are much easier to add into the text box. + + pi or PI can be used in place of the special character for it. + For epsilon, eps or E can be used. + radical has replacement functions. sqrt(x) or pow(x,y) can be used instead. + +--------------Making Functions----------------- +My favorite part. Before we start, I'll mention that Augmented Mathematical Syntax is allowed in the Function Generator (yay). + Ok, now the bad news: to prevent some security issues, keywords new and delete are forbidden. + Sorry, it is a math calculator, not a game container; not that that would be so bad, but it is to keep it from being used for some evil purposes. + + Ok, onto function making. Most JavaScript arithmetic is supported here, but, some syntax was overlapping mathematical syntax, so ++Variable no longer increases the contents of Variable because of ++1, but Variable++ does increase it (same deal with --) + Strings have incredibly limited support. Objects have near zero support + So, let's make a Function: + Press the "Func" button. A Function Window should pop up. + Enter a name into the "functionName" box. (it must follow the name guidelines in the variables section) I'm putting myFunc + Enter the variables you want into the arguments box (I'll put "x,y" so I have two arguments x and y) + Now enter the giant text box. + Type "return " and then the expression you want to give to the calculator. I'm putting "return x*2 + y/2" + Then press Save. Now your function should appear in the functionName list and you can call it in the Calculator. + + If you want to Delete a function you made, select it in the function Name list, and then press Delete. + If you altered a previously saved function (and haven't saved over the old one) you can reset the text back to its original state with the Reset button. + Clear will empty out all of the text boxes in the Function Window + Close terminates the Function Window + +---------------Decimal points, commas, and semicolons in different languages---------------- +In America, 3.5 is three and one half. Comma is used to separate function parameters and list members. + +In some nations, 3,5 is three and one half. In lists, ;'s are used to separate its members. +So, when you evaluate expressions, 3,5 will be valid, but in the function generator, some ambiguous texts prevent me from allowing the conversion of that format to JavaScript. So I cannot parse it in the Function Generator. +And here is my example: +var i = 3,5; + b = 2; +I cannot discern whether the semicolon between i and b are list separators or the JavaScript character for end the line. b could be intended as a global variable, and i is a local variable, but I don't know that. So language conversion isn't supported in Function Making. + +--------------Important mathematical Functions--------------- +Here is a list of functions you may find useful and their variable arguments: + +sqrt(x) returns the square root of x +x is in radians for all trig functions +sin(x) returns the sine of x +asin(x) returns the arc sine of x +cos(x) returns the cosine of x +acos(x) returns the arc cosine of x +tan(x) returns the tangent of x +atan(x) returns the arc tangent of x + +atan2(y, x) returns the arc tangent of y and x +Round(x) returns the rounded integer form of x +Int(x) Cuts off the decimal digits of x +Ceil(x) If x has decimal digits, get the next highest integer + +ln(x) return the natural log of x +log(x) return log base 10 of x +pow(x, y) return x to the power of y + +permutations(n, r) get the permutations for n choose r +P(n, r) see permutations +combinations(n, r) get the combinations for n choose r +C(n, r) see combinations + +toRadix(number, baseOut) convert a number to a different base (baseOut) +toBin(number) convert number to a binary number +toOct(number) convert number to an octal number +toHex(number) convert number to a hexadecimal number diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Standard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Standard.js new file mode 100644 index 00000000..6a4a7012 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Standard.js @@ -0,0 +1,225 @@ +//>>built +require({cache:{"url:dojox/calc/templates/Standard.html":"
    \n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t(-)\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\n
    \n"}}); +define("dojox/calc/Standard",["dojo/_base/declare","dojo/_base/lang","dojo/_base/sniff","dojo/_base/window","dojo/_base/event","dojo/dom-style","dojo/ready","dojo/keys","dijit/registry","dijit/typematic","dijit/_WidgetBase","dijit/_WidgetsInTemplateMixin","dijit/_TemplatedMixin","dijit/form/_TextBoxMixin","dojox/math/_base","dijit/TooltipDialog","dojo/text!./templates/Standard.html","dojox/calc/_Executor","dijit/Menu","dijit/MenuItem","dijit/form/ComboButton","dijit/form/Button","dijit/form/TextBox"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e,_f,_10,_11,_12){ +return _1("dojox.calc.Standard",[_b,_d,_c],{templateString:_11,readStore:null,writeStore:null,functions:[],executorLoaded:function(){ +_7(_2.hitch(this,function(){ +this.loadStore(this.readStore,true); +this.loadStore(this.writeStore); +})); +},saveFunction:function(_13,_14,_15){ +this.functions[_13]=this.executor.normalizedFunction(_13,_14,_15); +this.functions[_13].args=_14; +this.functions[_13].body=_15; +},loadStore:function(_16,_17){ +if(!_16){ +return; +} +_16.query({}).forEach(_2.hitch(this,function(_18){ +_2.hitch(this,_17?this.executor.normalizedFunction:this.saveFunction)(_18.name,_18.args,_18.body); +})); +},parseTextbox:function(){ +var _19=this.textboxWidget.textbox.value; +if(_19==""&&this.commandList.length>0){ +this.setTextboxValue(this.textboxWidget,this.commandList[this.commandList.length-1]); +_19=this.textboxWidget.textbox.value; +} +if(_19!=""){ +var ans=this.executor.eval(_19); +if((typeof ans=="number"&&isNaN(ans))){ +if(this.commandList.length==0||this.commandList[this.commandList.length-1]!=_19){ +this.commandList.push(_19); +} +this.print(_19,false); +this.print("Not a Number",true); +}else{ +if(((typeof ans=="object"&&"length" in ans)||typeof ans!="object")&&typeof ans!="function"&&ans!=null){ +this.executor.eval("Ans="+ans); +if(this.commandList.length==0||this.commandList[this.commandList.length-1]!=_19){ +this.commandList.push(_19); +} +this.print(_19,false); +this.print(ans,true); +} +} +this.commandIndex=this.commandList.length-1; +if(this.hasDisplay){ +this.displayBox.scrollTop=this.displayBox.scrollHeight; +} +_e.selectInputText(this.textboxWidget.textbox); +}else{ +this.textboxWidget.focus(); +} +},cycleCommands:function(_1a,_1b,_1c){ +if(_1a==-1||this.commandList.length==0){ +return; +} +var _1d=_1c.charOrCode; +if(_1d==_8.UP_ARROW){ +this.cycleCommandUp(); +}else{ +if(_1d==_8.DOWN_ARROW){ +this.cycleCommandDown(); +} +} +},cycleCommandUp:function(){ +if(this.commandIndex-1<0){ +this.commandIndex=0; +}else{ +this.commandIndex--; +} +this.setTextboxValue(this.textboxWidget,this.commandList[this.commandIndex]); +},cycleCommandDown:function(){ +if(this.commandIndex+1>=this.commandList.length){ +this.commandIndex=this.commandList.length; +this.setTextboxValue(this.textboxWidget,""); +}else{ +this.commandIndex++; +this.setTextboxValue(this.textboxWidget,this.commandList[this.commandIndex]); +} +},onBlur:function(){ +if(_3("ie")){ +var tr=_4.doc.selection.createRange().duplicate(); +var _1e=tr.text||""; +var ntr=this.textboxWidget.textbox.createTextRange(); +tr.move("character",0); +ntr.move("character",0); +try{ +ntr.setEndPoint("EndToEnd",tr); +this.textboxWidget.textbox.selectionEnd=(this.textboxWidget.textbox.selectionStart=String(ntr.text).replace(/\r/g,"").length)+_1e.length; +} +catch(e){ +} +} +},onKeyPress:function(e){ +if(e.charOrCode==_8.ENTER){ +this.parseTextbox(); +_5.stop(e); +}else{ +if(e.charOrCode=="!"||e.charOrCode=="^"||e.charOrCode=="*"||e.charOrCode=="/"||e.charOrCode=="-"||e.charOrCode=="+"){ +if(_3("ie")){ +var tr=_4.doc.selection.createRange().duplicate(); +var _1f=tr.text||""; +var ntr=this.textboxWidget.textbox.createTextRange(); +tr.move("character",0); +ntr.move("character",0); +try{ +ntr.setEndPoint("EndToEnd",tr); +this.textboxWidget.textbox.selectionEnd=(this.textboxWidget.textbox.selectionStart=String(ntr.text).replace(/\r/g,"").length)+_1f.length; +} +catch(e){ +} +} +if(this.textboxWidget.get("value")==""){ +this.setTextboxValue(this.textboxWidget,"Ans"); +}else{ +if(this.putInAnsIfTextboxIsHighlighted(this.textboxWidget.textbox,_5.charOrCode)){ +this.setTextboxValue(this.textboxWidget,"Ans"); +_e.selectInputText(this.textboxWidget.textbox,this.textboxWidget.textbox.value.length,this.textboxWidget.textbox.value.length); +} +} +} +} +},insertMinus:function(){ +this.insertText("-"); +},print:function(_20,_21){ +var t=""; +}else{ +t+="text-align:left;'>"; +} +t+=_20+"
    "; +if(this.hasDisplay){ +this.displayBox.innerHTML+=t; +}else{ +this.setTextboxValue(this.textboxWidget,_20); +} +},setTextboxValue:function(_22,val){ +_22.set("value",val); +},putInAnsIfTextboxIsHighlighted:function(_23){ +if(typeof _23.selectionStart=="number"){ +if(_23.selectionStart==0&&_23.selectionEnd==_23.value.length){ +return true; +} +}else{ +if(document.selection){ +var _24=document.selection.createRange(); +if(_23.value==_24.text){ +return true; +} +} +} +return false; +},clearText:function(){ +if(this.hasDisplay&&this.textboxWidget.get("value")==""){ +this.displayBox.innerHTML=""; +}else{ +this.setTextboxValue(this.textboxWidget,""); +} +this.textboxWidget.focus(); +},insertOperator:function(_25){ +if(typeof _25=="object"){ +_25=_25=_9.getEnclosingWidget(_25["target"]).value; +} +if(this.textboxWidget.get("value")==""||this.putInAnsIfTextboxIsHighlighted(this.textboxWidget.textbox)){ +_25="Ans"+_25; +} +this.insertText(_25); +},insertText:function(_26){ +setTimeout(_2.hitch(this,function(){ +var _27=this.textboxWidget.textbox; +if(_27.value==""){ +_27.selectionStart=0; +_27.selectionEnd=0; +} +if(typeof _26=="object"){ +_26=_26=_9.getEnclosingWidget(_26["target"]).value; +} +var _28=_27.value.replace(/\r/g,""); +if(typeof _27.selectionStart=="number"){ +var pos=_27.selectionStart; +var cr=0; +if(_3("opera")){ +cr=(_27.value.substring(0,pos).match(/\r/g)||[]).length; +} +_27.value=_28.substring(0,_27.selectionStart-cr)+_26+_28.substring(_27.selectionEnd-cr); +_27.focus(); +pos+=_26.length; +_e.selectInputText(this.textboxWidget.textbox,pos,pos); +}else{ +if(document.selection){ +if(this.handle){ +clearTimeout(this.handle); +this.handle=null; +} +_27.focus(); +this.handle=setTimeout(function(){ +var _29=document.selection.createRange(); +_29.text=_26; +_29.select(); +this.handle=null; +},0); +} +} +}),0); +},hasDisplay:false,postCreate:function(){ +this.handle=null; +this.commandList=[]; +this.commandIndex=0; +if(this.displayBox){ +this.hasDisplay=true; +} +if(this.toFracButton&&!_12.toFrac){ +_6.set(this.toFracButton.domNode,{visibility:"hidden"}); +} +if(this.functionMakerButton&&!_12.FuncGen){ +_6.set(this.functionMakerButton.domNode,{visibility:"hidden"}); +} +if(this.grapherMakerButton&&!_12.Grapher){ +_6.set(this.grapherMakerButton.domNode,{visibility:"hidden"}); +} +this._connects.push(_a.addKeyListener(this.textboxWidget.textbox,{charOrCode:_8.UP_ARROW,shiftKey:false,metaKey:false,ctrlKey:false},this,this.cycleCommands,200,200)); +this._connects.push(_a.addKeyListener(this.textboxWidget.textbox,{charOrCode:_8.DOWN_ARROW,shiftKey:false,metaKey:false,ctrlKey:false},this,this.cycleCommands,200,200)); +this.startup(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Standard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Standard.js.uncompressed.js new file mode 100644 index 00000000..59af773a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/Standard.js.uncompressed.js @@ -0,0 +1,359 @@ +require({cache:{ +'url:dojox/calc/templates/Standard.html':"
    \n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\n
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t(-)\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t
    \n\n
    \n"}}); +define("dojox/calc/Standard", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/_base/sniff", + "dojo/_base/window", + "dojo/_base/event", + "dojo/dom-style", + "dojo/ready", + "dojo/keys", + "dijit/registry", + "dijit/typematic", + "dijit/_WidgetBase", + "dijit/_WidgetsInTemplateMixin", + "dijit/_TemplatedMixin", + "dijit/form/_TextBoxMixin", + "dojox/math/_base", + "dijit/TooltipDialog", + "dojo/text!./templates/Standard.html", + "dojox/calc/_Executor", // template + "dijit/Menu", // template + "dijit/MenuItem", // template + "dijit/form/ComboButton", // template + "dijit/form/Button", // template + "dijit/form/TextBox" // template +], function(declare, lang, has, win, event, domStyle, ready, keys, registry, typematic, WidgetBase, WidgetsInTemplateMixin, TemplatedMixin, _TextBoxMixin, math, TooltipDialog, template, calc){ + + return declare( + "dojox.calc.Standard", + [WidgetBase, TemplatedMixin, WidgetsInTemplateMixin], + { + // summary: + // The dialog layout for a standard 4 function/algebraic calculator + + templateString: template, + + readStore:null, + writeStore:null, + functions: [], + + executorLoaded: function(){ + // summary: + // load in the stores after executor is loaded (the stores need executor to be loaded because it parses them) + ready(lang.hitch(this, function(){ + this.loadStore(this.readStore, true); + this.loadStore(this.writeStore); + })); + }, + + saveFunction: function(name, args, body){ + // summary: + // make the function with executor + this.functions[name] = this.executor.normalizedFunction(name, args, body); + this.functions[name].args = args; + this.functions[name].body = body; + }, + + loadStore: function(store, isReadOnly){ + // summary: + // load an entire store, and make it publicly editable/viewable based on isReadOnly + if(!store){ + return; + } + store.query({}).forEach(lang.hitch(this, function(item){ + lang.hitch(this, isReadOnly ? this.executor.normalizedFunction : this.saveFunction)(item.name, item.args, item.body); + })); + }, + + parseTextbox: function(){ + // summary: + // parse the contents of the textboxWidget and display the answer somewhere (depending on the layout) + var text = this.textboxWidget.textbox.value; + if(text == "" && this.commandList.length > 0){ + this.setTextboxValue(this.textboxWidget, this.commandList[this.commandList.length-1]); + text = this.textboxWidget.textbox.value; + } + if(text!=""){ + var ans = this.executor.eval(text); + + if((typeof ans == "number" && isNaN(ans))){ + if(this.commandList.length == 0 || this.commandList[this.commandList.length - 1] != text){ + this.commandList.push(text); + } + this.print(text, false); + this.print("Not a Number", true); + }else if(((typeof ans == "object" && "length" in ans) || typeof ans != "object") && typeof ans != "function" && ans != null){ + this.executor.eval("Ans="+ans); + // add it to the command list as well + if(this.commandList.length == 0 || this.commandList[this.commandList.length - 1] != text){ + this.commandList.push(text); + } + this.print(text, false); + this.print(ans, true); + } + this.commandIndex = this.commandList.length-1; + //this.displayBox.textbox.scrollTop=this.displayBox.textbox.scrollHeight; + if(this.hasDisplay){ + this.displayBox.scrollTop=this.displayBox.scrollHeight; + } + //this.clearText(); + //this.textboxWidget.focus(); + _TextBoxMixin.selectInputText(this.textboxWidget.textbox); + + }else{ + this.textboxWidget.focus(); + } + }, + cycleCommands: function(count, node, event){ + // summary: + // Cycle through the commands that the user has entered. + // It does not wrap around. + if(count == -1 || this.commandList.length==0){ + return; + } + var keyNum = event.charOrCode; + //up arrow + if(keyNum == keys.UP_ARROW){ + this.cycleCommandUp(); + }else if(keyNum == keys.DOWN_ARROW){ + this.cycleCommandDown(); + } + }, + cycleCommandUp: function(){ + // summary: + // cycle up through the list of commands the user has entered already + if(this.commandIndex-1<0){ + this.commandIndex=0; + }else{ + this.commandIndex--; + } + this.setTextboxValue(this.textboxWidget, this.commandList[this.commandIndex]); + }, + cycleCommandDown: function(){ + // summary: + // cycle down through the list of commands the user has entered already + if(this.commandIndex+1>=this.commandList.length){ + this.commandIndex=this.commandList.length; + this.setTextboxValue(this.textboxWidget, ""); + }else{ + this.commandIndex++; + this.setTextboxValue(this.textboxWidget, this.commandList[this.commandIndex]); + } + + }, + onBlur: function(){ + // summary: + // IE is lacking in function when it comes to the text boxes, so here, make it work like other browsers do by forcing a node.selectionStart and End onto it + if(has('ie')){ + var tr = win.doc.selection.createRange().duplicate(); + var selectedText = tr.text || ''; + var ntr = this.textboxWidget.textbox.createTextRange(); + tr.move("character",0); + ntr.move("character",0); + try{ + ntr.setEndPoint("EndToEnd", tr); + this.textboxWidget.textbox.selectionEnd = (this.textboxWidget.textbox.selectionStart = String(ntr.text).replace(/\r/g,"").length) + selectedText.length; + + }catch(e){} + } + }, + onKeyPress: function(e){ + // summary: + // handle key input for Enter and operators + if(e.charOrCode == keys.ENTER){ + this.parseTextbox(); + // stop form submissions + event.stop(e); + }else if(e.charOrCode == '!' || e.charOrCode == '^' || e.charOrCode == '*' || e.charOrCode == '/' || e.charOrCode == '-' || e.charOrCode == '+'){ + if(has('ie')){ + var tr = win.doc.selection.createRange().duplicate(); + var selectedText = tr.text || ''; + var ntr = this.textboxWidget.textbox.createTextRange(); + tr.move("character",0); + ntr.move("character",0); + try{ + ntr.setEndPoint("EndToEnd", tr); + this.textboxWidget.textbox.selectionEnd = (this.textboxWidget.textbox.selectionStart = String(ntr.text).replace(/\r/g,"").length) + selectedText.length; + + }catch(e){} + } + + if(this.textboxWidget.get("value")==""){ + this.setTextboxValue(this.textboxWidget, "Ans"); + }else if(this.putInAnsIfTextboxIsHighlighted(this.textboxWidget.textbox, event.charOrCode)){ + this.setTextboxValue(this.textboxWidget, "Ans");//this.insertText("Ans"); + // move the cursor to the end of "Ans" + _TextBoxMixin.selectInputText(this.textboxWidget.textbox, this.textboxWidget.textbox.value.length, this.textboxWidget.textbox.value.length); + } + } + }, + insertMinus: function(){ + // summary: + // insert a minus sign when they press (-) in the combo button + this.insertText('-'); + }, + print: function(text, isRight){ + // summary: + // print the answer (typically) to the display or the input box + var t = ""; + }else{ + t += "text-align:left;'>"; + } + t += text+"
    "; + if(this.hasDisplay){ + this.displayBox.innerHTML += t; + }else{// if there is not a display box, put the answer in the input box + this.setTextboxValue(this.textboxWidget, text); + } + //this.setTextboxValue(this.displayBox, this.displayBox.get('value')+'\n'+text); + }, + setTextboxValue: function(widget, val){ + // summary: + // set a widget's value + widget.set('value', val); + }, + putInAnsIfTextboxIsHighlighted: function(node){ + // summary: + // try seeing if the textbox is highlighted completely so you know if Ans should be put in for an operator like + + + //console.log("Entered "+node.selectionStart + " "+ node.selectionEnd); + if(typeof node.selectionStart == "number"){ // not-IE + if(node.selectionStart==0 && node.selectionEnd == node.value.length){ + //node.value = "Ans"; + //dijit.selectInputText(node, node.value.length, node.value.length); + return true; + } + }else if(document.selection){ // IE + //console.log("Entered 2"); + var range = document.selection.createRange(); + //console.log("Range: "+range.text +" Node: "+node.value); + if(node.value == range.text){ + //this.insertText("Ans"); + return true; + } + } + return false; + }, + clearText: function(){ + // summary: + // this clears the input box if it has content, but if it does not it clears the display + if(this.hasDisplay && this.textboxWidget.get('value')==""){ + this.displayBox.innerHTML = "";//this.setTextboxValue(this.displayBox, ""); + }else{ + this.setTextboxValue(this.textboxWidget, ""); + } + this.textboxWidget.focus(); + }, + /*insertMinusSign: function(){ + // + var v = this.subtract.get('label'); + if(v != '(-)' && this.putInAnsIfTextboxIsHighlighted(this.textboxWidget.textbox)){ + this.insertText("Ans-"); + return; + } + this.insertText('-'); + },*/ + insertOperator: function(newText){ + // summary: + // insert an operator with a button + if(typeof newText == "object"){ + newText = newText = registry.getEnclosingWidget(newText["target"]).value; + } + if(this.textboxWidget.get("value") == "" || this.putInAnsIfTextboxIsHighlighted(this.textboxWidget.textbox)){ + newText = "Ans"+newText; + } + this.insertText(newText); + }, + insertText: function(newText){//(node, newText){ + // summary: + // insert text to the textboxWidget node + setTimeout(lang.hitch(this, function(){ + + var node = this.textboxWidget.textbox; + if(node.value==""){ + node.selectionStart = 0; + node.selectionEnd = 0; + } + if(typeof newText == "object"){ + newText = newText = registry.getEnclosingWidget(newText["target"]).value; + } + + var value = node.value.replace(/\r/g,''); + if(typeof node.selectionStart == "number"){ // not-IE + var pos = node.selectionStart; + var cr = 0; + if(has('opera')){ + cr = (node.value.substring(0,pos).match(/\r/g) || []).length; + } + node.value = value.substring(0, node.selectionStart-cr) + newText + value.substring(node.selectionEnd-cr); + node.focus(); + pos += newText.length; + //node.setSelectionRange(pos, pos); + _TextBoxMixin.selectInputText(this.textboxWidget.textbox, pos, pos); + }else if(document.selection){ // IE + if(this.handle){ + clearTimeout(this.handle); + this.handle = null; + } + node.focus(); + this.handle = setTimeout(function(){ + var range = document.selection.createRange(); + range.text = newText; + // show cursor + range.select(); + this.handle = null; + }, 0); + + } + }), 0); + }, + hasDisplay: false, + postCreate: function(){ + // summary: + // run startup, see if there is an upper display box, etc + this.handle = null; + this.commandList = []; + this.commandIndex = 0; + + if(this.displayBox){ + this.hasDisplay = true; + } + if(this.toFracButton && !calc.toFrac){ + domStyle.set(this.toFracButton.domNode, { visibility: "hidden" }); + } + if(this.functionMakerButton && !calc.FuncGen){ + domStyle.set(this.functionMakerButton.domNode, { visibility: "hidden" }); + } + if(this.grapherMakerButton && !calc.Grapher){ + domStyle.set(this.grapherMakerButton.domNode, { visibility: "hidden" }); + } + this._connects.push(typematic.addKeyListener(this.textboxWidget.textbox, + { + charOrCode:keys.UP_ARROW, + shiftKey:false, + metaKey:false, + ctrlKey:false // ALT is optional since its unspecified + }, + this, this.cycleCommands, 200, 200)); + this._connects.push(typematic.addKeyListener(this.textboxWidget.textbox, + { + charOrCode:keys.DOWN_ARROW, + shiftKey:false, + metaKey:false, + ctrlKey:false // ALT is optional since its unspecified + }, + this, this.cycleCommands, 200, 200)); + + + //onClick="this.insertText(document.getElementById('textbox'), '\u221A')" + //this.sqrt.set("onClick", lang.hitch(this, "insertText", this.textboxWidget, '\u221A')); + //this.pi.set("onClick", lang.hitch(this, "insertText", this.textboxWidget, '\u03C0')); + this.startup() + } + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/_Executor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/_Executor.js new file mode 100644 index 00000000..dfa1fdfc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/_Executor.js @@ -0,0 +1,75 @@ +//>>built +define("dojox/calc/_Executor",["dojo/_base/kernel","dojo/_base/declare","dojo/_base/lang","dojo/number","dijit/_base/manager","dijit/_WidgetBase","dijit/_TemplatedMixin","dojox/math/_base"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +_1.experimental("dojox.calc"); +var _9,_a; +var _b=(1<<30)-35; +var _c=_2("dojox.calc._Executor",[_6,_7],{templateString:"",_onLoad:function(_d){ +_9=_d; +_d.outerPrompt=window.prompt; +_d.dojox={math:{}}; +for(var f in _8){ +_d.dojox.math[f]=_3.hitch(_8,f); +} +if("toFrac" in _a){ +_d.toFracCall=_3.hitch(_a,"toFrac"); +this.Function("toFrac","x","return toFracCall(x)"); +} +_d.isJavaScriptLanguage=_4.format(1.5,{pattern:"#.#"})=="1.5"; +_d.Ans=0; +_d.pi=Math.PI; +_d.eps=Math.E; +_d.powCall=_3.hitch(_a,"pow"); +this.normalizedFunction("sqrt","x","return Math.sqrt(x)"); +this.normalizedFunction("sin","x","return Math.sin(x)"); +this.normalizedFunction("cos","x","return Math.cos(x)"); +this.normalizedFunction("tan","x","return Math.tan(x)"); +this.normalizedFunction("asin","x","return Math.asin(x)"); +this.normalizedFunction("acos","x","return Math.acos(x)"); +this.normalizedFunction("atan","x","return Math.atan(x)"); +this.normalizedFunction("atan2","y, x","return Math.atan2(y, x)"); +this.normalizedFunction("Round","x","return Math.round(x)"); +this.normalizedFunction("Int","x","return Math.floor(x)"); +this.normalizedFunction("Ceil","x","return Math.ceil(x)"); +this.normalizedFunction("ln","x","return Math.log(x)"); +this.normalizedFunction("log","x","return Math.log(x)/Math.log(10)"); +this.normalizedFunction("pow","x, y","return powCall(x,y)"); +this.normalizedFunction("permutations","n, r","return dojox.math.permutations(n, r);"); +this.normalizedFunction("P","n, r","return dojox.math.permutations(n, r);"); +this.normalizedFunction("combinations","n, r","return dojox.math.combinations(n, r);"); +this.normalizedFunction("C","n, r","return dojox.math.combinations(n, r)"); +this.normalizedFunction("toRadix","number, baseOut","if(!baseOut){ baseOut = 10; } if(typeof number == 'string'){ number = parseFloat(number); }return number.toString(baseOut);"); +this.normalizedFunction("toBin","number","return toRadix(number, 2)"); +this.normalizedFunction("toOct","number","return toRadix(number, 8)"); +this.normalizedFunction("toHex","number","return toRadix(number, 16)"); +this.onLoad(); +},onLoad:function(){ +},Function:function(_e,_f,_10){ +return _3.hitch(_9,_9.Function.apply(_9,arguments)); +},normalizedFunction:function(_11,_12,_13){ +return _3.hitch(_9,_9.normalizedFunction.apply(_9,arguments)); +},deleteFunction:function(_14){ +_9[_14]=undefined; +delete _9[_14]; +},eval:function(_15){ +return _9.eval.apply(_9,arguments); +},destroy:function(){ +this.inherited(arguments); +_9=null; +}}); +return _a={pow:function(_16,_17){ +function _18(n){ +return Math.floor(n)==n; +}; +if(_16>=0||_18(_17)){ +return Math.pow(_16,_17); +}else{ +var inv=1/_17; +return (_18(inv)&&(inv&1))?-Math.pow(-_16,_17):NaN; +} +},approx:function(r){ +if(typeof r=="number"){ +return Math.round(r*_b)/_b; +} +return r; +},_Executor:_c}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/_Executor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/_Executor.js.uncompressed.js new file mode 100644 index 00000000..8f08138a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/_Executor.js.uncompressed.js @@ -0,0 +1,143 @@ +define("dojox/calc/_Executor", [ + "dojo/_base/kernel", + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/number", + "dijit/_base/manager", + "dijit/_WidgetBase", + "dijit/_TemplatedMixin", + "dojox/math/_base" +], function(kernel, declare, lang, number, dijit, WidgetBase, TemplatedMixin, math){ + + kernel.experimental("dojox.calc"); + + var calcEnv, calc; // private + + var magicBigInt = (1 << 30) - 35; // 2^30 - 35 is a prime that ensures approx(n/(2^k)) != n/(2^k) for k >= 1 and n < 2^k + + var Executor = declare( + "dojox.calc._Executor", + [WidgetBase, TemplatedMixin], + { + // summary: + // A graphing, scientific calculator + // + + templateString: '', + + _onLoad: function(env){ + // summary: + // prepare for communications between the user and the calculator by saving the calculator environment, storing the prompt function locally, and making dojox.math available + + calcEnv = env; + env.outerPrompt = window.prompt; // for IE who can't execute the iframe's prompt method without notifying the user first + // let the user call dojo math functions + env.dojox = {math: {}}; + for(var f in math){ env.dojox.math[f] = lang.hitch(math, f); } + if("toFrac" in calc){ + env.toFracCall = lang.hitch(calc, 'toFrac'); + this.Function('toFrac', 'x', "return toFracCall(x)"); + } + + env.isJavaScriptLanguage = number.format(1.5, {pattern:'#.#'}) == "1.5"; + env.Ans = 0; + env.pi = Math.PI; + env.eps = Math.E; + + env.powCall = lang.hitch(calc, 'pow'); + + // TODO add Degrees support to trig functions + + + //this.normalizedFunction('toString', 'number, radix', "return number.toString(radix)"); + this.normalizedFunction('sqrt', 'x', "return Math.sqrt(x)"); + this.normalizedFunction('sin', 'x', "return Math.sin(x)"); + this.normalizedFunction('cos', 'x', "return Math.cos(x)"); + this.normalizedFunction('tan', 'x', "return Math.tan(x)"); + this.normalizedFunction('asin', 'x', "return Math.asin(x)"); + this.normalizedFunction('acos', 'x', "return Math.acos(x)"); + this.normalizedFunction('atan', 'x', "return Math.atan(x)"); + this.normalizedFunction('atan2', 'y, x', "return Math.atan2(y, x)"); + this.normalizedFunction('Round', 'x', "return Math.round(x)"); + this.normalizedFunction('Int', 'x', "return Math.floor(x)"); + this.normalizedFunction('Ceil', 'x', "return Math.ceil(x)"); + this.normalizedFunction('ln', 'x', "return Math.log(x)"); + this.normalizedFunction('log', 'x', "return Math.log(x)/Math.log(10)"); + this.normalizedFunction('pow', 'x, y', "return powCall(x,y)"); + this.normalizedFunction('permutations', 'n, r', "return dojox.math.permutations(n, r);"); + this.normalizedFunction('P', 'n, r', "return dojox.math.permutations(n, r);"); + this.normalizedFunction('combinations', 'n, r', "return dojox.math.combinations(n, r);"); + this.normalizedFunction('C', 'n, r', "return dojox.math.combinations(n, r)"); + + this.normalizedFunction('toRadix', 'number, baseOut', "if(!baseOut){ baseOut = 10; } if(typeof number == 'string'){ number = parseFloat(number); }return number.toString(baseOut);"); + this.normalizedFunction('toBin', 'number', "return toRadix(number, 2)"); + this.normalizedFunction('toOct', 'number', "return toRadix(number, 8)"); + this.normalizedFunction('toHex', 'number', "return toRadix(number, 16)"); + this.onLoad(); + }, + + onLoad: function(){ + // summary: + // this should be overwritten and become a great place for making user predefined functions + }, + Function: function(name, args, body){ + // summary: + // create an anonymous function to run the code the parser generates from the user input. + // name: + // this argument is simply a String that represents the name of the function being evaluated. It can be undefined, but in that case the function is a one time use. + // args: String + // the function arguments + // body: String + // the function body + return lang.hitch(calcEnv, calcEnv.Function.apply(calcEnv, arguments)); + }, + normalizedFunction: function(name, args, body){ + return lang.hitch(calcEnv, calcEnv.normalizedFunction.apply(calcEnv, arguments)); + }, + deleteFunction: function(name){ + calcEnv[name] = undefined; + delete calcEnv[name]; + }, + eval: function(text){ + // summary: + // create an anonymous function to run the code the parser generates from the user input. + // text: String + // the user input that needs to be parsed + return calcEnv.eval.apply(calcEnv, arguments); + }, + destroy: function(){ + this.inherited(arguments); + calcEnv = null; // assist garbage collection + } + }); + + return calc = { + pow: function(/*Number*/ base, /*Number*/ exponent){ + // summary: + // Computes base ^ exponent + // Wrapper to Math.pow(base, exponent) to handle (-27) ^ (1/3) + + function isInt(n){ + return Math.floor(n) == n; + } + + if(base >= 0 || isInt(exponent)){ + return Math.pow(base, exponent); + }else{ // e.g. (1/3) root of -27 = -3 + var inv = 1 / exponent; + // e.g. 1 / (1/3) must be an odd integer + return (isInt(inv) && (inv & 1)) ? -Math.pow(-base, exponent) : NaN; + } + }, + approx: function(/*Number*/ r){ + // summary: + // Return a less exact approximation of r such that approx(r * (1 +- eps)) == approx(r) + if(typeof r == "number"){ + return Math.round(r * magicBigInt) / magicBigInt; + } + return r; + }, + _Executor: Executor + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/_ExecutorIframe.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/_ExecutorIframe.html new file mode 100644 index 00000000..2777926d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/_ExecutorIframe.html @@ -0,0 +1,533 @@ + + + + + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/resources/Common.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/resources/Common.css new file mode 100644 index 00000000..36dc9544 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/resources/Common.css @@ -0,0 +1,143 @@ +.dojoxCalcLayout span.dijitButtonNode, +.dojoxCalcLayout span.dijitButtonContents{ + display:block; +} +.dojoxCalc .dojoxCalcLayout .dojoxCalcTextAreaContainer { + padding-left: 0.2em; + padding-right: 0.2em; + #border-right: .3em; +} +.dojoxCalcLayout .dojoxCalcInputContainer .dijitTextBox { + + position: relative; + border-left: 0 none; + border-right: 0 none; + width:100%; +} +.dojoxCalcLayout .dojoxCalcInputContainer, +.dojoxCalcLayout .dojoxCalcInputContainer .dijitInputField { + padding-left: 0; + padding-right: 0; +} +.dojoxCalcLayout .dojoxCalcInputContainer .dijitInputContainer { + padding-left: 0; + #padding-left: 0.5em; + padding-right: 0.3em; + #padding-right: 0; +} +.dojoxCalcLayout .dojoxCalcInputContainer .dijitInputInner { + text-align: left; + padding-left: 0.2em !important; + padding-right: 0 !important; + #padding-right: 0.3em !important; + overflow: hidden; +} +.dojoxCalcMinusButtonContainer { + width: 4em; + min-width: 4em; + padding: 0; +} +.dojoxCalcMinusButtonContainer .dijitButton { + margin: 0.1em; + width: 3.8em; +} +.dojoxCalcMinusButtonContainer .dijitArrowButtonInner { + width:1.3em; +} +.dojoxCalcMinusButtonContainer .dijitButtonNode .dijitButtonContents { + width: 2.1em; + min-width: 2.1em; +} +.dojoxCalcLayout .dojoxCalcMinusButtonContainer .dijitButtonText, +.dojoxCalcLayout .dojoxCalcMinusButtonContainer .dijitButtonNode { + padding-left: 0px; + padding-right: 0px; +} +.dojoxCalcButtonContainer { + width: 4em; + min-width: 4em; + padding: 0; +} +.dojoxCalcButtonContainer .dijitButton { + margin: 0.1em; + width: 3.8em; +} +.dojoxCalcLayout .dojoxCalcButtonContainer .dijitButtonText, +.dojoxCalcLayout .dojoxCalcButtonContainer .dijitButtonNode { + padding-left: 0px; + padding-right: 0px; +} +.dojoxCalcLayout { + table-layout:fixed; + border-width: 0; + border-style: none; + width:16.0em; + font:monospace; +} +.dojoxCalc { + border: 0.4em ridge #909090; +} +.dojoxCalcGrapherLayout span.dijitButtonNode, +.dojoxCalcGrapherLayout span.dijitButtonContents{ + display:block; +} +.dojoxCalcGrapherButtonContainer { + width: 10em; + min-width: 10em; + padding: 0; +} +.dojoxCalcGrapherButton { + display:block; +} +.dojoxCalcGrapherLayout { + table-layout:fixed; + border-width: 0; + border-style: none; + width:20.0em; + font:monospace; +} +.dojoxCalcExpressionBox { + width:15em; +} +.dojoxCalcChartHolder { + position:absolute; + left:36em; + top:5em; +} +.dojoxCalcGraphOptionTable { + width:25em; +} +.dojoxCalcGraphWidth { + width:5em; +} +.dojoxCalcGraphHeight { + width:5em; +} +.dojoxCalcGraphMinX { + width:5em; +} +.dojoxCalcGraphMaxX { + width:5em; +} +.dojoxCalcGraphMinY { + width:5em; +} +.dojoxCalcGraphMaxY { + width:5em; +} +.dojoxCalcGrapherFuncOuterDiv { + width:35em; + height:15em; + overflow-y:scroll; +} +.dojoxCalcGrapherModeTable { + width:10em; +} +.dojoxCalcFunctionModeSelector { + width:5em; +} +.dojoxCalcStatusBox { + border:1px solid; + padding:1px; + display:inline; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/resources/GraphPro.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/resources/GraphPro.css new file mode 100644 index 00000000..867a712d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/resources/GraphPro.css @@ -0,0 +1,144 @@ + +.dojoxCalcLayout span.dijitButtonNode, +.dojoxCalcLayout span.dijitButtonContents{ + display:block; +} +.dojoxCalc .dojoxCalcLayout .dojoxCalcTextAreaContainer { + padding-left: 0.2em; + padding-right: 0.2em; + #border-right: .3em; +} +.dojoxCalcLayout .dojoxCalcInputContainer .dijitTextBox { + + position: relative; + border-left: 0 none; + border-right: 0 none; + width:100%; +} +.dojoxCalcLayout .dojoxCalcInputContainer, +.dojoxCalcLayout .dojoxCalcInputContainer .dijitInputField { + padding-left: 0; + padding-right: 0; +} +.dojoxCalcLayout .dojoxCalcInputContainer .dijitInputContainer { + padding-left: 0; + #padding-left: 0.5em; + padding-right: 0.3em; + #padding-right: 0; +} +.dojoxCalcLayout .dojoxCalcInputContainer .dijitInputInner { + text-align: left; + padding-left: 0.2em !important; + padding-right: 0 !important; + #padding-right: 0.3em !important; + overflow: hidden; +} +.dojoxCalcMinusButtonContainer { + width: 4em; + min-width: 4em; + padding: 0; +} +.dojoxCalcMinusButtonContainer .dijitButton { + margin: 0.1em; + width: 3.8em; +} +.dojoxCalcMinusButtonContainer .dijitArrowButtonInner { + width:1.3em; +} +.dojoxCalcMinusButtonContainer .dijitButtonNode .dijitButtonContents { + width: 2.1em; + min-width: 2.1em; +} +.dojoxCalcLayout .dojoxCalcMinusButtonContainer .dijitButtonText, +.dojoxCalcLayout .dojoxCalcMinusButtonContainer .dijitButtonNode { + padding-left: 0px; + padding-right: 0px; +} +.dojoxCalcButtonContainer { + width: 4em; + min-width: 4em; + padding: 0; +} +.dojoxCalcButtonContainer .dijitButton { + margin: 0.1em; + width: 3.8em; +} +.dojoxCalcLayout .dojoxCalcButtonContainer .dijitButtonText, +.dojoxCalcLayout .dojoxCalcButtonContainer .dijitButtonNode { + padding-left: 0px; + padding-right: 0px; +} +.dojoxCalcLayout { + table-layout:fixed; + border-width: 0; + border-style: none; + width:16.0em; + font:monospace; +} +.dojoxCalc { + border: 0.4em ridge #909090; +} +.dojoxCalcGrapherLayout span.dijitButtonNode, +.dojoxCalcGrapherLayout span.dijitButtonContents{ + display:block; +} +.dojoxCalcGrapherButtonContainer { + width: 10em; + min-width: 10em; + padding: 0; +} +.dojoxCalcGrapherButton { + display:block; +} +.dojoxCalcGrapherLayout { + table-layout:fixed; + border-width: 0; + border-style: none; + width:20.0em; + font:monospace; +} +.dojoxCalcExpressionBox { + width:15em; +} +.dojoxCalcChartHolder { + position:absolute; + left:36em; + top:5em; +} +.dojoxCalcGraphOptionTable { + width:25em; +} +.dojoxCalcGraphWidth { + width:5em; +} +.dojoxCalcGraphHeight { + width:5em; +} +.dojoxCalcGraphMinX { + width:5em; +} +.dojoxCalcGraphMaxX { + width:5em; +} +.dojoxCalcGraphMinY { + width:5em; +} +.dojoxCalcGraphMaxY { + width:5em; +} +.dojoxCalcGrapherFuncOuterDiv { + width:35em; + height:15em; + overflow-y:scroll; +} +.dojoxCalcGrapherModeTable { + width:10em; +} +.dojoxCalcFunctionModeSelector { + width:5em; +} +.dojoxCalcStatusBox { + border:1px solid; + padding:1px; + display:inline; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/resources/Standard.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/resources/Standard.css new file mode 100644 index 00000000..867a712d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/resources/Standard.css @@ -0,0 +1,144 @@ + +.dojoxCalcLayout span.dijitButtonNode, +.dojoxCalcLayout span.dijitButtonContents{ + display:block; +} +.dojoxCalc .dojoxCalcLayout .dojoxCalcTextAreaContainer { + padding-left: 0.2em; + padding-right: 0.2em; + #border-right: .3em; +} +.dojoxCalcLayout .dojoxCalcInputContainer .dijitTextBox { + + position: relative; + border-left: 0 none; + border-right: 0 none; + width:100%; +} +.dojoxCalcLayout .dojoxCalcInputContainer, +.dojoxCalcLayout .dojoxCalcInputContainer .dijitInputField { + padding-left: 0; + padding-right: 0; +} +.dojoxCalcLayout .dojoxCalcInputContainer .dijitInputContainer { + padding-left: 0; + #padding-left: 0.5em; + padding-right: 0.3em; + #padding-right: 0; +} +.dojoxCalcLayout .dojoxCalcInputContainer .dijitInputInner { + text-align: left; + padding-left: 0.2em !important; + padding-right: 0 !important; + #padding-right: 0.3em !important; + overflow: hidden; +} +.dojoxCalcMinusButtonContainer { + width: 4em; + min-width: 4em; + padding: 0; +} +.dojoxCalcMinusButtonContainer .dijitButton { + margin: 0.1em; + width: 3.8em; +} +.dojoxCalcMinusButtonContainer .dijitArrowButtonInner { + width:1.3em; +} +.dojoxCalcMinusButtonContainer .dijitButtonNode .dijitButtonContents { + width: 2.1em; + min-width: 2.1em; +} +.dojoxCalcLayout .dojoxCalcMinusButtonContainer .dijitButtonText, +.dojoxCalcLayout .dojoxCalcMinusButtonContainer .dijitButtonNode { + padding-left: 0px; + padding-right: 0px; +} +.dojoxCalcButtonContainer { + width: 4em; + min-width: 4em; + padding: 0; +} +.dojoxCalcButtonContainer .dijitButton { + margin: 0.1em; + width: 3.8em; +} +.dojoxCalcLayout .dojoxCalcButtonContainer .dijitButtonText, +.dojoxCalcLayout .dojoxCalcButtonContainer .dijitButtonNode { + padding-left: 0px; + padding-right: 0px; +} +.dojoxCalcLayout { + table-layout:fixed; + border-width: 0; + border-style: none; + width:16.0em; + font:monospace; +} +.dojoxCalc { + border: 0.4em ridge #909090; +} +.dojoxCalcGrapherLayout span.dijitButtonNode, +.dojoxCalcGrapherLayout span.dijitButtonContents{ + display:block; +} +.dojoxCalcGrapherButtonContainer { + width: 10em; + min-width: 10em; + padding: 0; +} +.dojoxCalcGrapherButton { + display:block; +} +.dojoxCalcGrapherLayout { + table-layout:fixed; + border-width: 0; + border-style: none; + width:20.0em; + font:monospace; +} +.dojoxCalcExpressionBox { + width:15em; +} +.dojoxCalcChartHolder { + position:absolute; + left:36em; + top:5em; +} +.dojoxCalcGraphOptionTable { + width:25em; +} +.dojoxCalcGraphWidth { + width:5em; +} +.dojoxCalcGraphHeight { + width:5em; +} +.dojoxCalcGraphMinX { + width:5em; +} +.dojoxCalcGraphMaxX { + width:5em; +} +.dojoxCalcGraphMinY { + width:5em; +} +.dojoxCalcGraphMaxY { + width:5em; +} +.dojoxCalcGrapherFuncOuterDiv { + width:35em; + height:15em; + overflow-y:scroll; +} +.dojoxCalcGrapherModeTable { + width:10em; +} +.dojoxCalcFunctionModeSelector { + width:5em; +} +.dojoxCalcStatusBox { + border:1px solid; + padding:1px; + display:inline; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/FuncGen.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/FuncGen.html new file mode 100644 index 00000000..dcc883ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/FuncGen.html @@ -0,0 +1,15 @@ +
    + + +
    + +
    + + + + +

    + +
    + +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/GraphPro.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/GraphPro.html new file mode 100644 index 00000000..a28b0e73 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/GraphPro.html @@ -0,0 +1,165 @@ +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + +
    + + + +
    + + + +
    + + + + + +
    +
    + (-) +
    +
    +
    +
    + + + +
    + + + +
    + + + +
    + + + +
    + + + +
    + +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/Grapher.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/Grapher.html new file mode 100644 index 00000000..91fd0023 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/Grapher.html @@ -0,0 +1,117 @@ +
    +
    +
    +
    +
    Window Options
    +
    + + + + + + + + + + + + + + + + + + + + + +
    + Width: + + + + Height: + + +
    + X >= + + + + X <= + + +
    + Y >= + + + + Y <= + + +
    +
    +
    + +
    + +
    + +
    +
    + +
    +
    Add Function
    +
    + + + + + + + + + +
    + Mode: + + + +
    + +
    +
    +
    +
    +
    + + + + + + + + + + + + + +
    + + + +
    + + + +
    + + + +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/Standard.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/Standard.html new file mode 100644 index 00000000..87ed826a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/templates/Standard.html @@ -0,0 +1,101 @@ +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + +
    + + + +
    + + + + + +
    +
    + (-) +
    +
    +
    +
    + + + +
    + + + +
    + +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/toFrac.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/toFrac.js new file mode 100644 index 00000000..66252718 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/toFrac.js @@ -0,0 +1,114 @@ +//>>built +define("dojox/calc/toFrac",["dojo/_base/lang","dojox/calc/_Executor"],function(_1,_2){ +var _3; +function _4(){ +var _5=[5,6,7,10,11,13,14,15,17,19,21,22,23,26,29,30,31,33,34,35,37,38,39,41,42,43,46,47,51,53,55,57,58,59,61,62,65,66,67,69,70,71,73,74,77,78,79,82,83,85,86,87,89,91,93,94,95,97]; +_3={"1":1,"√(2)":Math.sqrt(2),"√(3)":Math.sqrt(3),"pi":Math.PI}; +for(var i in _5){ +var n=_5[i]; +_3["√("+n+")"]=Math.sqrt(n); +} +_3["√(pi)"]=Math.sqrt(Math.PI); +}; +function _6(_7){ +function _8(_9){ +var _a=Math.floor(1/_9); +var _b=_2.approx(1/_a); +if(_b==_9){ +return {n:1,d:_a}; +} +var _c=_a+1; +_b=_2.approx(1/_c); +if(_b==_9){ +return {n:1,d:_c}; +} +if(_a>=50){ +return null; +} +var _d=_a+_c; +_b=_2.approx(2/_d); +if(_b==_9){ +return {n:2,d:_d}; +} +if(_a>=34){ +return null; +} +var _e=_9<_b; +var _f=_d*2+(_e?1:-1); +_b=_2.approx(4/_f); +if(_b==_9){ +return {n:4,d:_f}; +} +var _10=_9<_b; +if((_e&&!_10)||(!_e&&_10)){ +var _11=(_d+_f)>>1; +_b=_2.approx(3/_11); +if(_b==_9){ +return {n:3,d:_11}; +} +} +if(_a>=20){ +return null; +} +var _12=_d+_a*2; +var _13=_12+2; +for(var _14=5;_12<=100;_14++){ +_12+=_a; +_13+=_c; +var _15=_e?((_13+_12+1)>>1):_12; +var _16=_e?_13:((_13+_12-1)>>1); +_15=_10?((_15+_16)>>1):_15; +_16=_10?_16:((_15+_16)>>1); +for(var _17=_15;_17<=_16;_17++){ +if(_14&1==0&&_17&1==0){ +continue; +} +_b=_2.approx(_14/_17); +if(_b==_9){ +return {n:_14,d:_17}; +} +if(_b<_9){ +break; +} +} +} +return null; +}; +_7=Math.abs(_7); +for(var mt in _3){ +var _18=_3[mt]; +var _19=_7/_18; +var _1a=Math.floor(_19); +_19=_2.approx(_19-_1a); +if(_19==0){ +return {mt:mt,m:_18,n:_1a,d:1}; +}else{ +var a=_8(_19); +if(!a){ +continue; +} +return {mt:mt,m:_18,n:(_1a*a.d+a.n),d:a.d}; +} +} +return null; +}; +_4(); +return _1.mixin(_2,{toFrac:function(_1b){ +var f=_6(_1b); +return f?((_1b<0?"-":"")+(f.m==1?"":(f.n==1?"":(f.n+"*")))+(f.m==1?f.n:f.mt)+((f.d==1?"":"/"+f.d))):_1b; +},pow:function(_1c,_1d){ +function _1e(n){ +return Math.floor(n)==n; +}; +if(_1c>0||_1e(_1d)){ +return Math.pow(_1c,_1d); +}else{ +var f=_6(_1d); +if(_1c>=0){ +return (f&&f.m==1)?Math.pow(Math.pow(_1c,1/f.d),_1d<0?-f.n:f.n):Math.pow(_1c,_1d); +}else{ +return (f&&f.d&1)?Math.pow(Math.pow(-Math.pow(-_1c,1/f.d),_1d<0?-f.n:f.n),f.m):NaN; +} +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/toFrac.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/toFrac.js.uncompressed.js new file mode 100644 index 00000000..ef21611b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calc/toFrac.js.uncompressed.js @@ -0,0 +1,143 @@ +define("dojox/calc/toFrac", [ + "dojo/_base/lang", + "dojox/calc/_Executor" +], function(lang, calc) { + + var multiples; + + function _fracHashInit(){ + var sqrts = [ + 5,6,7,10,11,13,14,15,17,19,21,22,23,26,29, + 30,31,33,34,35,37,38,39,41,42,43,46,47,51,53,55,57,58,59, + 61,62,65,66,67,69,70,71,73,74,77,78,79,82,83,85,86,87,89,91,93,94,95,97 + ]; + multiples = { "1":1, "\u221A(2)":Math.sqrt(2), "\u221A(3)":Math.sqrt(3), "pi":Math.PI }; + // populate the rest of the multiples array + for(var i in sqrts){ + var n = sqrts[i]; + multiples["\u221A("+n+")"] = Math.sqrt(n); + } + multiples["\u221A(pi)"] = Math.sqrt(Math.PI); + } + + function _fracLookup(number){ + function findSimpleFraction(fraction){ + var denom1Low = Math.floor(1 / fraction); + // fraction <= 1/denom1Low + var quotient = calc.approx(1 / denom1Low); + if(quotient == fraction){ return { n:1, d:denom1Low }; } + var denom1High = denom1Low + 1; + // 1/denom1High <= fraction < 1/denom1Low + quotient = calc.approx(1 / denom1High); + if(quotient == fraction){ return { n:1, d:denom1High }; } + if(denom1Low >= 50){ return null; } // only 1's in the numerator beyond this point + // 1/denom1High < fraction < 1/denom1Low + var denom2 = denom1Low + denom1High; + quotient = calc.approx(2 / denom2); + // 1/denom1High < 2/(denom1Low+denom1High) < 1/denom1Low + if(quotient == fraction){ return { n:2, d:denom2 }; } + if(denom1Low >= 34){ return null; } // only 1's and 2's in the numerator beyond this point + var less2 = fraction < quotient; + // if less2 + // 1/denom1High < fraction < 2/(denom1Low+denom1High) + // else + // 2/(denom1Low+denom1High) < fraction < 1/denom1Low + var denom4 = denom2 * 2 + (less2 ? 1 : -1); + quotient = calc.approx(4 / denom4); + // 1/denom1High < 4/(2*denom1Low+2*denom1High+1) < 2/(denom1Low+denom1High) < 4/(2*denom1Low+2*denom1High-1) < 1/denom1Low + if(quotient == fraction){ return { n:4, d:denom4 }; } + var less4 = fraction < quotient; + // we've already checked for 1, 2 and 4, but now see if we need to check for 3 in the numerator + if((less2 && !less4) || (!less2 && less4)){ + var denom3 = (denom2 + denom4) >> 1; + quotient = calc.approx(3 / denom3); + // 1/denom1High < 4/(2*denom1Low+2*denom1High+1) < 3/((3*denom1Low+3*denom1High+1)/2) < 2/(denom1Low+denom1High) < 3/((3*denom1Low+3*denom1High-1)/2) < 4/(2*denom1Low+2*denom1High-1) < 1/denom1Low + if(quotient == fraction){ return { n:3, d:denom3 }; } + } + if(denom1Low >= 20){ return null; } // only 1's, 2's, 3's, and 4's in the numerator beyond this point + // if less2 + // if less4 + // 1/denom1High < fraction < 4/(2*denom1Low+2*denom1High+1) + // else + // 4/(2*denom1Low+2*denom1High+1) < fraction < 2/(denom1Low+denom1High) + // else + // if less4 + // 2/(denom1Low+denom1High) < fraction < 4/(2*denom1Low+2*denom1High-1) + // else + // 4/(2*denom1Low+2*denom1High-1) < fraction < 1/denom1Low + var smallestDenom = denom2 + denom1Low * 2; + var largestDenom = smallestDenom + 2; + for(var numerator = 5; smallestDenom <= 100; numerator++){ // start with 5 in the numerator + smallestDenom += denom1Low; + largestDenom += denom1High; + var startDenom = less2 ? ((largestDenom + smallestDenom + 1) >> 1) : smallestDenom; + var stopDenom = less2 ? largestDenom : ((largestDenom + smallestDenom - 1) >> 1); + startDenom = less4 ? ((startDenom + stopDenom) >> 1) : startDenom; + stopDenom = less4 ? stopDenom : ((startDenom + stopDenom) >> 1); + for(var thisDenom = startDenom; thisDenom <= stopDenom; thisDenom++){ + if(numerator & 1 == 0 && thisDenom & 1 == 0){ continue; } // skip where n and d are both even + quotient = calc.approx(numerator / thisDenom); + if(quotient == fraction){ return { n:numerator, d:thisDenom }; } + if(quotient < fraction){ break; } // stop since the values will just get smaller + } + } + return null; + } + number = Math.abs(number); + for(var mt in multiples){ + var multiple = multiples[mt]; + var simpleFraction = number / multiple; + var wholeNumber = Math.floor(simpleFraction); + simpleFraction = calc.approx(simpleFraction - wholeNumber); + if(simpleFraction == 0){ + return { mt:mt, m:multiple, n:wholeNumber, d:1 }; + }else{ + var a = findSimpleFraction(simpleFraction); + if(!a){ continue; } + return { mt:mt, m:multiple, n:(wholeNumber * a.d + a.n), d:a.d }; + } + } + return null; + } + + // make the hash + _fracHashInit(); + + // add toFrac to the calculator + return lang.mixin(calc, { + toFrac: function(number){// get a string fraction for a decimal with a set range of numbers, based on the hash + var f = _fracLookup(number); + return f ? ((number < 0 ? '-' : '') + (f.m == 1 ? '' : (f.n == 1 ? '' : (f.n + '*'))) + (f.m == 1 ? f.n : f.mt) + ((f.d == 1 ? '' : '/' + f.d))) : number; + //return f ? ((number < 0 ? '-' : '') + (f.m == 1 ? '' : (f.n == 1 ? '' : (f.n + '*'))) + (f.m == 1 ? f.n : f.mt) + '/' + f.d) : number; + }, + pow: function(base, exponent){// pow benefits from toFrac because it can overcome many of the limitations set before the standard Math.pow + // summary: + // Computes base ^ exponent + + // Wrapper to Math.pow(base, exponent) to handle (-27) ^ (1/3) + function isInt(n){ + return Math.floor(n) == n; + } + + if(base>0||isInt(exponent)){ + return Math.pow(base, exponent); + }else{ + var f = _fracLookup(exponent); + if(base >= 0){ + return (f && f.m == 1) + ? Math.pow(Math.pow(base, 1 / f.d), exponent < 0 ? -f.n : f.n) // 32 ^ (2/5) is much more accurate if done as (32 ^ (1/5)) ^ 2 + : Math.pow(base, exponent); + }else{ // e.g. (1/3) root of -27 = -3, 1 / exponent must be an odd integer for a negative base + return (f && f.d & 1) ? Math.pow(Math.pow(-Math.pow(-base, 1 / f.d), exponent < 0 ? -f.n : f.n), f.m) : NaN; + } + } + } + }); +/* + function reduceError(number){ + var f = _fracLookup(number); + if(!f){ f = _fracLookup(number); } + return f ? ((number < 0 ? -1 : 1) * f.n * f.m / f.d) : number; + } +*/ +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/CONTRIBUTING.md b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/CONTRIBUTING.md new file mode 100644 index 00000000..5ae012f8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/CONTRIBUTING.md @@ -0,0 +1,3 @@ +All contributions to this repository must: +- be done under the Dojo Contributor License Agreement (CLA, http://dojofoundation.org/about/claForm) that you must sign +- follow the Dojo style guide (https://dojotoolkit.org/community/styleGuide) diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Calendar.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Calendar.js new file mode 100644 index 00000000..07d5195f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Calendar.js @@ -0,0 +1,17 @@ +//>>built +require({cache:{"url:dojox/calendar/templates/Calendar.html":"
    \n\t
    \n\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\t\t\n\t\t\t\n\t\t
    \n\t
    \n\t
    \n
    \n"}}); +define("dojox/calendar/Calendar",["dojo/_base/declare","dojo/_base/lang","./CalendarBase","./ColumnView","./ColumnViewSecondarySheet","./VerticalRenderer","./DecorationRenderer","./MatrixView","./HorizontalRenderer","./LabelRenderer","./ExpandRenderer","./Keyboard","./Mouse","dojo/text!./templates/Calendar.html","dijit/form/Button","dijit/Toolbar","dijit/ToolbarSeparator"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e){ +return _1("dojox.calendar.Calendar",_3,{templateString:_e,_createDefaultViews:function(){ +var _f=_1([_5,_c,_d]); +var _10=_1([_4,_c,_d])(_2.mixin({secondarySheetClass:_f,verticalRenderer:_6,horizontalRenderer:_9,expandRenderer:_b,horizontalDecorationRenderer:_7,verticalDecorationRenderer:_7},this.columnViewProps)); +var _11=_1([_8,_c,_d])(_2.mixin({horizontalRenderer:_9,horizontalDecorationRenderer:_7,labelRenderer:_a,expandRenderer:_b},this.matrixViewProps)); +this.columnView=_10; +this.matrixView=_11; +var _12=[_10,_11]; +this.installDefaultViewsActions(_12); +return _12; +},installDefaultViewsActions:function(_13){ +this.matrixView.on("rowHeaderClick",_2.hitch(this,this.matrixViewRowHeaderClick)); +this.columnView.on("columnHeaderClick",_2.hitch(this,this.columnViewColumnHeaderClick)); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Calendar.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Calendar.js.uncompressed.js new file mode 100644 index 00000000..648e2acd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Calendar.js.uncompressed.js @@ -0,0 +1,88 @@ +require({cache:{ +'url:dojox/calendar/templates/Calendar.html':"
    \n\t
    \n\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\t\t\n\t\t\t\n\t\t
    \n\t
    \n\t
    \n
    \n"}}); +define("dojox/calendar/Calendar", ["dojo/_base/declare", + "dojo/_base/lang", + "./CalendarBase", + "./ColumnView", + "./ColumnViewSecondarySheet", + "./VerticalRenderer", + "./DecorationRenderer", + "./MatrixView", + "./HorizontalRenderer", + "./LabelRenderer", + "./ExpandRenderer", + "./Keyboard", + "./Mouse", + "dojo/text!./templates/Calendar.html", + "dijit/form/Button", "dijit/Toolbar", "dijit/ToolbarSeparator"], + + function( + declare, + lang, + CalendarBase, + ColumnView, + ColumnViewSecondarySheet, + VerticalRenderer, + DecorationRenderer, + MatrixView, + HorizontalRenderer, + LabelRenderer, + ExpandRenderer, + Keyboard, + Mouse, + template){ + + return declare("dojox.calendar.Calendar", CalendarBase, { + + templateString: template, + + // summary: + // This class defines a calendar widget that display events in time. + + _createDefaultViews: function(){ + // summary: + // Creates the default views: + // - A dojox.calendar.ColumnView instance used to display one day to seven days time intervals, + // - A dojox.calendar.MatrixView instance used to display the other time intervals. + // The views are mixed with Mouse and Keyboard to allow editing items using mouse and keyboard. + + var secondarySheetClass = declare([ColumnViewSecondarySheet, Keyboard, Mouse]); + + var colView = declare([ColumnView, Keyboard, Mouse])(lang.mixin({ + secondarySheetClass: secondarySheetClass, + verticalRenderer: VerticalRenderer, + horizontalRenderer: HorizontalRenderer, + expandRenderer: ExpandRenderer, + horizontalDecorationRenderer: DecorationRenderer, + verticalDecorationRenderer: DecorationRenderer + }, this.columnViewProps)); + + var matrixView = declare([MatrixView, Keyboard, Mouse])(lang.mixin({ + horizontalRenderer: HorizontalRenderer, + horizontalDecorationRenderer: DecorationRenderer, + labelRenderer: LabelRenderer, + expandRenderer: ExpandRenderer + }, this.matrixViewProps)); + + this.columnView = colView; + this.matrixView = matrixView; + + var views = [colView, matrixView]; + + this.installDefaultViewsActions(views); + + return views; + }, + + installDefaultViewsActions: function(views){ + // summary: + // Installs the default actions on newly created default views. + // By default this action is registering: + // - the matrixViewRowHeaderClick method on the rowHeaderClick event of the matrix view. + // - the columnViewColumnHeaderClick method on the columnHeaderClick event of the column view. + this.matrixView.on("rowHeaderClick", lang.hitch(this, this.matrixViewRowHeaderClick)); + this.columnView.on("columnHeaderClick", lang.hitch(this, this.columnViewColumnHeaderClick)); + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/CalendarBase.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/CalendarBase.js new file mode 100644 index 00000000..39e09485 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/CalendarBase.js @@ -0,0 +1,604 @@ +//>>built +define("dojox/calendar/CalendarBase",["dojo/_base/declare","dojo/_base/sniff","dojo/_base/event","dojo/_base/lang","dojo/_base/array","dojo/cldr/supplemental","dojo/dom","dojo/dom-class","dojo/dom-style","dojo/dom-construct","dojo/dom-geometry","dojo/date","dojo/date/locale","dojo/_base/fx","dojo/fx","dojo/on","dijit/_WidgetBase","dijit/_TemplatedMixin","dijit/_WidgetsInTemplateMixin","./StoreMixin","./StoreManager","dojox/widget/_Invalidating","dojox/widget/Selection","dojox/calendar/time","dojo/i18n!./nls/buttons"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e,fx,on,_f,_10,_11,_12,_13,_14,_15,_16,_17){ +return _1("dojox.calendar.CalendarBase",[_f,_10,_11,_12,_14,_15],{baseClass:"dojoxCalendar",datePackage:_c,startDate:null,endDate:null,date:null,minDate:null,maxDate:null,dateInterval:"week",dateIntervalSteps:1,viewContainer:null,firstDayOfWeek:-1,formatItemTimeFunc:null,editable:true,moveEnabled:true,resizeEnabled:true,columnView:null,matrixView:null,columnViewProps:null,matrixViewProps:null,createOnGridClick:false,createItemFunc:null,currentView:null,_currentViewIndex:-1,views:null,_calendar:"gregorian",constructor:function(_18){ +this.views=[]; +this.invalidatingProperties=["store","items","startDate","endDate","views","date","minDate","maxDate","dateInterval","dateIntervalSteps","firstDayOfWeek"]; +_18=_18||{}; +this._calendar=_18.datePackage?_18.datePackage.substr(_18.datePackage.lastIndexOf(".")+1):this._calendar; +this.dateModule=_18.datePackage?_4.getObject(_18.datePackage,false):_c; +this.dateClassObj=this.dateModule.Date||Date; +this.dateLocaleModule=_18.datePackage?_4.getObject(_18.datePackage+".locale",false):_d; +this.invalidateRendering(); +this.storeManager=new _13({owner:this,_ownerItemsProperty:"items"}); +this.storeManager.on("layoutInvalidated",_4.hitch(this,this._refreshItemsRendering)); +this.storeManager.on("dataLoaded",_4.hitch(this,function(_19){ +this.set("items",_19); +})); +this.decorationStoreManager=new _13({owner:this,_ownerItemsProperty:"decorationItems"}); +this.decorationStoreManager.on("layoutInvalidated",_4.hitch(this,this._refreshDecorationItemsRendering)); +this.decorationStoreManager.on("dataLoaded",_4.hitch(this,function(_1a){ +this.set("decorationItems",_1a); +})); +},buildRendering:function(){ +this.inherited(arguments); +if(this.views==null||this.views.length==0){ +this.set("views",this._createDefaultViews()); +} +},_applyAttributes:function(){ +this._applyAttr=true; +this.inherited(arguments); +delete this._applyAttr; +},_setStartDateAttr:function(_1b){ +this._set("startDate",_1b); +this._timeRangeInvalidated=true; +this._startDateChanged=true; +},_setEndDateAttr:function(_1c){ +this._set("endDate",_1c); +this._timeRangeInvalidated=true; +this._endDateChanged=true; +},_setDateAttr:function(_1d){ +this._set("date",_1d); +this._timeRangeInvalidated=true; +this._dateChanged=true; +},_setDateIntervalAttr:function(_1e){ +this._set("dateInterval",_1e); +this._timeRangeInvalidated=true; +},_setDateIntervalStepsAttr:function(_1f){ +this._set("dateIntervalSteps",_1f); +this._timeRangeInvalidated=true; +},_setFirstDayOfWeekAttr:function(_20){ +this._set("firstDayOfWeek",_20); +if(this.get("date")!=null&&this.get("dateInterval")=="week"){ +this._timeRangeInvalidated=true; +} +},_setTextDirAttr:function(_21){ +_5.forEach(this.views,function(_22){ +_22.set("textDir",_21); +}); +},refreshRendering:function(){ +this.inherited(arguments); +this._validateProperties(); +},_refreshItemsRendering:function(){ +if(this.currentView){ +this.currentView._refreshItemsRendering(); +} +},_refreshDecorationItemsRendering:function(){ +if(this.currentView){ +this.currentView._refreshDecorationItemsRendering(); +} +},resize:function(_23){ +if(_23){ +_b.setMarginBox(this.domNode,_23); +} +if(this.currentView){ +this.currentView.resize(); +} +},_validateProperties:function(){ +var cal=this.dateModule; +var _24=this.get("startDate"); +var _25=this.get("endDate"); +var _26=this.get("date"); +if(this.firstDayOfWeek<-1||this.firstDayOfWeek>6){ +this._set("firstDayOfWeek",0); +} +var _27=this.get("minDate"); +var _28=this.get("maxDate"); +if(_27&&_28){ +if(cal.compare(_27,_28)>0){ +var t=_27; +this._set("minDate",_28); +this._set("maxDate",t); +} +} +if(_26==null&&(_24!=null||_25!=null)){ +if(_24==null){ +_24=new this.dateClassObj(); +this._set("startDate",_24); +this._timeRangeInvalidated=true; +} +if(_25==null){ +_25=new this.dateClassObj(); +this._set("endDate",_25); +this._timeRangeInvalidated=true; +} +if(cal.compare(_24,_25)>0){ +_25=cal.add(_24,"day",1); +this._set("endDate",_25); +this._timeRangeInvalidated=true; +} +}else{ +if(this.date==null){ +this._set("date",new this.dateClassObj()); +this._timeRangeInvalidated=true; +} +var _29=this.get("dateInterval"); +if(_29!="day"&&_29!="week"&&_29!="month"){ +this._set("dateInterval","day"); +this._timeRangeInvalidated=true; +} +var dis=this.get("dateIntervalSteps"); +if(_4.isString(dis)){ +dis=parseInt(dis); +this._set("dateIntervalSteps",dis); +} +if(dis<=0){ +this.set("dateIntervalSteps",1); +this._timeRangeInvalidated=true; +} +} +if(this._timeRangeInvalidated){ +this._timeRangeInvalidated=false; +var _2a=this.computeTimeInterval(); +if(this._timeInterval==null||cal.compare(this._timeInterval[0],_2a[0])!=0||cal.compare(this._timeInterval[1],_2a[1])!=0){ +if(this._dateChanged){ +this._lastValidDate=this.get("date"); +this._dateChanged=false; +}else{ +if(this._startDateChanged||this._endDateChanged){ +this._lastValidStartDate=this.get("startDate"); +this._lastValidEndDate=this.get("endDate"); +this._startDateChanged=false; +this._endDateChanged=false; +} +} +this.onTimeIntervalChange({oldStartTime:this._timeInterval==null?null:this._timeInterval[0],oldEndTime:this._timeInterval==null?null:this._timeInterval[1],startTime:_2a[0],endTime:_2a[1]}); +}else{ +if(this._dateChanged){ +this._dateChanged=false; +if(this.lastValidDate!=null){ +this._set("date",this.lastValidDate); +} +}else{ +if(this._startDateChanged||this._endDateChanged){ +this._startDateChanged=false; +this._endDateChanged=false; +this._set("startDate",this._lastValidStartDate); +this._set("endDate",this._lastValidEndDate); +} +} +return; +} +this._timeInterval=_2a; +var _2b=this.dateModule.difference(this._timeInterval[0],this._timeInterval[1],"day"); +var _2c=this._computeCurrentView(_2a[0],_2a[1],_2b); +var _2d=_5.indexOf(this.views,_2c); +if(_2c==null||_2d==-1){ +return; +} +this._performViewTransition(_2c,_2d,_2a,_2b); +} +},_performViewTransition:function(_2e,_2f,_30,_31){ +var _32=this.currentView; +if(this.animateRange&&(!_2("ie")||_2("ie")>8)){ +if(_32){ +_32.beforeDeactivate(); +var ltr=this.isLeftToRight(); +var _33=this._animRangeInDir=="left"||this._animRangeInDir==null; +var _34=this._animRangeOutDir=="left"||this._animRangeOutDir==null; +this._animateRange(this.currentView.domNode,_34&<r,false,0,_34?-100:100,_4.hitch(this,function(){ +_32.afterDeactivate(); +_2e.beforeActivate(); +this.animateRangeTimer=setTimeout(_4.hitch(this,function(){ +this._applyViewChange(_2e,_2f,_30,_31); +this._animateRange(this.currentView.domNode,_33&<r,true,_33?-100:100,0,function(){ +_2e.afterActivate(); +}); +this._animRangeInDir=null; +this._animRangeOutDir=null; +}),100); +})); +}else{ +_2e.beforeActivate(); +this._applyViewChange(_2e,_2f,_30,_31); +_2e.afterActivate(); +} +}else{ +if(_32){ +_32.beforeDeactivate(); +} +_2e.beforeActivate(); +this._applyViewChange(_2e,_2f,_30,_31); +if(_32){ +_32.afterDeactivate(); +} +_2e.afterActivate(); +} +},onViewConfigurationChange:function(_35){ +},_applyViewChange:function(_36,_37,_38,_39){ +this._configureView(_36,_37,_38,_39); +this.onViewConfigurationChange(_36); +if(_37!=this._currentViewIndex){ +if(this.currentView==null){ +_36.set("items",this.items); +_36.set("decorationItems",this.decorationItems); +this.set("currentView",_36); +}else{ +if(this.items==null||this.items.length==0){ +this.set("currentView",_36); +if(this.animateRange&&(!_2("ie")||_2("ie")>8)){ +_9.set(this.currentView.domNode,"opacity",0); +} +_36.set("items",this.items); +_36.set("decorationItems",this.decorationItems); +}else{ +this.currentView=_36; +_36.set("items",this.items); +_36.set("decorationItems",this.decorationItems); +this.set("currentView",_36); +if(this.animateRange&&(!_2("ie")||_2("ie")>8)){ +_9.set(this.currentView.domNode,"opacity",0); +} +} +} +} +},_timeInterval:null,computeTimeInterval:function(){ +var d=this.get("date"); +var _3a=this.get("minDate"); +var _3b=this.get("maxDate"); +var cal=this.dateModule; +if(d==null){ +var _3c=this.get("startDate"); +var _3d=cal.add(this.get("endDate"),"day",1); +if(_3a!=null||_3b!=null){ +var dur=this.dateModule.difference(_3c,_3d,"day"); +if(cal.compare(_3a,_3c)>0){ +_3c=_3a; +_3d=cal.add(_3c,"day",dur); +} +if(cal.compare(_3b,_3d)<0){ +_3d=_3b; +_3c=cal.add(_3d,"day",-dur); +} +if(cal.compare(_3a,_3c)>0){ +_3c=_3a; +_3d=_3b; +} +} +return [this.floorToDay(_3c),this.floorToDay(_3d)]; +}else{ +var _3e=this._computeTimeIntervalImpl(d); +if(_3a!=null){ +var _3f=this._computeTimeIntervalImpl(_3a); +if(cal.compare(_3f[0],_3e[0])>0){ +_3e=_3f; +} +} +if(_3b!=null){ +var _40=this._computeTimeIntervalImpl(_3b); +if(cal.compare(_40[1],_3e[1])<0){ +_3e=_40; +} +} +return _3e; +} +},_computeTimeIntervalImpl:function(d){ +var cal=this.dateModule; +var s=this.floorToDay(d); +var di=this.get("dateInterval"); +var dis=this.get("dateIntervalSteps"); +var e; +switch(di){ +case "day": +e=cal.add(s,"day",dis); +break; +case "week": +s=this.floorToWeek(s); +e=cal.add(s,"week",dis); +break; +case "month": +s.setDate(1); +e=cal.add(s,"month",dis); +break; +default: +e=cal.add(s,"day",1); +} +return [s,e]; +},onTimeIntervalChange:function(e){ +},views:null,_setViewsAttr:function(_41){ +if(!this._applyAttr){ +for(var i=0;ithis.views.length){ +_43=this.views.length; +} +this.views.splice(_43,_42); +this._onViewAdded(_42); +},removeView:function(_44){ +if(index<0||index>=this.views.length){ +return; +} +this._onViewRemoved(this.views[index]); +this.views.splice(index,1); +},_onViewAdded:function(_45){ +_45.owner=this; +_45.buttonContainer=this.buttonContainer; +_45._calendar=this._calendar; +_45.datePackage=this.datePackage; +_45.dateModule=this.dateModule; +_45.dateClassObj=this.dateClassObj; +_45.dateLocaleModule=this.dateLocaleModule; +_9.set(_45.domNode,"display","none"); +_8.add(_45.domNode,"view"); +_a.place(_45.domNode,this.viewContainer); +this.onViewAdded(_45); +},onViewAdded:function(_46){ +},_onViewRemoved:function(_47){ +_47.owner=null; +_47.buttonContainer=null; +_8.remove(_47.domNode,"view"); +this.viewContainer.removeChild(_47.domNode); +this.onViewRemoved(_47); +},onViewRemoved:function(_48){ +},_setCurrentViewAttr:function(_49){ +var _4a=_5.indexOf(this.views,_49); +if(_4a!=-1){ +var _4b=this.get("currentView"); +this._currentViewIndex=_4a; +this._set("currentView",_49); +this._showView(_4b,_49); +this.onCurrentViewChange({oldView:_4b,newView:_49}); +} +},_getCurrentViewAttr:function(){ +return this.views[this._currentViewIndex]; +},onCurrentViewChange:function(e){ +},_configureView:function(_4c,_4d,_4e,_4f){ +var cal=this.dateModule; +if(_4c.viewKind=="columns"){ +_4c.set("startDate",_4e[0]); +_4c.set("columnCount",_4f); +}else{ +if(_4c.viewKind=="matrix"){ +if(_4f>7){ +var s=this.floorToWeek(_4e[0]); +var e=this.floorToWeek(_4e[1]); +if(cal.compare(e,_4e[1])!=0){ +e=this.dateModule.add(e,"week",1); +} +_4f=this.dateModule.difference(s,e,"day"); +_4c.set("startDate",s); +_4c.set("columnCount",7); +_4c.set("rowCount",Math.ceil(_4f/7)); +_4c.set("refStartTime",_4e[0]); +_4c.set("refEndTime",_4e[1]); +}else{ +_4c.set("startDate",_4e[0]); +_4c.set("columnCount",_4f); +_4c.set("rowCount",1); +_4c.set("refStartTime",null); +_4c.set("refEndTime",null); +} +} +} +},_computeCurrentView:function(_50,_51,_52){ +return _52<=7?this.columnView:this.matrixView; +},matrixViewRowHeaderClick:function(e){ +var _53=this.matrixView.getExpandedRowIndex(); +if(_53==e.index){ +this.matrixView.collapseRow(); +}else{ +if(_53==-1){ +this.matrixView.expandRow(e.index); +}else{ +var h=this.matrixView.on("expandAnimationEnd",_4.hitch(this,function(){ +h.remove(); +this.matrixView.expandRow(e.index); +})); +this.matrixView.collapseRow(); +} +} +},columnViewColumnHeaderClick:function(e){ +var cal=this.dateModule; +if(cal.compare(e.date,this._timeInterval[0])==0&&this.dateInterval=="day"&&this.dateIntervalSteps==1){ +this.set("dateInterval","week"); +}else{ +this.set("date",e.date); +this.set("dateInterval","day"); +this.set("dateIntervalSteps",1); +} +},viewChangeDuration:0,_showView:function(_54,_55){ +if(_54!=null){ +_9.set(_54.domNode,"display","none"); +} +if(_55!=null){ +_9.set(_55.domNode,"display","block"); +_55.resize(); +if(!_2("ie")||_2("ie")>7){ +_9.set(_55.domNode,"opacity","1"); +} +} +},_setItemsAttr:function(_56){ +this._set("items",_56); +if(this.currentView){ +this.currentView.set("items",_56); +if(!this._isEditing){ +this.currentView.invalidateRendering(); +} +} +},_setDecorationItemsAttr:function(_57){ +this._set("decorationItems",_57); +if(this.currentView){ +this.currentView.set("decorationItems",_57); +this.currentView.invalidateRendering(); +} +},_setDecorationStoreAttr:function(_58){ +this._set("decorationStore",_58); +this.decorationStore=_58; +this.decorationStoreManager.set("store",_58); +},floorToDay:function(_59,_5a){ +return _16.floorToDay(_59,_5a,this.dateClassObj); +},floorToWeek:function(d){ +return _16.floorToWeek(d,this.dateClassObj,this.dateModule,this.firstDayOfWeek,this.locale); +},newDate:function(obj){ +return _16.newDate(obj,this.dateClassObj); +},isToday:function(_5b){ +return _16.isToday(_5b,this.dateClassObj); +},isStartOfDay:function(d){ +return _16.isStartOfDay(d,this.dateClassObj,this.dateModule); +},floorDate:function(_5c,_5d,_5e,_5f){ +return _16.floor(_5c,_5d,_5e,_5f,this.classFuncObj); +},isOverlapping:function(_60,_61,_62,_63,_64,_65){ +return _16.isOverlapping(_60,_61,_62,_63,_64,_65); +},animateRange:true,animationRangeDuration:400,_animateRange:function(_66,_67,_68,_69,xTo,_6a){ +if(this.animateRangeTimer){ +clearTimeout(this.animateRangeTimer); +delete this.animateRangeTimer; +} +var _6b=_68?_e.fadeIn:_e.fadeOut; +_9.set(_66,{left:_69+"px",right:(-_69)+"px"}); +fx.combine([_e.animateProperty({node:_66,properties:{left:xTo,right:-xTo},duration:this.animationRangeDuration/2,onEnd:_6a}),_6b({node:_66,duration:this.animationRangeDuration/2})]).play(); +},_animRangeOutDir:null,_animRangeOutDir:null,nextRange:function(){ +this._animRangeOutDir="left"; +this._animRangeInDir="right"; +this._navigate(1); +},previousRange:function(){ +this._animRangeOutDir="right"; +this._animRangeInDir="left"; +this._navigate(-1); +},_navigate:function(dir){ +var d=this.get("date"); +var cal=this.dateModule; +if(d==null){ +var s=this.get("startDate"); +var e=this.get("endDate"); +var dur=cal.difference(s,e,"day"); +if(dir==1){ +e=cal.add(e,"day",1); +this.set("startDate",e); +this.set("endDate",cal.add(e,"day",dur)); +}else{ +s=cal.add(s,"day",-1); +this.set("startDate",cal.add(s,"day",-dur)); +this.set("endDate",s); +} +}else{ +var di=this.get("dateInterval"); +var dis=this.get("dateIntervalSteps"); +this.set("date",cal.add(d,di,dir*dis)); +} +},goToday:function(){ +this.set("date",this.floorToDay(new this.dateClassObj(),true)); +this.set("dateInterval","day"); +this.set("dateIntervalSteps",1); +},postCreate:function(){ +this.inherited(arguments); +this.configureButtons(); +},configureButtons:function(){ +var rtl=!this.isLeftToRight(); +if(this.previousButton){ +this.previousButton.set("label",_17[rtl?"nextButton":"previousButton"]); +this.own(on(this.previousButton,"click",_4.hitch(this,this.previousRange))); +} +if(this.nextButton){ +this.nextButton.set("label",_17[rtl?"previousButton":"nextButton"]); +this.own(on(this.nextButton,"click",_4.hitch(this,this.nextRange))); +} +if(rtl&&this.previousButton&&this.nextButton){ +var t=this.previousButton; +this.previousButton=this.nextButton; +this.nextButton=t; +} +if(this.todayButton){ +this.todayButton.set("label",_17.todayButton); +this.own(on(this.todayButton,"click",_4.hitch(this,this.todayButtonClick))); +} +if(this.dayButton){ +this.dayButton.set("label",_17.dayButton); +this.own(on(this.dayButton,"click",_4.hitch(this,this.dayButtonClick))); +} +if(this.weekButton){ +this.weekButton.set("label",_17.weekButton); +this.own(on(this.weekButton,"click",_4.hitch(this,this.weekButtonClick))); +} +if(this.fourDaysButton){ +this.fourDaysButton.set("label",_17.fourDaysButton); +this.own(on(this.fourDaysButton,"click",_4.hitch(this,this.fourDaysButtonClick))); +} +if(this.monthButton){ +this.monthButton.set("label",_17.monthButton); +this.own(on(this.monthButton,"click",_4.hitch(this,this.monthButtonClick))); +} +},todayButtonClick:function(e){ +this.goToday(); +},dayButtonClick:function(e){ +if(this.get("date")==null){ +this.set("date",this.floorToDay(new this.dateClassObj(),true)); +} +this.set("dateInterval","day"); +this.set("dateIntervalSteps",1); +},weekButtonClick:function(e){ +this.set("dateInterval","week"); +this.set("dateIntervalSteps",1); +},fourDaysButtonClick:function(e){ +this.set("dateInterval","day"); +this.set("dateIntervalSteps",4); +},monthButtonClick:function(e){ +this.set("dateInterval","month"); +this.set("dateIntervalSteps",1); +},updateRenderers:function(obj,_6c){ +if(this.currentView){ +this.currentView.updateRenderers(obj,_6c); +} +},getIdentity:function(_6d){ +return _6d?_6d.id:null; +},_setHoveredItem:function(_6e,_6f){ +if(this.hoveredItem&&_6e&&this.hoveredItem.id!=_6e.id||_6e==null||this.hoveredItem==null){ +var old=this.hoveredItem; +this.hoveredItem=_6e; +this.updateRenderers([old,this.hoveredItem],true); +if(_6e&&_6f){ +this.currentView._updateEditingCapabilities(_6e._item?_6e._item:_6e,_6f); +} +} +},hoveredItem:null,isItemHovered:function(_70){ +return this.hoveredItem!=null&&this.hoveredItem.id==_70.id; +},isItemEditable:function(_71,_72){ +return this.editable; +},isItemMoveEnabled:function(_73,_74){ +return this.isItemEditable(_73,_74)&&this.moveEnabled; +},isItemResizeEnabled:function(_75,_76){ +return this.isItemEditable(_75,_76)&&this.resizeEnabled; +},onGridClick:function(e){ +},onGridDoubleClick:function(e){ +},onItemClick:function(e){ +},onItemDoubleClick:function(e){ +},onItemContextMenu:function(e){ +},onItemEditBegin:function(e){ +},onItemEditEnd:function(e){ +},onItemEditBeginGesture:function(e){ +},onItemEditMoveGesture:function(e){ +},onItemEditResizeGesture:function(e){ +},onItemEditEndGesture:function(e){ +},onItemRollOver:function(e){ +},onItemRollOut:function(e){ +},onColumnHeaderClick:function(e){ +},onRowHeaderClick:function(e){ +},onExpandRendererClick:function(e){ +},_onRendererCreated:function(e){ +this.onRendererCreated(e); +},onRendererCreated:function(e){ +},_onRendererRecycled:function(e){ +this.onRendererRecycled(e); +},onRendererRecycled:function(e){ +},_onRendererReused:function(e){ +this.onRendererReused(e); +},onRendererReused:function(e){ +},_onRendererDestroyed:function(e){ +this.onRendererDestroyed(e); +},onRendererDestroyed:function(e){ +},_onRenderersLayoutDone:function(_77){ +this.onRenderersLayoutDone(_77); +},onRenderersLayoutDone:function(_78){ +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/CalendarBase.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/CalendarBase.js.uncompressed.js new file mode 100644 index 00000000..584f767a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/CalendarBase.js.uncompressed.js @@ -0,0 +1,1662 @@ +define("dojox/calendar/CalendarBase", [ +"dojo/_base/declare", +"dojo/_base/sniff", +"dojo/_base/event", +"dojo/_base/lang", +"dojo/_base/array", +"dojo/cldr/supplemental", +"dojo/dom", +"dojo/dom-class", +"dojo/dom-style", +"dojo/dom-construct", +"dojo/dom-geometry", +"dojo/date", +"dojo/date/locale", +"dojo/_base/fx", +"dojo/fx", +"dojo/on", +"dijit/_WidgetBase", +"dijit/_TemplatedMixin", +"dijit/_WidgetsInTemplateMixin", +"./StoreMixin", +"./StoreManager", +"dojox/widget/_Invalidating", +"dojox/widget/Selection", +"dojox/calendar/time", +"dojo/i18n!./nls/buttons"], +function( +declare, +has, +event, +lang, +arr, +cldr, +dom, +domClass, +domStyle, +domConstruct, +domGeometry, +date, +locale, +coreFx, +fx, +on, +_WidgetBase, +_TemplatedMixin, +_WidgetsInTemplateMixin, +StoreMixin, +StoreManager, +_Invalidating, +Selection, +timeUtil, +_nls){ + + /*===== + var __HeaderClickEventArgs = { + // summary: + // A column click event. + // index: Integer + // The column index. + // date: Date + // The date displayed by the column. + // triggerEvent: Event + // The origin event. + }; + =====*/ + + /*===== + var __TimeIntervalChangeArgs = { + // summary: + // An time interval change event, dispatched when the calendar displayed time range has changed. + // oldStartTime: Date + // The start of the previously displayed time interval, if any. + // startTime: Date + // The new start of the displayed time interval. + // oldEndTime: Date + // The end of the previously displayed time interval, if any. + // endTime: Date + // The new end of the displayed time interval. + }; + =====*/ + + /*===== + var __GridClickEventArgs = { + // summary: + // The event dispatched when the grid is clicked or double-clicked. + // date: Date + // The start of the previously displayed time interval, if any. + // triggerEvent: Event + // The event at the origin of this event. + }; + =====*/ + + /*===== + var __ItemMouseEventArgs = { + // summary: + // The event dispatched when an item is clicked, double-clicked or context-clicked. + // item: Object + // The item clicked. + // renderer: dojox/calendar/_RendererMixin + // The item renderer clicked. + // triggerEvent: Event + // The event at the origin of this event. + }; + =====*/ + + /*===== + var __itemEditingEventArgs = { + // summary: + // An item editing event. + // item: Object + // The render item that is being edited. Set/get the startTime and/or endTime properties to customize editing behavior. + // storeItem: Object + // The real data from the store. DO NOT change properties, but you may use properties of this item in the editing behavior logic. + // editKind: String + // Kind of edit: "resizeBoth", "resizeStart", "resizeEnd" or "move". + // dates: Date[] + // The computed date/time of the during the event editing. One entry per edited date (touch use case). + // startTime: Date? + // The start time of data item. + // endTime: Date? + // The end time of data item. + // sheet: String + // For views with several sheets (columns view for example), the sheet when the event occurred. + // source: dojox/calendar/ViewBase + // The view where the event occurred. + // eventSource: String + // The device that triggered the event. This property can take the following values: + // + // - "mouse", + // - "keyboard", + // - "touch" + // triggerEvent: Event + // The event at the origin of this event. + }; + =====*/ + + /*===== + var __rendererLifecycleEventArgs = { + // summary: + // A renderer lifecycle event. + // renderer: Object + // The renderer. + // source: dojox/calendar/ViewBase + // The view where the event occurred. + // item:Object? + // The item that will be displayed by the renderer for the "rendererCreated" and "rendererReused" events. + }; + =====*/ + + /*===== + var __ExpandRendererClickEventArgs = { + // summary: + // A expand renderer click event. + // columnIndex: Integer + // The column index of the cell. + // rowIndex: Integer + // The row index of the cell. + // date: Date + // The date displayed by the cell. + // triggerEvent: Event + // The origin event. + }; + =====*/ + + return declare("dojox.calendar.CalendarBase", [_WidgetBase, _TemplatedMixin, _WidgetsInTemplateMixin, StoreMixin, _Invalidating, Selection], { + + // summary: + // This class defines a generic calendar widget that manages several views to display event in time. + + baseClass: "dojoxCalendar", + + // datePackage: Object + // JavaScript namespace to find Calendar routines. Uses Gregorian Calendar routines at dojo.date by default. + datePackage: date, + + // startDate: Date + // The start date of the displayed time interval. + startDate: null, + + // endDate: Date + // The end date of the displayed time interval (included). + endDate: null, + + // date: Date + // The reference date used to determine along with the dateInterval + // and dateIntervalSteps properties the time interval to display. + date: null, + + // minDate: Date + // The minimum date. + // If date property is set, the displayed time interval the most in the past + // will the time interval containing this date. + // If startDate property is set, this mininum value of startDate. + minDate: null, + + // maxDate: Date + // The maximum date. + // If date is set, the displayed time interval the most in the future + // will the time interval containing this date. + // If endDate property is set, this mininum value of endDate. + maxDate: null, + + // dateInterval:String + // The date interval used to compute along with the date and + // dateIntervalSteps the time interval to display. + // Valid values are "day", "week" (default value) and "month". + dateInterval: "week", + + // dateIntervalSteps:Integer + // The number of date intervals used to compute along with the date and + // dateInterval the time interval to display. + // Default value is 1. + dateIntervalSteps: 1, + + // viewContainer: Node + // The DOM node that will contains the views. + viewContainer: null, + + // firstDayOfWeek: Integer + // (Optional) The first day of week override. By default the first day of week is determined + // for the current locale (extracted from the CLDR). + // Special value -1 (default value), means use locale dependent value. + firstDayOfWeek: -1, + + // formatItemTimeFunc: Function? + // Optional function to format the time of day of the item renderers. + // The function takes the date, the render data object, the view and the data item as arguments and returns a String. + formatItemTimeFunc: null, + + // editable: Boolean + // A flag that indicates whether or not the user can edit + // items in the data provider. + // If true, the item renderers in the control are editable. + // The user can click on an item renderer, or use the keyboard or touch devices, to move or resize the associated event. + editable: true, + + // moveEnabled: Boolean + // A flag that indicates whether the user can move items displayed. + // If true, the user can move the items. + moveEnabled: true, + + // resizeEnabled: Boolean + // A flag that indicates whether the items can be resized. + // If true, the control supports resizing of items. + resizeEnabled: true, + + // columnView: dojox/calendar/ColumnView + // The column view is displaying one day to seven days time intervals. + columnView: null, + + // matrixView: dojox/calendar/MatrixView + // The column view is displaying time intervals that lasts more than seven days. + matrixView: null, + + // columnViewProps: Object + // Map of property/value passed to the constructor of the column view. + columnViewProps: null, + + // matrixViewProps: Object + // Map of property/value passed to the constructor of the matrix view. + matrixViewProps: null, + + // createOnGridClick: Boolean + // Indicates whether the user can create new event by clicking and dragging the grid. + // A createItem function must be defined on the view or the calendar object. + createOnGridClick: false, + + // createItemFunc: Function + // A user supplied function that creates a new event. + // This function is used when createOnGridClick is set to true and the user is clicking and dragging on the grid. + // This view takes two parameters: + // + // - view: the current view, + // - d: the date at the clicked location. + createItemFunc: null, + + // currentView: ViewBase + // The current view displayed by the Calendar object. + // The currentViewChange event can be used to react on a view change. + currentView: null, + + _currentViewIndex: -1, + + views: null, + + _calendar: "gregorian", + + constructor: function(/*Object*/args){ + this.views = []; + + this.invalidatingProperties = ["store", "items", "startDate", "endDate", "views", + "date", "minDate", "maxDate", "dateInterval", "dateIntervalSteps", "firstDayOfWeek"]; + + args = args || {}; + this._calendar = args.datePackage ? args.datePackage.substr(args.datePackage.lastIndexOf(".")+1) : this._calendar; + this.dateModule = args.datePackage ? lang.getObject(args.datePackage, false) : date; + this.dateClassObj = this.dateModule.Date || Date; + this.dateLocaleModule = args.datePackage ? lang.getObject(args.datePackage+".locale", false) : locale; + + this.invalidateRendering(); + + this.storeManager = new StoreManager({owner: this, _ownerItemsProperty: "items"}); + this.storeManager.on("layoutInvalidated", lang.hitch(this, this._refreshItemsRendering)); + this.storeManager.on("dataLoaded", lang.hitch(this, function(items){ + this.set("items", items); + })); + + this.decorationStoreManager = new StoreManager({owner: this, _ownerItemsProperty: "decorationItems"}); + this.decorationStoreManager.on("layoutInvalidated", lang.hitch(this, this._refreshDecorationItemsRendering)); + this.decorationStoreManager.on("dataLoaded", lang.hitch(this, function(items){ + this.set("decorationItems", items); + })); + }, + + buildRendering: function(){ + this.inherited(arguments); + if(this.views == null || this.views.length == 0){ + this.set("views", this._createDefaultViews()); + } + }, + + _applyAttributes: function(){ + this._applyAttr = true; + this.inherited(arguments); + delete this._applyAttr; + }, + + //////////////////////////////////////////////////// + // + // Getter / setters + // + //////////////////////////////////////////////////// + + _setStartDateAttr: function(value){ + this._set("startDate", value); + this._timeRangeInvalidated = true; + this._startDateChanged = true; + }, + + _setEndDateAttr: function(value){ + this._set("endDate", value); + this._timeRangeInvalidated = true; + this._endDateChanged = true; + }, + + _setDateAttr: function(value){ + this._set("date", value); + this._timeRangeInvalidated = true; + this._dateChanged = true; + }, + + _setDateIntervalAttr: function(value){ + this._set("dateInterval", value); + this._timeRangeInvalidated = true; + }, + + _setDateIntervalStepsAttr: function(value){ + this._set("dateIntervalSteps", value); + this._timeRangeInvalidated = true; + }, + + _setFirstDayOfWeekAttr: function(value){ + this._set("firstDayOfWeek", value); + if(this.get("date") != null && this.get("dateInterval") == "week"){ + this._timeRangeInvalidated = true; + } + }, + + _setTextDirAttr: function(value){ + arr.forEach(this.views, function(view){ + view.set("textDir", value); + }); + }, + + + /////////////////////////////////////////////////// + // + // Validating + // + /////////////////////////////////////////////////// + + refreshRendering: function(){ + // summary: + // Refreshes all the visual rendering of the calendar. + // tags: + // protected + this.inherited(arguments); + this._validateProperties(); + }, + + _refreshItemsRendering: function(){ + if(this.currentView){ + this.currentView._refreshItemsRendering(); + } + }, + + _refreshDecorationItemsRendering: function(){ + if(this.currentView){ + this.currentView._refreshDecorationItemsRendering(); + } + }, + + resize: function(changeSize){ + if(changeSize){ + domGeometry.setMarginBox(this.domNode, changeSize); + } + if(this.currentView){ + // must not pass the size, children are sized depending on the parent by CSS. + this.currentView.resize(); + } + }, + + _validateProperties: function(){ + // tags: + // private + + var cal = this.dateModule; + var startDate = this.get("startDate"); + var endDate = this.get("endDate"); + var date = this.get("date"); + + if(this.firstDayOfWeek < -1 || this.firstDayOfWeek > 6){ + this._set("firstDayOfWeek", 0); + } + + var minDate = this.get("minDate"); + var maxDate = this.get("maxDate"); + + if(minDate && maxDate){ + if(cal.compare(minDate, maxDate) > 0){ + var t = minDate; + this._set("minDate", maxDate); + this._set("maxDate", t); + } + } + + if(date == null && (startDate != null || endDate != null)){ + + if(startDate == null){ + startDate = new this.dateClassObj(); + this._set("startDate", startDate); + this._timeRangeInvalidated = true; + } + + if(endDate == null){ + endDate = new this.dateClassObj(); + this._set("endDate", endDate); + this._timeRangeInvalidated = true; + } + + if(cal.compare(startDate, endDate) > 0){ + endDate = cal.add(startDate, "day", 1); + this._set("endDate", endDate); + this._timeRangeInvalidated = true; + } + + }else{ + + if(this.date == null){ + this._set("date", new this.dateClassObj()); + this._timeRangeInvalidated = true; + } + + var dint = this.get("dateInterval"); + if(dint != "day" && dint != "week" && dint != "month"){ + this._set("dateInterval", "day"); + this._timeRangeInvalidated = true; + } + + var dis = this.get("dateIntervalSteps"); + if(lang.isString(dis)){ + dis = parseInt(dis); + this._set("dateIntervalSteps", dis); + } + if(dis <= 0) { + this.set("dateIntervalSteps", 1); + this._timeRangeInvalidated = true; + } + } + + if(this._timeRangeInvalidated){ + this._timeRangeInvalidated = false; + + var timeInterval = this.computeTimeInterval(); + + if(this._timeInterval == null || + cal.compare(this._timeInterval[0], timeInterval[0]) != 0 || + cal.compare(this._timeInterval[1], timeInterval[1]) != 0){ + + if(this._dateChanged){ + this._lastValidDate = this.get("date");; + this._dateChanged = false; + }else if(this._startDateChanged || this._endDateChanged){ + this._lastValidStartDate = this.get("startDate"); + this._lastValidEndDate = this.get("endDate"); + this._startDateChanged = false; + this._endDateChanged = false; + } + + this.onTimeIntervalChange({ + oldStartTime: this._timeInterval == null ? null : this._timeInterval[0], + oldEndTime: this._timeInterval == null ? null : this._timeInterval[1], + startTime: timeInterval[0], + endTime: timeInterval[1] + }); + }else{ + + if(this._dateChanged){ + this._dateChanged = false; + if(this.lastValidDate != null){ + this._set("date", this.lastValidDate); + } + }else if(this._startDateChanged || this._endDateChanged){ + this._startDateChanged = false; + this._endDateChanged = false; + this._set("startDate", this._lastValidStartDate); + this._set("endDate", this._lastValidEndDate); + } + return; + } + + this._timeInterval = timeInterval; + + var duration = this.dateModule.difference(this._timeInterval[0], this._timeInterval[1], "day"); + var view = this._computeCurrentView(timeInterval[0], timeInterval[1], duration); + + var index = arr.indexOf(this.views, view); + + if(view == null || index == -1){ + return; + } + + this._performViewTransition(view, index, timeInterval, duration); + } + }, + + _performViewTransition: function(view, index, timeInterval, duration){ + var oldView = this.currentView; + + if(this.animateRange && (!has("ie") || has("ie")>8) ){ + if(oldView){ // there's a view to animate + oldView.beforeDeactivate(); + var ltr = this.isLeftToRight(); + var inLeft = this._animRangeInDir=="left" || this._animRangeInDir == null; + var outLeft = this._animRangeOutDir=="left" || this._animRangeOutDir == null; + this._animateRange(this.currentView.domNode, outLeft && ltr, false, 0, outLeft ? -100 : 100, + lang.hitch(this, function(){ + oldView.afterDeactivate(); + view.beforeActivate(); + this.animateRangeTimer = setTimeout(lang.hitch(this, function(){ + this._applyViewChange(view, index, timeInterval, duration); + this._animateRange(this.currentView.domNode, inLeft && ltr, true, inLeft ? -100 : 100, 0, function(){ + view.afterActivate(); + }); + this._animRangeInDir = null; + this._animRangeOutDir = null; + }), 100); // setTimeout give time for layout of view. + })); + }else{ + view.beforeActivate(); + this._applyViewChange(view, index, timeInterval, duration); + view.afterActivate(); + } + }else{ + if(oldView){ + oldView.beforeDeactivate(); + } + view.beforeActivate(); + this._applyViewChange(view, index, timeInterval, duration); + if(oldView){ + oldView.afterDeactivate(); + } + view.afterActivate(); + } + }, + + onViewConfigurationChange: function(view){ + // summary: + // Event dispatched when the view has been configured after the queried + // time range and before the current view is changed (if needed). + // + // view: ViewBase + // The view that has been configured. + // tags: + // callback + }, + + _applyViewChange: function(view, index, timeInterval, duration){ + // summary: + // Applies the changes of a view time and changes the currently visible view if needed. + // view: ViewBase + // The view that is configured and is or will be shown. + // index: Integer + // The view index in the internal structure. + // timeInterval: Date[] + // The time interval displayed by the calendar. + // duration: Integer + // The duration in days of the time interval. + // tags: + // protected + + this._configureView(view, index, timeInterval, duration); + this.onViewConfigurationChange(view); + + if(index != this._currentViewIndex){ + if(this.currentView == null){ + view.set("items", this.items); + view.set("decorationItems", this.decorationItems); + this.set("currentView", view); + }else{ + if(this.items == null || this.items.length == 0){ + this.set("currentView", view); + if(this.animateRange && (!has("ie") || has("ie")>8) ){ + domStyle.set(this.currentView.domNode, "opacity", 0); + } + view.set("items", this.items); + view.set("decorationItems", this.decorationItems); + }else{ + this.currentView = view; + view.set("items", this.items); + view.set("decorationItems", this.decorationItems); + this.set("currentView", view); + if(this.animateRange && (!has("ie") || has("ie")>8) ){ + domStyle.set(this.currentView.domNode, "opacity", 0); + } + } + } + } + }, + + _timeInterval: null, + + computeTimeInterval: function(){ + + var d = this.get("date"); + var minDate = this.get("minDate"); + var maxDate = this.get("maxDate"); + var cal = this.dateModule; + + if(d == null){ + var startDate = this.get("startDate"); + var endDate = cal.add(this.get("endDate"), "day", 1); + + if(minDate != null || maxDate != null){ + var dur = this.dateModule.difference(startDate, endDate, "day"); + if(cal.compare(minDate, startDate) > 0){ + startDate = minDate; + endDate = cal.add(startDate, "day", dur); + } + if(cal.compare(maxDate, endDate) < 0){ + endDate = maxDate; + startDate = cal.add(endDate, "day", -dur); + } + if(cal.compare(minDate, startDate) > 0){ + startDate = minDate; + endDate = maxDate; + } + } + return [ this.floorToDay(startDate), this.floorToDay(endDate) ]; + + }else{ + + var interval = this._computeTimeIntervalImpl(d); + + if(minDate != null){ + var minInterval = this._computeTimeIntervalImpl(minDate); + if(cal.compare(minInterval[0], interval[0]) > 0){ + interval = minInterval; + } + } + + if(maxDate != null){ + var maxInterval = this._computeTimeIntervalImpl(maxDate); + if(cal.compare(maxInterval[1], interval[1]) < 0){ + interval = maxInterval; + } + } + + return interval; + } + }, + + _computeTimeIntervalImpl: function(d){ + // summary: + // Computes the displayed time interval according to the date, dateInterval and + // dateIntervalSteps if date is not null or startDate and endDate properties otherwise. + // tags: + // protected + + var cal = this.dateModule; + + var s = this.floorToDay(d); + var di = this.get("dateInterval"); + var dis = this.get("dateIntervalSteps"); + var e; + + switch(di){ + case "day": + e = cal.add(s, "day", dis); + break; + case "week": + s = this.floorToWeek(s); + e = cal.add(s, "week", dis); + break; + case "month": + s.setDate(1); + e = cal.add(s, "month", dis); + break; + default: + e = cal.add(s, "day", 1); + } + return [s, e]; + }, + + onTimeIntervalChange: function(e){ + // summary: + // Event dispatched when the displayed time interval has changed. + // e: __TimeIntervalChangeArgs + // The time interval change event. + // tags: + // callback + }, + + ///////////////////////////////////////////////////// + // + // View Management + // + ///////////////////////////////////////////////////// + + // views: dojox.calendar.ViewBase[] + // The views displayed by the widget. + // To add/remove only one view, prefer, respectively, the addView() or removeView() methods. + views: null, + + _setViewsAttr: function(views){ + if(!this._applyAttr){ + // 1/ in create() the constructor parameters are mixed in the widget + // 2/ in _applyAttributes(), every property with a setter is called. + // So no need to call on view removed for a non added view.... + for(var i=0;i this.views.length){ + index = this.views.length; + } + this.views.splice(index, view); + this._onViewAdded(view); + }, + + removeView: function(view){ + // summary: + // Removes a view from the calendar's view list. + // view: dojox/calendar/ViewBase + // The view to remove from the calendar. + // tags: + // protected + + if(index < 0 || index >= this.views.length){ + return; + } + + this._onViewRemoved(this.views[index]); + this.views.splice(index, 1); + }, + + _onViewAdded: function(view){ + view.owner = this; + view.buttonContainer = this.buttonContainer; + view._calendar = this._calendar; + view.datePackage = this.datePackage; + view.dateModule = this.dateModule; + view.dateClassObj = this.dateClassObj; + view.dateLocaleModule = this.dateLocaleModule; + domStyle.set(view.domNode, "display", "none"); + domClass.add(view.domNode, "view"); + domConstruct.place(view.domNode, this.viewContainer); + this.onViewAdded(view); + }, + + onViewAdded: function(view){ + // summary: + // Event dispatched when a view is added from the calendar. + // view: dojox/calendar/ViewBase + // The view that has been added to the calendar. + // tags: + // callback + + }, + + _onViewRemoved: function(view){ + view.owner = null; + view.buttonContainer = null; + domClass.remove(view.domNode, "view"); + this.viewContainer.removeChild(view.domNode); + this.onViewRemoved(view); + }, + + onViewRemoved: function(view){ + // summary: + // Event dispatched when a view is removed from the calendar. + // view: dojox/calendar/ViewBase + // The view that has been removed from the calendar. + // tags: + // callback + + }, + + _setCurrentViewAttr: function(view){ + var index = arr.indexOf(this.views, view); + if(index != -1){ + var oldView = this.get("currentView"); + this._currentViewIndex = index; + this._set("currentView", view); + + this._showView(oldView, view); + this.onCurrentViewChange({ + oldView: oldView, + newView: view + }); + } + }, + + _getCurrentViewAttr: function(){ + return this.views[this._currentViewIndex]; + }, + + onCurrentViewChange: function(e){ + // summary: + // Event dispatched when the current view has changed. + // e: Event + // Object that contains the oldView and newView properties. + // tags: + // callback + + }, + + _configureView: function(view, index, timeInterval, duration){ + // summary: + // Configures the view to show the specified time interval. + // This method is computing and setting the following properties: + // - "startDate", "columnCount" for a column view, + // - "startDate", "columnCount", "rowCount", "refStartTime" and "refEndTime" for a matrix view. + // This method can be extended to configure other properties like layout properties for example. + // view: dojox/calendar/ViewBase + // The view to configure. + // index: Integer + // The index of the view in the Calendar view list. + // timeInterval: Date[] + // The time interval that will be displayed by the view. + // duration: Integer + // The duration, in days, of the displayed time interval. + // tags: + // protected + + var cal = this.dateModule; + if(view.viewKind == "columns"){ + view.set("startDate", timeInterval[0]); + view.set("columnCount", duration); + }else if(view.viewKind == "matrix"){ + if(duration > 7){ // show only full weeks. + var s = this.floorToWeek(timeInterval[0]); + var e = this.floorToWeek(timeInterval[1]); + if(cal.compare(e, timeInterval[1]) != 0){ + e = this.dateModule.add(e, "week", 1); + } + duration = this.dateModule.difference(s, e, "day"); + view.set("startDate", s); + view.set("columnCount", 7); + view.set("rowCount", Math.ceil(duration/7)); + view.set("refStartTime", timeInterval[0]); + view.set("refEndTime", timeInterval[1]); + }else{ + view.set("startDate", timeInterval[0]); + view.set("columnCount", duration); + view.set("rowCount", 1); + view.set("refStartTime", null); + view.set("refEndTime", null); + } + } + }, + + _computeCurrentView: function(startDate, endDate, duration){ + // summary: + // If the time range is lasting less than seven days returns the column view or the matrix view otherwise. + // startDate: Date + // The start date of the displayed time interval + // endDate: Date + // The end date of the displayed time interval + // duration: Integer + // Duration of the + // returns: dojox/calendar/ViewBase + // The view to display. + // tags: + // protected + + return duration <= 7 ? this.columnView : this.matrixView; + }, + + matrixViewRowHeaderClick: function(e){ + // summary: + // Function called when the cell of a row header of the matrix view is clicked. + // The implementation is doing the foolowing actions: + // - If another row is already expanded, collapse it and then expand the clicked row. + // - If the clicked row is already expadned, collapse it. + // - If no row is expanded, expand the click row. + // e: Object + // The row header click event. + // tags: + // protected + + var expIndex = this.matrixView.getExpandedRowIndex(); + if(expIndex == e.index){ + this.matrixView.collapseRow(); + }else if(expIndex == -1){ + this.matrixView.expandRow(e.index); + }else{ + var h = this.matrixView.on("expandAnimationEnd", lang.hitch(this, function(){ + h.remove(); + this.matrixView.expandRow(e.index); + })); + this.matrixView.collapseRow(); + } + }, + + columnViewColumnHeaderClick: function(e){ + // summary: + // Function called when the cell of a column header of the column view is clicked. + // Show the time range defined by the clicked date. + // e: Object + // The column header click event. + // tags: + // protected + + var cal = this.dateModule; + if(cal.compare(e.date, this._timeInterval[0]) == 0 && this.dateInterval == "day" && this.dateIntervalSteps == 1){ + this.set("dateInterval", "week"); + }else{ + this.set("date", e.date); + this.set("dateInterval", "day"); + this.set("dateIntervalSteps", 1); + } + }, + + // viewFadeDuration: Integer + // The duration in milliseconds of the fade animation when the current view is changing. + viewChangeDuration: 0, + + _showView: function(oldView, newView){ + // summary: + // Displays the current view. + // oldView: dojox/calendar/ViewBase + // The previously displayed view or null. + // newView: dojox/calendar/ViewBase + // The view to display. + // tags: + // protected + + if(oldView != null){ + domStyle.set(oldView.domNode, "display", "none"); + } + if(newView != null){ + domStyle.set(newView.domNode, "display", "block"); + newView.resize(); + if(!has("ie") || has("ie") > 7){ + domStyle.set(newView.domNode, "opacity", "1"); + } + } + }, + + //////////////////////////////////////////////////// + // + // Store & data + // + //////////////////////////////////////////////////// + + _setItemsAttr: function(value){ + this._set("items", value); + if(this.currentView){ + this.currentView.set("items", value); + if(!this._isEditing){ + this.currentView.invalidateRendering(); + } + } + }, + + _setDecorationItemsAttr: function(value){ + this._set("decorationItems", value); + if(this.currentView){ + this.currentView.set("decorationItems", value); + this.currentView.invalidateRendering(); + } + }, + + _setDecorationStoreAttr: function(value){ + this._set("decorationStore", value); + this.decorationStore = value; + this.decorationStoreManager.set("store", value); + }, + + ///////////////////////////////////////////////////// + // + // Time utilities + // + //////////////////////////////////////////////////// + + floorToDay: function(date, reuse){ + // summary: + // Floors the specified date to the start of day. + // date: Date + // The date to floor. + // reuse: Boolean + // Whether use the specified instance or create a new one. Default is false. + // returns: Date + return timeUtil.floorToDay(date, reuse, this.dateClassObj); + }, + + floorToWeek: function(d){ + // summary: + // Floors the specified date to the beginning of week. + // date: Date + // Date to floor. + return timeUtil.floorToWeek(d, this.dateClassObj, this.dateModule, this.firstDayOfWeek, this.locale); + }, + + newDate: function(obj){ + // summary: + // Creates a new Date object. + // obj: Object + // This object can have several values: + // - the time in milliseconds since gregorian epoch. + // - a Date instance + // returns: Date + return timeUtil.newDate(obj, this.dateClassObj); + }, + + isToday: function(date){ + // summary: + // Returns whether the specified date is in the current day. + // date: Date + // The date to test. + // renderData: Object + // The current renderData + // returns: Boolean + return timeUtil.isToday(date, this.dateClassObj); + }, + + isStartOfDay: function(d){ + // summary: + // Tests if the specified date represents the starts of day. + // d:Date + // The date to test. + // returns: Boolean + return timeUtil.isStartOfDay(d, this.dateClassObj, this.dateModule); + }, + + floorDate: function(date, unit, steps, reuse){ + // summary: + // floors the date to the unit. + // date: Date + // The date/time to floor. + // unit: String + // The unit. Valid values are "minute", "hour", "day". + // steps: Integer + // For "day" only 1 is valid. + // reuse: Boolean + // Whether use the specified instance or create a new one. Default is false. + // returns: Date + return timeUtil.floor(date, unit, steps, reuse, this.classFuncObj); + }, + + isOverlapping: function(renderData, start1, end1, start2, end2, includeLimits){ + // summary: + // Computes if the first time range defined by the start1 and end1 parameters + // is overlapping the second time range defined by the start2 and end2 parameters. + // renderData: Object + // The render data. + // start1: Date + // The start time of the first time range. + // end1: Date + // The end time of the first time range. + // start2: Date + // The start time of the second time range. + // end2: Date + // The end time of the second time range. + // includeLimits: Boolean + // Whether include the end time or not. + // returns: Boolean + return timeUtil.isOverlapping(renderData, start1, end1, start2, end2, includeLimits); + }, + + ///////////////////////////////////////////////////// + // + // Time navigation + // + //////////////////////////////////////////////////// + + + // animateRange: Boolean + // Indicates that the previous/next range method will be animated. + animateRange: true, + + // animationRangeDuration: Integer + // The duration of the next/previous range animation. + animationRangeDuration: 400, + + _animateRange : function(node, toLeft, fadeIn, xFrom, xTo, onEnd){ + // summary: + // Animates the current view using a synchronous fade and horizontal translation. + // toLeft: Boolean + // Whether the view is moved to the left or to the right. + // fadeIn: Boolean + // Whether the view is faded in or out. + // xFrom: Integer + // Position before the animation + // xTo: Integer + // Position after the animation + // onEnd: Function + // Function called when the animation is finished. + // tags: + // protected + + + if(this.animateRangeTimer){ // cleanup previous call not finished + clearTimeout(this.animateRangeTimer); + delete this.animateRangeTimer; + } + + var fadeFunc = fadeIn ? coreFx.fadeIn : coreFx.fadeOut; + domStyle.set(node, {left: xFrom + "px", right: (-xFrom) + "px"}); + + fx.combine([ + coreFx.animateProperty({ + node: node, + properties: {left: xTo, right: -xTo}, + duration: this.animationRangeDuration/2, + onEnd: onEnd + }), + fadeFunc({node: node, duration: this.animationRangeDuration/2}) + ]).play(); + }, + + // _animRangeOutDir: Boolean + // Direction of the range animation when the view 'leaving' the screen. + // Valid values are: + // - null: auto value, + // - "left": hides to left side (right in right to left). + // - "right": hides to right side (left in right to left). + _animRangeOutDir: null, + + // _animRangeInDir: Boolean + // Direction of the range animation when the view 'entering' the screen. + // Valid values are: + // - null: auto value, + // - "left": shows from left side (right in right to left). + // - "right": shows from right side (left in right to left). + _animRangeOutDir: null, + + nextRange: function(){ + this._animRangeOutDir = "left"; + this._animRangeInDir = "right"; + this._navigate(1); + }, + + previousRange: function(){ + this._animRangeOutDir = "right"; + this._animRangeInDir = "left"; + this._navigate(-1); + }, + + _navigate: function(dir){ + // tags: + // private + + var d = this.get("date"); + var cal = this.dateModule; + + if(d == null){ + var s = this.get("startDate"); + var e = this.get("endDate"); + var dur = cal.difference(s, e, "day"); + if(dir == 1){ + e = cal.add(e, "day", 1); + this.set("startDate", e); + this.set("endDate", cal.add(e, "day", dur)); + }else{ + s = cal.add(s, "day", -1); + this.set("startDate", cal.add(s, "day", -dur)); + this.set("endDate", s); + } + }else{ + var di = this.get("dateInterval"); + var dis = this.get("dateIntervalSteps"); + this.set("date", cal.add(d, di, dir * dis)); + } + }, + + goToday: function(){ + // summary: + // Changes the displayed time interval to show the current day. + // Sets the date property to the current day, the dateInterval property to "day" and + // the "dateIntervalSteps" to 1. + this.set("date", this.floorToDay(new this.dateClassObj(), true)); + this.set("dateInterval", "day"); + this.set("dateIntervalSteps", 1); + }, + + //////////////////////////////////////////////////// + // + // Buttons + // + //////////////////////////////////////////////////// + + postCreate: function(){ + this.inherited(arguments); + this.configureButtons(); + }, + + configureButtons: function(){ + // summary: + // Set the localized labels of the buttons and the event handlers. + // tags: + // protected + + var rtl = !this.isLeftToRight(); + + if(this.previousButton){ + this.previousButton.set("label", _nls[rtl?"nextButton":"previousButton"]); + this.own( + on(this.previousButton, "click", lang.hitch(this, this.previousRange)) + ); + } + + if(this.nextButton){ + this.nextButton.set("label", _nls[rtl?"previousButton":"nextButton"]); + this.own( + on(this.nextButton, "click", lang.hitch(this, this.nextRange)) + ); + } + + if(rtl && this.previousButton && this.nextButton){ + var t = this.previousButton; + this.previousButton = this.nextButton; + this.nextButton = t; + } + + if(this.todayButton){ + this.todayButton.set("label", _nls.todayButton); + this.own( + on(this.todayButton, "click", lang.hitch(this, this.todayButtonClick)) + ); + } + + if(this.dayButton){ + this.dayButton.set("label", _nls.dayButton); + this.own( + on(this.dayButton, "click", lang.hitch(this, this.dayButtonClick)) + ); + } + + if(this.weekButton){ + this.weekButton.set("label", _nls.weekButton); + this.own( + on(this.weekButton, "click", lang.hitch(this, this.weekButtonClick)) + ); + } + + if(this.fourDaysButton){ + this.fourDaysButton.set("label", _nls.fourDaysButton); + this.own( + on(this.fourDaysButton, "click", lang.hitch(this, this.fourDaysButtonClick)) + ); + } + + if(this.monthButton){ + this.monthButton.set("label", _nls.monthButton); + this.own( + on(this.monthButton, "click", lang.hitch(this, this.monthButtonClick)) + ); + } + }, + + todayButtonClick: function(e){ + // summary: + // The action triggered when the today button is clicked. + // By default, calls the goToday() method. + + this.goToday(); + }, + dayButtonClick: function(e){ + // summary: + // The action triggerred when the day button is clicked. + // By default, sets the dateInterval property to "day" and + // the "dateIntervalSteps" to 1. + + if(this.get("date") == null){ + this.set("date", this.floorToDay(new this.dateClassObj(), true)); + } + this.set("dateInterval", "day"); + this.set("dateIntervalSteps", 1); + }, + + weekButtonClick: function(e){ + // summary: + // The action triggered when the week button is clicked. + // By default, sets the dateInterval property to "week" and + // the "dateIntervalSteps" to 1. + this.set("dateInterval", "week"); + this.set("dateIntervalSteps", 1); + }, + fourDaysButtonClick: function(e){ + // summary: + // The action triggerred when the 4 days button is clicked. + // By default, sets the dateInterval property to "day" and + // the "dateIntervalSteps" to 4. + this.set("dateInterval", "day"); + this.set("dateIntervalSteps", 4); + }, + monthButtonClick: function(e){ + // summary: + // The action triggered when the month button is clicked. + // By default, sets the dateInterval property to "month" and + // the "dateIntervalSteps" to 1. + this.set("dateInterval", "month"); + this.set("dateIntervalSteps", 1); + }, + + ///////////////////////////////////////////////////// + // + // States item + // + //////////////////////////////////////////////////// + + updateRenderers: function(obj, stateOnly){ + if(this.currentView){ + this.currentView.updateRenderers(obj, stateOnly); + } + }, + + getIdentity: function(item){ + return item ? item.id : null; + }, + + _setHoveredItem: function(item, renderer){ + if(this.hoveredItem && item && this.hoveredItem.id != item.id || + item == null || this.hoveredItem == null){ + var old = this.hoveredItem; + this.hoveredItem = item; + + this.updateRenderers([old, this.hoveredItem], true); + + if(item && renderer){ + this.currentView._updateEditingCapabilities(item._item ? item._item : item, renderer); + } + } + }, + + // hoveredItem: Object + // Current render item which is under the mouse cursor. + hoveredItem: null, + + isItemHovered: function(item){ + // summary: + // Returns whether the specified item is hovered or not. + // item: Object + // The item. + // returns: Boolean + return this.hoveredItem != null && this.hoveredItem.id == item.id; + }, + + //////////////////////////////////////////////////////////////////////// + // + // Editing + // + //////////////////////////////////////////////////////////////////////// + + isItemEditable: function(item, rendererKind){ + // summary: + // Computes whether particular item renderer can be edited. + // By default it is using the editable property value. + // item: Object + // The data item represented by the renderer. + // rendererKind: String + // The kind of renderer. + // returns: Boolean + return this.editable; + }, + + isItemMoveEnabled: function(item, rendererKind){ + // summary: + // Computes whether particular item renderer can be moved. + // By default it is using the moveEnabled property value. + // item: Object + // The data item represented by the renderer. + // rendererKind: String + // The kind of renderer. + // returns: Boolean + return this.isItemEditable(item, rendererKind) && this.moveEnabled; + }, + + isItemResizeEnabled: function(item, rendererKind){ + // summary: + // Computes whether particular item renderer can be resized. + // By default it is using the resizedEnabled property value. + // item: Object + // The data item represented by the renderer. + // rendererKind: String + // The kind of renderer. + // returns: Boolean + + return this.isItemEditable(item, rendererKind) && this.resizeEnabled; + }, + + + //////////////////////////////////////////////////////////////////////// + // + // Widget events + // + //////////////////////////////////////////////////////////////////////// + + onGridClick: function(e){ + // summary: + // Event dispatched when the grid has been clicked. + // e: __GridClickEventArgs + // The event dispatched when the grid is clicked. + // tags: + // callback + + }, + + onGridDoubleClick: function(e){ + // summary: + // Event dispatched when the grid has been double-clicked. + // e: __GridClickEventArgs + // The event dispatched when the grid is double-clicked. + // tags: + // callback + }, + + onItemClick: function(e){ + // summary: + // Event dispatched when an item renderer has been clicked. + // e: __ItemMouseEventArgs + // The event dispatched when an item is clicked. + // tags: + // callback + }, + + onItemDoubleClick: function(e){ + // summary: + // Event dispatched when an item renderer has been double-clicked. + // e: __ItemMouseEventArgs + // The event dispatched when an item is double-clicked. + // tags: + // callback + }, + + onItemContextMenu: function(e){ + // summary: + // Event dispatched when an item renderer has been context-clicked. + // e: __ItemMouseEventArgs + // The event dispatched when an item is context-clicked. + // tags: + // callback + }, + + onItemEditBegin: function(e){ + // summary: + // Event dispatched when the item is entering the editing mode. + // e: __itemEditingEventArgs + // The editing event. + // tags: + // callback + }, + + onItemEditEnd: function(e){ + // summary: + // Event dispatched when the item is leaving the editing mode. + // e: __itemEditingEventArgs + // The editing event. + // tags: + // callback + }, + + onItemEditBeginGesture: function(e){ + // summary: + // Event dispatched when an editing gesture is beginning. + // e: __itemEditingEventArgs + // The editing event. + // tags: + // callback + }, + + onItemEditMoveGesture: function(e){ + // summary: + // Event dispatched during a move editing gesture. + // e: __itemEditingEventArgs + // The editing event. + // tags: + // callback + }, + + onItemEditResizeGesture: function(e){ + // summary: + // Event dispatched during a resize editing gesture. + // e: __itemEditingEventArgs + // The editing event. + // tags: + // callback + }, + + onItemEditEndGesture: function(e){ + // summary: + // Event dispatched at the end of an editing gesture. + // e: __itemEditingEventArgs + // The editing event. + // tags: + // callback + }, + + onItemRollOver: function(e){ + // Summary: + // Event dispatched when the mouse cursor in going over an item renderer. + // e: __ItemMouseEventArgs + // The event dispatched when the mouse cursor enters in the item renderer. + // tags: + // callback + }, + + onItemRollOut: function(e){ + // Summary: + // Event dispatched when the mouse cursor in leaving an item renderer. + // e: __ItemMouseEventArgs + // The event dispatched when the mouse cursor enters in the item renderer. + // tags: + // callback + }, + + onColumnHeaderClick: function(e){ + // summary: + // Event dispatched when a column header cell is dispatched. + // e: __HeaderClickEventArgs + // Header click event. + // tags: + // callback + }, + + onRowHeaderClick: function(e){ + // summary: + // Event dispatched when a row header cell is clicked. + // e: __HeaderClickEventArgs + // Header click event. + // tags: + // callback + }, + + onExpandRendererClick: function(e){ + // summary: + // Event dispatched when an expand renderer is clicked. + // e: __ExpandRendererClickEventArgs + // Expand renderer click event. + // tags: + // callback + }, + + _onRendererCreated: function(e){ + this.onRendererCreated(e); + }, + + onRendererCreated: function(e){ + // summary: + // Event dispatched when an item renderer has been created. + // e: __rendererLifecycleEventArgs + // The renderer lifecycle event. + // tags: + // callback + }, + + _onRendererRecycled: function(e){ + this.onRendererRecycled(e); + }, + + onRendererRecycled: function(e){ + // summary: + // Event dispatched when an item renderer has been recycled. + // e: __rendererLifecycleEventArgs + // The renderer lifecycle event. + // tags: + // callback + }, + + _onRendererReused: function(e){ + this.onRendererReused(e); + }, + + onRendererReused: function(e){ + // summary: + // Event dispatched when an item renderer that was recycled is reused. + // e: __rendererLifecycleEventArgs + // The renderer lifecycle event. + // tags: + // callback + }, + + _onRendererDestroyed: function(e){ + this.onRendererDestroyed(e); + }, + + onRendererDestroyed: function(e){ + // summary: + // Event dispatched when an item renderer is destroyed. + // e: __rendererLifecycleEventArgs + // The renderer lifecycle event. + // tags: + // callback + }, + + _onRenderersLayoutDone: function(view){ + this.onRenderersLayoutDone(view); + }, + + onRenderersLayoutDone: function(view){ + // summary: + // Event triggered when item renderers layout has been done. + // view: dojox/calendar/ViewBase + // The view that has been laid-out. + // tags: + // callback + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnView.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnView.js new file mode 100644 index 00000000..eeb97b1a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnView.js @@ -0,0 +1,171 @@ +//>>built +require({cache:{"url:dojox/calendar/templates/ColumnView.html":"
    \n\t\n\t
    \n\t\t
    \n\t\t\t
    \t\t\n\t\t
    \n\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\n\t
    \n\t\t
    \n\t\t\t
    \t\t\n\t\t
    \n\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\t
    \n\t
    \n\t\n
    \n"}}); +define("dojox/calendar/ColumnView",["dojo/_base/array","dojo/_base/declare","dojo/_base/event","dojo/_base/lang","dojo/_base/sniff","dojo/_base/fx","dojo/dom","dojo/dom-class","dojo/dom-style","dojo/dom-geometry","dojo/dom-construct","dojo/on","dojo/date","dojo/date/locale","dojo/query","dojox/html/metrics","./SimpleColumnView","dojo/text!./templates/ColumnView.html","./ColumnViewSecondarySheet"],function(_1,_2,_3,_4,_5,fx,_6,_7,_8,_9,_a,on,_b,_c,_d,_e,_f,_10,_11){ +return _2("dojox.calendar.ColumnView",_f,{templateString:_10,baseClass:"dojoxCalendarColumnView",secondarySheetClass:_11,secondarySheetProps:null,headerPadding:3,_showSecondarySheet:true,buildRendering:function(){ +this.inherited(arguments); +if(this.secondarySheetNode){ +var _12=_4.mixin({owner:this},this.secondarySheetProps); +this.secondarySheet=new this.secondarySheetClass(_12,this.secondarySheetNode); +this.secondarySheetNode=this.secondarySheet.domNode; +} +},destroy:function(_13){ +if(this.secondarySheet){ +this.secondarySheet.destroy(_13); +} +this.inherited(arguments); +},_setVisibility:function(_14){ +this.inherited(arguments); +if(this.secondarySheet){ +this.secondarySheet._setVisibility(_14); +} +},resize:function(_15){ +this.inherited(arguments); +if(this.secondarySheet){ +this.secondarySheet.resize(); +} +},invalidateLayout:function(){ +this._layoutRenderers(this.renderData); +if(this.secondarySheet){ +this.secondarySheet._layoutRenderers(this.secondarySheet.renderData); +} +},onRowHeaderClick:function(e){ +},_setSubColumnsAttr:function(_16){ +var old=this.get("subColumns"); +if(old!=_16){ +this._secondaryHeightInvalidated=true; +} +this._set("subColumns",_16); +},refreshRendering:function(){ +this.inherited(arguments); +if(this._secondaryHeightInvalidated){ +this._secondaryHeightInvalidated=false; +var h=_9.getMarginBox(this.secondarySheetNode).h; +this.resizeSecondarySheet(h); +} +},resizeSecondarySheet:function(_17){ +if(this.secondarySheetNode){ +var _18=_9.getMarginBox(this.header).h; +_8.set(this.secondarySheetNode,"height",_17+"px"); +this.secondarySheet._resizeHandler(null,true); +var top=(_17+_18+this.headerPadding); +if(this.subHeader&&this.subColumns){ +_8.set(this.subHeader,"top",top+"px"); +top+=_9.getMarginBox(this.subHeader).h; +} +_8.set(this.scrollContainer,"top",top+"px"); +if(this.vScrollBar){ +_8.set(this.vScrollBar,"top",top+"px"); +} +} +},updateRenderers:function(obj,_19){ +this.inherited(arguments); +if(this.secondarySheet){ +this.secondarySheet.updateRenderers(obj,_19); +} +},_setItemsAttr:function(_1a){ +this.inherited(arguments); +if(this.secondarySheet){ +this.secondarySheet.set("items",_1a); +} +},_setDecorationItemsAttr:function(_1b){ +this.inherited(arguments); +if(this.secondarySheet){ +this.secondarySheet.set("decorationItems",_1b); +} +},_setStartDateAttr:function(_1c){ +this.inherited(arguments); +if(this.secondarySheet){ +this.secondarySheet.set("startDate",_1c); +} +},_setColumnCountAttr:function(_1d){ +this.inherited(arguments); +if(this.secondarySheet){ +this.secondarySheet.set("columnCount",_1d); +} +},_setHorizontalRendererAttr:function(_1e){ +if(this.secondarySheet){ +this.secondarySheet.set("horizontalRenderer",_1e); +} +},_getHorizontalRendererAttr:function(){ +if(this.secondarySheet){ +return this.secondarySheet.get("horizontalRenderer"); +} +return null; +},_setHorizontalDecorationRendererAttr:function(_1f){ +this.inherited(arguments); +if(this.secondarySheet){ +this.secondarySheet.set("horizontalDecorationRenderer",_1f); +} +},_getHorizontalRendererAttr:function(){ +if(this.secondarySheet){ +return this.secondarySheet.get("horizontalDecorationRenderer"); +} +return null; +},_setExpandRendererAttr:function(_20){ +if(this.secondarySheet){ +this.secondarySheet.set("expandRenderer",_20); +} +},_getExpandRendererAttr:function(){ +if(this.secondarySheet){ +return this.secondarySheet.get("expandRenderer"); +} +return null; +},_setTextDirAttr:function(_21){ +this.secondarySheet.set("textDir",_21); +this._set("textDir",_21); +},_defaultItemToRendererKindFunc:function(_22){ +return _22.allDay?null:"vertical"; +},getSecondarySheet:function(){ +return this.secondarySheet; +},_onGridTouchStart:function(e){ +this.inherited(arguments); +this._doEndItemEditing(this.secondarySheet,"touch"); +},_onGridMouseDown:function(e){ +this.inherited(arguments); +this._doEndItemEditing(this.secondarySheet,"mouse"); +},_configureScrollBar:function(_23){ +this.inherited(arguments); +if(this.secondarySheetNode){ +var _24=this.isLeftToRight()?true:this.scrollBarRTLPosition=="right"; +_8.set(this.secondarySheetNode,_24?"right":"left",_23.scrollbarWidth+"px"); +_8.set(this.secondarySheetNode,_24?"left":"right","0"); +_1.forEach(this.secondarySheet._hScrollNodes,function(elt){ +_7[_23.hScrollBarEnabled?"add":"remove"](elt.parentNode,"dojoxCalendarHorizontalScroll"); +},this); +} +},_configureHScrollDomNodes:function(_25){ +this.inherited(arguments); +if(this.secondarySheet&&this.secondarySheet._configureHScrollDomNodes){ +this.secondarySheet._configureHScrollDomNodes(_25); +} +},_setHScrollPosition:function(pos){ +this.inherited(arguments); +if(this.secondarySheet){ +this.secondarySheet._setHScrollPosition(pos); +} +},_refreshItemsRendering:function(){ +this.inherited(arguments); +if(this.secondarySheet){ +var rd=this.secondarySheet.renderData; +this.secondarySheet._computeVisibleItems(rd); +this.secondarySheet._layoutRenderers(rd); +} +},_layoutRenderers:function(_26){ +if(!this.secondarySheet._domReady){ +this.secondarySheet._domReady=true; +this.secondarySheet._layoutRenderers(this.secondarySheet.renderData); +} +this.inherited(arguments); +},_layoutDecorationRenderers:function(_27){ +if(!this.secondarySheet._decDomReady){ +this.secondarySheet._decDomReady=true; +this.secondarySheet._layoutDecorationRenderers(this.secondarySheet.renderData); +} +this.inherited(arguments); +},invalidateRendering:function(){ +if(this.secondarySheet){ +this.secondarySheet.invalidateRendering(); +} +this.inherited(arguments); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnView.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnView.js.uncompressed.js new file mode 100644 index 00000000..e8142d14 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnView.js.uncompressed.js @@ -0,0 +1,332 @@ +require({cache:{ +'url:dojox/calendar/templates/ColumnView.html':"
    \n\t\n\t
    \n\t\t
    \n\t\t\t
    \t\t\n\t\t
    \n\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\n\t
    \n\t\t
    \n\t\t\t
    \t\t\n\t\t
    \n\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\t
    \n\t
    \n\t\n
    \n"}}); +define("dojox/calendar/ColumnView", [ +"dojo/_base/array", +"dojo/_base/declare", +"dojo/_base/event", +"dojo/_base/lang", +"dojo/_base/sniff", +"dojo/_base/fx", +"dojo/dom", +"dojo/dom-class", +"dojo/dom-style", +"dojo/dom-geometry", +"dojo/dom-construct", +"dojo/on", +"dojo/date", +"dojo/date/locale", +"dojo/query", +"dojox/html/metrics", +"./SimpleColumnView", +"dojo/text!./templates/ColumnView.html", +"./ColumnViewSecondarySheet"], + +function( + arr, + declare, + event, + lang, + has, + fx, + dom, + domClass, + domStyle, + domGeometry, + domConstruct, + on, + date, + locale, + query, + metrics, + SimpleColumnView, + template, + ColumnViewSecondarySheet){ + + return declare("dojox.calendar.ColumnView", SimpleColumnView, { + + // summary: + // This class defines a simple column view that also uses a secondary + // sheet to display long or all day events. + // By default an dojox.calendar.ColumnViewSecondarySheet instance is created. + // Set the secondarySheetClass property to define the class to instantiate, + // for example to mix the default class with Mouse, Keyboard or Touch plugins. + + templateString: template, + + baseClass: "dojoxCalendarColumnView", + + // secondarySheetClass: Class + // The secondary sheet class, by default dojox.calendar.ColumnViewSecondarySheet. + secondarySheetClass: ColumnViewSecondarySheet, + + // secondarySheetProps: Object + // Secondary sheet constructor parameters. + secondarySheetProps: null, + + // headerPadding: Integer + // Padding between the header (composed of the secondary sheet and the column header) + // and the primary sheet. + headerPadding: 3, + + _showSecondarySheet: true, + + buildRendering: function(){ + this.inherited(arguments); + if(this.secondarySheetNode){ + var args = lang.mixin({owner: this}, this.secondarySheetProps); + this.secondarySheet = new this.secondarySheetClass(args, this.secondarySheetNode); + this.secondarySheetNode = this.secondarySheet.domNode; + } + }, + + destroy: function(preserveDom){ + if(this.secondarySheet){ + this.secondarySheet.destroy(preserveDom); + } + this.inherited(arguments); + }, + + _setVisibility: function(value){ + // tags: + // private + + this.inherited(arguments); + if(this.secondarySheet){ + this.secondarySheet._setVisibility(value); + } + }, + + + resize: function(changedSize){ + // tags: + // private + + this.inherited(arguments); + if(this.secondarySheet){ + // secondary sheet is sized by CSS + this.secondarySheet.resize(); + } + }, + + invalidateLayout: function(){ + // tags: + // private + + this._layoutRenderers(this.renderData); + if(this.secondarySheet){ + this.secondarySheet._layoutRenderers(this.secondarySheet.renderData); + } + }, + + onRowHeaderClick: function(e){ + // summary: + // Event dispatched when the row header cell of the secondary sheet is clicked. + // tags: + // callback + + }, + + _setSubColumnsAttr: function(value){ + var old = this.get("subColumns"); + if(old != value){ + this._secondaryHeightInvalidated = true; + } + this._set("subColumns", value); + }, + + refreshRendering: function(){ + this.inherited(arguments); + if(this._secondaryHeightInvalidated){ + this._secondaryHeightInvalidated = false; + var h = domGeometry.getMarginBox(this.secondarySheetNode).h; + this.resizeSecondarySheet(h); + } + }, + + resizeSecondarySheet: function(height){ + // summary: + // Resizes the secondary sheet header and relayout the other sub components according this new height. + // Warning: this method is only available for the default template and default CSS. + // height: Integer + // The new height in pixels. + if(this.secondarySheetNode){ + var headerH = domGeometry.getMarginBox(this.header).h; + domStyle.set(this.secondarySheetNode, "height", height+"px"); + this.secondarySheet._resizeHandler(null, true); + var top = (height + headerH + this.headerPadding); + if(this.subHeader && this.subColumns){ + domStyle.set(this.subHeader, "top", top+"px"); + top += domGeometry.getMarginBox(this.subHeader).h; + } + domStyle.set(this.scrollContainer, "top", top+"px"); + if(this.vScrollBar){ + domStyle.set(this.vScrollBar, "top", top+"px"); + } + } + }, + + updateRenderers: function(obj, stateOnly){ + this.inherited(arguments); + if(this.secondarySheet){ + this.secondarySheet.updateRenderers(obj, stateOnly); + } + }, + + _setItemsAttr: function(value){ + this.inherited(arguments); + if(this.secondarySheet){ + this.secondarySheet.set("items", value); + } + }, + + _setDecorationItemsAttr: function(value){ + this.inherited(arguments); + if(this.secondarySheet){ + this.secondarySheet.set("decorationItems", value); + } + }, + + _setStartDateAttr: function(value){ + this.inherited(arguments); + if(this.secondarySheet){ + this.secondarySheet.set("startDate", value); + } + }, + + _setColumnCountAttr: function(value){ + this.inherited(arguments); + if(this.secondarySheet){ + this.secondarySheet.set("columnCount", value); + } + }, + + _setHorizontalRendererAttr: function(value){ + if(this.secondarySheet){ + this.secondarySheet.set("horizontalRenderer", value); + } + }, + + _getHorizontalRendererAttr: function(){ + if(this.secondarySheet){ + return this.secondarySheet.get("horizontalRenderer"); + } + return null; + }, + + _setHorizontalDecorationRendererAttr: function(value){ + this.inherited(arguments); + if(this.secondarySheet){ + this.secondarySheet.set("horizontalDecorationRenderer", value); + } + }, + + _getHorizontalRendererAttr: function(){ + if(this.secondarySheet){ + return this.secondarySheet.get("horizontalDecorationRenderer"); + } + return null; + }, + + _setExpandRendererAttr: function(value){ + if(this.secondarySheet){ + this.secondarySheet.set("expandRenderer", value); + } + }, + + _getExpandRendererAttr: function(){ + if(this.secondarySheet){ + return this.secondarySheet.get("expandRenderer"); + } + return null; + }, + + _setTextDirAttr: function(value){ + this.secondarySheet.set("textDir", value); + this._set("textDir", value); + }, + + _defaultItemToRendererKindFunc: function(item){ + return item.allDay ? null : "vertical"; // String + }, + + getSecondarySheet: function(){ + // summary: + // Returns the secondary sheet + // returns: dojox/calendar/MatrixView + return this.secondarySheet; + }, + + _onGridTouchStart: function(e){ + this.inherited(arguments); + this._doEndItemEditing(this.secondarySheet, "touch"); + }, + + _onGridMouseDown: function(e){ + this.inherited(arguments); + this._doEndItemEditing(this.secondarySheet, "mouse"); + }, + + _configureScrollBar: function(renderData){ + + this.inherited(arguments); + if(this.secondarySheetNode){ + var atRight = this.isLeftToRight() ? true : this.scrollBarRTLPosition == "right"; + domStyle.set(this.secondarySheetNode, atRight ? "right" : "left", renderData.scrollbarWidth + "px"); + domStyle.set(this.secondarySheetNode, atRight ? "left" : "right", "0"); + + arr.forEach(this.secondarySheet._hScrollNodes, function(elt){ + domClass[renderData.hScrollBarEnabled ? "add" : "remove"](elt.parentNode, "dojoxCalendarHorizontalScroll"); + }, this); + } + }, + + _configureHScrollDomNodes: function(styleWidth){ + this.inherited(arguments); + if(this.secondarySheet && this.secondarySheet._configureHScrollDomNodes){ + this.secondarySheet._configureHScrollDomNodes(styleWidth); + } + }, + + _setHScrollPosition: function(pos){ + this.inherited(arguments); + if(this.secondarySheet){ + this.secondarySheet._setHScrollPosition(pos); + } + }, + + _refreshItemsRendering: function(){ + this.inherited(arguments); + if(this.secondarySheet){ + var rd = this.secondarySheet.renderData; + this.secondarySheet._computeVisibleItems(rd); + this.secondarySheet._layoutRenderers(rd); + } + }, + + _layoutRenderers: function(renderData){ + if(!this.secondarySheet._domReady){ + this.secondarySheet._domReady = true; + this.secondarySheet._layoutRenderers(this.secondarySheet.renderData); + } + + this.inherited(arguments); + }, + + _layoutDecorationRenderers: function(renderData){ + if(!this.secondarySheet._decDomReady){ + this.secondarySheet._decDomReady = true; + this.secondarySheet._layoutDecorationRenderers(this.secondarySheet.renderData); + } + + this.inherited(arguments); + }, + + invalidateRendering: function(){ + if(this.secondarySheet){ + this.secondarySheet.invalidateRendering(); + } + this.inherited(arguments); + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnViewSecondarySheet.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnViewSecondarySheet.js new file mode 100644 index 00000000..2a5afe6d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnViewSecondarySheet.js @@ -0,0 +1,65 @@ +//>>built +require({cache:{"url:dojox/calendar/templates/ColumnViewSecondarySheet.html":"
    \n\t
    \n\t\t
    \n\t
    \t\n\t
    \n\t\t
    \n\t
    \n\t
    \n\t\t
    \n\t
    \n
    \n"}}); +define("dojox/calendar/ColumnViewSecondarySheet",["dojo/_base/array","dojo/_base/declare","dojo/_base/event","dojo/_base/lang","dojo/dom-geometry","dojo/dom-style","dojox/calendar/MatrixView","dojo/text!./templates/ColumnViewSecondarySheet.html"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +return _2("dojox.calendar.ColumnViewSecondarySheet",_7,{templateString:_8,rowCount:1,cellPaddingTop:4,roundToDay:false,_defaultHeight:-1,layoutDuringResize:true,buildRendering:function(){ +this.inherited(arguments); +this._hScrollNodes=[this.gridTable,this.itemContainerTable]; +},_configureHScrollDomNodes:function(_9){ +_1.forEach(this._hScrollNodes,function(_a){ +_6.set(_a,"width",_9); +},this); +},_defaultItemToRendererKindFunc:function(_b){ +return _b.allDay?"horizontal":null; +},_formatGridCellLabel:function(){ +return null; +},_formatRowHeaderLabel:function(){ +return null; +},__fixEvt:function(e){ +e.sheet="secondary"; +e.source=this; +return e; +},_dispatchCalendarEvt:function(e,_c){ +e=this.inherited(arguments); +if(this.owner.owner){ +this.owner.owner[_c](e); +} +},_layoutExpandRenderers:function(_d,_e,_f){ +if(!this.expandRenderer||this._expandedRowCol==-1){ +return; +} +var h=_5.getMarginBox(this.domNode).h; +if(this._defaultHeight==-1||this._defaultHeight===0){ +this._defaultHeight=h; +} +if(this._defaultHeight!=h&&h>=this._getExpandedHeight()||this._expandedRowCol!==undefined&&this._expandedRowCol!==-1){ +var col=this._expandedRowCol; +if(col>=this.renderData.columnCount){ +col=0; +} +this._layoutExpandRendererImpl(0,col,null,true); +}else{ +this.inherited(arguments); +} +},expandRendererClickHandler:function(e,_10){ +_3.stop(e); +var h=_5.getMarginBox(this.domNode).h; +var _11=this._getExpandedHeight(); +if(this._defaultHeight==h||h<_11){ +this._expandedRowCol=_10.columnIndex; +this.owner.resizeSecondarySheet(_11); +}else{ +delete this._expandedRowCol; +this.owner.resizeSecondarySheet(this._defaultHeight); +} +},_getExpandedHeight:function(){ +return (this.naturalRowsHeight&&this.naturalRowsHeight.length>0?this.naturalRowsHeight[0]:0)+this.expandRendererHeight+this.verticalGap+this.verticalGap; +},_layoutRenderers:function(_12){ +if(!this._domReady){ +return; +} +this.inherited(arguments); +if(!_12.items||_12.items.length===0){ +this._layoutExpandRenderers(0,false,null); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnViewSecondarySheet.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnViewSecondarySheet.js.uncompressed.js new file mode 100644 index 00000000..7fff92de --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ColumnViewSecondarySheet.js.uncompressed.js @@ -0,0 +1,143 @@ +require({cache:{ +'url:dojox/calendar/templates/ColumnViewSecondarySheet.html':"
    \n\t
    \n\t\t
    \n\t
    \t\n\t
    \n\t\t
    \n\t
    \n\t
    \n\t\t
    \n\t
    \n
    \n"}}); +define("dojox/calendar/ColumnViewSecondarySheet", [ +"dojo/_base/array", +"dojo/_base/declare", +"dojo/_base/event", +"dojo/_base/lang", +"dojo/dom-geometry", +"dojo/dom-style", +"dojox/calendar/MatrixView", +"dojo/text!./templates/ColumnViewSecondarySheet.html"], + +function(arr, + declare, + event, + lang, + domGeometry, + domStyle, + MatrixView, + template){ + + return declare("dojox.calendar.ColumnViewSecondarySheet", MatrixView, { + + // summary: + // This class defines a matrix view designed to be embedded in a column view, + // usually to display long or all day events on one row. + + templateString: template, + + rowCount: 1, + + cellPaddingTop: 4, + + roundToDay: false, + + _defaultHeight: -1, + + layoutDuringResize: true, + + buildRendering: function(){ + this.inherited(arguments); + this._hScrollNodes = [this.gridTable, this.itemContainerTable]; + }, + + _configureHScrollDomNodes: function(styleWidth){ + arr.forEach(this._hScrollNodes, function(elt){ + domStyle.set(elt, "width", styleWidth); + }, this); + }, + + _defaultItemToRendererKindFunc: function(item){ + // tags: + // private + return item.allDay ? "horizontal" : null; + }, + + _formatGridCellLabel: function(){return null;}, + + _formatRowHeaderLabel: function(){return null;}, + + + // events redispatch + __fixEvt:function(e){ + e.sheet = "secondary"; + e.source = this; + return e; + }, + + _dispatchCalendarEvt: function(e, name){ + e = this.inherited(arguments); + if(this.owner.owner){ // the calendar + this.owner.owner[name](e); + } + }, + + _layoutExpandRenderers: function(index, hasHiddenItems, hiddenItems){ + if(!this.expandRenderer || this._expandedRowCol == -1){ + return; + } + var h = domGeometry.getMarginBox(this.domNode).h; + if(this._defaultHeight == -1 || // not set + this._defaultHeight === 0){ // initialized at 0, must be reset + this._defaultHeight = h; + } + + if(this._defaultHeight != h && h >= this._getExpandedHeight() || + this._expandedRowCol !== undefined && this._expandedRowCol !== -1){ + var col = this._expandedRowCol; + if(col >= this.renderData.columnCount){ + col = 0; + } + this._layoutExpandRendererImpl(0, col, null, true); + }else{ + this.inherited(arguments); + } + }, + + expandRendererClickHandler: function(e, renderer){ + // summary: + // Default action when an expand renderer is clicked. + // This method will expand the secondary sheet to show all the events. + // e: Event + // The mouse event. + // renderer: Object + // The renderer that was clicked. + // tags: + // callback + + event.stop(e); + + var h = domGeometry.getMarginBox(this.domNode).h; + var expandedH = this._getExpandedHeight(); + if(this._defaultHeight == h || h < expandedH){ + this._expandedRowCol = renderer.columnIndex; + this.owner.resizeSecondarySheet(expandedH); + }else{ + delete this._expandedRowCol; + this.owner.resizeSecondarySheet(this._defaultHeight); + } + }, + + + _getExpandedHeight: function(){ + // tags: + // private + + return (this.naturalRowsHeight && this.naturalRowsHeight.length > 0 ? this.naturalRowsHeight[0] : 0) + + this.expandRendererHeight + this.verticalGap + this.verticalGap; + }, + + _layoutRenderers: function(renderData){ + if(!this._domReady){ + return; + } + this.inherited(arguments); + // make sure to show the expand/collapse renderer if no item is displayed but the row was expanded. + if(!renderData.items || renderData.items.length === 0){ + this._layoutExpandRenderers(0, false, null); + } + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/DecorationRenderer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/DecorationRenderer.js new file mode 100644 index 00000000..49f405b5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/DecorationRenderer.js @@ -0,0 +1,31 @@ +//>>built +define("dojox/calendar/DecorationRenderer",["dojo/_base/declare","dojo/dom-class","dijit/_WidgetBase","dijit/_TemplatedMixin"],function(_1,_2,_3,_4,_5){ +return _1("dojox.calendar.DecorationRenderer",[_3,_4],{templateString:"
    ",_setItemAttr:function(_6){ +if(_6==null){ +if(this.item&&this.item.cssClass){ +_2.remove(this.domNode,this.item.cssClass); +} +this.item=null; +}else{ +if(this.item!=null){ +if(this.item.cssClass!=_6.cssClass){ +if(this.item.cssClass){ +_2.remove(this.domNode,this.item.cssClass); +} +} +this.item=lang.mixin(this.item,_6); +if(_6.cssClass){ +_2.add(this.domNode,_6.cssClass); +} +}else{ +this.item=_6; +if(_6.cssClass){ +_2.add(this.domNode,_6.cssClass); +} +} +} +},postCreate:function(){ +this.inherited(arguments); +this._applyAttributes(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/DecorationRenderer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/DecorationRenderer.js.uncompressed.js new file mode 100644 index 00000000..2f4b47b8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/DecorationRenderer.js.uncompressed.js @@ -0,0 +1,49 @@ +define("dojox/calendar/DecorationRenderer", [ + "dojo/_base/declare", + "dojo/dom-class", + "dijit/_WidgetBase", + "dijit/_TemplatedMixin"], + + function(declare, domClass, _WidgetBase, _TemplatedMixin, template){ + + return declare("dojox.calendar.DecorationRenderer", [_WidgetBase, _TemplatedMixin], { + + // summary: + // The default item vertical renderer. + + templateString: "
    ", + + _setItemAttr: function(value){ + if(value == null){ + if(this.item && this.item.cssClass){ + domClass.remove(this.domNode, this.item.cssClass); + } + this.item = null; + }else{ + if(this.item != null){ + if(this.item.cssClass != value.cssClass){ + if(this.item.cssClass){ + domClass.remove(this.domNode, this.item.cssClass); + } + } + this.item = lang.mixin(this.item, value); + if(value.cssClass){ + domClass.add(this.domNode, value.cssClass); + } + }else{ + this.item = value; + if(value.cssClass){ + domClass.add(this.domNode, value.cssClass); + } + } + } + }, + + postCreate: function() { + this.inherited(arguments); + this._applyAttributes(); + } + + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ExpandRenderer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ExpandRenderer.js new file mode 100644 index 00000000..3377bf14 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ExpandRenderer.js @@ -0,0 +1,46 @@ +//>>built +require({cache:{"url:dojox/calendar/templates/ExpandRenderer.html":"
    \n\t
    ▼▲
    \t\n
    \n"}}); +define("dojox/calendar/ExpandRenderer",["dojo/_base/declare","dojo/_base/lang","dojo/_base/event","dojo/_base/window","dojo/on","dojo/dom-class","dojo/dom-style","dijit/_WidgetBase","dijit/_TemplatedMixin","dojo/text!./templates/ExpandRenderer.html"],function(_1,_2,_3,_4,on,_5,_6,_7,_8,_9){ +return _1("dojox.calendar.ExpandRenderer",[_7,_8],{templateString:_9,baseClass:"dojoxCalendarExpand",owner:null,focused:false,up:false,down:false,date:null,items:null,rowIndex:-1,columnIndex:-1,_setExpandedAttr:function(_a){ +_6.set(this.expand,"display",_a?"none":"inline-block"); +_6.set(this.collapse,"display",_a?"inline-block":"none"); +this._set("expanded",_a); +},_setDownAttr:function(_b){ +this._setState("down",_b,"Down"); +},_setUpAttr:function(_c){ +this._setState("up",_c,"Up"); +},_setFocusedAttr:function(_d){ +this._setState("focused",_d,"Focused"); +},_setState:function(_e,_f,_10){ +if(this[_e]!=_f){ +var tn=this.stateNode||this.domNode; +_5[_f?"add":"remove"](tn,_10); +this._set(_e,_f); +} +},_onClick:function(e){ +if(this.owner&&this.owner.expandRendererClickHandler){ +this.owner.expandRendererClickHandler(e,this); +} +},_onMouseDown:function(e){ +_3.stop(e); +this.set("down",true); +},_onMouseUp:function(e){ +this.set("down",false); +},_onMouseOver:function(e){ +if(!this.up){ +var _11=e.button==1; +this.set("up",!_11); +this.set("down",_11); +} +},_onMouseOut:function(e){ +var _12=e.relatedTarget; +while(_12!=e.currentTarget&&_12!=_4.doc.body&&_12!=null){ +_12=_12.parentNode; +} +if(_12==e.currentTarget){ +return; +} +this.set("up",false); +this.set("down",false); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ExpandRenderer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ExpandRenderer.js.uncompressed.js new file mode 100644 index 00000000..440e9952 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ExpandRenderer.js.uncompressed.js @@ -0,0 +1,146 @@ +require({cache:{ +'url:dojox/calendar/templates/ExpandRenderer.html':"
    \n\t
    ▼▲
    \t\n
    \n"}}); +define("dojox/calendar/ExpandRenderer", [ +"dojo/_base/declare", +"dojo/_base/lang", +"dojo/_base/event", +"dojo/_base/window", +"dojo/on", +"dojo/dom-class", +"dojo/dom-style", +"dijit/_WidgetBase", +"dijit/_TemplatedMixin", +"dojo/text!./templates/ExpandRenderer.html"], + +function( +declare, +lang, +event, +win, +on, +domClass, +domStyle, +_WidgetBase, +_TemplatedMixin, +template){ + + return declare("dojox.calendar.ExpandRenderer", [_WidgetBase, _TemplatedMixin], { + + // summary: + // The default renderer display in MatrixView cells where some item renderers cannot be displayed because of size constraints. + + templateString: template, + + baseClass: "dojoxCalendarExpand", + + // owner: dojox/calendar/_ViewBase + // The view that contains this renderer. + owner: null, + + // focused: Boolean + // Indicates that the renderer is focused. + focused: false, + + // up: Boolean + // Indicates that the mouse cursor is over renderer. + up: false, + + // down: Boolean + // Indicates that the renderer is pressed. + down: false, + + // date: Date + // The date displayed by the cell where this renderer is used. + date: null, + + // items: Object[] + // List of items that are not displayed in the cell because of the size constraints. + items: null, + + // rowIndex: Integer + // Row index where this renderer is used. + rowIndex: -1, + + // columnIndex: Integer + // Column index where this renderer is used. + columnIndex: -1, + + _setExpandedAttr: function(value){ + domStyle.set(this.expand, "display", value ? "none" : "inline-block"); + domStyle.set(this.collapse, "display", value ? "inline-block" : "none"); + this._set("expanded", value); + }, + + _setDownAttr: function(value){ + this._setState("down", value, "Down"); + }, + + _setUpAttr: function(value){ + this._setState("up", value, "Up"); + }, + + _setFocusedAttr: function(value){ + this._setState("focused", value, "Focused"); + }, + + _setState: function(prop, value, cssClass){ + if (this[prop] != value){ + var tn = this.stateNode || this.domNode; + domClass[value ? "add" : "remove"](tn, cssClass); + this._set(prop, value); + } + }, + + _onClick: function(e){ + // tags: + // private + + if(this.owner && this.owner.expandRendererClickHandler){ + this.owner.expandRendererClickHandler(e, this); + } + }, + + _onMouseDown: function(e){ + // tags: + // private + + event.stop(e); + this.set("down", true); + }, + + _onMouseUp: function(e){ + // tags: + // private + + this.set("down", false); + }, + + _onMouseOver: function(e){ + // tags: + // private + + if(!this.up){ + var buttonDown = e.button == 1; + this.set("up", !buttonDown); + this.set("down", buttonDown); + } + }, + + _onMouseOut: function(e){ + // tags: + // private + + var node = e.relatedTarget; + while(node != e.currentTarget && node != win.doc.body && node != null){ + node = node.parentNode; + } + if(node == e.currentTarget){ + return; + } + this.set("up", false); + this.set("down", false); + } + + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/HorizontalRenderer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/HorizontalRenderer.js new file mode 100644 index 00000000..a6e146cb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/HorizontalRenderer.js @@ -0,0 +1,44 @@ +//>>built +require({cache:{"url:dojox/calendar/templates/HorizontalRenderer.html":"
    \n\t
    \n\t
    ◀
    \t\n\t
    \t\t\n\t\t\n\t\t\n\t\t\n\t
    \n\t
    ▶
    \n\t
    \n\t
    \n\t
    \t\n
    \n"}}); +define("dojox/calendar/HorizontalRenderer",["dojo/_base/declare","dojo/dom-style","dijit/_WidgetBase","dijit/_TemplatedMixin","dojox/calendar/_RendererMixin","dojo/text!./templates/HorizontalRenderer.html"],function(_1,_2,_3,_4,_5,_6){ +return _1("dojox.calendar.HorizontalRenderer",[_3,_4,_5],{templateString:_6,_orientation:"horizontal",visibilityLimits:{resizeStartHandle:50,resizeEndHandle:-1,summaryLabel:15,startTimeLabel:32,endTimeLabel:30},_displayValueMap:{"beforeIcon":"inline","afterIcon":"inline"},_displayValue:"inline",arrowPadding:12,_isElementVisible:function(_7,_8,_9,_a){ +var d; +var _b=this.isLeftToRight(); +if(_7=="startTimeLabel"){ +if(this.labelContainer&&(_b&&_9||!_b&&_8)){ +_2.set(this.labelContainer,"marginRight",this.arrowPadding+"px"); +}else{ +_2.set(this.labelContainer,"marginRight",0); +} +if(this.labelContainer&&(!_b&&_9||_b&&_8)){ +_2.set(this.labelContainer,"marginLeft",this.arrowPadding+"px"); +}else{ +_2.set(this.labelContainer,"marginLeft",0); +} +} +switch(_7){ +case "startTimeLabel": +d=this.item.startTime; +if(this.item.allDay||this.owner.isStartOfDay(d)){ +return false; +} +break; +case "endTimeLabel": +d=this.item.endTime; +if(this.item.allDay||this.owner.isStartOfDay(d)){ +return false; +} +break; +} +return this.inherited(arguments); +},getDisplayValue:function(_c){ +var _d=this._displayValueMap[_c]; +if(_d){ +return _d; +} +return this._displayValue; +},postCreate:function(){ +this.inherited(arguments); +this._applyAttributes(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/HorizontalRenderer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/HorizontalRenderer.js.uncompressed.js new file mode 100644 index 00000000..d6531bc6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/HorizontalRenderer.js.uncompressed.js @@ -0,0 +1,94 @@ +require({cache:{ +'url:dojox/calendar/templates/HorizontalRenderer.html':"
    \n\t
    \n\t
    ◀
    \t\n\t
    \t\t\n\t\t\n\t\t\n\t\t\n\t
    \n\t
    ▶
    \n\t
    \n\t
    \n\t
    \t\n
    \n"}}); +define("dojox/calendar/HorizontalRenderer", [ +"dojo/_base/declare", +"dojo/dom-style", +"dijit/_WidgetBase", +"dijit/_TemplatedMixin", +"dojox/calendar/_RendererMixin", +"dojo/text!./templates/HorizontalRenderer.html"], + +function( +declare, +domStyle, +_WidgetBase, +_TemplatedMixin, +_RendererMixin, +template){ + + return declare("dojox.calendar.HorizontalRenderer", [_WidgetBase, _TemplatedMixin, _RendererMixin], { + + // summary: + // The default item horizontal renderer. + + templateString: template, + + _orientation: "horizontal", + + visibilityLimits: { + resizeStartHandle: 50, + resizeEndHandle: -1, + summaryLabel: 15, + startTimeLabel: 32, + endTimeLabel: 30 + }, + + _displayValueMap: { + "beforeIcon": "inline", + "afterIcon": "inline" + }, + + _displayValue: "inline", + + // arrowPadding: Integer + // The padding size in pixels to apply to the label container on left and/or right side, to show the arrows correctly. + arrowPadding: 12, + + _isElementVisible: function(elt, startHidden, endHidden, size){ + var d; + var ltr = this.isLeftToRight(); + + if(elt == "startTimeLabel"){ + if(this.labelContainer && (ltr && endHidden || !ltr && startHidden)){ + domStyle.set(this.labelContainer, "marginRight", this.arrowPadding+"px"); + }else{ + domStyle.set(this.labelContainer, "marginRight", 0); + } + if(this.labelContainer && (!ltr && endHidden || ltr && startHidden)){ + domStyle.set(this.labelContainer, "marginLeft", this.arrowPadding+"px"); + }else{ + domStyle.set(this.labelContainer, "marginLeft", 0); + } + } + + switch(elt){ + case "startTimeLabel": + d = this.item.startTime; + if(this.item.allDay || this.owner.isStartOfDay(d)){ + return false; + } + break; + case "endTimeLabel": + d = this.item.endTime; + if(this.item.allDay || this.owner.isStartOfDay(d)){ + return false; + } + break; + } + return this.inherited(arguments); + }, + + getDisplayValue: function(part){ + var res = this._displayValueMap[part]; + if(res){ + return res; + } + return this._displayValue; + }, + + postCreate: function() { + this.inherited(arguments); + this._applyAttributes(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Keyboard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Keyboard.js new file mode 100644 index 00000000..9ac8cb0b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Keyboard.js @@ -0,0 +1,210 @@ +//>>built +define("dojox/calendar/Keyboard",["dojo/_base/array","dojo/_base/lang","dojo/_base/declare","dojo/on","dojo/_base/event","dojo/keys"],function(_1,_2,_3,on,_4,_5){ +return _3("dojox.calendar.Keyboard",null,{keyboardUpDownUnit:"minute",keyboardUpDownSteps:15,keyboardLeftRightUnit:"day",keyboardLeftRightSteps:1,allDayKeyboardUpDownUnit:"day",allDayKeyboardUpDownSteps:7,allDayKeyboardLeftRightUnit:"day",allDayKeyboardLeftRightSteps:1,postCreate:function(){ +this.inherited(arguments); +this._viewHandles.push(on(this.domNode,"keydown",_2.hitch(this,this._onKeyDown))); +},resizeModifier:"ctrl",maxScrollAnimationDuration:1000,tabIndex:"0",focusedItem:null,_isItemFocused:function(_6){ +return this.focusedItem!=null&&this.focusedItem.id==_6.id; +},_setFocusedItemAttr:function(_7){ +if(_7!=this.focusedItem){ +var _8=this.focusedItem; +this._set("focusedItem",_7); +this.updateRenderers([_8,this.focusedItem],true); +this.onFocusChange({oldValue:_8,newValue:_7}); +} +if(_7!=null){ +if(this.owner!=null&&this.owner.get("focusedItem")!=null){ +this.owner.set("focusedItem",null); +} +if(this._secondarySheet!=null&&this._secondarySheet.set("focusedItem")!=null){ +this._secondarySheet.set("focusedItem",null); +} +} +},onFocusChange:function(e){ +},showFocus:false,_focusNextItem:function(_9){ +if(!this.renderData||!this.renderData.items||this.renderData.items.length==0){ +return null; +} +var _a=-1; +var _b=this.renderData.items; +var _c=_b.length-1; +var _d=this.get("focusedItem"); +if(_d==null){ +_a=_9>0?0:_c; +}else{ +_1.some(_b,_2.hitch(this,function(_e,i){ +var _f=_e.id==_d.id; +if(_f){ +_a=i; +} +return _f; +})); +_a=this._focusNextItemImpl(_9,_a,_c); +} +var _10=false; +var old=-1; +while(old!=_a&&(!_10||_a!=0)){ +if(!_10&&_a==0){ +_10=true; +} +var _11=_b[_a]; +if(this.itemToRenderer[_11.id]!=null){ +this.set("focusedItem",_11); +return; +} +old=_a; +_a=this._focusNextItemImpl(_9,_a,_c); +} +},_focusNextItemImpl:function(dir,_12,max){ +if(_12==-1){ +_12=dir>0?0:max; +}else{ +if(_12==0&&dir==-1||_12==max&&dir==1){ +return _12; +} +_12=dir>0?++_12:--_12; +} +return _12; +},_handlePrevNextKeyCode:function(e,dir){ +if(!this.isLeftToRight()){ +dir=dir==1?-1:1; +} +this.showFocus=true; +this._focusNextItem(dir); +var _13=this.get("focusedItem"); +if(!e.ctrlKey&&_13){ +this.set("selectedItem",_13); +} +if(_13){ +this.ensureVisibility(_13.startTime,_13.endTime,"both",undefined,this.maxScrollAnimationDuration); +} +},_checkDir:function(dir,_14){ +return this.isLeftToRight()&&dir==_14||!this.isLeftToRight()&&dir==(_14=="left"?"right":"left"); +},_keyboardItemEditing:function(e,dir){ +_4.stop(e); +var p=this._edProps; +var _15,_16; +if(p.editedItem.allDay||this.roundToDay||p.rendererKind=="label"){ +_15=dir=="up"||dir=="down"?this.allDayKeyboardUpDownUnit:this.allDayKeyboardLeftRightUnit; +_16=dir=="up"||dir=="down"?this.allDayKeyboardUpDownSteps:this.allDayKeyboardLeftRightSteps; +}else{ +_15=dir=="up"||dir=="down"?this.keyboardUpDownUnit:this.keyboardLeftRightUnit; +_16=dir=="up"||dir=="down"?this.keyboardUpDownSteps:this.keyboardLeftRightSteps; +} +if(dir=="up"||this._checkDir(dir,"left")){ +_16=-_16; +} +var _17=e[this.resizeModifier+"Key"]?"resizeEnd":"move"; +var d=_17=="resizeEnd"?p.editedItem.endTime:p.editedItem.startTime; +var _18=d; +var _19=p.editedItem.subColumn; +if(_17=="move"&&this.subColumns&&this.subColumns.length>1){ +var idx=this.getSubColumnIndex(_19); +var _1a=true; +if(idx!=-1){ +if(this._checkDir(dir,"left")){ +if(idx==0){ +_19=this.subColumns[this.subColumns.length-1]; +}else{ +_1a=false; +_19=this.subColumns[idx-1]; +} +}else{ +if(this._checkDir(dir,"right")){ +if(idx==this.subColumns.length-1){ +_19=this.subColumns[0]; +}else{ +_1a=false; +_19=this.subColumns[idx+1]; +} +} +} +if(_1a){ +_18=this.renderData.dateModule.add(d,_15,_16); +} +} +}else{ +_18=this.renderData.dateModule.add(d,_15,_16); +} +this._startItemEditingGesture([d],_17,"keyboard",e); +this._moveOrResizeItemGesture([_18],"keyboard",e,_19); +this._endItemEditingGesture(_17,"keyboard",e,false); +if(_17=="move"){ +if(this.renderData.dateModule.compare(_18,d)==-1){ +this.ensureVisibility(p.editedItem.startTime,p.editedItem.endTime,"start"); +}else{ +this.ensureVisibility(p.editedItem.startTime,p.editedItem.endTime,"end"); +} +}else{ +this.ensureVisibility(p.editedItem.startTime,p.editedItem.endTime,"end"); +} +},_onKeyDown:function(e){ +var _1b=this.get("focusedItem"); +switch(e.keyCode){ +case _5.ESCAPE: +if(this._isEditing){ +if(this._editingGesture){ +this._endItemEditingGesture("keyboard",e,true); +} +this._endItemEditing("keyboard",true); +this._edProps=null; +} +break; +case _5.SPACE: +_4.stop(e); +if(_1b!=null){ +this.setItemSelected(_1b,e.ctrlKey?!this.isItemSelected(_1b):true); +} +break; +case _5.ENTER: +_4.stop(e); +if(_1b!=null){ +if(this._isEditing){ +this._endItemEditing("keyboard",false); +}else{ +var _1c=this.itemToRenderer[_1b.id]; +if(_1c&&_1c.length>0&&this.isItemEditable(_1b,_1c[0].kind)){ +this._edProps={renderer:_1c[0],rendererKind:_1c[0].kind,tempEditedItem:_1b,liveLayout:this.liveLayout}; +this.set("selectedItem",_1b); +this._startItemEditing(_1b,"keyboard"); +} +} +} +break; +case _5.LEFT_ARROW: +_4.stop(e); +if(this._isEditing){ +this._keyboardItemEditing(e,"left"); +}else{ +this._handlePrevNextKeyCode(e,-1); +} +break; +case _5.RIGHT_ARROW: +_4.stop(e); +if(this._isEditing){ +this._keyboardItemEditing(e,"right"); +}else{ +this._handlePrevNextKeyCode(e,1); +} +break; +case _5.UP_ARROW: +if(this._isEditing){ +this._keyboardItemEditing(e,"up"); +}else{ +if(this.scrollable){ +this.scrollView(-1); +} +} +break; +case _5.DOWN_ARROW: +if(this._isEditing){ +this._keyboardItemEditing(e,"down"); +}else{ +if(this.scrollable){ +this.scrollView(1); +} +} +break; +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Keyboard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Keyboard.js.uncompressed.js new file mode 100644 index 00000000..48b5bc7c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Keyboard.js.uncompressed.js @@ -0,0 +1,380 @@ +define("dojox/calendar/Keyboard", ["dojo/_base/array", "dojo/_base/lang", "dojo/_base/declare", "dojo/on", "dojo/_base/event", "dojo/keys"], + function(arr, lang, declare, on, event, keys){ + + return declare("dojox.calendar.Keyboard", null, { + + // summary: + // This mixin is managing the keyboard interactions on a calendar view. + + // keyboardUpDownUnit: String + // Unit used during editing of an event using the keyboard and the up or down keys were pressed. Valid values are "week", "day", "hours" "minute". + keyboardUpDownUnit: "minute", + + // keyboardUpDownSteps: Integer + // Steps used during editing of an event using the keyboard and the up or down keys were pressed. + keyboardUpDownSteps: 15, + + // keyboardLeftRightUnit: String + // Unit used during editing of an event using the keyboard and the left or right keys were pressed. Valid values are "week", "day", "hours" "minute". + keyboardLeftRightUnit: "day", + + // keyboardLeftRightSteps: Integer + // Unit used during editing of an event using the keyboard and the left or right keys were pressed. + keyboardLeftRightSteps: 1, + + // allDayKeyboardUpDownUnit: Integer + // Steps used during editing of an all day event using the keyboard and the up or down keys were pressed. + allDayKeyboardUpDownUnit: "day", + + // allDayKeyboardUpDownSteps: String + // Unit used during editing of an all day event using the keyboard and the up or down keys were pressed. Valid values are "week", "day", "hours" "minute". + allDayKeyboardUpDownSteps: 7, + + // allDayKeyboardLeftRightUnit: Integer + // Steps used during editing of an all day event using the keyboard and the up or down keys were pressed. + allDayKeyboardLeftRightUnit: "day", + + // allDayKeyboardLeftRightSteps: String + // Unit used during editing of an all day event using the keyboard and the left or right keys were pressed. Valid values are "week", "day", "hours" "minute". + allDayKeyboardLeftRightSteps: 1, + + postCreate: function(){ + this.inherited(arguments); + this._viewHandles.push(on(this.domNode, "keydown", lang.hitch(this, this._onKeyDown))); + }, + + // resizeModfier: String + // The modifier used to determine if the item is resized instead moved during the editing on an item. + resizeModifier: "ctrl", + + // maxScrollAnimationDuration: Number + // The duration in milliseconds to scroll the entire view. + // The scroll speed is constant when scrolling to show an item renderer. + maxScrollAnimationDuration: 1000, + + /////////////////////////////////////////////////////////////// + // + // Focus management + // + ////////////////////////////////////////////////////////////// + + // tabIndex: String + // Order fields are traversed when user hits the tab key + tabIndex: "0", + + // focusedItem: Object + // The data item that currently has the focus. + focusedItem: null, + + _isItemFocused: function(item){ + return this.focusedItem != null && this.focusedItem.id == item.id; + }, + + _setFocusedItemAttr: function(value){ + if(value != this.focusedItem){ + var old = this.focusedItem; + this._set("focusedItem", value); + this.updateRenderers([old, this.focusedItem], true); + this.onFocusChange({ + oldValue: old, + newValue: value + }); + } + if(value != null){ + if(this.owner != null && this.owner.get("focusedItem") != null){ + this.owner.set("focusedItem", null); + } + if(this._secondarySheet != null && this._secondarySheet.set("focusedItem") != null){ + this._secondarySheet.set("focusedItem", null); + } + } + }, + + onFocusChange: function(e){ + // summary: + // Event dispatched when the focus has changed. + // tags: + // callback + + }, + + // showFocus: Boolean + // Show or hide the focus graphic feedback on item renderers. + showFocus: false, + + _focusNextItem: function(dir){ + // summary: + // Moves the focus to the next item in the specified direction. + // If there is no current child focused, the first (dir == 1) or last (dir == -1) is focused. + // dir: Integer + // The direction of the next child to focus. + // + // - 1: Move focus to the next item in the list. + // - -1: Move focus to the previous item in the list. + + if(!this.renderData || !this.renderData.items || this.renderData.items.length == 0){ + return null; + } + + var index = -1; + var list = this.renderData.items; + var max = list.length - 1; + var focusedItem = this.get("focusedItem"); + + // find current index. + if(focusedItem == null){ + index = dir > 0 ? 0 : max; + }else{ + arr.some(list, lang.hitch(this, function(item, i){ + var found = item.id == focusedItem.id; + if(found){ + index = i; + } + return found; + })); + index = this._focusNextItemImpl(dir, index, max); + } + + // find the first item with renderers. + var reachedOnce = false; + var old = -1; + + while(old != index && (!reachedOnce || index != 0)){ + + if(!reachedOnce && index == 0){ + reachedOnce = true; + } + + var item = list[index]; + + if(this.itemToRenderer[item.id] != null){ + // found item + this.set("focusedItem", item); + return; + } + old = index; + index = this._focusNextItemImpl(dir, index, max); + + } + }, + + _focusNextItemImpl: function(dir, index, max){ + // tags: + // private + + if(index == -1){ // not found should not occur + index = dir > 0 ? 0 : max; + }else{ + if(index == 0 && dir == -1 || index == max && dir == 1){ + return index; + } + index = dir > 0 ? ++index : --index; + } + return index; + }, + + /////////////////////////////////////////////////////////// + // + // Keyboard + // + ////////////////////////////////////////////////////////// + + _handlePrevNextKeyCode: function(e, dir){ + // tags: + // private + + if(!this.isLeftToRight()){ + dir = dir == 1 ? -1 : 1; + } + this.showFocus = true; + this._focusNextItem(dir); + + var focusedItem = this.get("focusedItem"); + + if(!e.ctrlKey && focusedItem){ + this.set("selectedItem", focusedItem); + } + + if(focusedItem){ + this.ensureVisibility(focusedItem.startTime, focusedItem.endTime, "both", undefined, this.maxScrollAnimationDuration); + } + }, + + _checkDir: function(dir, value){ + return this.isLeftToRight() && dir == value || !this.isLeftToRight() && dir == (value=="left"?"right":"left"); + }, + + _keyboardItemEditing: function(e, dir){ + // tags: + // private + + event.stop(e); + + var p = this._edProps; + + var unit, steps; + + if(p.editedItem.allDay || this.roundToDay || p.rendererKind == "label"){ + unit = dir == "up" || dir == "down" ? this.allDayKeyboardUpDownUnit : this.allDayKeyboardLeftRightUnit; + steps = dir == "up" || dir == "down" ? this.allDayKeyboardUpDownSteps : this.allDayKeyboardLeftRightSteps; + }else{ + unit = dir == "up" || dir == "down" ? this.keyboardUpDownUnit : this.keyboardLeftRightUnit; + steps = dir == "up" || dir == "down" ? this.keyboardUpDownSteps : this.keyboardLeftRightSteps; + } + + if(dir == "up" || this._checkDir(dir, "left")){ + steps = -steps; + } + + var editKind = e[this.resizeModifier+"Key"] ? "resizeEnd" : "move"; + + var d = editKind == "resizeEnd" ? p.editedItem.endTime : p.editedItem.startTime; + + var newTime = d; + var subColumn = p.editedItem.subColumn; + + if(editKind == "move" && this.subColumns && this.subColumns.length > 1){ + var idx = this.getSubColumnIndex(subColumn); + var updateTime = true; + if(idx != -1){ + if(this._checkDir(dir, "left")){ + if(idx == 0){ + subColumn = this.subColumns[this.subColumns.length-1]; + }else{ + updateTime = false; + subColumn = this.subColumns[idx-1]; + } + }else if(this._checkDir(dir, "right")){ + if(idx == this.subColumns.length-1){ + subColumn = this.subColumns[0]; + }else{ + updateTime = false; + subColumn = this.subColumns[idx+1]; + } + } + if(updateTime){ + newTime = this.renderData.dateModule.add(d, unit, steps); + } + } + }else{ + newTime = this.renderData.dateModule.add(d, unit, steps); + } + + this._startItemEditingGesture([d], editKind, "keyboard", e); + this._moveOrResizeItemGesture([newTime], "keyboard", e, subColumn); + this._endItemEditingGesture(editKind, "keyboard", e, false); + + if(editKind == "move"){ + if(this.renderData.dateModule.compare(newTime, d) == -1){ + this.ensureVisibility(p.editedItem.startTime, p.editedItem.endTime, "start"); + }else{ + this.ensureVisibility(p.editedItem.startTime, p.editedItem.endTime, "end"); + } + }else{ // resize end only + this.ensureVisibility(p.editedItem.startTime, p.editedItem.endTime, "end"); + } + }, + + _onKeyDown: function(e){ + // tags: + // private + + var focusedItem = this.get("focusedItem"); + + switch(e.keyCode){ + + case keys.ESCAPE: + + if(this._isEditing){ + + if(this._editingGesture){ + this._endItemEditingGesture("keyboard", e, true); + } + + this._endItemEditing("keyboard", true); + + this._edProps = null; + } + break; + + case keys.SPACE: + + event.stop(e); // prevent browser shortcut + + if(focusedItem != null){ + this.setItemSelected(focusedItem, e.ctrlKey ? !this.isItemSelected(focusedItem) : true); + } + break; + + case keys.ENTER: + + event.stop(e); // prevent browser shortcut + + if(focusedItem != null){ + + if(this._isEditing){ + this._endItemEditing("keyboard", false); + }else{ + + var renderers = this.itemToRenderer[focusedItem.id]; + + if(renderers && renderers.length > 0 && this.isItemEditable(focusedItem, renderers[0].kind)){ + + this._edProps = { + renderer: renderers[0], + rendererKind: renderers[0].kind, + tempEditedItem: focusedItem, + liveLayout: this.liveLayout + }; + + this.set("selectedItem", focusedItem); + + this._startItemEditing(focusedItem, "keyboard"); + } + } + } + break; + + case keys.LEFT_ARROW: + + event.stop(e); // prevent browser shortcut + + if(this._isEditing){ + this._keyboardItemEditing(e, "left"); + }else{ + this._handlePrevNextKeyCode(e, -1); + } + break; + + case keys.RIGHT_ARROW: + + event.stop(e); // prevent browser shortcut + + if(this._isEditing){ + this._keyboardItemEditing(e, "right"); + }else{ + this._handlePrevNextKeyCode(e, 1); + } + break; + + case keys.UP_ARROW: + if(this._isEditing){ + this._keyboardItemEditing(e, "up"); + }else if(this.scrollable){ + this.scrollView(-1); + } + break; + + case keys.DOWN_ARROW: + if(this._isEditing){ + this._keyboardItemEditing(e, "down"); + }else if(this.scrollable){ + this.scrollView(1); + } + break; + + } + + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/LICENSE b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/LICENSE new file mode 100644 index 00000000..b064ab1b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/LICENSE @@ -0,0 +1,195 @@ +Dojo is available under *either* the terms of the modified BSD license *or* the +Academic Free License version 2.1. As a recipient of Dojo, you may choose which +license to receive this code under (except as noted in per-module LICENSE +files). Some modules may not be the copyright of the Dojo Foundation. These +modules contain explicit declarations of copyright in both the LICENSE files in +the directories in which they reside and in the code itself. No external +contributions are allowed under licenses which are fundamentally incompatible +with the AFL or BSD licenses that Dojo is distributed under. + +The text of the AFL and BSD licenses is reproduced below. + +------------------------------------------------------------------------------- +The "New" BSD License: +********************** + +Copyright (c) 2005-2013, The Dojo Foundation +All rights reserved. + +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. + * Neither the name of the Dojo Foundation nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 THE COPYRIGHT OWNER OR 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. + +------------------------------------------------------------------------------- +The Academic Free License, v. 2.1: +********************************** + +This Academic Free License (the "License") applies to any original work of +authorship (the "Original Work") whose owner (the "Licensor") has placed the +following notice immediately following the copyright notice for the Original +Work: + +Licensed under the Academic Free License version 2.1 + +1) Grant of Copyright License. Licensor hereby grants You a world-wide, +royalty-free, non-exclusive, perpetual, sublicenseable license to do the +following: + +a) to reproduce the Original Work in copies; + +b) to prepare derivative works ("Derivative Works") based upon the Original +Work; + +c) to distribute copies of the Original Work and Derivative Works to the +public; + +d) to perform the Original Work publicly; and + +e) to display the Original Work publicly. + +2) Grant of Patent License. Licensor hereby grants You a world-wide, +royalty-free, non-exclusive, perpetual, sublicenseable license, under patent +claims owned or controlled by the Licensor that are embodied in the Original +Work as furnished by the Licensor, to make, use, sell and offer for sale the +Original Work and Derivative Works. + +3) Grant of Source Code License. The term "Source Code" means the preferred +form of the Original Work for making modifications to it and all available +documentation describing how to modify the Original Work. Licensor hereby +agrees to provide a machine-readable copy of the Source Code of the Original +Work along with each copy of the Original Work that Licensor distributes. +Licensor reserves the right to satisfy this obligation by placing a +machine-readable copy of the Source Code in an information repository +reasonably calculated to permit inexpensive and convenient access by You for as +long as Licensor continues to distribute the Original Work, and by publishing +the address of that information repository in a notice immediately following +the copyright notice that applies to the Original Work. + +4) Exclusions From License Grant. Neither the names of Licensor, nor the names +of any contributors to the Original Work, nor any of their trademarks or +service marks, may be used to endorse or promote products derived from this +Original Work without express prior written permission of the Licensor. Nothing +in this License shall be deemed to grant any rights to trademarks, copyrights, +patents, trade secrets or any other intellectual property of Licensor except as +expressly stated herein. No patent license is granted to make, use, sell or +offer to sell embodiments of any patent claims other than the licensed claims +defined in Section 2. No right is granted to the trademarks of Licensor even if +such marks are included in the Original Work. Nothing in this License shall be +interpreted to prohibit Licensor from licensing under different terms from this +License any Original Work that Licensor otherwise would have a right to +license. + +5) This section intentionally omitted. + +6) Attribution Rights. You must retain, in the Source Code of any Derivative +Works that You create, all copyright, patent or trademark notices from the +Source Code of the Original Work, as well as any notices of licensing and any +descriptive text identified therein as an "Attribution Notice." You must cause +the Source Code for any Derivative Works that You create to carry a prominent +Attribution Notice reasonably calculated to inform recipients that You have +modified the Original Work. + +7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that +the copyright in and to the Original Work and the patent rights granted herein +by Licensor are owned by the Licensor or are sublicensed to You under the terms +of this License with the permission of the contributor(s) of those copyrights +and patent rights. Except as expressly stated in the immediately proceeding +sentence, the Original Work is provided under this License on an "AS IS" BASIS +and WITHOUT WARRANTY, either express or implied, including, without limitation, +the warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. +This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No +license to Original Work is granted hereunder except under this disclaimer. + +8) Limitation of Liability. Under no circumstances and under no legal theory, +whether in tort (including negligence), contract, or otherwise, shall the +Licensor be liable to any person for any direct, indirect, special, incidental, +or consequential damages of any character arising as a result of this License +or the use of the Original Work including, without limitation, damages for loss +of goodwill, work stoppage, computer failure or malfunction, or any and all +other commercial damages or losses. This limitation of liability shall not +apply to liability for death or personal injury resulting from Licensor's +negligence to the extent applicable law prohibits such limitation. Some +jurisdictions do not allow the exclusion or limitation of incidental or +consequential damages, so this exclusion and limitation may not apply to You. + +9) Acceptance and Termination. If You distribute copies of the Original Work or +a Derivative Work, You must make a reasonable effort under the circumstances to +obtain the express assent of recipients to the terms of this License. Nothing +else but this License (or another written agreement between Licensor and You) +grants You permission to create Derivative Works based upon the Original Work +or to exercise any of the rights granted in Section 1 herein, and any attempt +to do so except under the terms of this License (or another written agreement +between Licensor and You) is expressly prohibited by U.S. copyright law, the +equivalent laws of other countries, and by international treaty. Therefore, by +exercising any of the rights granted to You in Section 1 herein, You indicate +Your acceptance of this License and all of its terms and conditions. + +10) Termination for Patent Action. This License shall terminate automatically +and You may no longer exercise any of the rights granted to You by this License +as of the date You commence an action, including a cross-claim or counterclaim, +against Licensor or any licensee alleging that the Original Work infringes a +patent. This termination provision shall not apply for an action alleging +patent infringement by combinations of the Original Work with other software or +hardware. + +11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this +License may be brought only in the courts of a jurisdiction wherein the +Licensor resides or in which Licensor conducts its primary business, and under +the laws of that jurisdiction excluding its conflict-of-law provisions. The +application of the United Nations Convention on Contracts for the International +Sale of Goods is expressly excluded. Any use of the Original Work outside the +scope of this License or after its termination shall be subject to the +requirements and penalties of the U.S. Copyright Act, 17 U.S.C. � 101 et +seq., the equivalent laws of other countries, and international treaty. This +section shall survive the termination of this License. + +12) Attorneys Fees. In any action to enforce the terms of this License or +seeking damages relating thereto, the prevailing party shall be entitled to +recover its costs and expenses, including, without limitation, reasonable +attorneys' fees and costs incurred in connection with such action, including +any appeal of such action. This section shall survive the termination of this +License. + +13) Miscellaneous. This License represents the complete agreement concerning +the subject matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent necessary to +make it enforceable. + +14) Definition of "You" in This License. "You" throughout this License, whether +in upper or lower case, means an individual or a legal entity exercising rights +under, and complying with all of the terms of, this License. For legal +entities, "You" includes any entity that controls, is controlled by, or is +under common control with you. For purposes of this definition, "control" means +(i) the power, direct or indirect, to cause the direction or management of such +entity, whether by contract or otherwise, or (ii) ownership of fifty percent +(50%) or more of the outstanding shares, or (iii) beneficial ownership of such +entity. + +15) Right to Use. You may use the Original Work in all ways not otherwise +restricted or conditioned by this License or by law, and Licensor promises not +to interfere with or be responsible for such uses by You. + +This license is Copyright (C) 2003-2004 Lawrence E. Rosen. All rights reserved. +Permission is hereby granted to copy and distribute this license without +modification. This license may not be modified without the express written +permission of its copyright owner. \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/LabelRenderer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/LabelRenderer.js new file mode 100644 index 00000000..70cc140d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/LabelRenderer.js @@ -0,0 +1,17 @@ +//>>built +require({cache:{"url:dojox/calendar/templates/LabelRenderer.html":"
    \t\n\t
    \n\t\t\n\t\t\n\t\t\n\t
    \t\n\t
    \n
    \n"}}); +define("dojox/calendar/LabelRenderer",["dojo/_base/declare","dijit/_WidgetBase","dijit/_TemplatedMixin","dojox/calendar/_RendererMixin","dojo/text!./templates/LabelRenderer.html"],function(_1,_2,_3,_4,_5){ +return _1("dojox.calendar.LabelRenderer",[_2,_3,_4],{templateString:_5,_orientation:"horizontal",resizeEnabled:false,visibilityLimits:{resizeStartHandle:50,resizeEndHandle:-1,summaryLabel:15,startTimeLabel:45,endTimeLabel:30},_isElementVisible:function(_6,_7,_8,_9){ +switch(_6){ +case "startTimeLabel": +if(this.item.allDay&&this.item.range[0].getTime()!==this.item.startTime.getTime()){ +return false; +} +break; +} +return this.inherited(arguments); +},_displayValue:"inline",postCreate:function(){ +this.inherited(arguments); +this._applyAttributes(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/LabelRenderer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/LabelRenderer.js.uncompressed.js new file mode 100644 index 00000000..17958b1e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/LabelRenderer.js.uncompressed.js @@ -0,0 +1,46 @@ +require({cache:{ +'url:dojox/calendar/templates/LabelRenderer.html':"
    \t\n\t
    \n\t\t\n\t\t\n\t\t\n\t
    \t\n\t
    \n
    \n"}}); +define("dojox/calendar/LabelRenderer", ["dojo/_base/declare", "dijit/_WidgetBase", "dijit/_TemplatedMixin", + "dojox/calendar/_RendererMixin", "dojo/text!./templates/LabelRenderer.html"], + + function(declare, _WidgetBase, _TemplatedMixin, _RendererMixin, template){ + + return declare("dojox.calendar.LabelRenderer", [_WidgetBase, _TemplatedMixin, _RendererMixin], { + + // summary: + // The default item label renderer. + + templateString: template, + + _orientation: "horizontal", + + resizeEnabled: false, + + visibilityLimits: { + resizeStartHandle: 50, + resizeEndHandle: -1, + summaryLabel: 15, + startTimeLabel: 45, + endTimeLabel: 30 + }, + + _isElementVisible: function(elt, startHidden, endHidden, size){ + switch(elt){ + case "startTimeLabel": + // hide hour part of all day events on subsequent days + if(this.item.allDay && this.item.range[0].getTime() !== this.item.startTime.getTime()){ + return false; + } + break; + } + return this.inherited(arguments); + }, + + _displayValue: "inline", + + postCreate: function() { + this.inherited(arguments); + this._applyAttributes(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MatrixView.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MatrixView.js new file mode 100644 index 00000000..69c3b8d5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MatrixView.js @@ -0,0 +1,1258 @@ +//>>built +require({cache:{"url:dojox/calendar/templates/MatrixView.html":"
    \n\t
    \n\t\t
    \t\t\n\t
    \t\n\t
    \n\t\t
    \n\t
    \t\t\n\t
    \n\t\t
    \n\t
    \t\n\t
    \n\t\t
    \n\t
    \t\n\t
    \n\t\t
    \n\t
    \t\n
    \n"}}); +define("dojox/calendar/MatrixView",["dojo/_base/declare","dojo/_base/array","dojo/_base/event","dojo/_base/lang","dojo/_base/sniff","dojo/_base/fx","dojo/_base/html","dojo/on","dojo/dom","dojo/dom-class","dojo/dom-style","dojo/dom-geometry","dojo/dom-construct","dojo/query","dojox/html/metrics","dojo/i18n","./ViewBase","dojo/text!./templates/MatrixView.html","dijit/_TemplatedMixin"],function(_1,_2,_3,_4,_5,fx,_6,on,_7,_8,_9,_a,_b,_c,_d,_e,_f,_10,_11){ +return _1("dojox.calendar.MatrixView",[_f,_11],{templateString:_10,baseClass:"dojoxCalendarMatrixView",_setTabIndexAttr:"domNode",viewKind:"matrix",renderData:null,startDate:null,refStartTime:null,refEndTime:null,columnCount:7,rowCount:5,horizontalRenderer:null,labelRenderer:null,expandRenderer:null,horizontalDecorationRenderer:null,percentOverlap:0,verticalGap:2,horizontalRendererHeight:17,labelRendererHeight:14,expandRendererHeight:15,cellPaddingTop:16,expandDuration:300,expandEasing:null,layoutDuringResize:false,roundToDay:true,showCellLabel:true,scrollable:false,resizeCursor:"e-resize",constructor:function(){ +this.invalidatingProperties=["columnCount","rowCount","startDate","horizontalRenderer","horizontalDecaorationRenderer","labelRenderer","expandRenderer","rowHeaderDatePattern","columnHeaderLabelLength","cellHeaderShortPattern","cellHeaderLongPattern","percentOverlap","verticalGap","horizontalRendererHeight","labelRendererHeight","expandRendererHeight","cellPaddingTop","roundToDay","itemToRendererKindFunc","layoutPriorityFunction","formatItemTimeFunc","textDir","items"]; +this._ddRendererList=[]; +this._ddRendererPool=[]; +this._rowHeaderHandles=[]; +},destroy:function(_12){ +this._cleanupRowHeader(); +this.inherited(arguments); +},postCreate:function(){ +this.inherited(arguments); +this._initialized=true; +if(!this.invalidRendering){ +this.refreshRendering(); +} +},_createRenderData:function(){ +var rd={}; +rd.dateLocaleModule=this.dateLocaleModule; +rd.dateClassObj=this.dateClassObj; +rd.dateModule=this.dateModule; +rd.dates=[]; +rd.columnCount=this.get("columnCount"); +rd.rowCount=this.get("rowCount"); +rd.sheetHeight=this.itemContainer.offsetHeight; +this._computeRowsHeight(rd); +var d=this.get("startDate"); +if(d==null){ +d=new rd.dateClassObj(); +} +d=this.floorToDay(d,false,rd); +this.startDate=d; +for(var row=0;row100){ +this.percentOverlap=0; +} +if(isNaN(this.verticalGap)||this.verticalGap<0){ +this.verticalGap=2; +} +if(isNaN(this.horizontalRendererHeight)||this.horizontalRendererHeight<1){ +this.horizontalRendererHeight=17; +} +if(isNaN(this.labelRendererHeight)||this.labelRendererHeight<1){ +this.labelRendererHeight=14; +} +if(isNaN(this.expandRendererHeight)||this.expandRendererHeight<1){ +this.expandRendererHeight=15; +} +},_setStartDateAttr:function(_13){ +this.displayedItemsInvalidated=true; +this._set("startDate",_13); +},_setColumnCountAttr:function(_14){ +this.displayedItemsInvalidated=true; +this._set("columnCount",_14); +},_setRowCountAttr:function(_15){ +this.displayedItemsInvalidated=true; +this._set("rowCount",_15); +},__fixEvt:function(e){ +e.sheet="primary"; +e.source=this; +return e; +},_formatRowHeaderLabel:function(d){ +if(this.rowHeaderDatePattern){ +return this.renderData.dateLocaleModule.format(d,{selector:"date",datePattern:this.rowHeaderDatePattern}); +}else{ +return this.getWeekNumberLabel(d); +} +},_formatColumnHeaderLabel:function(d){ +return this.renderData.dateLocaleModule.getNames("days",this.columnHeaderLabelLength?this.columnHeaderLabelLength:"wide","standAlone")[d.getDay()]; +},cellHeaderShortPattern:null,cellHeaderLongPattern:null,_formatGridCellLabel:function(d,row,col){ +var _16=row==0&&col==0||d.getDate()==1; +var _17,rb; +if(_16){ +if(this.cellHeaderLongPattern){ +_17=this.cellHeaderLongPattern; +}else{ +rb=_e.getLocalization("dojo.cldr",this._calendar); +_17=rb["dateFormatItem-MMMd"]; +} +}else{ +if(this.cellHeaderShortPattern){ +_17=this.cellHeaderShortPattern; +}else{ +rb=_e.getLocalization("dojo.cldr",this._calendar); +_17=rb["dateFormatItem-d"]; +} +} +return this.renderData.dateLocaleModule.format(d,{selector:"date",datePattern:_17}); +},refreshRendering:function(){ +this.inherited(arguments); +if(!this.domNode){ +return; +} +this._validateProperties(); +var _18=this.renderData; +var rd=this.renderData=this._createRenderData(); +this._createRendering(rd,_18); +this._layoutDecorationRenderers(rd); +this._layoutRenderers(rd); +},_createRendering:function(_19,_1a){ +if(_19.rowHeight<=0){ +_19.columnCount=1; +_19.rowCount=1; +_19.invalidRowHeight=true; +return; +} +if(_1a){ +if(this.itemContainerTable){ +var _1b=_c(".dojoxCalendarItemContainerRow",this.itemContainerTable); +_1a.rowCount=_1b.length; +} +} +this._buildColumnHeader(_19,_1a); +this._buildRowHeader(_19,_1a); +this._buildGrid(_19,_1a); +this._buildItemContainer(_19,_1a); +if(this.buttonContainer&&this.owner!=null&&this.owner.currentView==this){ +_9.set(this.buttonContainer,{"right":0,"left":0}); +} +},_buildColumnHeader:function(_1c,_1d){ +var _1e=this.columnHeaderTable; +if(!_1e){ +return; +} +var _1f=_1c.columnCount-(_1d?_1d.columnCount:0); +if(_5("ie")==8){ +if(this._colTableSave==null){ +this._colTableSave=_4.clone(_1e); +}else{ +if(_1f<0){ +this.columnHeader.removeChild(_1e); +_b.destroy(_1e); +_1e=_4.clone(this._colTableSave); +this.columnHeaderTable=_1e; +this.columnHeader.appendChild(_1e); +_1f=_1c.columnCount; +} +} +} +var _20=_c("tbody",_1e); +var trs=_c("tr",_1e); +var _21,tr,td; +if(_20.length==1){ +_21=_20[0]; +}else{ +_21=_6.create("tbody",null,_1e); +} +if(trs.length==1){ +tr=trs[0]; +}else{ +tr=_b.create("tr",null,_21); +} +if(_1f>0){ +for(var i=0;i<_1f;i++){ +td=_b.create("td",null,tr); +} +}else{ +_1f=-_1f; +for(var i=0;i<_1f;i++){ +tr.removeChild(tr.lastChild); +} +} +_c("td",_1e).forEach(function(td,i){ +td.className=""; +var d=_1c.dates[0][i]; +this._setText(td,this._formatColumnHeaderLabel(d)); +if(i==0){ +_8.add(td,"first-child"); +}else{ +if(i==this.renderData.columnCount-1){ +_8.add(td,"last-child"); +} +} +this.styleColumnHeaderCell(td,d,_1c); +},this); +if(this.yearColumnHeaderContent){ +var d=_1c.dates[0][0]; +this._setText(this.yearColumnHeaderContent,_1c.dateLocaleModule.format(d,{selector:"date",datePattern:"yyyy"})); +} +},styleColumnHeaderCell:function(_22,_23,_24){ +_8.add(_22,this._cssDays[_23.getDay()]); +if(this.isWeekEnd(_23)){ +_8.add(_22,"dojoxCalendarWeekend"); +} +},_rowHeaderHandles:null,_cleanupRowHeader:function(){ +while(this._rowHeaderHandles.length>0){ +var _25=this._rowHeaderHandles.pop(); +while(_25.length>0){ +_25.pop().remove(); +} +} +},_rowHeaderClick:function(e){ +var _26=_c("td",this.rowHeaderTable).indexOf(e.currentTarget); +this._onRowHeaderClick({index:_26,date:this.renderData.dates[_26][0],triggerEvent:e}); +},_buildRowHeader:function(_27,_28){ +var _29=this.rowHeaderTable; +if(!_29){ +return; +} +var _2a=_c("tbody",_29); +var _2b,tr,td; +if(_2a.length==1){ +_2b=_2a[0]; +}else{ +_2b=_b.create("tbody",null,_29); +} +var _2c=_27.rowCount-(_28?_28.rowCount:0); +if(_2c>0){ +for(var i=0;i<_2c;i++){ +tr=_b.create("tr",null,_2b); +td=_b.create("td",null,tr); +var h=[]; +h.push(on(td,"click",_4.hitch(this,this._rowHeaderClick))); +if(!_5("touch")){ +h.push(on(td,"mousedown",function(e){ +_8.add(e.currentTarget,"Active"); +})); +h.push(on(td,"mouseup",function(e){ +_8.remove(e.currentTarget,"Active"); +})); +h.push(on(td,"mouseover",function(e){ +_8.add(e.currentTarget,"Hover"); +})); +h.push(on(td,"mouseout",function(e){ +_8.remove(e.currentTarget,"Hover"); +})); +} +this._rowHeaderHandles.push(h); +} +}else{ +_2c=-_2c; +for(var i=0;i<_2c;i++){ +_2b.removeChild(_2b.lastChild); +var _2d=this._rowHeaderHandles.pop(); +while(_2d.length>0){ +_2d.pop().remove(); +} +} +} +_c("tr",_29).forEach(function(tr,i){ +_9.set(tr,"height",this._getRowHeight(i)+"px"); +var d=_27.dates[i][0]; +var td=_c("td",tr)[0]; +td.className=""; +if(i==0){ +_8.add(td,"first-child"); +} +if(i==this.renderData.rowCount-1){ +_8.add(td,"last-child"); +} +this.styleRowHeaderCell(td,d,_27); +this._setText(td,this._formatRowHeaderLabel(d)); +},this); +},styleRowHeaderCell:function(_2e,_2f,_30){ +},_buildGrid:function(_31,_32){ +var _33=this.gridTable; +if(!_33){ +return; +} +var _34=_c("tr",_33); +var _35=_31.rowCount-_34.length; +var _36=_35>0; +var _37=_31.columnCount-(_34?_c("td",_34[0]).length:0); +if(_5("ie")==8){ +if(this._gridTableSave==null){ +this._gridTableSave=_4.clone(_33); +}else{ +if(_37<0){ +this.grid.removeChild(_33); +_b.destroy(_33); +_33=_4.clone(this._gridTableSave); +this.gridTable=_33; +this.grid.appendChild(_33); +_37=_31.columnCount; +_35=_31.rowCount; +_36=true; +} +} +} +var _38=_c("tbody",_33); +var _39; +if(_38.length==1){ +_39=_38[0]; +}else{ +_39=_b.create("tbody",null,_33); +} +if(_36){ +for(var i=0;i<_35;i++){ +_b.create("tr",null,_39); +} +}else{ +_35=-_35; +for(var i=0;i<_35;i++){ +_39.removeChild(_39.lastChild); +} +} +var _3a=_31.rowCount-_35; +var _3b=_36||_37>0; +_37=_3b?_37:-_37; +_c("tr",_33).forEach(function(tr,i){ +if(_3b){ +var len=i>=_3a?_31.columnCount:_37; +for(var i=0;i=0||cal.compare(cal.add(_3e,"day",1),this.refStartTime)<=0)){ +_8.add(_3d,"dojoxCalendarDayDisabled"); +}else{ +if(this.isWeekEnd(_3e)){ +_8.add(_3d,"dojoxCalendarWeekend"); +} +} +} +},styleGridCell:function(_40,_41,_42){ +if(this.styleGridCellFunc){ +this.styleGridCellFunc(_40,_41,_42); +}else{ +this.defaultStyleGridCell(_40,_41,_42); +} +},_buildItemContainer:function(_43,_44){ +var _45=this.itemContainerTable; +if(!_45){ +return; +} +var _46=[]; +var _47=_43.rowCount-(_44?_44.rowCount:0); +if(_5("ie")==8){ +if(this._itemTableSave==null){ +this._itemTableSave=_4.clone(_45); +}else{ +if(_47<0){ +this.itemContainer.removeChild(_45); +this._recycleItemRenderers(true); +this._recycleExpandRenderers(true); +_b.destroy(_45); +_45=_4.clone(this._itemTableSave); +this.itemContainerTable=_45; +this.itemContainer.appendChild(_45); +_47=_43.columnCount; +} +} +} +var _48=_c("tbody",_45); +var _49,tr,td,div; +if(_48.length==1){ +_49=_48[0]; +}else{ +_49=_b.create("tbody",null,_45); +} +if(_47>0){ +for(var i=0;i<_47;i++){ +tr=_b.create("tr",null,_49); +_8.add(tr,"dojoxCalendarItemContainerRow"); +td=_b.create("td",null,tr); +div=_b.create("div",null,td); +_8.add(div,"dojoxCalendarContainerRow"); +} +}else{ +_47=-_47; +for(var i=0;i<_47;i++){ +_49.removeChild(_49.lastChild); +} +} +_c(".dojoxCalendarItemContainerRow",_45).forEach(function(tr,i){ +_9.set(tr,"height",this._getRowHeight(i)+"px"); +_46.push(tr.childNodes[0].childNodes[0]); +},this); +_43.cells=_46; +},resize:function(_4a){ +this.inherited(arguments); +this._resizeHandler(null,false); +},_resizeHandler:function(e,_4b){ +var rd=this.renderData; +if(rd==null){ +this.refreshRendering(); +return; +} +if(rd.sheetHeight!=this.itemContainer.offsetHeight){ +rd.sheetHeight=this.itemContainer.offsetHeight; +var _4c=this.getExpandedRowIndex(); +if(_4c==-1){ +this._computeRowsHeight(); +this._resizeRows(); +}else{ +this.expandRow(rd.expandedRow,rd.expandedRowCol,0,null,true); +} +if(rd.invalidRowHeight){ +delete rd.invalidRowHeight; +this.renderData=null; +this.displayedItemsInvalidated=true; +this.refreshRendering(); +return; +} +} +if(this.layoutDuringResize||_4b){ +setTimeout(_4.hitch(this,function(){ +this._layoutRenderers(this.renderData); +this._layoutDecorationRenderers(this.renderData); +}),20); +}else{ +_9.set(this.itemContainer,"opacity",0); +this._recycleItemRenderers(); +this._recycleExpandRenderers(); +if(this._resizeTimer!=undefined){ +clearTimeout(this._resizeTimer); +} +this._resizeTimer=setTimeout(_4.hitch(this,function(){ +delete this._resizeTimer; +this._resizeRowsImpl(this.itemContainer,"tr"); +this._layoutRenderers(this.renderData); +this._layoutDecorationRenderers(this.renderData); +if(this.resizeAnimationDuration==0){ +_9.set(this.itemContainer,"opacity",1); +}else{ +fx.fadeIn({node:this.itemContainer,curve:[0,1]}).play(this.resizeAnimationDuration); +} +}),200); +} +},resizeAnimationDuration:0,getExpandedRowIndex:function(){ +return this.renderData.expandedRow==null?-1:this.renderData.expandedRow; +},collapseRow:function(_4d,_4e,_4f){ +var rd=this.renderData; +if(_4f==undefined){ +_4f=true; +} +if(_4d==undefined){ +_4d=this.expandDuration; +} +if(rd&&rd.expandedRow!=null&&rd.expandedRow!=-1){ +if(_4f&&_4d){ +var _50=rd.expandedRow; +var _51=rd.expandedRowHeight; +delete rd.expandedRow; +this._computeRowsHeight(rd); +var _52=this._getRowHeight(_50); +rd.expandedRow=_50; +this._recycleExpandRenderers(); +this._recycleItemRenderers(); +_9.set(this.itemContainer,"display","none"); +this._expandAnimation=new fx.Animation({curve:[_51,_52],duration:_4d,easing:_4e,onAnimate:_4.hitch(this,function(_53){ +this._expandRowImpl(Math.floor(_53)); +}),onEnd:_4.hitch(this,function(_54){ +this._expandAnimation=null; +this._collapseRowImpl(false); +this._resizeRows(); +_9.set(this.itemContainer,"display","block"); +setTimeout(_4.hitch(this,function(){ +this._layoutRenderers(rd); +}),100); +this.onExpandAnimationEnd(false); +})}); +this._expandAnimation.play(); +}else{ +this._collapseRowImpl(_4f); +} +} +},_collapseRowImpl:function(_55){ +var rd=this.renderData; +delete rd.expandedRow; +delete rd.expandedRowHeight; +this._computeRowsHeight(rd); +if(_55==undefined||_55){ +this._resizeRows(); +this._layoutRenderers(rd); +} +},expandRow:function(_56,_57,_58,_59,_5a){ +var rd=this.renderData; +if(!rd||_56<0||_56>=rd.rowCount){ +return -1; +} +if(_57==undefined||_57<0||_57>=rd.columnCount){ +_57=-1; +} +if(_5a==undefined){ +_5a=true; +} +if(_58==undefined){ +_58=this.expandDuration; +} +if(_59==undefined){ +_59=this.expandEasing; +} +var _5b=this._getRowHeight(_56); +var _5c=rd.sheetHeight-Math.ceil(this.cellPaddingTop*(rd.rowCount-1)); +rd.expandedRow=_56; +rd.expandedRowCol=_57; +rd.expandedRowHeight=_5c; +if(_5a){ +if(_58){ +this._recycleExpandRenderers(); +this._recycleItemRenderers(); +_9.set(this.itemContainer,"display","none"); +this._expandAnimation=new fx.Animation({curve:[_5b,_5c],duration:_58,delay:50,easing:_59,onAnimate:_4.hitch(this,function(_5d){ +this._expandRowImpl(Math.floor(_5d)); +}),onEnd:_4.hitch(this,function(){ +this._expandAnimation=null; +_9.set(this.itemContainer,"display","block"); +setTimeout(_4.hitch(this,function(){ +this._expandRowImpl(_5c,true); +}),100); +this.onExpandAnimationEnd(true); +})}); +this._expandAnimation.play(); +}else{ +this._expandRowImpl(_5c,true); +} +} +},_expandRowImpl:function(_5e,_5f){ +var rd=this.renderData; +rd.expandedRowHeight=_5e; +this._computeRowsHeight(rd,rd.sheetHeight-_5e); +this._resizeRows(); +if(_5f){ +this._layoutRenderers(rd); +} +},onExpandAnimationEnd:function(_60){ +},_resizeRows:function(){ +if(this._getRowHeight(0)<=0){ +return; +} +if(this.rowHeaderTable){ +this._resizeRowsImpl(this.rowHeaderTable,"tr"); +} +if(this.gridTable){ +this._resizeRowsImpl(this.gridTable,"tr"); +} +if(this.itemContainerTable){ +this._resizeRowsImpl(this.itemContainerTable,"tr"); +} +},_computeRowsHeight:function(_61,max){ +var rd=_61==null?this.renderData:_61; +max=max||rd.sheetHeight; +max--; +if(_5("ie")==7){ +max-=rd.rowCount; +} +if(rd.rowCount==1){ +rd.rowHeight=max; +rd.rowHeightFirst=max; +rd.rowHeightLast=max; +return; +} +var _62=rd.expandedRow==null?rd.rowCount:rd.rowCount-1; +var rhx=max/_62; +var rhf,rhl,rh; +var _63=max-(Math.floor(rhx)*_62); +var _64=Math.abs(max-(Math.ceil(rhx)*_62)); +var _65; +var _66=1; +if(_63<_64){ +rh=Math.floor(rhx); +_65=_63; +}else{ +_66=-1; +rh=Math.ceil(rhx); +_65=_64; +} +rhf=rh+_66*Math.floor(_65/2); +rhl=rhf+_66*(_65%2); +rd.rowHeight=rh; +rd.rowHeightFirst=rhf; +rd.rowHeightLast=rhl; +},_getRowHeight:function(_67){ +var rd=this.renderData; +if(_67==rd.expandedRow){ +return rd.expandedRowHeight; +}else{ +if(rd.expandedRow==0&&_67==1||_67==0){ +return rd.rowHeightFirst; +}else{ +if(rd.expandedRow==this.renderData.rowCount-1&&_67==this.renderData.rowCount-2||_67==this.renderData.rowCount-1){ +return rd.rowHeightLast; +}else{ +return rd.rowHeight; +} +} +} +},_resizeRowsImpl:function(_68,_69){ +dojo.query(_69,_68).forEach(function(tr,i){ +_9.set(tr,"height",this._getRowHeight(i)+"px"); +},this); +},_setHorizontalRendererAttr:function(_6a){ +this._destroyRenderersByKind("horizontal"); +this._set("horizontalRenderer",_6a); +},_setLabelRendererAttr:function(_6b){ +this._destroyRenderersByKind("label"); +this._set("labelRenderer",_6b); +},_destroyExpandRenderer:function(_6c){ +if(_6c["destroyRecursive"]){ +_6c.destroyRecursive(); +} +_6.destroy(_6c.domNode); +},_setExpandRendererAttr:function(_6d){ +while(this._ddRendererList.length>0){ +this._destroyExpandRenderer(this._ddRendererList.pop()); +} +var _6e=this._ddRendererPool; +if(_6e){ +while(_6e.length>0){ +this._destroyExpandRenderer(_6e.pop()); +} +} +this._set("expandRenderer",_6d); +},_ddRendererList:null,_ddRendererPool:null,_getExpandRenderer:function(_6f,_70,_71,_72,_73){ +if(this.expandRenderer==null){ +return null; +} +var ir=this._ddRendererPool.pop(); +if(ir==null){ +ir=new this.expandRenderer(); +} +this._ddRendererList.push(ir); +ir.set("owner",this); +ir.set("date",_6f); +ir.set("items",_70); +ir.set("rowIndex",_71); +ir.set("columnIndex",_72); +ir.set("expanded",_73); +return ir; +},_recycleExpandRenderers:function(_74){ +for(var i=0;i=1440?"horizontal":"label"; +},naturalRowsHeight:null,_roundItemToDay:function(_76){ +var s=_76.startTime,e=_76.endTime; +if(!this.isStartOfDay(s)){ +s=this.floorToDay(s,false,this.renderData); +} +if(!this.isStartOfDay(e)){ +e=this.renderData.dateModule.add(e,"day",1); +e=this.floorToDay(e,true); +} +return {startTime:s,endTime:e}; +},_sortItemsFunction:function(a,b){ +if(this.roundToDay){ +a=this._roundItemToDay(a); +b=this._roundItemToDay(b); +} +var res=this.dateModule.compare(a.startTime,b.startTime); +if(res==0){ +res=-1*this.dateModule.compare(a.endTime,b.endTime); +} +return res; +},_overlapLayoutPass3:function(_77){ +var pos=0,_78=0; +var res=[]; +var _79=_a.position(this.gridTable).x; +for(var col=0;col=0&&!_7a;_7c--){ +for(var i=0;i<_77[_7c].length;i++){ +var _7d=_77[_7c][i]; +_7a=_7d.start<_78&&pos<_7d.end; +if(_7a){ +res[col]=_7c+1; +break; +} +} +} +if(!_7a){ +res[col]=0; +} +} +return res; +},applyRendererZIndex:function(_7e,_7f,_80,_81,_82,_83){ +_9.set(_7f.container,{"zIndex":_82||_81?_7f.renderer.mobile?100:0:_7e.lane==undefined?1:_7e.lane+1}); +},_layoutDecorationRenderers:function(_84){ +if(_84==null||_84.decorationItems==null||_84.rowHeight<=0){ +return; +} +if(!this.gridTable||this._expandAnimation!=null||this.horizontalDecorationRenderer==null){ +this.decorationRendererManager.recycleItemRenderers(); +return; +} +this._layoutStep=_84.columnCount; +this.renderData.gridTablePosX=_a.position(this.gridTable).x; +this.inherited(arguments); +},_layoutRenderers:function(_85){ +if(_85==null||_85.items==null||_85.rowHeight<=0){ +return; +} +if(!this.gridTable||this._expandAnimation!=null||(this.horizontalRenderer==null&&this.labelRenderer==null)){ +this._recycleItemRenderers(); +return; +} +this.renderData.gridTablePosX=_a.position(this.gridTable).x; +this._layoutStep=_85.columnCount; +this._recycleExpandRenderers(); +this._hiddenItems=[]; +this._offsets=[]; +this.naturalRowsHeight=[]; +this.inherited(arguments); +},_offsets:null,_layoutInterval:function(_86,_87,_88,end,_89,_8a){ +if(this.renderData.cells==null){ +return; +} +if(_8a==="dataItems"){ +var _8b=[]; +var _8c=[]; +for(var i=0;i<_89.length;i++){ +var _8d=_89[i]; +var _8e=this._itemToRendererKind(_8d); +if(_8e=="horizontal"){ +_8b.push(_8d); +}else{ +if(_8e=="label"){ +_8c.push(_8d); +} +} +} +var _8f=this.getExpandedRowIndex(); +if(_8f!=-1&&_8f!=_87){ +return; +} +var _90; +var _91=[]; +var _92=null; +var _93=[]; +if(_8b.length>0&&this.horizontalRenderer){ +var _92=this._createHorizontalLayoutItems(_87,_88,end,_8b,_8a); +var _94=this._computeHorizontalOverlapLayout(_92,_93); +} +var _95; +var _96=[]; +if(_8c.length>0&&this.labelRenderer){ +_95=this._createLabelLayoutItems(_87,_88,end,_8c); +this._computeLabelOffsets(_95,_96); +} +var _97=this._computeColHasHiddenItems(_87,_93,_96); +if(_92!=null){ +this._layoutHorizontalItemsImpl(_87,_92,_94,_97,_91,_8a); +} +if(_95!=null){ +this._layoutLabelItemsImpl(_87,_95,_97,_91,_93,_8a); +} +this._layoutExpandRenderers(_87,_97,_91); +this._hiddenItems[_87]=_91; +}else{ +if(this.horizontalDecorationRenderer){ +var _92=this._createHorizontalLayoutItems(_87,_88,end,_89,_8a); +if(_92!=null){ +this._layoutHorizontalItemsImpl(_87,_92,null,false,null,_8a); +} +} +} +},_createHorizontalLayoutItems:function(_98,_99,_9a,_9b,_9c){ +var rd=this.renderData; +var cal=rd.dateModule; +var _9d=rd.rtl?-1:1; +var _9e=[]; +var _9f=_9c==="decorationItems"; +for(var i=0;i<_9b.length;i++){ +var _a0=_9b[i]; +var _a1=this.computeRangeOverlap(rd,_a0.startTime,_a0.endTime,_99,_9a); +var _a2=cal.difference(_99,this.floorToDay(_a1[0],false,rd),"day"); +var _a3=rd.dates[_98][_a2]; +var _a4=_a.position(this._getCellAt(_98,_a2,false)); +var _a5=_a4.x-rd.gridTablePosX; +if(rd.rtl){ +_a5+=_a4.w; +} +if(_9f&&!_a0.isAllDay||!_9f&&!this.roundToDay&&!_a0.allDay){ +_a5+=_9d*this.computeProjectionOnDate(rd,_a3,_a1[0],_a4.w); +} +_a5=Math.ceil(_a5); +var _a6=cal.difference(_99,this.floorToDay(_a1[1],false,rd),"day"); +var end; +if(_a6>rd.columnCount-1){ +_a4=_a.position(this._getCellAt(_98,rd.columnCount-1,false)); +if(rd.rtl){ +end=_a4.x-rd.gridTablePosX; +}else{ +end=_a4.x-rd.gridTablePosX+_a4.w; +} +}else{ +_a3=rd.dates[_98][_a6]; +_a4=_a.position(this._getCellAt(_98,_a6,false)); +end=_a4.x-rd.gridTablePosX; +if(rd.rtl){ +end+=_a4.w; +} +if(!_9f&&this.roundToDay){ +if(!this.isStartOfDay(_a1[1])){ +end+=_9d*_a4.w; +} +}else{ +end+=_9d*this.computeProjectionOnDate(rd,_a3,_a1[1],_a4.w); +} +} +end=Math.floor(end); +if(rd.rtl){ +var t=end; +end=_a5; +_a5=t; +} +if(end>_a5){ +var _a7=_4.mixin({start:_a5,end:end,range:_a1,item:_a0,startOffset:_a2,endOffset:_a6},_a0); +_9e.push(_a7); +} +} +return _9e; +},_computeHorizontalOverlapLayout:function(_a8,_a9){ +var rd=this.renderData; +var _aa=this.horizontalRendererHeight; +var _ab=this.computeOverlapping(_a8,this._overlapLayoutPass3); +var _ac=this.percentOverlap/100; +for(var i=0;i=this.columnCount){ +break; +} +if(_b8>=0){ +var _b9=_b3[_b8]; +if(_b9==null){ +_b9=[]; +_b3[_b8]=_b9; +} +_b9.push(_4.mixin({startOffset:_b8,range:_b7,item:_b4},_b4)); +} +d=cal.add(d,"day",1); +this.floorToDay(d,true); +} +} +return _b3; +},_computeLabelOffsets:function(_ba,_bb){ +for(var i=0;i_c0){ +_c0=h; +} +res[i]=h>_bf; +} +this.naturalRowsHeight[_bc]=_c0; +return res; +},_layoutHorizontalItemsImpl:function(_c1,_c2,_c3,_c4,_c5,_c6){ +var rd=this.renderData; +var _c7=rd.cells[_c1]; +var _c8=this._getRowHeight(_c1); +var _c9=this.horizontalRendererHeight; +var _ca=this.percentOverlap/100; +for(var i=0;i<_c2.length;i++){ +var _cb=_c2[i]; +var _cc=_cb.lane; +if(_c6==="dataItems"){ +var _cd=this.cellPaddingTop; +if(_ca==0){ +_cd+=_cc*(_c9+this.verticalGap); +}else{ +_cd+=_cc*(_c9-_ca*_c9); +} +var exp=false; +var _ce=_c8; +if(this.expandRenderer){ +for(var off=_cb.startOffset;off<=_cb.endOffset;off++){ +if(_c4[off]){ +exp=true; +break; +} +} +_ce=exp?_c8-this.expandRendererHeight:_c8; +} +if(_cd+_c9<=_ce){ +var ir=this._createRenderer(_cb,"horizontal",this.horizontalRenderer,"dojoxCalendarHorizontal"); +var _cf=this.isItemBeingEdited(_cb)&&!this.liveLayout&&this._isEditing; +var h=_cf?_c8-this.cellPaddingTop:_c9; +var w=_cb.end-_cb.start; +if(_5("ie")>=9&&_cb.start+w=9&&_cb.start+wr.w){ +x=r.w-1; +} +} +if(y<0){ +y=0; +}else{ +if(y>r.h){ +y=r.h-1; +} +} +var w=_a.getMarginBox(this.itemContainer).w; +var colW=w/rd.columnCount; +var row; +if(rd.expandedRow==null){ +row=Math.floor(y/(_a.getMarginBox(this.itemContainer).h/rd.rowCount)); +}else{ +row=rd.expandedRow; +} +var r=_a.getContentBox(this.itemContainer); +if(rd.rtl){ +x=r.w-x; +} +var col=Math.floor(x/colW); +var tm=Math.floor((x-(col*colW))*1440/colW); +var date=null; +if(row\n\t
    \n\t\t
    \t\t\n\t
    \t\n\t
    \n\t\t
    \n\t
    \t\t\n\t
    \n\t\t
    \n\t
    \t\n\t
    \n\t\t
    \n\t
    \t\n\t
    \n\t\t
    \n\t
    \t\n
    \n"}}); +define("dojox/calendar/MatrixView", [ +"dojo/_base/declare", +"dojo/_base/array", +"dojo/_base/event", +"dojo/_base/lang", +"dojo/_base/sniff", +"dojo/_base/fx", +"dojo/_base/html", +"dojo/on", +"dojo/dom", +"dojo/dom-class", +"dojo/dom-style", +"dojo/dom-geometry", +"dojo/dom-construct", +"dojo/query", +"dojox/html/metrics", +"dojo/i18n", +"./ViewBase", +"dojo/text!./templates/MatrixView.html", +"dijit/_TemplatedMixin"], + +function( + declare, + arr, + event, + lang, + has, + fx, + html, + on, + dom, + domClass, + domStyle, + domGeometry, + domConstruct, + query, + metrics, + i18n, + ViewBase, + template, + _TemplatedMixin){ + + /*===== + var __HeaderClickEventArgs = { + // summary: + // A column click event. + // index: Integer + // The column index. + // date: Date + // The date displayed by the column. + // triggerEvent: Event + // The origin event. + }; + =====*/ + + /*===== + var __ExpandRendererClickEventArgs = { + // summary: + // A expand renderer click event. + // columnIndex: Integer + // The column index of the cell. + // rowIndex: Integer + // The row index of the cell. + // date: Date + // The date displayed by the cell. + // triggerEvent: Event + // The origin event. + }; + =====*/ + + return declare("dojox.calendar.MatrixView", [ViewBase, _TemplatedMixin], { + + // summary: + // The matrix view is a calendar view that displaying a matrix where each cell is a day. + + templateString: template, + + baseClass: "dojoxCalendarMatrixView", + + _setTabIndexAttr: "domNode", + + // viewKind: String + // Type of the view. Used by the calendar widget to determine how to configure the view. + // This view kind is "matrix". + viewKind: "matrix", + + // renderData: Object + // The render data object contains all the data needed to render the widget. + renderData: null, + + // startDate: Date + // The start date of the time interval displayed. + // If not set at initialization time, will be set to current day. + startDate: null, + + // refStartTime: Date? + // (Optional) Start of the time interval of interest. + // It is used to style differently the displayed rows out of the + // time interval of interest. + refStartTime: null, + + // refStartTime: Date? + // (Optional) End of the time interval of interest. + // It is used to style differently the displayed rows out of the + // time interval of interest. + refEndTime: null, + + // columnCount: Integer + // The number of column to display (from the startDate). + columnCount: 7, + + // rowCount: Integer + // The number of rows to display (from the startDate). + rowCount: 5, + + // horizontalRenderer: Class + // The class use to create horizontal renderers. + horizontalRenderer: null, + + // labelRenderer: Class + // The class use to create label renderers. + labelRenderer: null, + + // expandRenderer: Class + // The class use to create drill down renderers. + expandRenderer: null, + + // expandRenderer: Class + // The class use to create horizontal decoration renderers. + horizontalDecorationRenderer: null, + + // percentOverlap: Integer + // The percentage of the renderer width used to superimpose one item renderers on another + // when two events are overlapping. By default 0. + percentOverlap: 0, + + // verticalGap: Integer + // The number of pixels between two item renderers that are overlapping each other if the percentOverlap property is 0. + verticalGap: 2, + + // horizontalRendererHeight: Integer + // The height in pixels of the horizontal and label renderers that is applied by the layout. + horizontalRendererHeight: 17, + + // horizontalRendererHeight: Integer + // The height in pixels of the horizontal and label renderers that is applied by the layout. + labelRendererHeight: 14, + + // expandRendererHeight: Integer + // The height in pixels of the expand/collapse renderers that is applied by the layout. + expandRendererHeight: 15, + + // cellPaddingTop: Integer + // The top offset in pixels of each cell applied by the layout. + cellPaddingTop: 16, + + // expandDuration: Integer + // Duration of the animation when expanding or collapsing a row. + expandDuration: 300, + + // expandEasing: Function + // Easing function of the animation when expanding or collapsing a row (null by default). + expandEasing: null, + + // layoutDuringResize: Boolean + // Indicates if the item renderers' position and size is updated or if they are hidden during a resize of the widget. + layoutDuringResize: false, + + // roundToDay: Boolean + // For horizontal renderers that are not filling entire days, whether fill the day or not. + roundToDay: true, + + // showCellLabel: Boolean + // Whether display or not the grid cells label (usually the day of month). + showCellLabel: true, + + // scrollable: [private] Boolean + scrollable: false, + + // resizeCursor: [private] Boolean + resizeCursor: "e-resize", + + constructor: function(){ + this.invalidatingProperties = + ["columnCount", "rowCount", "startDate", "horizontalRenderer", "horizontalDecaorationRenderer", + "labelRenderer", "expandRenderer", "rowHeaderDatePattern", "columnHeaderLabelLength", + "cellHeaderShortPattern", "cellHeaderLongPattern", "percentOverlap", "verticalGap", + "horizontalRendererHeight", "labelRendererHeight", "expandRendererHeight", "cellPaddingTop", + "roundToDay", "itemToRendererKindFunc", "layoutPriorityFunction", "formatItemTimeFunc", "textDir", "items"]; + + this._ddRendererList = []; + this._ddRendererPool = []; + this._rowHeaderHandles = []; + }, + + destroy: function(preserveDom){ + this._cleanupRowHeader(); + this.inherited(arguments); + }, + + postCreate: function(){ + this.inherited(arguments); + this._initialized = true; + if(!this.invalidRendering){ + this.refreshRendering(); + } + }, + + _createRenderData: function(){ + + var rd = {}; + + rd.dateLocaleModule = this.dateLocaleModule; + rd.dateClassObj = this.dateClassObj; + rd.dateModule = this.dateModule; // arithmetics on Dates + + rd.dates = []; + + rd.columnCount = this.get("columnCount"); + rd.rowCount = this.get("rowCount"); + + rd.sheetHeight = this.itemContainer.offsetHeight; + + this._computeRowsHeight(rd); + + var d = this.get("startDate"); + + if(d == null){ + d = new rd.dateClassObj(); + } + + d = this.floorToDay(d, false, rd); + + this.startDate = d; + + for(var row = 0; row < rd.rowCount ; row++){ + rd.dates.push([]); + for(var col = 0; col < rd.columnCount ; col++){ + rd.dates[row].push(d); + d = this.addAndFloor(d, "day", 1); + } + } + + rd.startTime = this.newDate(rd.dates[0][0], rd); + rd.endTime = this.newDate(rd.dates[rd.rowCount-1][rd.columnCount-1], rd); + rd.endTime = rd.dateModule.add(rd.endTime, "day", 1); + rd.endTime = this.floorToDay(rd.endTime, true); + + if(this.displayedItemsInvalidated && !this._isEditing){ + // while editing in no live layout we must not to recompute items (duplicate renderers) + this.displayedItemsInvalidated = false; + this._computeVisibleItems(rd); + + }else if(this.renderData){ + rd.items = this.renderData.items; + } + + if(this.displayedDecorationItemsInvalidated){ + rd.decorationItems = this.decorationStoreManager._computeVisibleItems(rd); + + }else if (this.renderData){ + rd.decorationItems = this.renderData.decorationItems; + } + + rd.rtl = !this.isLeftToRight(); + + return rd; + }, + + _validateProperties: function(){ + + this.inherited(arguments); + + if(this.columnCount<1 || isNaN(this.columnCount)){ + this.columnCount = 1; + } + + if(this.rowCount<1 || isNaN(this.rowCount)){ + this.rowCount = 1; + } + + if(isNaN(this.percentOverlap) || this.percentOverlap < 0 || this.percentOverlap > 100){ + this.percentOverlap = 0; + } + + if(isNaN(this.verticalGap) || this.verticalGap < 0){ + this.verticalGap = 2; + } + + if(isNaN(this.horizontalRendererHeight) || this.horizontalRendererHeight < 1){ + this.horizontalRendererHeight = 17; + } + + if(isNaN(this.labelRendererHeight) || this.labelRendererHeight < 1){ + this.labelRendererHeight = 14; + } + + if(isNaN(this.expandRendererHeight) || this.expandRendererHeight < 1){ + this.expandRendererHeight = 15; + } + + }, + + _setStartDateAttr: function(value){ + this.displayedItemsInvalidated = true; + this._set("startDate", value); + }, + + _setColumnCountAttr: function(value){ + this.displayedItemsInvalidated = true; + this._set("columnCount", value); + }, + + _setRowCountAttr: function(value){ + this.displayedItemsInvalidated = true; + this._set("rowCount", value); + }, + + __fixEvt:function(e){ + e.sheet = "primary"; + e.source = this; + return e; + }, + + ////////////////////////////////////////// + // + // Formatting functions + // + ////////////////////////////////////////// + + _formatRowHeaderLabel: function(/*Date*/d){ + // summary: + // Computes the row header label for the specified time of day. + // By default the getWeekNumberLabel() function is called. + // The rowHeaderDatePattern property can be used to set a + // custom date pattern to the formatter. + // d: Date + // The date to format + // tags: + // protected + + if(this.rowHeaderDatePattern){ + return this.renderData.dateLocaleModule.format(d, { + selector: 'date', + datePattern: this.rowHeaderDatePattern + }); + }else{ + return this.getWeekNumberLabel(d); + } + + }, + + _formatColumnHeaderLabel: function(d){ + // summary: + // Computes the column header label for the specified date. + // By default a formatter is used, optionally the columnHeaderLabelLength + // property can be used to specify the length of the string. + // d: Date + // The date to format + // tags: + // protected + + return this.renderData.dateLocaleModule.getNames('days', this.columnHeaderLabelLength ? this.columnHeaderLabelLength : 'wide', 'standAlone')[d.getDay()]; + }, + + // cellHeaderShortPattern: String + // Custom date/time pattern for grid cell label to override default one coming from the CLDR. + // See dojo/date/locale documentation for format string. + cellHeaderShortPattern: null, + + // cellHeaderLongPattern: String + // Custom date/time pattern for grid cell label to override default one coming from the CLDR. + // The long pattern is used for the first day of month or the first displayed day of a month. + // See dojo/date/locale documentation for format string. + cellHeaderLongPattern: null, + + _formatGridCellLabel: function(d, row, col){ + // summary: + // Computes the column header label for the specified date. + // By default a formatter is used, optionally the cellHeaderLongPattern and cellHeaderShortPattern + // properties can be used to set a custom date pattern to the formatter. + // d: Date + // The date to format. + // row: Integer + // The row that displays the current date. + // col: Integer + // The column that displays the current date. + // tags: + // protected + + var isFirstDayOfMonth = row == 0 && col == 0 || d.getDate() == 1; + var format, rb; + if(isFirstDayOfMonth){ + if(this.cellHeaderLongPattern){ + format = this.cellHeaderLongPattern; + }else{ + rb = i18n.getLocalization("dojo.cldr", this._calendar); + format = rb["dateFormatItem-MMMd"]; + } + }else{ + if(this.cellHeaderShortPattern){ + format = this.cellHeaderShortPattern; + }else{ + rb = i18n.getLocalization("dojo.cldr", this._calendar); + format = rb["dateFormatItem-d"]; + } + } + return this.renderData.dateLocaleModule.format(d, { + selector: 'date', + datePattern: format + }); + }, + + //////////////////////////////////////////// + // + // HTML structure management + // + /////////////////////////////////////////// + + refreshRendering: function(){ + this.inherited(arguments); + + if(!this.domNode){ + return; + } + + this._validateProperties(); + + var oldRd = this.renderData; + var rd = this.renderData = this._createRenderData(); + + this._createRendering(rd, oldRd); + + this._layoutDecorationRenderers(rd); + this._layoutRenderers(rd); + }, + + _createRendering: function(renderData, oldRenderData){ + // summary: + // Creates the HTML structure (grid, place holders, headers, etc) + // renderData: Object + // The new render data + // oldRenderData: Object + // The previous render data + // tags: + // private + + if(renderData.rowHeight <= 0){ + renderData.columnCount = 1; + renderData.rowCount = 1; + renderData.invalidRowHeight = true; + return; + } + + if(oldRenderData){ + // make sure to have correct rowCount + if(this.itemContainerTable){ + var rows = query(".dojoxCalendarItemContainerRow", this.itemContainerTable); + oldRenderData.rowCount = rows.length; + } + } + + this._buildColumnHeader(renderData, oldRenderData); + this._buildRowHeader(renderData, oldRenderData); + this._buildGrid(renderData, oldRenderData); + this._buildItemContainer(renderData, oldRenderData); + + if(this.buttonContainer && this.owner != null && this.owner.currentView == this){ + domStyle.set(this.buttonContainer, {"right":0, "left":0}); + } + }, + + _buildColumnHeader: function(/*Object*/ renderData, /*Object*/oldRenderData){ + // summary: + // Creates incrementally the HTML structure of the column header and configures its content. + // + // renderData: + // The render data to display. + // + // oldRenderData: + // The previously render data displayed, if any. + // tags: + // private + var table = this.columnHeaderTable; + + if(!table){ + return; + } + + var count = renderData.columnCount - (oldRenderData ? oldRenderData.columnCount : 0); + + if(has("ie") == 8){ + // workaround Internet Explorer 8 bug. + // if on the table, width: 100% and table-layout: fixed are set + // and columns are removed, width of remaining columns is not + // recomputed: must rebuild all. + if(this._colTableSave == null){ + this._colTableSave = lang.clone(table); + }else if(count < 0){ + this.columnHeader.removeChild(table); + domConstruct.destroy(table); + table = lang.clone(this._colTableSave); + this.columnHeaderTable = table; + this.columnHeader.appendChild(table); + count = renderData.columnCount; + } + + } // else incremental dom add/remove for real browsers. + + var tbodies = query("tbody", table); + var trs = query("tr", table); + var tbody, tr, td; + + if(tbodies.length == 1){ + tbody = tbodies[0]; + }else{ + tbody = html.create("tbody", null, table); + } + + if(trs.length == 1){ + tr = trs[0]; + }else{ + tr = domConstruct.create("tr", null, tbody); + } + + // Build HTML structure (incremental) + if(count > 0){ // creation + for(var i=0; i < count; i++){ + td = domConstruct.create("td", null, tr); + } + }else{ // deletion + count = -count; + for(var i=0; i < count; i++){ + tr.removeChild(tr.lastChild); + } + } + + // fill & configure + query("td", table).forEach(function(td, i){ + td.className = ""; + var d = renderData.dates[0][i]; + this._setText(td, this._formatColumnHeaderLabel(d)); + if(i == 0){ + domClass.add(td, "first-child"); + }else if(i == this.renderData.columnCount-1){ + domClass.add(td, "last-child"); + } + this.styleColumnHeaderCell(td, d, renderData); + }, this); + + if(this.yearColumnHeaderContent){ + var d = renderData.dates[0][0]; + this._setText(this.yearColumnHeaderContent, renderData.dateLocaleModule.format(d, + {selector: "date", datePattern:"yyyy"})); + } + }, + + styleColumnHeaderCell: function(node, date, renderData){ + // summary: + // Styles the CSS classes to the node that displays a column header cell. + // By default this method is setting the "dojoxCalendarWeekend" if the day of week represents a weekend. + // node: Node + // The DOM node that displays the column in the grid. + // date: Date + // The date displayed by this column + // renderData: Object + // The render data. + // tags: + // protected + + domClass.add(node, this._cssDays[date.getDay()]); + + if(this.isWeekEnd(date)){ + domClass.add(node, "dojoxCalendarWeekend"); + } + }, + + _rowHeaderHandles: null, + + _cleanupRowHeader: function(){ + // tags: + // private + + while(this._rowHeaderHandles.length > 0){ + var list = this._rowHeaderHandles.pop(); + while(list.length>0){ + list.pop().remove(); + } + } + }, + + + _rowHeaderClick: function(e){ + // tags: + // private + + var index = query("td", this.rowHeaderTable).indexOf(e.currentTarget); + this._onRowHeaderClick({ + index: index, + date: this.renderData.dates[index][0], + triggerEvent: e + }); + }, + + _buildRowHeader: function(renderData, oldRenderData){ + + // summary: + // Creates incrementally the HTML structure of the row header and configures its content. + // + // renderData: + // The render data to display. + // + // oldRenderData: + // The previously render data displayed, if any. + // tags: + // private + + var rowHeaderTable = this.rowHeaderTable; + + if(!rowHeaderTable){ + return; + } + + var tbodies = query("tbody", rowHeaderTable); + var tbody, tr, td; + + if(tbodies.length == 1){ + tbody = tbodies[0]; + }else{ + tbody = domConstruct.create("tbody", null, rowHeaderTable); + } + + var count = renderData.rowCount - (oldRenderData ? oldRenderData.rowCount : 0); + + // Build HTML structure + if(count>0){ // creation + for(var i=0; i < count; i++){ + tr = domConstruct.create("tr", null, tbody); + td = domConstruct.create("td", null, tr); + + var h = []; + + h.push(on(td, "click", lang.hitch(this, this._rowHeaderClick))); + + if(!has("touch")){ + h.push(on(td, "mousedown", function(e){ + domClass.add(e.currentTarget, "Active"); + })); + + h.push(on(td, "mouseup", function(e){ + domClass.remove(e.currentTarget, "Active"); + })); + + h.push(on(td, "mouseover", function(e){ + domClass.add(e.currentTarget, "Hover"); + })); + + h.push(on(td, "mouseout", function(e){ + domClass.remove(e.currentTarget, "Hover"); + })); + } + this._rowHeaderHandles.push(h); + } + }else{ + count = -count; + // deletion of existing nodes + for(var i=0; i < count; i++){ + tbody.removeChild(tbody.lastChild); + var list = this._rowHeaderHandles.pop(); + while(list.length>0){ + list.pop().remove(); + } + } + } + + // fill labels + + query("tr", rowHeaderTable).forEach(function(tr, i){ + + domStyle.set(tr, "height", this._getRowHeight(i) + "px"); + + var d = renderData.dates[i][0]; + + var td = query("td", tr)[0]; + td.className = ""; + if(i == 0){ + domClass.add(td, "first-child"); + } + if(i == this.renderData.rowCount-1){ + domClass.add(td, "last-child"); + } + + this.styleRowHeaderCell(td, d, renderData); + + this._setText(td, this._formatRowHeaderLabel(d)); + }, this); + + }, + + styleRowHeaderCell: function(node, date, renderData){ + // summary: + // Styles the CSS classes to the node that displays a row header cell. + // By default this method is doing nothing. + // node: Node + // The DOM node that displays the column in the grid. + // date: Date + // The date in the week. + // renderData: Object + // The render data. + // tags: + // protected + + + }, + + _buildGrid: function (renderData, oldRenderData){ + // summary: + // Creates incrementally the HTML structure of the grid and configures its content. + // + // renderData: + // The render data to display. + // + // oldRenderData: + // The previously render data displayed, if any. + // tags: + // private + + var table = this.gridTable; + + if(!table){ + return; + } + + var currentTR = query("tr", table); + + var rowDiff = renderData.rowCount - currentTR.length; + var addRows = rowDiff > 0; + + var colDiff = renderData.columnCount - (currentTR ? query("td", currentTR[0]).length : 0); + + if(has("ie") == 8){ + // workaround Internet Explorer 8 bug. + // if on the table, width: 100% and table-layout: fixed are set + // and columns are removed, width of remaining columns is not + // recomputed: must rebuild all. + if(this._gridTableSave == null){ + this._gridTableSave = lang.clone(table); + }else if(colDiff < 0){ + this.grid.removeChild(table); + domConstruct.destroy(table); + table = lang.clone(this._gridTableSave); + this.gridTable = table; + this.grid.appendChild(table); + colDiff = renderData.columnCount; + rowDiff = renderData.rowCount; + addRows = true; + } + } + + var tbodies = query("tbody", table); + var tbody; + + if(tbodies.length == 1){ + tbody = tbodies[0]; + }else{ + tbody = domConstruct.create("tbody", null, table); + } + + // Build rows HTML structure (incremental) + if(addRows){ // creation + for(var i=0; i0; + colDiff = addCols ? colDiff : -colDiff; + + query("tr", table).forEach(function(tr, i){ + + if(addCols){ // creation + var len = i >= rowIndex ? renderData.columnCount : colDiff; + for(var i=0; i= 0 || + cal.compare(cal.add(date, "day", 1), this.refStartTime) <= 0)){ + domClass.add(node, "dojoxCalendarDayDisabled"); + }else if(this.isWeekEnd(date)){ + domClass.add(node, "dojoxCalendarWeekend"); + } + }, + + styleGridCell: function(node, date, renderData){ + // summary: + // Styles the CSS classes to the node that displays a cell. + // Delegates to styleGridCellFunc if defined or defaultStyleGridCell otherwise. + // node: Node + // The DOM node that displays the cell in the grid. + // date: Date + // The date displayed by this cell. + // renderData: Object + // The render data. + // tags: + // protected + if(this.styleGridCellFunc){ + this.styleGridCellFunc(node, date, renderData); + }else{ + this.defaultStyleGridCell(node, date, renderData); + } + }, + + _buildItemContainer: function(renderData, oldRenderData){ + // summary: + // Creates the HTML structure of the item container and configures its content. + // + // renderData: + // The render data to display. + // + // oldRenderData: + // The previously render data displayed, if any. + // tags: + // private + + var table = this.itemContainerTable; + + if(!table){ + return; + } + + var rows = []; + + var count = renderData.rowCount - (oldRenderData ? oldRenderData.rowCount : 0) + + if(has("ie") == 8){ + // workaround Internet Explorer 8 bug. + // if on the table, width: 100% and table-layout: fixed are set + // and columns are removed, width of remaining columns is not + // recomputed: must rebuild all. + if(this._itemTableSave == null){ + this._itemTableSave = lang.clone(table); + }else if(count < 0){ + this.itemContainer.removeChild(table); + this._recycleItemRenderers(true); + this._recycleExpandRenderers(true); + domConstruct.destroy(table); + table = lang.clone(this._itemTableSave); + this.itemContainerTable = table; + this.itemContainer.appendChild(table); + count = renderData.columnCount; + } + + } // else incremental dom add/remove for real browsers. + + var tbodies = query("tbody", table); + var tbody, tr, td, div; + + if(tbodies.length == 1){ + tbody = tbodies[0]; + }else{ + tbody = domConstruct.create("tbody", null, table); + } + + // Build HTML structure (incremental) + if(count>0){ // creation + for(var i=0; i < count; i++){ + tr = domConstruct.create("tr", null, tbody); + domClass.add(tr, "dojoxCalendarItemContainerRow"); + td = domConstruct.create("td", null, tr); + div = domConstruct.create("div", null, td); + domClass.add(div, "dojoxCalendarContainerRow"); + } + }else{ // deletion + count = -count; + for(var i=0; i < count; i++){ + tbody.removeChild(tbody.lastChild); + } + } + + query(".dojoxCalendarItemContainerRow", table).forEach(function(tr, i){ + domStyle.set(tr, "height", this._getRowHeight(i) + "px"); + rows.push(tr.childNodes[0].childNodes[0]); + }, this); + + renderData.cells = rows; + }, + + resize: function(changeSize){ + this.inherited(arguments); + this._resizeHandler(null, false); + }, + + _resizeHandler: function(e, apply){ + // summary: + // Refreshes and apply the row height according to the widget height. + // e: Event + // The resize event (optional) + // apply: Boolean + // Whether take into account the layoutDuringResize flag to relayout item while resizing or not. + // tags: + // private + + var rd = this.renderData; + + if(rd == null){ + this.refreshRendering(); + return; + } + + if(rd.sheetHeight != this.itemContainer.offsetHeight){ + // refresh values + rd.sheetHeight = this.itemContainer.offsetHeight; + var expRow = this.getExpandedRowIndex(); + if(expRow == -1){ + this._computeRowsHeight(); + this._resizeRows(); + }else{ + this.expandRow(rd.expandedRow, rd.expandedRowCol, 0, null, true); + } + if(rd.invalidRowHeight){ + // complete recompute + delete rd.invalidRowHeight; + this.renderData = null; + this.displayedItemsInvalidated = true; + this.refreshRendering(); + return; + } + } + + if(this.layoutDuringResize || apply){ + // Use a time for FF (at least). In FF the cell size and position info are not ready yet. + setTimeout(lang.hitch(this, function(){ + this._layoutRenderers(this.renderData); + this._layoutDecorationRenderers(this.renderData); + }), 20); + + }else{ + domStyle.set(this.itemContainer, "opacity", 0); + this._recycleItemRenderers(); + this._recycleExpandRenderers(); + if(this._resizeTimer != undefined){ + clearTimeout(this._resizeTimer); + } + this._resizeTimer = setTimeout(lang.hitch(this, function(){ + delete this._resizeTimer; + this._resizeRowsImpl(this.itemContainer, "tr"); + this._layoutRenderers(this.renderData); + this._layoutDecorationRenderers(this.renderData); + if(this.resizeAnimationDuration == 0){ + domStyle.set(this.itemContainer, "opacity", 1); + }else{ + fx.fadeIn({node:this.itemContainer, curve:[0, 1]}).play(this.resizeAnimationDuration); + } + }), 200); + } + + }, + + // resizeAnimationDuration: Integer + // Duration, in milliseconds, of the fade animation showing the item renderers after a widget resize. + resizeAnimationDuration: 0, + + ///////////////////////////////////////////// + // + // Row height management + // + ////////////////////////////////////////////// + + getExpandedRowIndex: function(){ + // summary: + // Returns the index of the expanded row or -1 if there's no row expanded. + return this.renderData.expandedRow == null ? -1 : this.renderData.expandedRow; + }, + + collapseRow: function(duration, easing, apply){ + // summary: + // Collapses the expanded row, if any. + // duration: Integer + // Duration in milliseconds of the optional animation. + // easing: Function + // Easing function of the optional animation. + + var rd = this.renderData; + + if(apply == undefined){ + apply = true; + } + if(duration == undefined){ + duration = this.expandDuration; + } + + if(rd && rd.expandedRow != null && rd.expandedRow != -1){ + if(apply && duration){ + var index = rd.expandedRow; + var oldSize = rd.expandedRowHeight; + delete rd.expandedRow; + this._computeRowsHeight(rd); + var size = this._getRowHeight(index); + rd.expandedRow = index; + + this._recycleExpandRenderers(); + this._recycleItemRenderers(); + domStyle.set(this.itemContainer, "display", "none"); + + this._expandAnimation = new fx.Animation({ + curve: [oldSize, size], + duration: duration, + easing: easing, + onAnimate: lang.hitch(this, function(size) { + this._expandRowImpl(Math.floor(size)); + }), + onEnd: lang.hitch(this, function(size) { + this._expandAnimation = null; + this._collapseRowImpl(false); + this._resizeRows(); + domStyle.set(this.itemContainer, "display", "block"); + setTimeout(lang.hitch(this, function(){ + this._layoutRenderers(rd); + }), 100); + this.onExpandAnimationEnd(false); + }) + }); + + this._expandAnimation.play(); + }else{ + this._collapseRowImpl(apply); + } + } + }, + + _collapseRowImpl: function(apply){ + // tags: + // private + + var rd = this.renderData; + delete rd.expandedRow; + delete rd.expandedRowHeight; + this._computeRowsHeight(rd); + if(apply == undefined || apply){ + this._resizeRows(); + this._layoutRenderers(rd); + } + }, + + expandRow: function(rowIndex, colIndex, duration, easing, apply){ + // summary: + // Expands the specified row. + // rowIndex: Integer + // The index of the row to expand. + // colIndex: Integer? + // The column index of the expand renderer that triggers the action, optional. + // duration: Integer? + // Duration in milliseconds of the optional animation. + // easing: Function? + // Easing function of the optional animation. + + var rd = this.renderData; + if(!rd || rowIndex < 0 || rowIndex >= rd.rowCount){ + return -1; + } + if(colIndex == undefined || colIndex < 0 || colIndex >= rd.columnCount){ + colIndex = -1; // ignore invalid values + } + if(apply == undefined){ + apply = true; + } + if(duration == undefined){ + duration = this.expandDuration; + } + if(easing == undefined){ + easing = this.expandEasing; + } + + var oldSize = this._getRowHeight(rowIndex); + var size = rd.sheetHeight - Math.ceil(this.cellPaddingTop * (rd.rowCount-1)); + + rd.expandedRow = rowIndex; + rd.expandedRowCol = colIndex; + rd.expandedRowHeight = size; + + if(apply){ + if(duration){ + //debugger; + this._recycleExpandRenderers(); + this._recycleItemRenderers(); + domStyle.set(this.itemContainer, "display", "none"); + + this._expandAnimation = new fx.Animation({ + curve: [oldSize, size], + duration: duration, + delay:50, + easing: easing, + onAnimate: lang.hitch(this, function(size) { + this._expandRowImpl(Math.floor(size)); + }), + onEnd: lang.hitch(this, function(){ + this._expandAnimation = null; + domStyle.set(this.itemContainer, "display", "block"); + setTimeout(lang.hitch(this, function(){ + this._expandRowImpl(size, true); + }), 100); + this.onExpandAnimationEnd(true); + }) + }); + this._expandAnimation.play(); + }else{ + this._expandRowImpl(size, true); + } + } + }, + + _expandRowImpl: function(size, layout){ + // tags: + // private + + var rd = this.renderData; + rd.expandedRowHeight = size; + this._computeRowsHeight(rd, rd.sheetHeight-size); + this._resizeRows(); + if(layout){ + this._layoutRenderers(rd); + } + }, + + onExpandAnimationEnd: function(expand){ + // summary: + // Event dispatched at the end of an expand or collapse animation. + // expand: Boolean + // Whether the finished animation was an expand or a collapse animation. + // tags: + // callback + + }, + + _resizeRows: function(){ + // summary: + // Refreshes the height of the underlying HTML objects. + // tags: + // private + + if(this._getRowHeight(0) <= 0){ + return; + } + + if(this.rowHeaderTable){ + this._resizeRowsImpl(this.rowHeaderTable, "tr"); + } + if(this.gridTable){ + this._resizeRowsImpl(this.gridTable, "tr"); + } + if(this.itemContainerTable){ + this._resizeRowsImpl(this.itemContainerTable, "tr"); + } + }, + + _computeRowsHeight:function(renderData, max){ + // summary: + // 1. Determine if it's better to add or remove pixels + // 2. distribute added/removed pixels on first and last rows. + // if rows are not too small, it is not noticeable. + // tags: + // private + + var rd = renderData == null ? this.renderData : renderData; + + max = max || rd.sheetHeight; + + max--; + + if(has("ie") == 7){ + max -= rd.rowCount; + } + + if(rd.rowCount == 1){ + rd.rowHeight = max; + rd.rowHeightFirst = max; + rd.rowHeightLast = max; + return; + } + + var count = rd.expandedRow == null ? rd.rowCount : rd.rowCount-1; + var rhx = max / count; + var rhf, rhl, rh; + + var diffMin = max - (Math.floor(rhx) * count); + var diffMax = Math.abs(max - (Math.ceil(rhx) * count)); + var diff; + + var sign = 1; + if(diffMin < diffMax){ + rh = Math.floor(rhx); + diff = diffMin; + }else{ + sign = -1; + rh = Math.ceil(rhx); + diff = diffMax; + } + rhf = rh + sign * Math.floor(diff/2); + rhl = rhf + sign * (diff%2); + + rd.rowHeight = rh; + rd.rowHeightFirst = rhf; + rd.rowHeightLast = rhl; + }, + + _getRowHeight: function(index){ + // tags: + // private + + var rd = this.renderData; + if(index == rd.expandedRow){ + return rd.expandedRowHeight; + } else if(rd.expandedRow == 0 && index == 1 || index == 0){ + return rd.rowHeightFirst; + } else if(rd.expandedRow == this.renderData.rowCount-1 && + index == this.renderData.rowCount-2 || + index == this.renderData.rowCount-1){ + return rd.rowHeightLast; + }else{ + return rd.rowHeight; + } + }, + + _resizeRowsImpl: function(tableNode, query){ + // tags: + // private + dojo.query(query, tableNode).forEach(function(tr, i){ + domStyle.set(tr, "height", this._getRowHeight(i)+"px"); + }, this); + }, + + //////////////////////////////////////////// + // + // Item renderers + // + /////////////////////////////////////////// + + _setHorizontalRendererAttr: function(value){ + this._destroyRenderersByKind("horizontal"); + this._set("horizontalRenderer", value); + }, + + _setLabelRendererAttr: function(value){ + this._destroyRenderersByKind("label"); + this._set("labelRenderer", value); + }, + + _destroyExpandRenderer: function(renderer){ + // summary: + // Destroys the expand renderer. + // renderer: dojox/calendar/_RendererMixin + // The item renderer to destroy. + // tags: + // protected + + if(renderer["destroyRecursive"]){ + renderer.destroyRecursive(); + } + + html.destroy(renderer.domNode); + }, + + _setExpandRendererAttr: function(value){ + while(this._ddRendererList.length>0){ + this._destroyExpandRenderer(this._ddRendererList.pop()); + } + + var pool = this._ddRendererPool; + if(pool){ + while(pool.length > 0){ + this._destroyExpandRenderer(pool.pop()); + } + } + this._set("expandRenderer", value); + }, + + _ddRendererList: null, + _ddRendererPool: null, + + _getExpandRenderer: function(date, items, rowIndex, colIndex, expanded){ + // tags: + // private + + if(this.expandRenderer == null){ + return null; + } + + var ir = this._ddRendererPool.pop(); + if(ir == null){ + ir = new this.expandRenderer(); + } + + this._ddRendererList.push(ir); + + ir.set("owner", this); + ir.set("date", date); + ir.set("items", items); + ir.set("rowIndex", rowIndex); + ir.set("columnIndex", colIndex); + ir.set("expanded", expanded); + return ir; + }, + + _recycleExpandRenderers: function(remove){ + // tags: + // private + + for(var i=0; i= 1440 ? "horizontal" : "label"; + }, + + //////////////////////////////////////////// + // + // Layout + // + /////////////////////////////////////////// + + // naturalRowHeight: Integer[] + // After an item layout has been done, contains for each row the natural height of the row. + // Ie. the height, in pixels, needed to display all the item renderers. + naturalRowsHeight: null, + + _roundItemToDay: function(item){ + // tags: + // private + + var s = item.startTime, e = item.endTime; + + if(!this.isStartOfDay(s)){ + s = this.floorToDay(s, false, this.renderData); + } + if(!this.isStartOfDay(e)){ + e = this.renderData.dateModule.add(e, "day", 1); + e = this.floorToDay(e, true); + } + return {startTime:s, endTime:e}; + }, + + _sortItemsFunction: function(a, b){ + // tags: + // private + + if(this.roundToDay){ + a = this._roundItemToDay(a); + b = this._roundItemToDay(b); + } + var res = this.dateModule.compare(a.startTime, b.startTime); + if(res == 0){ + res = -1 * this.dateModule.compare(a.endTime, b.endTime); + } + return res; + }, + + _overlapLayoutPass3: function(lanes){ + // summary: + // Third pass of the overlap layout (optional). Compute the number of lanes used by sub interval. + // lanes: Object[] + // The array of lanes. + // tags: + // private + + var pos=0, posEnd=0; + var res = []; + + var refPos = domGeometry.position(this.gridTable).x; + + for(var col=0; col=0 && !stop; lane--){ + for (var i=0; i 0 && this.horizontalRenderer){ + var hItems = this._createHorizontalLayoutItems(index, start, end, horizontalItems, itemsType); + var hOverlapLayout = this._computeHorizontalOverlapLayout(hItems, hOffsets); + } + + var lItems; + var lOffsets = []; + if(labelItems.length > 0 && this.labelRenderer){ + lItems = this._createLabelLayoutItems(index, start, end, labelItems); + this._computeLabelOffsets(lItems, lOffsets); + } + + var hasHiddenItems = this._computeColHasHiddenItems(index, hOffsets, lOffsets); + + if(hItems != null){ + this._layoutHorizontalItemsImpl(index, hItems, hOverlapLayout, hasHiddenItems, hiddenItems, itemsType); + } + + if(lItems != null){ + this._layoutLabelItemsImpl(index, lItems, hasHiddenItems, hiddenItems, hOffsets, itemsType); + } + + this._layoutExpandRenderers(index, hasHiddenItems, hiddenItems); + + this._hiddenItems[index] = hiddenItems; + }else{ // itemsType === "decorationItems" + + if(this.horizontalDecorationRenderer){ + var hItems = this._createHorizontalLayoutItems(index, start, end, items, itemsType); + if(hItems != null){ + this._layoutHorizontalItemsImpl(index, hItems, null, false, null, itemsType); + } + } + } + }, + + _createHorizontalLayoutItems: function(/*Integer*/index, /*Date*/startTime, /*Date*/endTime, /*Object[]*/items, /*String*/itemsType){ + // tags: + // private + + var rd = this.renderData; + var cal = rd.dateModule; + var sign = rd.rtl ? -1 : 1; + var layoutItems = []; + var isDecoration = itemsType === "decorationItems"; + + // step 1: compute projected position and size + for(var i = 0; i < items.length; i++){ + + var item = items[i]; + var overlap = this.computeRangeOverlap(rd, item.startTime, item.endTime, startTime, endTime); + + var startOffset = cal.difference(startTime, this.floorToDay(overlap[0], false, rd), "day"); + var dayStart = rd.dates[index][startOffset]; + + var celPos = domGeometry.position(this._getCellAt(index, startOffset, false)); + var start = celPos.x - rd.gridTablePosX; + if(rd.rtl){ + start += celPos.w; + } + + if(isDecoration && !item.isAllDay || !isDecoration && !this.roundToDay && !item.allDay){ + start += sign * this.computeProjectionOnDate(rd, dayStart, overlap[0], celPos.w); + } + + start = Math.ceil(start); + + var endOffset = cal.difference(startTime, this.floorToDay(overlap[1], false, rd), "day"); + + var end; + if(endOffset > rd.columnCount-1){ + celPos = domGeometry.position(this._getCellAt(index, rd.columnCount-1, false)); + if(rd.rtl){ + end = celPos.x - rd.gridTablePosX; + }else{ + end = celPos.x - rd.gridTablePosX + celPos.w; + } + }else{ + dayStart = rd.dates[index][endOffset]; + celPos = domGeometry.position(this._getCellAt(index, endOffset, false)); + end = celPos.x - rd.gridTablePosX; + + if(rd.rtl){ + end += celPos.w; + } + + if(!isDecoration && this.roundToDay){ + if(!this.isStartOfDay(overlap[1])){ + end += sign * celPos.w; + } + }else{ + end += sign * this.computeProjectionOnDate(rd, dayStart, overlap[1], celPos.w); + } + } + + end = Math.floor(end); + + if(rd.rtl){ + var t = end; + end = start; + start = t; + } + + if(end > start){ // invalid items are not displayed + var litem = lang.mixin({ + start: start, + end: end, + range: overlap, + item: item, + startOffset: startOffset, + endOffset: endOffset + }, item); + layoutItems.push(litem); + } + } + return layoutItems; + }, + + _computeHorizontalOverlapLayout: function(layoutItems, offsets){ + // tags: + // private + + var rd = this.renderData; + var irHeight = this.horizontalRendererHeight; + var overlapLayoutRes = this.computeOverlapping(layoutItems, this._overlapLayoutPass3); + var vOverlap = this.percentOverlap / 100; + + for(var i=0; i= this.columnCount){ + // If the offset is greater than the column count + // the item will be processed in another row. + break; + } + + if(startOffset >= 0){ + var list = layoutItems[startOffset]; + if(list == null){ + list = []; + layoutItems[startOffset] = list; + } + + list.push(lang.mixin( + { startOffset: startOffset, + range: overlap, + item: item + }, item)); + } + + d = cal.add(d, "day", 1); + this.floorToDay(d, true); + } + } + return layoutItems; + }, + + _computeLabelOffsets: function(layoutItems, offsets){ + // tags: + // private + + for(var i=0; i maxH){ + maxH = h; + } + res[i] = h > cellH; + } + + this.naturalRowsHeight[index] = maxH; + return res; + }, + + _layoutHorizontalItemsImpl: function(index, layoutItems, hOverlapLayout, hasHiddenItems, hiddenItems, itemsType){ + + // tags: + // private + + var rd = this.renderData; + var cell = rd.cells[index]; + var cellH = this._getRowHeight(index); + var irHeight = this.horizontalRendererHeight; + var vOverlap = this.percentOverlap / 100; + + for(var i=0; i= 9 && item.start + w < this.itemContainer.offsetWidth) { + w++; + } + + domStyle.set(ir.container, { + "top": (fullHeight ? this.cellPaddingTop : posY) + "px", + "left": item.start + "px", + "width": w + "px", + "height": h + "px" + }); + + this._applyRendererLayout(item, ir, cell, w, h, "horizontal"); + + }else{ + // The items does not fit in view, fill hidden items per column + for(var d=item.startOffset;d= 9 && item.start + w < this.itemContainer.offsetWidth) { + w++; + } + + domStyle.set(ir.container, { + "top": "0", + "left": item.start + "px", + "width": w + "px", + "height": h + "px" + }); + + domConstruct.place(ir.container, cell); + domStyle.set(ir.container, "display", "block"); + } + } + }, + + _layoutLabelItemsImpl: function(index, layoutItems, hasHiddenItems, hiddenItems, hOffsets){ + // tags: + // private + var list, posY; + var rd = this.renderData; + var cell = rd.cells[index]; + var cellH = this._getRowHeight(index); + var irHeight = this.labelRendererHeight; + var maxW = domGeometry.getMarginBox(this.itemContainer).w; + + for(var i=0; i r.w){ + x = r.w-1; + } + + if(y < 0){ + y = 0; + }else if(y > r.h){ + y = r.h-1; + } + + // compute the date from column the time in day instead of time from start date of row to prevent DST hour offset. + + var w = domGeometry.getMarginBox(this.itemContainer).w; + var colW = w / rd.columnCount; + + var row; + if(rd.expandedRow == null){ + row = Math.floor(y / (domGeometry.getMarginBox(this.itemContainer).h / rd.rowCount)); + }else{ + row = rd.expandedRow; //other rows are not usable + } + + var r = domGeometry.getContentBox(this.itemContainer); + + if(rd.rtl){ + x = r.w - x; + } + + var col = Math.floor(x / colW); + + var tm = Math.floor((x-(col*colW)) * 1440 / colW); + + var date = null; + if(row < rd.dates.length && col < this.renderData.dates[row].length){ + date = this.newDate(this.renderData.dates[row][col]); + date = this.renderData.dateModule.add(date, "minute", tm); + } + + return date; + }, + + ///////////////////////////////////////////// + // + // Event management + // + ////////////////////////////////////////////// + + _onGridMouseUp: function(e){ + // tags: + // private + + this.inherited(arguments); + + if(this._gridMouseDown){ + this._gridMouseDown = false; + + this._onGridClick({ + date: this.getTime(e), + triggerEvent: e + }); + } + }, + + _onGridTouchEnd: function(e){ + // tags: + // private + this.inherited(arguments); + + var g = this._gridProps; + + if(g){ + + if(!this._isEditing){ + + // touched on grid and on touch start editing was ongoing. + if(!g.fromItem && !g.editingOnStart){ + this.selectFromEvent(e, null, null, true); + } + + if(!g.fromItem){ + + if(this._pendingDoubleTap && this._pendingDoubleTap.grid){ + + this._onGridDoubleClick({ + date: this.getTime(this._gridProps.event), + triggerEvent: this._gridProps.event + }); + + clearTimeout(this._pendingDoubleTap.timer); + + delete this._pendingDoubleTap; + + }else{ + + this._onGridClick({ + date: this.getTime(this._gridProps.event), + triggerEvent: this._gridProps.event + }); + + this._pendingDoubleTap = { + grid: true, + timer: setTimeout(lang.hitch(this, function(){ + delete this._pendingDoubleTap; + }), this.doubleTapDelay) + }; + } + } + } + + this._gridProps = null; + } + }, + + + ///////////////////////////////////////////// + // + // Events + // + ////////////////////////////////////////////// + + _onRowHeaderClick: function(e){ + this._dispatchCalendarEvt(e, "onRowHeaderClick"); + // tags: + // private + }, + + onRowHeaderClick: function(e){ + // summary: + // Event dispatched when a row header cell is clicked. + // e: __HeaderClickEventArgs + // Header click event. + // tags: + // callback + }, + + expandRendererClickHandler: function(e, renderer){ + // summary: + // Default action when an expand renderer is clicked. + // e: Event + // The mouse event. + // renderer: Object + // The expand renderer. + // tags: + // protected + + event.stop(e); + + var ri = renderer.get("rowIndex"); + var ci = renderer.get("columnIndex"); + + this._onExpandRendererClick(lang.mixin(this._createItemEditEvent(), { + rowIndex: ri, + columnIndex: ci, + renderer: renderer, + triggerEvent: e, + date: this.renderData.dates[ri][ci] + })); + }, + + onExpandRendererClick: function(e){ + // summary: + // Event dispatched when an expand renderer is clicked. + // e: __ExpandRendererClickEventArgs + // Expand renderer click event. + // tags: + // callback + }, + + _onExpandRendererClick: function(e){ + + this._dispatchCalendarEvt(e, "onExpandRendererClick"); + + if(!e.isDefaultPrevented()){ + + if(this.getExpandedRowIndex() != -1){ + this.collapseRow(); + }else{ + this.expandRow(e.rowIndex, e.columnIndex); + } + } + }, + + + //////////////////////////////////////////// + // + // Editing + // + /////////////////////////////////////////// + + snapUnit: "minute", + snapSteps: 15, + minDurationUnit: "minute", + minDurationSteps: 15, + triggerExtent: 3, + liveLayout: false, + stayInView: true, + allowStartEndSwap: true, + allowResizeLessThan24H: false + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileCalendar.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileCalendar.js new file mode 100644 index 00000000..5bd6a807 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileCalendar.js @@ -0,0 +1,17 @@ +//>>built +require({cache:{"url:dojox/calendar/templates/MobileCalendar.html":"
    \n\t
    \n\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\t\t\n\t\t\t\n\t\t\n\t
    \n
    \n"}}); +define("dojox/calendar/MobileCalendar",["dojo/_base/declare","dojo/_base/lang","./CalendarBase","./ColumnView","./ColumnViewSecondarySheet","./MobileVerticalRenderer","./MatrixView","./MobileHorizontalRenderer","./LabelRenderer","./ExpandRenderer","./Touch","dojo/text!./templates/MobileCalendar.html","dojox/mobile/Button"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c){ +return _1("dojox.calendar.MobileCalendar",_3,{templateString:_c,_createDefaultViews:function(){ +var _d=_1([_5,_b]); +var _e=_1([_4,_b])(_2.mixin({secondarySheetClass:_d,verticalRenderer:_6,horizontalRenderer:_8,expandRenderer:_a},this.columnViewProps)); +var _f=_1([_7,_b])(_2.mixin({horizontalRenderer:_8,labelRenderer:_9,expandRenderer:_a},this.matrixViewProps)); +this.columnView=_e; +this.matrixView=_f; +var _10=[_e,_f]; +this.installDefaultViewsActions(_10); +return _10; +},installDefaultViewsActions:function(_11){ +this.matrixView.on("rowHeaderClick",_2.hitch(this,this.matrixViewRowHeaderClick)); +this.columnView.on("columnHeaderClick",_2.hitch(this,this.columnViewColumnHeaderClick)); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileCalendar.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileCalendar.js.uncompressed.js new file mode 100644 index 00000000..b21139d1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileCalendar.js.uncompressed.js @@ -0,0 +1,60 @@ +require({cache:{ +'url:dojox/calendar/templates/MobileCalendar.html':"
    \n\t
    \n\t
    \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\t\t\n\t\t\t\n\t\t\n\t
    \n
    \n"}}); +define("dojox/calendar/MobileCalendar", ["dojo/_base/declare", "dojo/_base/lang", "./CalendarBase", "./ColumnView", "./ColumnViewSecondarySheet", + "./MobileVerticalRenderer", "./MatrixView", "./MobileHorizontalRenderer", "./LabelRenderer", + "./ExpandRenderer", "./Touch", "dojo/text!./templates/MobileCalendar.html", "dojox/mobile/Button"], + + function(declare, lang, CalendarBase, ColumnView, ColumnViewSecondarySheet, VerticalRenderer, + MatrixView, HorizontalRenderer, LabelRenderer, ExpandRenderer, Touch, template){ + + return declare("dojox.calendar.MobileCalendar", CalendarBase, { + + // summary: + // This class defines a calendar widget that display events in time designed to be used in mobile environment. + + templateString: template, + + _createDefaultViews: function(){ + // summary: + // Creates the default views: + // - A dojox.calendar.ColumnView instance used to display one day to seven days time intervals, + // - A dojox.calendar.MatrixView instance used to display the other time intervals. + // The views are mixed with Mouse and Keyboard to allow editing items using mouse and keyboard. + + var secondarySheetClass = declare([ColumnViewSecondarySheet, Touch]); + + var colView = declare([ColumnView, Touch])(lang.mixin({ + secondarySheetClass: secondarySheetClass, + verticalRenderer: VerticalRenderer, + horizontalRenderer: HorizontalRenderer, + expandRenderer: ExpandRenderer + }, this.columnViewProps)); + + var matrixView = declare([MatrixView, Touch])(lang.mixin({ + horizontalRenderer: HorizontalRenderer, + labelRenderer: LabelRenderer, + expandRenderer: ExpandRenderer + }, this.matrixViewProps)); + + this.columnView = colView; + this.matrixView = matrixView; + + var views = [colView, matrixView]; + + this.installDefaultViewsActions(views); + + return views; + }, + + installDefaultViewsActions: function(views){ + // summary: + // Installs the default actions on newly created default views. + // By default this action is registering: + // - the matrixViewRowHeaderClick method on the rowHeaderClick event of the matrix view. + // - the columnViewColumnHeaderClick method on the columnHeaderClick event of the column view. + this.matrixView.on("rowHeaderClick", lang.hitch(this, this.matrixViewRowHeaderClick)); + this.columnView.on("columnHeaderClick", lang.hitch(this, this.columnViewColumnHeaderClick)); + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileHorizontalRenderer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileHorizontalRenderer.js new file mode 100644 index 00000000..7b01985d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileHorizontalRenderer.js @@ -0,0 +1,38 @@ +//>>built +require({cache:{"url:dojox/calendar/templates/MobileHorizontalRenderer.html":"
    \n\t
    \n\t
    ◄
    \t\n\t
    \t\t\n\t\t\n\t\t\n\t\t\n\t
    \n\t
    ►
    \n\t
    \t\n\t
    \t\n\t
    \t\n
    \n"}}); +define("dojox/calendar/MobileHorizontalRenderer",["dojo/_base/declare","dojo/dom-style","dijit/_WidgetBase","dijit/_TemplatedMixin","dojox/calendar/_RendererMixin","dojo/text!./templates/MobileHorizontalRenderer.html"],function(_1,_2,_3,_4,_5,_6){ +return _1("dojox.calendar.MobileHorizontalRenderer",[_3,_4,_5],{templateString:_6,_orientation:"horizontal",mobile:true,visibilityLimits:{resizeStartHandle:50,resizeEndHandle:-1,summaryLabel:15,startTimeLabel:32,endTimeLabel:30},_displayValue:"inline",arrowPadding:12,_isElementVisible:function(_7,_8,_9,_a){ +var d; +var _b=this.isLeftToRight(); +if(_7=="startTimeLabel"){ +if(this.labelContainer&&(_b&&_9||!_b&&_8)){ +_2.set(this.labelContainer,"marginRight",this.arrowPadding+"px"); +}else{ +_2.set(this.labelContainer,"marginRight",0); +} +if(this.labelContainer&&(!_b&&_9||_b&&_8)){ +_2.set(this.labelContainer,"marginLeft",this.arrowPadding+"px"); +}else{ +_2.set(this.labelContainer,"marginLeft",0); +} +} +switch(_7){ +case "startTimeLabel": +d=this.item.startTime; +if(this.item.allDay||this.owner.isStartOfDay(d)){ +return false; +} +break; +case "endTimeLabel": +d=this.item.endTime; +if(this.item.allDay||this.owner.isStartOfDay(d)){ +return false; +} +break; +} +return this.inherited(arguments); +},postCreate:function(){ +this.inherited(arguments); +this._applyAttributes(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileHorizontalRenderer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileHorizontalRenderer.js.uncompressed.js new file mode 100644 index 00000000..922664b1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileHorizontalRenderer.js.uncompressed.js @@ -0,0 +1,83 @@ +require({cache:{ +'url:dojox/calendar/templates/MobileHorizontalRenderer.html':"
    \n\t
    \n\t
    ◄
    \t\n\t
    \t\t\n\t\t\n\t\t\n\t\t\n\t
    \n\t
    ►
    \n\t
    \t\n\t
    \t\n\t
    \t\n
    \n"}}); +define("dojox/calendar/MobileHorizontalRenderer", [ +"dojo/_base/declare", +"dojo/dom-style", +"dijit/_WidgetBase", +"dijit/_TemplatedMixin", +"dojox/calendar/_RendererMixin", +"dojo/text!./templates/MobileHorizontalRenderer.html"], + +function( +declare, +domStyle, +_WidgetBase, +_TemplatedMixin, +_RendererMixin, +template){ + + return declare("dojox.calendar.MobileHorizontalRenderer", [_WidgetBase, _TemplatedMixin, _RendererMixin], { + + // summary: + // The mobile specific item horizontal renderer. + + templateString: template, + + _orientation: "horizontal", + + mobile: true, + + visibilityLimits: { + resizeStartHandle: 50, + resizeEndHandle: -1, + summaryLabel: 15, + startTimeLabel: 32, + endTimeLabel: 30 + }, + + _displayValue: "inline", + + // arrowPadding: Integer + // The padding size in pixels to apply to the label container on left and/or right side, to show the arrows correctly. + arrowPadding: 12, + + _isElementVisible: function(elt, startHidden, endHidden, size){ + var d; + var ltr = this.isLeftToRight(); + + if(elt == "startTimeLabel"){ + if(this.labelContainer && (ltr && endHidden || !ltr && startHidden)){ + domStyle.set(this.labelContainer, "marginRight", this.arrowPadding+"px"); + }else{ + domStyle.set(this.labelContainer, "marginRight", 0); + } + if(this.labelContainer && (!ltr && endHidden || ltr && startHidden)){ + domStyle.set(this.labelContainer, "marginLeft", this.arrowPadding+"px"); + }else{ + domStyle.set(this.labelContainer, "marginLeft", 0); + } + } + + switch(elt){ + case "startTimeLabel": + d = this.item.startTime; + if(this.item.allDay || this.owner.isStartOfDay(d)){ + return false; + } + break; + case "endTimeLabel": + d = this.item.endTime; + if(this.item.allDay || this.owner.isStartOfDay(d)){ + return false; + } + break; + } + return this.inherited(arguments); + }, + + postCreate: function() { + this.inherited(arguments); + this._applyAttributes(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileVerticalRenderer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileVerticalRenderer.js new file mode 100644 index 00000000..cc2fc52c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileVerticalRenderer.js @@ -0,0 +1,25 @@ +//>>built +require({cache:{"url:dojox/calendar/templates/MobileVerticalRenderer.html":"
    \n\t
    \t\n\t
    \n\t
    \t\t\t\t\n\t\t
    ▲
    \n\t\t
    \n\t\t
    \n\t
    \n\t▼\t\n\t
    \n\t\n
    \n"}}); +define("dojox/calendar/MobileVerticalRenderer",["dojo/_base/declare","dijit/_WidgetBase","dijit/_TemplatedMixin","dojox/calendar/_RendererMixin","dojo/text!./templates/MobileVerticalRenderer.html"],function(_1,_2,_3,_4,_5){ +return _1("dojox.calendar.MobileVerticalRenderer",[_2,_3,_4],{templateString:_5,mobile:true,visibilityLimits:{resizeStartHandle:75,resizeEndHandle:-1,summaryLabel:55,startTimeLabel:75,endTimeLabel:20},postCreate:function(){ +this.inherited(arguments); +this._applyAttributes(); +},_isElementVisible:function(_6,_7,_8,_9){ +var d; +switch(_6){ +case "startTimeLabel": +d=this.item.startTime; +if(this.item.allDay||this.owner.isStartOfDay(d)){ +return false; +} +break; +case "endTimeLabel": +d=this.item.endTime; +if(this.item.allDay||this.owner.isStartOfDay(d)){ +return false; +} +break; +} +return this.inherited(arguments); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileVerticalRenderer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileVerticalRenderer.js.uncompressed.js new file mode 100644 index 00000000..b9909853 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MobileVerticalRenderer.js.uncompressed.js @@ -0,0 +1,49 @@ +require({cache:{ +'url:dojox/calendar/templates/MobileVerticalRenderer.html':"
    \n\t
    \t\n\t
    \n\t
    \t\t\t\t\n\t\t
    ▲
    \n\t\t
    \n\t\t
    \n\t
    \n\t▼\t\n\t
    \n\t\n
    \n"}}); +define("dojox/calendar/MobileVerticalRenderer", ["dojo/_base/declare", "dijit/_WidgetBase", "dijit/_TemplatedMixin", + "dojox/calendar/_RendererMixin", "dojo/text!./templates/MobileVerticalRenderer.html"], + + function(declare, _WidgetBase, _TemplatedMixin, _RendererMixin, template){ + + return declare("dojox.calendar.MobileVerticalRenderer", [_WidgetBase, _TemplatedMixin, _RendererMixin], { + + // summary: + // The mobile specific item vertical renderer. + + templateString: template, + mobile: true, + + visibilityLimits: { + resizeStartHandle: 75, + resizeEndHandle: -1, + summaryLabel: 55, + startTimeLabel: 75, + endTimeLabel: 20 + }, + + postCreate: function() { + this.inherited(arguments); + this._applyAttributes(); + }, + + _isElementVisible: function(elt, startHidden, endHidden, size){ + var d; + + switch(elt){ + case "startTimeLabel": + d = this.item.startTime; + if(this.item.allDay || this.owner.isStartOfDay(d)){ + return false; + } + break; + case "endTimeLabel": + d = this.item.endTime; + if(this.item.allDay || this.owner.isStartOfDay(d)){ + return false; + } + break; + } + return this.inherited(arguments); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MonthColumnView.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MonthColumnView.js new file mode 100644 index 00000000..a54596f4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MonthColumnView.js @@ -0,0 +1,772 @@ +//>>built +require({cache:{"url:dojox/calendar/templates/MonthColumnView.html":"
    \t\t\n\t
    \n\t\t
    \n\t
    \t\n\t
    \n\t\t
    \n\t
    \t\n\t
    \n\t\t
    \t\t\t\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \t\n
    \n"}}); +define("dojox/calendar/MonthColumnView",["./ViewBase","dijit/_TemplatedMixin","./_ScrollBarBase","dojo/text!./templates/MonthColumnView.html","dojo/_base/declare","dojo/_base/event","dojo/_base/lang","dojo/_base/array","dojo/_base/sniff","dojo/_base/fx","dojo/_base/html","dojo/on","dojo/dom","dojo/dom-class","dojo/dom-style","dojo/dom-geometry","dojo/dom-construct","dojo/mouse","dojo/query","dojo/i18n","dojox/html/metrics"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,fx,_a,on,_b,_c,_d,_e,_f,_10,_11,_12,_13){ +return _5("dojox.calendar.MonthColumnView",[_1,_2],{baseClass:"dojoxCalendarMonthColumnView",templateString:_4,viewKind:"monthColumns",_setTabIndexAttr:"domNode",renderData:null,startDate:null,columnCount:6,daySize:30,showCellLabel:true,showHiddenItems:true,verticalRenderer:null,verticalDecorationRenderer:null,percentOverlap:0,horizontalGap:4,columnHeaderFormatLength:null,gridCellDatePattern:null,roundToDay:true,_layoutUnit:"month",_columnHeaderHandlers:null,constructor:function(){ +this.invalidatingProperties=["columnCount","startDate","daySize","percentOverlap","verticalRenderer","verticalDecorationRenderer","columnHeaderDatePattern","horizontalGap","scrollBarRTLPosition","itemToRendererKindFunc","layoutPriorityFunction","textDir","items","showCellLabel","showHiddenItems"]; +this._columnHeaderHandlers=[]; +},postCreate:function(){ +this.inherited(arguments); +this.keyboardUpDownUnit="day"; +this.keyboardUpDownSteps=1; +this.keyboardLeftRightUnit="month"; +this.keyboardLeftRightSteps=1; +this.allDayKeyboardUpDownUnit="day"; +this.allDayKeyboardUpDownSteps=1; +this.allDayKeyboardLeftRightUnit="month"; +this.allDayKeyboardLeftRightSteps=1; +},destroy:function(_14){ +this._cleanupColumnHeader(); +if(this.scrollBar){ +this.scrollBar.destroy(_14); +} +this.inherited(arguments); +},_scrollBar_onScroll:function(_15){ +this.scrollContainer.scrollTop=_15; +},buildRendering:function(){ +this.inherited(arguments); +if(this.vScrollBar){ +this.scrollBar=new _3({content:this.vScrollBarContent},this.vScrollBar); +this.scrollBar.on("scroll",_7.hitch(this,this._scrollBar_onScroll)); +this._viewHandles.push(on(this.scrollContainer,_10.wheel,dojo.hitch(this,this._mouseWheelScrollHander))); +} +},postscript:function(){ +this.inherited(arguments); +this._initialized=true; +if(!this.invalidRendering){ +this.refreshRendering(); +} +},_setVerticalRendererAttr:function(_16){ +this._destroyRenderersByKind("vertical"); +this._set("verticalRenderer",_16); +},_createRenderData:function(){ +var rd={}; +rd.daySize=this.get("daySize"); +rd.scrollbarWidth=_13.getScrollbar().w+1; +rd.dateLocaleModule=this.dateLocaleModule; +rd.dateClassObj=this.dateClassObj; +rd.dateModule=this.dateModule; +rd.dates=[]; +rd.columnCount=this.get("columnCount"); +var d=this.get("startDate"); +if(d==null){ +d=new rd.dateClassObj(); +} +d=this.floorToMonth(d,false,rd); +this.startDate=d; +var _17=d.getMonth(); +var _18=0; +for(var col=0;col31){ +_20=31; +} +} +var _23=(_20-1)*this.daySize; +if(_21){ +if(this._scrollAnimation){ +this._scrollAnimation.stop(); +} +var _24=Math.abs(((_23-this.scrollContainer.scrollTop)*_21)/this.renderData.sheetHeight); +this._scrollAnimation=new fx.Animation({curve:[this.scrollContainer.scrollTop,_23],duration:_24,easing:_22,onAnimate:_7.hitch(this,function(_25){ +this._setScrollImpl(_25); +})}); +this._scrollAnimation.play(); +}else{ +this._setScrollImpl(_23); +} +},_setScrollImpl:function(v){ +this.scrollContainer.scrollTop=v; +if(this.scrollBar){ +this.scrollBar.set("value",v); +} +},ensureVisibility:function(_26,end,_27,_28,_29){ +_28=_28==undefined?1:_28; +if(this.scrollable&&this.autoScroll){ +var s=_26.getDate()-_28; +if(this.isStartOfDay(end)){ +end=this._waDojoxAddIssue(end,"day",-1); +} +var e=end.getDate()+_28; +var _2a=this.get("scrollPosition").date; +var r=_e.getContentBox(this.scrollContainer); +var _2b=(this.get("scrollPosition").date+(r.h/this.daySize)); +var _2c=false; +var _2d=null; +switch(_27){ +case "start": +_2c=s>=_2a&&s<=_2b; +_2d=s; +break; +case "end": +_2c=e>=_2a&&e<=_2b; +_2d=e-(_2b-_2a); +break; +case "both": +_2c=s>=_2a&&e<=_2b; +_2d=s; +break; +} +if(!_2c){ +this._setScrollPosition(_2d,_29); +} +} +},scrollView:function(dir){ +var pos=this.get("scrollPosition").date+dir; +this._setScrollPosition(pos); +},_mouseWheelScrollHander:function(e){ +this.scrollView(e.wheelDelta>0?-1:1); +},refreshRendering:function(){ +if(!this._initialized){ +return; +} +this._validateProperties(); +var _2e=this.renderData; +var rd=this.renderData=this._createRenderData(); +this._createRendering(rd,_2e); +this._layoutDecorationRenderers(rd); +this._layoutRenderers(rd); +},_createRendering:function(_2f,_30){ +_d.set(this.sheetContainer,"height",_2f.sheetHeight+"px"); +this._configureScrollBar(_2f); +this._buildColumnHeader(_2f,_30); +this._buildGrid(_2f,_30); +this._buildItemContainer(_2f,_30); +},_configureScrollBar:function(_31){ +if(_9("ie")&&this.scrollBar){ +_d.set(this.scrollBar.domNode,"width",(_31.scrollbarWidth+1)+"px"); +} +var _32=this.isLeftToRight()?true:this.scrollBarRTLPosition=="right"; +var _33=_32?"right":"left"; +var _34=_32?"left":"right"; +if(this.scrollBar){ +this.scrollBar.set("maximum",_31.sheetHeight); +_d.set(this.scrollBar.domNode,_33,0); +_d.set(this.scrollBar.domNode,_34,"auto"); +} +_d.set(this.scrollContainer,_33,_31.scrollbarWidth+"px"); +_d.set(this.scrollContainer,_34,"0"); +_d.set(this.columnHeader,_33,_31.scrollbarWidth+"px"); +_d.set(this.columnHeader,_34,"0"); +if(this.buttonContainer&&this.owner!=null&&this.owner.currentView==this){ +_d.set(this.buttonContainer,_33,_31.scrollbarWidth+"px"); +_d.set(this.buttonContainer,_34,"0"); +} +},_columnHeaderClick:function(e){ +_6.stop(e); +var _35=_11("td",this.columnHeaderTable).indexOf(e.currentTarget); +this._onColumnHeaderClick({index:_35,date:this.renderData.dates[_35][0],triggerEvent:e}); +},_buildColumnHeader:function(_36,_37){ +var _38=this.columnHeaderTable; +if(!_38){ +return; +} +var _39=_36.columnCount-(_37?_37.columnCount:0); +if(_9("ie")==8){ +if(this._colTableSave==null){ +this._colTableSave=_7.clone(_38); +}else{ +if(_39<0){ +this._cleanupColumnHeader(); +this.columnHeader.removeChild(_38); +_f.destroy(_38); +_38=_7.clone(this._colTableSave); +this.columnHeaderTable=_38; +this.columnHeader.appendChild(_38); +_39=_36.columnCount; +} +} +} +var _3a=_11("tbody",_38); +var trs=_11("tr",_38); +var _3b,tr,td; +if(_3a.length==1){ +_3b=_3a[0]; +}else{ +_3b=_a.create("tbody",null,_38); +} +if(trs.length==1){ +tr=trs[0]; +}else{ +tr=_f.create("tr",null,_3b); +} +if(_39>0){ +for(var i=0;i<_39;i++){ +td=_f.create("td",null,tr); +var h=[]; +h.push(on(td,"click",_7.hitch(this,this._columnHeaderClick))); +if(_9("touch-events")){ +h.push(on(td,"touchstart",function(e){ +_6.stop(e); +_c.add(e.currentTarget,"Active"); +})); +h.push(on(td,"touchend",function(e){ +_6.stop(e); +_c.remove(e.currentTarget,"Active"); +})); +}else{ +h.push(on(td,"mousedown",function(e){ +_6.stop(e); +_c.add(e.currentTarget,"Active"); +})); +h.push(on(td,"mouseup",function(e){ +_6.stop(e); +_c.remove(e.currentTarget,"Active"); +})); +h.push(on(td,"mouseover",function(e){ +_6.stop(e); +_c.add(e.currentTarget,"Hover"); +})); +h.push(on(td,"mouseout",function(e){ +_6.stop(e); +_c.remove(e.currentTarget,"Hover"); +})); +} +this._columnHeaderHandlers.push(h); +} +}else{ +_39=-_39; +for(var i=0;i<_39;i++){ +td=tr.lastChild; +tr.removeChild(td); +_f.destroy(td); +var _3c=this._columnHeaderHandlers.pop(); +while(_3c.length>0){ +_3c.pop().remove(); +} +} +} +_11("td",_38).forEach(function(td,i){ +td.className=""; +if(i==0){ +_c.add(td,"first-child"); +}else{ +if(i==this.renderData.columnCount-1){ +_c.add(td,"last-child"); +} +} +var d=_36.dates[i][0]; +this._setText(td,this._formatColumnHeaderLabel(d)); +this.styleColumnHeaderCell(td,d,_36); +},this); +},_cleanupColumnHeader:function(){ +while(this._columnHeaderHandlers.length>0){ +var _3d=this._columnHeaderHandlers.pop(); +while(_3d.length>0){ +_3d.pop().remove(); +} +} +},styleColumnHeaderCell:function(_3e,_3f,_40){ +},_buildGrid:function(_41,_42){ +var _43=this.gridTable; +if(!_43){ +return; +} +_d.set(_43,"height",_41.sheetHeight+"px"); +var _44=_41.maxDayCount-(_42?_42.maxDayCount:0); +var _45=_44>0; +var _46=_41.columnCount-(_42?_42.columnCount:0); +if(_9("ie")==8){ +if(this._gridTableSave==null){ +this._gridTableSave=_7.clone(_43); +}else{ +if(_46<0){ +this.grid.removeChild(_43); +_f.destroy(_43); +_43=_7.clone(this._gridTableSave); +this.gridTable=_43; +this.grid.appendChild(_43); +_46=_41.columnCount; +_44=_41.maxDayCount; +_45=true; +} +} +} +var _47=_11("tbody",_43); +var _48; +if(_47.length==1){ +_48=_47[0]; +}else{ +_48=_f.create("tbody",null,_43); +} +if(_45){ +for(var i=0;i<_44;i++){ +_f.create("tr",null,_48); +} +}else{ +_44=-_44; +for(var i=0;i<_44;i++){ +_48.removeChild(_48.lastChild); +} +} +var _49=_41.maxDayCount-_44; +var _4a=_45||_46>0; +_46=_4a?_46:-_46; +_11("tr",_43).forEach(function(tr,i){ +if(_4a){ +var len=i>=_49?_41.columnCount:_46; +for(var i=0;i0){ +for(var i=0;i<_56;i++){ +td=_f.create("td",null,tr); +_f.create("div",{"className":"dojoxCalendarContainerColumn"},td); +} +}else{ +_56=-_56; +for(var i=0;i<_56;i++){ +tr.removeChild(tr.lastChild); +} +} +_11("td>div",_54).forEach(function(div,i){ +_d.set(div,{"height":_52.sheetHeight+"px"}); +_55.push(div); +},this); +_52.cells=_55; +},_overlapLayoutPass2:function(_59){ +var i,j,_5a,_5b; +_5a=_59[_59.length-1]; +for(j=0;j<_5a.length;j++){ +_5a[j].extent=1; +} +for(i=0;i<_59.length-1;i++){ +_5a=_59[i]; +for(var j=0;j<_5a.length;j++){ +_5b=_5a[j]; +if(_5b.extent==-1){ +_5b.extent=1; +var _5c=0; +var _5d=false; +for(var k=i+1;k<_59.length&&!_5d;k++){ +var _5e=_59[k]; +for(var l=0;l<_5e.length&&!_5d;l++){ +var _5f=_5e[l]; +if(_5b.start<_5f.end&&_5f.start<_5b.end){ +_5d=true; +} +} +if(!_5d){ +_5c++; +} +} +_5b.extent+=_5c; +} +} +} +},_defaultItemToRendererKindFunc:function(_60){ +if(_60.allDay){ +return "vertical"; +} +var dur=Math.abs(this.renderData.dateModule.difference(_60.startTime,_60.endTime,"minute")); +return dur>=1440?"vertical":null; +},_layoutRenderers:function(_61){ +this.hiddenEvents={}; +this.inherited(arguments); +},_layoutInterval:function(_62,_63,_64,end,_65,_66){ +var _67=[]; +var _68=[]; +_62.colW=this.itemContainer.offsetWidth/_62.columnCount; +if(_66==="dataItems"){ +for(var i=0;i<_65.length;i++){ +var _69=_65[i]; +if(this._itemToRendererKind(_69)=="vertical"){ +_67.push(_69); +}else{ +if(this.showHiddenItems){ +_68.push(_69); +} +} +} +if(_67.length>0){ +this._layoutVerticalItems(_62,_63,_64,end,_67,_66); +} +if(_68.length>0){ +this._layoutBgItems(_62,_63,_64,end,_68); +} +}else{ +this._layoutVerticalItems(_62,_63,_64,end,_65,_66); +} +},_dateToYCoordinate:function(_6a,d,_6b){ +var pos=0; +if(_6b||d.getHours()!=0||d.getMinutes()!=0){ +pos=(d.getDate()-1)*this.renderData.daySize; +}else{ +var d2=this._waDojoxAddIssue(d,"day",-1); +pos=this.renderData.daySize+((d2.getDate()-1)*this.renderData.daySize); +} +pos+=(d.getHours()*60+d.getMinutes())*this.renderData.daySize/1440; +return pos; +},_layoutVerticalItems:function(_6c,_6d,_6e,_6f,_70,_71){ +if(this.verticalRenderer==null){ +return; +} +var _72=_6c.cells[_6d]; +var _73=[]; +for(var i=0;i<_70.length;i++){ +var _74=_70[i]; +var _75=this.computeRangeOverlap(_6c,_74.startTime,_74.endTime,_6e,_6f); +var top=this._dateToYCoordinate(_6c,_75[0],true); +var _76=this._dateToYCoordinate(_6c,_75[1],false); +if(_76>top){ +var _77=_7.mixin({start:top,end:_76,range:_75,item:_74},_74); +_73.push(_77); +} +} +var _78=_71==="dataItems"?this.computeOverlapping(_73,this._overlapLayoutPass2).numLanes:1; +var _79=this.percentOverlap/100; +for(i=0;i<_73.length;i++){ +_74=_73[i]; +var _7a=_74.lane; +var _7b=_74.extent; +var ir=null; +if(_71==="dataItems"){ +var w; +var _7c; +if(_79==0){ +w=_78==1?_6c.colW:((_6c.colW-(_78-1)*this.horizontalGap)/_78); +_7c=_7a*(w+this.horizontalGap); +w=_7b==1?w:w*_7b+(_7b-1)*this.horizontalGap; +w=100*w/_6c.colW; +_7c=100*_7c/_6c.colW; +}else{ +w=_78==1?100:(100/(_78-(_78-1)*_79)); +_7c=_7a*(w-_79*w); +w=_7b==1?w:w*(_7b-(_7b-1)*_79); +} +ir=this._createRenderer(_74,"vertical",this.verticalRenderer,"dojoxCalendarVertical"); +_d.set(ir.container,{"top":_74.start+"px","left":_7c+"%","width":w+"%","height":(_74.end-_74.start+1)+"px"}); +var _7d=this.isItemBeingEdited(_74); +var _7e=this.isItemSelected(_74); +var _7f=this.isItemHovered(_74); +var _80=this.isItemFocused(_74); +var _81=ir.renderer; +_81.set("hovered",_7f); +_81.set("selected",_7e); +_81.set("edited",_7d); +_81.set("focused",this.showFocus?_80:false); +_81.set("storeState",this.getItemStoreState(_74)); +_81.set("moveEnabled",this.isItemMoveEnabled(_74._item,"vertical")); +_81.set("resizeEnabled",this.isItemResizeEnabled(_74._item,"vertical")); +this.applyRendererZIndex(_74,ir,_7f,_7e,_7d,_80); +if(_81.updateRendering){ +_81.updateRendering(w,_74.end-_74.start+1); +} +}else{ +ir=this.decorationRendererManager.createRenderer(_74,"vertical",this.verticalDecorationRenderer,"dojoxCalendarDecoration"); +_d.set(ir.container,{"top":_74.start+"px","left":"0","width":"100%","height":(_74.end-_74.start+1)+"px"}); +} +_f.place(ir.container,_72); +_d.set(ir.container,"display","block"); +} +},_getCellAt:function(_82,_83,rtl){ +if((rtl==undefined||rtl==true)&&!this.isLeftToRight()){ +_83=this.renderData.columnCount-1-_83; +} +return this.gridTable.childNodes[0].childNodes[_82].childNodes[_83]; +},invalidateLayout:function(){ +_11("td",this.gridTable).forEach(function(td){ +_c.remove(td,"dojoxCalendarHiddenEvents"); +}); +this.inherited(arguments); +},_layoutBgItems:function(_84,col,_85,_86,_87){ +var _88={}; +for(var i=0;i<_87.length;i++){ +var _89=_87[i]; +var _8a=this.computeRangeOverlap(_84,_89.startTime,_89.endTime,_85,_86); +var _8b=_8a[0].getDate()-1; +var end; +if(this.isStartOfDay(_8a[1])){ +end=this._waDojoxAddIssue(_8a[1],"day",-1); +end=end.getDate()-1; +}else{ +end=_8a[1].getDate()-1; +} +for(var d=_8b;d<=end;d++){ +_88[d]=true; +} +} +for(var row in _88){ +if(_88[row]){ +var _8c=this._getCellAt(row,col,false); +_c.add(_8c,"dojoxCalendarHiddenEvents"); +} +} +},_sortItemsFunction:function(a,b){ +var res=this.dateModule.compare(a.startTime,b.startTime); +if(res==0){ +res=-1*this.dateModule.compare(a.endTime,b.endTime); +} +return this.isLeftToRight()?res:-res; +},getTime:function(e,x,y,_8d){ +if(e!=null){ +var _8e=_e.position(this.itemContainer,true); +if(e.touches){ +_8d=_8d==undefined?0:_8d; +x=e.touches[_8d].pageX-_8e.x; +y=e.touches[_8d].pageY-_8e.y; +}else{ +x=e.pageX-_8e.x; +y=e.pageY-_8e.y; +} +} +var r=_e.getContentBox(this.itemContainer); +if(!this.isLeftToRight()){ +x=r.w-x; +} +if(x<0){ +x=0; +}else{ +if(x>r.w){ +x=r.w-1; +} +} +if(y<0){ +y=0; +}else{ +if(y>r.h){ +y=r.h-1; +} +} +var col=Math.floor(x/(r.w/this.renderData.columnCount)); +var row=Math.floor(y/(r.h/this.renderData.maxDayCount)); +var _8f=null; +if(col1&&!this._isEditing){ +_6.stop(e); +return; +} +if(this._gridProps&&!this._isEditing){ +var _90={x:e.touches[0].screenX,y:e.touches[0].screenY}; +var p=this._edProps; +if(!p||p&&(Math.abs(_90.x-p.start.x)>25||Math.abs(_90.y-p.start.y)>25)){ +this._gridProps.moved=true; +var d=e.touches[0].screenY-this._gridProps.start; +var _91=this._gridProps.scrollTop-d; +var max=this.itemContainer.offsetHeight-this.scrollContainer.offsetHeight; +if(_91<0){ +this._gridProps.start=e.touches[0].screenY; +this._setScrollImpl(0); +this._gridProps.scrollTop=0; +}else{ +if(_91>max){ +this._gridProps.start=e.touches[0].screenY; +this._setScrollImpl(max); +this._gridProps.scrollTop=max; +}else{ +this._setScrollImpl(_91); +} +} +} +} +},_onGridTouchEnd:function(e){ +this.inherited(arguments); +var g=this._gridProps; +if(g){ +if(!this._isEditing){ +if(!g.moved){ +if(!g.fromItem&&!g.editingOnStart){ +this.selectFromEvent(e,null,null,true); +} +if(!g.fromItem){ +if(this._pendingDoubleTap&&this._pendingDoubleTap.grid){ +this._onGridDoubleClick({date:this.getTime(this._gridProps.event),triggerEvent:this._gridProps.event}); +clearTimeout(this._pendingDoubleTap.timer); +delete this._pendingDoubleTap; +}else{ +this._onGridClick({date:this.getTime(this._gridProps.event),triggerEvent:this._gridProps.event}); +this._pendingDoubleTap={grid:true,timer:setTimeout(_7.hitch(this,function(){ +delete this._pendingDoubleTap; +}),this.doubleTapDelay)}; +} +} +} +} +this._gridProps=null; +} +},_onColumnHeaderClick:function(e){ +this._dispatchCalendarEvt(e,"onColumnHeaderClick"); +},onColumnHeaderClick:function(e){ +},_onScrollTimer_tick:function(){ +this._setScrollImpl(this.scrollContainer.scrollTop+this._scrollProps.scrollStep); +},snapUnit:"day",snapSteps:1,minDurationUnit:"day",minDurationSteps:1,liveLayout:false,stayInView:true,allowStartEndSwap:true,allowResizeLessThan24H:false}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MonthColumnView.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MonthColumnView.js.uncompressed.js new file mode 100644 index 00000000..41c0c2c8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/MonthColumnView.js.uncompressed.js @@ -0,0 +1,1549 @@ +require({cache:{ +'url:dojox/calendar/templates/MonthColumnView.html':"
    \t\t\n\t
    \n\t\t
    \n\t
    \t\n\t
    \n\t\t
    \n\t
    \t\n\t
    \n\t\t
    \t\t\t\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \t\n
    \n"}}); +define("dojox/calendar/MonthColumnView", [ +"./ViewBase", +"dijit/_TemplatedMixin", +"./_ScrollBarBase", +"dojo/text!./templates/MonthColumnView.html", +"dojo/_base/declare", +"dojo/_base/event", +"dojo/_base/lang", +"dojo/_base/array", +"dojo/_base/sniff", +"dojo/_base/fx", +"dojo/_base/html", +"dojo/on", +"dojo/dom", +"dojo/dom-class", +"dojo/dom-style", +"dojo/dom-geometry", +"dojo/dom-construct", +"dojo/mouse", +"dojo/query", +"dojo/i18n", +"dojox/html/metrics"], + +function( + ViewBase, + _TemplatedMixin, + _ScrollBarBase, + template, + declare, + event, + lang, + arr, + has, + fx, + html, + on, + dom, + domClass, + domStyle, + domGeometry, + domConstruct, + mouse, + query, + i18n, + metrics){ + + /*===== + var __ColumnClickEventArgs = { + // summary: + // A column click event. + // index: Integer + // The column index. + // date: Date + // The date displayed by the column. + // triggerEvent: Event + // The origin event. + }; + =====*/ + + return declare("dojox.calendar.MonthColumnView", [ViewBase, _TemplatedMixin], { + + // summary: + // The month column view is a calendar view used to display a month per column where each cell of the column is a day. + + baseClass: "dojoxCalendarMonthColumnView", + + templateString: template, + + // viewKind: String + // Type of the view. Used by the calendar widget to determine how to configure the view. + // This view kind is "columns". + viewKind: "monthColumns", + + // scroll container is the focusable item to enable scrolling using up and down arrows + _setTabIndexAttr: "domNode", + + // renderData: Object + // The render data is the object that contains all the properties needed to render the component. + renderData: null, + + // startDate: Date + // The start date of the time interval displayed. + // If not set at initialization time, will be set to current day. + startDate: null, + + // columnCount: Integer + // The number of column to display (from the startDate). + columnCount: 6, + + // daySize: Integer + // The desired size in pixels of an hour on the screen. + // Note that the effective size may be different as the time slot size must be an integer. + daySize: 30, + + // showCellLabel: Boolean + // Whether display or not the grid cells label (usually the day of month). + showCellLabel: true, + + // showHiddenItems: Boolean + // Whether show or not the hidden items. + // By default the events that are shorter than a day are not displayed using vertical renderers by this widget. + // But the grid cells that contains one or several hidden items display a decoration. + showHiddenItems: true, + + // verticalRenderer: Class + // The class use to create vertical renderers. + verticalRenderer: null, + + // verticalDecorationRenderer: Class + // The class use to create vertical decoration renderers. + verticalDecorationRenderer: null, + + // percentOverlap: Integer + // The percentage of the renderer width used to superimpose one item renderer on another + // when two events are overlapping. + percentOverlap: 0, + + // horizontalGap: Integer + // The number of pixels between two item renderers. + horizontalGap: 4, + + // columnHeaderFormatLength: String + // Length of the column labels. Valid values are "wide" or "abbr". + columnHeaderFormatLength: null, + + // gridCellDatePattern: String + // The date pattern of the cell labels. By default a custom function is used to compute the label. + gridCellDatePattern: null, + + // roundToDay: [private] Boolean + roundToDay: true, + + // _layoutUnit: String + // Unit of layout: each column is displaying a month. + _layoutUnit: "month", + + _columnHeaderHandlers: null, + + constructor: function(){ + this.invalidatingProperties = ["columnCount", "startDate", "daySize", "percentOverlap", "verticalRenderer", "verticalDecorationRenderer", + "columnHeaderDatePattern", "horizontalGap", "scrollBarRTLPosition", "itemToRendererKindFunc", + "layoutPriorityFunction", "textDir", "items", "showCellLabel", "showHiddenItems"]; + this._columnHeaderHandlers = []; + }, + + postCreate: function(){ + this.inherited(arguments); + this.keyboardUpDownUnit = "day"; + this.keyboardUpDownSteps = 1; + this.keyboardLeftRightUnit = "month"; + this.keyboardLeftRightSteps = 1; + this.allDayKeyboardUpDownUnit = "day"; + this.allDayKeyboardUpDownSteps = 1; + this.allDayKeyboardLeftRightUnit = "month"; + this.allDayKeyboardLeftRightSteps = 1; + }, + + destroy: function(preserveDom){ + this._cleanupColumnHeader(); + if(this.scrollBar){ + this.scrollBar.destroy(preserveDom); + } + this.inherited(arguments); + }, + + _scrollBar_onScroll: function(value){ + // tags: + // private + this.scrollContainer.scrollTop = value; + }, + + buildRendering: function(){ + // tags: + // private + this.inherited(arguments); + if(this.vScrollBar){ + this.scrollBar = new _ScrollBarBase( + {content: this.vScrollBarContent}, + this.vScrollBar); + + this.scrollBar.on("scroll", lang.hitch(this, this._scrollBar_onScroll)); + this._viewHandles.push( + on(this.scrollContainer, mouse.wheel, + dojo.hitch(this, this._mouseWheelScrollHander))); + } + }, + + postscript: function(){ + this.inherited(arguments); + this._initialized = true; + if(!this.invalidRendering){ + this.refreshRendering(); + } + }, + + _setVerticalRendererAttr: function(value){ + this._destroyRenderersByKind("vertical"); + this._set("verticalRenderer", value); + }, + + _createRenderData: function(){ + + var rd = {}; + + rd.daySize = this.get("daySize"); + rd.scrollbarWidth = metrics.getScrollbar().w + 1; + + rd.dateLocaleModule = this.dateLocaleModule; + rd.dateClassObj = this.dateClassObj; + rd.dateModule = this.dateModule; // arithmetics on Dates + + rd.dates = []; + + rd.columnCount = this.get("columnCount"); + + var d = this.get("startDate"); + + if (d == null){ + d = new rd.dateClassObj(); + } + + d = this.floorToMonth(d, false, rd); + + this.startDate = d; + var currentMonth = d.getMonth(); + var maxDayCount = 0; + + for(var col = 0; col < rd.columnCount ; col++){ + + var dates = []; + rd.dates.push(dates); + + while(d.getMonth() == currentMonth){ + dates.push(d); + d = this.addAndFloor(d, "day", 1); + } + + currentMonth = d.getMonth(); + + if(maxDayCount < dates.length){ + maxDayCount = dates.length; + } + } + + rd.startTime = new rd.dateClassObj(rd.dates[0][0]); + rd.endTime = new rd.dateClassObj(dates[dates.length-1]); + rd.endTime = rd.dateModule.add(rd.endTime, "day", 1); + + rd.maxDayCount = maxDayCount; + rd.sheetHeight = rd.daySize * maxDayCount; + + if(this.displayedItemsInvalidated && !this._isEditing){ + this.displayedItemsInvalidated = false; + this._computeVisibleItems(rd); + + }else if (this.renderData){ + rd.items = this.renderData.items; + } + + if(this.displayedDecorationItemsInvalidated){ + // while editing in no live layout we must not to recompute items (duplicate renderers) + rd.decorationItems = this.decorationStoreManager._computeVisibleItems(rd); + + }else if (this.renderData){ + rd.decorationItems = this.renderData.decorationItems; + } + + return rd; + }, + + _validateProperties: function() { + + this.inherited(arguments); + + if (this.columnCount<1 || isNaN(this.columnCount)){ + this.columnCount = 1; + } + + if(this.daySize<5 || isNaN(this.daySize)){ + this.daySize = 5; + } + + }, + + _setStartDateAttr: function(value){ + this.displayedItemsInvalidated = true; + this._set("startDate", value); + }, + + _setColumnCountAttr: function(value){ + this.displayedItemsInvalidated = true; + this._set("columnCount", value); + }, + + __fixEvt:function(e){ + e.sheet = "primary"; + e.source = this; + return e; + }, + + ////////////////////////////////////////// + // + // Formatting functions + // + ////////////////////////////////////////// + + _formatColumnHeaderLabel: function(/*Date*/d){ + // summary: + // Computes the column header label for the specified date. + // d: Date + // The date to format + // tags: + // protected + + var len = "wide"; + + if(this.columnHeaderFormatLength){ + len = this.columnHeaderFormatLength; + } + + var months = this.renderData.dateLocaleModule.getNames("months", len, "standAlone"); + + return months[d.getMonth()]; + }, + + // gridCellDatePattern: String + // Custom date/time pattern for cell labels to override default one coming from the CLDR. + // See dojo/date/locale documentation for format string. + gridCellDatePattern: null, + + _formatGridCellLabel: function(d, row, col){ + // summary: + // Computes the column header label for the specified date. + // By default a formatter is used, optionally the gridCellDatePattern + // property can be used to set a custom date pattern to the formatter. + // d: Date + // The date to format. + // row: Integer + // The row that displays the current date. + // col: Integer + // The column that displays the current date. + // tags: + // protected + + var format, rb; + + if(d == null){ + return ""; + } + + if(this.gridCellPattern){ + return this.renderData.dateLocaleModule.format(d, { + selector: 'date', + datePattern: this.gridCellDatePattern + }); + }else{ + rb = i18n.getLocalization("dojo.cldr", this._calendar); + format = rb["dateFormatItem-d"]; + + var days = this.renderData.dateLocaleModule.getNames("days", "abbr", "standAlone"); + + return days[d.getDay()].substring(0, 1) + " " + this.renderData.dateLocaleModule.format(d, { + selector: 'date', + datePattern: format + }); + } + }, + + ////////////////////////////////////////// + // + // Time of day management + // + ////////////////////////////////////////// + + // scrollPosition: Integer + // The scroll position of the view. + scrollPosition: null, + + // scrollBarRTLPosition: String + // Position of the scroll bar in right-to-left display. + // Valid values are "left" and "right", default value is "left". + scrollBarRTLPosition: "left", + + _setScrollPositionAttr: function(value){ + this._setScrollPosition(value.date, value.duration, value.easing); + }, + + _getScrollPositionAttr: function(){ + return {date: (this.scrollContainer.scrollTop / this.daySize) + 1}; + }, + + _setScrollPosition: function(date, maxDuration, easing){ + // tags: + // private + + if(date < 1){ + date = 1; + }else if(date>31){ + date = 31; + } + + var position = (date-1) * this.daySize; + + if(maxDuration) { + + if(this._scrollAnimation){ + this._scrollAnimation.stop(); + } + + var duration = Math.abs(((position - this.scrollContainer.scrollTop) * maxDuration) / this.renderData.sheetHeight); + + this._scrollAnimation = new fx.Animation({ + curve: [this.scrollContainer.scrollTop, position], + duration: duration, + easing: easing, + onAnimate: lang.hitch(this, function(position) { + this._setScrollImpl(position); + }) + }); + + this._scrollAnimation.play(); + + }else{ + this._setScrollImpl(position); + } + }, + + _setScrollImpl: function(v){ + // tags: + // private + + this.scrollContainer.scrollTop = v; + if(this.scrollBar){ + this.scrollBar.set("value", v); + } + }, + + ensureVisibility: function(start, end, visibilityTarget, margin, duration){ + + // summary: + // Scrolls the view if the [start, end] time range is not visible or only partially visible. + // start: Date + // Start time of the range of interest. + // end: Date + // End time of the range of interest. + // margin: Integer + // Margin in minutes around the time range. + // visibilityTarget: String + // The end(s) of the time range to make visible. + // Valid values are: "start", "end", "both". + // duration: Number + // Optional, the maximum duration of the scroll animation. + + margin = margin == undefined ? 1 : margin; + + if(this.scrollable && this.autoScroll){ + + var s = start.getDate() - margin; // -1 because day of months starts at 1 and not 0 + if(this.isStartOfDay(end)){ + end = this._waDojoxAddIssue(end, "day", -1); + } + var e = end.getDate() + margin; + + var viewStart = this.get("scrollPosition").date; + var r = domGeometry.getContentBox(this.scrollContainer); + var viewEnd = (this.get("scrollPosition").date + (r.h/this.daySize)); + + var visible = false; + var target = null; + + switch(visibilityTarget){ + case "start": + visible = s >= viewStart && s <= viewEnd; + target = s ; + break; + case "end": + visible = e >= viewStart && e <= viewEnd; + target = e - (viewEnd - viewStart); + break; + case "both": + visible = s >= viewStart && e <= viewEnd; + target = s; + break; + } + + if(!visible){ + this._setScrollPosition(target, duration); + } + } + }, + + scrollView: function(dir){ + // summary: + // Scrolls the view to the specified direction of one time slot duration. + // dir: Integer + // Direction of the scroll. Valid values are -1 and 1. + // + var pos = this.get("scrollPosition").date + dir; + this._setScrollPosition(pos); + }, + + _mouseWheelScrollHander: function(e){ + // summary: + // Mouse wheel handler. + // tags: + // protected + this.scrollView(e.wheelDelta > 0 ? -1 : 1); + }, + + ////////////////////////////////////////// + // + // HTML structure management + // + ////////////////////////////////////////// + + refreshRendering: function(){ + if(!this._initialized){ + return; + } + + this._validateProperties(); + + var oldRd = this.renderData; + var rd = this.renderData = this._createRenderData(); + + this._createRendering(rd, oldRd); + this._layoutDecorationRenderers(rd); + this._layoutRenderers(rd); + }, + + _createRendering: function(/*Object*/renderData, /*Object*/oldRenderData){ + // tags: + // private + domStyle.set(this.sheetContainer, "height", renderData.sheetHeight + "px"); + // padding for the scroll bar. + this._configureScrollBar(renderData); + this._buildColumnHeader(renderData, oldRenderData); + this._buildGrid(renderData, oldRenderData); + this._buildItemContainer(renderData, oldRenderData); + }, + + _configureScrollBar: function(renderData){ + // summary: + // Sets the scroll bar size and position. + // renderData: Object + // The render data. + // tags: + // protected + + if(has("ie") && this.scrollBar){ + domStyle.set(this.scrollBar.domNode, "width", (renderData.scrollbarWidth + 1) + "px"); + } + + var atRight = this.isLeftToRight() ? true : this.scrollBarRTLPosition == "right"; + var rPos = atRight ? "right" : "left"; + var lPos = atRight? "left" : "right"; + + if(this.scrollBar){ + this.scrollBar.set("maximum", renderData.sheetHeight); + domStyle.set(this.scrollBar.domNode, rPos, 0); + domStyle.set(this.scrollBar.domNode, lPos, "auto"); + } + domStyle.set(this.scrollContainer, rPos, renderData.scrollbarWidth + "px"); + domStyle.set(this.scrollContainer, lPos, "0"); + domStyle.set(this.columnHeader, rPos, renderData.scrollbarWidth + "px"); + domStyle.set(this.columnHeader, lPos, "0"); + if(this.buttonContainer && this.owner != null && this.owner.currentView == this){ + domStyle.set(this.buttonContainer, rPos, renderData.scrollbarWidth + "px"); + domStyle.set(this.buttonContainer, lPos, "0"); + } + }, + + _columnHeaderClick: function(e){ + // tags: + // private + + event.stop(e); + var index = query("td", this.columnHeaderTable).indexOf(e.currentTarget); + this._onColumnHeaderClick({ + index: index, + date: this.renderData.dates[index][0], + triggerEvent: e + }); + }, + + _buildColumnHeader: function(renderData, oldRenderData){ + // summary: + // Creates incrementally the HTML structure of the column header and configures its content. + // + // renderData: + // The render data to display. + // + // oldRenderData: + // The previously render data displayed, if any. + // tags: + // private + + + var table = this.columnHeaderTable; + + if (!table){ + return; + } + + var count = renderData.columnCount - (oldRenderData ? oldRenderData.columnCount : 0); + + if(has("ie") == 8){ + // workaround Internet Explorer 8 bug. + // if on the table, width: 100% and table-layout: fixed are set + // and columns are removed, width of remaining columns is not + // recomputed: must rebuild all. + if(this._colTableSave == null){ + this._colTableSave = lang.clone(table); + }else if(count < 0){ + this._cleanupColumnHeader(); + this.columnHeader.removeChild(table); + domConstruct.destroy(table); + table = lang.clone(this._colTableSave); + this.columnHeaderTable = table; + this.columnHeader.appendChild(table); + count = renderData.columnCount; + } + + } // else incremental dom add/remove for real browsers. + + var tbodies = query("tbody", table); + + var trs = query("tr", table); + var tbody, tr, td; + + if (tbodies.length == 1){ + tbody = tbodies[0]; + }else{ + tbody = html.create("tbody", null, table); + } + + if (trs.length == 1){ + tr = trs[0]; + }else{ + tr = domConstruct.create("tr", null, tbody); + } + + // Build HTML structure (incremental) + if(count > 0){ // creation + for(var i=0; i < count; i++){ + + td = domConstruct.create("td", null, tr); + + var h = []; + h.push(on(td, "click", lang.hitch(this, this._columnHeaderClick))); + + if(has("touch-events")){ + h.push(on(td, "touchstart", function(e){ + event.stop(e); + domClass.add(e.currentTarget, "Active"); + })); + + h.push(on(td, "touchend", function(e){ + event.stop(e); + domClass.remove(e.currentTarget, "Active"); + })); + }else{ + h.push(on(td, "mousedown", function(e){ + event.stop(e); + domClass.add(e.currentTarget, "Active"); + })); + + h.push(on(td, "mouseup", function(e){ + event.stop(e); + domClass.remove(e.currentTarget, "Active"); + })); + + h.push(on(td, "mouseover", function(e){ + event.stop(e); + domClass.add(e.currentTarget, "Hover"); + })); + + h.push(on(td, "mouseout", function(e){ + event.stop(e); + domClass.remove(e.currentTarget, "Hover"); + })); + + } + + this._columnHeaderHandlers.push(h); + } + + }else{ // deletion + count = -count; + for(var i=0; i < count; i++){ + td = tr.lastChild; + tr.removeChild(td); + domConstruct.destroy(td); + var list = this._columnHeaderHandlers.pop(); + while(list.length>0){ + list.pop().remove(); + } + } + } + + // fill & configure + query("td", table).forEach(function(td, i){ + td.className = ""; + if(i == 0){ + domClass.add(td, "first-child"); + }else if(i == this.renderData.columnCount-1){ + domClass.add(td, "last-child"); + } + var d = renderData.dates[i][0]; + this._setText(td, this._formatColumnHeaderLabel(d)); + this.styleColumnHeaderCell(td, d, renderData); + }, this); + + }, + + _cleanupColumnHeader: function(){ + // tags: + // private + + while(this._columnHeaderHandlers.length > 0){ + var list = this._columnHeaderHandlers.pop(); + while(list.length > 0){ + list.pop().remove(); + } + } + }, + + styleColumnHeaderCell: function(node, date, renderData){ + // summary: + // Styles the CSS classes to the node that displays a column header cell. + // By default this method is does nothing and is designed to be overridden. + // node: Node + // The DOM node that displays the column in the grid. + // date: Date + // The date displayed by this column + // renderData: Object + // The render data. + // tags: + // protected + + }, + + _buildGrid: function (renderData, oldRenderData){ + // summary: + // Creates incrementally the HTML structure of the grid and configures its content. + // + // renderData: + // The render data to display. + // + // oldRenderData: + // The previously render data displayed, if any. + // tags: + // private + + + var table = this.gridTable; + + if(!table){ + return; + } + + domStyle.set(table, "height", renderData.sheetHeight + "px"); + + var rowDiff = renderData.maxDayCount - (oldRenderData ? oldRenderData.maxDayCount : 0); + var addRows = rowDiff > 0; + + var colDiff = renderData.columnCount - (oldRenderData ? oldRenderData.columnCount : 0); + + if(has("ie") == 8){ + // workaround Internet Explorer 8 bug. + // if on the table, width: 100% and table-layout: fixed are set + // and columns are removed, width of remaining columns is not + // recomputed: must rebuild all. + if(this._gridTableSave == null){ + this._gridTableSave = lang.clone(table); + }else if(colDiff < 0){ + this.grid.removeChild(table); + domConstruct.destroy(table); + table = lang.clone(this._gridTableSave); + this.gridTable = table; + this.grid.appendChild(table); + colDiff = renderData.columnCount; + rowDiff = renderData.maxDayCount; + addRows = true; + } + } + + var tbodies = query("tbody", table); + var tbody; + + if(tbodies.length == 1){ + tbody = tbodies[0]; + }else{ + tbody = domConstruct.create("tbody", null, table); + } + + // Build rows HTML structure (incremental) + if(addRows){ // creation + for(var i=0; i0; + colDiff = addCols ? colDiff : -colDiff; + + query("tr", table).forEach(function(tr, i){ + + if(addCols){ // creation + var len = i >= rowIndex ? renderData.columnCount : colDiff; + for(var i=0; i0){ // creation + for(var i=0; i < count; i++){ + td = domConstruct.create("td", null, tr); + domConstruct.create("div", {"className": "dojoxCalendarContainerColumn"}, td); + } + }else{ // deletion + count = -count; + for(var i=0; i < count; i++){ + tr.removeChild(tr.lastChild); + } + } + + query("td>div", table).forEach(function(div, i){ + + domStyle.set(div, { + "height": renderData.sheetHeight + "px" + }); + bgCols.push(div); + }, this); + + renderData.cells = bgCols; + }, + + /////////////////////////////////////////////////////////////// + // + // Layout + // + /////////////////////////////////////////////////////////////// + + _overlapLayoutPass2: function(lanes){ + // summary: + // Second pass of the overlap layout (optional). Compute the extent of each layout item. + // lanes: + // The array of lanes. + // tags: + // private + var i,j,lane, layoutItem; + // last lane, no extent possible + lane = lanes[lanes.length-1]; + + for(j = 0; j < lane.length; j++){ + lane[j].extent = 1; + } + + for(i=0; i= 1440 ? "vertical" : null; + }, + + _layoutRenderers: function(renderData){ + this.hiddenEvents = {}; + this.inherited(arguments); + }, + + _layoutInterval: function(/*Object*/renderData, /*Integer*/index, /*Date*/start, /*Date*/end, /*Object[]*/items, /*String*/itemsType){ + // tags: + // private + + var verticalItems = []; + var hiddenItems = []; + renderData.colW = this.itemContainer.offsetWidth / renderData.columnCount; + + if(itemsType === "dataItems"){ + + for(var i=0; i 0){ + this._layoutVerticalItems(renderData, index, start, end, verticalItems, itemsType); + } + if(hiddenItems.length > 0){ + this._layoutBgItems(renderData, index, start, end, hiddenItems); + } + }else{ // itemsType === "decorationItems" + this._layoutVerticalItems(renderData, index, start, end, items, itemsType); + } + }, + + _dateToYCoordinate: function(renderData, d, start){ + // tags: + // private + + var pos = 0; + if(start || d.getHours() != 0 || d.getMinutes() != 0){ + pos = (d.getDate()-1) * this.renderData.daySize; + }else{ + var d2 = this._waDojoxAddIssue(d, "day", -1); + pos = this.renderData.daySize + ((d2.getDate()-1) * this.renderData.daySize); + } + pos += (d.getHours()*60+d.getMinutes())*this.renderData.daySize/1440; + + return pos; + }, + + _layoutVerticalItems: function(/*Object*/renderData, /*Integer*/index, /*Date*/startTime, /*Date*/endTime, /*Object[]*/items, /*String*/itemsType){ + // tags: + // private + + if(this.verticalRenderer == null){ + return; + } + + var cell = renderData.cells[index]; + var layoutItems = []; + + // step 1 compute projected position and size + for(var i = 0; i < items.length; i++){ + + var item = items[i]; + var overlap = this.computeRangeOverlap(renderData, item.startTime, item.endTime, startTime, endTime); + + var top = this._dateToYCoordinate(renderData, overlap[0], true); + var bottom = this._dateToYCoordinate(renderData, overlap[1], false); + + if (bottom > top){ + var litem = lang.mixin({ + start: top, + end: bottom, + range: overlap, + item: item + }, item); + layoutItems.push(litem); + } + } + + + + // step 2: compute overlapping layout + var numLanes = itemsType === "dataItems" ? this.computeOverlapping(layoutItems, this._overlapLayoutPass2).numLanes : 1; + + var hOverlap = this.percentOverlap / 100; + + // step 3: create renderers and apply layout + for(i=0; i r.w){ + x = r.w-1; + } + + if (y < 0){ + y = 0; + }else if(y > r.h){ + y = r.h-1; + } + + var col = Math.floor(x / (r.w / this.renderData.columnCount)); + var row = Math.floor(y / (r.h / this.renderData.maxDayCount)); + + var date = null; + if(col < this.renderData.dates.length && + row < this.renderData.dates[col].length){ + date = this.newDate(this.renderData.dates[col][row]); + } + + return date; + }, + + /////////////////////////////////////////////////////////////// + // + // Events + // + /////////////////////////////////////////////////////////////// + + _onGridMouseUp: function(e){ + + // tags: + // private + + + this.inherited(arguments); + + if (this._gridMouseDown) { + this._gridMouseDown = false; + + this._onGridClick({ + date: this.getTime(e), + triggerEvent: e + }); + } + }, + + _onGridTouchStart: function(e){ + // tags: + // private + + + this.inherited(arguments); + + var g = this._gridProps; + + g.moved= false; + g.start= e.touches[0].screenY; + g.scrollTop= this.scrollContainer.scrollTop; + }, + + _onGridTouchMove: function(e){ + // tags: + // private + + this.inherited(arguments); + + if (e.touches.length > 1 && !this._isEditing){ + event.stop(e); + return; + } + + if(this._gridProps && !this._isEditing){ + + var touch = {x: e.touches[0].screenX, y: e.touches[0].screenY}; + + var p = this._edProps; + + if (!p || p && + (Math.abs(touch.x - p.start.x) > 25 || + Math.abs(touch.y - p.start.y) > 25)) { + + this._gridProps.moved = true; + var d = e.touches[0].screenY - this._gridProps.start; + var value = this._gridProps.scrollTop - d; + var max = this.itemContainer.offsetHeight - this.scrollContainer.offsetHeight; + if (value < 0){ + this._gridProps.start = e.touches[0].screenY; + this._setScrollImpl(0); + this._gridProps.scrollTop = 0; + }else if(value > max){ + this._gridProps.start = e.touches[0].screenY; + this._setScrollImpl(max); + this._gridProps.scrollTop = max; + }else{ + this._setScrollImpl(value); + } + } + } + }, + + _onGridTouchEnd: function(e){ + // tags: + // private + + //event.stop(e); + + this.inherited(arguments); + + var g = this._gridProps; + + if(g){ + if(!this._isEditing){ + if(!g.moved){ + + // touched on grid and on touch start editing was ongoing. + if(!g.fromItem && !g.editingOnStart){ + this.selectFromEvent(e, null, null, true); + } + + if(!g.fromItem){ + + if(this._pendingDoubleTap && this._pendingDoubleTap.grid){ + + this._onGridDoubleClick({ + date: this.getTime(this._gridProps.event), + triggerEvent: this._gridProps.event + }); + + clearTimeout(this._pendingDoubleTap.timer); + + delete this._pendingDoubleTap; + + }else{ + + this._onGridClick({ + date: this.getTime(this._gridProps.event), + triggerEvent: this._gridProps.event + }); + + this._pendingDoubleTap = { + grid: true, + timer: setTimeout(lang.hitch(this, function(){ + delete this._pendingDoubleTap; + }), this.doubleTapDelay) + }; + } + } + } + } + + this._gridProps = null; + } + }, + + _onColumnHeaderClick: function(e){ + // tags: + // private + + this._dispatchCalendarEvt(e, "onColumnHeaderClick"); + }, + + onColumnHeaderClick: function(e){ + // summary: + // Event dispatched when a column header cell is dispatched. + // e: __ColumnClickEventArgs + // tags: + // callback + + }, + + + /////////////////////////////////////////////////////////////// + // + // View limits + // + /////////////////////////////////////////////////////////////// + + _onScrollTimer_tick: function(){ + // tags: + // private + + this._setScrollImpl(this.scrollContainer.scrollTop + this._scrollProps.scrollStep); + }, + + //////////////////////////////////////////// + // + // Editing + // + /////////////////////////////////////////// + + snapUnit: "day", + snapSteps: 1, + minDurationUnit: "day", + minDurationSteps: 1, + liveLayout: false, + stayInView: true, + allowStartEndSwap: true, + allowResizeLessThan24H: false + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Mouse.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Mouse.js new file mode 100644 index 00000000..7a390da2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Mouse.js @@ -0,0 +1,136 @@ +//>>built +define("dojox/calendar/Mouse",["dojo/_base/array","dojo/_base/declare","dojo/_base/event","dojo/_base/lang","dojo/_base/window","dojo/dom-geometry","dojo/mouse","dojo/on","dojo/keys"],function(_1,_2,_3,_4,_5,_6,_7,on,_8){ +return _2("dojox.calendar.Mouse",null,{triggerExtent:3,postMixInProperties:function(){ +this.inherited(arguments); +this.on("rendererCreated",_4.hitch(this,function(_9){ +var _a=_9.renderer.renderer; +this.own(on(_a.domNode,"click",_4.hitch(this,function(e){ +_3.stop(e); +this._onItemClick({triggerEvent:e,renderer:_a,item:_a.item._item}); +}))); +this.own(on(_a.domNode,"dblclick",_4.hitch(this,function(e){ +_3.stop(e); +this._onItemDoubleClick({triggerEvent:e,renderer:_a,item:_a.item._item}); +}))); +this.own(on(_a.domNode,"contextmenu",_4.hitch(this,function(e){ +this._onItemContextMenu({triggerEvent:e,renderer:_a,item:_a.item._item}); +}))); +if(_a.resizeStartHandle){ +this.own(on(_a.resizeStartHandle,"mousedown",_4.hitch(this,function(e){ +this._onRendererHandleMouseDown(e,_a,"resizeStart"); +}))); +} +if(_a.moveHandle){ +this.own(on(_a.moveHandle,"mousedown",_4.hitch(this,function(e){ +this._onRendererHandleMouseDown(e,_a,"move"); +}))); +} +if(_a.resizeEndHandle){ +this.own(on(_a.resizeEndHandle,"mousedown",_4.hitch(this,function(e){ +this._onRendererHandleMouseDown(e,_a,"resizeEnd"); +}))); +} +this.own(on(_a.domNode,"mousedown",_4.hitch(this,function(e){ +this._rendererMouseDownHandler(e,_a); +}))); +this.own(on(_9.renderer.container,_7.enter,_4.hitch(this,function(e){ +if(!_a.item){ +return; +} +if(!this._editingGesture){ +this._setHoveredItem(_a.item.item,_a); +this._onItemRollOver(this.__fixEvt({item:_a.item._item,renderer:_a,triggerEvent:e})); +} +}))); +this.own(on(_a.domNode,_7.leave,_4.hitch(this,function(e){ +if(!_a.item){ +return; +} +if(!this._editingGesture){ +this._setHoveredItem(null); +this._onItemRollOut(this.__fixEvt({item:_a.item._item,renderer:_a,triggerEvent:e})); +} +}))); +})); +},_onItemRollOver:function(e){ +this._dispatchCalendarEvt(e,"onItemRollOver"); +},onItemRollOver:function(e){ +},_onItemRollOut:function(e){ +this._dispatchCalendarEvt(e,"onItemRollOut"); +},onItemRollOut:function(e){ +},_rendererMouseDownHandler:function(e,_b){ +_3.stop(e); +var _c=_b.item._item; +this.selectFromEvent(e,_c,_b,true); +if(this._setTabIndexAttr){ +this[this._setTabIndexAttr].focus(); +} +},_onRendererHandleMouseDown:function(e,_d,_e){ +_3.stop(e); +this.showFocus=false; +var _f=_d.item; +var _10=_f.item; +if(!this.isItemBeingEdited(_10)){ +if(this._isEditing){ +this._endItemEditing("mouse",false); +} +this.selectFromEvent(e,_d.item._item,_d,true); +if(this._setTabIndexAttr){ +this[this._setTabIndexAttr].focus(); +} +this._edProps={editKind:_e,editedItem:_10,rendererKind:_d.rendererKind,tempEditedItem:_10,liveLayout:this.liveLayout}; +this.set("focusedItem",this._edProps.editedItem); +} +var _11=[]; +_11.push(on(_5.doc,"mouseup",_4.hitch(this,this._editingMouseUpHandler))); +_11.push(on(_5.doc,"mousemove",_4.hitch(this,this._editingMouseMoveHandler))); +var p=this._edProps; +p.handles=_11; +p.eventSource="mouse"; +p.editKind=_e; +this._startPoint={x:e.screenX,y:e.screenY}; +},_editingMouseMoveHandler:function(e){ +var p=this._edProps; +if(this._editingGesture){ +if(!this._autoScroll(e.pageX,e.pageY,true)){ +this._moveOrResizeItemGesture([this.getTime(e)],"mouse",e,this.getSubColumn(e)); +} +}else{ +if(Math.abs(this._startPoint.x-e.screenX)>=this.triggerExtent||Math.abs(this._startPoint.y-e.screenY)>=this.triggerExtent){ +if(!this._isEditing){ +this._startItemEditing(p.editedItem,"mouse"); +} +p=this._edProps; +this._startItemEditingGesture([this.getTime(e)],p.editKind,"mouse",e); +} +} +},_editingMouseUpHandler:function(e){ +var p=this._edProps; +this._stopAutoScroll(); +if(this._isEditing){ +if(this._editingGesture){ +this._endItemEditingGesture("mouse",e); +} +this._endItemEditing("mouse",false); +}else{ +_1.forEach(p.handles,function(_12){ +_12.remove(); +}); +} +},_autoScroll:function(_13,_14,_15){ +if(!this.scrollable||!this.autoScroll){ +return false; +} +var _16=_6.position(this.scrollContainer,true); +var p=_15?_14-_16.y:_13-_16.x; +var max=_15?_16.h:_16.w; +if(p<0||p>max){ +var _17=Math.floor((p<0?p:p-max)/2)/3; +this._startAutoScroll(_17); +return true; +}else{ +this._stopAutoScroll(); +} +return false; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Mouse.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Mouse.js.uncompressed.js new file mode 100644 index 00000000..24618abd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Mouse.js.uncompressed.js @@ -0,0 +1,313 @@ +define("dojox/calendar/Mouse", [ + "dojo/_base/array", + "dojo/_base/declare", + "dojo/_base/event", + "dojo/_base/lang", + "dojo/_base/window", + "dojo/dom-geometry", + "dojo/mouse", + "dojo/on", + "dojo/keys"], + +function( + arr, + declare, + event, + lang, + win, + domGeometry, + mouse, + on, + keys){ + + /*===== + var __ItemMouseEventArgs = { + // summary: + // The event dispatched when an item is clicked, double-clicked or context-clicked. + // item: Object + // The item clicked. + // renderer: dojox/calendar/_RendererMixin + // The item renderer clicked. + // triggerEvent: Event + // The event at the origin of this event. + }; + =====*/ + + return declare("dojox.calendar.Mouse", null, { + + // summary: + // This plugin is managing the mouse interactions on item renderers displayed by a calendar view. + + // triggerExtent: Number + // The distance in pixels along the vertical or horizontal axis to cover with the + // mouse button down before triggering the editing gesture. + triggerExtent: 3, + + postMixInProperties: function(){ + this.inherited(arguments); + + this.on("rendererCreated", lang.hitch(this, function(irEvent){ + + var renderer = irEvent.renderer.renderer; + + this.own(on(renderer.domNode, "click", lang.hitch(this, function(e){ + event.stop(e); + this._onItemClick({ + triggerEvent: e, + renderer: renderer, + item: renderer.item._item + }); + }))); + + this.own(on(renderer.domNode, "dblclick", lang.hitch(this, function(e){ + event.stop(e); + this._onItemDoubleClick({ + triggerEvent: e, + renderer: renderer, + item: renderer.item._item + }); + }))); + + this.own(on(renderer.domNode, "contextmenu", lang.hitch(this, function(e){ + this._onItemContextMenu({ + triggerEvent: e, + renderer: renderer, + item:renderer.item._item + }); + }))); + + if(renderer.resizeStartHandle){ + this.own(on(renderer.resizeStartHandle, "mousedown", lang.hitch(this, function(e){ + this._onRendererHandleMouseDown(e, renderer, "resizeStart"); + }))); + } + + if(renderer.moveHandle){ + this.own(on(renderer.moveHandle, "mousedown", lang.hitch(this, function(e){ + this._onRendererHandleMouseDown(e, renderer, "move"); + }))); + + } + + if(renderer.resizeEndHandle){ + this.own(on(renderer.resizeEndHandle, "mousedown", lang.hitch(this, function(e){ + this._onRendererHandleMouseDown(e, renderer, "resizeEnd"); + }))); + } + + this.own(on(renderer.domNode, "mousedown", lang.hitch(this, function(e){ + this._rendererMouseDownHandler(e, renderer); + }))); + + + this.own(on(irEvent.renderer.container, mouse.enter, lang.hitch(this, function(e){ + if(!renderer.item) return; + + if(!this._editingGesture){ + this._setHoveredItem(renderer.item.item, renderer); + this._onItemRollOver(this.__fixEvt({ + item: renderer.item._item, + renderer: renderer, + triggerEvent: e + })); + } + }))); + + this.own(on(renderer.domNode, mouse.leave, lang.hitch(this, function(e){ + if(!renderer.item) return; + if(!this._editingGesture){ + this._setHoveredItem(null); + + this._onItemRollOut(this.__fixEvt({ + item: renderer.item._item, + renderer: renderer, + triggerEvent: e + })); + } + }))); + + })); + }, + + _onItemRollOver: function(e){ + // tags: + // private + + this._dispatchCalendarEvt(e, "onItemRollOver"); + }, + + onItemRollOver: function(e){ + // summary: + // Event dispatched when the mouse cursor in going over an item renderer. + // e: __ItemMouseEventArgs + // The event dispatched when the mouse cursor enters in the item renderer. + // tags: + // callback + + }, + + _onItemRollOut: function(e){ + // tags: + // private + + this._dispatchCalendarEvt(e, "onItemRollOut"); + }, + + onItemRollOut: function(e){ + // summary: + // Event dispatched when the mouse cursor in leaving an item renderer. + // e: __ItemMouseEventArgs + // The event dispatched when the mouse cursor enters in the item renderer. + // tags: + // protected + + }, + + _rendererMouseDownHandler: function(e, renderer){ + + // summary: + // Callback if the user clicked on the item renderer but not on a handle. + // Manages item selection. + // tags: + // private + + event.stop(e); + + var item = renderer.item._item; + + this.selectFromEvent(e, item, renderer, true); + + if(this._setTabIndexAttr){ + this[this._setTabIndexAttr].focus(); + } + }, + + _onRendererHandleMouseDown: function(e, renderer, editKind){ + // summary: + // Callback if the user clicked on a handle of an item renderer. + // Manages item selection and editing gesture. If editing is not allowed, + // resize handles are not displayed and so this callback will never be called. + // In that case selected is managed by the _rendererMouseDownHandler function. + // tags: + // private + + + event.stop(e); + + this.showFocus = false; + + // save item here as calling endItemEditing may call a relayout and changes the item. + var ritem = renderer.item; + var item = ritem.item; + + if(!this.isItemBeingEdited(item)){ + + if(this._isEditing){ + this._endItemEditing("mouse", false); + } + + this.selectFromEvent(e, renderer.item._item, renderer, true); + + if(this._setTabIndexAttr){ + this[this._setTabIndexAttr].focus(); + } + + this._edProps = { + editKind: editKind, + editedItem: item, + rendererKind: renderer.rendererKind, + tempEditedItem: item, + liveLayout: this.liveLayout + }; + + this.set("focusedItem", this._edProps.editedItem); + } + + var handles = []; + handles.push(on(win.doc, "mouseup", lang.hitch(this, this._editingMouseUpHandler))); + handles.push(on(win.doc, "mousemove", lang.hitch(this, this._editingMouseMoveHandler))); + + var p = this._edProps; + p.handles = handles; + p.eventSource = "mouse"; + p.editKind = editKind; + + this._startPoint = {x: e.screenX, y: e.screenY}; + }, + + _editingMouseMoveHandler: function(e){ + // tags: + // private + + var p = this._edProps; + + if(this._editingGesture){ + + if(!this._autoScroll(e.pageX, e.pageY, true)){ + this._moveOrResizeItemGesture([this.getTime(e)], "mouse", e, this.getSubColumn(e)); + } + + }else if(Math.abs(this._startPoint.x - e.screenX) >= this.triggerExtent || // moved enough to trigger editing + Math.abs(this._startPoint.y - e.screenY) >= this.triggerExtent){ + + if(!this._isEditing){ + this._startItemEditing(p.editedItem, "mouse"); + } + + p = this._edProps; + + this._startItemEditingGesture([this.getTime(e)], p.editKind, "mouse", e); + } + }, + + _editingMouseUpHandler: function(e){ + // tags: + // private + + var p = this._edProps; + + this._stopAutoScroll(); + + if(this._isEditing){ + + if(this._editingGesture){ // a gesture is ongoing. + this._endItemEditingGesture("mouse", e); + } + + this._endItemEditing("mouse", false); + + }else{ // handlers were not removed by endItemEditing + arr.forEach(p.handles, function(handle){ + handle.remove(); + }); + } + }, + + _autoScroll: function(globalX, globalY, isVertical){ + + if (!this.scrollable || !this.autoScroll) { + return false; + } + + var scrollerPos = domGeometry.position(this.scrollContainer, true); + + var p = isVertical ? globalY - scrollerPos.y : globalX - scrollerPos.x; + var max = isVertical ? scrollerPos.h : scrollerPos.w; + + if (p < 0 || p > max) { + + var step = Math.floor((p < 0 ? p : p - max)/2)/3; + + this._startAutoScroll(step); + + return true; + + } else { + + this._stopAutoScroll(); + } + return false; + } + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/README new file mode 100644 index 00000000..ff15bb87 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/README @@ -0,0 +1,18 @@ +------------------------------------------------------------------------------- +dojox.calendar +------------------------------------------------------------------------------- +Project state: stable +------------------------------------------------------------------------------- +Credits: + Damien Garbarino + Christophe Jolif +------------------------------------------------------------------------------- +Project description: +Candidate calendar widget for Dojo 1.8+ +------------------------------------------------------------------------------- +Dependencies: +Dojo Core, Dijit, dojox.html, dojox.widget +------------------------------------------------------------------------------- +Documentation: + http://docs.dojocampus.org/dojox/calendar +------------------------------------------------------------------------------- \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/RendererManager.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/RendererManager.js new file mode 100644 index 00000000..fb432241 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/RendererManager.js @@ -0,0 +1,98 @@ +//>>built +define("dojox/calendar/RendererManager",["dojo/_base/declare","dojo/_base/array","dojo/_base/html","dojo/_base/lang","dojo/dom-class","dojo/dom-style","dojo/Stateful","dojo/Evented"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9){ +return _1("dojox.calendar.RendererManager",[_7,_8],{owner:null,rendererPool:null,rendererList:null,itemToRenderer:null,constructor:function(_a){ +_a=_a||{}; +this.rendererPool=[]; +this.rendererList=[]; +this.itemToRenderer={}; +},destroy:function(){ +while(this.rendererList.length>0){ +this.destroyRenderer(this.rendererList.pop()); +} +for(var _b in this._rendererPool){ +var _c=this._rendererPool[_b]; +if(_c){ +while(_c.length>0){ +this.destroyRenderer(_c.pop()); +} +} +} +},recycleItemRenderers:function(_d){ +while(this.rendererList.length>0){ +var ir=this.rendererList.pop(); +this.recycleRenderer(ir,_d); +} +this.itemToRenderer={}; +},getRenderers:function(_e){ +if(_e==null||_e.id==null){ +return null; +} +var _f=this.itemToRenderer[_e.id]; +return _f==null?null:_f.concat(); +},createRenderer:function(_10,_11,_12,_13){ +if(_10!=null&&_11!=null&&_12!=null){ +var res=null,_14=null; +var _15=this.rendererPool[_11]; +if(_15!=null){ +res=_15.shift(); +} +if(res==null){ +_14=new _12; +res={renderer:_14,container:_14.domNode,kind:_11}; +this.emit("rendererCreated",{renderer:res,source:this.owner,item:_10}); +}else{ +_14=res.renderer; +this.emit("rendererReused",{renderer:_14,source:this.owner,item:_10}); +} +_14.owner=this.owner; +_14.set("rendererKind",_11); +_14.set("item",_10); +var _16=this.itemToRenderer[_10.id]; +if(_16==null){ +this.itemToRenderer[_10.id]=_16=[]; +} +_16.push(res); +this.rendererList.push(res); +return res; +} +return null; +},recycleRenderer:function(_17,_18){ +this.emit("rendererRecycled",{renderer:_17,source:this.owner}); +var _19=this.rendererPool[_17.kind]; +if(_19==null){ +this.rendererPool[_17.kind]=[_17]; +}else{ +_19.push(_17); +} +if(_18){ +_17.container.parentNode.removeChild(_17.container); +} +_6.set(_17.container,"display","none"); +_17.renderer.owner=null; +_17.renderer.set("item",null); +},destroyRenderer:function(_1a){ +this.emit("rendererDestroyed",{renderer:_1a,source:this.owner}); +var ir=_1a.renderer; +if(ir["destroy"]){ +ir.destroy(); +} +_3.destroy(_1a.container); +},destroyRenderersByKind:function(_1b){ +var _1c=[]; +for(var i=0;i0){ +this.destroyRenderer(_1d.pop()); +} +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/RendererManager.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/RendererManager.js.uncompressed.js new file mode 100644 index 00000000..2ce161d4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/RendererManager.js.uncompressed.js @@ -0,0 +1,225 @@ +define("dojox/calendar/RendererManager", [ + "dojo/_base/declare", + "dojo/_base/array", + "dojo/_base/html", + "dojo/_base/lang", + "dojo/dom-class", + "dojo/dom-style", + "dojo/Stateful", + "dojo/Evented"], + + function( + declare, + arr, + html, + lang, + domClass, + domStyle, + Stateful, + Evented, + when){ + + return declare("dojox.calendar.RendererManager", [Stateful, Evented], { + + // summary: + // This mixin contains the store management. + + // owner: Object + // The owner of the store manager: a view or a calendar widget. + owner: null, + + // rendererPool: [protected] Array + // The stack of recycled renderers available. + rendererPool: null, + + // rendererList: [protected] Array + // The list of used renderers + rendererList: null, + + // itemToRenderer: [protected] Object + // The associated array item to renderer list. + itemToRenderer: null, + + constructor: function(/*Object*/ args){ + args = args || {}; + + this.rendererPool = []; + this.rendererList = []; + this.itemToRenderer = {}; + }, + + destroy: function(){ + while(this.rendererList.length > 0){ + this.destroyRenderer(this.rendererList.pop()); + } + for(var kind in this._rendererPool){ + var pool = this._rendererPool[kind]; + if(pool){ + while(pool.length > 0){ + this.destroyRenderer(pool.pop()); + } + } + } + }, + + recycleItemRenderers: function(remove){ + // summary: + // Recycles all the item renderers. + // remove: Boolean + // Whether remove the DOM node from it parent. + // tags: + // protected + while(this.rendererList.length>0){ + var ir = this.rendererList.pop(); + this.recycleRenderer(ir, remove); + } + this.itemToRenderer = {}; + }, + + getRenderers: function(item){ + // summary: + // Returns the renderers that are currently used to displayed the speficied item. + // Returns an array of objects that contains two properties: + // - container: The DOM node that contains the renderer. + // - renderer: The dojox.calendar._RendererMixin instance. + // Do not keep references on the renderers are they are recycled and reused for other items. + // item: Object + // The data or render item. + // returns: Object[] + if(item == null || item.id == null){ + return null; + } + var list = this.itemToRenderer[item.id]; + return list == null ? null : list.concat(); + }, + + createRenderer: function(item, kind, rendererClass, cssClass){ + // summary: + // Creates an item renderer of the specified kind. A renderer is an object with the "container" and "instance" properties. + // item: Object + // The data item. + // kind: String + // The kind of renderer. + // rendererClass: Object + // The class to instantiate to create the renderer. + // returns: Object + // tags: + // protected + + if(item != null && kind != null && rendererClass != null){ + + var res=null, renderer=null; + + var pool = this.rendererPool[kind]; + + if(pool != null){ + res = pool.shift(); + } + + if (res == null){ + + renderer = new rendererClass; + + res = { + renderer: renderer, + container: renderer.domNode, + kind: kind + }; + + this.emit("rendererCreated", {renderer:res, source:this.owner, item:item}); + + } else { + renderer = res.renderer; + + this.emit("rendererReused", {renderer:renderer, source:this.owner, item:item}); + } + + renderer.owner = this.owner; + renderer.set("rendererKind", kind); + renderer.set("item", item); + + var list = this.itemToRenderer[item.id]; + if (list == null) { + this.itemToRenderer[item.id] = list = []; + } + list.push(res); + + this.rendererList.push(res); + return res; + } + return null; + }, + + recycleRenderer: function(renderer, remove){ + // summary: + // Recycles the item renderer to be reused in the future. + // renderer: dojox/calendar/_RendererMixin + // The item renderer to recycle. + // tags: + // protected + + this.emit("rendererRecycled", {renderer:renderer, source:this.owner}); + + var pool = this.rendererPool[renderer.kind]; + + if(pool == null){ + this.rendererPool[renderer.kind] = [renderer]; + }else{ + pool.push(renderer); + } + + if(remove){ + renderer.container.parentNode.removeChild(renderer.container); + } + + domStyle.set(renderer.container, "display", "none"); + + renderer.renderer.owner = null; + renderer.renderer.set("item", null); + }, + + destroyRenderer: function(renderer){ + // summary: + // Destroys the item renderer. + // renderer: dojox/calendar/_RendererMixin + // The item renderer to destroy. + // tags: + // protected + this.emit("rendererDestroyed", {renderer:renderer, source:this.owner}); + + var ir = renderer.renderer; + + if(ir["destroy"]){ + ir.destroy(); + } + + html.destroy(renderer.container); + }, + + destroyRenderersByKind: function(kind){ + // tags: + // private + + var list = []; + for(var i=0;i 0){ + this.destroyRenderer(pool.pop()); + } + } + + } + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/SimpleColumnView.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/SimpleColumnView.js new file mode 100644 index 00000000..7d48d7a3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/SimpleColumnView.js @@ -0,0 +1,1240 @@ +//>>built +require({cache:{"url:dojox/calendar/templates/ColumnView.html":"
    \n\t\n\t
    \n\t\t
    \n\t\t\t
    \t\t\n\t\t
    \n\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\n\t
    \n\t\t
    \n\t\t\t
    \t\t\n\t\t
    \n\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\t
    \n\t
    \n\t\n
    \n"}}); +define("dojox/calendar/SimpleColumnView",["./ViewBase","dijit/_TemplatedMixin","./_ScrollBarBase","dojo/text!./templates/ColumnView.html","dojo/_base/declare","dojo/_base/event","dojo/_base/lang","dojo/_base/array","dojo/_base/sniff","dojo/_base/fx","dojo/_base/html","dojo/on","dojo/dom","dojo/dom-class","dojo/dom-style","dojo/dom-geometry","dojo/dom-construct","dojo/mouse","dojo/query","dojox/html/metrics"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,fx,_a,on,_b,_c,_d,_e,_f,_10,_11,_12){ +return _5("dojox.calendar.SimpleColumnView",[_1,_2],{baseClass:"dojoxCalendarColumnView",templateString:_4,viewKind:"columns",_setTabIndexAttr:"domNode",renderData:null,startDate:null,columnCount:7,subColumns:null,minHours:8,maxHours:18,hourSize:100,timeSlotDuration:15,rowHeaderGridSlotDuration:60,rowHeaderLabelSlotDuration:60,rowHeaderLabelOffset:2,rowHeaderFirstLabelOffset:2,verticalRenderer:null,verticalDecorationRenderer:null,minColumnWidth:-1,percentOverlap:70,horizontalGap:4,_showSecondarySheet:false,_columnHeaderHandlers:null,constructor:function(){ +this.invalidatingProperties=["columnCount","startDate","minHours","maxHours","hourSize","verticalRenderer","verticalDecorationRenderer","rowHeaderTimePattern","columnHeaderDatePattern","timeSlotDuration","rowHeaderGridSlotDuration","rowHeaderLabelSlotDuration","rowHeaderLabelOffset","rowHeaderFirstLabelOffset","percentOverlap","horizontalGap","scrollBarRTLPosition","itemToRendererKindFunc","layoutPriorityFunction","formatItemTimeFunc","textDir","items","subColumns","minColumnWidth"]; +this._columnHeaderHandlers=[]; +},destroy:function(_13){ +this._cleanupColumnHeader(); +if(this.scrollBar){ +this.scrollBar.destroy(_13); +} +this.inherited(arguments); +},_scrollBar_onScroll:function(_14){ +this._setScrollPosition(_14); +},_hscrollBar_onScroll:function(_15){ +this._setHScrollPosition(_15); +},buildRendering:function(){ +this.inherited(arguments); +if(this.vScrollBar){ +this.scrollBar=new _3({content:this.vScrollBarContent},this.vScrollBar); +this.scrollBar.on("scroll",_7.hitch(this,this._scrollBar_onScroll)); +} +if(this.hScrollBar){ +this.hScrollBarW=new _3({content:this.hScrollBarContent,direction:"horizontal",value:0},this.hScrollBar); +this.hScrollBarW.on("scroll",_7.hitch(this,this._hscrollBar_onScroll)); +this._hScrollNodes=[this.columnHeaderTable,this.subColumnHeaderTable,this.gridTable,this.itemContainerTable]; +} +this._viewHandles.push(on(this.scrollContainer,_10.wheel,dojo.hitch(this,this._mouseWheelScrollHander))); +},postscript:function(){ +this.inherited(arguments); +this._initialized=true; +if(!this.invalidRendering){ +this.refreshRendering(); +} +},_setVerticalRendererAttr:function(_16){ +this._destroyRenderersByKind("vertical"); +this._set("verticalRenderer",_16); +},_createRenderData:function(){ +var rd={}; +rd.minHours=this.get("minHours"); +rd.maxHours=this.get("maxHours"); +rd.hourSize=this.get("hourSize"); +rd.hourCount=rd.maxHours-rd.minHours; +rd.slotDuration=this.get("timeSlotDuration"); +rd.rowHeaderGridSlotDuration=this.get("rowHeaderGridSlotDuration"); +rd.slotSize=Math.ceil(rd.hourSize/(60/rd.slotDuration)); +rd.hourSize=rd.slotSize*(60/rd.slotDuration); +rd.sheetHeight=rd.hourSize*rd.hourCount; +if(!this._rowHeaderWidth){ +this._rowHeaderWidth=_e.getMarginBox(this.rowHeader).w; +} +rd.rowHeaderWidth=this._rowHeaderWidth; +var _17=_12.getScrollbar(); +rd.scrollbarWidth=_17.w+1; +rd.scrollbarHeight=_17.h+1; +rd.dateLocaleModule=this.dateLocaleModule; +rd.dateClassObj=this.dateClassObj; +rd.dateModule=this.dateModule; +rd.dates=[]; +rd.columnCount=this.get("columnCount"); +rd.subColumns=this.get("subColumns"); +rd.subColumnCount=rd.subColumns?rd.subColumns.length:1; +rd.hScrollPaneWidth=_e.getMarginBox(this.grid).w; +rd.minSheetWidth=this.minColumnWidth<0?-1:this.minColumnWidth*rd.subColumnCount*rd.columnCount; +rd.hScrollBarEnabled=this.minColumnWidth>0&&rd.hScrollPaneWidth23||isNaN(v)){ +this.minHours=0; +} +v=this.maxHours; +if(v<1||v>36||isNaN(v)){ +this.minHours=36; +} +if(this.minHours>this.maxHours){ +var t=this.maxHours; +this.maxHours=this.minHours; +this.minHours=t; +} +if(this.maxHours-this.minHours<1){ +this.minHours=0; +this.maxHours=24; +} +if(this.columnCount<1||isNaN(this.columnCount)){ +this.columnCount=1; +} +v=this.percentOverlap; +if(v<0||v>100||isNaN(v)){ +this.percentOverlap=70; +} +if(this.hourSize<5||isNaN(this.hourSize)){ +this.hourSize=10; +} +v=this.timeSlotDuration; +if(v<1||v>60||isNaN(v)){ +this.timeSlotDuration=15; +} +},_setStartDateAttr:function(_18){ +this.displayedItemsInvalidated=true; +this._set("startDate",_18); +},_setColumnCountAttr:function(_19){ +this.displayedItemsInvalidated=true; +this._set("columnCount",_19); +},__fixEvt:function(e){ +e.sheet="primary"; +e.source=this; +return e; +},rowHeaderTimePattern:null,_formatRowHeaderLabel:function(d){ +return this.renderData.dateLocaleModule.format(d,{selector:"time",timePattern:this.rowHeaderTimePattern}); +},columnHeaderDatePattern:null,_formatColumnHeaderLabel:function(d){ +return this.renderData.dateLocaleModule.format(d,{selector:"date",datePattern:this.columnHeaderDatePattern,formatLength:"medium"}); +},scrollBarRTLPosition:"left",_getStartTimeOfDay:function(){ +var v=(this.get("maxHours")-this.get("minHours"))*this._getScrollPosition()/this.renderData.sheetHeight; +return {hours:this.renderData.minHours+Math.floor(v),minutes:(v-Math.floor(v))*60}; +},_getEndTimeOfDay:function(){ +var v=(this.get("maxHours")-this.get("minHours"))*(this._getScrollPosition()+this.scrollContainer.offsetHeight)/this.renderData.sheetHeight; +return {hours:this.renderData.minHours+Math.floor(v),minutes:(v-Math.floor(v))*60}; +},startTimeOfDay:0,_setStartTimeOfDayAttr:function(_1a){ +if(this.renderData){ +this._setStartTimeOfDay(_1a.hours,_1a.minutes,_1a.duration,_1a.easing); +}else{ +this._startTimeOfDayInvalidated=true; +} +this._set("startTimeOfDay",_1a); +},_getStartTimeOfDayAttr:function(){ +if(this.renderData){ +return this._getStartTimeOfDay(); +}else{ +return this._get("startTimeOfDay"); +} +},_setStartTimeOfDay:function(_1b,_1c,_1d,_1e){ +var rd=this.renderData; +_1b=_1b||rd.minHours; +_1c=_1c||0; +_1d=_1d||0; +if(_1c<0){ +_1c=0; +}else{ +if(_1c>59){ +_1c=59; +} +} +if(_1b<0){ +_1b=0; +}else{ +if(_1b>rd.maxHours){ +_1b=rd.maxHours; +} +} +var _1f=_1b*60+_1c; +var _20=rd.minHours*60; +var _21=rd.maxHours*60; +if(_1f<_20){ +_1f=_20; +}else{ +if(_1f>_21){ +_1f=_21; +} +} +var pos=(_1f-_20)*rd.sheetHeight/(_21-_20); +pos=Math.min(rd.sheetHeight-this.scrollContainer.offsetHeight,pos); +this._scrollToPosition(pos,_1d,_1e); +},_scrollToPosition:function(_22,_23,_24){ +if(_23){ +if(this._scrollAnimation){ +this._scrollAnimation.stop(); +} +var _25=this._getScrollPosition(); +var _26=Math.abs(((_22-_25)*_23)/this.renderData.sheetHeight); +this._scrollAnimation=new fx.Animation({curve:[_25,_22],duration:_26,easing:_24,onAnimate:_7.hitch(this,function(_27){ +this._setScrollImpl(_27); +})}); +this._scrollAnimation.play(); +}else{ +this._setScrollImpl(_22); +} +},_setScrollImpl:function(v){ +this._setScrollPosition(v); +if(this.scrollBar){ +this.scrollBar.set("value",v); +} +},ensureVisibility:function(_28,end,_29,_2a,_2b){ +_2a=_2a==undefined?this.renderData.slotDuration:_2a; +if(this.scrollable&&this.autoScroll){ +var s=_28.getHours()*60+_28.getMinutes()-_2a; +var e=end.getHours()*60+end.getMinutes()+_2a; +var vs=this._getStartTimeOfDay(); +var ve=this._getEndTimeOfDay(); +var _2c=vs.hours*60+vs.minutes; +var _2d=ve.hours*60+ve.minutes; +var _2e=false; +var _2f=null; +switch(_29){ +case "start": +_2e=s>=_2c&&s<=_2d; +_2f=s; +break; +case "end": +_2e=e>=_2c&&e<=_2d; +_2f=e-(_2d-_2c); +break; +case "both": +_2e=s>=_2c&&e<=_2d; +_2f=s; +break; +} +if(!_2e){ +this._setStartTimeOfDay(Math.floor(_2f/60),_2f%60,_2b); +} +} +},scrollView:function(dir){ +var t=this._getStartTimeOfDay(); +t=t.hours*60+t.minutes+(dir*this.timeSlotDuration); +this._setStartTimeOfDay(Math.floor(t/60),t%60); +},scrollViewHorizontal:function(dir){ +this._setHScrollPosition(this._getHScrollPosition()+(dir*this.minColumnWidth)); +if(this.hScrollBarW){ +this.hScrollBarW.set("value",this._getHScrollPosition()); +} +},_hScrollNodes:null,_setHScrollPositionImpl:function(pos,_30,_31){ +var _32=[this.columnHeaderTable,this.subColumnHeaderTable,this.gridTable,this.itemContainerTable]; +var css=_30?null:"translateX(-"+pos+"px)"; +_8.forEach(_32,function(elt){ +if(_30){ +elt.scrollLeft=pos; +_d.set(elt,"left",(-pos)+"px"); +}else{ +_d.set(elt,_31,css); +} +},this); +},_mouseWheelScrollHander:function(e){ +if(this.renderData.hScrollBarEnabled&&e.altKey){ +this.scrollViewHorizontal(e.wheelDelta>0?-1:1); +}else{ +this.scrollView(e.wheelDelta>0?-1:1); +} +_6.stop(e); +},refreshRendering:function(){ +if(!this._initialized){ +return; +} +this._validateProperties(); +var _33=this.renderData; +var rd=this._createRenderData(); +this.renderData=rd; +this._createRendering(rd,_33); +this._layoutDecorationRenderers(rd); +this._layoutRenderers(rd); +},_createRendering:function(_34,_35){ +_d.set(this.sheetContainer,"height",_34.sheetHeight+"px"); +this._configureVisibleParts(_34); +this._configureScrollBar(_34); +this._buildColumnHeader(_34,_35); +this._buildSubColumnHeader(_34,_35); +this._buildRowHeader(_34,_35); +this._buildGrid(_34,_35); +this._buildItemContainer(_34,_35); +this._layoutTimeIndicator(_34); +this._commitProperties(_34); +},_configureVisibleParts:function(_36){ +if(this.secondarySheetNode){ +_d.set(this.secondarySheetNode,"display",this._showSecondarySheet?"block":"none"); +} +_c[this.subColumns==null?"remove":"add"](this.domNode,"subColumns"); +_c[this._showSecondarySheet?"add":"remove"](this.domNode,"secondarySheet"); +},_commitProperties:function(_37){ +if(this._startTimeOfDayInvalidated){ +this._startTimeOfDayInvalidated=false; +var v=this.startTimeOfDay; +if(v!=null){ +this._setStartTimeOfDay(v.hours,v.minutes==undefined?0:v.minutes); +} +} +},_configureScrollBar:function(_38){ +if(_9("ie")&&this.scrollBar){ +_d.set(this.vScrollBar,"width",(_38.scrollbarWidth+1)+"px"); +} +var _39=this.isLeftToRight()?true:this.scrollBarRTLPosition=="right"; +var _3a=_39?"right":"left"; +var _3b=_39?"left":"right"; +if(this.scrollBar){ +this.scrollBar.set("maximum",_38.sheetHeight); +_d.set(this.vScrollBar,_3a,0); +_d.set(this.vScrollBar,_39?"left":"right","auto"); +_d.set(this.vScrollBar,"bottom",_38.hScrollBarEnabled?_38.scrollbarHeight+"px":"0"); +} +_d.set(this.scrollContainer,_3a,_38.scrollbarWidth+"px"); +_d.set(this.scrollContainer,_3b,"0"); +_d.set(this.header,_3a,_38.scrollbarWidth+"px"); +_d.set(this.header,_3b,"0"); +_d.set(this.subHeader,_3a,_38.scrollbarWidth+"px"); +_d.set(this.subHeader,_3b,"0"); +if(this.buttonContainer&&this.owner!=null&&this.owner.currentView==this){ +_d.set(this.buttonContainer,_3a,_38.scrollbarWidth+"px"); +_d.set(this.buttonContainer,_3b,"0"); +} +if(this.hScrollBar){ +_8.forEach(this._hScrollNodes,function(elt){ +_c[_38.hScrollBarEnabled?"add":"remove"](elt.parentNode,"dojoxCalendarHorizontalScroll"); +},this); +if(!_38.hScrollBarEnabled){ +this._setHScrollPosition(0); +this.hScrollBarW.set("value",0); +} +_d.set(this.hScrollBar,{"display":_38.hScrollBarEnabled?"block":"none","height":_38.scrollbarHeight+"px","left":(_39?_38.rowHeaderWidth:_38.scrollbarWidth)+"px","right":(_39?_38.scrollbarWidth:_38.rowHeaderWidth)+"px"}); +_d.set(this.scrollContainer,"bottom",_38.hScrollBarEnabled?(_38.scrollbarHeight+1)+"px":"0"); +this._configureHScrollDomNodes(_38.hScrollBarEnabled?_38.minSheetWidth+"px":"100%"); +this.hScrollBarW.set("maximum",_38.minSheetWidth); +this.hScrollBarW.set("containerSize",_38.hScrollPaneWidth); +} +},_configureHScrollDomNodes:function(_3c){ +_8.forEach(this._hScrollNodes,function(elt){ +_d.set(elt,"width",_3c); +},this); +},resize:function(e){ +this._resizeHandler(e); +},_resizeHandler:function(e,_3d){ +var rd=this.renderData; +if(rd==null){ +return; +} +if(_3d){ +var _3e=_e.getMarginBox(this.grid).w; +if(rd.hScrollPaneWidth!=_3e){ +rd.hScrollPaneWidth=_3e; +rd.minSheetWidth=this.minColumnWidth<0?-1:this.minColumnWidth*rd.subColumnCount*rd.columnCount; +rd.hScrollBarEnabled=this.minColumnWidth>0&&_e.getMarginBox(this.grid).w0){ +for(var i=0;i<_43;i++){ +td=_f.create("td",null,tr); +var h=[]; +h.push(on(td,"click",_7.hitch(this,this._columnHeaderClick))); +if(_9("touch-events")){ +h.push(on(td,"touchstart",function(e){ +_6.stop(e); +_c.add(e.currentTarget,"Active"); +})); +h.push(on(td,"touchend",function(e){ +_6.stop(e); +_c.remove(e.currentTarget,"Active"); +})); +}else{ +h.push(on(td,"mousedown",function(e){ +_6.stop(e); +_c.add(e.currentTarget,"Active"); +})); +h.push(on(td,"mouseup",function(e){ +_6.stop(e); +_c.remove(e.currentTarget,"Active"); +})); +h.push(on(td,"mouseover",function(e){ +_6.stop(e); +_c.add(e.currentTarget,"Hover"); +})); +h.push(on(td,"mouseout",function(e){ +_6.stop(e); +_c.remove(e.currentTarget,"Hover"); +})); +} +this._columnHeaderHandlers.push(h); +} +}else{ +_43=-_43; +for(var i=0;i<_43;i++){ +td=tr.lastChild; +tr.removeChild(td); +_f.destroy(td); +var _46=this._columnHeaderHandlers.pop(); +while(_46.length>0){ +_46.pop().remove(); +} +} +} +_11("td",_42).forEach(function(td,i){ +td.className=""; +if(i==0){ +_c.add(td,"first-child"); +}else{ +if(i==this.renderData.columnCount-1){ +_c.add(td,"last-child"); +} +} +var d=_40.dates[i]; +this._setText(td,this._formatColumnHeaderLabel(d)); +this.styleColumnHeaderCell(td,d,_40); +},this); +if(this.yearColumnHeaderContent){ +var d=_40.dates[0]; +this._setText(this.yearColumnHeaderContent,_40.dateLocaleModule.format(d,{selector:"date",datePattern:"yyyy"})); +} +},_cleanupColumnHeader:function(){ +while(this._columnHeaderHandlers.length>0){ +var _47=this._columnHeaderHandlers.pop(); +while(_47.length>0){ +_47.pop().remove(); +} +} +},styleColumnHeaderCell:function(_48,_49,_4a){ +_c.add(_48,this._cssDays[_49.getDay()]); +if(this.isToday(_49)){ +_c.add(_48,"dojoxCalendarToday"); +}else{ +if(this.isWeekEnd(_49)){ +_c.add(_48,"dojoxCalendarWeekend"); +} +} +},_buildSubColumnHeader:function(_4b,_4c){ +var _4d=this.subColumnHeaderTable; +if(!_4d||this.subColumns==null){ +return; +} +var _4e=_4b.columnCount-_11("td",_4d).length; +if(_9("ie")==8){ +if(this._colSubTableSave==null){ +this._colSubTableSave=_7.clone(_4d); +}else{ +if(_4e<0){ +this.subColumnHeader.removeChild(_4d); +_f.destroy(_4d); +_4d=_7.clone(this._colSubTableSave); +this.subColumnHeaderTable=_4d; +this.subColumnHeader.appendChild(_4d); +_4e=_4b.columnCount; +} +} +} +var _4f=_11(">tbody",_4d); +var _50,tr,td; +if(_4f.length==1){ +_50=_4f[0]; +}else{ +_50=_a.create("tbody",null,_4d); +} +var trs=_11(">tr",_50); +if(trs.length==1){ +tr=trs[0]; +}else{ +tr=_f.create("tr",null,_50); +} +var _51=_4b.subColumnCount; +if(_4e>0){ +for(var i=0;i<_4e;i++){ +td=_f.create("td",null,tr); +_f.create("div",{"className":"dojoxCalendarSubHeaderContainer"},td); +} +}else{ +_4e=-_4e; +for(var i=0;i<_4e;i++){ +td=tr.lastChild; +tr.removeChild(td); +_f.destroy(td); +} +} +_11("td",_4d).forEach(function(td,i){ +td.className=""; +if(i==0){ +_c.add(td,"first-child"); +}else{ +if(i==this.renderData.columnCount-1){ +_c.add(td,"last-child"); +} +} +_11(".dojoxCalendarSubHeaderContainer",td).forEach(function(div,i){ +var _52=_11(".dojoxCalendarSubHeaderContainer",div).length-_51; +if(_52!=0){ +var len=div.childNodes.length; +for(var i=0;i0){ +for(var i=0;i<_60;i++){ +tr=_f.create("tr",null,_5e); +td=_f.create("td",null,tr); +} +}else{ +_60=-_60; +for(var i=0;i<_60;i++){ +_5e.removeChild(_5e.lastChild); +} +} +var rd=this.renderData; +var _61=Math.ceil(_5a.hourSize/(60/_5a.rowHeaderGridSlotDuration)); +var d=new Date(2000,0,1,0,0,0); +_11("tr",_5c).forEach(function(tr,i){ +var td=_11("td",tr)[0]; +td.className=""; +_d.set(tr,"height",(_9("ie")==7)?_61-2*(60/_5a.rowHeaderGridSlotDuration):_61+"px"); +var h=_5a.minHours+(i*this.renderData.rowHeaderGridSlotDuration)/60; +var m=(i*this.renderData.rowHeaderGridSlotDuration)%60; +this.styleRowHeaderCell(td,h,m,rd); +this._addMinutesClasses(td,m); +},this); +var lc=this._rowHeaderLabelContainer; +_60=(Math.floor(60/this.rowHeaderLabelSlotDuration)*_5a.hourCount)-lc.childNodes.length; +var _62; +if(_60>0){ +for(var i=0;i<_60;i++){ +_62=_f.create("span",null,lc); +_c.add(_62,"dojoxCalendarRowHeaderLabel"); +} +}else{ +_60=-_60; +for(var i=0;i<_60;i++){ +lc.removeChild(lc.lastChild); +} +} +_61=Math.ceil(_5a.hourSize/(60/this.rowHeaderLabelSlotDuration)); +_11(">span",lc).forEach(function(_63,i){ +d.setHours(0); +d.setMinutes(_5a.minHours*60+(i*this.rowHeaderLabelSlotDuration)); +this._configureRowHeaderLabel(_63,d,i,_61*i,rd); +},this); +},_configureRowHeaderLabel:function(_64,d,_65,pos,_66){ +this._setText(_64,this._formatRowHeaderLabel(d)); +_d.set(_64,"top",(pos+(_65==0?this.rowHeaderFirstLabelOffset:this.rowHeaderLabelOffset))+"px"); +var h=_66.minHours+(_65*this.rowHeaderLabelSlotDuration)/60; +var m=(_65*this.rowHeaderLabelSlotDuration)%60; +_c.remove(_64,["hour","halfhour","quarterhour"]); +this._addMinutesClasses(_64,m); +this.styleRowHeaderCell(_64,h,m,_66); +},styleRowHeaderCell:function(_67,h,m,_68){ +},_buildGrid:function(_69,_6a){ +var _6b=this.gridTable; +if(!_6b){ +return; +} +_d.set(_6b,"height",_69.sheetHeight+"px"); +var _6c=Math.floor(60/_69.slotDuration)*_69.hourCount; +var _6d=_6c-(_6a?Math.floor(60/_6a.slotDuration)*_6a.hourCount:0); +var _6e=_6d>0; +var _6f=(_69.columnCount-(_6a?_6a.columnCount:0)); +if(_9("ie")==8){ +if(this._gridTableSave==null){ +this._gridTableSave=_7.clone(_6b); +}else{ +if(_6f<0){ +this.grid.removeChild(_6b); +_f.destroy(_6b); +_6b=_7.clone(this._gridTableSave); +this.gridTable=_6b; +this.grid.appendChild(_6b); +_6f=_69.columnCount; +_6d=_6c; +_6e=true; +} +} +} +var _70=_11("tbody",_6b); +var _71; +if(_70.length==1){ +_71=_70[0]; +}else{ +_71=_f.create("tbody",null,_6b); +} +if(_6e){ +for(var i=0;i<_6d;i++){ +_f.create("tr",null,_71); +} +}else{ +_6d=-_6d; +for(var i=0;i<_6d;i++){ +_71.removeChild(_71.lastChild); +} +} +var _72=Math.floor(60/_69.slotDuration)*_69.hourCount-_6d; +var _73=_6e||_6f>0; +_6f=_73?_6f:-_6f; +_11("tr",_6b).forEach(function(tr,i){ +if(_73){ +var len=i>=_72?_69.columnCount:_6f; +for(var i=0;i0){ +for(var i=0;i<_84;i++){ +td=_f.create("td",null,tr); +_f.create("div",{"className":"dojoxCalendarContainerColumn"},td); +} +}else{ +_84=-_84; +for(var i=0;i<_84;i++){ +tr.removeChild(tr.lastChild); +} +} +_11("td",_80).forEach(function(td,i){ +_11(".dojoxCalendarContainerColumn",td).forEach(function(div,i){ +_d.set(div,"height",_7e.sheetHeight+"px"); +var _88=_11(".dojoxCalendarSubContainerColumn",td).length-_87; +if(_88!=0){ +var len=div.childNodes.length; +for(var i=0;i=this.get("minHours")&&(now.getHours()*60+now.getMinutes()0){ +if(_a3.subColumnCount>1){ +var _aa={}; +var _ab=this.subColumns; +_8.forEach(_ab,function(_ac){ +_aa[_ac]=[]; +}); +_8.forEach(_a8,function(_ad){ +if(_a9==="decorationItems"){ +if(_ad.subColumn){ +if(_aa[_ad.subColumn]){ +_aa[_ad.subColumn].push(_ad); +} +}else{ +_8.forEach(_ab,function(_ae){ +var _af=_7.mixin({},_ad); +_af.subColumn=_ae; +_aa[_ae].push(_af); +}); +} +}else{ +if(_ad.subColumn&&_aa[_ad.subColumn]){ +_aa[_ad.subColumn].push(_ad); +} +} +}); +var _b0=0; +_8.forEach(this.subColumns,function(_b1){ +this._layoutVerticalItems(_a3,_a4,_a5,_a6,_b0++,_a7,end,_aa[_b1],_a9); +},this); +}else{ +this._layoutVerticalItems(_a3,_a4,_a5,_a6,0,_a7,end,_a8,_a9); +} +} +},_getColumn:function(_b2,_b3,_b4,_b5){ +var _b6=_b5==="dataItems"?_b2.cells:_b2.decorationCells; +return _b6[_b3*_b2.subColumnCount+_b4]; +},_layoutVerticalItems:function(_b7,_b8,_b9,_ba,_bb,_bc,_bd,_be,_bf){ +if(_bf==="dataItems"&&this.verticalRenderer==null||_bf==="decorationItems"&&this.verticalDecorationRenderer==null){ +return; +} +var _c0=this._getColumn(_b7,_ba,_bb,_bf); +var _c1=[]; +for(var i=0;i<_be.length;i++){ +var _c2=_be[i]; +var _c3=this.computeRangeOverlap(_b7,_c2.startTime,_c2.endTime,_bc,_bd); +var top=this.computeProjectionOnDate(_b7,_bc,_c3[0],_b7.sheetHeight); +var _c4=this.computeProjectionOnDate(_b7,_bc,_c3[1],_b7.sheetHeight); +if(_c4>top){ +var _c5=_7.mixin({start:top,end:_c4,range:_c3,item:_c2},_c2); +_c1.push(_c5); +} +} +var _c6=_bf==="dataItems"?this.computeOverlapping(_c1,this._overlapLayoutPass2).numLanes:1; +var _c7=this.percentOverlap/100; +for(i=0;i<_c1.length;i++){ +_c2=_c1[i]; +var w,_c8,ir,_c9; +if(_bf==="dataItems"){ +var _ca=_c2.lane; +var _cb=_c2.extent; +if(_c7==0){ +w=_c6==1?_b7.colW:((_b7.colW-(_c6-1)*this.horizontalGap)/_c6); +_c8=_ca*(w+this.horizontalGap); +w=_cb==1?w:w*_cb+(_cb-1)*this.horizontalGap; +w=100*w/_b7.colW; +_c8=100*_c8/_b7.colW; +}else{ +w=_c6==1?100:(100/(_c6-(_c6-1)*_c7)); +_c8=_ca*(w-_c7*w); +w=_cb==1?w:w*(_cb-(_cb-1)*_c7); +} +ir=this._createRenderer(_c2,"vertical",this.verticalRenderer,"dojoxCalendarVertical"); +var _cc=this.isItemBeingEdited(_c2); +var _cd=this.isItemSelected(_c2); +var _ce=this.isItemHovered(_c2); +var _cf=this.isItemFocused(_c2); +_c9=ir.renderer; +_c9.set("hovered",_ce); +_c9.set("selected",_cd); +_c9.set("edited",_cc); +_c9.set("focused",this.showFocus?_cf:false); +_c9.set("storeState",this.getItemStoreState(_c2)); +_c9.set("moveEnabled",this.isItemMoveEnabled(_c2._item,"vertical")); +_c9.set("resizeEnabled",this.isItemResizeEnabled(_c2._item,"vertical")); +this.applyRendererZIndex(_c2,ir,_ce,_cd,_cc,_cf); +}else{ +w=100; +_c8=0; +ir=this.decorationRendererManager.createRenderer(_c2,"vertical",this.verticalDecorationRenderer,"dojoxCalendarDecoration"); +_c9=ir.renderer; +} +_d.set(ir.container,{"top":_c2.start+"px","left":_c8+"%","width":w+"%","height":(_c2.end-_c2.start+1)+"px"}); +if(_c9.updateRendering){ +_c9.updateRendering(w,_c2.end-_c2.start+1); +} +_f.place(ir.container,_c0); +_d.set(ir.container,"display","block"); +} +},_sortItemsFunction:function(a,b){ +var res=this.dateModule.compare(a.startTime,b.startTime); +if(res==0){ +res=-1*this.dateModule.compare(a.endTime,b.endTime); +} +return this.isLeftToRight()?res:-res; +},_getNormalizedCoords:function(e,x,y,_d0){ +if(e!=null){ +var _d1=_e.position(this.itemContainer,true); +if(e.touches){ +_d0=_d0==undefined?0:_d0; +x=e.touches[_d0].pageX-_d1.x; +y=e.touches[_d0].pageY-_d1.y; +}else{ +x=e.pageX-_d1.x; +y=e.pageY-_d1.y; +} +} +var r=_e.getContentBox(this.itemContainer); +if(!this.isLeftToRight()){ +x=r.w-x; +} +if(x<0){ +x=0; +}else{ +if(x>r.w){ +x=r.w-1; +} +} +if(y<0){ +y=0; +}else{ +if(y>r.h){ +y=r.h-1; +} +} +return {x:x,y:y}; +},getTime:function(e,x,y,_d2){ +var o=this._getNormalizedCoords(e,x,y,_d2); +var t=this.getTimeOfDay(o.y,this.renderData); +var _d3=_e.getMarginBox(this.itemContainer).w/this.renderData.columnCount; +var col=Math.floor(o.x/_d3); +var _d4=null; +if(col1&&!this._isEditing){ +_6.stop(e); +return; +} +if(this._gridProps&&!this._isEditing){ +var _d7={x:e.touches[0].screenX,y:e.touches[0].screenY}; +var p=this._edProps; +if(!p||p&&(Math.abs(_d7.x-p.start.x)>25||Math.abs(_d7.y-p.start.y)>25)){ +this._gridProps.moved=true; +var d=e.touches[0].screenY-this._gridProps.start; +var _d8=this._gridProps.scrollTop-d; +var max=this.itemContainer.offsetHeight-this.scrollContainer.offsetHeight; +if(_d8<0){ +this._gridProps.start=e.touches[0].screenY; +this._setScrollImpl(0); +this._gridProps.scrollTop=0; +}else{ +if(_d8>max){ +this._gridProps.start=e.touches[0].screenY; +this._setScrollImpl(max); +this._gridProps.scrollTop=max; +}else{ +this._setScrollImpl(_d8); +} +} +} +} +},_onGridTouchEnd:function(e){ +this.inherited(arguments); +var g=this._gridProps; +if(g){ +if(!this._isEditing){ +if(!g.moved){ +if(!g.fromItem&&!g.editingOnStart){ +this.selectFromEvent(e,null,null,true); +} +if(!g.fromItem){ +if(this._pendingDoubleTap&&this._pendingDoubleTap.grid){ +this._onGridDoubleClick({date:this.getTime(this._gridProps.event),triggerEvent:this._gridProps.event}); +clearTimeout(this._pendingDoubleTap.timer); +delete this._pendingDoubleTap; +}else{ +this._onGridClick({date:this.getTime(this._gridProps.event),triggerEvent:this._gridProps.event}); +this._pendingDoubleTap={grid:true,timer:setTimeout(_7.hitch(this,function(){ +delete this._pendingDoubleTap; +}),this.doubleTapDelay)}; +} +} +} +} +this._gridProps=null; +} +},_onColumnHeaderClick:function(e){ +this._dispatchCalendarEvt(e,"onColumnHeaderClick"); +},onColumnHeaderClick:function(e){ +},getTimeOfDay:function(pos,rd){ +var _d9=rd.minHours*60; +var _da=rd.maxHours*60; +var _db=_d9+(pos*(_da-_d9)/rd.sheetHeight); +return {hours:Math.floor(_db/60),minutes:Math.floor(_db%60)}; +},_isItemInView:function(_dc){ +var res=this.inherited(arguments); +if(res){ +var rd=this.renderData; +var len=rd.dateModule.difference(_dc.startTime,_dc.endTime,"millisecond"); +var _dd=(24-rd.maxHours+rd.minHours)*3600000; +if(len>_dd){ +return true; +} +var _de=_dc.startTime.getHours()*60+_dc.startTime.getMinutes(); +var _df=_dc.endTime.getHours()*60+_dc.endTime.getMinutes(); +var sV=rd.minHours*60; +var eV=rd.maxHours*60; +if(_de>0&&_deeV&&_de<=1440){ +return false; +} +if(_df>0&&_dfeV&&_df<=1440){ +return false; +} +} +return res; +},_ensureItemInView:function(_e0){ +var _e1; +var _e2=_e0.startTime; +var _e3=_e0.endTime; +var rd=this.renderData; +var cal=rd.dateModule; +var len=Math.abs(cal.difference(_e0.startTime,_e0.endTime,"millisecond")); +var _e4=(24-rd.maxHours+rd.minHours)*3600000; +if(len>_e4){ +return false; +} +var _e5=_e2.getHours()*60+_e2.getMinutes(); +var _e6=_e3.getHours()*60+_e3.getMinutes(); +var sV=rd.minHours*60; +var eV=rd.maxHours*60; +if(_e5>0&&_e5eV&&_e5<=1440){ +this.floorToDay(_e0.startTime,true,rd); +_e0.startTime=cal.add(_e0.startTime,"day",1); +_e0.startTime.setHours(rd.minHours); +_e0.endTime=cal.add(_e0.startTime,"millisecond",len); +_e1=true; +} +} +if(_e6>0&&_e6eV&&_e6<=1440){ +this.floorToDay(_e0.endTime,true,rd); +_e0.endTime.setHours(rd.maxHours); +_e0.startTime=cal.add(_e0.endTime,"millisecond",-len); +_e1=true; +} +} +_e1=_e1||this.inherited(arguments); +return _e1; +},_onScrollTimer_tick:function(){ +this._scrollToPosition(this._getScrollPosition()+this._scrollProps.scrollStep); +},snapUnit:"minute",snapSteps:15,minDurationUnit:"minute",minDurationSteps:15,liveLayout:false,stayInView:true,allowStartEndSwap:true,allowResizeLessThan24H:true}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/SimpleColumnView.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/SimpleColumnView.js.uncompressed.js new file mode 100644 index 00000000..27edd9bc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/SimpleColumnView.js.uncompressed.js @@ -0,0 +1,2314 @@ +require({cache:{ +'url:dojox/calendar/templates/ColumnView.html':"
    \n\t\n\t
    \n\t\t
    \n\t\t\t
    \t\t\n\t\t
    \n\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\n\t
    \n\t\t
    \n\t\t\t
    \t\t\n\t\t
    \n\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\t
    \n\t
    \n\t\n\t
    \n\t\t
    \n\t
    \n\t\n
    \n"}}); +define("dojox/calendar/SimpleColumnView", [ +"./ViewBase", +"dijit/_TemplatedMixin", +"./_ScrollBarBase", +"dojo/text!./templates/ColumnView.html", +"dojo/_base/declare", +"dojo/_base/event", +"dojo/_base/lang", +"dojo/_base/array", +"dojo/_base/sniff", +"dojo/_base/fx", +"dojo/_base/html", +"dojo/on", +"dojo/dom", +"dojo/dom-class", +"dojo/dom-style", +"dojo/dom-geometry", +"dojo/dom-construct", +"dojo/mouse", +"dojo/query", +"dojox/html/metrics"], + +function( + ViewBase, + _TemplatedMixin, + _ScrollBarBase, + template, + declare, + event, + lang, + arr, + has, + fx, + html, + on, + dom, + domClass, + domStyle, + domGeometry, + domConstruct, + mouse, + query, + metrics){ + + /*===== + var __ColumnClickEventArgs = { + // summary: + // A column click event. + // index: Integer + // The column index. + // date: Date + // The date displayed by the column. + // triggerEvent: Event + // The origin event. + }; + =====*/ + + return declare("dojox.calendar.SimpleColumnView", [ViewBase, _TemplatedMixin], { + + // summary: + // The simple column view is displaying a day per column. Each cell of a column is a time slot. + + baseClass: "dojoxCalendarColumnView", + + templateString: template, + + // viewKind: String + // Type of the view. Used by the calendar widget to determine how to configure the view. + // This view kind is "columns". + viewKind: "columns", + + // scroll container is the focusable item to enable scrolling using up and down arrows + _setTabIndexAttr: "domNode", + + // renderData: Object + // The render data is the object that contains all the properties needed to render the component. + renderData: null, + + // startDate: Date + // The start date of the time interval displayed. + // If not set at initialization time, will be set to current day. + startDate: null, + + // columnCount: Integer + // The number of column to display (from the startDate). + columnCount: 7, + + // subcolumns: String[] + // Array of sub columns values. + subColumns: null, + + // minHours: Integer + // The minimum hour to be displayed. It must be in the [0,23] interval and must be lower than the maxHours. + minHours: 8, + + // maxHours: Integer + // The maximum hour to be displayed. It must be in the [1,36] interval and must be greater than the minHours. + maxHours: 18, + + // hourSize: Integer + // The desired size in pixels of an hour on the screen. + // Note that the effective size may be different as the time slot size must be an integer. + hourSize: 100, + + // timeSlotDuration: Integer + // Duration of the time slot in minutes. Must be a divisor of 60. + timeSlotDuration: 15, + + // rowHeaderGridSlotDuration: Integer + // Duration of the time slot in minutes in the row header. Must be a divisor of 60 and a multiple/divisor of timeSlotDuration. + rowHeaderGridSlotDuration: 60, + + // rowHeaderLabelSlotDuration: Integer + // Duration of the time slot in minutes in the row header labels. Must be a divisor of 60 and a multiple/divisor of timeSlotDuration. + rowHeaderLabelSlotDuration: 60, + + // rowHeaderLabelOffset: Integer + // Offset of the row label from the top of the row header cell in pixels. + rowHeaderLabelOffset: 2, + + // rowHeaderFirstLabelOffset: Integer + // Offset of the first row label from the top of the first row header cell in pixels. + rowHeaderFirstLabelOffset: 2, + + // verticalRenderer: Class + // The class use to create vertical renderers. + verticalRenderer: null, + + // verticalDecorationRenderer: Class + // The class use to create decoration renderers. + verticalDecorationRenderer: null, + + // minColumnWidth: Integer + // The minimum column width. If the number of columns and sub columns displayed makes the + // width of a column greater than this property, a horizontal scroll bar is displayed. + // If value <= 0, this constraint is ignored and the columns are using the available space. + minColumnWidth: -1, + + // percentOverlap: Integer + // The percentage of the renderer width used to superimpose one item renderer on another + // when two events are overlapping. + percentOverlap: 70, + + // horizontalGap: Integer + // The number of pixels between two item renderers that are overlapping each other if the percentOverlap property is 0. + horizontalGap: 4, + + _showSecondarySheet: false, + + _columnHeaderHandlers: null, + + constructor: function(){ + this.invalidatingProperties = ["columnCount", "startDate", "minHours", "maxHours", "hourSize", "verticalRenderer", "verticalDecorationRenderer", + "rowHeaderTimePattern", "columnHeaderDatePattern", "timeSlotDuration", "rowHeaderGridSlotDuration", "rowHeaderLabelSlotDuration", + "rowHeaderLabelOffset", "rowHeaderFirstLabelOffset","percentOverlap", "horizontalGap", "scrollBarRTLPosition","itemToRendererKindFunc", + "layoutPriorityFunction", "formatItemTimeFunc", "textDir", "items", "subColumns", "minColumnWidth"]; + this._columnHeaderHandlers = []; + }, + + destroy: function(preserveDom){ + this._cleanupColumnHeader(); + if(this.scrollBar){ + this.scrollBar.destroy(preserveDom); + } + this.inherited(arguments); + }, + + _scrollBar_onScroll: function(value){ + this._setScrollPosition(value); + }, + + _hscrollBar_onScroll: function(value){ + this._setHScrollPosition(value); + }, + + buildRendering: function(){ + this.inherited(arguments); + if(this.vScrollBar){ + this.scrollBar = new _ScrollBarBase( + {content: this.vScrollBarContent}, + this.vScrollBar); + + this.scrollBar.on("scroll", lang.hitch(this, this._scrollBar_onScroll)); + } + + if(this.hScrollBar){ + this.hScrollBarW = new _ScrollBarBase( + {content: this.hScrollBarContent, direction: "horizontal", value: 0}, + this.hScrollBar); + + this.hScrollBarW.on("scroll", lang.hitch(this, this._hscrollBar_onScroll)); + + this._hScrollNodes = [this.columnHeaderTable, this.subColumnHeaderTable, this.gridTable, this.itemContainerTable]; + } + + this._viewHandles.push( + on(this.scrollContainer, mouse.wheel, + dojo.hitch(this, this._mouseWheelScrollHander))); + + + }, + + postscript: function(){ + this.inherited(arguments); + this._initialized = true; + if(!this.invalidRendering){ + this.refreshRendering(); + } + }, + + _setVerticalRendererAttr: function(value){ + this._destroyRenderersByKind("vertical"); + this._set("verticalRenderer", value); + }, + + _createRenderData: function(){ + + var rd = {}; + + rd.minHours = this.get("minHours"); + rd.maxHours = this.get("maxHours"); + rd.hourSize = this.get("hourSize"); + rd.hourCount = rd.maxHours - rd.minHours; + rd.slotDuration = this.get("timeSlotDuration"); // must be consistent with previous statement + rd.rowHeaderGridSlotDuration = this.get("rowHeaderGridSlotDuration"); + rd.slotSize = Math.ceil(rd.hourSize / (60 / rd.slotDuration)); + rd.hourSize = rd.slotSize * (60 / rd.slotDuration); + rd.sheetHeight = rd.hourSize * rd.hourCount; + + if(!this._rowHeaderWidth){ + this._rowHeaderWidth = domGeometry.getMarginBox(this.rowHeader).w; + } + rd.rowHeaderWidth = this._rowHeaderWidth; + + var sbMetrics = metrics.getScrollbar(); + rd.scrollbarWidth = sbMetrics.w + 1; + rd.scrollbarHeight = sbMetrics.h + 1; + + rd.dateLocaleModule = this.dateLocaleModule; + rd.dateClassObj = this.dateClassObj; + rd.dateModule = this.dateModule; // arithmetics on Dates + + rd.dates = []; + + rd.columnCount = this.get("columnCount"); + rd.subColumns = this.get("subColumns"); + rd.subColumnCount = rd.subColumns ? rd.subColumns.length : 1; + + rd.hScrollPaneWidth = domGeometry.getMarginBox(this.grid).w; + rd.minSheetWidth = this.minColumnWidth < 0 ? -1 : this.minColumnWidth * rd.subColumnCount * rd.columnCount; + rd.hScrollBarEnabled = this.minColumnWidth > 0 && rd.hScrollPaneWidth < rd.minSheetWidth; + + var d = this.get("startDate"); + + if (d == null){ + d = new rd.dateClassObj(); + } + + d = this.floorToDay(d, false, rd); + + this.startDate = d; + + for(var col = 0; col < rd.columnCount ; col++){ + rd.dates.push(d); + d = this.addAndFloor(d, "day", 1); + } + + rd.startTime = new rd.dateClassObj(rd.dates[0]); + rd.startTime.setHours(rd.minHours); + rd.endTime = new rd.dateClassObj(rd.dates[rd.columnCount-1]); + rd.endTime.setHours(rd.maxHours); + + if(this.displayedItemsInvalidated && !this._isEditing){ + // while editing in no live layout we must not to recompute items (duplicate renderers) + rd.items = this.storeManager._computeVisibleItems(rd); + + }else if (this.renderData){ + rd.items = this.renderData.items; + } + + if(this.displayedDecorationItemsInvalidated){ + // while editing in no live layout we must not to recompute items (duplicate renderers) + rd.decorationItems = this.decorationStoreManager._computeVisibleItems(rd); + + }else if (this.renderData){ + rd.decorationItems = this.renderData.decorationItems; + } + + return rd; + }, + + _validateProperties: function() { + + this.inherited(arguments); + + var v = this.minHours; + if(v < 0 || v>23 || isNaN(v)){ + this.minHours = 0; + } + v = this.maxHours; + if (v < 1 || v>36 || isNaN(v)){ + this.minHours = 36; + } + + if(this.minHours > this.maxHours){ + var t = this.maxHours; + this.maxHours = this.minHours; + this.minHours = t; + } + if (this.maxHours - this.minHours < 1){ + this.minHours = 0; + this.maxHours = 24; + } + if (this.columnCount<1 || isNaN(this.columnCount)){ + this.columnCount = 1; + } + + v = this.percentOverlap; + if(v < 0 ||v > 100 || isNaN(v)){ + this.percentOverlap = 70; + } + if(this.hourSize<5 || isNaN(this.hourSize)){ + this.hourSize = 10; + } + v = this.timeSlotDuration; + if (v < 1 || v > 60 || isNaN(v)) { + this.timeSlotDuration = 15; + } + }, + + _setStartDateAttr: function(value){ + this.displayedItemsInvalidated = true; + this._set("startDate", value); + }, + + _setColumnCountAttr: function(value){ + this.displayedItemsInvalidated = true; + this._set("columnCount", value); + }, + + __fixEvt:function(e){ + // tags: + // private + e.sheet = "primary"; + e.source = this; + return e; + }, + + ////////////////////////////////////////// + // + // Formatting functions + // + ////////////////////////////////////////// + + // rowHeaderTimePattern: String + // Custom date/time pattern for the row header labels to override default one coming from the CLDR. + // See dojo/date/locale documentation for format string. + rowHeaderTimePattern: null, + + _formatRowHeaderLabel: function(/*Date*/d){ + // summary: + // Computes the row header label for the specified time of day. + // By default a formatter is used, optionally the rowHeaderTimePattern property can be used to set a custom time pattern to the formatter. + // d: Date + // The date to format + // tags: + // protected + + return this.renderData.dateLocaleModule.format(d, { + selector: "time", + timePattern: this.rowHeaderTimePattern + }); + }, + + // columnHeaderDatePattern: String + // Custom date/time pattern for column header labels to override default one coming from the CLDR. + // See dojo/date/locale documentation for format string. + columnHeaderDatePattern: null, + + _formatColumnHeaderLabel: function(/*Date*/d){ + // summary: + // Computes the column header label for the specified date. + // By default a formatter is used, optionally the columnHeaderDatePattern property can be used to set a custom date pattern to the formatter. + // d: Date + // The date to format + // tags: + // protected + + return this.renderData.dateLocaleModule.format(d, { + selector: "date", + datePattern: this.columnHeaderDatePattern, + formatLength: "medium" + }); + }, + + ////////////////////////////////////////// + // + // Time of day management + // + ////////////////////////////////////////// + + // scrollBarRTLPosition: String + // Position of the scroll bar in right-to-left display. + // Valid values are "left" and "right", default value is "left". + scrollBarRTLPosition: "left", + + _getStartTimeOfDay: function(){ + // summary: + // Returns the visible first time of day. + // tags: + // protected + // returns: Object + + var v = (this.get("maxHours") - this.get("minHours")) * + this._getScrollPosition() / this.renderData.sheetHeight; + + return { + hours: this.renderData.minHours + Math.floor(v), + minutes: (v - Math.floor(v)) * 60 + }; + }, + + _getEndTimeOfDay: function(){ + // summary: + // Returns the visible last time of day. + // tags: + // protected + // returns: Integer[] + + var v = (this.get("maxHours") - this.get("minHours")) * + (this._getScrollPosition() + this.scrollContainer.offsetHeight) / this.renderData.sheetHeight; + + return { + hours: this.renderData.minHours + Math.floor(v), + minutes: (v - Math.floor(v)) * 60 + }; + }, + + // startTimeOfDay: Object + // First time (hour/minute) of day displayed, if reachable. + // An object containing "hours" and "minutes" properties. + startTimeOfDay: 0, + + _setStartTimeOfDayAttr: function(value){ + if(this.renderData){ + this._setStartTimeOfDay(value.hours, value.minutes, value.duration, value.easing); + }else{ + this._startTimeOfDayInvalidated = true; + } + this._set("startTimeOfDay", value); + + }, + + _getStartTimeOfDayAttr: function(){ + if(this.renderData){ + return this._getStartTimeOfDay(); + }else{ + return this._get("startTimeOfDay"); + } + }, + + _setStartTimeOfDay: function(hour, minutes, maxDuration, easing){ + // summary: + // Scrolls the view to show the specified first time of day. + // hour: Integer + // The hour of the start time of day. + // minutes: Integer + // The minutes part of the start time of day. + // maxDuration: Integer + // The max duration of the scroll animation. + // tags: + // protected + + var rd = this.renderData; + + hour = hour || rd.minHours; + minutes = minutes || 0; + maxDuration = maxDuration || 0; + + if (minutes < 0){ + minutes = 0; + }else if (minutes > 59){ + minutes = 59; + } + + if (hour < 0){ + hour = 0; + }else if (hour > rd.maxHours){ + hour = rd.maxHours; + } + + var timeInMinutes = hour * 60 + minutes; + + var minH = rd.minHours*60; + var maxH = rd.maxHours*60; + + if (timeInMinutes < minH){ + timeInMinutes = minH; + }else if(timeInMinutes > maxH){ + timeInMinutes = maxH; + } + + var pos = (timeInMinutes - minH) * rd.sheetHeight / (maxH - minH); + pos = Math.min(rd.sheetHeight - this.scrollContainer.offsetHeight, pos); + + this._scrollToPosition(pos, maxDuration, easing); + }, + + _scrollToPosition: function(position, maxDuration, easing){ + // summary: + // Scrolls the view to show the specified first time of day. + // position: Integer + // The position in pixels. + // maxDuration: Integer + // The max duration of the scroll animation. + // tags: + // protected + + if (maxDuration) { + + if(this._scrollAnimation){ + this._scrollAnimation.stop(); + } + + var scrollPos = this._getScrollPosition(); + + var duration = Math.abs(((position - scrollPos) * maxDuration) / this.renderData.sheetHeight); + + this._scrollAnimation = new fx.Animation({ + curve: [scrollPos, position], + duration: duration, + easing: easing, + onAnimate: lang.hitch(this, function(position) { + this._setScrollImpl(position); + }) + }); + + this._scrollAnimation.play(); + + }else{ + this._setScrollImpl(position); + } + }, + + _setScrollImpl: function(v){ + this._setScrollPosition(v); + if(this.scrollBar){ + this.scrollBar.set("value", v); + } + }, + + ensureVisibility: function(start, end, visibilityTarget, margin, duration){ + + // summary: + // Scrolls the view if the [start, end] time range is not visible or only partially visible. + // start: Date + // Start time of the range of interest. + // end: Date + // End time of the range of interest. + // margin: Integer + // Margin in minutes around the time range. + // visibilityTarget: String + // The end(s) of the time range to make visible. + // Valid values are: "start", "end", "both". + // duration: Number + // Optional, the maximum duration of the scroll animation. + + margin = margin == undefined ? this.renderData.slotDuration : margin; + + if(this.scrollable && this.autoScroll){ + + var s = start.getHours() * 60 + start.getMinutes() - margin; + var e = end.getHours() * 60 + end.getMinutes() + margin; + + var vs = this._getStartTimeOfDay(); + var ve = this._getEndTimeOfDay(); + + var viewStart = vs.hours * 60 + vs.minutes; + var viewEnd = ve.hours * 60 + ve.minutes; + + var visible = false; + var target = null; + + switch(visibilityTarget){ + case "start": + visible = s >= viewStart && s <= viewEnd; + target = s ; + break; + case "end": + visible = e >= viewStart && e <= viewEnd; + target = e - (viewEnd - viewStart); + break; + case "both": + visible = s >= viewStart && e <= viewEnd; + target = s; + break; + } + + if(!visible){ + this._setStartTimeOfDay(Math.floor(target/60), target%60, duration); + } + } + }, + + scrollView: function(dir){ + // summary: + // Scrolls the view to the specified direction of one time slot duration. + // dir: Integer + // Direction of the scroll. Valid values are -1 and 1. + // + var t = this._getStartTimeOfDay(); + t = t.hours*60 + t.minutes + (dir * this.timeSlotDuration); + this._setStartTimeOfDay(Math.floor(t/60), t%60); + }, + + scrollViewHorizontal: function(dir){ + // summary: + // Scrolls the view horizontally to the specified direction of one column or sub column (if set). + // dir: Integer + // Direction of the scroll. Valid values are -1 and 1. + // + this._setHScrollPosition(this._getHScrollPosition() + (dir * this.minColumnWidth)); + if(this.hScrollBarW){ + this.hScrollBarW.set("value", this._getHScrollPosition()); + } + }, + + _hScrollNodes: null, + + _setHScrollPositionImpl: function(pos, useDom, cssProp){ + var elts = [this.columnHeaderTable, this.subColumnHeaderTable, this.gridTable, this.itemContainerTable]; + var css = useDom ? null : "translateX(-"+pos+"px)"; + arr.forEach(elts, function(elt){ + if(useDom){ + elt.scrollLeft = pos; + domStyle.set(elt, "left", (-pos) + "px"); + }else{ + domStyle.set(elt, cssProp, css); + } + }, this); + }, + + _mouseWheelScrollHander: function(e){ + // summary: + // Mouse wheel handler. + // tags: + // protected + if(this.renderData.hScrollBarEnabled && e.altKey){ + this.scrollViewHorizontal(e.wheelDelta > 0 ? -1 : 1); + }else{ + this.scrollView(e.wheelDelta > 0 ? -1 : 1); + } + event.stop(e); + }, + + ////////////////////////////////////////// + // + // HTML structure management + // + ////////////////////////////////////////// + + refreshRendering: function(){ + if(!this._initialized){ + return; + } + + this._validateProperties(); + + var oldRd = this.renderData; + var rd = this._createRenderData(); + this.renderData = rd; + this._createRendering(rd, oldRd); + this._layoutDecorationRenderers(rd); + this._layoutRenderers(rd); + }, + + _createRendering: function(/*Object*/renderData, /*Object*/oldRenderData){ + // tags: + // private + domStyle.set(this.sheetContainer, "height", renderData.sheetHeight + "px"); + // padding for the scroll bar. + this._configureVisibleParts(renderData); + this._configureScrollBar(renderData); + this._buildColumnHeader(renderData, oldRenderData); + this._buildSubColumnHeader(renderData, oldRenderData); + this._buildRowHeader(renderData, oldRenderData); + this._buildGrid(renderData, oldRenderData); + this._buildItemContainer(renderData, oldRenderData); + this._layoutTimeIndicator(renderData); + this._commitProperties(renderData); + }, + + _configureVisibleParts: function(renderData){ + + if(this.secondarySheetNode){ + domStyle.set(this.secondarySheetNode, "display", this._showSecondarySheet ? "block" : "none"); + } + + domClass[this.subColumns == null?"remove":"add"](this.domNode, "subColumns"); + domClass[this._showSecondarySheet?"add":"remove"](this.domNode, "secondarySheet"); + }, + + _commitProperties: function(renderData){ + if(this._startTimeOfDayInvalidated){ + this._startTimeOfDayInvalidated = false; + var v = this.startTimeOfDay; + if(v != null){ + this._setStartTimeOfDay(v.hours, v.minutes == undefined ? 0 : v.minutes); // initial position, no animation + } + } + }, + + _configureScrollBar: function(renderData){ + // summary: + // Sets the scroll bar size and position. + // renderData: Object + // The render data. + // tags: + // protected + + if(has("ie") && this.scrollBar){ + domStyle.set(this.vScrollBar, "width", (renderData.scrollbarWidth + 1) + "px"); + } + + var atRight = this.isLeftToRight() ? true : this.scrollBarRTLPosition == "right"; + var rPos = atRight ? "right" : "left"; + var lPos = atRight ? "left" : "right"; + + if(this.scrollBar){ + this.scrollBar.set("maximum", renderData.sheetHeight); + domStyle.set(this.vScrollBar, rPos, 0); + domStyle.set(this.vScrollBar, atRight? "left" : "right", "auto"); + domStyle.set(this.vScrollBar, "bottom", renderData.hScrollBarEnabled? renderData.scrollbarHeight + "px" : "0"); + } + domStyle.set(this.scrollContainer, rPos, renderData.scrollbarWidth + "px"); + domStyle.set(this.scrollContainer, lPos, "0"); + domStyle.set(this.header, rPos, renderData.scrollbarWidth + "px"); + domStyle.set(this.header, lPos, "0"); + domStyle.set(this.subHeader, rPos, renderData.scrollbarWidth + "px"); + domStyle.set(this.subHeader, lPos, "0"); + if(this.buttonContainer && this.owner != null && this.owner.currentView == this){ + domStyle.set(this.buttonContainer, rPos, renderData.scrollbarWidth + "px"); + domStyle.set(this.buttonContainer, lPos, "0"); + } + + if(this.hScrollBar){ + + arr.forEach(this._hScrollNodes, function(elt){ + domClass[renderData.hScrollBarEnabled ? "add" : "remove"](elt.parentNode, "dojoxCalendarHorizontalScroll"); + }, this); + + if(!renderData.hScrollBarEnabled){ + this._setHScrollPosition(0); + this.hScrollBarW.set("value", 0); + } + + domStyle.set(this.hScrollBar, { + "display": renderData.hScrollBarEnabled ? "block" : "none", + "height": renderData.scrollbarHeight + "px", + "left": (atRight ? renderData.rowHeaderWidth : renderData.scrollbarWidth) + "px", + "right": (atRight ? renderData.scrollbarWidth : renderData.rowHeaderWidth) + "px" + }); + + domStyle.set(this.scrollContainer, "bottom", renderData.hScrollBarEnabled ? (renderData.scrollbarHeight + 1) + "px" : "0"); + this._configureHScrollDomNodes(renderData.hScrollBarEnabled ? renderData.minSheetWidth + "px" : "100%"); + + this.hScrollBarW.set("maximum", renderData.minSheetWidth); + this.hScrollBarW.set("containerSize", renderData.hScrollPaneWidth); + + } + }, + + _configureHScrollDomNodes: function(styleWidth){ + arr.forEach(this._hScrollNodes, function(elt){ + domStyle.set(elt, "width", styleWidth); + }, this); + }, + + resize: function(e){ + this._resizeHandler(e); + }, + + _resizeHandler: function(e, apply){ + // summary: + // Refreshes the scroll bars after a resize of the widget. + // e: Event + // The resize event (optional) + // apply: Boolean + // Whether apply the changes or wait for 100 ms + // tags: + // private + + var rd = this.renderData; + + if(rd == null){ + return; + } + + + if(apply){ + + var hScrollPaneWidth = domGeometry.getMarginBox(this.grid).w; + + if(rd.hScrollPaneWidth != hScrollPaneWidth){ + // refresh values + rd.hScrollPaneWidth = hScrollPaneWidth; + rd.minSheetWidth = this.minColumnWidth < 0 ? -1 : this.minColumnWidth * rd.subColumnCount * rd.columnCount; + rd.hScrollBarEnabled = this.minColumnWidth > 0 && domGeometry.getMarginBox(this.grid).w < rd.minSheetWidth; + } + + this._configureScrollBar(rd); + + }else{ + if(this._resizeTimer != undefined){ + clearTimeout(this._resizeTimer); + } + this._resizeTimer = setTimeout(lang.hitch(this, function(){ + this._resizeHandler(e, true); + }), 100); + } + + }, + + _columnHeaderClick: function(e){ + // tags: + // private + + event.stop(e); + var index = query("td", this.columnHeaderTable).indexOf(e.currentTarget); + this._onColumnHeaderClick({ + index: index, + date: this.renderData.dates[index], + triggerEvent: e + }); + }, + + _buildColumnHeader: function(renderData, oldRenderData){ + // summary: + // Creates incrementally the HTML structure of the column header and configures its content. + // + // renderData: + // The render data to display. + // + // oldRenderData: + // The previously render data displayed, if any. + // tags: + // private + + var table = this.columnHeaderTable; + + if (!table){ + return; + } + + var count = renderData.columnCount - (oldRenderData ? oldRenderData.columnCount : 0); + + if(has("ie") == 8){ + // workaround Internet Explorer 8 bug. + // if on the table, width: 100% and table-layout: fixed are set + // and columns are removed, width of remaining columns is not + // recomputed: must rebuild all. + if(this._colTableSave == null){ + this._colTableSave = lang.clone(table); + }else if(count < 0){ + this._cleanupColumnHeader(); + this.columnHeader.removeChild(table); + domConstruct.destroy(table); + table = lang.clone(this._colTableSave); + this.columnHeaderTable = table; + this.columnHeader.appendChild(table); + count = renderData.columnCount; + } + + } // else incremental dom add/remove for real browsers. + + var tbodies = query("tbody", table); + + var trs = query("tr", table); + var tbody, tr, td; + + if (tbodies.length == 1){ + tbody = tbodies[0]; + }else{ + tbody = html.create("tbody", null, table); + } + + if (trs.length == 1){ + tr = trs[0]; + }else{ + tr = domConstruct.create("tr", null, tbody); + } + + // Build HTML structure (incremental) + if(count > 0){ // creation + for(var i=0; i < count; i++){ + + td = domConstruct.create("td", null, tr); + + var h = []; + h.push(on(td, "click", lang.hitch(this, this._columnHeaderClick))); + + if(has("touch-events")){ + h.push(on(td, "touchstart", function(e){ + event.stop(e); + domClass.add(e.currentTarget, "Active"); + })); + + h.push(on(td, "touchend", function(e){ + event.stop(e); + domClass.remove(e.currentTarget, "Active"); + })); + }else{ + h.push(on(td, "mousedown", function(e){ + event.stop(e); + domClass.add(e.currentTarget, "Active"); + })); + + h.push(on(td, "mouseup", function(e){ + event.stop(e); + domClass.remove(e.currentTarget, "Active"); + })); + + h.push(on(td, "mouseover", function(e){ + event.stop(e); + domClass.add(e.currentTarget, "Hover"); + })); + + h.push(on(td, "mouseout", function(e){ + event.stop(e); + domClass.remove(e.currentTarget, "Hover"); + })); + + } + + this._columnHeaderHandlers.push(h); + + } + }else{ // deletion + count = -count; + for(var i=0; i < count; i++){ + td = tr.lastChild; + tr.removeChild(td); + domConstruct.destroy(td); + var list = this._columnHeaderHandlers.pop(); + while(list.length>0){ + list.pop().remove(); + } + } + } + + // fill & configure + query("td", table).forEach(function(td, i){ + td.className = ""; + if(i == 0){ + domClass.add(td, "first-child"); + }else if(i == this.renderData.columnCount-1){ + domClass.add(td, "last-child"); + } + var d = renderData.dates[i]; + this._setText(td, this._formatColumnHeaderLabel(d)); + this.styleColumnHeaderCell(td, d, renderData); + }, this); + + if(this.yearColumnHeaderContent){ + var d = renderData.dates[0]; + this._setText(this.yearColumnHeaderContent, renderData.dateLocaleModule.format(d, + {selector: "date", datePattern:"yyyy"})); + } + }, + + _cleanupColumnHeader: function(){ + while(this._columnHeaderHandlers.length > 0){ + var list = this._columnHeaderHandlers.pop(); + while(list.length > 0){ + list.pop().remove(); + } + } + }, + + styleColumnHeaderCell: function(node, date, renderData){ + // summary: + // Styles the CSS classes to the node that displays a column header cell. + // By default this method is setting: + // - "dojoxCalendarToday" class name if the date displayed is the current date, + // - "dojoxCalendarWeekend" if the date represents a weekend, + // - the CSS class corresponding of the displayed day of week ("Sun", "Mon" and so on). + // node: Node + // The DOM node that displays the column in the grid. + // date: Date + // The date displayed by this column + // renderData: Object + // The render data. + // tags: + // protected + + domClass.add(node, this._cssDays[date.getDay()]); + + if(this.isToday(date)){ + domClass.add(node, "dojoxCalendarToday"); + } else if(this.isWeekEnd(date)){ + domClass.add(node, "dojoxCalendarWeekend"); + } + }, + + _buildSubColumnHeader: function(renderData, oldRenderData){ + // summary: + // Creates incrementally the HTML structure of the column header and configures its content. + // + // renderData: + // The render data to display. + // + // oldRenderData: + // The previously render data displayed, if any. + // tags: + // private + + var table = this.subColumnHeaderTable; + + if (!table || this.subColumns == null){ + return; + } + + var count = renderData.columnCount - query("td", table).length; + + if(has("ie") == 8){ + // workaround Internet Explorer 8 bug. + // if on the table, width: 100% and table-layout: fixed are set + // and columns are removed, width of remaining columns is not + // recomputed: must rebuild all. + if(this._colSubTableSave == null){ + this._colSubTableSave = lang.clone(table); + }else if(count < 0){ + this.subColumnHeader.removeChild(table); + domConstruct.destroy(table); + table = lang.clone(this._colSubTableSave); + this.subColumnHeaderTable = table; + this.subColumnHeader.appendChild(table); + count = renderData.columnCount; + } + + } // else incremental dom add/remove for real browsers. + + var tbodies = query(">tbody", table); + + var tbody, tr, td; + + if (tbodies.length == 1){ + tbody = tbodies[0]; + }else{ + tbody = html.create("tbody", null, table); + } + + var trs = query(">tr", tbody); + if (trs.length == 1){ + tr = trs[0]; + }else{ + tr = domConstruct.create("tr", null, tbody); + } + + var subCount = renderData.subColumnCount; + + // Build HTML structure (incremental) + if(count > 0){ // creation + for(var i=0; i < count; i++){ + td = domConstruct.create("td", null, tr); + domConstruct.create("div", {"className": "dojoxCalendarSubHeaderContainer"}, td); + } + }else{ // deletion + count = -count; + for(var i=0; i < count; i++){ + td = tr.lastChild; + tr.removeChild(td); + domConstruct.destroy(td); + } + } + + // fill & configure + query("td", table).forEach(function(td, i){ + td.className = ""; + if(i == 0){ + domClass.add(td, "first-child"); + }else if(i == this.renderData.columnCount-1){ + domClass.add(td, "last-child"); + } + + query(".dojoxCalendarSubHeaderContainer", td).forEach(function(div, i){ + + var count = query(".dojoxCalendarSubHeaderContainer", div).length - subCount; + if(count != 0){ + var len = div.childNodes.length; + for(var i=0; i0){ // creation + for(var i=0; i < count; i++){ + tr = domConstruct.create("tr", null, tbody); + td = domConstruct.create("td", null, tr); + } + }else{ + count = -count; + // deletion of existing nodes + for(var i=0; i < count; i++){ + tbody.removeChild(tbody.lastChild); + } + } + + // fill labels + + + var rd = this.renderData; + var size = Math.ceil(renderData.hourSize / (60 / renderData.rowHeaderGridSlotDuration)); + var d = new Date(2000, 0, 1, 0, 0, 0); + + query("tr", rowHeaderTable).forEach(function(tr, i){ + var td = query("td", tr)[0]; + td.className = ""; + + domStyle.set(tr, "height", (has("ie") == 7)?size-2*(60 / renderData.rowHeaderGridSlotDuration):size + "px"); + + var h = renderData.minHours + (i * this.renderData.rowHeaderGridSlotDuration) / 60; + var m = (i * this.renderData.rowHeaderGridSlotDuration) % 60; + + this.styleRowHeaderCell(td, h, m, rd); + + this._addMinutesClasses(td, m); + + }, this); + + var lc = this._rowHeaderLabelContainer; + count = (Math.floor(60 / this.rowHeaderLabelSlotDuration) * renderData.hourCount) - lc.childNodes.length; + + var span; + if(count>0){ // creation + for(var i=0; i < count; i++){ + span = domConstruct.create("span", null, lc); + domClass.add(span, "dojoxCalendarRowHeaderLabel"); + } + }else{ + count = -count; + // deletion of existing nodes + for(var i=0; i < count; i++){ + lc.removeChild(lc.lastChild); + } + } + + size = Math.ceil(renderData.hourSize / (60 / this.rowHeaderLabelSlotDuration)); + + query(">span", lc).forEach(function(span, i){ + d.setHours(0); + d.setMinutes(renderData.minHours * 60 + (i*this.rowHeaderLabelSlotDuration)); + this._configureRowHeaderLabel(span, d, i, size*i, rd); + }, this); + + }, + + _configureRowHeaderLabel: function(node, d, index, pos, renderData){ + // summary: + // Configures the label of a row header cell. + // node: DOMNode + // The DOM node that is the parent of the label. + // d:Date + // A date object that contains the hours and minutes displayed by this row header cell. + // index: Integer + // The index of this row header cell + // pos: Integer + // The computed position of the row header cell + // renderData: Object + // The render data. + + this._setText(node, this._formatRowHeaderLabel(d)); + domStyle.set(node, "top", (pos + (index==0?this.rowHeaderFirstLabelOffset:this.rowHeaderLabelOffset))+"px"); + var h = renderData.minHours + (index * this.rowHeaderLabelSlotDuration) / 60; + var m = (index * this.rowHeaderLabelSlotDuration) % 60; + domClass.remove(node, ["hour", "halfhour", "quarterhour"]); + this._addMinutesClasses(node, m); + this.styleRowHeaderCell(node, h, m, renderData); + }, + + styleRowHeaderCell: function(node, h, m, renderData){ + // summary: + // Styles the CSS classes to the node that displays a row header cell. + // By default this method is doing nothing. + // node: Node + // The DOM node that displays the column in the grid. + // h: Integer + // The time of day displayed by this row header cell. + // renderData: Object + // The render data. + // tags: + // protected + }, + + _buildGrid: function (renderData, oldRenderData){ + // summary: + // Creates incrementally the HTML structure of the grid and configures its content. + // + // renderData: + // The render data to display. + // + // oldRenderData: + // The previously render data displayed, if any. + // tags: + // private + + + var table = this.gridTable; + + if (!table){ + return; + } + + domStyle.set(table, "height", renderData.sheetHeight + "px"); + + var nbRows = Math.floor(60 / renderData.slotDuration) * renderData.hourCount; + + var rowDiff = nbRows - + (oldRenderData ? Math.floor(60 / oldRenderData.slotDuration) * oldRenderData.hourCount : 0); + + var addRows = rowDiff > 0; + + var colDiff = (renderData.columnCount - (oldRenderData ? oldRenderData.columnCount : 0)); + + if(has("ie") == 8){ + // workaround Internet Explorer 8 bug. + // if on the table, width: 100% and table-layout: fixed are set + // and columns are removed, width of remaining columns is not + // recomputed: must rebuild all. + if(this._gridTableSave == null){ + this._gridTableSave = lang.clone(table); + }else if(colDiff < 0){ + this.grid.removeChild(table); + domConstruct.destroy(table); + table = lang.clone(this._gridTableSave); + this.gridTable = table; + this.grid.appendChild(table); + colDiff = renderData.columnCount; + rowDiff = nbRows; + addRows = true; + } + } + + var tbodies = query("tbody", table); + var tbody; + + if (tbodies.length == 1){ + tbody = tbodies[0]; + }else{ + tbody = domConstruct.create("tbody", null, table); + } + + // Build time slots (lines) HTML structure (incremental) + if(addRows){ // creation + for(var i=0; i0; + colDiff = addCols ? colDiff : -colDiff; + + query("tr", table).forEach(function(tr, i){ + + if(addCols){ // creation + var len = i >= rowIndex ? renderData.columnCount : colDiff; + for(var i=0; i0){ // creation + for(var i=0; i < count; i++){ + td = domConstruct.create("td", null, tr); + domConstruct.create("div", {"className": "dojoxCalendarContainerColumn"}, td); + } + }else{ // deletion + count = -count; + for(var i=0; i < count; i++){ + tr.removeChild(tr.lastChild); + } + } + + + query("td", table).forEach(function(td, i){ + + query(".dojoxCalendarContainerColumn", td).forEach(function(div, i){ + domStyle.set(div, "height", renderData.sheetHeight + "px"); + var count = query(".dojoxCalendarSubContainerColumn", td).length - subCount; + if(count != 0){ + var len = div.childNodes.length; + for(var i=0; i= this.get("minHours") && + (now.getHours()*60+now.getMinutes() < this.get("maxHours")*60); + + if(visible){ + + if(!this._timeIndicator){ + this._timeIndicator = domConstruct.create("div", + {"className": "dojoxCalendarTimeIndicator"}); + } + + var node = this._timeIndicator; + + for(var column=0; column 0){ + if(renderData.subColumnCount > 1){ + var subColumnItems = {}; + var subCols = this.subColumns; + arr.forEach(subCols, function(subCol){ + subColumnItems[subCol] = []; + }); + arr.forEach(items, function(item){ + if(itemsType === "decorationItems"){ + if(item.subColumn){ + if(subColumnItems[item.subColumn]){ + subColumnItems[item.subColumn].push(item); + } + }else{ // for decorations, if no sub column is set, apply to all sub columns + arr.forEach(subCols, function(subCol){ + var clonedItem = lang.mixin({}, item); + clonedItem.subColumn = subCol; + subColumnItems[subCol].push(clonedItem); + }); + } + }else if(item.subColumn && subColumnItems[item.subColumn]){ + subColumnItems[item.subColumn].push(item); + } + }); + var subColIndex = 0; + arr.forEach(this.subColumns, function(subCol){ + this._layoutVerticalItems(renderData, rendererKind, computeOverlap, index, subColIndex++, start, end, subColumnItems[subCol], itemsType); + }, this); + }else{ + this._layoutVerticalItems(renderData, rendererKind, computeOverlap, index, 0, start, end, items, itemsType); + } + } + }, + + _getColumn: function(renderData, index, subIndex, itemsType){ + var cols = itemsType === "dataItems" ? renderData.cells : renderData.decorationCells; + return cols[index * renderData.subColumnCount + subIndex]; + }, + + _layoutVerticalItems: function(/*Object*/renderData, /*String*/ rendererKind, /*boolean*/ computeOverlap, + /*Integer*/index, /*Integer*/subIndex, /*Date*/startTime, /*Date*/endTime, /*Object[]*/items, /*String*/itemsType){ + // tags: + // private + + if(itemsType === "dataItems" && this.verticalRenderer == null || + itemsType === "decorationItems" && this.verticalDecorationRenderer == null){ + return; + } + + var cell = this._getColumn(renderData, index, subIndex, itemsType); + + var layoutItems = []; + + // step 1 compute projected position and size + for(var i = 0; i < items.length; i++){ + + var item = items[i]; + var overlap = this.computeRangeOverlap(renderData, item.startTime, item.endTime, startTime, endTime); + + var top = this.computeProjectionOnDate(renderData, startTime, overlap[0], renderData.sheetHeight); + var bottom = this.computeProjectionOnDate(renderData, startTime, overlap[1], renderData.sheetHeight); + + if (bottom > top){ + var litem = lang.mixin({ + start: top, + end: bottom, + range: overlap, + item: item + }, item); + layoutItems.push(litem); + } + } + + // step 2: compute overlapping layout + var numLanes = itemsType === "dataItems" ? this.computeOverlapping(layoutItems, this._overlapLayoutPass2).numLanes : 1; + + var hOverlap = this.percentOverlap / 100; + + // step 3: create renderers and apply layout + for(i=0; i r.w){ + x = r.w-1; + } + + if (y < 0){ + y = 0; + }else if(y > r.h){ + y = r.h-1; + } + + return {x: x, y: y}; + }, + + getTime: function(e, x, y, touchIndex){ + // summary: + // Returns the time displayed at the specified point by this component. + // e: Event + // Optional mouse event. + // x: Number + // Position along the x-axis with respect to the sheet container used if event is not defined. + // y: Number + // Position along the y-axis with respect to the sheet container (scroll included) used if event is not defined. + // touchIndex: Integer + // If parameter 'e' is not null and a touch event, the index of the touch to use. + // returns: Date + + var o = this._getNormalizedCoords(e, x, y, touchIndex); + var t = this.getTimeOfDay(o.y, this.renderData); + var colW = domGeometry.getMarginBox(this.itemContainer).w / this.renderData.columnCount; + var col = Math.floor(o.x / colW); + + var date = null; + if(col < this.renderData.dates.length){ + date = this.newDate(this.renderData.dates[col]); + date = this.floorToDay(date, true); + date.setHours(t.hours); + date.setMinutes(t.minutes); + } + + return date; + }, + + getSubColumn: function(e, x, y, touchIndex){ + // summary: + // Returns the sub column at the specified point by this component. + // e: Event + // Optional mouse event. + // x: Number + // Position along the x-axis with respect to the sheet container used if event is not defined. + // y: Number + // Position along the y-axis with respect to the sheet container (scroll included) used if event is not defined. + // touchIndex: Integer + // If parameter 'e' is not null and a touch event, the index of the touch to use. + // returns: Object + + if(this.subColumns == null || this.subColumns.length == 1){ + return null; + } + var o = this._getNormalizedCoords(e, x, y, touchIndex); + var rd = this.renderData; + var colW = domGeometry.getMarginBox(this.itemContainer).w / this.renderData.columnCount; + var col = Math.floor(o.x / colW); + var idx = Math.floor((o.x - col*colW) / (colW / rd.subColumnCount)); + return this.subColumns[idx]; + }, + + /////////////////////////////////////////////////////////////// + // + // Events + // + /////////////////////////////////////////////////////////////// + + _onGridMouseUp: function(e){ + // tags: + // private + + this.inherited(arguments); + + if (this._gridMouseDown) { + this._gridMouseDown = false; + + this._onGridClick({ + date: this.getTime(e), + triggerEvent: e + }); + } + }, + + _onGridTouchStart: function(e){ + // tags: + // private + + this.inherited(arguments); + + var g = this._gridProps; + + g.moved= false; + g.start= e.touches[0].screenY; + g.scrollTop= this._getScrollPosition(); + }, + + _onGridTouchMove: function(e){ + // tags: + // private + + this.inherited(arguments); + + if (e.touches.length > 1 && !this._isEditing){ + event.stop(e); + return; + } + + if(this._gridProps && !this._isEditing){ + + var touch = {x: e.touches[0].screenX, y: e.touches[0].screenY}; + + var p = this._edProps; + + if (!p || p && + (Math.abs(touch.x - p.start.x) > 25 || + Math.abs(touch.y - p.start.y) > 25)) { + + this._gridProps.moved = true; + var d = e.touches[0].screenY - this._gridProps.start; + var value = this._gridProps.scrollTop - d; + var max = this.itemContainer.offsetHeight - this.scrollContainer.offsetHeight; + if (value < 0){ + this._gridProps.start = e.touches[0].screenY; + this._setScrollImpl(0); + this._gridProps.scrollTop = 0; + }else if(value > max){ + this._gridProps.start = e.touches[0].screenY; + this._setScrollImpl(max); + this._gridProps.scrollTop = max; + }else{ + this._setScrollImpl(value); + } + } + } + }, + + _onGridTouchEnd: function(e){ + // tags: + // private + + //event.stop(e); + + this.inherited(arguments); + + var g = this._gridProps; + + if(g){ + if(!this._isEditing){ + if(!g.moved){ + + // touched on grid and on touch start editing was ongoing. + if(!g.fromItem && !g.editingOnStart){ + this.selectFromEvent(e, null, null, true); + } + + if(!g.fromItem){ + + if(this._pendingDoubleTap && this._pendingDoubleTap.grid){ + + this._onGridDoubleClick({ + date: this.getTime(this._gridProps.event), + triggerEvent: this._gridProps.event + }); + + clearTimeout(this._pendingDoubleTap.timer); + + delete this._pendingDoubleTap; + + }else{ + + this._onGridClick({ + date: this.getTime(this._gridProps.event), + triggerEvent: this._gridProps.event + }); + + this._pendingDoubleTap = { + grid: true, + timer: setTimeout(lang.hitch(this, function(){ + delete this._pendingDoubleTap; + }), this.doubleTapDelay) + }; + } + } + } + } + + this._gridProps = null; + } + }, + + _onColumnHeaderClick: function(e){ + // tags: + // private + + this._dispatchCalendarEvt(e, "onColumnHeaderClick"); + }, + + + + onColumnHeaderClick: function(e){ + // summary: + // Event dispatched when a column header cell is dispatched. + // e: __ColumnClickEventArgs + // The event has the following properties + // tags: + // callback + }, + + + getTimeOfDay: function (pos, rd) { + // summary: + // Return the time of day associated to the specified position. + // pos: Integer + // The position in pixels. + // rd: Object + // The render data. + var minH = rd.minHours*60; + var maxH = rd.maxHours*60; + var minutes = minH + (pos * (maxH - minH) / rd.sheetHeight); + return { + hours: Math.floor(minutes / 60), + minutes: Math.floor(minutes % 60) + }; + }, + + /////////////////////////////////////////////////////////////// + // + // View limits + // + /////////////////////////////////////////////////////////////// + + _isItemInView: function(item){ + + // subclassed to add some tests + + var res = this.inherited(arguments); + + if(res){ + + // test if time range is overlapping [maxHours, next day min hours] + var rd = this.renderData; + + var len = rd.dateModule.difference(item.startTime, item.endTime, "millisecond"); + var vLen = (24 - rd.maxHours + rd.minHours) * 3600000; // 60 * 60 * 1000, number of milliseconds in 1 minute + + if(len > vLen){ // longer events are always visible + return true; + } + + var sMin = item.startTime.getHours()*60 + item.startTime.getMinutes(); + var eMin = item.endTime.getHours()*60 + item.endTime.getMinutes(); + var sV = rd.minHours * 60; + var eV = rd.maxHours * 60; + + if(sMin > 0 && sMin < sV || sMin > eV && sMin <= 1440){ + return false; + } + + if(eMin > 0 && eMin < sV || eMin > eV && eMin <= 1440){ + return false; + } + } + return res; + }, + + _ensureItemInView: function(item){ + + var fixed; + + var startTime = item.startTime; + var endTime = item.endTime; + + // test if time range is overlapping [maxHours, next day min hours] + var rd = this.renderData; + var cal = rd.dateModule; + + var len = Math.abs(cal.difference(item.startTime, item.endTime, "millisecond")); + var vLen = (24 - rd.maxHours + rd.minHours) * 3600000; + + if(len > vLen){ // longer events are always visible + return false; + } + + var sMin = startTime.getHours()*60 + startTime.getMinutes(); + var eMin = endTime.getHours()*60 + endTime.getMinutes(); + var sV = rd.minHours * 60; + var eV = rd.maxHours * 60; + + if(sMin > 0 && sMin < sV){ + this.floorToDay(item.startTime, true, rd); + item.startTime.setHours(rd.minHours); + item.endTime = cal.add(item.startTime, "millisecond", len); + fixed = true; + }else if(sMin > eV && sMin <= 1440){ + // go on next visible time + this.floorToDay(item.startTime, true, rd); + item.startTime = cal.add(item.startTime, "day", 1); + // if we are going out of the view, the super() will fix it + item.startTime.setHours(rd.minHours); + item.endTime = cal.add(item.startTime, "millisecond", len); + fixed = true; + } + + if(eMin > 0 && eMin < sV){ + // go on previous day + this.floorToDay(item.endTime, true, rd); + item.endTime = cal.add(item.endTime, "day", -1); + item.endTime.setHours(rd.maxHours); + item.startTime = cal.add(item.endTime, "millisecond", -len); + fixed = true; + }else if(eMin > eV && eMin <= 1440){ + this.floorToDay(item.endTime, true, rd); + item.endTime.setHours(rd.maxHours); + item.startTime = cal.add(item.endTime, "millisecond", -len); + fixed = true; + } + + fixed = fixed || this.inherited(arguments); + + return fixed; + }, + + _onScrollTimer_tick: function(){ + // tags: + // private + + this._scrollToPosition(this._getScrollPosition() + this._scrollProps.scrollStep); + }, + + //////////////////////////////////////////// + // + // Editing + // + /////////////////////////////////////////// + + snapUnit: "minute", + snapSteps: 15, + minDurationUnit: "minute", + minDurationSteps: 15, + liveLayout: false, + stayInView: true, + allowStartEndSwap: true, + allowResizeLessThan24H: true + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreManager.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreManager.js new file mode 100644 index 00000000..ecf003fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreManager.js @@ -0,0 +1,172 @@ +//>>built +define("dojox/calendar/StoreManager",["dojo/_base/declare","dojo/_base/array","dojo/_base/html","dojo/_base/lang","dojo/dom-class","dojo/Stateful","dojo/Evented","dojo/when"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +return _1("dojox.calendar.StoreManager",[_6,_7],{owner:null,store:null,_ownerItemsProperty:null,_getParentStoreManager:function(){ +if(this.owner&&this.owner.owner){ +return this.owner.owner.get("storeManager"); +} +return null; +},_initItems:function(_9){ +this.set("items",_9); +return _9; +},_itemsSetter:function(_a){ +this.items=_a; +this.emit("dataLoaded",_a); +},_computeVisibleItems:function(_b){ +var _c=_b.startTime; +var _d=_b.endTime; +var _e=null; +var _f=this.owner[this._ownerItemsProperty]; +if(_f){ +_e=_2.filter(_f,function(_10){ +return this.owner.isOverlapping(_b,_10.startTime,_10.endTime,_c,_d); +},this); +} +return _e; +},_updateItems:function(_11,_12,_13){ +var _14=true; +var _15=null; +var _16=this.owner.itemToRenderItem(_11,this.store); +_16._item=_11; +this.items=this.owner[this._ownerItemsProperty]; +if(_12!==-1){ +if(_13!==_12){ +this.items.splice(_12,1); +if(this.owner.setItemSelected&&this.owner.isItemSelected(_16)){ +this.owner.setItemSelected(_16,false); +this.owner.dispatchChange(_16,this.get("selectedItem"),null,null); +} +}else{ +_15=this.items[_12]; +var cal=this.owner.dateModule; +_14=cal.compare(_16.startTime,_15.startTime)!==0||cal.compare(_16.endTime,_15.endTime)!==0; +_4.mixin(_15,_16); +} +}else{ +if(_13!==-1){ +var l,i; +var _17=_11.temporaryId; +if(_17){ +l=this.items?this.items.length:0; +for(i=l-1;i>=0;i--){ +if(this.items[i].id===_17){ +this.items[i]=_16; +break; +} +} +var _18=this._getItemStoreStateObj({id:_17}); +this._cleanItemStoreState(_17); +this._setItemStoreState(_16,_18?_18.state:null); +} +var s=this._getItemStoreStateObj(_16); +if(s&&s.state==="storing"){ +if(this.items&&this.items[_13]&&this.items[_13].id!==_16.id){ +l=this.items.length; +for(i=l-1;i>=0;i--){ +if(this.items[i].id===_16.id){ +this.items.splice(i,1); +break; +} +} +this.items.splice(_13,0,_16); +} +_4.mixin(s.renderItem,_16); +}else{ +this.items.splice(_13,0,_16); +} +this.set("items",this.items); +} +} +this._setItemStoreState(_16,"stored"); +if(!this.owner._isEditing){ +if(_14){ +this.emit("layoutInvalidated"); +}else{ +this.emit("renderersInvalidated",_15); +} +} +},_storeSetter:function(_19){ +var r; +var _1a=this.owner; +if(this._observeHandler){ +this._observeHandler.remove(); +this._observeHandler=null; +} +if(_19){ +var _1b=_19.query(_1a.query,_1a.queryOptions); +if(_1b.observe){ +this._observeHandler=_1b.observe(_4.hitch(this,this._updateItems),true); +} +_1b=_1b.map(_4.hitch(this,function(_1c){ +var _1d=_1a.itemToRenderItem(_1c,_19); +_1d._item=_1c; +return _1d; +})); +r=_8(_1b,_4.hitch(this,this._initItems)); +}else{ +r=this._initItems([]); +} +this.store=_19; +return r; +},_getItemStoreStateObj:function(_1e){ +var _1f=this._getParentStoreManager(); +if(_1f){ +return _1f._getItemStoreStateObj(_1e); +} +var _20=this.get("store"); +if(_20!=null&&this._itemStoreState!=null){ +var id=_1e.id===undefined?_20.getIdentity(_1e):_1e.id; +return this._itemStoreState[id]; +} +return null; +},getItemStoreState:function(_21){ +var _22=this._getParentStoreManager(); +if(_22){ +return _22.getItemStoreState(_21); +} +if(this._itemStoreState==null){ +return "stored"; +} +var _23=this.get("store"); +var id=_21.id===undefined?_23.getIdentity(_21):_21.id; +var s=this._itemStoreState[id]; +if(_23!=null&&s!==undefined){ +return s.state; +} +return "stored"; +},_cleanItemStoreState:function(id){ +var _24=this._getParentStoreManager(); +if(_24){ +return _24._cleanItemStoreState(id); +} +if(!this._itemStoreState){ +return; +} +var s=this._itemStoreState[id]; +if(s){ +delete this._itemStoreState[id]; +return true; +} +return false; +},_setItemStoreState:function(_25,_26){ +var _27=this._getParentStoreManager(); +if(_27){ +_27._setItemStoreState(_25,_26); +return; +} +if(this._itemStoreState===undefined){ +this._itemStoreState={}; +} +var _28=this.get("store"); +var id=_25.id===undefined?_28.getIdentity(_25):_25.id; +var s=this._itemStoreState[id]; +if(_26==="stored"||_26==null){ +if(s!==undefined){ +delete this._itemStoreState[id]; +} +return; +} +if(_28){ +this._itemStoreState[id]={id:id,item:_25,renderItem:this.owner.itemToRenderItem(_25,_28),state:_26}; +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreManager.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreManager.js.uncompressed.js new file mode 100644 index 00000000..567af780 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreManager.js.uncompressed.js @@ -0,0 +1,281 @@ +define("dojox/calendar/StoreManager", ["dojo/_base/declare", "dojo/_base/array", "dojo/_base/html", "dojo/_base/lang", "dojo/dom-class", + "dojo/Stateful", "dojo/Evented", "dojo/when"], + function(declare, arr, html, lang, domClass, Stateful, Evented, when){ + + return declare("dojox.calendar.StoreManager", [Stateful, Evented], { + + // summary: + // This mixin contains the store management. + + // owner: Object + // The owner of the store manager: a view or a calendar widget. + owner: null, + + // store: dojo.store.Store + // The store that contains the events to display. + store: null, + + _ownerItemsProperty: null, + + _getParentStoreManager: function(){ + if(this.owner && this.owner.owner){ + return this.owner.owner.get("storeManager"); + } + return null; + }, + + _initItems: function(items){ + // tags: + // private + this.set("items", items); + return items; + }, + + _itemsSetter: function(value){ + this.items = value; + this.emit("dataLoaded", value); + }, + + _computeVisibleItems: function(renderData){ + // summary: + // Computes the data items that are in the displayed interval. + // renderData: Object + // The renderData that contains the start and end time of the displayed interval. + // tags: + // protected + + var startTime = renderData.startTime; + var endTime = renderData.endTime; + var res = null; + var items = this.owner[this._ownerItemsProperty]; + if(items){ + res = arr.filter(items, function(item){ + return this.owner.isOverlapping(renderData, item.startTime, item.endTime, startTime, endTime); + }, this); + } + return res; + }, + + _updateItems: function(object, previousIndex, newIndex){ + // as soon as we add a item or remove one layout might change, + // let's make that the default + // TODO: what about items in non visible area... + // tags: + // private + var layoutCanChange = true; + var oldItem = null; + var newItem = this.owner.itemToRenderItem(object, this.store); + // keep a reference on the store data item. + newItem._item = object; + + // get back the items from the owner that can contain the item created interactively. + this.items = this.owner[this._ownerItemsProperty]; + + // set the item as in the store + if(previousIndex!==-1){ + if(newIndex!==previousIndex){ + // this is a remove or a move + this.items.splice(previousIndex, 1); + if(this.owner.setItemSelected && this.owner.isItemSelected(newItem)){ + this.owner.setItemSelected(newItem, false); + this.owner.dispatchChange(newItem, this.get("selectedItem"), null, null); + } + }else{ + // this is a put, previous and new index identical + // check what changed + oldItem = this.items[previousIndex]; + var cal = this.owner.dateModule; + layoutCanChange = cal.compare(newItem.startTime, oldItem.startTime) !== 0 || + cal.compare(newItem.endTime, oldItem.endTime) !== 0; + // we want to keep the same item object and mixin new values + // into old object + lang.mixin(oldItem, newItem); + } + }else if(newIndex!==-1){ + // this is a add + var l, i; + var tempId = object.temporaryId; + if(tempId){ + // this item had a temporary id that was changed + l = this.items ? this.items.length : 0; + for(i=l-1; i>=0; i--){ + if(this.items[i].id === tempId){ + this.items[i] = newItem; + break; + } + } + // clean to temp id state and reset the item with new id to its current state. + var stateObj = this._getItemStoreStateObj({id: tempId}); + this._cleanItemStoreState(tempId); + this._setItemStoreState(newItem, stateObj ? stateObj.state : null); + } + + var s = this._getItemStoreStateObj(newItem); + if(s && s.state === "storing"){ + // if the item is at the correct index (creation) + // we must fix it. Should not occur but ensure integrity. + if(this.items && this.items[newIndex] && this.items[newIndex].id !== newItem.id){ + l = this.items.length; + for(i=l-1; i>=0; i--){ + if(this.items[i].id === newItem.id){ + this.items.splice(i, 1); + break; + } + } + this.items.splice(newIndex, 0, newItem); + } + // update with the latest values from the store. + lang.mixin(s.renderItem, newItem); + }else{ + this.items.splice(newIndex, 0, newItem); + } + this.set("items", this.items); + } + + this._setItemStoreState(newItem, "stored"); + + if(!this.owner._isEditing){ + if(layoutCanChange){ + this.emit("layoutInvalidated"); + }else{ + // just update the item + this.emit("renderersInvalidated", oldItem); + } + } + }, + + _storeSetter: function(value){ + var r; + var owner = this.owner; + + if(this._observeHandler){ + this._observeHandler.remove(); + this._observeHandler = null; + } + if(value){ + var results = value.query(owner.query, owner.queryOptions); + if(results.observe){ + // user asked us to observe the store + this._observeHandler = results.observe(lang.hitch(this, this._updateItems), true); + } + results = results.map(lang.hitch(this, function(item){ + var renderItem = owner.itemToRenderItem(item, value); + // keep a reference on the store data item. + renderItem._item = item; + return renderItem; + })); + r = when(results, lang.hitch(this, this._initItems)); + }else{ + // we remove the store + r = this._initItems([]); + } + this.store = value; + return r; + }, + + _getItemStoreStateObj: function(/*Object*/item){ + // tags + // private + + var parentManager = this._getParentStoreManager(); + if(parentManager){ + return parentManager._getItemStoreStateObj(item); + } + + var store = this.get("store"); + if(store != null && this._itemStoreState != null){ + var id = item.id === undefined ? store.getIdentity(item) : item.id; + return this._itemStoreState[id]; + } + return null; + }, + + getItemStoreState: function(item){ + // summary: + // Returns the creation state of an item. + // This state is changing during the interactive creation of an item. + // Valid values are: + // - "unstored": The event is being interactively created. It is not in the store yet. + // - "storing": The creation gesture has ended, the event is being added to the store. + // - "stored": The event is not in the two previous states, and is assumed to be in the store + // (not checking because of performance reasons, use store API for testing existence in store). + // item: Object + // The item. + // returns: String + + var parentManager = this._getParentStoreManager(); + if(parentManager){ + return parentManager.getItemStoreState(item); + } + + if(this._itemStoreState == null){ + return "stored"; + } + + var store = this.get("store"); + var id = item.id === undefined ? store.getIdentity(item) : item.id; + var s = this._itemStoreState[id]; + + if(store != null && s !== undefined){ + return s.state; + } + return "stored"; + }, + + _cleanItemStoreState: function(id){ + + var parentManager = this._getParentStoreManager(); + if(parentManager){ + return parentManager._cleanItemStoreState(id); + } + + if(!this._itemStoreState){ + return; + } + + var s = this._itemStoreState[id]; + if(s){ + delete this._itemStoreState[id]; + return true; + } + return false; + }, + + _setItemStoreState: function(/*Object*/item, /*String*/state){ + // tags + // private + + var parentManager = this._getParentStoreManager(); + if(parentManager){ + parentManager._setItemStoreState(item, state); + return; + } + + if(this._itemStoreState === undefined){ + this._itemStoreState = {}; + } + + var store = this.get("store"); + var id = item.id === undefined ? store.getIdentity(item) : item.id; + var s = this._itemStoreState[id]; + + if(state === "stored" || state == null){ + if(s !== undefined){ + delete this._itemStoreState[id]; + } + return; + } + + if(store){ + this._itemStoreState[id] = { + id: id, + item: item, + renderItem: this.owner.itemToRenderItem(item, store), + state: state + }; + } + } + + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreMixin.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreMixin.js new file mode 100644 index 00000000..8375f271 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreMixin.js @@ -0,0 +1,42 @@ +//>>built +define("dojox/calendar/StoreMixin",["dojo/_base/declare","dojo/_base/array","dojo/_base/html","dojo/_base/lang","dojo/dom-class","dojo/Stateful","dojo/when"],function(_1,_2,_3,_4,_5,_6,_7){ +return _1("dojox.calendar.StoreMixin",_6,{store:null,query:{},queryOptions:null,startTimeAttr:"startTime",endTimeAttr:"endTime",summaryAttr:"summary",allDayAttr:"allDay",subColumnAttr:"calendar",cssClassFunc:null,decodeDate:null,encodeDate:null,displayedItemsInvalidated:false,itemToRenderItem:function(_8,_9){ +if(this.owner){ +return this.owner.itemToRenderItem(_8,_9); +} +return {id:_9.getIdentity(_8),summary:_8[this.summaryAttr],startTime:(this.decodeDate&&this.decodeDate(_8[this.startTimeAttr]))||this.newDate(_8[this.startTimeAttr],this.dateClassObj),endTime:(this.decodeDate&&this.decodeDate(_8[this.endTimeAttr]))||this.newDate(_8[this.endTimeAttr],this.dateClassObj),allDay:_8[this.allDayAttr]!=null?_8[this.allDayAttr]:false,subColumn:_8[this.subColumnAttr],cssClass:this.cssClassFunc?this.cssClassFunc(_8):null}; +},renderItemToItem:function(_a,_b){ +if(this.owner){ +return this.owner.renderItemToItem(_a,_b); +} +var _c={}; +_c[_b.idProperty]=_a.id; +_c[this.summaryAttr]=_a.summary; +_c[this.startTimeAttr]=(this.encodeDate&&this.encodeDate(_a.startTime))||_a.startTime; +_c[this.endTimeAttr]=(this.encodeDate&&this.encodeDate(_a.endTime))||_a.endTime; +if(_a.subColumn){ +_c[this.subColumnAttr]=_a.subColumn; +} +return this.getItemStoreState(_a)==="unstored"?_c:_4.mixin(_a._item,_c); +},_computeVisibleItems:function(_d){ +if(this.owner){ +return this.owner._computeVisibleItems(_d); +} +_d.items=this.storeManager._computeVisibleItems(_d); +},_initItems:function(_e){ +this.set("items",_e); +return _e; +},_refreshItemsRendering:function(_f){ +},_setStoreAttr:function(_10){ +this.store=_10; +return this.storeManager.set("store",_10); +},_getItemStoreStateObj:function(_11){ +return this.storeManager._getItemStoreStateObj(_11); +},getItemStoreState:function(_12){ +return this.storeManager.getItemStoreState(_12); +},_cleanItemStoreState:function(id){ +this.storeManager._cleanItemStoreState(id); +},_setItemStoreState:function(_13,_14){ +this.storeManager._setItemStoreState(_13,_14); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreMixin.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreMixin.js.uncompressed.js new file mode 100644 index 00000000..bb950937 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/StoreMixin.js.uncompressed.js @@ -0,0 +1,192 @@ +define("dojox/calendar/StoreMixin", ["dojo/_base/declare", "dojo/_base/array", "dojo/_base/html", "dojo/_base/lang", "dojo/dom-class", + "dojo/Stateful", "dojo/when"], + function(declare, arr, html, lang, domClass, Stateful, when){ + + return declare("dojox.calendar.StoreMixin", Stateful, { + + // summary: + // This mixin contains the store management. + + // store: dojo.store.Store + // The store that contains the events to display. + store: null, + + // query: Object + // A query that can be passed to when querying the store. + query: {}, + + // queryOptions: dojo/store/api/Store.QueryOptions? + // Options to be applied when querying the store. + queryOptions: null, + + // startTimeAttr: String + // The attribute of the store item that contains the start time of + // the events represented by this item. Default is "startTime". + startTimeAttr: "startTime", + + // endTimeAttr: String + // The attribute of the store item that contains the end time of + // the events represented by this item. Default is "endTime". + endTimeAttr: "endTime", + + // summaryAttr: String + // The attribute of the store item that contains the summary of + // the events represented by this item. Default is "summary". + summaryAttr: "summary", + + // allDayAttr: String + // The attribute of the store item that contains the all day state of + // the events represented by this item. Default is "allDay". + allDayAttr: "allDay", + + // subColumnAttr: String + // The attribute of the store item that contains the sub column name of + // the events represented by this item. Default is "calendar". + subColumnAttr: "calendar", + + // cssClassFunc: Function + // Optional function that returns a css class name to apply to item renderers that are displaying the specified item in parameter. + cssClassFunc: null, + + // decodeDate: Function? + // An optional function to transform store date into Date objects. Default is null. + decodeDate: null, + + // encodeDate: Function? + // An optional function to transform Date objects into store date. Default is null. + encodeDate: null, + + // displayedItemsInvalidated: Boolean + // Whether the data items displayed must be recomputed, usually after the displayed + // time range has changed. + // tags: + // protected + displayedItemsInvalidated: false, + + itemToRenderItem: function(item, store){ + // summary: + // Creates the render item based on the dojo.store item. It must be of the form: + // | { + // | id: Object, + // | startTime: Date, + // | endTime: Date, + // | summary: String + // | } + // By default it is building an object using the store id, the summaryAttr, + // startTimeAttr and endTimeAttr properties as well as decodeDate property if not null. + // Other fields or way to query fields can be used if needed. + // item: Object + // The store item. + // store: dojo.store.api.Store + // The store. + // returns: Object + if(this.owner){ + return this.owner.itemToRenderItem(item, store); + } + return { + id: store.getIdentity(item), + summary: item[this.summaryAttr], + startTime: (this.decodeDate && this.decodeDate(item[this.startTimeAttr])) || this.newDate(item[this.startTimeAttr], this.dateClassObj), + endTime: (this.decodeDate && this.decodeDate(item[this.endTimeAttr])) || this.newDate(item[this.endTimeAttr], this.dateClassObj), + allDay: item[this.allDayAttr] != null ? item[this.allDayAttr] : false, + subColumn: item[this.subColumnAttr], + cssClass: this.cssClassFunc ? this.cssClassFunc(item) : null + }; + }, + + renderItemToItem: function(/*Object*/ renderItem, /*dojo.store.api.Store*/ store){ + // summary: + // Create a store item based on the render item. It must be of the form: + // | { + // | id: Object + // | startTime: Date, + // | endTime: Date, + // | summary: String + // | } + // By default it is building an object using the summaryAttr, startTimeAttr and endTimeAttr properties + // and encodeDate property if not null. If the encodeDate property is null a Date object will be set in the start and end time. + // When using a JsonRest store, for example, it is recommended to transfer dates using the ISO format (see dojo.date.stamp). + // In that case, provide a custom function to the encodeDate property that is using the date ISO encoding provided by Dojo. + // renderItem: Object + // The render item. + // store: dojo.store.api.Store + // The store. + // returns:Object + if(this.owner){ + return this.owner.renderItemToItem(renderItem, store); + } + var item = {}; + item[store.idProperty] = renderItem.id; + item[this.summaryAttr] = renderItem.summary; + item[this.startTimeAttr] = (this.encodeDate && this.encodeDate(renderItem.startTime)) || renderItem.startTime; + item[this.endTimeAttr] = (this.encodeDate && this.encodeDate(renderItem.endTime)) || renderItem.endTime; + if(renderItem.subColumn){ + item[this.subColumnAttr] = renderItem.subColumn; + } + return this.getItemStoreState(renderItem) === "unstored" ? item : lang.mixin(renderItem._item, item); + }, + + _computeVisibleItems: function(renderData){ + // summary: + // Computes the data items that are in the displayed interval. + // renderData: Object + // The renderData that contains the start and end time of the displayed interval. + // tags: + // protected + + if(this.owner){ + return this.owner._computeVisibleItems(renderData); + } + renderData.items = this.storeManager._computeVisibleItems(renderData); + }, + + _initItems: function(items){ + // tags: + // private + this.set("items", items); + return items; + }, + + _refreshItemsRendering: function(renderData){ + }, + + _setStoreAttr: function(value){ + this.store = value; + return this.storeManager.set("store", value); + }, + + _getItemStoreStateObj: function(/*Object*/item){ + // tags + // private + return this.storeManager._getItemStoreStateObj(item); + }, + + getItemStoreState: function(item){ + // summary: + // Returns the creation state of an item. + // This state is changing during the interactive creation of an item. + // Valid values are: + // - "unstored": The event is being interactively created. It is not in the store yet. + // - "storing": The creation gesture has ended, the event is being added to the store. + // - "stored": The event is not in the two previous states, and is assumed to be in the store + // (not checking because of performance reasons, use store API for testing existence in store). + // item: Object + // The item. + // returns: String + + return this.storeManager.getItemStoreState(item); + }, + + _cleanItemStoreState: function(id){ + this.storeManager._cleanItemStoreState(id); + }, + + _setItemStoreState: function(/*Object*/item, /*String*/state){ + // tags + // private + this.storeManager._setItemStoreState(item, state); + } + + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Touch.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Touch.js new file mode 100644 index 00000000..47868db4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/Touch.js @@ -0,0 +1,251 @@ +//>>built +define("dojox/calendar/Touch",["dojo/_base/array","dojo/_base/lang","dojo/_base/declare","dojo/dom","dojo/dom-geometry","dojo/_base/window","dojo/on","dojo/_base/event","dojo/keys"],function(_1,_2,_3,_4,_5,_6,on,_7,_8){ +return _3("dojox.calendar.Touch",null,{touchStartEditingTimer:500,touchEndEditingTimer:10000,postMixInProperties:function(){ +this.on("rendererCreated",_2.hitch(this,function(_9){ +var _a=_9.renderer.renderer; +this.own(on(_a.domNode,"touchstart",_2.hitch(this,function(e){ +this._onRendererTouchStart(e,_a); +}))); +})); +},_onRendererTouchStart:function(e,_b){ +var p=this._edProps; +if(p&&p.endEditingTimer){ +clearTimeout(p.endEditingTimer); +p.endEditingTimer=null; +} +var _c=_b.item.item; +if(p&&p.endEditingTimer){ +clearTimeout(p.endEditingTimer); +p.endEditingTimer=null; +} +if(p!=null&&p.item!=_c){ +if(p.startEditingTimer){ +clearTimeout(p.startEditingTimer); +} +this._endItemEditing("touch",false); +p=null; +} +if(!p){ +var _d=[]; +_d.push(on(_6.doc,"touchend",_2.hitch(this,this._docEditingTouchEndHandler))); +_d.push(on(this.itemContainer,"touchmove",_2.hitch(this,this._docEditingTouchMoveHandler))); +this._setEditingProperties({touchMoved:false,item:_c,renderer:_b,rendererKind:_b.rendererKind,event:e,handles:_d,liveLayout:this.liveLayout}); +p=this._edProps; +} +if(this._isEditing){ +_2.mixin(p,this._getTouchesOnRenderers(e,p.editedItem)); +this._startTouchItemEditingGesture(e); +}else{ +if(e.touches.length>1){ +_7.stop(e); +return; +} +this._touchSelectionTimer=setTimeout(_2.hitch(this,function(){ +this._saveSelectedItems=this.get("selectedItems"); +var _e=this.selectFromEvent(e,_c._item,_b,false); +if(_e){ +this._pendingSelectedItem=_c; +}else{ +delete this._saveSelectedItems; +} +this._touchSelectionTimer=null; +}),200); +p.start={x:e.touches[0].screenX,y:e.touches[0].screenY}; +if(this.isItemEditable(p.item,p.rendererKind)){ +this._edProps.startEditingTimer=setTimeout(_2.hitch(this,function(){ +if(this._touchSelectionTimer){ +clearTimeout(this._touchSelectionTimer); +delete this._touchSelectionTime; +} +if(this._pendingSelectedItem){ +this.dispatchChange(this._saveSelectedItems==null?null:this._saveSelectedItems[0],this._pendingSelectedItem,null,e); +delete this._saveSelectedItems; +delete this._pendingSelectedItem; +}else{ +this.selectFromEvent(e,_c._item,_b); +} +this._startItemEditing(p.item,"touch",e); +p.moveTouchIndex=0; +this._startItemEditingGesture([this.getTime(e)],"move","touch",e); +}),this.touchStartEditingTimer); +} +} +},_docEditingTouchMoveHandler:function(e){ +var p=this._edProps; +var _f={x:e.touches[0].screenX,y:e.touches[0].screenY}; +if(p.startEditingTimer&&(Math.abs(_f.x-p.start.x)>25||Math.abs(_f.y-p.start.y)>25)){ +clearTimeout(p.startEditingTimer); +p.startEditingTimer=null; +clearTimeout(this._touchSelectionTimer); +this._touchSelectionTimer=null; +if(this._pendingSelectedItem){ +delete this._pendingSelectedItem; +this.selectFromEvent(e,null,null,false); +} +} +p.touchMoved=true; +if(this._editingGesture){ +_7.stop(e); +if(p.itemBeginDispatched){ +var _10=[]; +var d=p.editKind=="resizeEnd"?p.editedItem.endTime:p.editedItem.startTime; +var _11=p.editedItem.subColumn; +switch(p.editKind){ +case "move": +var _12=p.moveTouchIndex==null||p.moveTouchIndex<0?0:p.moveTouchIndex; +_10[0]=this.getTime(e,-1,-1,_12); +_11=this.getSubColumn(e,-1,-1,_12); +break; +case "resizeStart": +_10[0]=this.getTime(e,-1,-1,p.resizeStartTouchIndex); +break; +case "resizeEnd": +_10[0]=this.getTime(e,-1,-1,p.resizeEndTouchIndex); +break; +case "resizeBoth": +_10[0]=this.getTime(e,-1,-1,p.resizeStartTouchIndex); +_10[1]=this.getTime(e,-1,-1,p.resizeEndTouchIndex); +break; +} +this._moveOrResizeItemGesture(_10,"touch",e,_11); +if(p.editKind=="move"){ +if(this.renderData.dateModule.compare(p.editedItem.startTime,d)==-1){ +this.ensureVisibility(p.editedItem.startTime,p.editedItem.endTime,"start",this.autoScrollTouchMargin); +}else{ +this.ensureVisibility(p.editedItem.startTime,p.editedItem.endTime,"end",this.autoScrollTouchMargin); +} +}else{ +if(e.editKind=="resizeStart"||e.editKind=="resizeBoth"){ +this.ensureVisibility(p.editedItem.startTime,p.editedItem.endTime,"start",this.autoScrollTouchMargin); +}else{ +this.ensureVisibility(p.editedItem.startTime,p.editedItem.endTime,"end",this.autoScrollTouchMargin); +} +} +} +} +},autoScrollTouchMargin:10,_docEditingTouchEndHandler:function(e){ +_7.stop(e); +var p=this._edProps; +if(p.startEditingTimer){ +clearTimeout(p.startEditingTimer); +p.startEditingTimer=null; +} +if(this._isEditing){ +_2.mixin(p,this._getTouchesOnRenderers(e,p.editedItem)); +if(this._editingGesture){ +if(p.touchesLen==0){ +this._endItemEditingGesture("touch",e); +if(this.touchEndEditingTimer>0){ +p.endEditingTimer=setTimeout(_2.hitch(this,function(){ +this._endItemEditing("touch",false); +}),this.touchEndEditingTimer); +} +}else{ +if(this._editingGesture){ +this._endItemEditingGesture("touch",e); +} +this._startTouchItemEditingGesture(e); +} +} +}else{ +if(!p.touchMoved){ +_7.stop(e); +_1.forEach(p.handles,function(_13){ +_13.remove(); +}); +if(this._touchSelectionTimer){ +clearTimeout(this._touchSelectionTimer); +this.selectFromEvent(e,p.item._item,p.renderer,true); +}else{ +if(this._pendingSelectedItem){ +this.dispatchChange(this._saveSelectedItems.length==0?null:this._saveSelectedItems[0],this._pendingSelectedItem,null,e); +delete this._saveSelectedItems; +delete this._pendingSelectedItem; +} +} +if(this._pendingDoubleTap&&this._pendingDoubleTap.item==p.item){ +this._onItemDoubleClick({triggerEvent:e,renderer:p.renderer,item:p.item._item}); +clearTimeout(this._pendingDoubleTap.timer); +delete this._pendingDoubleTap; +}else{ +this._pendingDoubleTap={item:p.item,timer:setTimeout(_2.hitch(this,function(){ +delete this._pendingDoubleTap; +}),this.doubleTapDelay)}; +this._onItemClick({triggerEvent:e,renderer:p.renderer,item:p.item._item}); +} +this._edProps=null; +}else{ +if(this._saveSelectedItems){ +this.set("selectedItems",this._saveSelectedItems); +delete this._saveSelectedItems; +delete this._pendingSelectedItem; +} +_1.forEach(p.handles,function(_14){ +_14.remove(); +}); +this._edProps=null; +} +} +},_startTouchItemEditingGesture:function(e){ +var p=this._edProps; +var _15=p.resizeStartTouchIndex!=-1; +var _16=p.resizeEndTouchIndex!=-1; +if(_15&&_16||this._editingGesture&&p.touchesLen==2&&(_16&&p.editKind=="resizeStart"||_15&&p.editKind=="resizeEnd")){ +if(this._editingGesture&&p.editKind!="resizeBoth"){ +this._endItemEditingGesture("touch",e); +} +p.editKind="resizeBoth"; +this._startItemEditingGesture([this.getTime(e,-1,-1,p.resizeStartTouchIndex),this.getTime(e,-1,-1,p.resizeEndTouchIndex)],p.editKind,"touch",e); +}else{ +if(_15&&p.touchesLen==1&&!this._editingGesture){ +this._startItemEditingGesture([this.getTime(e,-1,-1,p.resizeStartTouchIndex)],"resizeStart","touch",e); +}else{ +if(_16&&p.touchesLen==1&&!this._editingGesture){ +this._startItemEditingGesture([this.getTime(e,-1,-1,p.resizeEndTouchIndex)],"resizeEnd","touch",e); +}else{ +this._startItemEditingGesture([this.getTime(e)],"move","touch",e); +} +} +} +},_getTouchesOnRenderers:function(e,_17){ +var irs=this._getStartEndRenderers(_17); +var _18=-1; +var _19=-1; +var _1a=-1; +var _1b=irs[0]!=null&&irs[0].resizeStartHandle!=null; +var _1c=irs[1]!=null&&irs[1].resizeEndHandle!=null; +var len=0; +var _1d=false; +var _1e=this.rendererManager.itemToRenderer[_17.id]; +for(var i=0;i 1){ + event.stop(e); + return; + } + + // set the selection state without dispatching (on touch end) after a short amount of time. + // to allow a bit of time to scroll without selecting (graphically at least) + this._touchSelectionTimer = setTimeout(lang.hitch(this, function(){ + + this._saveSelectedItems = this.get("selectedItems"); + + var changed = this.selectFromEvent(e, theItem._item, renderer, false); + + if(changed){ + this._pendingSelectedItem = theItem; + }else{ + delete this._saveSelectedItems; + } + this._touchSelectionTimer = null; + }), 200); + + p.start = {x: e.touches[0].screenX, y: e.touches[0].screenY}; + + if(this.isItemEditable(p.item, p.rendererKind)){ + + // editing gesture timer + this._edProps.startEditingTimer = setTimeout(lang.hitch(this, function(){ + + // we are editing, so the item *must* be selected. + if(this._touchSelectionTimer){ + clearTimeout(this._touchSelectionTimer); + delete this._touchSelectionTime; + } + if(this._pendingSelectedItem){ + this.dispatchChange(this._saveSelectedItems == null ? null : this._saveSelectedItems[0], this._pendingSelectedItem, null, e); + delete this._saveSelectedItems; + delete this._pendingSelectedItem; + }else{ + this.selectFromEvent(e, theItem._item, renderer); + } + + this._startItemEditing(p.item, "touch", e); + + p.moveTouchIndex = 0; + + // A move gesture is initiated even if we don't move + this._startItemEditingGesture([this.getTime(e)], "move", "touch", e); + + }), this.touchStartEditingTimer); + + } + } + }, + + _docEditingTouchMoveHandler: function(e){ + // tags: + // private + var p = this._edProps; + + // When the screen is touched, it can dispatch move events if the + // user press the finger a little more... + var touch = {x: e.touches[0].screenX, y: e.touches[0].screenY}; + if(p.startEditingTimer && + (Math.abs(touch.x - p.start.x) > 25 || + Math.abs(touch.y - p.start.y) > 25)) { + + // scroll use case, do not edit + clearTimeout(p.startEditingTimer); + p.startEditingTimer = null; + + clearTimeout(this._touchSelectionTimer); + this._touchSelectionTimer = null; + + if(this._pendingSelectedItem){ + delete this._pendingSelectedItem; + this.selectFromEvent(e, null, null, false); + } + } + + p.touchMoved = true; + + if(this._editingGesture){ + + event.stop(e); + + if(p.itemBeginDispatched){ + + var times = []; + var d = p.editKind == "resizeEnd" ? p.editedItem.endTime : p.editedItem.startTime; + var subColumn = p.editedItem.subColumn; + + switch(p.editKind){ + case "move": + var touchIndex = p.moveTouchIndex == null || p.moveTouchIndex < 0 ? 0 : p.moveTouchIndex; + times[0] = this.getTime(e, -1, -1, touchIndex); + subColumn = this.getSubColumn(e, -1, -1, touchIndex); + break; + case "resizeStart": + times[0] = this.getTime(e, -1, -1, p.resizeStartTouchIndex); + break; + case "resizeEnd": + times[0] = this.getTime(e, -1, -1, p.resizeEndTouchIndex); + break; + case "resizeBoth": + times[0] = this.getTime(e, -1, -1, p.resizeStartTouchIndex); + times[1] = this.getTime(e, -1, -1, p.resizeEndTouchIndex); + break; + } + + this._moveOrResizeItemGesture(times, "touch", e, subColumn); + + if(p.editKind == "move"){ + if(this.renderData.dateModule.compare(p.editedItem.startTime, d) == -1){ + this.ensureVisibility(p.editedItem.startTime, p.editedItem.endTime, "start", this.autoScrollTouchMargin); + }else{ + this.ensureVisibility(p.editedItem.startTime, p.editedItem.endTime, "end", this.autoScrollTouchMargin); + } + }else if(e.editKind == "resizeStart" || e.editKind == "resizeBoth"){ + this.ensureVisibility(p.editedItem.startTime, p.editedItem.endTime, "start", this.autoScrollTouchMargin); + }else{ + this.ensureVisibility(p.editedItem.startTime, p.editedItem.endTime, "end", this.autoScrollTouchMargin); + } + + } + } // else scroll, if any, is delegated to sub class + + }, + + // autoScrollTouchMargin: Integer + // The minimum number of minutes of margin around the edited event. + autoScrollTouchMargin: 10, + + _docEditingTouchEndHandler: function(e){ + // tags: + // private + event.stop(e); + + var p = this._edProps; + + if(p.startEditingTimer){ + clearTimeout(p.startEditingTimer); + p.startEditingTimer = null; + } + + if(this._isEditing){ + + lang.mixin(p, this._getTouchesOnRenderers(e, p.editedItem)); + + if(this._editingGesture){ + + if(p.touchesLen == 0){ + + // all touches were removed => end of editing gesture + this._endItemEditingGesture("touch", e); + + if(this.touchEndEditingTimer > 0){ + + // Timer that trigger the end of the item editing mode. + p.endEditingTimer = setTimeout(lang.hitch(this, function(){ + + this._endItemEditing("touch", false); + + }), this.touchEndEditingTimer); + } // else validation must be explicit + + }else{ + + if(this._editingGesture){ + this._endItemEditingGesture("touch", e); + } + // there touches of interest on item, process them. + this._startTouchItemEditingGesture(e); + } + } + + }else if(!p.touchMoved){ + + event.stop(e); + + arr.forEach(p.handles, function(handle){ + handle.remove(); + }); + + if(this._touchSelectionTimer){ + // selection timer was not reached to a proper selection. + clearTimeout(this._touchSelectionTimer); + this.selectFromEvent(e, p.item._item, p.renderer, true); + + }else if(this._pendingSelectedItem){ + // selection timer was reached, dispatch change event + this.dispatchChange(this._saveSelectedItems.length == 0 ? null : this._saveSelectedItems[0], + this._pendingSelectedItem, null, e); // todo renderer ? + delete this._saveSelectedItems; + delete this._pendingSelectedItem; + } + + if(this._pendingDoubleTap && this._pendingDoubleTap.item == p.item){ + this._onItemDoubleClick({ + triggerEvent: e, + renderer: p.renderer, + item: p.item._item + }); + + clearTimeout(this._pendingDoubleTap.timer); + + delete this._pendingDoubleTap; + + }else{ + + this._pendingDoubleTap = { + item: p.item, + timer: setTimeout(lang.hitch(this, function(){ + delete this._pendingDoubleTap; + }), this.doubleTapDelay) + }; + + this._onItemClick({ + triggerEvent: e, + renderer: p.renderer, + item: p.item._item + }); + } + + this._edProps = null; + + }else{ + // scroll view has finished. + + if(this._saveSelectedItems){ + + // selection without dipatching was done, but the view scrolled, + // so revert last selection + this.set("selectedItems", this._saveSelectedItems); + delete this._saveSelectedItems; + delete this._pendingSelectedItem; + } + + arr.forEach(p.handles, function(handle){ + handle.remove(); + }); + + this._edProps = null; + } + }, + + _startTouchItemEditingGesture: function(e){ + // summary: + // Determines if a editing gesture is starting according to touches. + // tags: + // private + + var p = this._edProps; + + var fromResizeStart = p.resizeStartTouchIndex != -1; + var fromResizeEnd = p.resizeEndTouchIndex != -1; + + if(fromResizeStart && fromResizeEnd || // initial gesture using two touches + this._editingGesture && p.touchesLen == 2 && + (fromResizeEnd && p.editKind == "resizeStart" || + fromResizeStart && p.editKind =="resizeEnd")){ // gesture one after the other touch + + if(this._editingGesture && p.editKind != "resizeBoth"){ // stop ongoing gesture + this._endItemEditingGesture("touch", e); + } + + p.editKind = "resizeBoth"; + + this._startItemEditingGesture([this.getTime(e, -1, -1, p.resizeStartTouchIndex), + this.getTime(e, -1, -1, p.resizeEndTouchIndex)], + p.editKind, "touch", e); + + }else if(fromResizeStart && p.touchesLen == 1 && !this._editingGesture){ + + this._startItemEditingGesture([this.getTime(e, -1, -1, p.resizeStartTouchIndex)], + "resizeStart", "touch", e); + + }else if(fromResizeEnd && p.touchesLen == 1 && !this._editingGesture){ + + this._startItemEditingGesture([this.getTime(e, -1, -1, p.resizeEndTouchIndex)], + "resizeEnd", "touch", e); + + } else { + // A move gesture is initiated even if we don't move + this._startItemEditingGesture([this.getTime(e)], "move", "touch", e); + } + }, + + _getTouchesOnRenderers: function(e, item){ + // summary: + // Returns the touch indices that are on a editing handles or body of the renderers + // tags: + // private + // item: Object + // The render item. + // e: Event + // The touch event. + // tags: + // private + + var irs = this._getStartEndRenderers(item); + + var resizeStartTouchIndex = -1; + var resizeEndTouchIndex = -1; + var moveTouchIndex = -1; + var hasResizeStart = irs[0] != null && irs[0].resizeStartHandle != null; + var hasResizeEnd = irs[1] != null && irs[1].resizeEndHandle != null; + var len = 0; + var touched = false; + var list = this.rendererManager.itemToRenderer[item.id]; + + for(var i=0; i>built +require({cache:{"url:dojox/calendar/templates/VerticalRenderer.html":"
    \n\t
    \n\t
    \n\t\t
    ▲
    \n\t\t
    \n\t\t
    \n\t
    \t\n\t▼\n\t
    \n\t
    \n\t
    \n\t
    \n
    \n"}}); +define("dojox/calendar/VerticalRenderer",["dojo/_base/declare","dijit/_WidgetBase","dijit/_TemplatedMixin","dojox/calendar/_RendererMixin","dojo/text!./templates/VerticalRenderer.html"],function(_1,_2,_3,_4,_5){ +return _1("dojox.calendar.VerticalRenderer",[_2,_3,_4],{templateString:_5,postCreate:function(){ +this.inherited(arguments); +this._applyAttributes(); +},_isElementVisible:function(_6,_7,_8,_9){ +var d; +switch(_6){ +case "startTimeLabel": +d=this.item.startTime; +if(this.item.allDay||this.owner.isStartOfDay(d)){ +return false; +} +break; +case "endTimeLabel": +d=this.item.endTime; +if(this.item.allDay||this.owner.isStartOfDay(d)){ +return false; +} +break; +} +return this.inherited(arguments); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/VerticalRenderer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/VerticalRenderer.js.uncompressed.js new file mode 100644 index 00000000..6430e3de --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/VerticalRenderer.js.uncompressed.js @@ -0,0 +1,41 @@ +require({cache:{ +'url:dojox/calendar/templates/VerticalRenderer.html':"
    \n\t
    \n\t
    \n\t\t
    ▲
    \n\t\t
    \n\t\t
    \n\t
    \t\n\t▼\n\t
    \n\t
    \n\t
    \n\t
    \n
    \n"}}); +define("dojox/calendar/VerticalRenderer", ["dojo/_base/declare", "dijit/_WidgetBase", "dijit/_TemplatedMixin", + "dojox/calendar/_RendererMixin", "dojo/text!./templates/VerticalRenderer.html"], + + function(declare, _WidgetBase, _TemplatedMixin, _RendererMixin, template){ + + return declare("dojox.calendar.VerticalRenderer", [_WidgetBase, _TemplatedMixin, _RendererMixin], { + + // summary: + // The default item vertical renderer. + + templateString: template, + + postCreate: function() { + this.inherited(arguments); + this._applyAttributes(); + }, + + _isElementVisible: function(elt, startHidden, endHidden, size){ + var d; + + switch(elt){ + case "startTimeLabel": + d = this.item.startTime; + if(this.item.allDay || this.owner.isStartOfDay(d)){ + return false; + } + break; + case "endTimeLabel": + d = this.item.endTime; + if(this.item.allDay || this.owner.isStartOfDay(d)){ + return false; + } + break; + } + return this.inherited(arguments); + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ViewBase.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ViewBase.js new file mode 100644 index 00000000..0feff9e3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ViewBase.js @@ -0,0 +1,1314 @@ +//>>built +define("dojox/calendar/ViewBase",["dojo/_base/declare","dojo/_base/lang","dojo/_base/array","dojo/_base/window","dojo/_base/event","dojo/_base/html","dojo/sniff","dojo/query","dojo/dom","dojo/dom-style","dojo/dom-class","dojo/dom-construct","dojo/dom-geometry","dojo/on","dojo/date","dojo/date/locale","dojo/when","dijit/_WidgetBase","dojox/widget/_Invalidating","dojox/widget/Selection","dojox/calendar/time","./StoreMixin","./StoreManager","./RendererManager"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,on,_e,_f,_10,_11,_12,_13,_14,_15,_16,_17){ +return _1("dojox.calendar.ViewBase",[_11,_15,_12,_13],{datePackage:_e,_calendar:"gregorian",viewKind:null,_layoutStep:1,_layoutUnit:"day",resizeCursor:"n-resize",formatItemTimeFunc:null,_cssDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],_getFormatItemTimeFuncAttr:function(){ +if(this.formatItemTimeFunc){ +return this.formatItemTimeFunc; +} +if(this.owner!=null){ +return this.owner.get("formatItemTimeFunc"); +} +},_viewHandles:null,doubleTapDelay:300,constructor:function(_18){ +_18=_18||{}; +this._calendar=_18.datePackage?_18.datePackage.substr(_18.datePackage.lastIndexOf(".")+1):this._calendar; +this.dateModule=_18.datePackage?_2.getObject(_18.datePackage,false):_e; +this.dateClassObj=this.dateModule.Date||Date; +this.dateLocaleModule=_18.datePackage?_2.getObject(_18.datePackage+".locale",false):_f; +this._viewHandles=[]; +this.storeManager=new _16({owner:this,_ownerItemsProperty:"items"}); +this.storeManager.on("layoutInvalidated",_2.hitch(this,this._refreshItemsRendering)); +this.storeManager.on("dataLoaded",_2.hitch(this,function(_19){ +this.set("items",_19); +})); +this.rendererManager=new _17({owner:this}); +this.rendererManager.on("rendererCreated",_2.hitch(this,this._onRendererCreated)); +this.rendererManager.on("rendererReused",_2.hitch(this,this._onRendererReused)); +this.rendererManager.on("rendererRecycled",_2.hitch(this,this._onRendererRecycled)); +this.rendererManager.on("rendererDestroyed",_2.hitch(this,this._onRendererDestroyed)); +this.rendererManager.on("layoutInvalidated",_2.hitch(this,this._refreshItemsRendering)); +this.rendererManager.on("renderersInvalidated",_2.hitch(this,function(_1a){ +this.updateRenderers(_1a); +})); +this.decorationStoreManager=new _16({owner:this,_ownerItemsProperty:"decorationItems"}); +this.decorationStoreManager.on("layoutInvalidated",_2.hitch(this,this._refreshDecorationItemsRendering)); +this.decorationStoreManager.on("dataLoaded",_2.hitch(this,function(_1b){ +this.set("decorationItems",_1b); +})); +this.decorationRendererManager=new _17({owner:this}); +},destroy:function(_1c){ +this.rendererManager.destroy(); +this.decorationRendererManager.destroy(); +while(this._viewHandles.length>0){ +this._viewHandles.pop().remove(); +} +this.inherited(arguments); +},resize:function(_1d){ +if(_1d){ +_d.setMarginBox(this.domNode,_1d); +} +},beforeActivate:function(){ +},afterActivate:function(){ +},beforeDeactivate:function(){ +},afterDeactivate:function(){ +},_getTopOwner:function(){ +var p=this; +while(p.owner!=undefined){ +p=p.owner; +} +return p; +},_createRenderData:function(){ +},_validateProperties:function(){ +},_setText:function(_1e,_1f,_20){ +if(_1f!=null){ +if(!_20&&_1e.hasChildNodes()){ +_1e.childNodes[0].childNodes[0].nodeValue=_1f; +}else{ +while(_1e.hasChildNodes()){ +_1e.removeChild(_1e.lastChild); +} +var _21=_4.doc.createElement("span"); +if(_7("dojo-bidi")){ +this.applyTextDir(_21,_1f); +} +if(_20){ +_21.innerHTML=_1f; +}else{ +_21.appendChild(_4.doc.createTextNode(_1f)); +} +_1e.appendChild(_21); +} +} +},isAscendantHasClass:function(_22,_23,_24){ +while(_22!=_23&&_22!=document){ +if(_b.contains(_22,_24)){ +return true; +} +_22=_22.parentNode; +} +return false; +},isWeekEnd:function(_25){ +return _f.isWeekend(_25); +},getWeekNumberLabel:function(_26){ +if(_26.toGregorian){ +_26=_26.toGregorian(); +} +return _f.format(_26,{selector:"date",datePattern:"w"}); +},addAndFloor:function(_27,_28,_29){ +var d=this.dateModule.add(_27,_28,_29); +if(d.getHours()==23){ +d=this.dateModule.add(d,"hour",2); +}else{ +d=_14.floorToDay(d,true,this.dateClassObj); +} +return d; +},floorToDay:function(_2a,_2b){ +return _14.floorToDay(_2a,_2b,this.dateClassObj); +},floorToMonth:function(_2c,_2d){ +return _14.floorToMonth(_2c,_2d,this.dateClassObj); +},floorDate:function(_2e,_2f,_30,_31){ +return _14.floor(_2e,_2f,_30,_31,this.dateClassObj); +},isToday:function(_32){ +return _14.isToday(_32,this.dateClassObj); +},isStartOfDay:function(d){ +return _14.isStartOfDay(d,this.dateClassObj,this.dateModule); +},isOverlapping:function(_33,_34,_35,_36,_37,_38){ +return _14.isOverlapping(_33,_34,_35,_36,_37,_38); +},computeRangeOverlap:function(_39,_3a,_3b,_3c,_3d,_3e){ +var cal=_39.dateModule; +if(_3a==null||_3c==null||_3b==null||_3d==null){ +return null; +} +var _3f=cal.compare(_3a,_3d); +var _40=cal.compare(_3c,_3b); +if(_3e){ +if(_3f==0||_3f==1||_40==0||_40==1){ +return null; +} +}else{ +if(_3f==1||_40==1){ +return null; +} +} +return [this.newDate(cal.compare(_3a,_3c)>0?_3a:_3c,_39),this.newDate(cal.compare(_3b,_3d)>0?_3d:_3b,_39)]; +},isSameDay:function(_41,_42){ +if(_41==null||_42==null){ +return false; +} +return _41.getFullYear()==_42.getFullYear()&&_41.getMonth()==_42.getMonth()&&_41.getDate()==_42.getDate(); +},computeProjectionOnDate:function(_43,_44,_45,max){ +var cal=_43.dateModule; +var _46=_43.minHours; +var _47=_43.maxHours; +if(max<=0||cal.compare(_45,_44)==-1){ +return 0; +} +var gt=function(d){ +return d.getHours()*3600+d.getMinutes()*60+d.getSeconds(); +}; +var _48=this.floorToDay(_44,false,_43); +if(_45.getDate()!=_48.getDate()){ +if(_45.getMonth()==_48.getMonth()){ +if(_45.getDate()<_48.getDate()){ +return 0; +}else{ +if(_45.getDate()>_48.getDate()&&_47<24){ +return max; +} +} +}else{ +if(_45.getFullYear()==_48.getFullYear()){ +if(_45.getMonth()<_48.getMonth()){ +return 0; +}else{ +if(_45.getMonth()>_48.getMonth()){ +return max; +} +} +}else{ +if(_45.getFullYear()<_48.getFullYear()){ +return 0; +}else{ +if(_45.getFullYear()>_48.getFullYear()){ +return max; +} +} +} +} +} +var res; +var _49=86400; +if(this.isSameDay(_44,_45)||_47>24){ +var d=_2.clone(_44); +var _4a=0; +if(_46!=null&&_46!=0){ +d.setHours(_46); +_4a=gt(d); +} +d=_2.clone(_44); +d.setHours(_47); +var _4b; +if(_47==null||_47==24){ +_4b=_49; +}else{ +if(_47>24){ +_4b=_49+gt(d); +}else{ +_4b=gt(d); +} +} +var _4c=0; +if(_47>24&&_44.getDate()!=_45.getDate()){ +_4c=_49+gt(_45); +}else{ +_4c=gt(_45); +} +if(_4c<_4a){ +return 0; +} +if(_4c>_4b){ +return max; +} +_4c-=_4a; +res=(max*_4c)/(_4b-_4a); +}else{ +if(_45.getDate()<_44.getDate()&&_45.getMonth()==_44.getMonth()){ +return 0; +} +var d2=this.floorToDay(_45); +var dp1=_43.dateModule.add(_44,"day",1); +dp1=this.floorToDay(dp1,false,_43); +if(cal.compare(d2,_44)==1&&cal.compare(d2,dp1)==0||cal.compare(d2,dp1)==1){ +res=max; +}else{ +res=0; +} +} +return res; +},getTime:function(e,x,y,_4d){ +return null; +},getSubColumn:function(e,x,y,_4e){ +return null; +},getSubColumnIndex:function(_4f){ +if(this.subColumns){ +for(var i=0;imax){ +pos=max; +} +} +if(_57){ +this._scrollPos=pos; +}else{ +this._hScrollPos=pos; +} +var rtl=!this.isLeftToRight(); +if(this._domScroll){ +if(_57){ +this.scrollContainer.scrollTop=pos; +}else{ +_3.forEach(this._hScrollNodes,function(elt){ +_a.set(elt,"left",((rtl?1:-1)*pos)+"px"); +},this); +} +}else{ +if(!this._cssPrefix){ +this._cssPrefix=this.getCSSPrefix(); +} +var _5c=this._cssPrefix+"transform"; +if(_57){ +_a.set(this.sheetContainer,_5c,"translateY(-"+pos+"px)"); +}else{ +var css="translateX("+(rtl?"":"-")+pos+"px)"; +_3.forEach(this._hScrollNodes,function(elt){ +_a.set(elt,_5c,css); +},this); +} +} +},_setScrollPosition:function(pos){ +this._setScrollPositionBase(pos,true); +},_getScrollPosition:function(){ +return this._scrollPos; +},_setHScrollPosition:function(pos){ +this._setScrollPositionBase(pos,false); +},_setHScrollPositionImpl:function(pos,_5d,_5e){ +var css=_5d?null:"translateX(-"+pos+"px)"; +_3.forEach(this._hScrollNodes,function(elt){ +if(_5d){ +elt.scrollLeft=pos; +_a.set(elt,"left",(-pos)+"px"); +}else{ +_a.set(elt,cssProp,css); +} +},this); +},_hScrollPos:0,_getHScrollPosition:function(){ +return this._hScrollPos; +},scrollView:function(dir){ +},ensureVisibility:function(_5f,end,_60,_61,_62){ +},_getStoreAttr:function(){ +if(this.owner){ +return this.owner.get("store"); +} +return this.store; +},_setItemsAttr:function(_63){ +this._set("items",_63); +this.displayedItemsInvalidated=true; +},_refreshItemsRendering:function(){ +var rd=this.renderData; +this._computeVisibleItems(rd); +this._layoutRenderers(rd); +},_refreshDecorationItemsRendering:function(){ +var rd=this.renderData; +this._computeVisibleItems(rd); +this._layoutDecorationRenderers(rd); +},invalidateLayout:function(){ +this._layoutRenderers(this.renderData); +this._layoutDecorationRenderers(this.renderData); +},_setDecorationItemsAttr:function(_64){ +this._set("decorationItems",_64); +this.displayedDecorationItemsInvalidated=true; +},_getDecorationStoreAttr:function(){ +if(this.owner){ +return this.owner.get("decorationStore"); +} +return this.decorationStore; +},_setDecorationStoreAttr:function(_65){ +this.decorationStore=_65; +this.decorationStoreManager.set("store",_65); +},computeOverlapping:function(_66,_67){ +if(_66.length==0){ +return {numLanes:0,addedPassRes:[1]}; +} +var _68=[]; +for(var i=0;i<_66.length;i++){ +var _69=_66[i]; +this._layoutPass1(_69,_68); +} +var _6a=null; +if(_67){ +_6a=_2.hitch(this,_67)(_68); +} +return {numLanes:_68.length,addedPassRes:_6a}; +},_layoutPass1:function(_6b,_6c){ +var _6d=true; +for(var i=0;i<_6c.length;i++){ +var _6e=_6c[i]; +_6d=false; +for(var j=0;j<_6e.length&&!_6d;j++){ +if(_6e[j].start<_6b.end&&_6b.start<_6e[j].end){ +_6d=true; +_6e[j].extent=1; +} +} +if(!_6d){ +_6b.lane=i; +_6b.extent=-1; +_6e.push(_6b); +return; +} +} +_6c.push([_6b]); +_6b.lane=_6c.length-1; +_6b.extent=-1; +},_layoutInterval:function(_6f,_70,_71,end,_72){ +},layoutPriorityFunction:null,_sortItemsFunction:function(a,b){ +var res=this.dateModule.compare(a.startTime,b.startTime); +if(res==0){ +res=-1*this.dateModule.compare(a.endTime,b.endTime); +} +return res; +},_layoutRenderers:function(_73){ +this._layoutRenderersImpl(_73,this.rendererManager,_73.items,"dataItems"); +},_layoutDecorationRenderers:function(_74){ +this._layoutRenderersImpl(_74,this.decorationRendererManager,_74.decorationItems,"decorationItems"); +},_layoutRenderersImpl:function(_75,_76,_77,_78){ +if(!_77){ +return; +} +_76.recycleItemRenderers(); +var cal=_75.dateModule; +var _79=this.newDate(_75.startTime); +var _7a=_2.clone(_79); +var _7b; +var _77=_77.concat(); +var _7c=[],_7d; +var _7e={}; +var _7f=0; +while(cal.compare(_79,_75.endTime)==-1&&_77.length>0){ +_7b=this.addAndFloor(_79,this._layoutUnit,this._layoutStep); +var _80=_2.clone(_7b); +if(_75.minHours){ +_7a.setHours(_75.minHours); +} +if(_75.maxHours!=undefined&&_75.maxHours!=24){ +if(_75.maxHours<24){ +_80=cal.add(_7b,"day",-1); +} +_80=this.floorToDay(_80,true,_75); +_80.setHours(_75.maxHours-(_75.maxHours<24?0:24)); +} +_7d=_3.filter(_77,function(_81){ +var r=this.isOverlapping(_75,_81.startTime,_81.endTime,_7a,_80); +if(r){ +_7e[_81.id]=true; +_7c.push(_81); +}else{ +if(_7e[_81.id]){ +delete _7e[_81.id]; +}else{ +_7c.push(_81); +} +} +return r; +},this); +_77=_7c; +_7c=[]; +if(_7d.length>0){ +_7d.sort(_2.hitch(this,this.layoutPriorityFunction?this.layoutPriorityFunction:this._sortItemsFunction)); +this._layoutInterval(_75,_7f,_7a,_80,_7d,_78); +} +_79=_7b; +_7a=_2.clone(_79); +_7f++; +} +this._onRenderersLayoutDone(this); +},_recycleItemRenderers:function(_82){ +this.rendererManager.recycleItemRenderers(_82); +},getRenderers:function(_83){ +return this.rendererManager.getRenderers(_83); +},itemToRendererKindFunc:null,_itemToRendererKind:function(_84){ +if(this.itemToRendererKindFunc){ +return this.itemToRendererKindFunc(_84); +} +return this._defaultItemToRendererKindFunc(_84); +},_defaultItemToRendererKindFunc:function(_85){ +return null; +},_createRenderer:function(_86,_87,_88,_89){ +return this.rendererManager.createRenderer(_86,_87,_88,_89); +},_onRendererCreated:function(e){ +if(e.source==this){ +this.onRendererCreated(e); +} +if(this.owner!=null){ +this.owner._onRendererCreated(e); +} +},onRendererCreated:function(e){ +},_onRendererRecycled:function(e){ +if(e.source==this){ +this.onRendererRecycled(e); +} +if(this.owner!=null){ +this.owner._onRendererRecycled(e); +} +},onRendererRecycled:function(e){ +},_onRendererReused:function(e){ +if(e.source==this){ +this.onRendererReused(e); +} +if(this.owner!=null){ +this.owner._onRendererReused(e); +} +},onRendererReused:function(e){ +},_onRendererDestroyed:function(e){ +if(e.source==this){ +this.onRendererDestroyed(e); +} +if(this.owner!=null){ +this.owner._onRendererDestroyed(e); +} +},onRendererDestroyed:function(e){ +},_onRenderersLayoutDone:function(_8a){ +this.onRenderersLayoutDone(_8a); +if(this.owner!=null){ +this.owner._onRenderersLayoutDone(_8a); +} +},onRenderersLayoutDone:function(_8b){ +},_recycleRenderer:function(_8c,_8d){ +this.rendererManager.recycleRenderer(_8c,_8d); +},_destroyRenderer:function(_8e){ +this.rendererManager.destroyRenderer(_8e); +},_destroyRenderersByKind:function(_8f){ +this.rendererManager.destroyRenderersByKind(_8f); +},_updateEditingCapabilities:function(_90,_91){ +var _92=this.isItemMoveEnabled(_90,_91.rendererKind); +var _93=this.isItemResizeEnabled(_90,_91.rendererKind); +var _94=false; +if(_92!=_91.get("moveEnabled")){ +_91.set("moveEnabled",_92); +_94=true; +} +if(_93!=_91.get("resizeEnabled")){ +_91.set("resizeEnabled",_93); +_94=true; +} +if(_94){ +_91.updateRendering(); +} +},updateRenderers:function(obj,_95){ +if(obj==null){ +return; +} +var _96=_2.isArray(obj)?obj:[obj]; +for(var i=0;i<_96.length;i++){ +var _97=_96[i]; +if(_97==null||_97.id==null){ +continue; +} +var _98=this.rendererManager.itemToRenderer[_97.id]; +if(_98==null){ +continue; +} +var _99=this.isItemSelected(_97); +var _9a=this.isItemHovered(_97); +var _9b=this.isItemBeingEdited(_97); +var _9c=this.showFocus?this.isItemFocused(_97):false; +for(var j=0;j<_98.length;j++){ +var _9d=_98[j].renderer; +_9d.set("hovered",_9a); +_9d.set("selected",_99); +_9d.set("edited",_9b); +_9d.set("focused",_9c); +_9d.set("storeState",this.getItemStoreState(_97)); +this.applyRendererZIndex(_97,_98[j],_9a,_99,_9b,_9c); +if(!_95){ +_9d.set("item",_97); +if(_9d.updateRendering){ +_9d.updateRendering(); +} +} +} +} +},applyRendererZIndex:function(_9e,_9f,_a0,_a1,_a2,_a3){ +_a.set(_9f.container,{"zIndex":_a2||_a1?20:_9e.lane==undefined?0:_9e.lane}); +},getIdentity:function(_a4){ +return this.owner?this.owner.getIdentity(_a4):_a4.id; +},_setHoveredItem:function(_a5,_a6){ +if(this.owner){ +this.owner._setHoveredItem(_a5,_a6); +return; +} +if(this.hoveredItem&&_a5&&this.hoveredItem.id!=_a5.id||_a5==null||this.hoveredItem==null){ +var old=this.hoveredItem; +this.hoveredItem=_a5; +this.updateRenderers([old,this.hoveredItem],true); +if(_a5&&_a6){ +this._updateEditingCapabilities(_a5._item?_a5._item:_a5,_a6); +} +} +},hoveredItem:null,isItemHovered:function(_a7){ +if(this._isEditing&&this._edProps){ +return _a7.id==this._edProps.editedItem.id; +} +return this.owner?this.owner.isItemHovered(_a7):this.hoveredItem!=null&&this.hoveredItem.id==_a7.id; +},isItemFocused:function(_a8){ +return this._isItemFocused?this._isItemFocused(_a8):false; +},_setSelectionModeAttr:function(_a9){ +if(this.owner){ +this.owner.set("selectionMode",_a9); +}else{ +this.inherited(arguments); +} +},_getSelectionModeAttr:function(_aa){ +if(this.owner){ +return this.owner.get("selectionMode"); +} +return this.inherited(arguments); +},_setSelectedItemAttr:function(_ab){ +if(this.owner){ +this.owner.set("selectedItem",_ab); +}else{ +this.inherited(arguments); +} +},_getSelectedItemAttr:function(_ac){ +if(this.owner){ +return this.owner.get("selectedItem"); +} +return this.selectedItem; +},_setSelectedItemsAttr:function(_ad){ +if(this.owner){ +this.owner.set("selectedItems",_ad); +}else{ +this.inherited(arguments); +} +},_getSelectedItemsAttr:function(){ +if(this.owner){ +return this.owner.get("selectedItems"); +} +return this.inherited(arguments); +},isItemSelected:function(_ae){ +if(this.owner){ +return this.owner.isItemSelected(_ae); +} +return this.inherited(arguments); +},selectFromEvent:function(e,_af,_b0,_b1){ +if(this.owner){ +this.owner.selectFromEvent(e,_af,_b0,_b1); +}else{ +this.inherited(arguments); +} +},setItemSelected:function(_b2,_b3){ +if(this.owner){ +this.owner.setItemSelected(_b2,_b3); +}else{ +this.inherited(arguments); +} +},createItemFunc:null,_getCreateItemFuncAttr:function(){ +if(this.owner){ +return this.owner.get("createItemFunc"); +} +return this.createItemFunc; +},createOnGridClick:false,_getCreateOnGridClickAttr:function(){ +if(this.owner){ +return this.owner.get("createOnGridClick"); +} +return this.createOnGridClick; +},_gridMouseDown:false,_tempIdCount:0,_tempItemsMap:null,_onGridMouseDown:function(e){ +this._gridMouseDown=true; +this.showFocus=false; +if(this._isEditing){ +this._endItemEditing("mouse",false); +} +this._doEndItemEditing(this.owner,"mouse"); +this.set("focusedItem",null); +this.selectFromEvent(e,null,null,true); +if(this._setTabIndexAttr){ +this[this._setTabIndexAttr].focus(); +} +if(this._onRendererHandleMouseDown){ +var f=this.get("createItemFunc"); +if(!f){ +return; +} +var _b4=this._createdEvent=f(this,this.getTime(e),e,this.getSubColumn(e)); +var _b5=this.get("store"); +if(!_b4||_b5==null){ +return; +} +if(_b5.getIdentity(_b4)==undefined){ +var id="_tempId_"+(this._tempIdCount++); +_b4[_b5.idProperty]=id; +if(this._tempItemsMap==null){ +this._tempItemsMap={}; +} +this._tempItemsMap[id]=true; +} +var _b6=this.itemToRenderItem(_b4,_b5); +_b6._item=_b4; +this._setItemStoreState(_b4,"unstored"); +var _b7=this._getTopOwner(); +var _b8=_b7.get("items"); +_b7.set("items",_b8?_b8.concat([_b6]):[_b6]); +this._refreshItemsRendering(); +var _b9=this.getRenderers(_b4); +if(_b9&&_b9.length>0){ +var _ba=_b9[0]; +if(_ba){ +this._onRendererHandleMouseDown(e,_ba.renderer,"resizeEnd"); +this._startItemEditing(_b6,"mouse"); +} +} +} +},_onGridMouseMove:function(e){ +},_onGridMouseUp:function(e){ +},_onGridTouchStart:function(e){ +var p=this._edProps; +this._gridProps={event:e,fromItem:this.isAscendantHasClass(e.target,this.eventContainer,"dojoxCalendarEvent")}; +if(this._isEditing){ +if(this._gridProps){ +this._gridProps.editingOnStart=true; +} +_2.mixin(p,this._getTouchesOnRenderers(e,p.editedItem)); +if(p.touchesLen==0){ +if(p&&p.endEditingTimer){ +clearTimeout(p.endEditingTimer); +p.endEditingTimer=null; +} +this._endItemEditing("touch",false); +} +} +this._doEndItemEditing(this.owner,"touch"); +_5.stop(e); +},_doEndItemEditing:function(obj,_bb){ +if(obj&&obj._isEditing){ +var p=obj._edProps; +if(p&&p.endEditingTimer){ +clearTimeout(p.endEditingTimer); +p.endEditingTimer=null; +} +obj._endItemEditing(_bb,false); +} +},_onGridTouchEnd:function(e){ +},_onGridTouchMove:function(e){ +},__fixEvt:function(e){ +return e; +},_dispatchCalendarEvt:function(e,_bc){ +e=this.__fixEvt(e); +this[_bc](e); +if(this.owner){ +this.owner[_bc](e); +} +return e; +},_onGridClick:function(e){ +if(!e.triggerEvent){ +e={date:this.getTime(e),triggerEvent:e}; +} +this._dispatchCalendarEvt(e,"onGridClick"); +},onGridClick:function(e){ +},_onGridDoubleClick:function(e){ +if(!e.triggerEvent){ +e={date:this.getTime(e),triggerEvent:e}; +} +this._dispatchCalendarEvt(e,"onGridDoubleClick"); +},onGridDoubleClick:function(e){ +},_onItemClick:function(e){ +this._dispatchCalendarEvt(e,"onItemClick"); +},onItemClick:function(e){ +},_onItemDoubleClick:function(e){ +this._dispatchCalendarEvt(e,"onItemDoubleClick"); +},onItemDoubleClick:function(e){ +},_onItemContextMenu:function(e){ +this._dispatchCalendarEvt(e,"onItemContextMenu"); +},onItemContextMenu:function(e){ +},_getStartEndRenderers:function(_bd){ +var _be=this.rendererManager.itemToRenderer[_bd.id]; +if(_be==null){ +return null; +} +if(_be.length==1){ +var _bf=_be[0].renderer; +return [_bf,_bf]; +} +var rd=this.renderData; +var _c0=false; +var _c1=false; +var res=[]; +for(var i=0;i<_be.length;i++){ +var ir=_be[i].renderer; +if(!_c0){ +_c0=rd.dateModule.compare(ir.item.range[0],ir.item.startTime)==0; +res[0]=ir; +} +if(!_c1){ +_c1=rd.dateModule.compare(ir.item.range[1],ir.item.endTime)==0; +res[1]=ir; +} +if(_c0&&_c1){ +break; +} +} +return res; +},editable:true,moveEnabled:true,resizeEnabled:true,isItemEditable:function(_c2,_c3){ +return this.getItemStoreState(_c2)!="storing"&&this.editable&&(this.owner?this.owner.isItemEditable(_c2,_c3):true); +},isItemMoveEnabled:function(_c4,_c5){ +return this.isItemEditable(_c4,_c5)&&this.moveEnabled&&(this.owner?this.owner.isItemMoveEnabled(_c4,_c5):true); +},isItemResizeEnabled:function(_c6,_c7){ +return this.isItemEditable(_c6,_c7)&&this.resizeEnabled&&(this.owner?this.owner.isItemResizeEnabled(_c6,_c7):true); +},_isEditing:false,isItemBeingEdited:function(_c8){ +return this._isEditing&&this._edProps&&this._edProps.editedItem&&this._edProps.editedItem.id==_c8.id; +},_setEditingProperties:function(_c9){ +this._edProps=_c9; +},_startItemEditing:function(_ca,_cb){ +this._isEditing=true; +this._getTopOwner()._isEditing=true; +var p=this._edProps; +p.editedItem=_ca; +p.storeItem=_ca._item; +p.eventSource=_cb; +p.secItem=this._secondarySheet?this._findRenderItem(_ca.id,this._secondarySheet.renderData.items):null; +p.ownerItem=this.owner?this._findRenderItem(_ca.id,this.items):null; +if(!p.liveLayout){ +p.editSaveStartTime=_ca.startTime; +p.editSaveEndTime=_ca.endTime; +p.editItemToRenderer=this.rendererManager.itemToRenderer; +p.editItems=this.renderData.items; +p.editRendererList=this.rendererManager.rendererList; +this.renderData.items=[p.editedItem]; +var id=p.editedItem.id; +this.rendererManager.itemToRenderer={}; +this.rendererManager.rendererList=[]; +var _cc=p.editItemToRenderer[id]; +p.editRendererIndices=[]; +_3.forEach(_cc,_2.hitch(this,function(ir,i){ +if(this.rendererManager.itemToRenderer[id]==null){ +this.rendererManager.itemToRenderer[id]=[ir]; +}else{ +this.rendererManager.itemToRenderer[id].push(ir); +} +this.rendererManager.rendererList.push(ir); +})); +p.editRendererList=_3.filter(p.editRendererList,function(ir){ +return ir!=null&&ir.renderer.item.id!=id; +}); +delete p.editItemToRenderer[id]; +} +this._layoutRenderers(this.renderData); +this._onItemEditBegin({item:_ca,storeItem:p.storeItem,eventSource:_cb}); +},_onItemEditBegin:function(e){ +this._editStartTimeSave=this.newDate(e.item.startTime); +this._editEndTimeSave=this.newDate(e.item.endTime); +this._dispatchCalendarEvt(e,"onItemEditBegin"); +},onItemEditBegin:function(e){ +},_endItemEditing:function(_cd,_ce){ +if(this._editingGesture){ +this._endItemEditingGesture(_cd); +} +this._isEditing=false; +this._getTopOwner()._isEditing=false; +var p=this._edProps; +_3.forEach(p.handles,function(_cf){ +_cf.remove(); +}); +if(!p.liveLayout){ +this.renderData.items=p.editItems; +this.rendererManager.rendererList=p.editRendererList.concat(this.rendererManager.rendererList); +_2.mixin(this.rendererManager.itemToRenderer,p.editItemToRenderer); +} +this._onItemEditEnd(_2.mixin(this._createItemEditEvent(),{item:p.editedItem,storeItem:p.storeItem,eventSource:_cd,completed:!_ce})); +this._layoutRenderers(this.renderData); +this._edProps=null; +},_onItemEditEnd:function(e){ +this._dispatchCalendarEvt(e,"onItemEditEnd"); +if(!e.isDefaultPrevented()){ +var _d0=this.get("store"); +var _d1=this.renderItemToItem(e.item,_d0); +var s=this._getItemStoreStateObj(e.item); +if(s!=null&&s.state=="unstored"){ +if(e.completed){ +_d1=_2.mixin(s.item,_d1); +this._setItemStoreState(_d1,"storing"); +var _d2=_d0.getIdentity(_d1); +var _d3=null; +if(this._tempItemsMap&&this._tempItemsMap[_d2]){ +_d3={temporaryId:_d2}; +delete this._tempItemsMap[_d2]; +delete _d1[_d0.idProperty]; +} +_10(_d0.add(_d1,_d3),_2.hitch(this,function(res){ +var id; +if(_2.isObject(res)){ +id=_d0.getIdentity(res); +}else{ +id=res; +} +if(id!=_d2){ +this._removeRenderItem(_d2); +} +})); +}else{ +this._removeRenderItem(s.id); +} +}else{ +if(e.completed){ +this._setItemStoreState(_d1,"storing"); +_d0.put(_d1); +}else{ +e.item.startTime=this._editStartTimeSave; +e.item.endTime=this._editEndTimeSave; +} +} +} +},_removeRenderItem:function(id){ +var _d4=this._getTopOwner(); +var _d5=_d4.get("items"); +var l=_d5.length; +var _d6=false; +for(var i=l-1;i>=0;i--){ +if(_d5[i].id==id){ +_d5.splice(i,1); +_d6=true; +break; +} +} +this._cleanItemStoreState(id); +if(_d6){ +_d4.set("items",_d5); +this.invalidateLayout(); +} +},onItemEditEnd:function(e){ +},_createItemEditEvent:function(){ +var e={cancelable:true,bubbles:false,__defaultPrevent:false}; +e.preventDefault=function(){ +this.__defaultPrevented=true; +}; +e.isDefaultPrevented=function(){ +return this.__defaultPrevented; +}; +return e; +},_startItemEditingGesture:function(_d7,_d8,_d9,e){ +var p=this._edProps; +if(!p||p.editedItem==null){ +return; +} +this._editingGesture=true; +var _da=p.editedItem; +p.editKind=_d8; +this._onItemEditBeginGesture(this.__fixEvt(_2.mixin(this._createItemEditEvent(),{item:_da,storeItem:p.storeItem,startTime:_da.startTime,endTime:_da.endTime,editKind:_d8,rendererKind:p.rendererKind,triggerEvent:e,dates:_d7,eventSource:_d9}))); +p.itemBeginDispatched=true; +},_onItemEditBeginGesture:function(e){ +var p=this._edProps; +var _db=p.editedItem; +var _dc=e.dates; +p.editingTimeFrom=[]; +p.editingTimeFrom[0]=_dc[0]; +p.editingItemRefTime=[]; +p.editingItemRefTime[0]=this.newDate(p.editKind=="resizeEnd"?_db.endTime:_db.startTime); +if(p.editKind=="resizeBoth"){ +p.editingTimeFrom[1]=_dc[1]; +p.editingItemRefTime[1]=this.newDate(_db.endTime); +} +var cal=this.renderData.dateModule; +p.inViewOnce=this._isItemInView(_db); +if(p.rendererKind=="label"||this.roundToDay){ +p._itemEditBeginSave=this.newDate(_db.startTime); +p._itemEditEndSave=this.newDate(_db.endTime); +} +p._initDuration=cal.difference(_db.startTime,_db.endTime,_db.allDay?"day":"millisecond"); +this._dispatchCalendarEvt(e,"onItemEditBeginGesture"); +if(!e.isDefaultPrevented()){ +if(e.eventSource=="mouse"){ +var _dd=e.editKind=="move"?"move":this.resizeCursor; +p.editLayer=_c.create("div",{style:"position: absolute; left:0; right:0; bottom:0; top:0; z-index:30; tabIndex:-1; background-image:url('"+this._blankGif+"'); cursor: "+_dd,onresizestart:function(e){ +return false; +},onselectstart:function(e){ +return false; +}},this.domNode); +p.editLayer.focus(); +} +} +},onItemEditBeginGesture:function(e){ +},_waDojoxAddIssue:function(d,_de,_df){ +var cal=this.renderData.dateModule; +if(this._calendar!="gregorian"&&_df<0){ +var gd=d.toGregorian(); +gd=_e.add(gd,_de,_df); +return new this.renderData.dateClassObj(gd); +}else{ +return cal.add(d,_de,_df); +} +},_computeItemEditingTimes:function(_e0,_e1,_e2,_e3,_e4){ +var cal=this.renderData.dateModule; +var p=this._edProps; +if(_e1=="move"){ +var _e5=cal.difference(p.editingTimeFrom[0],_e3[0],"millisecond"); +_e3[0]=this._waDojoxAddIssue(p.editingItemRefTime[0],"millisecond",_e5); +} +return _e3; +},_moveOrResizeItemGesture:function(_e6,_e7,e,_e8){ +if(!this._isEditing||_e6[0]==null){ +return; +} +var p=this._edProps; +var _e9=p.editedItem; +var rd=this.renderData; +var cal=rd.dateModule; +var _ea=p.editKind; +var _eb=[_e6[0]]; +if(_ea=="resizeBoth"){ +_eb[1]=_e6[1]; +} +_eb=this._computeItemEditingTimes(_e9,p.editKind,p.rendererKind,_eb,_e7); +var _ec=_eb[0]; +var _ed=false; +var _ee=_2.clone(_e9.startTime); +var _ef=_2.clone(_e9.endTime); +var _f0=_e9.subColumn; +var _f1=p.eventSource=="keyboard"?false:this.allowStartEndSwap; +if(_ea=="move"){ +if(_e8!=null&&_e9.subColumn!=_e8&&this.allowSubColumnMove){ +_e9.subColumn=_e8; +var _f2=this.get("store"); +var _f3=this.renderItemToItem(_e9,_f2); +_2.mixin(_e9,this.itemToRenderItem(_f3,_f2)); +_ed=true; +} +if(cal.compare(_e9.startTime,_ec)!=0){ +var _f4=cal.difference(_e9.startTime,_e9.endTime,"millisecond"); +_e9.startTime=this.newDate(_ec); +_e9.endTime=cal.add(_e9.startTime,"millisecond",_f4); +_ed=true; +} +}else{ +if(_ea=="resizeStart"){ +if(cal.compare(_e9.startTime,_ec)!=0){ +if(cal.compare(_e9.endTime,_ec)!=-1){ +_e9.startTime=this.newDate(_ec); +}else{ +if(_f1){ +_e9.startTime=this.newDate(_e9.endTime); +_e9.endTime=this.newDate(_ec); +p.editKind=_ea="resizeEnd"; +if(_e7=="touch"){ +p.resizeEndTouchIndex=p.resizeStartTouchIndex; +p.resizeStartTouchIndex=-1; +} +}else{ +_e9.startTime=this.newDate(_e9.endTime); +_e9.startTime.setHours(_ec.getHours()); +_e9.startTime.setMinutes(_ec.getMinutes()); +_e9.startTime.setSeconds(_ec.getSeconds()); +} +} +_ed=true; +} +}else{ +if(_ea=="resizeEnd"){ +if(cal.compare(_e9.endTime,_ec)!=0){ +if(cal.compare(_e9.startTime,_ec)!=1){ +_e9.endTime=this.newDate(_ec); +}else{ +if(_f1){ +_e9.endTime=this.newDate(_e9.startTime); +_e9.startTime=this.newDate(_ec); +p.editKind=_ea="resizeStart"; +if(_e7=="touch"){ +p.resizeStartTouchIndex=p.resizeEndTouchIndex; +p.resizeEndTouchIndex=-1; +} +}else{ +_e9.endTime=this.newDate(_e9.startTime); +_e9.endTime.setHours(_ec.getHours()); +_e9.endTime.setMinutes(_ec.getMinutes()); +_e9.endTime.setSeconds(_ec.getSeconds()); +} +} +_ed=true; +} +}else{ +if(_ea=="resizeBoth"){ +_ed=true; +var _f5=this.newDate(_ec); +var end=this.newDate(_eb[1]); +if(cal.compare(_f5,end)!=-1){ +if(_f1){ +var t=_f5; +_f5=end; +end=t; +}else{ +_ed=false; +} +} +if(_ed){ +_e9.startTime=_f5; +_e9.endTime=end; +} +}else{ +return false; +} +} +} +} +if(!_ed){ +return false; +} +var evt=_2.mixin(this._createItemEditEvent(),{item:_e9,storeItem:p.storeItem,startTime:_e9.startTime,endTime:_e9.endTime,editKind:_ea,rendererKind:p.rendererKind,triggerEvent:e,eventSource:_e7}); +if(_ea=="move"){ +this._onItemEditMoveGesture(evt); +}else{ +this._onItemEditResizeGesture(evt); +} +if(cal.compare(_e9.startTime,_e9.endTime)==1){ +var tmp=_e9.startTime; +_e9.startTime=_e9.endTime; +_e9.endTime=tmp; +} +_ed=_f0!=_e9.subColumn||cal.compare(_ee,_e9.startTime)!=0||cal.compare(_ef,_e9.endTime)!=0; +if(!_ed){ +return false; +} +this._layoutRenderers(this.renderData); +if(p.liveLayout&&p.secItem!=null){ +p.secItem.startTime=_e9.startTime; +p.secItem.endTime=_e9.endTime; +this._secondarySheet._layoutRenderers(this._secondarySheet.renderData); +}else{ +if(p.ownerItem!=null&&this.owner.liveLayout){ +p.ownerItem.startTime=_e9.startTime; +p.ownerItem.endTime=_e9.endTime; +this.owner._layoutRenderers(this.owner.renderData); +} +} +return true; +},_findRenderItem:function(id,_f6){ +_f6=_f6||this.renderData.items; +for(var i=0;i<_f6.length;i++){ +if(_f6[i].id==id){ +return _f6[i]; +} +} +return null; +},_onItemEditMoveGesture:function(e){ +this._dispatchCalendarEvt(e,"onItemEditMoveGesture"); +if(!e.isDefaultPrevented()){ +var p=e.source._edProps; +var rd=this.renderData; +var cal=rd.dateModule; +var _f7,_f8; +if(p.rendererKind=="label"||(this.roundToDay&&!e.item.allDay)){ +_f7=this.floorToDay(e.item.startTime,false,rd); +_f7.setHours(p._itemEditBeginSave.getHours()); +_f7.setMinutes(p._itemEditBeginSave.getMinutes()); +_f8=cal.add(_f7,"millisecond",p._initDuration); +}else{ +if(e.item.allDay){ +_f7=this.floorToDay(e.item.startTime,true); +_f8=cal.add(_f7,"day",p._initDuration); +}else{ +_f7=this.floorDate(e.item.startTime,this.snapUnit,this.snapSteps); +_f8=cal.add(_f7,"millisecond",p._initDuration); +} +} +e.item.startTime=_f7; +e.item.endTime=_f8; +if(!p.inViewOnce){ +p.inViewOnce=this._isItemInView(e.item); +} +if(p.inViewOnce&&this.stayInView){ +this._ensureItemInView(e.item); +} +} +},_DAY_IN_MILLISECONDS:24*60*60*1000,onItemEditMoveGesture:function(e){ +},_onItemEditResizeGesture:function(e){ +this._dispatchCalendarEvt(e,"onItemEditResizeGesture"); +if(!e.isDefaultPrevented()){ +var p=e.source._edProps; +var rd=this.renderData; +var cal=rd.dateModule; +var _f9=e.item.startTime; +var _fa=e.item.endTime; +if(e.editKind=="resizeStart"){ +if(e.item.allDay){ +_f9=this.floorToDay(e.item.startTime,false,this.renderData); +}else{ +if(this.roundToDay){ +_f9=this.floorToDay(e.item.startTime,false,rd); +_f9.setHours(p._itemEditBeginSave.getHours()); +_f9.setMinutes(p._itemEditBeginSave.getMinutes()); +}else{ +_f9=this.floorDate(e.item.startTime,this.snapUnit,this.snapSteps); +} +} +}else{ +if(e.editKind=="resizeEnd"){ +if(e.item.allDay){ +if(!this.isStartOfDay(e.item.endTime)){ +_fa=this.floorToDay(e.item.endTime,false,this.renderData); +_fa=cal.add(_fa,"day",1); +} +}else{ +if(this.roundToDay){ +_fa=this.floorToDay(e.item.endTime,false,rd); +_fa.setHours(p._itemEditEndSave.getHours()); +_fa.setMinutes(p._itemEditEndSave.getMinutes()); +}else{ +_fa=this.floorDate(e.item.endTime,this.snapUnit,this.snapSteps); +if(e.eventSource=="mouse"){ +_fa=cal.add(_fa,this.snapUnit,this.snapSteps); +} +} +} +}else{ +_f9=this.floorDate(e.item.startTime,this.snapUnit,this.snapSteps); +_fa=this.floorDate(e.item.endTime,this.snapUnit,this.snapSteps); +_fa=cal.add(_fa,this.snapUnit,this.snapSteps); +} +} +e.item.startTime=_f9; +e.item.endTime=_fa; +var _fb=e.item.allDay||p._initDuration>=this._DAY_IN_MILLISECONDS&&!this.allowResizeLessThan24H; +this.ensureMinimalDuration(this.renderData,e.item,_fb?"day":this.minDurationUnit,_fb?1:this.minDurationSteps,e.editKind); +if(!p.inViewOnce){ +p.inViewOnce=this._isItemInView(e.item); +} +if(p.inViewOnce&&this.stayInView){ +this._ensureItemInView(e.item); +} +} +},onItemEditResizeGesture:function(e){ +},_endItemEditingGesture:function(_fc,e){ +if(!this._isEditing){ +return; +} +this._editingGesture=false; +var p=this._edProps; +var _fd=p.editedItem; +p.itemBeginDispatched=false; +this._onItemEditEndGesture(_2.mixin(this._createItemEditEvent(),{item:_fd,storeItem:p.storeItem,startTime:_fd.startTime,endTime:_fd.endTime,editKind:p.editKind,rendererKind:p.rendererKind,triggerEvent:e,eventSource:_fc})); +},_onItemEditEndGesture:function(e){ +var p=this._edProps; +delete p._itemEditBeginSave; +delete p._itemEditEndSave; +this._dispatchCalendarEvt(e,"onItemEditEndGesture"); +if(!e.isDefaultPrevented()){ +if(p.editLayer){ +if(_7("ie")){ +p.editLayer.style.cursor="default"; +} +setTimeout(_2.hitch(this,function(){ +if(this.domNode){ +this.domNode.focus(); +p.editLayer.parentNode.removeChild(p.editLayer); +p.editLayer=null; +} +}),10); +} +} +},onItemEditEndGesture:function(e){ +},ensureMinimalDuration:function(_fe,_ff,unit,_100,_101){ +var _102; +var cal=_fe.dateModule; +if(_101=="resizeStart"){ +_102=cal.add(_ff.endTime,unit,-_100); +if(cal.compare(_ff.startTime,_102)==1){ +_ff.startTime=_102; +} +}else{ +_102=cal.add(_ff.startTime,unit,_100); +if(cal.compare(_ff.endTime,_102)==-1){ +_ff.endTime=_102; +} +} +},doubleTapDelay:300,snapUnit:"minute",snapSteps:15,minDurationUnit:"hour",minDurationSteps:1,liveLayout:false,stayInView:true,allowStartEndSwap:true,allowResizeLessThan24H:false,allowSubColumnMove:true}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ViewBase.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ViewBase.js.uncompressed.js new file mode 100644 index 00000000..a720b093 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/ViewBase.js.uncompressed.js @@ -0,0 +1,3007 @@ +define("dojox/calendar/ViewBase", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/_base/array", + "dojo/_base/window", + "dojo/_base/event", + "dojo/_base/html", + "dojo/sniff", + "dojo/query", + "dojo/dom", + "dojo/dom-style", + "dojo/dom-class", + "dojo/dom-construct", + "dojo/dom-geometry", + "dojo/on", + "dojo/date", + "dojo/date/locale", + "dojo/when", + "dijit/_WidgetBase", + "dojox/widget/_Invalidating", + "dojox/widget/Selection", + "dojox/calendar/time", + "./StoreMixin", + "./StoreManager", + "./RendererManager"], + + function( + declare, + lang, + arr, + win, + event, + html, + has, + query, + dom, + domStyle, + domClass, + domConstruct, + domGeometry, + on, + date, + locale, + when, + _WidgetBase, + _Invalidating, + Selection, + timeUtil, + StoreMixin, + StoreManager, + RendererManager){ + + /*===== + var __GridClickEventArgs = { + // summary: + // The event dispatched when the grid is clicked or double-clicked. + // date: Date + // The start of the previously displayed time interval, if any. + // triggerEvent: Event + // The event at the origin of this event. + }; + =====*/ + + /*===== + var __ItemMouseEventArgs = { + // summary: + // The event dispatched when an item is clicked, double-clicked or context-clicked. + // item: Object + // The item clicked. + // renderer: dojox/calendar/_RendererMixin + // The item renderer clicked. + // triggerEvent: Event + // The event at the origin of this event. + }; + =====*/ + + /*===== + var __itemEditingEventArgs = { + // summary: + // An item editing event. + // item: Object + // The render item that is being edited. Set/get the startTime and/or endTime properties to customize editing behavior. + // storeItem: Object + // The real data from the store. DO NOT change properties, but you may use properties of this item in the editing behavior logic. + // editKind: String + // Kind of edit: "resizeBoth", "resizeStart", "resizeEnd" or "move". + // dates: Date[] + // The computed date/time of the during the event editing. One entry per edited date (touch use case). + // startTime: Date? + // The start time of data item. + // endTime: Date? + // The end time of data item. + // sheet: String + // For views with several sheets (columns view for example), the sheet when the event occurred. + // source: dojox/calendar/ViewBase + // The view where the event occurred. + // eventSource: String + // The device that triggered the event. This property can take the following values: + // + // - "mouse", + // - "keyboard", + // - "touch" + // triggerEvent: Event + // The event at the origin of this event. + }; + =====*/ + + /*===== + var __rendererLifecycleEventArgs = { + // summary: + // An renderer lifecycle event. + // renderer: Object + // The renderer. + // source: dojox/calendar/ViewBase + // The view where the event occurred. + // item:Object? + // The item that will be displayed by the renderer for the "rendererCreated" and "rendererReused" events. + }; + =====*/ + + return declare("dojox.calendar.ViewBase", [_WidgetBase, StoreMixin, _Invalidating, Selection], { + + // summary: + // The dojox.calendar.ViewBase widget is the base of calendar view widgets + + // datePackage: Object + // JavaScript namespace to find Calendar routines. Uses Gregorian Calendar routines at dojo.date by default. + datePackage: date, + + _calendar: "gregorian", + + // viewKind: String + // Kind of the view. Used by the calendar widget to determine how to configure the view. + viewKind: null, + + // _layoutStep: [protected] Integer + // The number of units displayed by a visual layout unit (i.e. a column or a row) + _layoutStep: 1, + + // _layoutStep: [protected] Integer + // The unit displayed by a visual layout unit (i.e. a column or a row) + _layoutUnit: "day", + + // resizeCursor: String + // CSS value to apply to the cursor while resizing an item renderer. + resizeCursor: "n-resize", + + // formatItemTimeFunc: Function + // Optional function to format the time of day of the item renderers. + // The function takes the date, the render data object, the view and the data item as arguments and returns a String. + formatItemTimeFunc: null, + + _cssDays: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], + + _getFormatItemTimeFuncAttr: function(){ + if(this.formatItemTimeFunc){ + return this.formatItemTimeFunc; + } + if(this.owner != null){ + return this.owner.get("formatItemTimeFunc"); + } + }, + + // The listeners added by the view itself. + _viewHandles: null, + + // doubleTapDelay: Integer + // The maximum time amount in milliseconds between to touchstart events that trigger a double-tap event. + doubleTapDelay: 300, + + constructor: function(/*Object*/ args){ + args = args || {}; + + this._calendar = args.datePackage ? args.datePackage.substr(args.datePackage.lastIndexOf(".")+1) : this._calendar; + this.dateModule = args.datePackage ? lang.getObject(args.datePackage, false) : date; + this.dateClassObj = this.dateModule.Date || Date; + this.dateLocaleModule = args.datePackage ? lang.getObject(args.datePackage+".locale", false) : locale; + + this._viewHandles = []; + + this.storeManager = new StoreManager({owner: this, _ownerItemsProperty: "items"}); + this.storeManager.on("layoutInvalidated", lang.hitch(this, this._refreshItemsRendering)); + this.storeManager.on("dataLoaded", lang.hitch(this, function(items){ + this.set("items", items); + })); + + this.rendererManager = new RendererManager({owner: this}); + this.rendererManager.on("rendererCreated", lang.hitch(this, this._onRendererCreated)); + this.rendererManager.on("rendererReused", lang.hitch(this, this._onRendererReused)); + this.rendererManager.on("rendererRecycled", lang.hitch(this, this._onRendererRecycled)); + this.rendererManager.on("rendererDestroyed", lang.hitch(this, this._onRendererDestroyed)); + this.rendererManager.on("layoutInvalidated", lang.hitch(this, this._refreshItemsRendering)); + this.rendererManager.on("renderersInvalidated", lang.hitch(this, function(item){ + this.updateRenderers(item);} + )); + + this.decorationStoreManager = new StoreManager({owner: this, _ownerItemsProperty: "decorationItems"}); + this.decorationStoreManager.on("layoutInvalidated", lang.hitch(this, this._refreshDecorationItemsRendering)); + this.decorationStoreManager.on("dataLoaded", lang.hitch(this, function(items){ + this.set("decorationItems", items); + })); + this.decorationRendererManager = new RendererManager({owner: this}); + }, + + destroy: function(preserveDom){ + + this.rendererManager.destroy(); + this.decorationRendererManager.destroy(); + + while(this._viewHandles.length > 0){ + this._viewHandles.pop().remove(); + } + + this.inherited(arguments); + }, + + resize: function(changeSize){ + // summary: + // Function to call when the view is resized. + // If the view is in a Dijit container or in a Dojo mobile container, it will be automatically called. + // On other use cases, this method must called when the window is resized and/or when the orientation has changed. + if(changeSize){ + domGeometry.setMarginBox(this.domNode, changeSize); + } + }, + + // view lifecycle methods + beforeActivate: function(){ + // summary: + // Function invoked just before the view is displayed by the calendar. + // tags: + // protected + }, + + afterActivate: function(){ + // summary: + // Function invoked just after the view is displayed by the calendar. + // tags: + // protected + }, + + beforeDeactivate: function(){ + // summary: + // Function invoked just before the view is hidden or removed by the calendar. + // tags: + // protected + }, + + afterDeactivate: function(){ + // summary: + // Function invoked just after the view is the view is hidden or removed by the calendar. + // tags: + // protected + }, + + _getTopOwner: function(){ + // summary: + // Returns the top owner: the calendar or the parent view. + var p = this; + while(p.owner != undefined){ + p = p.owner; + } + return p; + }, + + _createRenderData: function(){ + // summary: + // Creates the object that contains all the data needed to render this widget. + // tags: + // protected + }, + + _validateProperties: function(){ + // summary: + // Validates the widget properties before the rendering pass. + // tags: + // protected + }, + + _setText: function(node, text, allowHTML){ + // summary: + // Creates a text node under the parent node after having removed children nodes if any. + // node: Node + // The node that will contain the text node. + // text: String + // The text to set to the text node. + if(text != null){ + if(!allowHTML && node.hasChildNodes()){ + // span > textNode + node.childNodes[0].childNodes[0].nodeValue = text; + }else{ + + while(node.hasChildNodes()){ + node.removeChild(node.lastChild); + } + + var tNode = win.doc.createElement("span"); + if(has("dojo-bidi")){ + this.applyTextDir(tNode, text); + } + + if(allowHTML){ + tNode.innerHTML = text; + }else{ + tNode.appendChild(win.doc.createTextNode(text)); + } + node.appendChild(tNode); + } + } + }, + + isAscendantHasClass: function(node, ancestor, className){ + // summary: + // Determines if a node has an ascendant node that has the css class specified. + // node: Node + // The DOM node. + // ancestor: Node + // The ancestor node used to limit the search in hierarchy. + // className: String + // The css class name. + // returns: Boolean + + while(node != ancestor && node != document){ + + if(domClass.contains(node, className)){ + return true; + } + + node = node.parentNode; + } + return false; + }, + + isWeekEnd: function(date){ + // summary: + // Determines whether the specified date is a week-end. + // This method is using dojo.date.locale.isWeekend() method as + // dojox.date.XXXX calendars are not supporting this method. + // date: Date + // The date to test. + return locale.isWeekend(date); + }, + + getWeekNumberLabel: function(date){ + // summary: + // Returns the week number string from dojo.date.locale.format() method as + // dojox.date.XXXX calendar are not supporting the "w" pattern. + // date: Date + // The date to format. + if(date.toGregorian){ + date = date.toGregorian(); + } + return locale.format(date, { + selector: "date", + datePattern: "w"}); + }, + + addAndFloor: function(date, unit, steps){ + // date must be floored!! + // unit >= day + var d = this.dateModule.add(date, unit, steps); + if(d.getHours() == 23){ + d = this.dateModule.add(d, "hour", 2); // go to 1am + }else{ + d = timeUtil.floorToDay(d, true, this.dateClassObj); + } + return d; + }, + + floorToDay: function(date, reuse){ + // summary: + // Floors the specified date to the start of day. + // date: Date + // The date to floor. + // reuse: Boolean + // Whether use the specified instance or create a new one. Default is false. + // returns: Date + return timeUtil.floorToDay(date, reuse, this.dateClassObj); + }, + + floorToMonth: function(date, reuse){ + // summary: + // Floors the specified date to the start of the date's month. + // date: Date + // The date to floor. + // reuse: Boolean + // Whether use the specified instance or create a new one. Default is false. + // returns: Date + return timeUtil.floorToMonth(date, reuse, this.dateClassObj); + }, + + + floorDate: function(date, unit, steps, reuse){ + // summary: + // floors the date to the unit. + // date: Date + // The date/time to floor. + // unit: String + // The unit. Valid values are "minute", "hour", "day". + // steps: Integer + // For "day" only 1 is valid. + // reuse: Boolean + // Whether use the specified instance or create a new one. Default is false. + // returns: Date + return timeUtil.floor(date, unit, steps, reuse, this.dateClassObj); + }, + + isToday: function(date){ + // summary: + // Returns whether the specified date is in the current day. + // date: Date + // The date to test. + // renderData: Object + // The current renderData + // returns: Boolean + return timeUtil.isToday(date, this.dateClassObj); + }, + + isStartOfDay: function(d){ + // summary: + // Tests if the specified date represents the starts of day. + // d:Date + // The date to test. + // returns: Boolean + return timeUtil.isStartOfDay(d, this.dateClassObj, this.dateModule); + }, + + isOverlapping: function(renderData, start1, end1, start2, end2, includeLimits){ + // summary: + // Computes if the first time range defined by the start1 and end1 parameters + // is overlapping the second time range defined by the start2 and end2 parameters. + // renderData: Object + // The render data. + // start1: Date + // The start time of the first time range. + // end1: Date + // The end time of the first time range. + // start2: Date + // The start time of the second time range. + // end2: Date + // The end time of the second time range. + // includeLimits: Boolean + // Whether include the end time or not. + // returns: Boolean + return timeUtil.isOverlapping(renderData, start1, end1, start2, end2, includeLimits); + }, + + computeRangeOverlap: function(renderData, start1, end1, start2, end2, includeLimits){ + // summary: + // Computes the overlap time range of the time ranges. + // Returns a vector of Date with at index 0 the start time and at index 1 the end time. + // renderData: Object. + // The render data. + // start1: Date + // The start time of the first time range. + // end1: Date + // The end time of the first time range. + // start2: Date + // The start time of the second time range. + // end2: Date + // The end time of the second time range. + // includeLimits: Boolean + // Whether include the end time or not. + // returns: Date[] + var cal = renderData.dateModule; + + if(start1 == null || start2 == null || end1 == null || end2 == null){ + return null; + } + + var comp1 = cal.compare(start1, end2); + var comp2 = cal.compare(start2, end1); + + if(includeLimits){ + + if(comp1 == 0 || comp1 == 1 || comp2 == 0 || comp2 == 1){ + return null; + } + } else if(comp1 == 1 || comp2 == 1){ + return null; + } + + return [ + this.newDate(cal.compare(start1, start2)>0 ? start1: start2, renderData), + this.newDate(cal.compare(end1, end2)>0 ? end2: end1, renderData) + ]; + }, + + isSameDay : function(date1, date2){ + // summary: + // Tests if the specified dates are in the same day. + // date1: Date + // The first date. + // date2: Date + // The second date. + // returns: Boolean + if(date1 == null || date2 == null){ + return false; + } + + return date1.getFullYear() == date2.getFullYear() && + date1.getMonth() == date2.getMonth() && + date1.getDate() == date2.getDate(); + + }, + + computeProjectionOnDate: function(renderData, refDate, date, max){ + // summary: + // Computes the time to pixel projection in a day. + // renderData: Object + // The render data. + // refDate: Date + // The reference date that defines the destination date. + // date: Date + // The date to project. + // max: Integer + // The size in pixels of the representation of a day. + // tags: + // protected + // returns: Number + + + var cal = renderData.dateModule; + var minH = renderData.minHours; + var maxH = renderData.maxHours; + + if(max <= 0 || cal.compare(date, refDate) == -1){ + return 0; + } + + var gt = function(d){ + return d.getHours() * 3600 + d.getMinutes() * 60 + d.getSeconds(); + }; + + var referenceDate = this.floorToDay(refDate, false, renderData); + + if(date.getDate() != referenceDate.getDate()){ + if(date.getMonth() == referenceDate.getMonth()){ + if(date.getDate() < referenceDate.getDate()){ + return 0; + } else if(date.getDate() > referenceDate.getDate() && maxH < 24){ + return max; + } + }else{ + if(date.getFullYear() == referenceDate.getFullYear()){ + if(date.getMonth() < referenceDate.getMonth()){ + return 0; + } else if(date.getMonth() > referenceDate.getMonth()){ + return max; + } + }else{ + if(date.getFullYear() < referenceDate.getFullYear()){ + return 0; + } else if(date.getFullYear() > referenceDate.getFullYear()){ + return max; + } + } + } + } + + var res; + var ONE_DAY = 86400; // 24h x 60m x 60s + + if(this.isSameDay(refDate, date) || maxH > 24){ + + var d = lang.clone(refDate); + var minTime = 0; + + if(minH != null && minH != 0){ + d.setHours(minH); + minTime = gt(d); + } + + d = lang.clone(refDate); + d.setHours(maxH); + + var maxTime; + if(maxH == null || maxH == 24){ + maxTime = ONE_DAY; + }else if(maxH > 24){ + maxTime = ONE_DAY + gt(d); + }else{ + maxTime = gt(d); + } + + //precision is the second + //use this API for daylight time issues. + + var delta = 0; + + if(maxH > 24 && refDate.getDate() != date.getDate()){ + delta = ONE_DAY + gt(date); + }else{ + delta = gt(date); + } + + if(delta < minTime){ + return 0; + } + if(delta > maxTime){ + return max; + } + + delta -= minTime; + + res = (max * delta)/(maxTime - minTime); + + }else{ + + if(date.getDate() < refDate.getDate() && + date.getMonth() == refDate.getMonth()){ + return 0; + } + + var d2 = this.floorToDay(date); + var dp1 = renderData.dateModule.add(refDate, "day", 1); + dp1 = this.floorToDay(dp1, false, renderData); + + if(cal.compare(d2, refDate) == 1 && cal.compare(d2, dp1) == 0 || cal.compare(d2, dp1) == 1){ + res = max; + }else{ + res = 0; + } + } + + return res; + }, + + getTime: function(e, x, y, touchIndex){ + // summary: + // Returns the time displayed at the specified point by this component. + // e: Event + // Optional mouse event. + // x: Number + // Position along the x-axis with respect to the sheet container used if event is not defined. + // y: Number + // Position along the y-axis with respect to the sheet container (scroll included) used if event is not defined. + // touchIndex: Integer + // If parameter 'e' is not null and a touch event, the index of the touch to use. + // returns: Date + return null; + }, + + getSubColumn: function(e, x, y, touchIndex){ + // summary: + // Returns the sub column at the specified point by this component. + // e: Event + // Optional mouse event. + // x: Number + // Position along the x-axis with respect to the sheet container used if event is not defined. + // y: Number + // Position along the y-axis with respect to the sheet container (scroll included) used if event is not defined. + // touchIndex: Integer + // If parameter 'e' is not null and a touch event, the index of the touch to use. + // returns: Object + + return null; + }, + + getSubColumnIndex: function(value){ + // summary: + // Returns the sub column index that has the specified value, if any. -1 otherwise. + // value: String + // The sub column index. + if(this.subColumns){ + for(var i=0; i max){ + pos = max; + } + + if(vertical){ + this._scrollPos = pos; + }else{ + this._hScrollPos = pos; + } + + var rtl = !this.isLeftToRight(); + + if(this._domScroll){ + if(vertical){ + this.scrollContainer.scrollTop = pos; + }else{ + arr.forEach(this._hScrollNodes, function(elt){ + domStyle.set(elt, "left", ((rtl?1:-1) * pos) + "px"); + }, this); + } + + }else{ + if(!this._cssPrefix){ + this._cssPrefix = this.getCSSPrefix(); + } + + var cssProp = this._cssPrefix+"transform"; + + if(vertical){ + domStyle.set(this.sheetContainer, cssProp, "translateY(-"+pos+"px)"); + }else{ + var css = "translateX("+(rtl?"":"-")+pos+"px)"; + arr.forEach(this._hScrollNodes, function(elt){ + domStyle.set(elt, cssProp, css); + }, this); + } + } + }, + + _setScrollPosition: function(pos){ + // summary: + // Sets the verical scroll position (if the view is scrollable), using the scroll method defined. + // tags: + // protected + this._setScrollPositionBase(pos, true); + }, + + _getScrollPosition: function(){ + // summary: + // Returns the vertical scroll position (if the view is scrollable), using the scroll method defined. + // tags: + // protected + + return this._scrollPos; + }, + + _setHScrollPosition: function(pos){ + // summary: + // Sets the horizontal scroll position (if the view is scrollable), using the scroll method defined. + // tags: + // protected + + this._setScrollPositionBase(pos, false); + }, + + _setHScrollPositionImpl: function(pos, useDom, cssProperty){ + // summary: + // Sets the horizontal scroll position on sub elements (if the view is scrollable), using the scroll method defined. + // Important: must be implemented by sub classes and not called directly. Use _setHScrollPosition() method instead. + // tags: + // private + + var css = useDom ? null : "translateX(-"+pos+"px)"; + arr.forEach(this._hScrollNodes, function(elt){ + if(useDom){ + elt.scrollLeft = pos; + domStyle.set(elt, "left", (-pos) + "px"); + }else{ + domStyle.set(elt, cssProp, css); + } + }, this); + }, + + _hScrollPos: 0, + + _getHScrollPosition: function(){ + // summary: + // Returns the horizontal scroll position (if the view is scrollable), using the scroll method defined. + // tags: + // protected + + return this._hScrollPos; + }, + + scrollView: function(dir){ + // summary: + // If the view is scrollable, scrolls it vertically to the specified direction. + // dir: Integer + // Direction of the scroll. Valid values are -1 and 1. + // tags: + // extension + }, + + ensureVisibility: function(start, end, margin, visibilityTarget, duration){ + // summary: + // Scrolls the view if the [start, end] time range is not visible or only partially visible. + // start: Date + // Start time of the range of interest. + // end: Date + // End time of the range of interest. + // margin: int + // Margin in minutes around the time range. + // visibilityTarget: String + // The end(s) of the time range to make visible. + // Valid values are: "start", "end", "both". + // duration: Number + // Optional, the maximum duration of the scroll animation. + // tags: + // extension + + }, + + //////////////////////////////////////////////////////// + // + // Store & Items + // + //////////////////////////////////////////////////////// + + _getStoreAttr: function(){ + if(this.owner){ + return this.owner.get("store"); + } + return this.store; + }, + + _setItemsAttr: function(value){ + this._set("items", value); + this.displayedItemsInvalidated = true; + }, + + _refreshItemsRendering: function(){ + var rd = this.renderData; + this._computeVisibleItems(rd); + this._layoutRenderers(rd); + }, + + _refreshDecorationItemsRendering: function(){ + var rd = this.renderData; + this._computeVisibleItems(rd); + this._layoutDecorationRenderers(rd); + }, + + invalidateLayout: function(){ + // summary: + // Triggers a re-layout of the renderers. + this._layoutRenderers(this.renderData); + this._layoutDecorationRenderers(this.renderData); + }, + + _setDecorationItemsAttr: function(value){ + this._set("decorationItems", value); + this.displayedDecorationItemsInvalidated = true; + }, + + _getDecorationStoreAttr: function(){ + if(this.owner){ + return this.owner.get("decorationStore"); + } + return this.decorationStore; + }, + + _setDecorationStoreAttr: function(value){ + this.decorationStore = value; + this.decorationStoreManager.set("store", value); + }, + + //////////////////////////////////////////////////////// + // + // Layout + // + //////////////////////////////////////////////////////// + + computeOverlapping: function(layoutItems, func){ + // summary: + // Computes the overlap layout of a list of items. A lane and extent properties are added to each layout item. + // layoutItems: Object[] + // List of layout items, each item must have a start and end properties. + // addedPass: Function + // Whether computes the extent of each item renderer on free sibling lanes. + // returns: Object + // tags: + // protected + + + if(layoutItems.length == 0){ + return { + numLanes: 0, + addedPassRes: [1] + }; + } + + var lanes = []; + + for(var i=0; i add a lane + lanes.push([layoutItem]); + layoutItem.lane = lanes.length-1; + layoutItem.extent = -1; + }, + + + + _layoutInterval: function(renderData, index, start, end, items){ + // summary: + // For each item in the items list: retrieve a renderer, compute its location and size and add it to the DOM. + // renderData: Object + // The render data. + // index: Integer + // The index of the interval. + // start: Date + // The start time of the displayed date interval. + // end: Date + // The end time of the displayed date interval. + // items: Object[] + // The list of the items to represent. + // tags: + // extension + }, + + // layoutPriorityFunction: Function + // An optional comparison function use to determine the order the item will be laid out + // The function is used to sort an array and must, as any sorting function, take two items + // as argument and must return an integer whose sign define order between arguments. + // By default, a comparison by start time then end time is used. + layoutPriorityFunction: null, + + _sortItemsFunction: function(a, b){ + var res = this.dateModule.compare(a.startTime, b.startTime); + if(res == 0){ + res = -1 * this.dateModule.compare(a.endTime, b.endTime); + } + return res; + }, + + + _layoutRenderers: function(renderData){ + this._layoutRenderersImpl(renderData, this.rendererManager, renderData.items, "dataItems"); + }, + + _layoutDecorationRenderers: function(renderData){ + this._layoutRenderersImpl(renderData, this.decorationRendererManager, renderData.decorationItems, "decorationItems"); + }, + + _layoutRenderersImpl: function(renderData, rendererManager, items, itemType){ + // summary: + // Renders the data items. This method will call the _layoutInterval() method. + // renderData: Object + // The render data. + // tags: + // protected + if(!items){ + return; + } + + // recycle renderers first + rendererManager.recycleItemRenderers(); + + var cal = renderData.dateModule; + + // Date + var startDate = this.newDate(renderData.startTime); + + // Date and time + var startTime = lang.clone(startDate); + + var endDate; + + var items = items.concat(); + + var itemsTemp = [], events; + var processing = {}; + + var index = 0; + + while(cal.compare(startDate, renderData.endTime) == -1 && items.length > 0){ + + endDate = this.addAndFloor(startDate, this._layoutUnit, this._layoutStep); + + var endTime = lang.clone(endDate); + + if(renderData.minHours){ + startTime.setHours(renderData.minHours); + } + + if(renderData.maxHours != undefined && renderData.maxHours != 24){ + if(renderData.maxHours < 24){ + endTime = cal.add(endDate, "day", -1); + } // else > 24 + endTime = this.floorToDay(endTime, true, renderData); + endTime.setHours(renderData.maxHours - (renderData.maxHours < 24 ? 0 : 24)); + } + + // look for events that overlap the current sub interval + events = arr.filter(items, function(item){ + var r = this.isOverlapping(renderData, item.startTime, item.endTime, startTime, endTime); + if(r){ + processing[item.id] = true; + itemsTemp.push(item); + }else{ + if(processing[item.id]){ + delete processing[item.id]; + }else{ + itemsTemp.push(item); + } + } + return r; + }, this); + + items = itemsTemp; + itemsTemp = []; + + // if event are in the current sub interval, layout them + if(events.length > 0){ + // Sort the item according a sorting function, by default start time then end time comparison are used. + events.sort(lang.hitch(this, this.layoutPriorityFunction ? this.layoutPriorityFunction : this._sortItemsFunction)); + this._layoutInterval(renderData, index, startTime, endTime, events, itemType); + } + + startDate = endDate; + startTime = lang.clone(startDate); + + index++; + } + + this._onRenderersLayoutDone(this); + }, + + ///////////////////////////////////////////////////////////////// + // + // Renderers management + // + //////////////////////////////////////////////////////////////// + + _recycleItemRenderers: function(remove){ + this.rendererManager.recycleItemRenderers(remove); + }, + + getRenderers: function(item){ + // summary: + // Returns the renderers that are currently used to displayed the speficied item. + // Returns an array of objects that contains two properties: + // - container: The DOM node that contains the renderer. + // - renderer: The dojox.calendar._RendererMixin instance. + // Do not keep references on the renderers are they are recycled and reused for other items. + // item: Object + // The data or render item. + // returns: Object[] + + return this.rendererManager.getRenderers(item); + }, + + // itemToRendererKindFunc: Function + // An optional function to associate a kind of renderer ("horizontal", "label" or null) with the specified item. + // By default, if an item is lasting more that 24 hours an horizontal item is used, otherwise a label is used. + itemToRendererKindFunc: null, + + _itemToRendererKind: function(item){ + // summary: + // Associates a kind of renderer with a data item. + // item: Object + // The data item. + // returns: String + // tags: + // protected + if(this.itemToRendererKindFunc){ + return this.itemToRendererKindFunc(item); + } + return this._defaultItemToRendererKindFunc(item); // String + }, + + _defaultItemToRendererKindFunc:function(item){ + // tags: + // private + return null; + }, + + _createRenderer: function(item, kind, rendererClass, cssClass){ + // summary: + // Creates an item renderer of the specified kind. A renderer is an object with the "container" and "instance" properties. + // item: Object + // The data item. + // kind: String + // The kind of renderer. + // rendererClass: Object + // The class to instantiate to create the renderer. + // returns: Object + // tags: + // protected + + return this.rendererManager.createRenderer(item, kind, rendererClass, cssClass); + }, + + _onRendererCreated: function(e){ + if(e.source == this){ + this.onRendererCreated(e); + } + if(this.owner != null){ + this.owner._onRendererCreated(e); + } + }, + + onRendererCreated: function(e){ + // summary: + // Event dispatched when an item renderer has been created. + // e: __rendererLifecycleEventArgs + // The renderer lifecycle event. + // tags: + // callback + }, + + _onRendererRecycled: function(e){ + if(e.source == this){ + this.onRendererRecycled(e); + } + if(this.owner != null){ + this.owner._onRendererRecycled(e); + } + }, + + onRendererRecycled: function(e){ + // summary: + // Event dispatched when an item renderer has been recycled. + // e: __rendererLifecycleEventArgs + // The renderer lifecycle event. + // tags: + // callback + + }, + + _onRendererReused: function(e){ + if(e.source == this){ + this.onRendererReused(e); + } + if(this.owner != null){ + this.owner._onRendererReused(e); + } + }, + + onRendererReused: function(e){ + // summary: + // Event dispatched when an item renderer that was recycled is reused. + // e: __rendererLifecycleEventArgs + // The renderer lifecycle event. + // tags: + // callback + }, + + _onRendererDestroyed: function(e){ + if(e.source == this){ + this.onRendererDestroyed(e); + } + if(this.owner != null){ + this.owner._onRendererDestroyed(e); + } + }, + + onRendererDestroyed: function(e){ + // summary: + // Event dispatched when an item renderer is destroyed. + // e: __rendererLifecycleEventArgs + // The renderer lifecycle event. + // tags: + // callback + }, + + _onRenderersLayoutDone: function(view){ + // tags: + // private + + this.onRenderersLayoutDone(view); + if(this.owner != null){ + this.owner._onRenderersLayoutDone(view); + } + }, + + onRenderersLayoutDone: function(view){ + // summary: + // Event triggered when item renderers layout has been done. + // tags: + // callback + }, + + _recycleRenderer: function(renderer, remove){ + // summary: + // Recycles the item renderer to be reused in the future. + // renderer: dojox/calendar/_RendererMixin + // The item renderer to recycle. + // tags: + // protected + + this.rendererManager.recycleRenderer(renderer, remove); + }, + + _destroyRenderer: function(renderer){ + // summary: + // Destroys the item renderer. + // renderer: dojox/calendar/_RendererMixin + // The item renderer to destroy. + // tags: + // protected + + this.rendererManager.destroyRenderer(renderer); + }, + + _destroyRenderersByKind: function(kind){ + // tags: + // private + + this.rendererManager.destroyRenderersByKind(kind); + }, + + + _updateEditingCapabilities: function(item, renderer){ + // summary: + // Update the moveEnabled and resizeEnabled properties of a renderer according to its event current editing state. + // item: Object + // The store data item. + // renderer: dojox/calendar/_RendererMixin + // The item renderer. + // tags: + // protected + + var moveEnabled = this.isItemMoveEnabled(item, renderer.rendererKind); + var resizeEnabled = this.isItemResizeEnabled(item, renderer.rendererKind); + var changed = false; + + if(moveEnabled != renderer.get("moveEnabled")){ + renderer.set("moveEnabled", moveEnabled); + changed = true; + } + if(resizeEnabled != renderer.get("resizeEnabled")){ + renderer.set("resizeEnabled", resizeEnabled); + changed = true; + } + + if(changed){ + renderer.updateRendering(); + } + }, + + updateRenderers: function(obj, stateOnly){ + // summary: + // Updates all the renderers that represents the specified item(s). + // obj: Object + // A render item or an array of render items. + // stateOnly: Boolean + // Whether only the state of the item has changed (selected, edited, edited, focused) or a more global change has occured. + // tags: + // protected + + if(obj == null){ + return; + } + + var items = lang.isArray(obj) ? obj : [obj]; + + for(var i=0; i0){ + var renderer = renderers[0]; + if(renderer){ + // trigger editing + this._onRendererHandleMouseDown(e, renderer.renderer, "resizeEnd"); + this._startItemEditing(newRenderItem, "mouse"); + } + } + } + }, + + _onGridMouseMove: function(e){ + // tags: + // private + }, + + _onGridMouseUp: function(e){ + // tags: + // private + }, + + _onGridTouchStart: function(e){ + // tags: + // private + + var p = this._edProps; + + this._gridProps = { + event: e, + fromItem: this.isAscendantHasClass(e.target, this.eventContainer, "dojoxCalendarEvent") + }; + + if(this._isEditing){ + + if(this._gridProps){ + this._gridProps.editingOnStart = true; + } + + lang.mixin(p, this._getTouchesOnRenderers(e, p.editedItem)); + + if(p.touchesLen == 0){ + + if(p && p.endEditingTimer){ + clearTimeout(p.endEditingTimer); + p.endEditingTimer = null; + } + this._endItemEditing("touch", false); + } + } + + this._doEndItemEditing(this.owner, "touch"); + + event.stop(e); + + }, + + _doEndItemEditing: function(obj, eventSource){ + // tags: + // private + + if(obj && obj._isEditing){ + var p = obj._edProps; + if(p && p.endEditingTimer){ + clearTimeout(p.endEditingTimer); + p.endEditingTimer = null; + } + obj._endItemEditing(eventSource, false); + } + }, + + _onGridTouchEnd: function(e){ + // tags: + // private + }, + + _onGridTouchMove: function(e){ + // tags: + // private + }, + + __fixEvt: function(e){ + // summary: + // Extension point for a view to add some event properties to a calendar event. + // tags: + // callback + return e; + }, + + _dispatchCalendarEvt: function(e, name){ + // summary: + // Adds view properties to event and enable bubbling at owner level. + // e: Event + // The dispatched event. + // name: String + // The event name. + // tags: + // protected + + e = this.__fixEvt(e); + this[name](e); + if(this.owner){ + this.owner[name](e); + } + return e; + }, + + _onGridClick: function(e){ + // tags: + // private + if(!e.triggerEvent){ + e = { + date: this.getTime(e), + triggerEvent: e + }; + } + + this._dispatchCalendarEvt(e, "onGridClick"); + }, + + onGridClick: function(e){ + // summary: + // Event dispatched when the grid has been clicked. + // e: __GridClickEventArgs + // The event dispatched when the grid is clicked. + // tags: + // callback + }, + + _onGridDoubleClick: function(e){ + // tags: + // private + + if(!e.triggerEvent){ + e = { + date: this.getTime(e), + triggerEvent: e + }; + } + + this._dispatchCalendarEvt(e, "onGridDoubleClick"); + }, + + onGridDoubleClick: function(e){ + // summary: + // Event dispatched when the grid has been double-clicked. + // e: __GridClickEventArgs + // The event dispatched when the grid is double-clicked. + // tags: + // protected + + }, + + _onItemClick: function(e){ + // tags: + // private + + this._dispatchCalendarEvt(e, "onItemClick"); + }, + + onItemClick: function(e){ + // summary: + // Event dispatched when an item renderer has been clicked. + // e: __ItemMouseEventArgs + // The event dispatched when an item is clicked. + // tags: + // callback + + }, + + _onItemDoubleClick: function(e){ + // tags: + // private + + this._dispatchCalendarEvt(e, "onItemDoubleClick"); + }, + + onItemDoubleClick: function(e){ + // summary: + // Event dispatched when an item renderer has been double-clicked. + // e: __ItemMouseEventArgs + // The event dispatched when an item is double-clicked. + // tags: + // callback + + }, + + _onItemContextMenu: function(e){ + this._dispatchCalendarEvt(e, "onItemContextMenu"); + // tags: + // private + + }, + + onItemContextMenu: function(e){ + // summary: + // Event dispatched when an item renderer has been context-clicked. + // e: __ItemMouseEventArgs + // The event dispatched when an item is context-clicked. + // tags: + // callback + + }, + + ////////////////////////////////////////////////////////// + // + // Editing + // + ////////////////////////////////////////////////////////// + + _getStartEndRenderers: function(item){ + // summary: + // Returns an array that contains the first and last renderers of an item + // that are currently displayed. They could be the same renderer if only one renderer is used. + // item: Object + // The render item. + // returns: Object[] + // tags: + // protected + + + var list = this.rendererManager.itemToRenderer[item.id]; + + if(list == null){ + return null; + } + + // trivial and most common use case. + if(list.length == 1){ + var node = list[0].renderer; + return [node, node]; + } + + var rd = this.renderData; + var resizeStartFound = false; + var resizeEndFound = false; + + var res = []; + + for(var i=0; itrue, the item renderers in the control are editable. + // The user can click on an item renderer, or use the keyboard or touch devices, to move or resize the associated event. + editable: true, + + // moveEnabled: Boolean + // A flag that indicates whether the user can move items displayed. + // If true, the user can move the items. + moveEnabled: true, + + // resizeEnabled: Boolean + // A flag that indicates whether the items can be resized. + // If `true`, the control supports resizing of items. + resizeEnabled: true, + + isItemEditable: function(item, rendererKind){ + // summary: + // Computes whether particular item renderer can be edited or not. + // By default it is using the editable property value. + // item: Object + // The item represented by the renderer. + // rendererKind: String + // The kind of renderer. + // returns: Boolean + return this.getItemStoreState(item) != "storing" && this.editable && (this.owner ? this.owner.isItemEditable(item, rendererKind) : true); + }, + + isItemMoveEnabled: function(item, rendererKind){ + // summary: + // Computes whether particular item renderer can be moved. + // By default it is using the moveEnabled property value. + // item: Object + // The item represented by the renderer. + // rendererKind: String + // The kind of renderer. + // returns: Boolean + return this.isItemEditable(item, rendererKind) && this.moveEnabled && + (this.owner ? this.owner.isItemMoveEnabled(item, rendererKind): true); + }, + + isItemResizeEnabled: function(item, rendererKind){ + // summary: + // Computes whether particular item renderer can be resized. + // By default it is using the resizedEnabled property value. + // item: Object + // The item represented by the renderer. + // rendererKind: String + // The kind of renderer. + // returns: Boolean + + return this.isItemEditable(item, rendererKind) && this.resizeEnabled && + (this.owner ? this.owner.isItemResizeEnabled(item, rendererKind): true); + }, + + // _isEditing: Boolean + // Whether an item is being edited or not. + _isEditing: false, + + isItemBeingEdited: function(item){ + // summary: + // Returns whether an item is being edited or not. + // item: Object + // The item to test. + // returns: Boolean + return this._isEditing && this._edProps && this._edProps.editedItem && this._edProps.editedItem.id == item.id; + }, + + _setEditingProperties: function(props){ + // summary: + // Registers the editing properties used by the editing functions. + // This method should only be called by editing interaction mixins like Mouse, Keyboard and Touch. + // tags: + // protected + + this._edProps = props; + }, + + _startItemEditing: function(item, eventSource){ + // summary: + // Configures the component, renderers to start one (mouse) of several (touch, keyboard) editing gestures. + // item: Object + // The item that will be edited. + // eventSource: String + // "mouse", "keyboard", "touch" + // tags: + // protected + + this._isEditing = true; + this._getTopOwner()._isEditing = true; + var p = this._edProps; + + p.editedItem = item; + p.storeItem = item._item; + p.eventSource = eventSource; + + p.secItem = this._secondarySheet ? this._findRenderItem(item.id, this._secondarySheet.renderData.items) : null; + p.ownerItem = this.owner ? this._findRenderItem(item.id, this.items) : null; + + if (!p.liveLayout){ + p.editSaveStartTime = item.startTime; + p.editSaveEndTime = item.endTime; + + p.editItemToRenderer = this.rendererManager.itemToRenderer; + p.editItems = this.renderData.items; + p.editRendererList = this.rendererManager.rendererList; + + this.renderData.items = [p.editedItem]; + var id = p.editedItem.id; + + this.rendererManager.itemToRenderer = {}; + this.rendererManager.rendererList = []; + var list = p.editItemToRenderer[id]; + + p.editRendererIndices = []; + + arr.forEach(list, lang.hitch(this, function(ir, i){ + if(this.rendererManager.itemToRenderer[id] == null){ + this.rendererManager.itemToRenderer[id] = [ir]; + }else{ + this.rendererManager.itemToRenderer[id].push(ir); + } + this.rendererManager.rendererList.push(ir); + })); + + // remove in old map & list the occurrence used by the edited item + p.editRendererList = arr.filter(p.editRendererList, function(ir){ + return ir != null && ir.renderer.item.id != id; + }); + delete p.editItemToRenderer[id]; + } + + // graphic feedback refresh + this._layoutRenderers(this.renderData); + + this._onItemEditBegin({ + item: item, + storeItem: p.storeItem, + eventSource: eventSource + }); + }, + + _onItemEditBegin: function(e){ + // tags: + // private + + this._editStartTimeSave = this.newDate(e.item.startTime); + this._editEndTimeSave = this.newDate(e.item.endTime); + + this._dispatchCalendarEvt(e, "onItemEditBegin"); + }, + + onItemEditBegin: function(e){ + // summary: + // Event dispatched when the item is entering the editing mode. + // tags: + // callback + + }, + + _endItemEditing: function(/*String*/eventSource, /*Boolean*/canceled){ + // summary: + // Leaves the item editing mode. + // item: Object + // The item that was edited. + // eventSource: String + // "mouse", "keyboard", "touch" + // tags: + // protected + + if(this._editingGesture){ + // make sure to stop the current gesture if any + this._endItemEditingGesture(eventSource); + } + + this._isEditing = false; + this._getTopOwner()._isEditing = false; + + var p = this._edProps; + + arr.forEach(p.handles, function(handle){ + handle.remove(); + }); + + if (!p.liveLayout){ + this.renderData.items = p.editItems; + this.rendererManager.rendererList = p.editRendererList.concat(this.rendererManager.rendererList); + lang.mixin(this.rendererManager.itemToRenderer, p.editItemToRenderer); + } + + this._onItemEditEnd(lang.mixin(this._createItemEditEvent(), { + item: p.editedItem, + storeItem: p.storeItem, + eventSource: eventSource, + completed: !canceled + })); + + this._layoutRenderers(this.renderData); + + this._edProps = null; + }, + + _onItemEditEnd: function(e){ + // tags: + // private + + this._dispatchCalendarEvt(e, "onItemEditEnd"); + + if(!e.isDefaultPrevented()){ + + var store = this.get("store"); + + // updated store item + var storeItem = this.renderItemToItem(e.item, store); + + var s = this._getItemStoreStateObj(e.item); + + if(s != null && s.state == "unstored"){ + + if(e.completed){ + // renderItemToItem cannot find the original data item + // (as it does not exist in the store yet) to mixin with. + // so we must do it here. + storeItem = lang.mixin(s.item, storeItem); + this._setItemStoreState(storeItem, "storing"); + var oldID = store.getIdentity(storeItem); + var options = null; + + if(this._tempItemsMap && this._tempItemsMap[oldID]){ + options = {temporaryId: oldID}; + delete this._tempItemsMap[oldID]; + delete storeItem[store.idProperty]; + } + + // add to the store. + when(store.add(storeItem, options), lang.hitch(this, function(res){ + var id; + if(lang.isObject(res)){ + id = store.getIdentity(res); + }else{ + id = res; + } + + if(id != oldID){ + this._removeRenderItem(oldID); + } + })); + + }else{ // creation canceled + // cleanup items list + + this._removeRenderItem(s.id); + } + + } else if(e.completed){ + // Inject new properties in data store item + // and apply data changes + this._setItemStoreState(storeItem, "storing"); + store.put(storeItem); + }else{ + e.item.startTime = this._editStartTimeSave; + e.item.endTime = this._editEndTimeSave; + } + } + }, + + _removeRenderItem: function(id){ + + var owner = this._getTopOwner(); + var items = owner.get("items"); + var l = items.length; + var found = false; + for(var i=l-1; i>=0; i--){ + if(items[i].id == id){ + items.splice(i, 1); + found = true; + break; + } + } + this._cleanItemStoreState(id); + if(found){ + owner.set("items", items); //force a complete relayout + this.invalidateLayout(); + } + }, + + onItemEditEnd: function(e){ + // summary: + // Event dispatched when the item is leaving the editing mode. + // tags: + // protected + + }, + + _createItemEditEvent: function(){ + // tags: + // private + + var e = { + cancelable: true, + bubbles: false, + __defaultPrevent: false + }; + + e.preventDefault = function(){ + this.__defaultPrevented = true; + }; + + e.isDefaultPrevented = function(){ + return this.__defaultPrevented; + }; + + return e; + }, + + + _startItemEditingGesture: function(dates, editKind, eventSource, e){ + // summary: + // Starts the editing gesture. + // date: Date[] + // The reference dates (at least one). + // editKind: String + // Kind of edit: "resizeBoth", "resizeStart", "resizeEnd" or "move". + // eventSource: String + // "mouse", "keyboard", "touch" + // e: Event + // The event at the origin of the editing gesture. + // tags: + // protected + + var p = this._edProps; + + if(!p || p.editedItem == null){ + return; + } + + this._editingGesture = true; + + var item = p.editedItem; + + p.editKind = editKind; + + this._onItemEditBeginGesture(this.__fixEvt(lang.mixin(this._createItemEditEvent(), { + item: item, + storeItem: p.storeItem, + startTime: item.startTime, + endTime: item.endTime, + editKind: editKind, + rendererKind: p.rendererKind, + triggerEvent: e, + dates: dates, + eventSource: eventSource + }))); + + p.itemBeginDispatched = true; + + }, + + + _onItemEditBeginGesture: function(e){ + // tags: + // private + var p = this._edProps; + + var item = p.editedItem; + var dates = e.dates; + + p.editingTimeFrom = []; + p.editingTimeFrom[0] = dates[0]; + + p.editingItemRefTime = []; + p.editingItemRefTime[0] = this.newDate(p.editKind == "resizeEnd" ? item.endTime : item.startTime); + + if (p.editKind == "resizeBoth"){ + p.editingTimeFrom[1] = dates[1]; + p.editingItemRefTime[1] = this.newDate(item.endTime); + } + + var cal = this.renderData.dateModule; + + p.inViewOnce = this._isItemInView(item); + + if(p.rendererKind == "label" || this.roundToDay){ + p._itemEditBeginSave = this.newDate(item.startTime); + p._itemEditEndSave = this.newDate(item.endTime); + } + + p._initDuration = cal.difference(item.startTime, item.endTime, item.allDay?"day":"millisecond"); + + this._dispatchCalendarEvt(e, "onItemEditBeginGesture"); + + if (!e.isDefaultPrevented()){ + + if (e.eventSource == "mouse"){ + var cursor = e.editKind=="move"?"move":this.resizeCursor; + p.editLayer = domConstruct.create("div", { + style: "position: absolute; left:0; right:0; bottom:0; top:0; z-index:30; tabIndex:-1; background-image:url('"+this._blankGif+"'); cursor: "+cursor, + onresizestart: function(e){return false;}, + onselectstart: function(e){return false;} + }, this.domNode); + p.editLayer.focus(); + } + } + }, + + onItemEditBeginGesture: function(e){ + // summary: + // Event dispatched when an editing gesture is beginning. + // e: __itemEditingEventArgs + // The editing event. + // tags: + // callback + + }, + + _waDojoxAddIssue: function(d, unit, steps){ + // summary: + // Workaround an issue of dojox.date.XXXXX.date.add() function + // that does not support the subtraction of time correctly (normalization issues). + // d: Date + // Reference date. + // unit: String + // Unit to add. + // steps: Integer + // Number of units to add. + // tags: + // protected + + var cal = this.renderData.dateModule; + if(this._calendar != "gregorian" && steps < 0){ + var gd = d.toGregorian(); + gd = date.add(gd, unit, steps); + return new this.renderData.dateClassObj(gd); + }else{ + return cal.add(d, unit, steps); + } + }, + + _computeItemEditingTimes: function(item, editKind, rendererKind, times, eventSource){ + // tags: + // private + + var cal = this.renderData.dateModule; + var p = this._edProps; + if(editKind == "move"){ + var diff = cal.difference(p.editingTimeFrom[0], times[0], "millisecond"); + times[0] = this._waDojoxAddIssue(p.editingItemRefTime[0], "millisecond", diff); + } + return times; + }, + + _moveOrResizeItemGesture: function(dates, eventSource, e, subColumn){ + // summary: + // Moves or resizes an item. + // dates: Date[] + // The reference dates. + // editKind: String + // Kind of edit: "resizeStart", "resizeEnd", "resizeBoth" or "move". + // eventSource: String + // "mouse", "keyboard", "touch" + // e: Event + // The event at the origin of the editing gesture. + // subColumn: String + // The sub column value, if any, or null. + // tags: + // private + + if(!this._isEditing || dates[0] == null){ + return; + } + + var p = this._edProps; + var item = p.editedItem; + var rd = this.renderData; + var cal = rd.dateModule; + var editKind = p.editKind; + + var newTimes = [dates[0]]; + + if(editKind == "resizeBoth"){ + newTimes[1] = dates[1]; + } + + newTimes = this._computeItemEditingTimes(item, p.editKind, p.rendererKind, newTimes, eventSource); + + var newTime = newTimes[0]; // usual use case + + var moveOrResizeDone = false; + + var oldStart = lang.clone(item.startTime); + var oldEnd = lang.clone(item.endTime); + var oldSubColumn = item.subColumn; + + // swap cannot used using keyboard as a gesture is made of one single change (loss of start/end context). + var allowSwap = p.eventSource == "keyboard" ? false : this.allowStartEndSwap; + + // Update the Calendar with the edited value. + if(editKind == "move"){ + if(subColumn != null && item.subColumn != subColumn && this.allowSubColumnMove){ + // TODO abstract change? + item.subColumn = subColumn; + // refresh the other properties that depends on this one (especially cssClass) + var store = this.get("store"); + var storeItem = this.renderItemToItem(item, store); + lang.mixin(item, this.itemToRenderItem(storeItem, store)); + moveOrResizeDone = true; + } + if(cal.compare(item.startTime, newTime) != 0){ + var duration = cal.difference(item.startTime, item.endTime, "millisecond"); + item.startTime = this.newDate(newTime); + item.endTime = cal.add(item.startTime, "millisecond", duration); + moveOrResizeDone = true; + } + + }else if(editKind == "resizeStart"){ + + if(cal.compare(item.startTime, newTime) != 0){ + if(cal.compare(item.endTime, newTime) != -1){ + item.startTime = this.newDate(newTime); + }else{ // swap detected + if(allowSwap){ + item.startTime = this.newDate(item.endTime); + item.endTime = this.newDate(newTime); + p.editKind = editKind = "resizeEnd"; + if(eventSource == "touch"){ // invert touches as well! + p.resizeEndTouchIndex = p.resizeStartTouchIndex; + p.resizeStartTouchIndex = -1; + } + }else{ // block the swap but keep the time of day + item.startTime = this.newDate(item.endTime); + item.startTime.setHours(newTime.getHours()); + item.startTime.setMinutes(newTime.getMinutes()); + item.startTime.setSeconds(newTime.getSeconds()); + } + } + moveOrResizeDone = true; + } + + }else if(editKind == "resizeEnd"){ + + if(cal.compare(item.endTime, newTime) != 0){ + if(cal.compare(item.startTime, newTime) != 1){ + item.endTime = this.newDate(newTime); + }else{ // swap detected + + if(allowSwap){ + item.endTime = this.newDate(item.startTime); + item.startTime = this.newDate(newTime); + p.editKind = editKind = "resizeStart"; + if(eventSource == "touch"){ // invert touches as well! + p.resizeStartTouchIndex = p.resizeEndTouchIndex; + p.resizeEndTouchIndex = -1; + } + }else{ // block the swap but keep the time of day + item.endTime = this.newDate(item.startTime); + item.endTime.setHours(newTime.getHours()); + item.endTime.setMinutes(newTime.getMinutes()); + item.endTime.setSeconds(newTime.getSeconds()); + } + } + + moveOrResizeDone = true; + } + }else if(editKind == "resizeBoth"){ + + moveOrResizeDone = true; + + var start = this.newDate(newTime); + var end = this.newDate(newTimes[1]); + + if(cal.compare(start, end) != -1){ // swap detected + if(allowSwap){ + var t = start; + start = end; + end = t; + }else{ // as both ends are moved, the simple way is to forbid the move gesture. + moveOrResizeDone = false; + } + } + + if(moveOrResizeDone){ + item.startTime = start; + item.endTime = end; + } + + }else{ + return false; + } + + if(!moveOrResizeDone){ + return false; + } + + var evt = lang.mixin(this._createItemEditEvent(), { + item: item, + storeItem: p.storeItem, + startTime: item.startTime, + endTime: item.endTime, + editKind: editKind, + rendererKind: p.rendererKind, + triggerEvent: e, + eventSource: eventSource + }); + + // trigger snapping, rounding, minimal duration, boundaries checks etc. + if(editKind == "move"){ + this._onItemEditMoveGesture(evt); + }else{ + this._onItemEditResizeGesture(evt); + } + + // prevent invalid range + if(cal.compare(item.startTime, item.endTime) == 1){ + var tmp = item.startTime; + item.startTime = item.endTime; + item.endTime = tmp; + } + + moveOrResizeDone = + oldSubColumn != item.subColumn || + cal.compare(oldStart, item.startTime) != 0 || + cal.compare(oldEnd, item.endTime) != 0; + + if(!moveOrResizeDone){ + return false; + } + + this._layoutRenderers(this.renderData); + + if(p.liveLayout && p.secItem != null){ + p.secItem.startTime = item.startTime; + p.secItem.endTime = item.endTime; + this._secondarySheet._layoutRenderers(this._secondarySheet.renderData); + }else if(p.ownerItem != null && this.owner.liveLayout){ + p.ownerItem.startTime = item.startTime; + p.ownerItem.endTime = item.endTime; + this.owner._layoutRenderers(this.owner.renderData); + } + + return true; + }, + + _findRenderItem: function(id, list){ + // tags: + // private + + list = list || this.renderData.items; + for(var i=0; i= this._DAY_IN_MILLISECONDS && !this.allowResizeLessThan24H; + + this.ensureMinimalDuration(this.renderData, e.item, + minimalDay ? "day" : this.minDurationUnit, + minimalDay ? 1 : this.minDurationSteps, + e.editKind); + + if(!p.inViewOnce){ + p.inViewOnce = this._isItemInView(e.item); + } + + // to prevent strange behaviors use constraint in items already fully in view. + if(p.inViewOnce && this.stayInView){ + this._ensureItemInView(e.item); + } + } + }, + + onItemEditResizeGesture: function(e){ + // summary: + // Event dispatched during a resize editing gesture. + // e: __itemEditingEventArgs + // The editing event. + // tags: + // callback + + }, + + _endItemEditingGesture: function(/*String*/eventSource, /*Event*/e){ + // tags: + // protected + + if(!this._isEditing){ + return; + } + + this._editingGesture = false; + + var p = this._edProps; + var item = p.editedItem; + + p.itemBeginDispatched = false; + + this._onItemEditEndGesture(lang.mixin(this._createItemEditEvent(), { + item: item, + storeItem: p.storeItem, + startTime: item.startTime, + endTime: item.endTime, + editKind: p.editKind, + rendererKind: p.rendererKind, + triggerEvent: e, + eventSource: eventSource + })); + + }, + + _onItemEditEndGesture: function(e){ + // tags: + // private + + var p = this._edProps; + + delete p._itemEditBeginSave; + delete p._itemEditEndSave; + + this._dispatchCalendarEvt(e, "onItemEditEndGesture"); + + if (!e.isDefaultPrevented()){ + if(p.editLayer){ + if(has("ie")){ + p.editLayer.style.cursor = "default"; + } + setTimeout(lang.hitch(this, function(){ + if(this.domNode){ // for unit tests + this.domNode.focus(); + p.editLayer.parentNode.removeChild(p.editLayer); + p.editLayer = null; + } + }), 10); + + } + } + }, + + onItemEditEndGesture: function(e){ + // summary: + // Event dispatched at the end of an editing gesture. + // e: __itemEditingEventArgs + // The editing event. + // tags: + // callback + + }, + + ensureMinimalDuration: function(renderData, item, unit, steps, editKind){ + // summary: + // During the resize editing gesture, ensures that the item has the specified minimal duration. + // renderData: Object + // The render data. + // item: Object + // The edited item. + // unit: String + // The unit used to define the minimal duration. + // steps: Integer + // The number of time units. + // editKind: String + // The edit kind: "resizeStart" or "resizeEnd". + var minTime; + var cal = renderData.dateModule; + + if(editKind == "resizeStart"){ + minTime = cal.add(item.endTime, unit, -steps); + if(cal.compare(item.startTime, minTime) == 1){ + item.startTime = minTime; + } + } else { + minTime = cal.add(item.startTime, unit, steps); + if(cal.compare(item.endTime, minTime) == -1){ + item.endTime = minTime; + } + } + }, + + // doubleTapDelay: Integer + // The maximum delay between two taps needed to trigger an "itemDoubleClick" event, in touch context. + doubleTapDelay: 300, + + // snapUnit: String + // The unit of the snapping to apply during the editing of an event. + // "day", "hour" and "minute" are valid values. + snapUnit: "minute", + + // snapSteps: Integer + // The number of units used to compute the snapping of the edited item. + snapSteps: 15, + + // minDurationUnit: "String" + // The unit used to define the minimal duration of the edited item. + // "day", "hour" and "minute" are valid values. + minDurationUnit: "hour", + + // minDurationSteps: Integer + // The number of units used to define the minimal duration of the edited item. + minDurationSteps: 1, + + // liveLayout: Boolean + // If true, all the events are laid out during the editing gesture. If false, only the edited event is laid out. + liveLayout: false, + + // stayInView: Boolean + // Specifies during editing, if the item is already in view, if the item must stay in the time range defined by the view or not. + stayInView: true, + + // allowStartEndSwap: Boolean + // Specifies if the start and end time of an item can be swapped during an editing gesture. Note that using the keyboard this property is ignored. + allowStartEndSwap: true, + + // allowResizeLessThan24H: Boolean + // If an event has a duration greater than 24 hours, indicates if using a resize gesture, it can be resized to last less than 24 hours. + // This flag is usually used when two different kind of renderers are used (MatrixView) to prevent changing the kind of renderer during an editing gesture. + allowResizeLessThan24H: false, + + // allowSubColumnMove: Boolean + // If several sub columns are displayed, indicated if the data item can be reassigned to another sub column by an editing gesture. + allowSubColumnMove: true + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_RendererMixin.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_RendererMixin.js new file mode 100644 index 00000000..c875bdfe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_RendererMixin.js @@ -0,0 +1,169 @@ +//>>built +define("dojox/calendar/_RendererMixin",["dojo/_base/declare","dojo/_base/lang","dojo/dom-style","dojo/dom-class","dojo/Stateful"],function(_1,_2,_3,_4,_5){ +return _1("dojox.calendar._RendererMixin",_5,{item:null,owner:null,edited:false,focused:false,hovered:false,selected:false,storeState:false,moveEnabled:true,resizeEnabled:true,_orientation:"vertical",_displayValue:"block",_displayValueMap:{},visibilityLimits:{resizeStartHandle:50,resizeEndHandle:-1,summaryLabel:15,startTimeLabel:45,endTimeLabel:50},_setSelectedAttr:function(_6){ +this._setState("selected",_6,"Selected"); +},_setFocusedAttr:function(_7){ +this._setState("focused",_7,"Focused"); +},_setEditedAttr:function(_8){ +this._setState("edited",_8,"Edited"); +},_setHoveredAttr:function(_9){ +this._setState("hovered",_9,"Hovered"); +},_setStoreStateAttr:function(_a){ +var _b=null; +switch(_a){ +case "storing": +_b="Storing"; +break; +case "unstored": +_b="Unstored"; +break; +default: +_b=null; +} +var tn=this.stateNode||this.domNode; +_4.remove(tn,"Storing"); +_4.remove(tn,"Unstored"); +this._set("storeState",_a); +if(_b!=null){ +_4.add(tn,_b); +} +},_setState:function(_c,_d,_e){ +if(this[_c]!=_d){ +var tn=this.stateNode||this.domNode; +_4[_d?"add":"remove"](tn,_e); +this._set(_c,_d); +} +},_setItemAttr:function(_f){ +if(_f==null){ +if(this.item&&this.item.cssClass){ +_4.remove(this.domNode,this.item.cssClass); +} +this.item=null; +}else{ +if(this.item!=null){ +if(this.item.cssClass!=_f.cssClass){ +if(this.item.cssClass){ +_4.remove(this.domNode,this.item.cssClass); +} +} +this.item=_2.mixin(this.item,_f); +if(_f.cssClass){ +_4.add(this.domNode,_f.cssClass); +} +}else{ +this.item=_f; +if(_f.cssClass){ +_4.add(this.domNode,_f.cssClass); +} +} +} +},_setText:function(_10,_11,_12){ +if(this.owner){ +this.owner._setText(_10,_11,_12); +} +},_isElementVisible:function(elt,_13,_14,_15){ +var _16; +var _17=this.visibilityLimits[elt]; +switch(elt){ +case "moveHandle": +_16=this.moveEnabled; +break; +case "resizeStartHandle": +if(this.mobile){ +_16=this.resizeEnabled&&!_13&&this.edited&&(_17==-1||_15>_17); +}else{ +_16=this.resizeEnabled&&!_13&&(_17==-1||_15>_17); +} +break; +case "resizeEndHandle": +if(this.mobile){ +_16=this.resizeEnabled&&!_14&&this.edited&&(_17==-1||_15>_17); +}else{ +_16=this.resizeEnabled&&!_14&&(_17==-1||_15>_17); +} +break; +case "startTimeLabel": +if(this.mobile){ +_16=!_13&&(!this.edited||this.edited&&(_17==-1||_15>_17)); +}else{ +_16=!_13&&(_17==-1||_15>_17); +} +break; +case "endTimeLabel": +_16=this.edited&&!_14&&(_17==-1||_15>_17); +break; +case "summaryLabel": +if(this.mobile){ +_16=!this.edited||this.edited&&(_17==-1||_15>_17); +}else{ +_16=_17==-1||_15>_17; +} +break; +} +return _16; +},_formatTime:function(rd,d){ +if(this.owner){ +var f=this.owner.get("formatItemTimeFunc"); +if(f!=null&&typeof f==="function"){ +return f(d,rd,this.owner,this.item); +} +} +return rd.dateLocaleModule.format(d,{selector:"time"}); +},getDisplayValue:function(_18){ +return this._displayValue; +},updateRendering:function(w,h){ +h=h||this.item.h; +w=w||this.item.w; +if(!h&&!w){ +return; +} +this.item.h=h; +this.item.w=w; +var _19=this._orientation=="vertical"?h:w; +var rd=this.owner.renderData; +var _1a=rd.dateModule.compare(this.item.range[0],this.item.startTime)!=0; +var _1b=rd.dateModule.compare(this.item.range[1],this.item.endTime)!=0; +var _1c; +if(this.beforeIcon!=null){ +_1c=this._orientation!="horizontal"||this.isLeftToRight()?_1a:_1b; +_3.set(this.beforeIcon,"display",_1c?this.getDisplayValue("beforeIcon"):"none"); +} +if(this.afterIcon!=null){ +_1c=this._orientation!="horizontal"||this.isLeftToRight()?_1b:_1a; +_3.set(this.afterIcon,"display",_1c?this.getDisplayValue("afterIcon"):"none"); +} +if(this.moveHandle){ +_1c=this._isElementVisible("moveHandle",_1a,_1b,_19); +_3.set(this.moveHandle,"display",_1c?this.getDisplayValue("moveHandle"):"none"); +} +if(this.resizeStartHandle){ +_1c=this._isElementVisible("resizeStartHandle",_1a,_1b,_19); +_3.set(this.resizeStartHandle,"display",_1c?this.getDisplayValue("resizeStartHandle"):"none"); +} +if(this.resizeEndHandle){ +_1c=this._isElementVisible("resizeEndHandle",_1a,_1b,_19); +_3.set(this.resizeEndHandle,"display",_1c?this.getDisplayValue("resizeEndHandle"):"none"); +} +if(this.startTimeLabel){ +_1c=this._isElementVisible("startTimeLabel",_1a,_1b,_19); +_3.set(this.startTimeLabel,"display",_1c?this.getDisplayValue("startTimeLabel"):"none"); +if(_1c){ +this._setText(this.startTimeLabel,this._formatTime(rd,this.item.startTime)); +} +} +if(this.endTimeLabel){ +_1c=this._isElementVisible("endTimeLabel",_1a,_1b,_19); +_3.set(this.endTimeLabel,"display",_1c?this.getDisplayValue("endTimeLabel"):"none"); +if(_1c){ +this._setText(this.endTimeLabel,this._formatTime(rd,this.item.endTime)); +} +} +if(this.summaryLabel){ +_1c=this._isElementVisible("summaryLabel",_1a,_1b,_19); +_3.set(this.summaryLabel,"display",_1c?this.getDisplayValue("summaryLabel"):"none"); +if(_1c){ +this._setText(this.summaryLabel,this.item.summary,true); +} +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_RendererMixin.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_RendererMixin.js.uncompressed.js new file mode 100644 index 00000000..2c51cf6f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_RendererMixin.js.uncompressed.js @@ -0,0 +1,307 @@ +define("dojox/calendar/_RendererMixin", ["dojo/_base/declare", "dojo/_base/lang", "dojo/dom-style", "dojo/dom-class", "dojo/Stateful"], + + function(declare, lang, domStyle, domClass, Stateful){ + + return declare("dojox.calendar._RendererMixin", Stateful, { + + // summary: + // This class is the base class of calendar renderers. + + // item: Object + // The layout item displayed by this renderer. + item: null, + + // owner: dojox/calendar/_ViewBase + // The view that contains this renderer. + owner: null, + + // edited: Boolean + // Indicates that the item displayed by this renderer is in editing mode. + edited: false, + + // focused: Boolean + // Indicates that the item displayed by this renderer is focused. + focused: false, + + // hovered: Boolean + // Indicates that the item displayed by this renderer is hovered. + hovered: false, + + // selected: Boolean + // Indicates that the item displayed by this renderer is selected. + selected: false, + + // storeState: Boolean + // Indicates that the item displayed by this renderer is not in the store, being saved to the store or in the store. + storeState: false, + + // moveEnabled: Boolean + // Whether the event displayed by this renderer can be moved. + moveEnabled: true, + + // resizeEnabled: Boolean + // Whether the event displayed by this renderer can be resized. + resizeEnabled: true, + + _orientation: "vertical", + _displayValue: "block", + + _displayValueMap: {}, + + visibilityLimits: { + resizeStartHandle: 50, + resizeEndHandle: -1, + summaryLabel: 15, + startTimeLabel: 45, + endTimeLabel: 50 + }, + + _setSelectedAttr: function(value){ + this._setState("selected", value, "Selected"); + }, + + _setFocusedAttr: function(value){ + this._setState("focused", value, "Focused"); + }, + + _setEditedAttr: function(value){ + this._setState("edited", value, "Edited"); + }, + + _setHoveredAttr: function(value){ + this._setState("hovered", value, "Hovered"); + }, + + _setStoreStateAttr: function(value){ + var cssClass = null; + switch(value){ + case "storing": + cssClass = "Storing"; + break; + case "unstored": + cssClass = "Unstored"; + break; + default: + cssClass = null; + } + var tn = this.stateNode || this.domNode; + domClass.remove(tn, "Storing"); + domClass.remove(tn, "Unstored"); + + this._set("storeState", value); + + if(cssClass != null){ + domClass.add(tn, cssClass); + } + }, + + _setState: function(prop, value, cssClass){ + if(this[prop] != value){ + var tn = this.stateNode || this.domNode; + domClass[value ? "add" : "remove"](tn, cssClass); + this._set(prop, value); + } + }, + + _setItemAttr: function(value){ + if(value == null){ + if(this.item && this.item.cssClass){ + domClass.remove(this.domNode, this.item.cssClass); + } + this.item = null; + }else{ + if(this.item != null){ + if(this.item.cssClass != value.cssClass){ + if(this.item.cssClass){ + domClass.remove(this.domNode, this.item.cssClass); + } + } + this.item = lang.mixin(this.item, value); + if(value.cssClass){ + domClass.add(this.domNode, value.cssClass); + } + }else{ + this.item = value; + if(value.cssClass){ + domClass.add(this.domNode, value.cssClass); + } + } + } + }, + + _setText: function(node, text, allowHTML){ + // summary: + // Set the text to the specified node. + // node: Node + // The parent node. + // text: String + // The text to display. + // allowHTML: Boolean + // Whether text is containing HTML formatting. + // tags: + // protected + + if(this.owner){ + this.owner._setText(node, text, allowHTML); + } + }, + + _isElementVisible: function(elt, startHidden, endHidden, size){ + // summary: + // Determine whether the item renderer sub element is visible or not. + // elt: String + // The element node. + // startHidden: Boolean + // Indicates that the start of time interval displayed by this item renderer is not the start of the displayed event. + // endHidden: Boolean + // Indicates that the end of time interval displayed by this item renderer is not the end of the displayed event. + // size: Integer + // The size of the item renderer on the time axis. + // tags: + // protected + var visible; + var limit = this.visibilityLimits[elt]; + + switch(elt){ + case "moveHandle": + visible = this.moveEnabled; + break; + case "resizeStartHandle": + if(this.mobile){ + visible = this.resizeEnabled && !startHidden && this.edited && (limit == -1 || size>limit); + }else{ + visible = this.resizeEnabled && !startHidden && (limit == -1 || size>limit); + } + break; + case "resizeEndHandle": + if(this.mobile){ + visible = this.resizeEnabled && !endHidden && this.edited && (limit == -1 || size>limit); + }else{ + visible = this.resizeEnabled && !endHidden && (limit == -1 || size>limit); + } + break; + case "startTimeLabel": + if(this.mobile){ + visible = !startHidden && (!this.edited || this.edited && (limit == -1 || size>limit)); + }else{ + visible = !startHidden && (limit == -1 || size>limit); + } + break; + case "endTimeLabel": + + visible = this.edited && !endHidden && (limit == -1 || size>limit); + + break; + case "summaryLabel": + if(this.mobile){ + visible = !this.edited || this.edited && (limit == -1 || size>limit); + }else{ + visible = limit == -1 || size>limit; + } + break; + } + + return visible; + }, + + _formatTime: function(rd, d){ + // summary: + // Returns the time formatted string. + // rd: Object + // The render data. + // d: Date + // The time to format. + // tags: + // protected + if(this.owner){ + var f = this.owner.get("formatItemTimeFunc"); + if(f != null && typeof f === "function"){ + return f(d, rd, this.owner, this.item); + } + } + return rd.dateLocaleModule.format(d, {selector: 'time'}); + }, + + getDisplayValue: function(part){ + return this._displayValue; + }, + + updateRendering: function (w, h) { + // summary: + // Updates the visual appearance of the renderer according the new values of the properties and the new size of the component. + // w: Number? + // The width in pixels of the renderer. + // h: Number? + // The height in pixels of the renderer. + + h = h || this.item.h; + w = w || this.item.w; + + if(!h && !w){ + return; + } + + this.item.h = h; + this.item.w = w; + + var size = this._orientation == "vertical" ? h : w; + + var rd = this.owner.renderData; + + var startHidden = rd.dateModule.compare(this.item.range[0], this.item.startTime) != 0; + var endHidden = rd.dateModule.compare(this.item.range[1], this.item.endTime) != 0; + + var visible; + + if(this.beforeIcon != null) { + visible = this._orientation != "horizontal" || this.isLeftToRight() ? startHidden : endHidden; + domStyle.set(this.beforeIcon, "display", visible ? this.getDisplayValue("beforeIcon") : "none"); + } + + if(this.afterIcon != null) { + visible = this._orientation != "horizontal" || this.isLeftToRight() ? endHidden : startHidden; + domStyle.set(this.afterIcon, "display", visible ? this.getDisplayValue("afterIcon") : "none"); + } + + if(this.moveHandle){ + visible = this._isElementVisible("moveHandle", startHidden, endHidden, size); + domStyle.set(this.moveHandle, "display", visible?this.getDisplayValue("moveHandle"):"none"); + } + + if(this.resizeStartHandle){ + visible = this._isElementVisible("resizeStartHandle", startHidden, endHidden, size); + domStyle.set(this.resizeStartHandle, "display", visible?this.getDisplayValue("resizeStartHandle"):"none"); + } + + if(this.resizeEndHandle){ + visible = this._isElementVisible("resizeEndHandle", startHidden, endHidden, size); + domStyle.set(this.resizeEndHandle, "display", visible?this.getDisplayValue("resizeEndHandle"):"none"); + } + + if(this.startTimeLabel) { + visible = this._isElementVisible("startTimeLabel", startHidden, endHidden, size); + + domStyle.set(this.startTimeLabel, "display", visible?this.getDisplayValue("startTimeLabel"):"none"); + if(visible) { + this._setText(this.startTimeLabel, this._formatTime(rd, this.item.startTime)); + } + } + + if(this.endTimeLabel) { + visible = this._isElementVisible("endTimeLabel", startHidden, endHidden, size); + domStyle.set(this.endTimeLabel, "display", visible?this.getDisplayValue("endTimeLabel"):"none"); + if(visible) { + this._setText(this.endTimeLabel, this._formatTime(rd, this.item.endTime)); + } + } + + if(this.summaryLabel) { + visible = this._isElementVisible("summaryLabel", startHidden, endHidden, size); + domStyle.set(this.summaryLabel, "display", visible?this.getDisplayValue("summaryLabel"):"none"); + if(visible){ + this._setText(this.summaryLabel, this.item.summary, true); + } + } + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_ScrollBarBase.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_ScrollBarBase.js new file mode 100644 index 00000000..985d4e82 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_ScrollBarBase.js @@ -0,0 +1,56 @@ +//>>built +define("dojox/calendar/_ScrollBarBase",["dojo/_base/declare","dojo/_base/event","dojo/_base/lang","dojo/on","dojo/dom-style","dojo/sniff","dijit/_WidgetBase","dojox/html/metrics"],function(_1,_2,_3,on,_4,_5,_6,_7){ +return _1("dojox.calendar._ScrollBarBase",_6,{value:0,minimum:0,maximum:100,direction:"vertical",_vertical:true,_scrollHandle:null,containerSize:0,buildRendering:function(){ +this.inherited(arguments); +this.own(on(this.domNode,"scroll",_3.hitch(this,function(_8){ +this.value=this._getDomScrollerValue(); +this.onChange(this.value); +this.onScroll(this.value); +}))); +},_getDomScrollerValue:function(){ +if(this._vertical){ +return this.domNode.scrollTop; +} +var _9=!this.isLeftToRight(); +if(_9){ +if(_5("webkit")||_5("ie")==7){ +if(this._scW==undefined){ +this._scW=_7.getScrollbar().w; +} +return this.maximum-this.domNode.scrollLeft-this.containerSize+this._scW; +} +if(_5("mozilla")){ +return -this.domNode.scrollLeft; +} +} +return this.domNode.scrollLeft; +},_setDomScrollerValue:function(_a){ +this.domNode[this._vertical?"scrollTop":"scrollLeft"]=_a; +},_setValueAttr:function(_b){ +_b=Math.min(this.maximum,_b); +_b=Math.max(this.minimum,_b); +if(this.value!=_b){ +this.value=_b; +this.onChange(_b); +this._setDomScrollerValue(_b); +} +},onChange:function(_c){ +},onScroll:function(_d){ +},_setMinimumAttr:function(_e){ +_e=Math.min(_e,this.maximum); +this.minimum=_e; +},_setMaximumAttr:function(_f){ +_f=Math.max(_f,this.minimum); +this.maximum=_f; +_4.set(this.content,this._vertical?"height":"width",_f+"px"); +},_setDirectionAttr:function(_10){ +if(_10=="vertical"){ +_10="vertical"; +this._vertical=true; +}else{ +_10="horizontal"; +this._vertical=false; +} +this._set("direction",_10); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_ScrollBarBase.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_ScrollBarBase.js.uncompressed.js new file mode 100644 index 00000000..474156ec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/_ScrollBarBase.js.uncompressed.js @@ -0,0 +1,131 @@ +define("dojox/calendar/_ScrollBarBase", [ +"dojo/_base/declare", +"dojo/_base/event", +"dojo/_base/lang", +"dojo/on", +"dojo/dom-style", +"dojo/sniff", +"dijit/_WidgetBase", +"dojox/html/metrics"], + +function( + declare, + event, + lang, + on, + domStyle, + has, + _WidgetBase, + metrics){ + + return declare('dojox.calendar._ScrollBarBase', _WidgetBase, { + + // value: Number + // The value of the scroll bar in pixel offset. + value: 0, + + // minimum: Number + // The minimum value of the scroll bar. + minimum: 0, + + // maximum: Number + // The maximum value of the scroll bar. + maximum: 100, + + // direction: String + // Direction of the scroll bar. Valid values are "vertical" or "horizontal". + direction: "vertical", + + _vertical: true, + + _scrollHandle: null, + + containerSize: 0, + + buildRendering: function(){ + this.inherited(arguments); + this.own(on(this.domNode, "scroll", lang.hitch(this, function(param) { + this.value = this._getDomScrollerValue(); + this.onChange(this.value); + this.onScroll(this.value); + }))); + }, + + _getDomScrollerValue : function() { + if(this._vertical){ + return this.domNode.scrollTop; + } + + var rtl = !this.isLeftToRight(); + if(rtl){ + if(has("webkit") || has("ie") == 7){ + if(this._scW == undefined){ + this._scW = metrics.getScrollbar().w; + } + return this.maximum - this.domNode.scrollLeft - this.containerSize + this._scW; + } + if(has("mozilla")){ + return -this.domNode.scrollLeft; + } + // ie>7 and others... + } + return this.domNode.scrollLeft; + }, + + _setDomScrollerValue : function(value) { + this.domNode[this._vertical?"scrollTop":"scrollLeft"] = value; + }, + + _setValueAttr: function(value){ + value = Math.min(this.maximum, value); + value = Math.max(this.minimum, value); + if (this.value != value) { + this.value = value; + this.onChange(value); + this._setDomScrollerValue(value); + } + }, + + onChange: function(value){ + // summary: + // An extension point invoked when the value has changed. + // value: Integer + // The position of the scroll bar in pixels. + // tags: + // callback + }, + + onScroll: function(value){ + // summary: + // An extension point invoked when the user scrolls with the mouse. + // value: Integer + // The position of the scroll bar in pixels. + // tags: + // callback + }, + + _setMinimumAttr: function(value){ + value = Math.min(value, this.maximum); + this.minimum = value; + }, + + _setMaximumAttr: function(value){ + value = Math.max(value, this.minimum); + this.maximum = value; + domStyle.set(this.content, this._vertical?"height":"width", value + "px"); + }, + + _setDirectionAttr: function(value){ + if(value == "vertical"){ + value = "vertical"; + this._vertical = true; + }else{ + value = "horizontal"; + this._vertical = false; + } + this._set("direction", value); + } + + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ar/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ar/buttons.js new file mode 100644 index 00000000..882b138f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ar/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/ar/buttons",{previousButton:"◄",nextButton:"►",todayButton:"اليوم",dayButton:"اليوم",weekButton:"أسبوع",fourDaysButton:"4 أيام",monthButton:"الشهر"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ar/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ar/buttons.js.uncompressed.js new file mode 100644 index 00000000..2d15f4bf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ar/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/ar/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "اليوم", + dayButton: "‏اليوم‏", + weekButton: "أسبوع", + fourDaysButton: "4 أيام", + monthButton: "‏الشهر‏" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/bg/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/bg/buttons.js new file mode 100644 index 00000000..f847ece8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/bg/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/bg/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Днес",dayButton:"Ден",weekButton:"Седмица",fourDaysButton:"4 дни",monthButton:"Месец"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/bg/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/bg/buttons.js.uncompressed.js new file mode 100644 index 00000000..18e50967 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/bg/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/bg/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Днес", + dayButton: "Ден", + weekButton: "Седмица", + fourDaysButton: "4 дни", + monthButton: "Месец" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/buttons.js new file mode 100644 index 00000000..e499f20f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/buttons",{root:{previousButton:"◄",nextButton:"►",todayButton:"Today",dayButton:"Day",weekButton:"Week",fourDaysButton:"4 Days",monthButton:"Month"},"zh":true,"zh-tw":true,"uk":true,"tr":true,"th":true,"sv":true,"sl":true,"sk":true,"ru":true,"ro":true,"pt":true,"pt-pt":true,"pl":true,"nl":true,"nb":true,"lt":true,"ko":true,"kk":true,"ja":true,"it":true,"id":true,"hu":true,"hr":true,"he":true,"fr":true,"fi":true,"es":true,"el":true,"de":true,"da":true,"cs":true,"ca":true,"bg":true,"ar":true}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/buttons.js.uncompressed.js new file mode 100644 index 00000000..4de3741a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/buttons.js.uncompressed.js @@ -0,0 +1,47 @@ +define("dojox/calendar/nls/buttons", { root: { +//begin v1.x content + previousButton: "◄", + nextButton: "►", + todayButton: "Today", + dayButton: "Day", + weekButton: "Week", + fourDaysButton: "4 Days", + monthButton: "Month" +} +//end v1.x content +, +"zh": true, +"zh-tw": true, +"uk": true, +"tr": true, +"th": true, +"sv": true, +"sl": true, +"sk": true, +"ru": true, +"ro": true, +"pt": true, +"pt-pt": true, +"pl": true, +"nl": true, +"nb": true, +"lt": true, +"ko": true, +"kk": true, +"ja": true, +"it": true, +"id": true, +"hu": true, +"hr": true, +"he": true, +"fr": true, +"fi": true, +"es": true, +"el": true, +"de": true, +"da": true, +"cs": true, +"ca": true, +"bg": true, +"ar": true +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ca/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ca/buttons.js new file mode 100644 index 00000000..78c883b6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ca/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/ca/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Avuí",dayButton:"Dia",weekButton:"Setmana",fourDaysButton:"4 dies",monthButton:"Mes"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ca/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ca/buttons.js.uncompressed.js new file mode 100644 index 00000000..4d59c099 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ca/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/ca/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Avuí", + dayButton: "Dia", + weekButton: "Setmana", + fourDaysButton: "4 dies", + monthButton: "Mes" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/cs/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/cs/buttons.js new file mode 100644 index 00000000..d4533503 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/cs/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/cs/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Dnes",dayButton:"Den",weekButton:"Týden",fourDaysButton:"4 dny",monthButton:"Měsíc"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/cs/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/cs/buttons.js.uncompressed.js new file mode 100644 index 00000000..3877ba8f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/cs/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/cs/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Dnes", + dayButton: "Den", + weekButton: "Týden", + fourDaysButton: "4 dny", + monthButton: "Měsíc" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/da/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/da/buttons.js new file mode 100644 index 00000000..97afc56f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/da/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/da/buttons",{previousButton:"◄",nextButton:"►",todayButton:"I dag",dayButton:"Dag",weekButton:"Uge",fourDaysButton:"4 dage",monthButton:"Måned"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/da/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/da/buttons.js.uncompressed.js new file mode 100644 index 00000000..5d8aa66d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/da/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/da/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "I dag", + dayButton: "Dag", + weekButton: "Uge", + fourDaysButton: "4 dage", + monthButton: "Måned" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/de/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/de/buttons.js new file mode 100644 index 00000000..9e3c2fdd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/de/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/de/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Heute",dayButton:"Tag",weekButton:"Woche",fourDaysButton:"4 Tage",monthButton:"Monat"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/de/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/de/buttons.js.uncompressed.js new file mode 100644 index 00000000..223359da --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/de/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/de/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Heute", + dayButton: "Tag", + weekButton: "Woche", + fourDaysButton: "4 Tage", + monthButton: "Monat" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/el/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/el/buttons.js new file mode 100644 index 00000000..d2a1ffa5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/el/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/el/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Σήμερα",dayButton:"Ημέρα",weekButton:"Εβδομάδα",fourDaysButton:"4 ημέρες",monthButton:"Μήνας"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/el/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/el/buttons.js.uncompressed.js new file mode 100644 index 00000000..28d400ab --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/el/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/el/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Σήμερα", + dayButton: "Ημέρα", + weekButton: "Εβδομάδα", + fourDaysButton: "4 ημέρες", + monthButton: "Μήνας" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/es/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/es/buttons.js new file mode 100644 index 00000000..f8e6fe59 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/es/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/es/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Hoy",dayButton:"Día",weekButton:"Semana",fourDaysButton:"4 días",monthButton:"Mes"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/es/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/es/buttons.js.uncompressed.js new file mode 100644 index 00000000..0bf23ac9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/es/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/es/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Hoy", + dayButton: "Día", + weekButton: "Semana", + fourDaysButton: "4 días", + monthButton: "Mes" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fi/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fi/buttons.js new file mode 100644 index 00000000..3f3eb536 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fi/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/fi/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Tänään",dayButton:"Päivä",weekButton:"Viikko",fourDaysButton:"4 päivää",monthButton:"Kuukausi"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fi/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fi/buttons.js.uncompressed.js new file mode 100644 index 00000000..ccc2e254 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fi/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/fi/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Tänään", + dayButton: "Päivä", + weekButton: "Viikko", + fourDaysButton: "4 päivää", + monthButton: "Kuukausi" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fr/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fr/buttons.js new file mode 100644 index 00000000..196f83b1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fr/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/fr/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Aujourd'hui",dayButton:"Jour",weekButton:"Semaine",fourDaysButton:"4 jours",monthButton:"Mois"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fr/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fr/buttons.js.uncompressed.js new file mode 100644 index 00000000..01562101 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/fr/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/fr/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Aujourd'hui", + dayButton: "Jour", + weekButton: "Semaine", + fourDaysButton: "4 jours", + monthButton: "Mois" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/he/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/he/buttons.js new file mode 100644 index 00000000..3d1408c1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/he/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/he/buttons",{previousButton:"◄",nextButton:"►",todayButton:"היום",dayButton:"יום ",weekButton:"שבוע ",fourDaysButton:"4 ימים",monthButton:"חודש "}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/he/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/he/buttons.js.uncompressed.js new file mode 100644 index 00000000..e9b5245e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/he/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/he/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "היום", + dayButton: "יום ", + weekButton: "שבוע ", + fourDaysButton: "4 ימים", + monthButton: "חודש " +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hr/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hr/buttons.js new file mode 100644 index 00000000..503b3067 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hr/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/hr/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Danas",dayButton:"Dan",weekButton:"Tjedan",fourDaysButton:"4 dana",monthButton:"Mjesec"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hr/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hr/buttons.js.uncompressed.js new file mode 100644 index 00000000..69453df3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hr/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/hr/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Danas", + dayButton: "Dan", + weekButton: "Tjedan", + fourDaysButton: "4 dana", + monthButton: "Mjesec" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hu/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hu/buttons.js new file mode 100644 index 00000000..b1de1991 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hu/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/hu/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Ma",dayButton:"Nap",weekButton:"Hét",fourDaysButton:"4 Nap",monthButton:"Hónap"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hu/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hu/buttons.js.uncompressed.js new file mode 100644 index 00000000..2a43e6a1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/hu/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/hu/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Ma", + dayButton: "Nap", + weekButton: "Hét", + fourDaysButton: "4 Nap", + monthButton: "Hónap" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/id/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/id/buttons.js new file mode 100644 index 00000000..28c5ac63 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/id/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/id/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Hari Ini",dayButton:"Hari",weekButton:"Minggu",fourDaysButton:"4 Hari",monthButton:"Bulan"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/id/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/id/buttons.js.uncompressed.js new file mode 100644 index 00000000..ae639c8a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/id/buttons.js.uncompressed.js @@ -0,0 +1,11 @@ +define( "dojox/calendar/nls/id/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Hari Ini", + dayButton: "Hari", + weekButton: "Minggu", + fourDaysButton: "4 Hari", + monthButton: "Bulan" +} +); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/it/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/it/buttons.js new file mode 100644 index 00000000..d2378502 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/it/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/it/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Oggi",dayButton:"Giorno",weekButton:"Settimana",fourDaysButton:"4 Giorni",monthButton:"Mese"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/it/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/it/buttons.js.uncompressed.js new file mode 100644 index 00000000..faf664fa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/it/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/it/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Oggi", + dayButton: "Giorno", + weekButton: "Settimana", + fourDaysButton: "4 Giorni", + monthButton: "Mese" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ja/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ja/buttons.js new file mode 100644 index 00000000..d74fe3da --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ja/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/ja/buttons",{previousButton:"◄",nextButton:"►",todayButton:"今日",dayButton:"日",weekButton:"週",fourDaysButton:"4 日間",monthButton:"月"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ja/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ja/buttons.js.uncompressed.js new file mode 100644 index 00000000..c5dedd1a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ja/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/ja/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "今日", + dayButton: "日", + weekButton: "週", + fourDaysButton: "4 日間", + monthButton: "月" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/kk/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/kk/buttons.js new file mode 100644 index 00000000..38a3ed1f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/kk/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/kk/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Бүгін",dayButton:"Күн",weekButton:"Апта",fourDaysButton:"4 күн",monthButton:"Ай"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/kk/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/kk/buttons.js.uncompressed.js new file mode 100644 index 00000000..aee188d2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/kk/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/kk/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Бүгін", + dayButton: "Күн", + weekButton: "Апта", + fourDaysButton: "4 күн", + monthButton: "Ай" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ko/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ko/buttons.js new file mode 100644 index 00000000..ae12923d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ko/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/ko/buttons",{previousButton:"◄",nextButton:"►",todayButton:"오늘",dayButton:"일",weekButton:"주",fourDaysButton:"4일",monthButton:"월"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ko/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ko/buttons.js.uncompressed.js new file mode 100644 index 00000000..49026677 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ko/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/ko/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "오늘", + dayButton: "일", + weekButton: "주", + fourDaysButton: "4일", + monthButton: "월" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/lt/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/lt/buttons.js new file mode 100644 index 00000000..6dc74983 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/lt/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/lt/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Šiandien",dayButton:"Diena",weekButton:"Savaitė",fourDaysButton:"4 dienos",monthButton:"Mėnuo"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/lt/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/lt/buttons.js.uncompressed.js new file mode 100644 index 00000000..b54237c4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/lt/buttons.js.uncompressed.js @@ -0,0 +1,9 @@ +define("dojox/calendar/nls/lt/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Šiandien", + dayButton: "Diena", + weekButton: "Savaitė", + fourDaysButton: "4 dienos", + monthButton: "Mėnuo" +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nb/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nb/buttons.js new file mode 100644 index 00000000..d941c7e4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nb/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/nb/buttons",{previousButton:"◄",nextButton:"►",todayButton:"I dag",dayButton:"Dag",weekButton:"Uke",fourDaysButton:"4 dager",monthButton:"Måned"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nb/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nb/buttons.js.uncompressed.js new file mode 100644 index 00000000..0f10ae5d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nb/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/nb/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "I dag", + dayButton: "Dag", + weekButton: "Uke", + fourDaysButton: "4 dager", + monthButton: "Måned" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nl/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nl/buttons.js new file mode 100644 index 00000000..3d15de3a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nl/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/nl/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Vandaag",dayButton:"Dag",weekButton:"Week",fourDaysButton:"4 dagen",monthButton:"Maand"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nl/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nl/buttons.js.uncompressed.js new file mode 100644 index 00000000..6888a9d3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/nl/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/nl/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Vandaag", + dayButton: "Dag", + weekButton: "Week", + fourDaysButton: "4 dagen", + monthButton: "Maand" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pl/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pl/buttons.js new file mode 100644 index 00000000..d8e79327 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pl/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/pl/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Dzisiaj",dayButton:"Dzień",weekButton:"Tydzień",fourDaysButton:"4 dni",monthButton:"Miesiąc"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pl/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pl/buttons.js.uncompressed.js new file mode 100644 index 00000000..452469e1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pl/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/pl/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Dzisiaj", + dayButton: "Dzień", + weekButton: "Tydzień", + fourDaysButton: "4 dni", + monthButton: "Miesiąc" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt-pt/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt-pt/buttons.js new file mode 100644 index 00000000..ea524672 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt-pt/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/pt-pt/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Hoje",dayButton:"Dia",weekButton:"Semana",fourDaysButton:"4 dias",monthButton:"Mês"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt-pt/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt-pt/buttons.js.uncompressed.js new file mode 100644 index 00000000..7dffebd9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt-pt/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/pt-pt/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Hoje", + dayButton: "Dia", + weekButton: "Semana", + fourDaysButton: "4 dias", + monthButton: "Mês" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt/buttons.js new file mode 100644 index 00000000..c06d90b1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/pt/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Hoje",dayButton:"Dia",weekButton:"Semana",fourDaysButton:"4 dias",monthButton:"Mês"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt/buttons.js.uncompressed.js new file mode 100644 index 00000000..db6151bb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/pt/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/pt/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Hoje", + dayButton: "Dia", + weekButton: "Semana", + fourDaysButton: "4 dias", + monthButton: "Mês" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ro/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ro/buttons.js new file mode 100644 index 00000000..668e2484 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ro/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/ro/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Astăzi",dayButton:"Zi",weekButton:"Săptămână",fourDaysButton:"4 zile",monthButton:"Lună"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ro/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ro/buttons.js.uncompressed.js new file mode 100644 index 00000000..ee0ce4a0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ro/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/ro/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Astăzi", + dayButton: "Zi", + weekButton: "Săptămână", + fourDaysButton: "4 zile", + monthButton: "Lună" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ru/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ru/buttons.js new file mode 100644 index 00000000..7265785f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ru/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/ru/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Сегодня",dayButton:"День",weekButton:"Неделя",fourDaysButton:"4 дня",monthButton:"Месяц"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ru/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ru/buttons.js.uncompressed.js new file mode 100644 index 00000000..ec09a076 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/ru/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/ru/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Сегодня", + dayButton: "День", + weekButton: "Неделя", + fourDaysButton: "4 дня", + monthButton: "Месяц" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sk/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sk/buttons.js new file mode 100644 index 00000000..96b11e4f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sk/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/sk/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Dnes",dayButton:"Deň",weekButton:"Týždeň",fourDaysButton:"4 dni",monthButton:"Mesiac"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sk/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sk/buttons.js.uncompressed.js new file mode 100644 index 00000000..9610ac1d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sk/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/sk/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Dnes", + dayButton: "Deň", + weekButton: "Týždeň", + fourDaysButton: "4 dni", + monthButton: "Mesiac" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sl/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sl/buttons.js new file mode 100644 index 00000000..0e841427 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sl/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/sl/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Danes",dayButton:"Dan",weekButton:"Teden",fourDaysButton:"4 dnevi",monthButton:"Mesec"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sl/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sl/buttons.js.uncompressed.js new file mode 100644 index 00000000..d7b0b4c7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sl/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/sl/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Danes", + dayButton: "Dan", + weekButton: "Teden", + fourDaysButton: "4 dnevi", + monthButton: "Mesec" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sv/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sv/buttons.js new file mode 100644 index 00000000..bde6d8e8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sv/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/sv/buttons",{previousButton:"◄",nextButton:"►",todayButton:"I dag",dayButton:"Dag",weekButton:"Vecka",fourDaysButton:"4 dagar",monthButton:"Månad"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sv/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sv/buttons.js.uncompressed.js new file mode 100644 index 00000000..fb2861c8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/sv/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/sv/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "I dag", + dayButton: "Dag", + weekButton: "Vecka", + fourDaysButton: "4 dagar", + monthButton: "Månad" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/th/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/th/buttons.js new file mode 100644 index 00000000..88a1539f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/th/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/th/buttons",{previousButton:"◄",nextButton:"►",todayButton:"วันนี้",dayButton:"วัน",weekButton:"อาทิตย์",fourDaysButton:"4 วัน",monthButton:"เดือน"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/th/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/th/buttons.js.uncompressed.js new file mode 100644 index 00000000..356e42b3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/th/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/th/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "วันนี้", + dayButton: "วัน", + weekButton: "อาทิตย์", + fourDaysButton: "4 วัน", + monthButton: "เดือน" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/tr/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/tr/buttons.js new file mode 100644 index 00000000..f20a9561 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/tr/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/tr/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Bugün",dayButton:"Gün",weekButton:"Hafta",fourDaysButton:"4 Gün",monthButton:"Ay"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/tr/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/tr/buttons.js.uncompressed.js new file mode 100644 index 00000000..f62f7f0d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/tr/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/tr/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Bugün", + dayButton: "Gün", + weekButton: "Hafta", + fourDaysButton: "4 Gün", + monthButton: "Ay" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/uk/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/uk/buttons.js new file mode 100644 index 00000000..88d691b1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/uk/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/uk/buttons",{previousButton:"◄",nextButton:"►",todayButton:"Сьогодні",dayButton:"День",weekButton:"Тиждень",fourDaysButton:"4 дні",monthButton:"Місяць"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/uk/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/uk/buttons.js.uncompressed.js new file mode 100644 index 00000000..ede789f4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/uk/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/uk/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "Сьогодні", + dayButton: "День", + weekButton: "Тиждень", + fourDaysButton: "4 дні", + monthButton: "Місяць" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh-tw/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh-tw/buttons.js new file mode 100644 index 00000000..7442c884 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh-tw/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/zh-tw/buttons",{previousButton:"◄",nextButton:"►",todayButton:"今天",dayButton:"天",weekButton:"周",fourDaysButton:"4 天",monthButton:"月"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh-tw/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh-tw/buttons.js.uncompressed.js new file mode 100644 index 00000000..add1e8ae --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh-tw/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/zh-tw/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "今天", + dayButton: "天", + weekButton: "周", + fourDaysButton: "4 天", + monthButton: "月" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh/buttons.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh/buttons.js new file mode 100644 index 00000000..e3d89b10 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh/buttons.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/calendar/nls/zh/buttons",{previousButton:"◄",nextButton:"►",todayButton:"今天",dayButton:"天",weekButton:"星期",fourDaysButton:"四天",monthButton:"月"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh/buttons.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh/buttons.js.uncompressed.js new file mode 100644 index 00000000..27e31173 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/nls/zh/buttons.js.uncompressed.js @@ -0,0 +1,10 @@ +define( "dojox/calendar/nls/zh/buttons", { + previousButton: "◄", + nextButton: "►", + todayButton: "今天", + dayButton: "天", + weekButton: "星期", + fourDaysButton: "四天", + monthButton: "月" +} +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/Calendar.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/Calendar.html new file mode 100644 index 00000000..b359d027 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/Calendar.html @@ -0,0 +1,16 @@ +
    +
    +
    + + + + + + + + + +
    +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/ColumnView.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/ColumnView.html new file mode 100644 index 00000000..d61b0edb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/ColumnView.html @@ -0,0 +1,45 @@ +
    + +
    +
    +
    +
    +
    +
    +
    +
    + +
    + +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    + +
    +
    +
    + +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/ColumnViewSecondarySheet.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/ColumnViewSecondarySheet.html new file mode 100644 index 00000000..e9bd93b9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/ColumnViewSecondarySheet.html @@ -0,0 +1,11 @@ +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/ExpandRenderer.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/ExpandRenderer.html new file mode 100644 index 00000000..3c81df16 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/ExpandRenderer.html @@ -0,0 +1,3 @@ +
    +
    ▼▲
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/HorizontalRenderer.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/HorizontalRenderer.html new file mode 100644 index 00000000..3c0be2e5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/HorizontalRenderer.html @@ -0,0 +1,13 @@ +
    +
    +
    ◀
    +
    + + + +
    +
    ▶
    +
    +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/LabelRenderer.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/LabelRenderer.html new file mode 100644 index 00000000..26d97fbc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/LabelRenderer.html @@ -0,0 +1,8 @@ +
    +
    + + + +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MatrixView.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MatrixView.html new file mode 100644 index 00000000..dd21ed22 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MatrixView.html @@ -0,0 +1,17 @@ +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MobileCalendar.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MobileCalendar.html new file mode 100644 index 00000000..e2e7ea3a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MobileCalendar.html @@ -0,0 +1,11 @@ +
    +
    +
    + + + + + + +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MobileHorizontalRenderer.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MobileHorizontalRenderer.html new file mode 100644 index 00000000..fae00ab0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MobileHorizontalRenderer.html @@ -0,0 +1,13 @@ +
    +
    +
    ◄
    +
    + + + +
    +
    ►
    +
    +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MobileVerticalRenderer.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MobileVerticalRenderer.html new file mode 100644 index 00000000..f73070e7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MobileVerticalRenderer.html @@ -0,0 +1,12 @@ +
    +
    +
    +
    +
    ▲
    +
    +
    +
    + ▼ +
    + +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MonthColumnView.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MonthColumnView.html new file mode 100644 index 00000000..b6c116ec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/MonthColumnView.html @@ -0,0 +1,18 @@ +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/SimpleMatrixView.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/SimpleMatrixView.html new file mode 100644 index 00000000..dd21ed22 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/SimpleMatrixView.html @@ -0,0 +1,17 @@ +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/VerticalRenderer.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/VerticalRenderer.html new file mode 100644 index 00000000..8de176ad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/templates/VerticalRenderer.html @@ -0,0 +1,13 @@ +
    +
    +
    +
    ▲
    +
    +
    +
    + ▼ +
    +
    +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/Base.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/Base.less new file mode 100644 index 00000000..f8c253ee --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/Base.less @@ -0,0 +1,58 @@ +.border-box(){ + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} + +.opacity(@op){ + filter: ~"alpha(opacity=@{op})"; + opacity:@op/100; +} + +.transition-duration(@dur: 0s){ + -webkit-transition-duration: @dur; + -moz-transition-duration: @dur; + transition-duration: @dur; +} + +.select-none() { + -moz-user-select: none; + -webkit-user-select: none; + khtml-user-select: none; + user-select: none; +} + +.glass-view(){ + z-index: 2; + background-color: #F00; + .opacity(0); + .select-none; +} + +.rounded-corners (@radius: 5px) { + border-radius: @radius; + -webkit-border-radius: @radius; + -moz-border-radius: @radius; +} + +.top-rounded-corners (@radius: 5px) { + border-top-left-radius: @radius; + border-top-right-radius: @radius; + -webkit-border-top-left-radius: @radius; + -webkit-border-top-right-radius: @radius; + -moz-border-top-right-radius: @radius; + -moz-border-top-left-radius: @radius; +} + +.top-left-right-border(@style){ + border-top: @style; + border-left: @style; + border-right: @style; +} + +.event-header{ + font-weight: bold; + .top-rounded-corners; + white-space: nowrap; + padding: 1px 2px 2px 1px; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar.css new file mode 100644 index 00000000..8406289c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.claro .dojoxCalendarMatrixView{cursor:default;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarMatrixView .dojoxCalendarGrid{position:absolute;left:50px;right:0;top:30px;bottom:0}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable{position:relative;width:100%;height:100%;margin:0;padding:0;border-collapse:collapse;table-layout:fixed}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable tr{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable td{text-align:right;vertical-align:top;border-bottom:1px solid #ccc;border-right:1px solid #ccc;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable td span{padding-right:2px;padding-top:2px}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable tr.last-child td{border-bottom:1px solid #b5bcc7}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable td.dojoxCalendarToday{background-color:#fff0b4;font-weight:700;color:red}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable .dojoxCalendarWeekend{background-color:#e5f2fe;color:#759dc0}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable .dojoxCalendarDayDisabled{background-color:#e5f2fe;color:#759dc0}.claro .dojoxCalendarMatrixView .dojoxCalendarYearColumnHeader{position:absolute;left:0;top:0;width:50px;height:29px;text-align:center;vertical-align:middle;border-bottom:1px solid #b5bcc7}.claro .dojoxCalendarMatrixView .dojoxCalendarYearColumnHeader table{position:relative;width:100%;height:100%;table-layout:fixed;border-collapse:collapse}.claro .dojoxCalendarMatrixView .dojoxCalendarYearColumnHeader table td{text-align:center;vertical-align:middle;border-left:1px solid #b5bcc7;border-top:1px solid #b5bcc7;border-right:1px solid #b5bcc7;background-color:#efefef;background-image:url("images/titlebar.png");background-repeat:repeat-x;color:#000}.claro .dojoxCalendarMatrixView .dojoxCalendarColumnHeader{position:absolute;left:50px;right:0;top:0;height:29px;cursor:default;border-bottom:1px solid #b5bcc7}.claro .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable{position:relative;width:100%;height:100%;table-layout:fixed;border-collapse:collapse}.claro .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td{overflow:hidden;vertical-align:middle;text-align:center;background-color:#efefef;background-image:url("images/titlebar.png");background-repeat:repeat-x;border-right:1px solid #ccc;border-top:1px solid #b5bcc7;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#000}.claro .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable .dojoxCalendarWeekend{color:#759dc0}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeader{position:absolute;left:0;top:30px;width:50px;bottom:0;cursor:default;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable{position:relative;width:100%;height:100%;border-collapse:collapse;table-layout:fixed;margin:0;padding:0}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable tr{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td{text-align:center;vertical-align:middle;border-left:1px solid #b5bcc7;border-right:1px solid #b5bcc7;border-bottom:1px solid #ccc;background-color:#efefef;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;color:#000;cursor:pointer}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td.last-child{border-bottom:1px solid #b5bcc7}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td.Hover{background-color:#e5f2fe}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td.Active{background-color:#a5d1fb}.claro .dojoxCalendarMatrixView .dojoxCalendarContainer{position:absolute;top:30px;left:50px;right:0;bottom:0;cursor:default}.claro .dojoxCalendarMatrixView .dojoxCalendarContainerTable{position:relative;width:100%;height:100%;margin:0;padding:0;border-collapse:collapse;table-layout:fixed}.claro .dojoxCalendarMatrixView .dojoxCalendarContainerTable tr{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarMatrixView .dojoxCalendarContainerTable td{vertical-align:top;border-bottom:solid 1px transparent;border-right:solid 1px transparent;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarMatrixView .dojoxCalendarContainerTable td div.dojoxCalendarContainerRow{position:relative;height:100%;width:100%}.claro .dojoxCalendarMatrixView .dojoxCalendarEventContainer{position:absolute;overflow:hidden;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarMatrixView .dojoxCalendarDecoration{position:absolute;background-color:#a7e944;filter:alpha(opacity=20);opacity:.2}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent{position:absolute;text-align:left;color:#000;cursor:default;white-space:nowrap}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal{color:#FFF;position:absolute}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal .bg{border:1px solid #260000;position:absolute;left:0;right:0;top:0;bottom:0;color:#000;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;background-color:#9f0000}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Hovered .bg{background-color:#c00}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Selected .bg{background-color:#600}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.Edited{color:#FFF;font-weight:700;text-decoration:none}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Edited .bg{border:dashed 1px #FFF;filter:alpha(opacity=30);opacity:.3}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Focused .bg{border:dashed 1px #FFF}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Hovered{color:#F40}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Selected{color:red}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Edited{border:dashed 1px #FFF;background:#600;filter:alpha(opacity=30);opacity:.3;color:#FFF}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Focused{border:dashed 1px #000}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{position:absolute;left:3px;right:1px;bottom:2px;overflow:hidden}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel .labels{position:absolute;left:2px;right:2px;bottom:0;overflow:hidden}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;position:absolute;width:5px;height:100%;cursor:e-resize}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent .moveHandle{left:0;top:0;width:100%;cursor:move}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent .resizeEndHandle{right:0}.claro .dojoxCalendarMatrixView .dojoxCalendarExpand{position:absolute;text-align:center}.claro .dojoxCalendarMatrixView .dojoxCalendarExpand span{display:inline-block;vertical-align:middle}.claro .dojoxCalendarMatrixView .dojoxCalendarExpand .bg{position:relative;margin-right:5px;margin-left:5px;height:100%;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:1px solid transparent}.claro .dojoxCalendarMatrixView .dojoxCalendarExpand.Up .bg{background-color:#e5f2fe;border:1px solid #909da9}.claro .dojoxCalendarMatrixView .dojoxCalendarExpand.Down .bg{background-color:#a5d1fb;border:1px solid #507ca6}.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.claro .dojoxCalendarColumnView{cursor:default;-webkit-user-select:none}.claro .dojoxCalendarColumnView .dojoxCalendarHeader{position:absolute;left:0;right:0;top:0;height:29px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarScrollContainer{left:0;right:0;bottom:0;top:33px;position:absolute;overflow-y:hidden;overflow-x:hidden;border-top:1px solid #b5bcc7;border-bottom:1px solid #b5bcc7;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarGrid{position:absolute;left:70px;right:0;overflow:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarGrid.dojoxCalendarHorizontalScroll{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable{border-collapse:collapse;table-layout:fixed;width:100%;position:relative;margin:0;padding:0}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable td{border-top:dotted 1px 1px solid #b5bcc7;border-right:1px solid #ccc;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable tr:first-child td{border-top:1px solid transparent}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable .dojoxCalendarToday{background-color:#fff0b4}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable tr td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable .tr:first-child td.dojoxCalendarToday{border-top:1px solid #fff0b4}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable .dojoxCalendarWeekend{background-color:#e5f2fe}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable tr:first-child td.dojoxCalendarWeekend{border-top:1px solid #e5f2fe}.claro .dojoxCalendarColumnView td.hour{border-top:1px solid #c7bebe}.claro .dojoxCalendarColumnView td.halfhour{border-top:dotted 1px #c7bebe}.claro .dojoxCalendarColumnView td.quarterhour{border-top:dotted 1px #c7bebe}.claro .dojoxCalendarColumnView span.hour{color:#000;background-color:#efefef}.claro .dojoxCalendarColumnView span.halfhour,.claro .dojoxCalendarColumnView span.quarterhour{color:#555;background-color:#efefef}.claro .dojoxCalendarColumnView .dojoxCalendarContainer{position:absolute;top:0;left:70px;right:0;cursor:default;overflow:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarContainer.dojoxCalendarHorizontalScroll{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarContainerTable{border-collapse:collapse;table-layout:fixed;width:100%;position:relative;margin:0;padding:0}.claro .dojoxCalendarColumnView .dojoxCalendarContainerTable td{height:100%;padding:0;vertical-align:top;border-right:1px solid transparent}.claro .dojoxCalendarColumnView .dojoxCalendarContainerColumn{position:relative;width:100%}.claro .dojoxCalendarColumnView .dojoxCalendarSubContainerColumn{position:absolute;top:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:100%}.claro .dojoxCalendarColumnView .dojoxCalendarEventContainerColumn{position:absolute;height:100%;left:0;top:0;right:0;margin-left:1px;margin-right:5px}.claro .dojoxCalendarColumnView .dojoxCalendarDecorationContainerColumn{position:absolute;height:100%;left:0;top:0;right:0}.claro .dojoxCalendarColumnView .dojoxCalendarSubContainerColumn.subColumn{border-right:1px solid #ddd}.claro .dojoxCalendarColumnView .dojoxCalendarEventContainer{position:absolute;overflow:hidden;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarColumnView .dojoxCalendarYearColumnHeader{position:absolute;height:29px;left:0;width:68px;top:0;border-left:1px solid #b5bcc7;border-top:1px solid #b5bcc7;border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarYearColumnHeader table{position:relative;width:100%;height:100%}.claro .dojoxCalendarColumnView .dojoxCalendarYearColumnHeader table td{text-align:center;vertical-align:middle;border-bottom:1px solid #b5bcc7;color:#000;background-color:#efefef;background-image:url("images/titlebar.png");background-repeat:repeat-x}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeader{position:absolute;height:30px;left:70px;right:0;top:0;cursor:default;overflow:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeader.dojoxCalendarHorizontalScroll{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td{overflow:hidden;white-space:nowrap;vertical-align:middle;text-align:center;background-color:#efefef;background-image:url("images/titlebar.png");background-repeat:repeat-x;border-right:1px solid #ccc;border-top:1px solid #b5bcc7;border-bottom:1px solid #b5bcc7;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#000;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable .dojoxCalendarToday{font-weight:700;color:red}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable .dojoxCalendarWeekend{color:#759dc0}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td.Hover{cursor:pointer;background-image:url("images/titlebar.png");background-repeat:repeat-x;background-color:#abd6ff;border-color:#769dc0}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td.Active{cursor:pointer;background-color:#7dbefa;border-color:#769dc0;background-position:0 -136px;-webkit-transition-duration:0s;-moz-transition-duration:0s;transition-duration:0s}.claro .dojoxCalendarColumnView .dojoxCalendarSubHeader{position:absolute;left:0;right:0;top:72px;height:20px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:none}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeader{position:absolute;height:20px;left:70px;right:0;top:0;cursor:default;overflow:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeader.dojoxCalendarHorizontalScroll{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td{overflow:hidden;white-space:nowrap;vertical-align:middle;text-align:center;border-right:1px solid #ccc;border-top:1px solid #b5bcc7;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#000}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td.dojoxCalendarToday{background-color:#fff0b4}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td.dojoxCalendarWeekend{background-color:#e5f2fe}.claro .dojoxCalendarColumnView .dojoxCalendarSubHeaderContainer{position:relative;width:100%;height:18px}.claro .dojoxCalendarColumnView .dojoxCalendarSubHeaderCell{position:absolute;top:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:100%;overflow:hidden;text-overflow:ellipsis}.claro .dojoxCalendarColumnView .dojoxCalendarSubHeaderCell.subColumn{border-right:1px solid #ddd}.claro .dojoxCalendarColumnView .dojoxCalendarSubHeaderLabel{font-size:.9em;color:#555}.claro .dojoxCalendarColumnView .dojoxCalendarSubRowHeader{position:absolute;height:20px;left:0;width:68px;top:0;border-left:1px solid #b5bcc7;border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarSubRowHeader table{position:relative;width:100%;height:100%}.claro .dojoxCalendarColumnView .dojoxCalendarSubRowHeader table td{border-top:1px solid #b5bcc7;background-color:#efefef}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeader{position:absolute;width:68px;cursor:default;border-left:1px solid #b5bcc7;border-right:1px solid #b5bcc7;height:100%;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeaderLabelContainer{width:100%;height:100%;z-index:10}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeaderLabel{right:4px;position:absolute}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable td.dummy{border-top:1px solid #efefef}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable td{background-color:#efefef;color:#000;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable tr:first-child td{border-top:1px solid #efefef}.claro .dojoxCalendarColumnView .dojoxCalendarDecoration{position:absolute;background-color:#a7e944;filter:alpha(opacity=20);opacity:.2}.claro .dojoxCalendarColumnView .dojoxCalendarEvent{position:absolute;text-align:left;color:#FFF;cursor:default;overflow:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .bg{position:absolute;left:0;right:0;top:0;bottom:0;z-index:-1;border:1px solid #260000;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;background-color:#9f0000;filter:alpha(opacity=90);opacity:.9}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .endTime{position:absolute;font-weight:700;bottom:3px;left:6px;white-space:nowrap}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .beforeIcon{text-align:center}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .afterIcon{position:absolute;bottom:2px;width:100%;text-align:center}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .moveHandle{position:absolute;top:0;width:100%;bottom:0;cursor:move}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .resizeStartHandle{position:absolute;top:0;width:100%;height:10px;cursor:n-resize}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .resizeEndHandle{position:absolute;bottom:0;width:100%;height:10px;cursor:n-resize}.claro .dojoxCalendarColumnView .dojoxCalendarEvent dl{margin:0}.claro .dojoxCalendarColumnView .dojoxCalendarEvent dd{margin:0;padding:0 3px;text-align:left}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Hovered .bg{background-color:#c00}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Selected .bg{background-color:#600}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Edited .bg{border:dashed 1px #fff;filter:alpha(opacity=70);opacity:.7}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Focused .bg{border:dashed 1px #fff}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .startTime{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px;background-color:#6c0000;border-top:1px solid #260000;border-left:1px solid #260000;border-right:1px solid #260000}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Focused .startTime{border-top:dashed 1px #fff;border-left:dashed 1px #fff;border-right:dashed 1px #fff}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Hovered .startTime{background-color:#900}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Selected .startTime{background-color:#300}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Edited .startTime{background-color:#6c0000;border-top:dashed 1px #fff;border-left:dashed 1px #fff;border-right:dashed 1px #fff}.claro .dojoxCalendarColumnView .dojoxCalendarVScrollBar{position:absolute;top:33px;bottom:0;overflow-y:scroll;overflow-x:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarHScrollBar{position:absolute;bottom:0;left:70px;overflow-x:scroll;overflow-y:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView{position:absolute;left:0;right:0;top:30px;height:39px}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGrid{position:absolute;left:70px;right:0;top:0;bottom:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarContainer{position:absolute;top:0;left:70px;right:0;bottom:0;cursor:default}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarRowHeader{position:absolute;left:0;top:0;width:70px;bottom:0;border-right:0;border-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGridTable td{text-align:right;vertical-align:top;border-top:1px solid #ccc;border-bottom:1px solid #ccc;border-right:1px solid #ccc;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGridTable tr.last-child td{border-bottom:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGridTable td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td{border-top:1px solid #ccc;border-left:1px solid #b5bcc7;border-right:1px solid #b5bcc7;border-bottom:1px solid #b5bcc7;background-color:#efefef}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;position:absolute;width:5px;height:100%;cursor:e-resize}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .moveHandle{left:0;top:0;width:100%;cursor:move}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .resizeEndHandle{right:0}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .afterIcon{width:auto}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .endTime{position:relative;bottom:auto;left:auto}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{position:absolute;left:3px;right:1px;bottom:2px;overflow:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand{position:absolute;text-align:center}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand .bg{position:relative;margin-right:10%;margin-left:10%;border-radius:5px;height:100%;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;border:1px solid transparent;-moz-border-radius:5px;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand.Up .bg{background-color:#e5f2fe;border:1px solid #909da9}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand.Down .bg{background-color:#a5d1fb;border:1px solid #507ca6}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent div{white-space:nowrap}.claro .dojoxCalendarColumnView .dojoxCalendarTimeIndicator{position:absolute;left:0;height:2px;width:100%;background-color:red}.claro .dojoxCalendarColumnView.subColumns .dojoxCalendarScrollContainer{top:53px}.claro .dojoxCalendarColumnView.subColumns .dojoxCalendarSubHeader{top:33px;display:block}.claro .dojoxCalendarColumnView.subColumns .dojoxCalendarVScrollBar{top:53px}.claro .dojoxCalendarColumnView.secondarySheet .dojoxCalendarScrollContainer{top:72px}.claro .dojoxCalendarColumnView.secondarySheet .dojoxCalendarSubHeader{top:72px;display:none}.claro .dojoxCalendarColumnView.secondarySheet .dojoxCalendarVScrollBar{top:72px}.claro .dojoxCalendarColumnView.subColumns.secondarySheet .dojoxCalendarScrollContainer{top:92px}.claro .dojoxCalendarColumnView.subColumns.secondarySheet .dojoxCalendarSubHeader{top:72px;display:block}.claro .dojoxCalendarColumnView.subColumns.secondarySheet .dojoxCalendarVScrollBar{top:92px}.claro .dojoxCalendar .buttonContainer{position:absolute;left:0;right:0;top:0;height:31px}.claro .dojoxCalendar .buttonContainer .dijitToolbar{border:1px solid #B5BCC7}.claro .dojoxCalendar .viewContainer{position:absolute;left:0;right:0;top:31px;bottom:0;overflow:hidden}.claro .dojoxCalendar .view{position:absolute;left:0;right:0;top:0;bottom:0} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar.less new file mode 100644 index 00000000..e2fd1c95 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar.less @@ -0,0 +1,36 @@ +@button-container-height: 31px; + +@import url("MatrixView.css"); +@import url("ColumnView.css"); + +.claro .dojoxCalendar { + + .buttonContainer{ + position: absolute; + left: 0; + right: 0; + top: 0; + height: @button-container-height; + + .dijitToolbar { + border: 1px solid #B5BCC7; + } + } + + .viewContainer{ + position: absolute; + left: 0; + right: 0; + top: @button-container-height; + bottom: 0; + overflow: hidden; + } + + .view{ + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + } +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar_rtl.css new file mode 100644 index 00000000..580be652 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar_rtl.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarGrid{right:50px;left:0}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td{text-align:left;border-bottom:1px solid #ccc;border-left:1px solid #ccc;border-right:0}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td span{padding-left:2px}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td.last-child{border-left:1px solid #b5bcc7}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarContainer{right:50px;left:0}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarContainerTable td{border-bottom:solid 1px transparent;border-right:solid 1px transparent;text-align:right;vertical-align:top}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarYearColumnHeader{position:absolute;right:0;left:auto}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarColumnHeader{right:50px;left:0}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarColumnHeaderTable td{border-left:1px solid #b5bcc7;border-right:0}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarRowHeader{right:0;left:auto}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{text-align:right}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent.dojoxCalendarLabel .labels{text-align:right}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeStartHandle{right:0}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeEndHandle{left:0;right:auto}.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarScrollContainer{border-left:0;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarGrid{left:0;right:70px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarGrid.dojoxCalendarHorizontalScroll{border-right:0;border-left:1px solid #b5bcc7}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarGridTable td{border-left:1px solid #b5bcc7;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarContainer{left:0;right:70px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarContainer.dojoxCalendarHorizontalScroll{border-right:0;border-left:1px solid #b5bcc7}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEventContainerColumn{margin-right:2px;margin-left:7px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnBorder.subColumn{border-right:0;border-left:1px solid #ddd}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarYearColumnHeader{right:0;width:68px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeader{left:0;right:70px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeader.dojoxCalendarHorizontalScroll{border-right:0;border-left:1px solid #b5bcc7}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeaderTable td{border-right:0;border-left:1px solid #ccc}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeaderTable td.last-child{border-right:0;border-left:1px solid #b5bcc7}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeader{right:70px;left:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeader.dojoxCalendarHorizontalScroll{border-right:0;border-left:1px solid #b5bcc7}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubRowHeader{left:auto;right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable{border-left:1px solid #b5bcc7;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable table.subColumn td{border-left:0;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable td{border-left:1px solid #ccc;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable td.last-child{border-left:1px solid #b5bcc7;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarRowHeaderLabel{right:auto;left:4px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEvent .summary{text-align:right}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEvent .startTime{text-align:right}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEvent .endTime{text-align:right}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarVScrollBar{margin-left:-1px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGrid{right:70px;left:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td{text-align:left;border-bottom:1px solid #ccc;border-left:1px solid #ccc;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td span{padding-left:2px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td.last-child{border-left:1px solid #b5bcc7}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarContainer{right:70px;left:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarContainerTable td{border-bottom:solid 1px transparent;border-right:solid 1px transparent;text-align:right;vertical-align:top}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarYearColumnHeader{position:absolute;right:0;left:auto}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarColumnHeader{right:70px;left:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td{border-left:1px solid #b5bcc7;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarRowHeader{right:0;left:auto}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeStartHandle{right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeEndHandle{left:0;right:auto}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{text-align:right;right:2px} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar_rtl.less new file mode 100644 index 00000000..25ef90d5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Calendar_rtl.less @@ -0,0 +1,3 @@ +@import url("MatrixView_rtl.css"); +@import url("ColumnView_rtl.css"); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView.css new file mode 100644 index 00000000..a5ab29ba --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.claro .dojoxCalendarColumnView{cursor:default;-webkit-user-select:none}.claro .dojoxCalendarColumnView .dojoxCalendarHeader{position:absolute;left:0;right:0;top:0;height:29px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarScrollContainer{left:0;right:0;bottom:0;top:33px;position:absolute;overflow-y:hidden;overflow-x:hidden;border-top:1px solid #b5bcc7;border-bottom:1px solid #b5bcc7;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarGrid{position:absolute;left:70px;right:0;overflow:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarGrid.dojoxCalendarHorizontalScroll{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable{border-collapse:collapse;table-layout:fixed;width:100%;position:relative;margin:0;padding:0}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable td{border-top:dotted 1px 1px solid #b5bcc7;border-right:1px solid #ccc;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable tr:first-child td{border-top:1px solid transparent}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable .dojoxCalendarToday{background-color:#fff0b4}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable tr td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable .tr:first-child td.dojoxCalendarToday{border-top:1px solid #fff0b4}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable .dojoxCalendarWeekend{background-color:#e5f2fe}.claro .dojoxCalendarColumnView .dojoxCalendarGridTable tr:first-child td.dojoxCalendarWeekend{border-top:1px solid #e5f2fe}.claro .dojoxCalendarColumnView td.hour{border-top:1px solid #c7bebe}.claro .dojoxCalendarColumnView td.halfhour{border-top:dotted 1px #c7bebe}.claro .dojoxCalendarColumnView td.quarterhour{border-top:dotted 1px #c7bebe}.claro .dojoxCalendarColumnView span.hour{color:#000;background-color:#efefef}.claro .dojoxCalendarColumnView span.halfhour,.claro .dojoxCalendarColumnView span.quarterhour{color:#555;background-color:#efefef}.claro .dojoxCalendarColumnView .dojoxCalendarContainer{position:absolute;top:0;left:70px;right:0;cursor:default;overflow:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarContainer.dojoxCalendarHorizontalScroll{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarContainerTable{border-collapse:collapse;table-layout:fixed;width:100%;position:relative;margin:0;padding:0}.claro .dojoxCalendarColumnView .dojoxCalendarContainerTable td{height:100%;padding:0;vertical-align:top;border-right:1px solid transparent}.claro .dojoxCalendarColumnView .dojoxCalendarContainerColumn{position:relative;width:100%}.claro .dojoxCalendarColumnView .dojoxCalendarSubContainerColumn{position:absolute;top:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:100%}.claro .dojoxCalendarColumnView .dojoxCalendarEventContainerColumn{position:absolute;height:100%;left:0;top:0;right:0;margin-left:1px;margin-right:5px}.claro .dojoxCalendarColumnView .dojoxCalendarDecorationContainerColumn{position:absolute;height:100%;left:0;top:0;right:0}.claro .dojoxCalendarColumnView .dojoxCalendarSubContainerColumn.subColumn{border-right:1px solid #ddd}.claro .dojoxCalendarColumnView .dojoxCalendarEventContainer{position:absolute;overflow:hidden;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarColumnView .dojoxCalendarYearColumnHeader{position:absolute;height:29px;left:0;width:68px;top:0;border-left:1px solid #b5bcc7;border-top:1px solid #b5bcc7;border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarYearColumnHeader table{position:relative;width:100%;height:100%}.claro .dojoxCalendarColumnView .dojoxCalendarYearColumnHeader table td{text-align:center;vertical-align:middle;border-bottom:1px solid #b5bcc7;color:#000;background-color:#efefef;background-image:url(images/titlebar.png);background-repeat:repeat-x}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeader{position:absolute;height:30px;left:70px;right:0;top:0;cursor:default;overflow:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeader.dojoxCalendarHorizontalScroll{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td{overflow:hidden;white-space:nowrap;vertical-align:middle;text-align:center;background-color:#efefef;background-image:url(images/titlebar.png);background-repeat:repeat-x;border-right:1px solid #ccc;border-top:1px solid #b5bcc7;border-bottom:1px solid #b5bcc7;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#000;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable .dojoxCalendarToday{font-weight:700;color:red}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable .dojoxCalendarWeekend{color:#759dc0}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td.Hover{cursor:pointer;background-image:url(images/titlebar.png);background-repeat:repeat-x;background-color:#abd6ff;border-color:#769dc0}.claro .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td.Active{cursor:pointer;background-color:#7dbefa;border-color:#769dc0;background-position:0 -136px;-webkit-transition-duration:0s;-moz-transition-duration:0s;transition-duration:0s}.claro .dojoxCalendarColumnView .dojoxCalendarSubHeader{position:absolute;left:0;right:0;top:72px;height:20px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:none}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeader{position:absolute;height:20px;left:70px;right:0;top:0;cursor:default;overflow:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeader.dojoxCalendarHorizontalScroll{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td{overflow:hidden;white-space:nowrap;vertical-align:middle;text-align:center;border-right:1px solid #ccc;border-top:1px solid #b5bcc7;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#000}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td.dojoxCalendarToday{background-color:#fff0b4}.claro .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td.dojoxCalendarWeekend{background-color:#e5f2fe}.claro .dojoxCalendarColumnView .dojoxCalendarSubHeaderContainer{position:relative;width:100%;height:18px}.claro .dojoxCalendarColumnView .dojoxCalendarSubHeaderCell{position:absolute;top:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:100%;overflow:hidden;text-overflow:ellipsis}.claro .dojoxCalendarColumnView .dojoxCalendarSubHeaderCell.subColumn{border-right:1px solid #ddd}.claro .dojoxCalendarColumnView .dojoxCalendarSubHeaderLabel{font-size:.9em;color:#555}.claro .dojoxCalendarColumnView .dojoxCalendarSubRowHeader{position:absolute;height:20px;left:0;width:68px;top:0;border-left:1px solid #b5bcc7;border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarSubRowHeader table{position:relative;width:100%;height:100%}.claro .dojoxCalendarColumnView .dojoxCalendarSubRowHeader table td{border-top:1px solid #b5bcc7;background-color:#efefef}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeader{position:absolute;width:68px;cursor:default;border-left:1px solid #b5bcc7;border-right:1px solid #b5bcc7;height:100%;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeaderLabelContainer{width:100%;height:100%;z-index:10}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeaderLabel{right:4px;position:absolute}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable td.dummy{border-top:1px solid #efefef}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable td{background-color:#efefef;color:#000;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable tr:first-child td{border-top:1px solid #efefef}.claro .dojoxCalendarColumnView .dojoxCalendarDecoration{position:absolute;background-color:#a7e944;filter:alpha(opacity=20);opacity:.2}.claro .dojoxCalendarColumnView .dojoxCalendarEvent{position:absolute;text-align:left;color:#FFF;cursor:default;overflow:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .bg{position:absolute;left:0;right:0;top:0;bottom:0;z-index:-1;border:1px solid #260000;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;background-color:#9f0000;filter:alpha(opacity=90);opacity:.9}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .endTime{position:absolute;font-weight:700;bottom:3px;left:6px;white-space:nowrap}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .beforeIcon{text-align:center}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .afterIcon{position:absolute;bottom:2px;width:100%;text-align:center}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .moveHandle{position:absolute;top:0;width:100%;bottom:0;cursor:move}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .resizeStartHandle{position:absolute;top:0;width:100%;height:10px;cursor:n-resize}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .resizeEndHandle{position:absolute;bottom:0;width:100%;height:10px;cursor:n-resize}.claro .dojoxCalendarColumnView .dojoxCalendarEvent dl{margin:0}.claro .dojoxCalendarColumnView .dojoxCalendarEvent dd{margin:0;padding:0 3px;text-align:left}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Hovered .bg{background-color:#c00}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Selected .bg{background-color:#600}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Edited .bg{border:dashed 1px #fff;filter:alpha(opacity=70);opacity:.7}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Focused .bg{border:dashed 1px #fff}.claro .dojoxCalendarColumnView .dojoxCalendarEvent .startTime{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px;background-color:#6c0000;border-top:1px solid #260000;border-left:1px solid #260000;border-right:1px solid #260000}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Focused .startTime{border-top:dashed 1px #fff;border-left:dashed 1px #fff;border-right:dashed 1px #fff}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Hovered .startTime{background-color:#900}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Selected .startTime{background-color:#300}.claro .dojoxCalendarColumnView .dojoxCalendarEvent.Edited .startTime{background-color:#6c0000;border-top:dashed 1px #fff;border-left:dashed 1px #fff;border-right:dashed 1px #fff}.claro .dojoxCalendarColumnView .dojoxCalendarVScrollBar{position:absolute;top:33px;bottom:0;overflow-y:scroll;overflow-x:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarHScrollBar{position:absolute;bottom:0;left:70px;overflow-x:scroll;overflow-y:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView{position:absolute;left:0;right:0;top:30px;height:39px}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGrid{position:absolute;left:70px;right:0;top:0;bottom:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarContainer{position:absolute;top:0;left:70px;right:0;bottom:0;cursor:default}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarRowHeader{position:absolute;left:0;top:0;width:70px;bottom:0;border-right:0;border-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGridTable td{text-align:right;vertical-align:top;border-top:1px solid #ccc;border-bottom:1px solid #ccc;border-right:1px solid #ccc;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGridTable tr.last-child td{border-bottom:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGridTable td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td{border-top:1px solid #ccc;border-left:1px solid #b5bcc7;border-right:1px solid #b5bcc7;border-bottom:1px solid #b5bcc7;background-color:#efefef}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;position:absolute;width:5px;height:100%;cursor:e-resize}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .moveHandle{left:0;top:0;width:100%;cursor:move}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .resizeEndHandle{right:0}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .afterIcon{width:auto}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .endTime{position:relative;bottom:auto;left:auto}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{position:absolute;left:3px;right:1px;bottom:2px;overflow:hidden}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand{position:absolute;text-align:center}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand .bg{position:relative;margin-right:10%;margin-left:10%;border-radius:5px;height:100%;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;border:1px solid transparent;-moz-border-radius:5px;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand.Up .bg{background-color:#e5f2fe;border:1px solid #909da9}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand.Down .bg{background-color:#a5d1fb;border:1px solid #507ca6}.claro .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent div{white-space:nowrap}.claro .dojoxCalendarColumnView .dojoxCalendarTimeIndicator{position:absolute;left:0;height:2px;width:100%;background-color:red}.claro .dojoxCalendarColumnView.subColumns .dojoxCalendarScrollContainer{top:53px}.claro .dojoxCalendarColumnView.subColumns .dojoxCalendarSubHeader{top:33px;display:block}.claro .dojoxCalendarColumnView.subColumns .dojoxCalendarVScrollBar{top:53px}.claro .dojoxCalendarColumnView.secondarySheet .dojoxCalendarScrollContainer{top:72px}.claro .dojoxCalendarColumnView.secondarySheet .dojoxCalendarSubHeader{top:72px;display:none}.claro .dojoxCalendarColumnView.secondarySheet .dojoxCalendarVScrollBar{top:72px}.claro .dojoxCalendarColumnView.subColumns.secondarySheet .dojoxCalendarScrollContainer{top:92px}.claro .dojoxCalendarColumnView.subColumns.secondarySheet .dojoxCalendarSubHeader{top:72px;display:block}.claro .dojoxCalendarColumnView.subColumns.secondarySheet .dojoxCalendarVScrollBar{top:92px} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView.less new file mode 100644 index 00000000..754b7228 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView.less @@ -0,0 +1,733 @@ +@import "ColumnViewCommon.less"; + +.claro .dojoxCalendarColumnView { + cursor: default; + -webkit-user-select: none; + + .dojoxCalendarHeader { + position: absolute; + left: 0; + right: 0; + top: 0; + height: @column-header-height - 1px; + .border-box; + } + + .dojoxCalendarScrollContainer { + left: 0; + right: 0; + bottom: 0; + top: @sheet-top; + position: absolute; + overflow-y: hidden; + overflow-x: hidden; + border-top: @outer-border; + border-bottom: @outer-border; + .border-box; + } + + .dojoxCalendarGrid { + position: absolute; + left: @row-header-width; + right: 0; + overflow: hidden; + } + + .dojoxCalendarGrid.dojoxCalendarHorizontalScroll { + border-right: @outer-border; + } + + .dojoxCalendarGridTable { + border-collapse: collapse; + table-layout: fixed; + width: 100%; + position: relative; + margin: 0; + padding: 0; + + td { + border-top: dotted 1px @outer-border; + border-right: @inner-border; + .border-box; + } + + tr:first-child td { + border-top: 1px solid transparent; + } + + .dojoxCalendarToday { + background-color: @today-color; + } + + tr td.last-child { + border-right: @outer-border; + } + + .tr:first-child td.dojoxCalendarToday { + border-top: 1px solid @today-color; + } + + .dojoxCalendarWeekend { + background-color: @week-end-color; + } + + tr:first-child td.dojoxCalendarWeekend { + border-top: 1px solid @week-end-color; + } + } + + + td.hour { + border-top: @hour-stroke; + } + + td.halfhour{ + border-top: @half-hour-stroke; + } + + td.quarterhour{ + border-top: @quarter-hour-stroke; + } + + span.hour { + color: @label-color; + background-color: @row-color; + } + + span.halfhour, + span.quarterhour{ + color: @secondary-label-color; + background-color: @row-color; + } + + .dojoxCalendarContainer { + position: absolute; + top: 0; + left: @row-header-width; + right: 0; + cursor: default; + overflow: hidden; + } + + .dojoxCalendarContainer.dojoxCalendarHorizontalScroll { + border-right: @outer-border; + } + + .dojoxCalendarContainerTable { + border-collapse: collapse; + table-layout: fixed; + width: 100%; + position: relative; + margin: 0; + padding: 0; + + td { + height: 100%; + padding: 0; + vertical-align: top; + border-right: 1px solid transparent; + } + } + + .dojoxCalendarContainerColumn { + position: relative; + width:100%; + } + + .dojoxCalendarSubContainerColumn { + position: absolute; + top: 0; + .border-box; + height:100%; + } + + .dojoxCalendarEventContainerColumn { + position: absolute; + height: 100%; + left:0; + top:0; + right:0; + margin-left: 1px; + margin-right: 5px; + } + + .dojoxCalendarDecorationContainerColumn { + position: absolute; + height: 100%; + left:0; + top:0; + right:0; + } + + .dojoxCalendarSubContainerColumn.subColumn { + border-right: @sub-column-border; + } + + .dojoxCalendarEventContainer { + position: absolute; + overflow: hidden; + .select-none; + } + + .dojoxCalendarYearColumnHeader{ + position: absolute; + height: @column-header-height - 1px; + left: 0; + width: @row-header-width - 2px; + top: 0; + border-left: @outer-border; + border-top: @outer-border; + border-right: @outer-border; + + table { + position:relative; + width:100%; + height:100%; + } + + table td { + text-align: center; + vertical-align: middle; + border-bottom: @outer-border; + color: @label-color; + .header-background; + } + } + + .dojoxCalendarColumnHeader { + position: absolute; + height: @column-header-height; + left: @row-header-width; + right: 0; + top: 0; + cursor: default; + overflow: hidden; + } + + .dojoxCalendarColumnHeader.dojoxCalendarHorizontalScroll { + border-right: @outer-border; + } + + .dojoxCalendarColumnHeaderTable { + border-collapse: collapse; + table-layout: fixed; + position: relative; + margin: 0; + padding: 0; + width: 100%; + height: 100%; + + td { + overflow:hidden; + white-space: nowrap; + vertical-align: middle; + text-align: center; + .header-background; + border-right: @inner-border; + border-top: @outer-border; + border-bottom: @outer-border; + .select-none; + color: @label-color; + .transition-duration(0.2s); + } + + td.last-child { + border-right: @outer-border; + } + + .dojoxCalendarToday { + font-weight: bold; + color: @today-label-color; + } + + .dojoxCalendarWeekend { + color: @week-end-label-color; + } + + td.Hover{ + cursor: pointer; + .header-hover-background; + } + + td.Active{ + .header-active-background; + } + } + + .dojoxCalendarSubHeader { + position: absolute; + left: 0; + right: 0; + top: 72px; + height: @sub-column-header-height; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + display: none; + } + + .dojoxCalendarSubColumnHeader { + position: absolute; + height: @sub-column-header-height; + left: @row-header-width; + right: 0; + top: 0px; + cursor: default; + overflow: hidden; + } + + .dojoxCalendarSubColumnHeader.dojoxCalendarHorizontalScroll { + border-right: @outer-border; + } + + .dojoxCalendarSubColumnHeaderTable { + border-collapse: collapse; + table-layout: fixed; + position: relative; + margin: 0; + padding: 0; + width: 100%; + height: 100%; + + td { + overflow: hidden; + white-space: nowrap; + vertical-align: middle; + text-align: center; + border-right: @inner-border; + border-top: @outer-border; + -moz-user-select: none; + -webkit-user-select: none; + khtml-user-select: none; + user-select: none; + color: #000000; + } + td.last-child { + border-right: @outer-border; + } + td.dojoxCalendarToday { + background-color: @today-color; + } + td.dojoxCalendarWeekend { + background-color: @week-end-color; + } + } + + .dojoxCalendarSubHeaderContainer { + position: relative; + width:100%; + height: @sub-column-header-height - 2px; + } + + .dojoxCalendarSubHeaderCell { + position: absolute; + top: 0; + .border-box; + height:100%; + overflow: hidden; + text-overflow: ellipsis; + } + + .dojoxCalendarSubHeaderCell.subColumn { + border-right: @sub-column-border; + } + + .dojoxCalendarSubHeaderLabel { + font-size: 0.9em; + color: #555; + } + + .dojoxCalendarSubRowHeader { + position: absolute; + height: @sub-column-header-height; + left: 0; + width: @row-header-width - 2px; + top: 0; + border-left: @outer-border; + border-right: @outer-border; + + table { + position: relative; + width: 100%; + height: 100%; + + td { + border-top: @outer-border; + background-color: #efefef; + } + } + } + + .dojoxCalendarRowHeader { + position: absolute; + width: @row-header-width - 2px; + cursor: default; + border-left: @outer-border; + border-right: @outer-border; + height: 100%; + .select-none; + } + + .dojoxCalendarRowHeaderLabelContainer{ + width: 100%; + height: 100%; + z-index: 10; + } + + .dojoxCalendarRowHeaderLabel{ + right: 4px; + position: absolute; + } + + .dojoxCalendarRowHeaderTable { + border-collapse: collapse; + table-layout: fixed; + position: relative; + margin: 0; + padding: 0; + width: 100%; + height: 100%; + + td.dummy{ + border-top: 1px solid @row-color; + } + + td { + background-color: @row-color; + color: @label-color; + .border-box; + } + + tr:first-child td { + border-top: 1px solid @row-color; + } + } + + .dojoxCalendarDecoration { + position:absolute; + background-color: rgb(167, 233, 68); + .opacity(20); + } + + .dojoxCalendarEvent { + position: absolute; + text-align: left; + color: #FFF; + cursor: default; + overflow: hidden; + + .bg { + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + z-index: -1; + border: @event-border; + .rounded-corners; + background-color: @event-bg-color; + .opacity(90); + } + + .endTime { + position: absolute; + font-weight: bold; + bottom:3px; + left: 6px; + white-space:nowrap; + } + + .beforeIcon { + text-align: center; + } + + .afterIcon { + position: absolute; + bottom: 2px; + width: 100%; + text-align: center; + } + + .handle { + .glass-view; + } + + .moveHandle { + position: absolute; + top:0; + width:100%; + bottom:0; + cursor:move; + } + + .resizeStartHandle { + position: absolute; + top:0; + width:100%; + height:10px; + cursor:n-resize; + } + + .resizeEndHandle { + position: absolute; + bottom:0; + width:100%; + height:10px; + cursor:n-resize; + } + + dl { + margin: 0; + } + + dd { + margin: 0; + padding: 0 3px; + text-align: left; + } + } + + .dojoxCalendarEvent.Hovered .bg { + background-color: @event-hovered-bg-color; + } + + .dojoxCalendarEvent.Selected .bg { + background-color: @event-selected-bg-color; + } + + .dojoxCalendarEvent.Edited .bg { + border: @event-border-focused; + .opacity(70); + } + + .dojoxCalendarEvent.Focused .bg { + border: @event-border-focused; + } + + .dojoxCalendarEvent .startTime { + .event-header; + background-color: @event-header-bg-color; + .top-left-right-border(@event-border); + } + + .dojoxCalendarEvent.Focused .startTime { + .top-left-right-border(@event-border-focused); + } + + .dojoxCalendarEvent.Hovered .startTime { + background-color: @event-header-hovered-bg-color; + } + + .dojoxCalendarEvent.Selected .startTime { + background-color: @event-header-selected-bg-color; + } + + .dojoxCalendarEvent.Edited .startTime { + background-color: @event-header-bg-color; + .top-left-right-border(@event-border-focused); + } + + .dojoxCalendarVScrollBar { + position: absolute; + top: @sheet-top; + bottom: 0; + overflow-y: scroll; + overflow-x: hidden; + } + + .dojoxCalendarHScrollBar { + position: absolute; + bottom: 0; + left: @row-header-width; + overflow-x: scroll; + overflow-y: hidden; + } + + .dojoxCalendarMatrixView { + position: absolute; + left: 0; + right: 0; + top: @column-header-height; + height: @secondary-sheet-height; + + .dojoxCalendarGrid { + position: absolute; + left: @row-header-width; + right: 0; + top: 0; + bottom: 0; + .border-box; + } + + .dojoxCalendarContainer { + position: absolute; + top: 0; + left: @row-header-width; + right: 0; + bottom: 0; + cursor: default; + } + + .dojoxCalendarRowHeader { + position: absolute; + left: 0; + top: 0; + width: @row-header-width; + bottom: 0; + + border-right: none; + border-left: none; + .border-box; + } + + .dojoxCalendarGridTable{ + + td { + text-align: right; + vertical-align: top; + border-top: @inner-border; + border-bottom: @inner-border; + border-right: @inner-border; + .border-box; + } + + tr.last-child td { + border-bottom: @outer-border; + } + + td.last-child { + border-right: @outer-border; + } + + } + + .dojoxCalendarRowHeaderTable td { + border-top: @inner-border; + border-left: @outer-border; + border-right: @outer-border; + border-bottom: @outer-border; + background-color: @row-color; + } + + .dojoxCalendarEvent { + .handle { + .glass-view; + position: absolute; + width:5px; + height:100%; + cursor:e-resize; + } + + .moveHandle { + left:0; + top:0; + width:100%; + cursor:move; + } + + .resizeEndHandle { + right:0px; + } + + .afterIcon { + width:auto; + } + + .endTime { + position: relative; + bottom:auto; + left: auto; + } + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal .labels { + position: absolute; + left: 3px; + right: 1px; + bottom: 2px; + overflow: hidden; + } + + .dojoxCalendarExpand { + position: absolute; + text-align: center; + + .bg { + position: relative; + margin-right: 10%; + margin-left: 10%; + border-radius: 5px; + height: 100%; + .select-none; + border: 1px solid transparent; + -moz-border-radius: 5px; + -webkit-transition-duration: 0.2s; + -moz-transition-duration: 0.2s; + transition-duration: 0.2s; + } + } + + .dojoxCalendarExpand.Up .bg { + background-color: @expand-up-color; + border: 1px solid @expand-up-color - #555; + } + + .dojoxCalendarExpand.Down .bg { + background-color: @expand-down-color; + border: 1px solid @expand-down-color - #555; + } + + .dojoxCalendarEvent div { + white-space:nowrap; + } + } + + .dojoxCalendarTimeIndicator { + position: absolute; + left:0; + height: 2px; + width:100%; + background-color: red; + } +} + +.claro .dojoxCalendarColumnView.subColumns { + .dojoxCalendarScrollContainer { + top: @sheet-top-subcolumns; + } + .dojoxCalendarSubHeader { + top: @column-header-height + 3px; + display: block; + } + .dojoxCalendarVScrollBar { + top: @sheet-top-subcolumns; + } + +} + +.claro .dojoxCalendarColumnView.secondarySheet { + .dojoxCalendarScrollContainer { + top: @sheet-top-secondary-sheet; + } + .dojoxCalendarSubHeader { + top: @column-header-height + @secondary-sheet-height + 3px; + display: none; + } + .dojoxCalendarVScrollBar { + top: @sheet-top-secondary-sheet; + } +} + +.claro .dojoxCalendarColumnView.subColumns.secondarySheet { + .dojoxCalendarScrollContainer { + top: @sheet-top-subcolumns-secondary-sheet; + } + .dojoxCalendarSubHeader { + top: @column-header-height + @secondary-sheet-height + 3px; + display: block; + } + .dojoxCalendarVScrollBar { + top: @sheet-top-subcolumns-secondary-sheet; + } +} + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnViewCommon.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnViewCommon.less new file mode 100644 index 00000000..374f7f9f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnViewCommon.less @@ -0,0 +1,10 @@ +@import "Common.less"; + +@column-header-height: 30px; +@sub-column-header-height: 20px; +@row-header-width: 70px; +@secondary-sheet-height: 39px; +@sheet-top: @column-header-height + 3px; +@sheet-top-secondary-sheet: @secondary-sheet-height + @column-header-height + 3px; +@sheet-top-subcolumns: @sub-column-header-height + @column-header-height + 3px; +@sheet-top-subcolumns-secondary-sheet: @secondary-sheet-height + @sub-column-header-height + @column-header-height + 3px; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView_rtl.css new file mode 100644 index 00000000..e4ce6644 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView_rtl.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarScrollContainer{border-left:0;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarGrid{left:0;right:70px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarGrid.dojoxCalendarHorizontalScroll{border-right:0;border-left:1px solid #b5bcc7}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarGridTable td{border-left:1px solid #b5bcc7;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarContainer{left:0;right:70px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarContainer.dojoxCalendarHorizontalScroll{border-right:0;border-left:1px solid #b5bcc7}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEventContainerColumn{margin-right:2px;margin-left:7px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnBorder.subColumn{border-right:0;border-left:1px solid #ddd}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarYearColumnHeader{right:0;width:68px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeader{left:0;right:70px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeader.dojoxCalendarHorizontalScroll{border-right:0;border-left:1px solid #b5bcc7}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeaderTable td{border-right:0;border-left:1px solid #ccc}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeaderTable td.last-child{border-right:0;border-left:1px solid #b5bcc7}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeader{right:70px;left:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeader.dojoxCalendarHorizontalScroll{border-right:0;border-left:1px solid #b5bcc7}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubRowHeader{left:auto;right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable{border-left:1px solid #b5bcc7;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable table.subColumn td{border-left:0;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable td{border-left:1px solid #ccc;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable td.last-child{border-left:1px solid #b5bcc7;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarRowHeaderLabel{right:auto;left:4px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEvent .summary{text-align:right}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEvent .startTime{text-align:right}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEvent .endTime{text-align:right}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarVScrollBar{margin-left:-1px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGrid{right:70px;left:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td{text-align:left;border-bottom:1px solid #ccc;border-left:1px solid #ccc;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td span{padding-left:2px}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td.last-child{border-left:1px solid #b5bcc7}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarContainer{right:70px;left:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarContainerTable td{border-bottom:solid 1px transparent;border-right:solid 1px transparent;text-align:right;vertical-align:top}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarYearColumnHeader{position:absolute;right:0;left:auto}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarColumnHeader{right:70px;left:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td{border-left:1px solid #b5bcc7;border-right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarRowHeader{right:0;left:auto}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeStartHandle{right:0}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeEndHandle{left:0;right:auto}.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{text-align:right;right:2px} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView_rtl.less new file mode 100644 index 00000000..76d959ee --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/ColumnView_rtl.less @@ -0,0 +1,197 @@ +@import "ColumnViewCommon.less"; + +.claro .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl { + .dojoxCalendarScrollContainer { + border-left: none; + border-right: none; + } + + .dojoxCalendarGrid { + left: 0; + right: @row-header-width; + } + + .dojoxCalendarGrid.dojoxCalendarHorizontalScroll { + border-right: none; + border-left: @outer-border; + } + + .dojoxCalendarGridTable td { + border-left: @outer-border; + border-right: none; + } + + .dojoxCalendarContainer { + left: 0; + right: @row-header-width; + } + + .dojoxCalendarContainer.dojoxCalendarHorizontalScroll { + border-right: none; + border-left: @outer-border; + } + + .dojoxCalendarEventContainerColumn { + margin-right: 2px; + margin-left: 7px; + } + + .dojoxCalendarSubColumnBorder.subColumn { + border-right: none; + border-left: @sub-column-border; + } + + .dojoxCalendarYearColumnHeader{ + right: 0; + width: @row-header-width - 2; + } + + .dojoxCalendarColumnHeader { + left: 0; + right: @row-header-width; + } + + .dojoxCalendarColumnHeader.dojoxCalendarHorizontalScroll { + border-right: none; + border-left: @outer-border; + } + + .dojoxCalendarColumnHeaderTable { + + td { + border-right: none; + border-left: @inner-border; + } + + td.last-child { + border-right: none; + border-left: @outer-border; + } + } + + .dojoxCalendarSubColumnHeader { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarSubColumnHeader.dojoxCalendarHorizontalScroll { + border-right: none; + border-left: @outer-border; + } + + .dojoxCalendarSubRowHeader { + left: auto; + right: 0; + } + + .dojoxCalendarSubColumnHeaderTable { + border-left: @outer-border; + border-right: none; + + table.subColumn td { + border-left: none; + border-right: none; + } + } + + .dojoxCalendarSubColumnHeaderTable td { + border-left: @inner-border; + border-right: none; + } + + .dojoxCalendarSubColumnHeaderTable td.last-child { + border-left: @outer-border; + border-right: none; + } + + .dojoxCalendarRowHeaderLabel{ + right: auto; + left: 4px; + } + + .dojoxCalendarEvent .summary { + text-align: right; + } + + .dojoxCalendarEvent .startTime { + text-align: right; + } + + .dojoxCalendarEvent .endTime { + text-align: right; + } + + .dojoxCalendarVScrollBar { + margin-left: -1px; + } + + .dojoxCalendarMatrixViewRtl { + + .dojoxCalendarGrid { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarGridTable td { + text-align: left; + border-bottom: @inner-border; + border-left: @inner-border; + border-right: none; + } + + .dojoxCalendarGridTable td span{ + padding-left: 2px; + } + + .dojoxCalendarGridTable td.last-child { + border-left: @outer-border; + } + + .dojoxCalendarContainer { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarContainerTable td { + border-bottom: solid 1px transparent; + border-right: solid 1px transparent; + text-align: right; + vertical-align: top; + } + + .dojoxCalendarYearColumnHeader{ + position: absolute; + right: 0; + left: auto; + } + + .dojoxCalendarColumnHeader { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td { + border-left: @outer-border; + border-right: none; + } + + .dojoxCalendarRowHeader { + right: 0; + left: auto; + } + + .dojoxCalendarEvent .resizeStartHandle { + right: 0; + } + + .dojoxCalendarEvent .resizeEndHandle { + left: 0; + right: auto; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal .labels { + text-align: right; + right: 2px; + } + } +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Common.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Common.less new file mode 100644 index 00000000..d3768a8a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/Common.less @@ -0,0 +1,59 @@ +@import "../Base.less"; + +@outer-border: 1px solid #B5BCC7; +@inner-border: 1px solid #CCC; +@sub-column-border: 1px solid #DDD; + +@row-color:#EFEFEF; +@row-color-hover: #E5F2FE; +@row-color-active: #A5D1FB; + +@today-color: #FFF0B4; +@today-label-color: #FF0000; + +@subcolumn-text-color: #777; + +@week-end-color: #E5F2FE; +@week-end-label-color:#759DC0; + +@expand-up-color: #E5F2FE; +@expand-down-color: #A5D1FB; + +@label-color: #000; +@secondary-label-color: #555; + +@event-border: 1px solid #260000; +@event-border-focused: dashed 1px #FFFFFF; + +@event-bg-color: #9F0000; +@event-selected-bg-color: #660000; +@event-hovered-bg-color: #CC0000; + +@event-header-bg-color: @event-bg-color - #330000; +@event-header-selected-bg-color: @event-selected-bg-color - #330000; +@event-header-hovered-bg-color: @event-hovered-bg-color - #330000; + +@hour-stroke: 1px solid #C7BEBE; +@half-hour-stroke: dotted 1px #C7BEBE; +@quarter-hour-stroke: dotted 1px #C7BEBE; + +.header-background(){ + background-color: #efefef; + background-image: url("images/titlebar.png"); + background-repeat: repeat-x; +} + +.header-hover-background(){ + background-image: url("images/titlebar.png"); + background-repeat: repeat-x; + background-color: #abd6ff; + border-color: #769dc0; +} + +.header-active-background(){ + cursor: pointer; + background-color: #7dbefa; + border-color: #769dc0; + background-position: 0 -136px; + .transition-duration(0s); +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView.css new file mode 100644 index 00000000..eb26abb9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.claro .dojoxCalendarMatrixView{cursor:default;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarMatrixView .dojoxCalendarGrid{position:absolute;left:50px;right:0;top:30px;bottom:0}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable{position:relative;width:100%;height:100%;margin:0;padding:0;border-collapse:collapse;table-layout:fixed}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable tr{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable td{text-align:right;vertical-align:top;border-bottom:1px solid #ccc;border-right:1px solid #ccc;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable td span{padding-right:2px;padding-top:2px}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable tr.last-child td{border-bottom:1px solid #b5bcc7}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable td.dojoxCalendarToday{background-color:#fff0b4;font-weight:700;color:red}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable .dojoxCalendarWeekend{background-color:#e5f2fe;color:#759dc0}.claro .dojoxCalendarMatrixView .dojoxCalendarGridTable .dojoxCalendarDayDisabled{background-color:#e5f2fe;color:#759dc0}.claro .dojoxCalendarMatrixView .dojoxCalendarYearColumnHeader{position:absolute;left:0;top:0;width:50px;height:29px;text-align:center;vertical-align:middle;border-bottom:1px solid #b5bcc7}.claro .dojoxCalendarMatrixView .dojoxCalendarYearColumnHeader table{position:relative;width:100%;height:100%;table-layout:fixed;border-collapse:collapse}.claro .dojoxCalendarMatrixView .dojoxCalendarYearColumnHeader table td{text-align:center;vertical-align:middle;border-left:1px solid #b5bcc7;border-top:1px solid #b5bcc7;border-right:1px solid #b5bcc7;background-color:#efefef;background-image:url(images/titlebar.png);background-repeat:repeat-x;color:#000}.claro .dojoxCalendarMatrixView .dojoxCalendarColumnHeader{position:absolute;left:50px;right:0;top:0;height:29px;cursor:default;border-bottom:1px solid #b5bcc7}.claro .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable{position:relative;width:100%;height:100%;table-layout:fixed;border-collapse:collapse}.claro .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td{overflow:hidden;vertical-align:middle;text-align:center;background-color:#efefef;background-image:url(images/titlebar.png);background-repeat:repeat-x;border-right:1px solid #ccc;border-top:1px solid #b5bcc7;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#000}.claro .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable .dojoxCalendarWeekend{color:#759dc0}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeader{position:absolute;left:0;top:30px;width:50px;bottom:0;cursor:default;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable{position:relative;width:100%;height:100%;border-collapse:collapse;table-layout:fixed;margin:0;padding:0}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable tr{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td{text-align:center;vertical-align:middle;border-left:1px solid #b5bcc7;border-right:1px solid #b5bcc7;border-bottom:1px solid #ccc;background-color:#efefef;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;color:#000;cursor:pointer}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td.last-child{border-bottom:1px solid #b5bcc7}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td.Hover{background-color:#e5f2fe}.claro .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td.Active{background-color:#a5d1fb}.claro .dojoxCalendarMatrixView .dojoxCalendarContainer{position:absolute;top:30px;left:50px;right:0;bottom:0;cursor:default}.claro .dojoxCalendarMatrixView .dojoxCalendarContainerTable{position:relative;width:100%;height:100%;margin:0;padding:0;border-collapse:collapse;table-layout:fixed}.claro .dojoxCalendarMatrixView .dojoxCalendarContainerTable tr{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarMatrixView .dojoxCalendarContainerTable td{vertical-align:top;border-bottom:solid 1px transparent;border-right:solid 1px transparent;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarMatrixView .dojoxCalendarContainerTable td div.dojoxCalendarContainerRow{position:relative;height:100%;width:100%}.claro .dojoxCalendarMatrixView .dojoxCalendarEventContainer{position:absolute;overflow:hidden;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarMatrixView .dojoxCalendarDecoration{position:absolute;background-color:#a7e944;filter:alpha(opacity=20);opacity:.2}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent{position:absolute;text-align:left;color:#000;cursor:default;white-space:nowrap}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal{color:#FFF;position:absolute}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal .bg{border:1px solid #260000;position:absolute;left:0;right:0;top:0;bottom:0;color:#000;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;background-color:#9f0000}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Hovered .bg{background-color:#c00}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Selected .bg{background-color:#600}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.Edited{color:#FFF;font-weight:700;text-decoration:none}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Edited .bg{border:dashed 1px #FFF;filter:alpha(opacity=30);opacity:.3}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Focused .bg{border:dashed 1px #FFF}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Hovered{color:#F40}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Selected{color:red}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Edited{border:dashed 1px #FFF;background:#600;filter:alpha(opacity=30);opacity:.3;color:#FFF}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Focused{border:dashed 1px #000}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{position:absolute;left:3px;right:1px;bottom:2px;overflow:hidden}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel .labels{position:absolute;left:2px;right:2px;bottom:0;overflow:hidden}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;position:absolute;width:5px;height:100%;cursor:e-resize}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent .moveHandle{left:0;top:0;width:100%;cursor:move}.claro .dojoxCalendarMatrixView .dojoxCalendarEvent .resizeEndHandle{right:0}.claro .dojoxCalendarMatrixView .dojoxCalendarExpand{position:absolute;text-align:center}.claro .dojoxCalendarMatrixView .dojoxCalendarExpand span{display:inline-block;vertical-align:middle}.claro .dojoxCalendarMatrixView .dojoxCalendarExpand .bg{position:relative;margin-right:5px;margin-left:5px;height:100%;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:1px solid transparent}.claro .dojoxCalendarMatrixView .dojoxCalendarExpand.Up .bg{background-color:#e5f2fe;border:1px solid #909da9}.claro .dojoxCalendarMatrixView .dojoxCalendarExpand.Down .bg{background-color:#a5d1fb;border:1px solid #507ca6} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView.less new file mode 100644 index 00000000..6bb8dbfe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView.less @@ -0,0 +1,380 @@ +@import "MatrixViewCommon.less"; + +.claro .dojoxCalendarMatrixView { + cursor: default; + .select-none; + + .dojoxCalendarGrid { + position: absolute; + left: @row-header-width; + right: 0px; + top: @column-header-height; + bottom: 0px; + } + + .dojoxCalendarGridTable { + position: relative; + width: 100%; + height: 100%; + margin: 0; + padding: 0; + border-collapse: collapse; + table-layout: fixed; + + tr{ + .border-box; + } + + td { + text-align: right; + vertical-align: top; + border-bottom: @inner-border; + border-right: @inner-border; + .border-box; + } + + td span{ + padding-right: 2px; + padding-top: 2px; + } + + td span.FirstVisibleDayOfMonth{ + } + + tr.last-child td { + border-bottom: @outer-border; + } + + td.last-child { + border-right: @outer-border; + } + + /* + * The dojoxCalendarColToday & dojoxCalendarColWeekend classes is added by the + * MatrixView.styleGridCell method that can be subclassed to add/remove css classes + */ + td.dojoxCalendarToday { + background-color: @today-color; + font-weight: bold; + color: @today-label-color; + } + + .dojoxCalendarWeekend { + background-color: @week-end-color; + color: @week-end-label-color; + } + + .dojoxCalendarDayDisabled { + background-color: @disabled-day-color; + color: @disabled-day-label-color; + } + } + + .dojoxCalendarYearColumnHeader{ + position: absolute; + left: 0px; + top: 0px; + width: @row-header-width; + height: @column-header-height - 1px; + text-align: center; + vertical-align: middle; + border-bottom: @outer-border; + + table{ + position: relative; + width:100%; + height: 100%; + table-layout: fixed; + border-collapse: collapse; + + td{ + text-align: center; + vertical-align: middle; + border-left: @outer-border; + border-top: @outer-border; + border-right: @outer-border; + .header-background; + color: @label-color; + } + } + } + + .dojoxCalendarColumnHeader { + position: absolute; + left: @row-header-width; + right: 0px; + top: 0px; + height: @column-header-height - 1px; + cursor: default; + border-bottom: @outer-border; + } + + .dojoxCalendarColumnHeaderTable { + position: relative; + width:100%; + height: 100%; + table-layout: fixed; + border-collapse: collapse; + + td { + overflow:hidden; + vertical-align: middle; + text-align: center; + .header-background; + border-right: @inner-border; + border-top: @outer-border; + .select-none; + color: @label-color; + } + + td.last-child { + border-right: @outer-border; + } + + /* + * The dojoxCalendarColWeekend class is added by the + * ColumnView.styleColumnHeaderCell method that can be subclassed to add/remove css class. + */ + .dojoxCalendarWeekend { + color: @week-end-label-color; + } + } + + .dojoxCalendarRowHeader { + position: absolute; + left: 0px; + top: @column-header-height; + width: @row-header-width; + bottom: 0; + cursor: default; + + .select-none; + } + + .dojoxCalendarRowHeaderTable { + position: relative; + width: 100%; + height: 100%; + border-collapse: collapse; + table-layout: fixed; + margin: 0; + padding: 0; + + tr{ + .border-box; + } + + /* + * The MatrixView.styleRowHeaderCell method that can be subclassed to add/remove css classes per hour. + */ + td { + text-align: center; + vertical-align: middle; + border-left: @outer-border; + border-right: @outer-border; + border-bottom: @inner-border; + background-color: @row-color; + .transition-duration(0.2s); + .border-box; + color: @label-color; + cursor: pointer; + } + + td.last-child { + border-bottom: @outer-border; + } + + td.Hover { + background-color: @row-color-hover; + } + + td.Active { + background-color: @row-color-active; + } + } + + .dojoxCalendarContainer { + position: absolute; + top: @column-header-height; + left: @row-header-width; + right: 0px; + bottom: 0px; + cursor: default; + } + + .dojoxCalendarContainerTable { + position: relative; + width: 100%; + height: 100%; + margin: 0; + padding: 0; + border-collapse: collapse; + table-layout: fixed; + + tr{ + .border-box; + } + + td{ + vertical-align: top; + border-bottom: solid 1px transparent; + border-right: solid 1px transparent; + .border-box; + } + + td div.dojoxCalendarContainerRow{ + position:relative; + height:100%; + width:100%; + } + } + + .dojoxCalendarEventContainer { + position: absolute; + overflow: hidden; + .select-none; + } + + .dojoxCalendarDecoration { + position:absolute; + background-color: rgb(167, 233, 68); + .opacity(20); + } + + .dojoxCalendarEvent { + position: absolute; + text-align: left; + color: #000; + cursor: default; + white-space: nowrap; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal { + color: #FFF; + position: absolute; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal .bg { + border: @horizontal-border; + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + color: #000; + .rounded-corners(5px); + background-color: @horizontal-color; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal.Hovered .bg { + background-color: @horizontal-hover-color; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal.Selected .bg { + background-color: @horizontal-selected-bg-color; + } + + .dojoxCalendarEvent.Edited { + color: #FFF; + font-weight: bold; + text-decoration: none; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal.Edited .bg { + border: dashed 1px #FFF; + .opacity(30); + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal.Focused .bg { + border: dashed 1px #FFF; + } + + .dojoxCalendarEvent.dojoxCalendarLabel.Hovered { + color: #F40; + } + + .dojoxCalendarEvent.dojoxCalendarLabel.Selected { + color: #F00; + } + + .dojoxCalendarEvent.dojoxCalendarLabel.Edited { + border: dashed 1px #FFF; + background: #600; + .opacity(30); + color: #FFF; + } + + .dojoxCalendarEvent.dojoxCalendarLabel.Focused { + border: dashed 1px #000; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal .labels { + position: absolute; + left: 3px; + right: 1px; + bottom: 2px; + overflow: hidden; + } + + .dojoxCalendarEvent.dojoxCalendarLabel .labels { + position: absolute; + left: 2px; + right: 2px; + bottom: 0; + overflow: hidden; + } + + .dojoxCalendarEvent .handle { + .glass-view; + position: absolute; + width:5px; + height:100%; + cursor:e-resize; + } + + .dojoxCalendarEvent .moveHandle { + left:0; + top:0; + width:100%; + cursor:move; + } + + .dojoxCalendarEvent .resizeStartHandle { + } + + .dojoxCalendarEvent .resizeEndHandle { + right:0px; + } + + .dojoxCalendarExpand { + position: absolute; + text-align: center; + + span { + display: inline-block; + vertical-align: middle; + } + + .bg { + position: relative; + margin-right: 5px; + margin-left: 5px; + height: 100%; + .rounded-corners(5px); + .transition-duration(0.2s); + .border-box; + border: 1px solid transparent; + } + } + + .dojoxCalendarExpand.Up .bg { + background-color: @expand-up-color; + border: 1px solid @expand-up-color - #555; + } + + .dojoxCalendarExpand.Down .bg { + background-color: @expand-down-color; + border: 1px solid @expand-down-color - #555; + } + +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixViewCommon.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixViewCommon.less new file mode 100644 index 00000000..70220214 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixViewCommon.less @@ -0,0 +1,12 @@ +@import "Common.less"; + +@disabled-day-color: #E5F2FE; +@disabled-day-label-color:#759DC0; + +@horizontal-color: #9F0000; +@horizontal-hover-color: #CC0000; +@horizontal-selected-bg-color: #660000; +@horizontal-border: 1px solid #260000; + +@column-header-height: 30px; +@row-header-width: 50px; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView_rtl.css new file mode 100644 index 00000000..c701ac81 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView_rtl.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarGrid{right:50px;left:0}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td{text-align:left;border-bottom:1px solid #ccc;border-left:1px solid #ccc;border-right:0}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td span{padding-left:2px}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td.last-child{border-left:1px solid #b5bcc7}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarContainer{right:50px;left:0}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarContainerTable td{border-bottom:solid 1px transparent;border-right:solid 1px transparent;text-align:right;vertical-align:top}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarYearColumnHeader{position:absolute;right:0;left:auto}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarColumnHeader{right:50px;left:0}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarColumnHeaderTable td{border-left:1px solid #b5bcc7;border-right:0}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarRowHeader{right:0;left:auto}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{text-align:right}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent.dojoxCalendarLabel .labels{text-align:right}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeStartHandle{right:0}.claro .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeEndHandle{left:0;right:auto} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView_rtl.less new file mode 100644 index 00000000..3045088a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MatrixView_rtl.less @@ -0,0 +1,75 @@ +@import "MatrixViewCommon.less"; + +.claro .dojoxCalendarMatrixViewRtl { + + .dojoxCalendarGrid { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarGridTable td { + text-align: left; + border-bottom: @inner-border; + border-left: @inner-border; + border-right: none; + } + + .dojoxCalendarGridTable td span{ + padding-left: 2px; + } + + .dojoxCalendarGridTable td.last-child { + border-left: @outer-border; + } + + .dojoxCalendarContainer { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarContainerTable td { + border-bottom: solid 1px transparent; + border-right: solid 1px transparent; + text-align: right; + vertical-align: top; + } + + .dojoxCalendarYearColumnHeader{ + position: absolute; + right: 0; + left: auto; + } + + .dojoxCalendarColumnHeader { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarColumnHeaderTable td { + border-left: @outer-border; + border-right: none; + } + + .dojoxCalendarRowHeader { + right: 0; + left: auto; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal .labels { + text-align: right; + } + + .dojoxCalendarEvent.dojoxCalendarLabel .labels { + text-align: right; + } + + .dojoxCalendarEvent .resizeStartHandle { + right: 0; + } + + .dojoxCalendarEvent .resizeEndHandle { + left:0; + right:auto; + } + +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView.css new file mode 100644 index 00000000..dde8da77 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.claro .dojoxCalendarMonthColumnView{cursor:default;-webkit-user-select:none}.claro .dojoxCalendarMonthColumnView .dojoxCalendarScrollContainer{left:0;right:0;bottom:0;top:30px;position:absolute;overflow-y:hidden;overflow-x:hidden;border-bottom:1px solid #b5bcc7;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGrid{position:absolute;top:0;left:0;right:0}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable{border-collapse:collapse;table-layout:fixed;width:100%;position:relative;margin:0;padding:0}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable td{border-top:dotted 1px #B5BCC7;border-right:1px solid #ccc;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable td span{padding-left:3px}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable tr:first-child td{border-top:1px solid transparent}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable .dojoxCalendarToday{background-color:#fff0b4;font-weight:700;color:red}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable .dojoxCalendarHiddenEvents{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAF0lEQVQYlWP4z8Dw/1dU1H8GXGBkKAAA+IglWfcls2QAAAAASUVORK5CYII=) repeat-y}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable .dojoxCalendarToday.dojoxCalendarHiddenEvents{background:#fff0b4 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAF0lEQVQYlWP4z8Dw/1dU1H8GXGBkKAAA+IglWfcls2QAAAAASUVORK5CYII=) repeat-y}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable tr td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable tr td.first-child{border-left:1px solid #b5bcc7}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable tr:first-child td.dojoxCalendarToday{border-top:1px solid #fff0b4}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable .dojoxCalendarWeekend{background-color:#e5f2fe;color:#759dc0}.claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable tr:first-child td.dojoxCalendarWeekend{border-top:1px solid #e5f2fe}.claro .dojoxCalendarMonthColumnView .dojoxCalendarContainer{position:absolute;top:0;left:0;right:0;cursor:default}.claro .dojoxCalendarMonthColumnView .dojoxCalendarContainerTable{border-collapse:collapse;table-layout:fixed;width:100%;position:relative;margin:0;padding:0}.claro .dojoxCalendarMonthColumnView .dojoxCalendarContainerTable td{height:100%;padding:0;vertical-align:top}.claro .dojoxCalendarMonthColumnView .dojoxCalendarContainerColumn{position:relative;margin-left:35px;margin-right:5px}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEventContainer{position:absolute;overflow:hidden;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeader{position:absolute;height:30px;left:0;right:0;top:0;cursor:default}.claro .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.claro .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeaderTable td{overflow:hidden;white-space:nowrap;vertical-align:middle;text-align:center;background-color:#efefef;background-image:url(images/titlebar.png);background-repeat:repeat-x;border-right:1px solid #ccc;border-top:1px solid #b5bcc7;border-bottom:1px solid #b5bcc7;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#000;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s}.claro .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeaderTable td.last-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeaderTable td.first-child{border-left:1px solid #b5bcc7}.claro .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeaderTable td.Hover{cursor:pointer;background-image:url(images/titlebar.png);background-repeat:repeat-x;background-color:#abd6ff;border-color:#769dc0}.claro .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeaderTable td.Active{cursor:pointer;background-color:#7dbefa;border-color:#769dc0;background-position:0 -136px;-webkit-transition-duration:0s;-moz-transition-duration:0s;transition-duration:0s}.claro .dojoxCalendarMonthColumnView .dojoxCalendarDecoration{position:absolute;background-color:#a71744;filter:alpha(opacity=20);opacity:.2}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent{position:absolute;text-align:left;color:#FFF;cursor:default;overflow:hidden}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent .bg{position:absolute;left:0;right:0;top:0;bottom:0;z-index:-1;border:1px solid #260000;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;background-color:#9f0000;filter:alpha(opacity=90);opacity:.9}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent .startTime{font-weight:700}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent .endTime{position:absolute;font-weight:700;bottom:3px;left:6px}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent .beforeIcon{text-align:center}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent .afterIcon{position:absolute;bottom:2px;width:100%;text-align:center}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent .moveHandle{position:absolute;top:0;width:100%;bottom:0;cursor:move}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent .resizeStartHandle{position:absolute;top:0;width:100%;height:10px;cursor:n-resize}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent .resizeEndHandle{position:absolute;bottom:0;width:100%;height:10px;cursor:n-resize}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent dl{margin:0}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent dd{margin:0;padding:0 3px;text-align:left}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent.Hovered .bg{background-color:#C00}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent.Selected .bg{background-color:#600}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent.Edited .bg{border:dashed 1px #FFF;filter:alpha(opacity=70);opacity:.7}.claro .dojoxCalendarMonthColumnView .dojoxCalendarEvent.Focused .bg{border:dashed 1px #FFF}.claro .dojoxCalendarMonthColumnView .dojoxCalendarVScrollBar{position:absolute;top:30px;bottom:0;overflow-y:scroll;overflow-x:hidden} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView.less new file mode 100644 index 00000000..6d6cdada --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView.less @@ -0,0 +1,288 @@ +@import "ColumnViewCommon.less"; + +.claro .dojoxCalendarMonthColumnView { + cursor: default; + -webkit-user-select: none; + + .dojoxCalendarScrollContainer { + left: 0; + right: 0; + bottom: 0; + top: @column-header-height; + position: absolute; + overflow-y: hidden; + overflow-x: hidden; + border-bottom: @outer-border; + .border-box; + } + + .dojoxCalendarGrid { + position: absolute; + top: 0; + left: 0; + right: 0; + } + + .dojoxCalendarGridTable { + border-collapse: collapse; + table-layout: fixed; + width: 100%; + position: relative; + margin: 0; + padding: 0; + + + td { + border-top: dotted 1px #B5BCC7; + border-right: @inner-border; + .border-box; + } + + td span { + padding-left:3px; + } + + tr:first-child td { + border-top: 1px solid transparent; + } + + /* + * The dojoxCalendarToday & dojoxCalendarWeekend classes is added by the + * ColumnView.styleGridColumn method that can be subclassed to add/remove css classes + */ + .dojoxCalendarToday { + background-color: @today-color; + font-weight: bold; + color: @today-label-color; + } + + .dojoxCalendarHiddenEvents { + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAF0lEQVQYlWP4z8Dw/1dU1H8GXGBkKAAA+IglWfcls2QAAAAASUVORK5CYII=) repeat-y; + } + + .dojoxCalendarToday.dojoxCalendarHiddenEvents { + background: @today-color url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAF0lEQVQYlWP4z8Dw/1dU1H8GXGBkKAAA+IglWfcls2QAAAAASUVORK5CYII=) repeat-y; + } + + tr td.last-child { + border-right: @outer-border; + } + + tr td.first-child { + border-left: @outer-border; + } + + + tr:first-child td.dojoxCalendarToday { + border-top: 1px solid @today-color; + } + + .dojoxCalendarWeekend { + background-color: @week-end-color; + color: @week-end-label-color; + } + + tr:first-child td.dojoxCalendarWeekend { + border-top: 1px solid @week-end-color; + } + + } + + .dojoxCalendarContainer { + position: absolute; + top: 0; + left: 0; + right: 0; + cursor: default; + } + + .dojoxCalendarContainerTable { + border-collapse: collapse; + table-layout: fixed; + width: 100%; + position: relative; + margin: 0; + padding: 0; + } + + .dojoxCalendarContainerTable td { + height: 100%; + padding: 0; + vertical-align: top; + } + + .dojoxCalendarContainerColumn { + position: relative; + margin-left: 35px; + margin-right: 5px; + } + + .dojoxCalendarEventContainer { + position: absolute; + overflow: hidden; + .select-none; + } + + .dojoxCalendarColumnHeader { + position: absolute; + height: @column-header-height; + left: 0; + right: 0; + top: 0; + cursor: default; + } + + .dojoxCalendarColumnHeaderTable { + border-collapse: collapse; + table-layout: fixed; + position: relative; + margin: 0; + padding: 0; + width: 100%; + height: 100%; + + td { + overflow:hidden; + white-space: nowrap; + vertical-align: middle; + text-align: center; + .header-background; + border-right: @inner-border; + border-top: @outer-border; + border-bottom: @outer-border; + .select-none; + color: @label-color; + .transition-duration(0.2s); + } + + td.last-child { + border-right: @outer-border; + } + + td.first-child { + border-left: @outer-border; + } + + td.Hover{ + cursor: pointer; + .header-hover-background; + } + + td.Active{ + .header-active-background; + } + } + + .dojoxCalendarDecoration { + position: absolute; + background-color: rgb(167, 23, 68); + .opacity(20); + } + + .dojoxCalendarEvent { + position: absolute; + text-align: left; + color: #FFF; + cursor: default; + overflow: hidden; + + .bg { + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + z-index: -1; + border: @event-border; + .rounded-corners; + background-color: @event-bg-color; + .opacity(90); + } + + .startTime { + font-weight: bold; + } + + .endTime { + position: absolute; + font-weight: bold; + bottom:3px; + left: 6px; + } + + .beforeIcon { + text-align: center; + } + + .afterIcon { + position: absolute; + bottom: 2px; + width: 100%; + text-align: center; + } + + .handle { + .glass-view; + } + + .moveHandle { + position: absolute; + top:0; + width:100%; + bottom:0; + cursor:move; + } + + .resizeStartHandle { + position: absolute; + top:0; + width:100%; + height:10px; + cursor:n-resize; + } + + .resizeEndHandle { + position: absolute; + bottom:0; + width:100%; + height:10px; + cursor:n-resize; + } + + dl { + margin: 0; + } + + dd { + margin: 0; + padding: 0 3px; + text-align: left; + } + } + + .dojoxCalendarEvent.Hovered .bg { + background-color: #CC0000; + } + + .dojoxCalendarEvent.Selected .bg { + background-color: #660000; + } + + .dojoxCalendarEvent.Edited .bg { + border: dashed 1px #FFFFFF; + .opacity(70); + } + + .dojoxCalendarEvent.Focused .bg { + border: dashed 1px #FFFFFF; + } + + .dojoxCalendarVScrollBar { + position: absolute; + top: @column-header-height; + bottom: 0; + overflow-y: scroll; + overflow-x: hidden; + } + +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnViewCommon.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnViewCommon.less new file mode 100644 index 00000000..9bb3ec83 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnViewCommon.less @@ -0,0 +1,7 @@ +@import "Common.less"; + +@hour-stroke: 1px solid #C7BEBE; +@half-hour-stroke: dotted 1px #C7BEBE; +@quarter-hour-stroke: dotted 1px #C7BEBE; + +@column-header-height: 30px; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView_rtl.css new file mode 100644 index 00000000..098db0b0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView_rtl.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.claro .dojoxCalendarMonthColumnViewRtl .dojoxCalendarGridTable td{border-right:0;border-left:1px solid #ccc}.claro .dojoxCalendarMonthColumnViewRtl .dojoxCalendarGridTable td span{padding-right:3px;paddint-left:0}.claro .dojoxCalendarMonthColumnViewRtl .dojoxCalendarGridTable .dojoxCalendarHiddenEvents{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAAICAYAAADTLS5CAAAAFElEQVQImWP4z8Dw/1dU1H8GyhgANcclWWHC27gAAAAASUVORK5CYII=) repeat-y right top}.claro .dojoxCalendarMonthColumnViewRtl .claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable .dojoxCalendarToday.dojoxCalendarHiddenEvents{background:#fff0b4 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAAICAYAAADTLS5CAAAAFElEQVQImWP4z8Dw/1dU1H8GyhgANcclWWHC27gAAAAASUVORK5CYII=) repeat-y right top}.claro .dojoxCalendarMonthColumnViewRtl .dojoxCalendarGridTable tr td.last-child{border-left:1px solid #b5bcc7}.claro .dojoxCalendarMonthColumnViewRtl .dojoxCalendarGridTable tr td.first-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarMonthColumnViewRtl .dojoxCalendarContainerColumn{margin-left:5px;margin-right:35px}.claro .dojoxCalendarMonthColumnViewRtl .dojoxCalendarColumnHeaderTable td{border-left:1px solid #ccc;border-right:0}.claro .dojoxCalendarMonthColumnViewRtl .dojoxCalendarColumnHeaderTable td.last-child{border-left:1px solid #b5bcc7}.claro .dojoxCalendarMonthColumnViewRtl .dojoxCalendarColumnHeaderTable td.first-child{border-right:1px solid #b5bcc7}.claro .dojoxCalendarMonthColumnViewRtl .dojoxCalendarEvent .summary{text-align:right}.claro .dojoxCalendarMonthColumnViewRtl .dojoxCalendarEvent .startTime{text-align:right}.claro .dojoxCalendarMonthColumnViewRtl .dojoxCalendarEvent .endTime{text-align:right} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView_rtl.less new file mode 100644 index 00000000..06669f30 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/MonthColumnView_rtl.less @@ -0,0 +1,60 @@ +@import "ColumnViewCommon.less"; + +.claro .dojoxCalendarMonthColumnViewRtl { + + .dojoxCalendarGridTable td { + border-right: none; + border-left: @inner-border; + } + + .dojoxCalendarGridTable td span { + padding-right:3px; + paddint-left: 0px; + } + + .dojoxCalendarGridTable .dojoxCalendarHiddenEvents { + background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAAICAYAAADTLS5CAAAAFElEQVQImWP4z8Dw/1dU1H8GyhgANcclWWHC27gAAAAASUVORK5CYII=) repeat-y right top; + } + + .claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable .dojoxCalendarToday.dojoxCalendarHiddenEvents { + background: @today-color url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAAICAYAAADTLS5CAAAAFElEQVQImWP4z8Dw/1dU1H8GyhgANcclWWHC27gAAAAASUVORK5CYII=) repeat-y right top; + } + + .dojoxCalendarGridTable tr td.last-child { + border-left: @outer-border; + } + + .dojoxCalendarGridTable tr td.first-child { + border-right: @outer-border; + } + + .dojoxCalendarContainerColumn { + margin-left: 5px; + margin-right: 35px; + } + + .dojoxCalendarColumnHeaderTable td { + border-left: @inner-border; + border-right: none; + } + + .dojoxCalendarColumnHeaderTable td.last-child { + border-left: @outer-border; + } + + .dojoxCalendarColumnHeaderTable td.first-child { + border-right: @outer-border; + } + + .dojoxCalendarEvent .summary { + text-align: right; + } + + .dojoxCalendarEvent .startTime { + text-align: right; + } + + .dojoxCalendarEvent .endTime { + text-align: right; + } +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/images/titlebar.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/claro/images/titlebar.png new file mode 100644 index 0000000000000000000000000000000000000000..48181035ae143c07ed1c7a43d2844b62b804e44d GIT binary patch literal 640 zcmeAS@N?(olHy`uVBq!ia0vp^DL}lQgAGV>pRHB~QY`6?zK%e#6XvX4FM)i?64!{5 z;QX|b^2DN42FH~Aq*MjZ+{Em);bRR+8RSFkz1I1P_I! zA_@ol)~q&UVe-_xIU&J)8gC*0MGcSZrDiHZ9{0Zk$rC?ozKJ_4NU>VV^*bmvZpnSU zOpfzOfdxY+OOe%FnaGI_-+tQyP1=2z&qHOx*|f>MihfrMY^9wS@Jg<`C-LY@0*k|! z^An#o$^xxTa!zs1>1fc|Q}y-x$4(&Y%z{%BQ=M5-+}x+tYot4~uyiyq2nr}LF}XO< zgMDU2+TOVO`>$p%o$@Nkt91S0b*omH_)b>epSJsM-Q8F0r!2$2?_(^Do$fi|q3G|I z3ph$rc(1QEJi=6I2n}1{o-fy;Ynav8quJ{AtxxZicN!G|Lgnv_5w#w soZwhAV}?Ui?NMQuIx8CMR^(dh5Y790EIXU zJR*x37`TN%nDNrxx<5ccV^0^ykcwN$fByfsXJ%$Ty*_@wgNU-Saz|29lG6tVA10BH pS_?&#k3>B(?Fm|ZMZ?vfi{UgomyTA~%;`Yw44$rjF6*2UngFVLC(Qr= literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar.css new file mode 100644 index 00000000..aafafea8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.soria .dojoxCalendarMatrixView{cursor:default;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarMatrixView .dojoxCalendarGrid{position:absolute;left:50px;right:0;top:30px;bottom:0}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable{position:relative;width:100%;height:100%;margin:0;padding:0;border-collapse:collapse;table-layout:fixed}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable tr{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable td{text-align:right;vertical-align:top;border-bottom:1px solid #bfbfbf;border-right:1px solid #bfbfbf;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable td span{padding-right:2px;padding-top:2px}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable tr.last-child td{border-bottom:1px solid #b1badf}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable td.dojoxCalendarToday{background-color:#fff2d2;font-weight:700;color:#f20}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable .dojoxCalendarWeekend{background-color:#fdfdfd;color:#999}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable .dojoxCalendarDayDisabled{background-color:#fdfdfd;color:#999}.soria .dojoxCalendarMatrixView .dojoxCalendarYearColumnHeader{position:absolute;left:0;top:0;width:50px;height:29px;text-align:center;vertical-align:middle;border-bottom:1px solid #b1badf}.soria .dojoxCalendarMatrixView .dojoxCalendarYearColumnHeader table{position:relative;width:100%;height:100%;table-layout:fixed;border-collapse:collapse}.soria .dojoxCalendarMatrixView .dojoxCalendarYearColumnHeader table td{text-align:center;vertical-align:middle;border-left:1px solid #b1badf;border-top:1px solid #b1badf;border-right:1px solid #b1badf;background:#ccc;background:#fff url("images/titleBar.png") repeat-x top left;padding:3px 4px;font-size:.9em;font-weight:700;color:#6d6d6d;color:#293a4b}.soria .dojoxCalendarMatrixView .dojoxCalendarColumnHeader{position:absolute;left:50px;right:0;top:0;height:29px;cursor:default;border-bottom:1px solid #b1badf}.soria .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable{position:relative;width:100%;height:100%;table-layout:fixed;border-collapse:collapse}.soria .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td{overflow:hidden;vertical-align:middle;text-align:center;background:#ccc;background:#fff url("images/titleBar.png") repeat-x top left;padding:3px 4px;font-size:.9em;font-weight:700;color:#6d6d6d;border-right:1px solid #bfbfbf;border-top:1px solid #b1badf;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#293a4b}.soria .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable .dojoxCalendarWeekend{color:#999}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeader{position:absolute;left:0;top:30px;width:50px;bottom:0;cursor:default;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable{position:relative;width:100%;height:100%;border-collapse:collapse;table-layout:fixed;margin:0;padding:0}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable tr{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td{text-align:center;vertical-align:middle;border-left:1px solid #b1badf;border-right:1px solid #b1badf;border-bottom:1px solid #bfbfbf;background-color:#fdfdfd;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;color:#293a4b;cursor:pointer}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td.last-child{border-bottom:1px solid #b1badf}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td.Hover{background-color:#b9cbf1}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td.Active{background-color:#60a1ea}.soria .dojoxCalendarMatrixView .dojoxCalendarContainer{position:absolute;top:30px;left:50px;right:0;bottom:0;cursor:default}.soria .dojoxCalendarMatrixView .dojoxCalendarContainerTable{position:relative;width:100%;height:100%;margin:0;padding:0;border-collapse:collapse;table-layout:fixed}.soria .dojoxCalendarMatrixView .dojoxCalendarContainerTable tr{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarMatrixView .dojoxCalendarContainerTable td{vertical-align:top;border-bottom:solid 1px transparent;border-right:solid 1px transparent;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarMatrixView .dojoxCalendarContainerTable td div.dojoxCalendarContainerRow{position:relative;height:100%;width:100%}.soria .dojoxCalendarMatrixView .dojoxCalendarEventContainer{position:absolute;overflow:hidden;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarMatrixView .dojoxCalendarDecoration{position:absolute;background-color:#a7e944;filter:alpha(opacity=20);opacity:.2}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent{position:absolute;text-align:left;color:#000;cursor:default;white-space:nowrap}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal{color:#FFF;position:absolute}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal .bg{border:1px solid #260000;position:absolute;left:0;right:0;top:0;bottom:0;color:#000;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;background-color:#9f0000}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Hovered .bg{background-color:#c00}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Selected .bg{background-color:#600}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.Edited{color:#FFF;font-weight:700;text-decoration:none}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Edited .bg{border:dashed 1px #FFF;filter:alpha(opacity=30);opacity:.3}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Focused .bg{border:dashed 1px #FFF}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Hovered{color:#F40}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Selected{color:red}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Edited{border:dashed 1px #FFF;background:#600;filter:alpha(opacity=30);opacity:.3;color:#FFF}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Focused{border:dashed 1px #000}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{position:absolute;left:3px;right:1px;bottom:2px;overflow:hidden}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel .labels{position:absolute;left:2px;right:2px;bottom:0;overflow:hidden}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;position:absolute;width:5px;height:100%;cursor:e-resize}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent .moveHandle{left:0;top:0;width:100%;cursor:move}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent .resizeEndHandle{right:0}.soria .dojoxCalendarMatrixView .dojoxCalendarExpand{position:absolute;text-align:center}.soria .dojoxCalendarMatrixView .dojoxCalendarExpand span{display:inline-block;vertical-align:middle}.soria .dojoxCalendarMatrixView .dojoxCalendarExpand .bg{position:relative;margin-right:5px;margin-left:5px;height:100%;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:1px solid transparent}.soria .dojoxCalendarMatrixView .dojoxCalendarExpand.Up .bg{background-color:#e5f2fe;border:1px solid #909da9}.soria .dojoxCalendarMatrixView .dojoxCalendarExpand.Down .bg{background-color:#a5d1fb;border:1px solid #507ca6}.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.soria .dojoxCalendarColumnView{cursor:default;-webkit-user-select:none}.soria .dojoxCalendarColumnView .dojoxCalendarHeader{position:absolute;left:0;right:0;top:0;height:29px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarScrollContainer{left:0;right:0;bottom:0;top:33px;position:absolute;overflow-y:hidden;overflow-x:hidden;border-top:1px solid #b1badf;border-bottom:1px solid #b1badf;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarGrid{position:absolute;left:70px;right:0;overflow:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarGrid.dojoxCalendarHorizontalScroll{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable{border-collapse:collapse;table-layout:fixed;width:100%;position:relative;margin:0;padding:0}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable td{border-top:dotted 1px 1px solid #b1badf;border-right:1px solid #bfbfbf;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable tr:first-child td{border-top:1px solid transparent}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable .dojoxCalendarToday{background-color:#fff2d2}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable tr td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable .tr:first-child td.dojoxCalendarToday{border-top:1px solid #fff2d2}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable .dojoxCalendarWeekend{background-color:#fdfdfd}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable tr:first-child td.dojoxCalendarWeekend{border-top:1px solid #fdfdfd}.soria .dojoxCalendarColumnView td.hour{border-top:1px solid #ccc}.soria .dojoxCalendarColumnView td.halfhour{border-top:dotted 1px #ccc}.soria .dojoxCalendarColumnView td.quarterhour{border-top:dotted 1px #ccc}.soria .dojoxCalendarColumnView span.hour{color:#293a4b;background-color:#fdfdfd}.soria .dojoxCalendarColumnView span.halfhour,.soria .dojoxCalendarColumnView span.quarterhour{color:#555;background-color:#fdfdfd}.soria .dojoxCalendarColumnView .dojoxCalendarContainer{position:absolute;top:0;left:70px;right:0;cursor:default;overflow:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarContainer.dojoxCalendarHorizontalScroll{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarContainerTable{border-collapse:collapse;table-layout:fixed;width:100%;position:relative;margin:0;padding:0}.soria .dojoxCalendarColumnView .dojoxCalendarContainerTable td{height:100%;padding:0;vertical-align:top;border-right:1px solid transparent}.soria .dojoxCalendarColumnView .dojoxCalendarContainerColumn{position:relative;width:100%}.soria .dojoxCalendarColumnView .dojoxCalendarSubContainerColumn{position:absolute;top:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:100%}.soria .dojoxCalendarColumnView .dojoxCalendarEventContainerColumn{position:absolute;height:100%;left:0;top:0;right:0;margin-left:1px;margin-right:5px}.soria .dojoxCalendarColumnView .dojoxCalendarDecorationContainerColumn{position:absolute;height:100%;left:0;top:0;right:0}.soria .dojoxCalendarColumnView .dojoxCalendarSubContainerColumn.subColumn{border-right:1px solid #ddd}.soria .dojoxCalendarColumnView .dojoxCalendarEventContainer{position:absolute;overflow:hidden;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarColumnView .dojoxCalendarYearColumnHeader{position:absolute;height:29px;left:0;width:68px;top:0;border-left:1px solid #b1badf;border-top:1px solid #b1badf;border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarYearColumnHeader table{position:relative;width:100%;height:100%}.soria .dojoxCalendarColumnView .dojoxCalendarYearColumnHeader table td{text-align:center;vertical-align:middle;border-bottom:1px solid #b1badf;color:#293a4b;background:#ccc;background:#fff url("images/titleBar.png") repeat-x top left;padding:3px 4px;font-size:.9em;font-weight:700;color:#6d6d6d}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeader{position:absolute;height:30px;left:70px;right:0;top:0;cursor:default;overflow:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeader.dojoxCalendarHorizontalScroll{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td{overflow:hidden;white-space:nowrap;vertical-align:middle;text-align:center;background:#ccc;background:#fff url("images/titleBar.png") repeat-x top left;padding:3px 4px;font-size:.9em;font-weight:700;color:#6d6d6d;border-right:1px solid #bfbfbf;border-top:1px solid #b1badf;border-bottom:1px solid #b1badf;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#293a4b;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable .dojoxCalendarToday{font-weight:700;color:#f20}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable .dojoxCalendarWeekend{color:#999}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td.Hover{cursor:pointer;background:#f9f9f9 url("images/accordionItemActive.png") top repeat-x}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td.Active{cursor:pointer}.soria .dojoxCalendarColumnView .dojoxCalendarSubHeader{position:absolute;left:0;right:0;top:72px;height:20px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:none}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeader{position:absolute;height:20px;left:70px;right:0;top:0;cursor:default;overflow:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeader.dojoxCalendarHorizontalScroll{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td{overflow:hidden;white-space:nowrap;vertical-align:middle;text-align:center;border-right:1px solid #bfbfbf;border-top:1px solid #b1badf;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#000}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td.dojoxCalendarToday{background-color:#fff2d2}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td.dojoxCalendarWeekend{background-color:#fdfdfd}.soria .dojoxCalendarColumnView .dojoxCalendarSubHeaderContainer{position:relative;width:100%;height:18px}.soria .dojoxCalendarColumnView .dojoxCalendarSubHeaderCell{position:absolute;top:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:100%;overflow:hidden;text-overflow:ellipsis}.soria .dojoxCalendarColumnView .dojoxCalendarSubHeaderCell.subColumn{border-right:1px solid #ddd}.soria .dojoxCalendarColumnView .dojoxCalendarSubHeaderLabel{font-size:.9em;color:#555}.soria .dojoxCalendarColumnView .dojoxCalendarSubRowHeader{position:absolute;height:20px;left:0;width:68px;top:0;border-left:1px solid #b1badf;border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarSubRowHeader table{position:relative;width:100%;height:100%}.soria .dojoxCalendarColumnView .dojoxCalendarSubRowHeader table td{border-top:1px solid #b1badf;background-color:#efefef}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeader{position:absolute;width:68px;cursor:default;border-left:1px solid #b1badf;border-right:1px solid #b1badf;height:100%;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeaderLabelContainer{width:100%;height:100%;z-index:10}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeaderLabel{right:4px;position:absolute}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable td.dummy{border-top:1px solid #fdfdfd}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable td{background-color:#fdfdfd;color:#293a4b;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable tr:first-child td{border-top:1px solid #fdfdfd}.soria .dojoxCalendarColumnView .dojoxCalendarDecoration{position:absolute;background-color:#a7e944;filter:alpha(opacity=20);opacity:.2}.soria .dojoxCalendarColumnView .dojoxCalendarEvent{position:absolute;text-align:left;color:#FFF;cursor:default;overflow:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .bg{position:absolute;left:0;right:0;top:0;bottom:0;z-index:-1;border:1px solid #260000;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;background-color:#9f0000;filter:alpha(opacity=90);opacity:.9}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .endTime{position:absolute;font-weight:700;bottom:3px;left:6px;white-space:nowrap}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .beforeIcon{text-align:center}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .afterIcon{position:absolute;bottom:2px;width:100%;text-align:center}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .moveHandle{position:absolute;top:0;width:100%;bottom:0;cursor:move}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .resizeStartHandle{position:absolute;top:0;width:100%;height:10px;cursor:n-resize}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .resizeEndHandle{position:absolute;bottom:0;width:100%;height:10px;cursor:n-resize}.soria .dojoxCalendarColumnView .dojoxCalendarEvent dl{margin:0}.soria .dojoxCalendarColumnView .dojoxCalendarEvent dd{margin:0;padding:0 3px;text-align:left}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Hovered .bg{background-color:#c00}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Selected .bg{background-color:#600}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Edited .bg{border:dashed 1px #fff;filter:alpha(opacity=70);opacity:.7}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Focused .bg{border:dashed 1px #fff}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .startTime{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px;background-color:#6c0000;border-top:1px solid #260000;border-left:1px solid #260000;border-right:1px solid #260000}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Focused .startTime{border-top:dashed 1px #fff;border-left:dashed 1px #fff;border-right:dashed 1px #fff}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Hovered .startTime{background-color:#900}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Selected .startTime{background-color:#300}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Edited .startTime{background-color:#6c0000;border-top:dashed 1px #fff;border-left:dashed 1px #fff;border-right:dashed 1px #fff}.soria .dojoxCalendarColumnView .dojoxCalendarVScrollBar{position:absolute;top:33px;bottom:0;overflow-y:scroll;overflow-x:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarHScrollBar{position:absolute;bottom:0;left:70px;overflow-x:scroll;overflow-y:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView{position:absolute;left:0;right:0;top:30px;height:39px}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGrid{position:absolute;left:70px;right:0;top:0;bottom:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarContainer{position:absolute;top:0;left:70px;right:0;bottom:0;cursor:default}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarRowHeader{position:absolute;left:0;top:0;width:70px;bottom:0;border-right:0;border-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGridTable td{text-align:right;vertical-align:top;border-top:1px solid #bfbfbf;border-bottom:1px solid #bfbfbf;border-right:1px solid #bfbfbf;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGridTable tr.last-child td{border-bottom:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGridTable td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td{border-top:1px solid #bfbfbf;border-left:1px solid #b1badf;border-right:1px solid #b1badf;border-bottom:1px solid #b1badf;background-color:#fdfdfd}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;position:absolute;width:5px;height:100%;cursor:e-resize}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .moveHandle{left:0;top:0;width:100%;cursor:move}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .resizeEndHandle{right:0}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .afterIcon{width:auto}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .endTime{position:relative;bottom:auto;left:auto}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{position:absolute;left:3px;right:1px;bottom:2px;overflow:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand{position:absolute;text-align:center}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand .bg{position:relative;margin-right:10%;margin-left:10%;border-radius:5px;height:100%;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;border:1px solid transparent;-moz-border-radius:5px;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand.Up .bg{background-color:#e5f2fe;border:1px solid #909da9}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand.Down .bg{background-color:#a5d1fb;border:1px solid #507ca6}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent div{white-space:nowrap}.soria .dojoxCalendarColumnView .dojoxCalendarTimeIndicator{position:absolute;left:0;height:2px;width:100%;background-color:red}.soria .dojoxCalendarColumnView.subColumns .dojoxCalendarScrollContainer{top:53px}.soria .dojoxCalendarColumnView.subColumns .dojoxCalendarSubHeader{top:33px;display:block}.soria .dojoxCalendarColumnView.subColumns .dojoxCalendarVScrollBar{top:53px}.soria .dojoxCalendarColumnView.secondarySheet .dojoxCalendarScrollContainer{top:72px}.soria .dojoxCalendarColumnView.secondarySheet .dojoxCalendarSubHeader{top:72px;display:none}.soria .dojoxCalendarColumnView.secondarySheet .dojoxCalendarVScrollBar{top:72px}.soria .dojoxCalendarColumnView.subColumns.secondarySheet .dojoxCalendarScrollContainer{top:92px}.soria .dojoxCalendarColumnView.subColumns.secondarySheet .dojoxCalendarSubHeader{top:72px;display:block}.soria .dojoxCalendarColumnView.subColumns.secondarySheet .dojoxCalendarVScrollBar{top:92px}.soria .dojoxCalendar .buttonContainer{position:absolute;left:0;right:0;top:0;height:31px}.soria .dojoxCalendar .buttonContainer .dijitToolbar{border:1px solid #B5BCC7}.soria .dojoxCalendar .viewContainer{position:absolute;left:0;right:0;top:31px;bottom:0}.soria .dojoxCalendar .view{position:absolute;left:0;right:0;top:0;bottom:0} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar.less new file mode 100644 index 00000000..d7bbff32 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar.less @@ -0,0 +1,33 @@ +@button-container-height: 31px; + +@import url("MatrixView.css"); +@import url("ColumnView.css"); + +.soria .dojoxCalendar .buttonContainer{ + position: absolute; + left: 0; + right: 0; + top: 0; + height: @button-container-height; +} + +.soria .dojoxCalendar .buttonContainer .dijitToolbar { + border: 1px solid #B5BCC7; +} + +.soria .dojoxCalendar .viewContainer{ + position: absolute; + left: 0; + right: 0; + top: @button-container-height; + bottom: 0; +} + +.soria .dojoxCalendar .view{ + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; +} + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar_rtl.css new file mode 100644 index 00000000..9a5343e0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar_rtl.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarGrid{right:50px;left:0}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td{text-align:left;border-bottom:1px solid #bfbfbf;border-left:1px solid #bfbfbf;border-right:0}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td span{padding-left:2px}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td.last-child{border-left:1px solid #b1badf}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarContainer{right:50px;left:0}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarContainerTable td{border-bottom:solid 1px transparent;border-right:solid 1px transparent;text-align:right;vertical-align:top}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarYearColumnHeader{position:absolute;right:0;left:auto}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarColumnHeader{right:50px;left:0}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarColumnHeaderTable td{border-left:1px solid #b1badf;border-right:0}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarRowHeader{right:0;left:auto}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{text-align:right}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent.dojoxCalendarLabel .labels{text-align:right}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeStartHandle{right:0}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeEndHandle{left:0;right:auto}.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarScrollContainer{border-left:0;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarGrid{left:0;right:70px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarGridTable td{border-left:1px solid #b1badf;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarContainer{left:0;right:70px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEventContainerColumn{margin-right:2px;margin-left:7px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnBorder.subColumn{border-right:0;border-left:1px solid #ddd}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarYearColumnHeader{right:0;width:68px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeader{left:0;right:70px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeaderTable td{border-right:0;border-left:1px solid #bfbfbf}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeaderTable td.last-child{border-right:0;border-left:1px solid #b1badf}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeader{right:70px;left:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubRowHeader{left:auto;right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable{border-left:1px solid #b1badf;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable table.subColumn td{border-left:0;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable td{border-left:1px solid #bfbfbf;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable td.last-child{border-left:1px solid #b1badf;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarRowHeaderLabel{right:auto;left:4px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEvent .summary{text-align:right}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEvent .startTime{text-align:right}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEvent .endTime{text-align:right}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarVScrollBar{margin-left:-1px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGrid{right:70px;left:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td{text-align:left;border-bottom:1px solid #bfbfbf;border-left:1px solid #bfbfbf;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td span{padding-left:2px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td.last-child{border-left:1px solid #b1badf}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarContainer{right:70px;left:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarContainerTable td{border-bottom:solid 1px transparent;border-right:solid 1px transparent;text-align:right;vertical-align:top}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarYearColumnHeader{position:absolute;right:0;left:auto}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarColumnHeader{right:70px;left:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td{border-left:1px solid #b1badf;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarRowHeader{right:0;left:auto}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeStartHandle{right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeEndHandle{left:0;right:auto}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{text-align:right;right:2px} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar_rtl.less new file mode 100644 index 00000000..25ef90d5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Calendar_rtl.less @@ -0,0 +1,3 @@ +@import url("MatrixView_rtl.css"); +@import url("ColumnView_rtl.css"); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView.css new file mode 100644 index 00000000..fb9b7ca3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.soria .dojoxCalendarColumnView{cursor:default;-webkit-user-select:none}.soria .dojoxCalendarColumnView .dojoxCalendarHeader{position:absolute;left:0;right:0;top:0;height:29px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarScrollContainer{left:0;right:0;bottom:0;top:33px;position:absolute;overflow-y:hidden;overflow-x:hidden;border-top:1px solid #b1badf;border-bottom:1px solid #b1badf;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarGrid{position:absolute;left:70px;right:0;overflow:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarGrid.dojoxCalendarHorizontalScroll{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable{border-collapse:collapse;table-layout:fixed;width:100%;position:relative;margin:0;padding:0}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable td{border-top:dotted 1px 1px solid #b1badf;border-right:1px solid #bfbfbf;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable tr:first-child td{border-top:1px solid transparent}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable .dojoxCalendarToday{background-color:#fff2d2}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable tr td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable .tr:first-child td.dojoxCalendarToday{border-top:1px solid #fff2d2}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable .dojoxCalendarWeekend{background-color:#fdfdfd}.soria .dojoxCalendarColumnView .dojoxCalendarGridTable tr:first-child td.dojoxCalendarWeekend{border-top:1px solid #fdfdfd}.soria .dojoxCalendarColumnView td.hour{border-top:1px solid #ccc}.soria .dojoxCalendarColumnView td.halfhour{border-top:dotted 1px #ccc}.soria .dojoxCalendarColumnView td.quarterhour{border-top:dotted 1px #ccc}.soria .dojoxCalendarColumnView span.hour{color:#293a4b;background-color:#fdfdfd}.soria .dojoxCalendarColumnView span.halfhour,.soria .dojoxCalendarColumnView span.quarterhour{color:#555;background-color:#fdfdfd}.soria .dojoxCalendarColumnView .dojoxCalendarContainer{position:absolute;top:0;left:70px;right:0;cursor:default;overflow:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarContainer.dojoxCalendarHorizontalScroll{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarContainerTable{border-collapse:collapse;table-layout:fixed;width:100%;position:relative;margin:0;padding:0}.soria .dojoxCalendarColumnView .dojoxCalendarContainerTable td{height:100%;padding:0;vertical-align:top;border-right:1px solid transparent}.soria .dojoxCalendarColumnView .dojoxCalendarContainerColumn{position:relative;width:100%}.soria .dojoxCalendarColumnView .dojoxCalendarSubContainerColumn{position:absolute;top:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:100%}.soria .dojoxCalendarColumnView .dojoxCalendarEventContainerColumn{position:absolute;height:100%;left:0;top:0;right:0;margin-left:1px;margin-right:5px}.soria .dojoxCalendarColumnView .dojoxCalendarDecorationContainerColumn{position:absolute;height:100%;left:0;top:0;right:0}.soria .dojoxCalendarColumnView .dojoxCalendarSubContainerColumn.subColumn{border-right:1px solid #ddd}.soria .dojoxCalendarColumnView .dojoxCalendarEventContainer{position:absolute;overflow:hidden;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarColumnView .dojoxCalendarYearColumnHeader{position:absolute;height:29px;left:0;width:68px;top:0;border-left:1px solid #b1badf;border-top:1px solid #b1badf;border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarYearColumnHeader table{position:relative;width:100%;height:100%}.soria .dojoxCalendarColumnView .dojoxCalendarYearColumnHeader table td{text-align:center;vertical-align:middle;border-bottom:1px solid #b1badf;color:#293a4b;background:#ccc;background:#fff url(images/titleBar.png) repeat-x top left;padding:3px 4px;font-size:.9em;font-weight:700;color:#6d6d6d}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeader{position:absolute;height:30px;left:70px;right:0;top:0;cursor:default;overflow:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeader.dojoxCalendarHorizontalScroll{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td{overflow:hidden;white-space:nowrap;vertical-align:middle;text-align:center;background:#ccc;background:#fff url(images/titleBar.png) repeat-x top left;padding:3px 4px;font-size:.9em;font-weight:700;color:#6d6d6d;border-right:1px solid #bfbfbf;border-top:1px solid #b1badf;border-bottom:1px solid #b1badf;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#293a4b;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable .dojoxCalendarToday{font-weight:700;color:#f20}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable .dojoxCalendarWeekend{color:#999}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td.Hover{cursor:pointer;background:#f9f9f9 url(images/accordionItemActive.png) top repeat-x}.soria .dojoxCalendarColumnView .dojoxCalendarColumnHeaderTable td.Active{cursor:pointer}.soria .dojoxCalendarColumnView .dojoxCalendarSubHeader{position:absolute;left:0;right:0;top:72px;height:20px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:none}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeader{position:absolute;height:20px;left:70px;right:0;top:0;cursor:default;overflow:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeader.dojoxCalendarHorizontalScroll{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td{overflow:hidden;white-space:nowrap;vertical-align:middle;text-align:center;border-right:1px solid #bfbfbf;border-top:1px solid #b1badf;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#000}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td.dojoxCalendarToday{background-color:#fff2d2}.soria .dojoxCalendarColumnView .dojoxCalendarSubColumnHeaderTable td.dojoxCalendarWeekend{background-color:#fdfdfd}.soria .dojoxCalendarColumnView .dojoxCalendarSubHeaderContainer{position:relative;width:100%;height:18px}.soria .dojoxCalendarColumnView .dojoxCalendarSubHeaderCell{position:absolute;top:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:100%;overflow:hidden;text-overflow:ellipsis}.soria .dojoxCalendarColumnView .dojoxCalendarSubHeaderCell.subColumn{border-right:1px solid #ddd}.soria .dojoxCalendarColumnView .dojoxCalendarSubHeaderLabel{font-size:.9em;color:#555}.soria .dojoxCalendarColumnView .dojoxCalendarSubRowHeader{position:absolute;height:20px;left:0;width:68px;top:0;border-left:1px solid #b1badf;border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarSubRowHeader table{position:relative;width:100%;height:100%}.soria .dojoxCalendarColumnView .dojoxCalendarSubRowHeader table td{border-top:1px solid #b1badf;background-color:#efefef}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeader{position:absolute;width:68px;cursor:default;border-left:1px solid #b1badf;border-right:1px solid #b1badf;height:100%;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeaderLabelContainer{width:100%;height:100%;z-index:10}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeaderLabel{right:4px;position:absolute}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable td.dummy{border-top:1px solid #fdfdfd}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable td{background-color:#fdfdfd;color:#293a4b;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarRowHeaderTable tr:first-child td{border-top:1px solid #fdfdfd}.soria .dojoxCalendarColumnView .dojoxCalendarDecoration{position:absolute;background-color:#a7e944;filter:alpha(opacity=20);opacity:.2}.soria .dojoxCalendarColumnView .dojoxCalendarEvent{position:absolute;text-align:left;color:#FFF;cursor:default;overflow:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .bg{position:absolute;left:0;right:0;top:0;bottom:0;z-index:-1;border:1px solid #260000;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;background-color:#9f0000;filter:alpha(opacity=90);opacity:.9}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .endTime{position:absolute;font-weight:700;bottom:3px;left:6px;white-space:nowrap}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .beforeIcon{text-align:center}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .afterIcon{position:absolute;bottom:2px;width:100%;text-align:center}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .moveHandle{position:absolute;top:0;width:100%;bottom:0;cursor:move}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .resizeStartHandle{position:absolute;top:0;width:100%;height:10px;cursor:n-resize}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .resizeEndHandle{position:absolute;bottom:0;width:100%;height:10px;cursor:n-resize}.soria .dojoxCalendarColumnView .dojoxCalendarEvent dl{margin:0}.soria .dojoxCalendarColumnView .dojoxCalendarEvent dd{margin:0;padding:0 3px;text-align:left}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Hovered .bg{background-color:#c00}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Selected .bg{background-color:#600}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Edited .bg{border:dashed 1px #fff;filter:alpha(opacity=70);opacity:.7}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Focused .bg{border:dashed 1px #fff}.soria .dojoxCalendarColumnView .dojoxCalendarEvent .startTime{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px;background-color:#6c0000;border-top:1px solid #260000;border-left:1px solid #260000;border-right:1px solid #260000}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Focused .startTime{border-top:dashed 1px #fff;border-left:dashed 1px #fff;border-right:dashed 1px #fff}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Hovered .startTime{background-color:#900}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Selected .startTime{background-color:#300}.soria .dojoxCalendarColumnView .dojoxCalendarEvent.Edited .startTime{background-color:#6c0000;border-top:dashed 1px #fff;border-left:dashed 1px #fff;border-right:dashed 1px #fff}.soria .dojoxCalendarColumnView .dojoxCalendarVScrollBar{position:absolute;top:33px;bottom:0;overflow-y:scroll;overflow-x:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarHScrollBar{position:absolute;bottom:0;left:70px;overflow-x:scroll;overflow-y:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView{position:absolute;left:0;right:0;top:30px;height:39px}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGrid{position:absolute;left:70px;right:0;top:0;bottom:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarContainer{position:absolute;top:0;left:70px;right:0;bottom:0;cursor:default}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarRowHeader{position:absolute;left:0;top:0;width:70px;bottom:0;border-right:0;border-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGridTable td{text-align:right;vertical-align:top;border-top:1px solid #bfbfbf;border-bottom:1px solid #bfbfbf;border-right:1px solid #bfbfbf;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGridTable tr.last-child td{border-bottom:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarGridTable td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td{border-top:1px solid #bfbfbf;border-left:1px solid #b1badf;border-right:1px solid #b1badf;border-bottom:1px solid #b1badf;background-color:#fdfdfd}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;position:absolute;width:5px;height:100%;cursor:e-resize}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .moveHandle{left:0;top:0;width:100%;cursor:move}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .resizeEndHandle{right:0}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .afterIcon{width:auto}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent .endTime{position:relative;bottom:auto;left:auto}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{position:absolute;left:3px;right:1px;bottom:2px;overflow:hidden}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand{position:absolute;text-align:center}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand .bg{position:relative;margin-right:10%;margin-left:10%;border-radius:5px;height:100%;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;border:1px solid transparent;-moz-border-radius:5px;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand.Up .bg{background-color:#e5f2fe;border:1px solid #909da9}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarExpand.Down .bg{background-color:#a5d1fb;border:1px solid #507ca6}.soria .dojoxCalendarColumnView .dojoxCalendarMatrixView .dojoxCalendarEvent div{white-space:nowrap}.soria .dojoxCalendarColumnView .dojoxCalendarTimeIndicator{position:absolute;left:0;height:2px;width:100%;background-color:red}.soria .dojoxCalendarColumnView.subColumns .dojoxCalendarScrollContainer{top:53px}.soria .dojoxCalendarColumnView.subColumns .dojoxCalendarSubHeader{top:33px;display:block}.soria .dojoxCalendarColumnView.subColumns .dojoxCalendarVScrollBar{top:53px}.soria .dojoxCalendarColumnView.secondarySheet .dojoxCalendarScrollContainer{top:72px}.soria .dojoxCalendarColumnView.secondarySheet .dojoxCalendarSubHeader{top:72px;display:none}.soria .dojoxCalendarColumnView.secondarySheet .dojoxCalendarVScrollBar{top:72px}.soria .dojoxCalendarColumnView.subColumns.secondarySheet .dojoxCalendarScrollContainer{top:92px}.soria .dojoxCalendarColumnView.subColumns.secondarySheet .dojoxCalendarSubHeader{top:72px;display:block}.soria .dojoxCalendarColumnView.subColumns.secondarySheet .dojoxCalendarVScrollBar{top:92px} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView.less new file mode 100644 index 00000000..9fc1e534 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView.less @@ -0,0 +1,733 @@ +@import "ColumnViewCommon.less"; + +.soria .dojoxCalendarColumnView { + cursor: default; + -webkit-user-select: none; + + .dojoxCalendarHeader { + position: absolute; + left: 0; + right: 0; + top: 0; + height: @column-header-height - 1px; + .border-box; + } + + .dojoxCalendarScrollContainer { + left: 0; + right: 0; + bottom: 0; + top: @sheet-top; + position: absolute; + overflow-y: hidden; + overflow-x: hidden; + border-top: @outer-border; + border-bottom: @outer-border; + .border-box; + } + + .dojoxCalendarGrid { + position: absolute; + left: @row-header-width; + right: 0; + overflow: hidden; + } + + .dojoxCalendarGrid.dojoxCalendarHorizontalScroll { + border-right: @outer-border; + } + + .dojoxCalendarGridTable { + border-collapse: collapse; + table-layout: fixed; + width: 100%; + position: relative; + margin: 0; + padding: 0; + + td { + border-top: dotted 1px @outer-border; + border-right: @inner-border; + .border-box; + } + + tr:first-child td { + border-top: 1px solid transparent; + } + + .dojoxCalendarToday { + background-color: @today-color; + } + + tr td.last-child { + border-right: @outer-border; + } + + .tr:first-child td.dojoxCalendarToday { + border-top: 1px solid @today-color; + } + + .dojoxCalendarWeekend { + background-color: @week-end-color; + } + + tr:first-child td.dojoxCalendarWeekend { + border-top: 1px solid @week-end-color; + } + } + + + td.hour { + border-top: @hour-stroke; + } + + td.halfhour{ + border-top: @half-hour-stroke; + } + + td.quarterhour{ + border-top: @quarter-hour-stroke; + } + + span.hour { + color: @label-color; + background-color: @row-color; + } + + span.halfhour, + span.quarterhour{ + color: @secondary-label-color; + background-color: @row-color; + } + + .dojoxCalendarContainer { + position: absolute; + top: 0; + left: @row-header-width; + right: 0; + cursor: default; + overflow: hidden; + } + + .dojoxCalendarContainer.dojoxCalendarHorizontalScroll { + border-right: @outer-border; + } + + .dojoxCalendarContainerTable { + border-collapse: collapse; + table-layout: fixed; + width: 100%; + position: relative; + margin: 0; + padding: 0; + + td { + height: 100%; + padding: 0; + vertical-align: top; + border-right: 1px solid transparent; + } + } + + .dojoxCalendarContainerColumn { + position: relative; + width:100%; + } + + .dojoxCalendarSubContainerColumn { + position: absolute; + top: 0; + .border-box; + height:100%; + } + + .dojoxCalendarEventContainerColumn { + position: absolute; + height: 100%; + left:0; + top:0; + right:0; + margin-left: 1px; + margin-right: 5px; + } + + .dojoxCalendarDecorationContainerColumn { + position: absolute; + height: 100%; + left:0; + top:0; + right:0; + } + + .dojoxCalendarSubContainerColumn.subColumn { + border-right: @sub-column-border; + } + + .dojoxCalendarEventContainer { + position: absolute; + overflow: hidden; + .select-none; + } + + .dojoxCalendarYearColumnHeader{ + position: absolute; + height: @column-header-height - 1px; + left: 0; + width: @row-header-width - 2px; + top: 0; + border-left: @outer-border; + border-top: @outer-border; + border-right: @outer-border; + + table { + position:relative; + width:100%; + height:100%; + } + + table td { + text-align: center; + vertical-align: middle; + border-bottom: @outer-border; + color: @label-color; + .header-background; + } + } + + .dojoxCalendarColumnHeader { + position: absolute; + height: @column-header-height; + left: @row-header-width; + right: 0; + top: 0; + cursor: default; + overflow: hidden; + } + + .dojoxCalendarColumnHeader.dojoxCalendarHorizontalScroll { + border-right: @outer-border; + } + + .dojoxCalendarColumnHeaderTable { + border-collapse: collapse; + table-layout: fixed; + position: relative; + margin: 0; + padding: 0; + width: 100%; + height: 100%; + + td { + overflow:hidden; + white-space: nowrap; + vertical-align: middle; + text-align: center; + .header-background; + border-right: @inner-border; + border-top: @outer-border; + border-bottom: @outer-border; + .select-none; + color: @label-color; + .transition-duration(0.2s); + } + + td.last-child { + border-right: @outer-border; + } + + .dojoxCalendarToday { + font-weight: bold; + color: @today-label-color; + } + + .dojoxCalendarWeekend { + color: @week-end-label-color; + } + + td.Hover{ + cursor: pointer; + .header-hover-background; + } + + td.Active{ + .header-active-background; + } + } + + .dojoxCalendarSubHeader { + position: absolute; + left: 0; + right: 0; + top: 72px; + height: @sub-column-header-height; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + display: none; + } + + .dojoxCalendarSubColumnHeader { + position: absolute; + height: @sub-column-header-height; + left: @row-header-width; + right: 0; + top: 0px; + cursor: default; + overflow: hidden; + } + + .dojoxCalendarSubColumnHeader.dojoxCalendarHorizontalScroll { + border-right: @outer-border; + } + + .dojoxCalendarSubColumnHeaderTable { + border-collapse: collapse; + table-layout: fixed; + position: relative; + margin: 0; + padding: 0; + width: 100%; + height: 100%; + + td { + overflow: hidden; + white-space: nowrap; + vertical-align: middle; + text-align: center; + border-right: @inner-border; + border-top: @outer-border; + -moz-user-select: none; + -webkit-user-select: none; + khtml-user-select: none; + user-select: none; + color: #000000; + } + td.last-child { + border-right: @outer-border; + } + td.dojoxCalendarToday { + background-color: @today-color; + } + td.dojoxCalendarWeekend { + background-color: @week-end-color; + } + } + + .dojoxCalendarSubHeaderContainer { + position: relative; + width:100%; + height: @sub-column-header-height - 2px; + } + + .dojoxCalendarSubHeaderCell { + position: absolute; + top: 0; + .border-box; + height:100%; + overflow: hidden; + text-overflow: ellipsis; + } + + .dojoxCalendarSubHeaderCell.subColumn { + border-right: @sub-column-border; + } + + .dojoxCalendarSubHeaderLabel { + font-size: 0.9em; + color: #555; + } + + .dojoxCalendarSubRowHeader { + position: absolute; + height: @sub-column-header-height; + left: 0; + width: @row-header-width - 2px; + top: 0; + border-left: @outer-border; + border-right: @outer-border; + + table { + position: relative; + width: 100%; + height: 100%; + + td { + border-top: @outer-border; + background-color: #efefef; + } + } + } + + .dojoxCalendarRowHeader { + position: absolute; + width: @row-header-width - 2px; + cursor: default; + border-left: @outer-border; + border-right: @outer-border; + height: 100%; + .select-none; + } + + .dojoxCalendarRowHeaderLabelContainer{ + width: 100%; + height: 100%; + z-index: 10; + } + + .dojoxCalendarRowHeaderLabel{ + right: 4px; + position: absolute; + } + + .dojoxCalendarRowHeaderTable { + border-collapse: collapse; + table-layout: fixed; + position: relative; + margin: 0; + padding: 0; + width: 100%; + height: 100%; + + td.dummy{ + border-top: 1px solid @row-color; + } + + td { + background-color: @row-color; + color: @label-color; + .border-box; + } + + tr:first-child td { + border-top: 1px solid @row-color; + } + } + + .dojoxCalendarDecoration { + position:absolute; + background-color: rgb(167, 233, 68); + .opacity(20); + } + + .dojoxCalendarEvent { + position: absolute; + text-align: left; + color: #FFF; + cursor: default; + overflow: hidden; + + .bg { + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + z-index: -1; + border: @event-border; + .rounded-corners; + background-color: @event-bg-color; + .opacity(90); + } + + .endTime { + position: absolute; + font-weight: bold; + bottom:3px; + left: 6px; + white-space:nowrap; + } + + .beforeIcon { + text-align: center; + } + + .afterIcon { + position: absolute; + bottom: 2px; + width: 100%; + text-align: center; + } + + .handle { + .glass-view; + } + + .moveHandle { + position: absolute; + top:0; + width:100%; + bottom:0; + cursor:move; + } + + .resizeStartHandle { + position: absolute; + top:0; + width:100%; + height:10px; + cursor:n-resize; + } + + .resizeEndHandle { + position: absolute; + bottom:0; + width:100%; + height:10px; + cursor:n-resize; + } + + dl { + margin: 0; + } + + dd { + margin: 0; + padding: 0 3px; + text-align: left; + } + } + + .dojoxCalendarEvent.Hovered .bg { + background-color: @event-hovered-bg-color; + } + + .dojoxCalendarEvent.Selected .bg { + background-color: @event-selected-bg-color; + } + + .dojoxCalendarEvent.Edited .bg { + border: @event-border-focused; + .opacity(70); + } + + .dojoxCalendarEvent.Focused .bg { + border: @event-border-focused; + } + + .dojoxCalendarEvent .startTime { + .event-header; + background-color: @event-header-bg-color; + .top-left-right-border(@event-border); + } + + .dojoxCalendarEvent.Focused .startTime { + .top-left-right-border(@event-border-focused); + } + + .dojoxCalendarEvent.Hovered .startTime { + background-color: @event-header-hovered-bg-color; + } + + .dojoxCalendarEvent.Selected .startTime { + background-color: @event-header-selected-bg-color; + } + + .dojoxCalendarEvent.Edited .startTime { + background-color: @event-header-bg-color; + .top-left-right-border(@event-border-focused); + } + + .dojoxCalendarVScrollBar { + position: absolute; + top: @sheet-top; + bottom: 0; + overflow-y: scroll; + overflow-x: hidden; + } + + .dojoxCalendarHScrollBar { + position: absolute; + bottom: 0; + left: @row-header-width; + overflow-x: scroll; + overflow-y: hidden; + } + + .dojoxCalendarMatrixView { + position: absolute; + left: 0; + right: 0; + top: @column-header-height; + height: @secondary-sheet-height; + + .dojoxCalendarGrid { + position: absolute; + left: @row-header-width; + right: 0; + top: 0; + bottom: 0; + .border-box; + } + + .dojoxCalendarContainer { + position: absolute; + top: 0; + left: @row-header-width; + right: 0; + bottom: 0; + cursor: default; + } + + .dojoxCalendarRowHeader { + position: absolute; + left: 0; + top: 0; + width: @row-header-width; + bottom: 0; + + border-right: none; + border-left: none; + .border-box; + } + + .dojoxCalendarGridTable{ + + td { + text-align: right; + vertical-align: top; + border-top: @inner-border; + border-bottom: @inner-border; + border-right: @inner-border; + .border-box; + } + + tr.last-child td { + border-bottom: @outer-border; + } + + td.last-child { + border-right: @outer-border; + } + + } + + .dojoxCalendarRowHeaderTable td { + border-top: @inner-border; + border-left: @outer-border; + border-right: @outer-border; + border-bottom: @outer-border; + background-color: @row-color; + } + + .dojoxCalendarEvent { + .handle { + .glass-view; + position: absolute; + width:5px; + height:100%; + cursor:e-resize; + } + + .moveHandle { + left:0; + top:0; + width:100%; + cursor:move; + } + + .resizeEndHandle { + right:0px; + } + + .afterIcon { + width:auto; + } + + .endTime { + position: relative; + bottom:auto; + left: auto; + } + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal .labels { + position: absolute; + left: 3px; + right: 1px; + bottom: 2px; + overflow: hidden; + } + + .dojoxCalendarExpand { + position: absolute; + text-align: center; + + .bg { + position: relative; + margin-right: 10%; + margin-left: 10%; + border-radius: 5px; + height: 100%; + .select-none; + border: 1px solid transparent; + -moz-border-radius: 5px; + -webkit-transition-duration: 0.2s; + -moz-transition-duration: 0.2s; + transition-duration: 0.2s; + } + } + + .dojoxCalendarExpand.Up .bg { + background-color: @expand-up-color; + border: 1px solid @expand-up-color - #555; + } + + .dojoxCalendarExpand.Down .bg { + background-color: @expand-down-color; + border: 1px solid @expand-down-color - #555; + } + + .dojoxCalendarEvent div { + white-space:nowrap; + } + } + + .dojoxCalendarTimeIndicator { + position: absolute; + left:0; + height: 2px; + width:100%; + background-color: red; + } +} + +.soria .dojoxCalendarColumnView.subColumns { + .dojoxCalendarScrollContainer { + top: @sheet-top-subcolumns; + } + .dojoxCalendarSubHeader { + top: @column-header-height + 3px; + display: block; + } + .dojoxCalendarVScrollBar { + top: @sheet-top-subcolumns; + } + +} + +.soria .dojoxCalendarColumnView.secondarySheet { + .dojoxCalendarScrollContainer { + top: @sheet-top-secondary-sheet; + } + .dojoxCalendarSubHeader { + top: @column-header-height + @secondary-sheet-height + 3px; + display: none; + } + .dojoxCalendarVScrollBar { + top: @sheet-top-secondary-sheet; + } +} + +.soria .dojoxCalendarColumnView.subColumns.secondarySheet { + .dojoxCalendarScrollContainer { + top: @sheet-top-subcolumns-secondary-sheet; + } + .dojoxCalendarSubHeader { + top: @column-header-height + @secondary-sheet-height + 3px; + display: block; + } + .dojoxCalendarVScrollBar { + top: @sheet-top-subcolumns-secondary-sheet; + } +} + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnViewCommon.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnViewCommon.less new file mode 100644 index 00000000..374f7f9f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnViewCommon.less @@ -0,0 +1,10 @@ +@import "Common.less"; + +@column-header-height: 30px; +@sub-column-header-height: 20px; +@row-header-width: 70px; +@secondary-sheet-height: 39px; +@sheet-top: @column-header-height + 3px; +@sheet-top-secondary-sheet: @secondary-sheet-height + @column-header-height + 3px; +@sheet-top-subcolumns: @sub-column-header-height + @column-header-height + 3px; +@sheet-top-subcolumns-secondary-sheet: @secondary-sheet-height + @sub-column-header-height + @column-header-height + 3px; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView_rtl.css new file mode 100644 index 00000000..ec6fe470 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView_rtl.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarScrollContainer{border-left:0;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarGrid{left:0;right:70px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarGridTable td{border-left:1px solid #b1badf;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarContainer{left:0;right:70px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEventContainerColumn{margin-right:2px;margin-left:7px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnBorder.subColumn{border-right:0;border-left:1px solid #ddd}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarYearColumnHeader{right:0;width:68px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeader{left:0;right:70px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeaderTable td{border-right:0;border-left:1px solid #bfbfbf}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarColumnHeaderTable td.last-child{border-right:0;border-left:1px solid #b1badf}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeader{right:70px;left:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubRowHeader{left:auto;right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable{border-left:1px solid #b1badf;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable table.subColumn td{border-left:0;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable td{border-left:1px solid #bfbfbf;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarSubColumnHeaderTable td.last-child{border-left:1px solid #b1badf;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarRowHeaderLabel{right:auto;left:4px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEvent .summary{text-align:right}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEvent .startTime{text-align:right}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarEvent .endTime{text-align:right}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarVScrollBar{margin-left:-1px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGrid{right:70px;left:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td{text-align:left;border-bottom:1px solid #bfbfbf;border-left:1px solid #bfbfbf;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td span{padding-left:2px}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td.last-child{border-left:1px solid #b1badf}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarContainer{right:70px;left:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarContainerTable td{border-bottom:solid 1px transparent;border-right:solid 1px transparent;text-align:right;vertical-align:top}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarYearColumnHeader{position:absolute;right:0;left:auto}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarColumnHeader{right:70px;left:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td{border-left:1px solid #b1badf;border-right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarRowHeader{right:0;left:auto}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeStartHandle{right:0}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeEndHandle{left:0;right:auto}.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{text-align:right;right:2px} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView_rtl.less new file mode 100644 index 00000000..3e14a2bf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/ColumnView_rtl.less @@ -0,0 +1,177 @@ +@import "ColumnViewCommon.less"; + +.soria .dojoxCalendarColumnView.dojoxCalendarColumnViewRtl { + .dojoxCalendarScrollContainer { + border-left: none; + border-right: none; + } + + .dojoxCalendarGrid { + left: 0; + right: @row-header-width; + } + + .dojoxCalendarGridTable td { + border-left: @outer-border; + border-right: none; + } + + .dojoxCalendarContainer { + left: 0; + right: @row-header-width; + } + + .dojoxCalendarEventContainerColumn { + margin-right: 2px; + margin-left: 7px; + } + + .dojoxCalendarSubColumnBorder.subColumn { + border-right: none; + border-left: @sub-column-border; + } + + .dojoxCalendarYearColumnHeader{ + right: 0; + width: @row-header-width - 2; + } + + .dojoxCalendarColumnHeader { + left: 0; + right: @row-header-width; + } + + .dojoxCalendarColumnHeaderTable { + + td { + border-right: none; + border-left: @inner-border; + } + + td.last-child { + border-right: none; + border-left: @outer-border; + } + } + + .dojoxCalendarSubColumnHeader { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarSubRowHeader { + left: auto; + right: 0; + } + + .dojoxCalendarSubColumnHeaderTable { + border-left: @outer-border; + border-right: none; + + table.subColumn td { + border-left: none; + border-right: none; + } + } + + .dojoxCalendarSubColumnHeaderTable td { + border-left: @inner-border; + border-right: none; + } + + .dojoxCalendarSubColumnHeaderTable td.last-child { + border-left: @outer-border; + border-right: none; + } + + .dojoxCalendarRowHeaderLabel{ + right: auto; + left: 4px; + } + + .dojoxCalendarEvent .summary { + text-align: right; + } + + .dojoxCalendarEvent .startTime { + text-align: right; + } + + .dojoxCalendarEvent .endTime { + text-align: right; + } + + .dojoxCalendarVScrollBar { + margin-left: -1px; + } + + .dojoxCalendarMatrixViewRtl { + + .dojoxCalendarGrid { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarGridTable td { + text-align: left; + border-bottom: @inner-border; + border-left: @inner-border; + border-right: none; + } + + .dojoxCalendarGridTable td span{ + padding-left: 2px; + } + + .dojoxCalendarGridTable td.last-child { + border-left: @outer-border; + } + + .dojoxCalendarContainer { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarContainerTable td { + border-bottom: solid 1px transparent; + border-right: solid 1px transparent; + text-align: right; + vertical-align: top; + } + + .dojoxCalendarYearColumnHeader{ + position: absolute; + right: 0; + left: auto; + } + + .dojoxCalendarColumnHeader { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td { + border-left: @outer-border; + border-right: none; + } + + .dojoxCalendarRowHeader { + right: 0; + left: auto; + } + + .dojoxCalendarEvent .resizeStartHandle { + right: 0; + } + + .dojoxCalendarEvent .resizeEndHandle { + left: 0; + right: auto; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal .labels { + text-align: right; + right: 2px; + } + } +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Common.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Common.less new file mode 100644 index 00000000..16e925f2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/Common.less @@ -0,0 +1,56 @@ +@import "../Base.less"; + +@outer-border: 1px solid #B1BADF; +@inner-border: 1px solid #BFBFBF; +@sub-column-border: 1px solid #DDD; + +@row-color:#FDFDFD; +@row-color-hover: #B9CBF1; +@row-color-active: #60A1EA; + +@today-color: #FFF2D2; +@today-label-color: #FF2200; + +@subcolumn-text-color: #777; + +@week-end-color: #FDFDFD; +@week-end-label-color:#999999; + +@expand-up-color: #E5F2FE; +@expand-down-color: #A5D1FB; + +@label-color: #293A4B; +@secondary-label-color: #555; + +@event-border: 1px solid #260000; +@event-border-focused: dashed 1px #FFFFFF; + +@event-bg-color: #9F0000; +@event-selected-bg-color: #660000; +@event-hovered-bg-color: #CC0000; + +@event-header-bg-color: @event-bg-color - #330000; +@event-header-selected-bg-color: @event-selected-bg-color - #330000; +@event-header-hovered-bg-color: @event-hovered-bg-color - #330000; + +@hour-stroke: 1px solid #CCCCCC; +@half-hour-stroke: dotted 1px #CCCCCC; +@quarter-hour-stroke: dotted 1px #CCCCCC; + +.header-background(){ + background: #cccccc; + background:#fff url("images/titleBar.png") repeat-x top left; + padding:3px 4px; + font-size: 0.9em; + font-weight: bold; + color: #6d6d6d; +} + +.header-hover-background(){ + background: #f9f9f9 url("images/accordionItemActive.png") top repeat-x; +} + +.header-active-background(){ + cursor: pointer; +} + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView.css new file mode 100644 index 00000000..904304c5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.soria .dojoxCalendarMatrixView{cursor:default;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarMatrixView .dojoxCalendarGrid{position:absolute;left:50px;right:0;top:30px;bottom:0}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable{position:relative;width:100%;height:100%;margin:0;padding:0;border-collapse:collapse;table-layout:fixed}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable tr{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable td{text-align:right;vertical-align:top;border-bottom:1px solid #bfbfbf;border-right:1px solid #bfbfbf;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable td span{padding-right:2px;padding-top:2px}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable tr.last-child td{border-bottom:1px solid #b1badf}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable td.dojoxCalendarToday{background-color:#fff2d2;font-weight:700;color:#f20}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable .dojoxCalendarWeekend{background-color:#fdfdfd;color:#999}.soria .dojoxCalendarMatrixView .dojoxCalendarGridTable .dojoxCalendarDayDisabled{background-color:#fdfdfd;color:#999}.soria .dojoxCalendarMatrixView .dojoxCalendarYearColumnHeader{position:absolute;left:0;top:0;width:50px;height:29px;text-align:center;vertical-align:middle;border-bottom:1px solid #b1badf}.soria .dojoxCalendarMatrixView .dojoxCalendarYearColumnHeader table{position:relative;width:100%;height:100%;table-layout:fixed;border-collapse:collapse}.soria .dojoxCalendarMatrixView .dojoxCalendarYearColumnHeader table td{text-align:center;vertical-align:middle;border-left:1px solid #b1badf;border-top:1px solid #b1badf;border-right:1px solid #b1badf;background:#ccc;background:#fff url(images/titleBar.png) repeat-x top left;padding:3px 4px;font-size:.9em;font-weight:700;color:#6d6d6d;color:#293a4b}.soria .dojoxCalendarMatrixView .dojoxCalendarColumnHeader{position:absolute;left:50px;right:0;top:0;height:29px;cursor:default;border-bottom:1px solid #b1badf}.soria .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable{position:relative;width:100%;height:100%;table-layout:fixed;border-collapse:collapse}.soria .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td{overflow:hidden;vertical-align:middle;text-align:center;background:#ccc;background:#fff url(images/titleBar.png) repeat-x top left;padding:3px 4px;font-size:.9em;font-weight:700;color:#6d6d6d;border-right:1px solid #bfbfbf;border-top:1px solid #b1badf;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#293a4b}.soria .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarMatrixView .dojoxCalendarColumnHeaderTable .dojoxCalendarWeekend{color:#999}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeader{position:absolute;left:0;top:30px;width:50px;bottom:0;cursor:default;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable{position:relative;width:100%;height:100%;border-collapse:collapse;table-layout:fixed;margin:0;padding:0}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable tr{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td{text-align:center;vertical-align:middle;border-left:1px solid #b1badf;border-right:1px solid #b1badf;border-bottom:1px solid #bfbfbf;background-color:#fdfdfd;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;color:#293a4b;cursor:pointer}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td.last-child{border-bottom:1px solid #b1badf}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td.Hover{background-color:#b9cbf1}.soria .dojoxCalendarMatrixView .dojoxCalendarRowHeaderTable td.Active{background-color:#60a1ea}.soria .dojoxCalendarMatrixView .dojoxCalendarContainer{position:absolute;top:30px;left:50px;right:0;bottom:0;cursor:default}.soria .dojoxCalendarMatrixView .dojoxCalendarContainerTable{position:relative;width:100%;height:100%;margin:0;padding:0;border-collapse:collapse;table-layout:fixed}.soria .dojoxCalendarMatrixView .dojoxCalendarContainerTable tr{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarMatrixView .dojoxCalendarContainerTable td{vertical-align:top;border-bottom:solid 1px transparent;border-right:solid 1px transparent;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarMatrixView .dojoxCalendarContainerTable td div.dojoxCalendarContainerRow{position:relative;height:100%;width:100%}.soria .dojoxCalendarMatrixView .dojoxCalendarEventContainer{position:absolute;overflow:hidden;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarMatrixView .dojoxCalendarDecoration{position:absolute;background-color:#a7e944;filter:alpha(opacity=20);opacity:.2}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent{position:absolute;text-align:left;color:#000;cursor:default;white-space:nowrap}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal{color:#FFF;position:absolute}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal .bg{border:1px solid #260000;position:absolute;left:0;right:0;top:0;bottom:0;color:#000;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;background-color:#9f0000}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Hovered .bg{background-color:#c00}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Selected .bg{background-color:#600}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.Edited{color:#FFF;font-weight:700;text-decoration:none}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Edited .bg{border:dashed 1px #FFF;filter:alpha(opacity=30);opacity:.3}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal.Focused .bg{border:dashed 1px #FFF}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Hovered{color:#F40}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Selected{color:red}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Edited{border:dashed 1px #FFF;background:#600;filter:alpha(opacity=30);opacity:.3;color:#FFF}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel.Focused{border:dashed 1px #000}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{position:absolute;left:3px;right:1px;bottom:2px;overflow:hidden}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent.dojoxCalendarLabel .labels{position:absolute;left:2px;right:2px;bottom:0;overflow:hidden}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;position:absolute;width:5px;height:100%;cursor:e-resize}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent .moveHandle{left:0;top:0;width:100%;cursor:move}.soria .dojoxCalendarMatrixView .dojoxCalendarEvent .resizeEndHandle{right:0}.soria .dojoxCalendarMatrixView .dojoxCalendarExpand{position:absolute;text-align:center}.soria .dojoxCalendarMatrixView .dojoxCalendarExpand span{display:inline-block;vertical-align:middle}.soria .dojoxCalendarMatrixView .dojoxCalendarExpand .bg{position:relative;margin-right:5px;margin-left:5px;height:100%;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:1px solid transparent}.soria .dojoxCalendarMatrixView .dojoxCalendarExpand.Up .bg{background-color:#e5f2fe;border:1px solid #909da9}.soria .dojoxCalendarMatrixView .dojoxCalendarExpand.Down .bg{background-color:#a5d1fb;border:1px solid #507ca6} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView.less new file mode 100644 index 00000000..2bd6b4a9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView.less @@ -0,0 +1,380 @@ +@import "MatrixViewCommon.less"; + +.soria .dojoxCalendarMatrixView { + cursor: default; + .select-none; + + .dojoxCalendarGrid { + position: absolute; + left: @row-header-width; + right: 0px; + top: @column-header-height; + bottom: 0px; + } + + .dojoxCalendarGridTable { + position: relative; + width: 100%; + height: 100%; + margin: 0; + padding: 0; + border-collapse: collapse; + table-layout: fixed; + + tr{ + .border-box; + } + + td { + text-align: right; + vertical-align: top; + border-bottom: @inner-border; + border-right: @inner-border; + .border-box; + } + + td span{ + padding-right: 2px; + padding-top: 2px; + } + + td span.FirstVisibleDayOfMonth{ + } + + tr.last-child td { + border-bottom: @outer-border; + } + + td.last-child { + border-right: @outer-border; + } + + /* + * The dojoxCalendarColToday & dojoxCalendarColWeekend classes is added by the + * MatrixView.styleGridCell method that can be subclassed to add/remove css classes + */ + td.dojoxCalendarToday { + background-color: @today-color; + font-weight: bold; + color: @today-label-color; + } + + .dojoxCalendarWeekend { + background-color: @week-end-color; + color: @week-end-label-color; + } + + .dojoxCalendarDayDisabled { + background-color: @disabled-day-color; + color: @disabled-day-label-color; + } + } + + .dojoxCalendarYearColumnHeader{ + position: absolute; + left: 0px; + top: 0px; + width: @row-header-width; + height: @column-header-height - 1px; + text-align: center; + vertical-align: middle; + border-bottom: @outer-border; + + table{ + position: relative; + width:100%; + height: 100%; + table-layout: fixed; + border-collapse: collapse; + + td{ + text-align: center; + vertical-align: middle; + border-left: @outer-border; + border-top: @outer-border; + border-right: @outer-border; + .header-background; + color: @label-color; + } + } + } + + .dojoxCalendarColumnHeader { + position: absolute; + left: @row-header-width; + right: 0px; + top: 0px; + height: @column-header-height - 1px; + cursor: default; + border-bottom: @outer-border; + } + + .dojoxCalendarColumnHeaderTable { + position: relative; + width:100%; + height: 100%; + table-layout: fixed; + border-collapse: collapse; + + td { + overflow:hidden; + vertical-align: middle; + text-align: center; + .header-background; + border-right: @inner-border; + border-top: @outer-border; + .select-none; + color: @label-color; + } + + td.last-child { + border-right: @outer-border; + } + + /* + * The dojoxCalendarColWeekend class is added by the + * ColumnView.styleColumnHeaderCell method that can be subclassed to add/remove css class. + */ + .dojoxCalendarWeekend { + color: @week-end-label-color; + } + } + + .dojoxCalendarRowHeader { + position: absolute; + left: 0px; + top: @column-header-height; + width: @row-header-width; + bottom: 0; + cursor: default; + + .select-none; + } + + .dojoxCalendarRowHeaderTable { + position: relative; + width: 100%; + height: 100%; + border-collapse: collapse; + table-layout: fixed; + margin: 0; + padding: 0; + + tr{ + .border-box; + } + + /* + * The MatrixView.styleRowHeaderCell method that can be subclassed to add/remove css classes per hour. + */ + td { + text-align: center; + vertical-align: middle; + border-left: @outer-border; + border-right: @outer-border; + border-bottom: @inner-border; + background-color: @row-color; + .transition-duration(0.2s); + .border-box; + color: @label-color; + cursor: pointer; + } + + td.last-child { + border-bottom: @outer-border; + } + + td.Hover { + background-color: @row-color-hover; + } + + td.Active { + background-color: @row-color-active; + } + } + + .dojoxCalendarContainer { + position: absolute; + top: @column-header-height; + left: @row-header-width; + right: 0px; + bottom: 0px; + cursor: default; + } + + .dojoxCalendarContainerTable { + position: relative; + width: 100%; + height: 100%; + margin: 0; + padding: 0; + border-collapse: collapse; + table-layout: fixed; + + tr{ + .border-box; + } + + td{ + vertical-align: top; + border-bottom: solid 1px transparent; + border-right: solid 1px transparent; + .border-box; + } + + td div.dojoxCalendarContainerRow{ + position:relative; + height:100%; + width:100%; + } + } + + .dojoxCalendarEventContainer { + position: absolute; + overflow: hidden; + .select-none; + } + + .dojoxCalendarDecoration { + position:absolute; + background-color: rgb(167, 233, 68); + .opacity(20); + } + + .dojoxCalendarEvent { + position: absolute; + text-align: left; + color: #000; + cursor: default; + white-space: nowrap; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal { + color: #FFF; + position: absolute; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal .bg { + border: @horizontal-border; + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + color: #000; + .rounded-corners(5px); + background-color: @horizontal-color; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal.Hovered .bg { + background-color: @horizontal-hover-color; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal.Selected .bg { + background-color: @horizontal-selected-bg-color; + } + + .dojoxCalendarEvent.Edited { + color: #FFF; + font-weight: bold; + text-decoration: none; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal.Edited .bg { + border: dashed 1px #FFF; + .opacity(30); + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal.Focused .bg { + border: dashed 1px #FFF; + } + + .dojoxCalendarEvent.dojoxCalendarLabel.Hovered { + color: #F40; + } + + .dojoxCalendarEvent.dojoxCalendarLabel.Selected { + color: #F00; + } + + .dojoxCalendarEvent.dojoxCalendarLabel.Edited { + border: dashed 1px #FFF; + background: #600; + .opacity(30); + color: #FFF; + } + + .dojoxCalendarEvent.dojoxCalendarLabel.Focused { + border: dashed 1px #000; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal .labels { + position: absolute; + left: 3px; + right: 1px; + bottom: 2px; + overflow: hidden; + } + + .dojoxCalendarEvent.dojoxCalendarLabel .labels { + position: absolute; + left: 2px; + right: 2px; + bottom: 0; + overflow: hidden; + } + + .dojoxCalendarEvent .handle { + .glass-view; + position: absolute; + width:5px; + height:100%; + cursor:e-resize; + } + + .dojoxCalendarEvent .moveHandle { + left:0; + top:0; + width:100%; + cursor:move; + } + + .dojoxCalendarEvent .resizeStartHandle { + } + + .dojoxCalendarEvent .resizeEndHandle { + right:0px; + } + + .dojoxCalendarExpand { + position: absolute; + text-align: center; + + span { + display: inline-block; + vertical-align: middle; + } + + .bg { + position: relative; + margin-right: 5px; + margin-left: 5px; + height: 100%; + .rounded-corners(5px); + .transition-duration(0.2s); + .border-box; + border: 1px solid transparent; + } + } + + .dojoxCalendarExpand.Up .bg { + background-color: @expand-up-color; + border: 1px solid @expand-up-color - #555; + } + + .dojoxCalendarExpand.Down .bg { + background-color: @expand-down-color; + border: 1px solid @expand-down-color - #555; + } + +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixViewCommon.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixViewCommon.less new file mode 100644 index 00000000..a1a2efc4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixViewCommon.less @@ -0,0 +1,12 @@ +@import "Common.less"; + +@disabled-day-color: #FDFDFD; +@disabled-day-label-color: #999999; + +@horizontal-color: #9F0000; +@horizontal-hover-color: #CC0000; +@horizontal-selected-bg-color: #660000; +@horizontal-border: 1px solid #260000; + +@column-header-height: 30px; +@row-header-width: 50px; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView_rtl.css new file mode 100644 index 00000000..4cc5cc89 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView_rtl.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarGrid{right:50px;left:0}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td{text-align:left;border-bottom:1px solid #bfbfbf;border-left:1px solid #bfbfbf;border-right:0}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td span{padding-left:2px}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarGridTable td.last-child{border-left:1px solid #b1badf}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarContainer{right:50px;left:0}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarContainerTable td{border-bottom:solid 1px transparent;border-right:solid 1px transparent;text-align:right;vertical-align:top}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarYearColumnHeader{position:absolute;right:0;left:auto}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarColumnHeader{right:50px;left:0}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarColumnHeaderTable td{border-left:1px solid #b1badf;border-right:0}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarRowHeader{right:0;left:auto}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent.dojoxCalendarHorizontal .labels{text-align:right}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent.dojoxCalendarLabel .labels{text-align:right}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeStartHandle{right:0}.soria .dojoxCalendarMatrixViewRtl .dojoxCalendarEvent .resizeEndHandle{left:0;right:auto} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView_rtl.less new file mode 100644 index 00000000..18d69db4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MatrixView_rtl.less @@ -0,0 +1,75 @@ +@import "MatrixViewCommon.less"; + +.soria .dojoxCalendarMatrixViewRtl { + + .dojoxCalendarGrid { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarGridTable td { + text-align: left; + border-bottom: @inner-border; + border-left: @inner-border; + border-right: none; + } + + .dojoxCalendarGridTable td span{ + padding-left: 2px; + } + + .dojoxCalendarGridTable td.last-child { + border-left: @outer-border; + } + + .dojoxCalendarContainer { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarContainerTable td { + border-bottom: solid 1px transparent; + border-right: solid 1px transparent; + text-align: right; + vertical-align: top; + } + + .dojoxCalendarYearColumnHeader{ + position: absolute; + right: 0; + left: auto; + } + + .dojoxCalendarColumnHeader { + right: @row-header-width; + left: 0; + } + + .dojoxCalendarColumnHeaderTable td { + border-left: @outer-border; + border-right: none; + } + + .dojoxCalendarRowHeader { + right: 0; + left: auto; + } + + .dojoxCalendarEvent.dojoxCalendarHorizontal .labels { + text-align: right; + } + + .dojoxCalendarEvent.dojoxCalendarLabel .labels { + text-align: right; + } + + .dojoxCalendarEvent .resizeStartHandle { + right: 0; + } + + .dojoxCalendarEvent .resizeEndHandle { + left:0; + right:auto; + } + +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView.css new file mode 100644 index 00000000..6d63b8a3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.soria .dojoxCalendarMonthColumnView{cursor:default;-webkit-user-select:none}.soria .dojoxCalendarMonthColumnView .dojoxCalendarScrollContainer{left:0;right:0;bottom:0;top:30px;position:absolute;overflow-y:hidden;overflow-x:hidden;border-bottom:1px solid #b1badf;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGrid{position:absolute;top:0;left:0;right:0}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGridTable{border-collapse:collapse;table-layout:fixed;width:100%;position:relative;margin:0;padding:0}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGridTable td{border-top:dotted 1px #B5BCC7;border-right:1px solid #bfbfbf;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGridTable td span{padding-left:3px}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGridTable tr:first-child td{border-top:1px solid transparent}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGridTable .dojoxCalendarToday{background-color:#fff2d2;font-weight:700;color:#f20}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGridTable .dojoxCalendarHiddenEvents{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAF0lEQVQYlWP4z8Dw/1dU1H8GXGBkKAAA+IglWfcls2QAAAAASUVORK5CYII=) repeat-y}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGridTable .dojoxCalendarToday.dojoxCalendarHiddenEvents{background:#fff2d2 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAF0lEQVQYlWP4z8Dw/1dU1H8GXGBkKAAA+IglWfcls2QAAAAASUVORK5CYII=) repeat-y}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGridTable tr td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGridTable tr td.first-child{border-left:1px solid #b1badf}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGridTable tr:first-child td.dojoxCalendarToday{border-top:1px solid #fff2d2}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGridTable .dojoxCalendarWeekend{background-color:#fdfdfd;color:#999}.soria .dojoxCalendarMonthColumnView .dojoxCalendarGridTable tr:first-child td.dojoxCalendarWeekend{border-top:1px solid #fdfdfd}.soria .dojoxCalendarMonthColumnView .dojoxCalendarContainer{position:absolute;top:0;left:0;right:0;cursor:default}.soria .dojoxCalendarMonthColumnView .dojoxCalendarContainerTable{border-collapse:collapse;table-layout:fixed;width:100%;position:relative;margin:0;padding:0}.soria .dojoxCalendarMonthColumnView .dojoxCalendarContainerTable td{height:100%;padding:0;vertical-align:top}.soria .dojoxCalendarMonthColumnView .dojoxCalendarContainerColumn{position:relative;margin-left:35px;margin-right:5px}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEventContainer{position:absolute;overflow:hidden;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeader{position:absolute;height:30px;left:0;right:0;top:0;cursor:default}.soria .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeaderTable{border-collapse:collapse;table-layout:fixed;position:relative;margin:0;padding:0;width:100%;height:100%}.soria .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeaderTable td{overflow:hidden;white-space:nowrap;vertical-align:middle;text-align:center;background:#ccc;background:#fff url(images/titleBar.png) repeat-x top left;padding:3px 4px;font-size:.9em;font-weight:700;color:#6d6d6d;border-right:1px solid #bfbfbf;border-top:1px solid #b1badf;border-bottom:1px solid #b1badf;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none;color:#293a4b;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;transition-duration:.2s}.soria .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeaderTable td.last-child{border-right:1px solid #b1badf}.soria .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeaderTable td.first-child{border-left:1px solid #b1badf}.soria .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeaderTable td.Hover{cursor:pointer;background:#f9f9f9 url(images/accordionItemActive.png) top repeat-x}.soria .dojoxCalendarMonthColumnView .dojoxCalendarColumnHeaderTable td.Active{cursor:pointer}.soria .dojoxCalendarMonthColumnView .dojoxCalendarDecoration{position:absolute;background-color:#a71744;filter:alpha(opacity=20);opacity:.2}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent{position:absolute;text-align:left;color:#FFF;cursor:default;overflow:hidden}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent .bg{position:absolute;left:0;right:0;top:0;bottom:0;z-index:-1;border:1px solid #260000;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;background-color:#9f0000;filter:alpha(opacity=90);opacity:.9}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent .startTime{font-weight:700}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent .endTime{position:absolute;font-weight:700;bottom:3px;left:6px}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent .beforeIcon{text-align:center}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent .afterIcon{position:absolute;bottom:2px;width:100%;text-align:center}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent .handle{z-index:2;background-color:red;filter:alpha(opacity=0);opacity:0;-moz-user-select:none;-webkit-user-select:none;khtml-user-select:none;user-select:none}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent .moveHandle{position:absolute;top:0;width:100%;bottom:0;cursor:move}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent .resizeStartHandle{position:absolute;top:0;width:100%;height:10px;cursor:n-resize}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent .resizeEndHandle{position:absolute;bottom:0;width:100%;height:10px;cursor:n-resize}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent dl{margin:0}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent dd{margin:0;padding:0 3px;text-align:left}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent.Hovered .bg{background-color:#C00}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent.Selected .bg{background-color:#600}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent.Edited .bg{border:dashed 1px #FFF;filter:alpha(opacity=70);opacity:.7}.soria .dojoxCalendarMonthColumnView .dojoxCalendarEvent.Focused .bg{border:dashed 1px #FFF}.soria .dojoxCalendarMonthColumnView .dojoxCalendarVScrollBar{position:absolute;top:30px;bottom:0;overflow-y:scroll;overflow-x:hidden} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView.less new file mode 100644 index 00000000..87bb8554 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView.less @@ -0,0 +1,288 @@ +@import "ColumnViewCommon.less"; + +.soria .dojoxCalendarMonthColumnView { + cursor: default; + -webkit-user-select: none; + + .dojoxCalendarScrollContainer { + left: 0; + right: 0; + bottom: 0; + top: @column-header-height; + position: absolute; + overflow-y: hidden; + overflow-x: hidden; + border-bottom: @outer-border; + .border-box; + } + + .dojoxCalendarGrid { + position: absolute; + top: 0; + left: 0; + right: 0; + } + + .dojoxCalendarGridTable { + border-collapse: collapse; + table-layout: fixed; + width: 100%; + position: relative; + margin: 0; + padding: 0; + + + td { + border-top: dotted 1px #B5BCC7; + border-right: @inner-border; + .border-box; + } + + td span { + padding-left:3px; + } + + tr:first-child td { + border-top: 1px solid transparent; + } + + /* + * The dojoxCalendarToday & dojoxCalendarWeekend classes is added by the + * ColumnView.styleGridColumn method that can be subclassed to add/remove css classes + */ + .dojoxCalendarToday { + background-color: @today-color; + font-weight: bold; + color: @today-label-color; + } + + .dojoxCalendarHiddenEvents { + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAF0lEQVQYlWP4z8Dw/1dU1H8GXGBkKAAA+IglWfcls2QAAAAASUVORK5CYII=) repeat-y; + } + + .dojoxCalendarToday.dojoxCalendarHiddenEvents { + background: @today-color url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAF0lEQVQYlWP4z8Dw/1dU1H8GXGBkKAAA+IglWfcls2QAAAAASUVORK5CYII=) repeat-y; + } + + tr td.last-child { + border-right: @outer-border; + } + + tr td.first-child { + border-left: @outer-border; + } + + + tr:first-child td.dojoxCalendarToday { + border-top: 1px solid @today-color; + } + + .dojoxCalendarWeekend { + background-color: @week-end-color; + color: @week-end-label-color; + } + + tr:first-child td.dojoxCalendarWeekend { + border-top: 1px solid @week-end-color; + } + + } + + .dojoxCalendarContainer { + position: absolute; + top: 0; + left: 0; + right: 0; + cursor: default; + } + + .dojoxCalendarContainerTable { + border-collapse: collapse; + table-layout: fixed; + width: 100%; + position: relative; + margin: 0; + padding: 0; + } + + .dojoxCalendarContainerTable td { + height: 100%; + padding: 0; + vertical-align: top; + } + + .dojoxCalendarContainerColumn { + position: relative; + margin-left: 35px; + margin-right: 5px; + } + + .dojoxCalendarEventContainer { + position: absolute; + overflow: hidden; + .select-none; + } + + .dojoxCalendarColumnHeader { + position: absolute; + height: @column-header-height; + left: 0; + right: 0; + top: 0; + cursor: default; + } + + .dojoxCalendarColumnHeaderTable { + border-collapse: collapse; + table-layout: fixed; + position: relative; + margin: 0; + padding: 0; + width: 100%; + height: 100%; + + td { + overflow:hidden; + white-space: nowrap; + vertical-align: middle; + text-align: center; + .header-background; + border-right: @inner-border; + border-top: @outer-border; + border-bottom: @outer-border; + .select-none; + color: @label-color; + .transition-duration(0.2s); + } + + td.last-child { + border-right: @outer-border; + } + + td.first-child { + border-left: @outer-border; + } + + td.Hover{ + cursor: pointer; + .header-hover-background; + } + + td.Active{ + .header-active-background; + } + } + + .dojoxCalendarDecoration { + position: absolute; + background-color: rgb(167, 23, 68); + .opacity(20); + } + + .dojoxCalendarEvent { + position: absolute; + text-align: left; + color: #FFF; + cursor: default; + overflow: hidden; + + .bg { + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + z-index: -1; + border: @event-border; + .rounded-corners; + background-color: @event-bg-color; + .opacity(90); + } + + .startTime { + font-weight: bold; + } + + .endTime { + position: absolute; + font-weight: bold; + bottom:3px; + left: 6px; + } + + .beforeIcon { + text-align: center; + } + + .afterIcon { + position: absolute; + bottom: 2px; + width: 100%; + text-align: center; + } + + .handle { + .glass-view; + } + + .moveHandle { + position: absolute; + top:0; + width:100%; + bottom:0; + cursor:move; + } + + .resizeStartHandle { + position: absolute; + top:0; + width:100%; + height:10px; + cursor:n-resize; + } + + .resizeEndHandle { + position: absolute; + bottom:0; + width:100%; + height:10px; + cursor:n-resize; + } + + dl { + margin: 0; + } + + dd { + margin: 0; + padding: 0 3px; + text-align: left; + } + } + + .dojoxCalendarEvent.Hovered .bg { + background-color: #CC0000; + } + + .dojoxCalendarEvent.Selected .bg { + background-color: #660000; + } + + .dojoxCalendarEvent.Edited .bg { + border: dashed 1px #FFFFFF; + .opacity(70); + } + + .dojoxCalendarEvent.Focused .bg { + border: dashed 1px #FFFFFF; + } + + .dojoxCalendarVScrollBar { + position: absolute; + top: @column-header-height; + bottom: 0; + overflow-y: scroll; + overflow-x: hidden; + } + +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnViewCommon.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnViewCommon.less new file mode 100644 index 00000000..9bb3ec83 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnViewCommon.less @@ -0,0 +1,7 @@ +@import "Common.less"; + +@hour-stroke: 1px solid #C7BEBE; +@half-hour-stroke: dotted 1px #C7BEBE; +@quarter-hour-stroke: dotted 1px #C7BEBE; + +@column-header-height: 30px; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView_rtl.css new file mode 100644 index 00000000..fc1f0fad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView_rtl.css @@ -0,0 +1 @@ +.event-header{font-weight:700;border-top-left-radius:5px;border-top-right-radius:5px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-top-right-radius:5px;-moz-border-top-left-radius:5px;white-space:nowrap;padding:1px 2px 2px 1px}.soria .dojoxCalendarMonthColumnViewRtl .dojoxCalendarGridTable td{border-right:0;border-left:1px solid #bfbfbf}.soria .dojoxCalendarMonthColumnViewRtl .dojoxCalendarGridTable td span{padding-right:3px;paddint-left:0}.soria .dojoxCalendarMonthColumnViewRtl .dojoxCalendarGridTable .dojoxCalendarHiddenEvents{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAAICAYAAADTLS5CAAAAFElEQVQImWP4z8Dw/1dU1H8GyhgANcclWWHC27gAAAAASUVORK5CYII=) repeat-y right top}.soria .dojoxCalendarMonthColumnViewRtl .claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable .dojoxCalendarToday.dojoxCalendarHiddenEvents{background:#fff2d2 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAAICAYAAADTLS5CAAAAFElEQVQImWP4z8Dw/1dU1H8GyhgANcclWWHC27gAAAAASUVORK5CYII=) repeat-y right top}.soria .dojoxCalendarMonthColumnViewRtl .dojoxCalendarGridTable tr td.last-child{border-left:1px solid #b1badf}.soria .dojoxCalendarMonthColumnViewRtl .dojoxCalendarGridTable tr td.first-child{border-right:1px solid #b1badf}.soria .dojoxCalendarMonthColumnViewRtl .dojoxCalendarContainerColumn{margin-left:5px;margin-right:35px}.soria .dojoxCalendarMonthColumnViewRtl .dojoxCalendarColumnHeaderTable td{border-left:1px solid #bfbfbf;border-right:0}.soria .dojoxCalendarMonthColumnViewRtl .dojoxCalendarColumnHeaderTable td.last-child{border-left:1px solid #b1badf}.soria .dojoxCalendarMonthColumnViewRtl .dojoxCalendarColumnHeaderTable td.first-child{border-right:1px solid #b1badf}.soria .dojoxCalendarMonthColumnViewRtl .dojoxCalendarEvent .summary{text-align:right}.soria .dojoxCalendarMonthColumnViewRtl .dojoxCalendarEvent .startTime{text-align:right}.soria .dojoxCalendarMonthColumnViewRtl .dojoxCalendarEvent .endTime{text-align:right} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView_rtl.less new file mode 100644 index 00000000..1088c54e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/MonthColumnView_rtl.less @@ -0,0 +1,60 @@ +@import "ColumnViewCommon.less"; + +.soria .dojoxCalendarMonthColumnViewRtl { + + .dojoxCalendarGridTable td { + border-right: none; + border-left: @inner-border; + } + + .dojoxCalendarGridTable td span { + padding-right:3px; + paddint-left: 0px; + } + + .dojoxCalendarGridTable .dojoxCalendarHiddenEvents { + background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAAICAYAAADTLS5CAAAAFElEQVQImWP4z8Dw/1dU1H8GyhgANcclWWHC27gAAAAASUVORK5CYII=) repeat-y right top; + } + + .claro .dojoxCalendarMonthColumnView .dojoxCalendarGridTable .dojoxCalendarToday.dojoxCalendarHiddenEvents { + background: @today-color url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAAICAYAAADTLS5CAAAAFElEQVQImWP4z8Dw/1dU1H8GyhgANcclWWHC27gAAAAASUVORK5CYII=) repeat-y right top; + } + + .dojoxCalendarGridTable tr td.last-child { + border-left: @outer-border; + } + + .dojoxCalendarGridTable tr td.first-child { + border-right: @outer-border; + } + + .dojoxCalendarContainerColumn { + margin-left: 5px; + margin-right: 35px; + } + + .dojoxCalendarColumnHeaderTable td { + border-left: @inner-border; + border-right: none; + } + + .dojoxCalendarColumnHeaderTable td.last-child { + border-left: @outer-border; + } + + .dojoxCalendarColumnHeaderTable td.first-child { + border-right: @outer-border; + } + + .dojoxCalendarEvent .summary { + text-align: right; + } + + .dojoxCalendarEvent .startTime { + text-align: right; + } + + .dojoxCalendarEvent .endTime { + text-align: right; + } +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/images/accordionItemActive.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/soria/images/accordionItemActive.png new file mode 100644 index 0000000000000000000000000000000000000000..92c74315c4d8ca43e468b14fabee824390059e80 GIT binary patch literal 171 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bF0V21g*<1xuk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xd_7$pLn>}1)%<+O&&?NMQuIx8CMR}}EKWKh<0u~)J-3mo!GMS5La_CYpa17a2CSI!#7k&m)8b~1 zxpLxqD#7ez+epk{jf>n literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/images/titleBar.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/themes/tundra/images/titleBar.png new file mode 100644 index 0000000000000000000000000000000000000000..b2609f37252cee0c40cc9d2477535c2c15042532 GIT binary patch literal 151 zcmeAS@N?(olHy`uVBq!ia0vp^Oh7!114LFUpHl-;>?NMQuIx8CMR^&-B`i(&fkK=G z9+AZi4BSE>%y{W;-5;Q!nWu|mNX4z>KmY&RGcz-vULU`|K}48YVuJ(g$H4#p{wfCv ttd_BpvvYKFb8E47Um2J+Wsx8&!%uUMZ;m=gmjO*+@O1TaS?83{1OOzyDbN4_ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/time.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/time.js new file mode 100644 index 00000000..44dfa414 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/time.js @@ -0,0 +1,103 @@ +//>>built +define("dojox/calendar/time",["dojo/_base/lang","dojo/date","dojo/cldr/supplemental","dojo/date/stamp"],function(_1,_2,_3,_4){ +var _5={}; +_5.newDate=function(_6,_7){ +_7=_7||Date; +var d; +if(typeof (_6)=="number"){ +return new _7(_6); +}else{ +if(_6.getTime){ +return new _7(_6.getTime()); +}else{ +if(_6.toGregorian){ +d=_6.toGregorian(); +if(_7!==Date){ +d=new _7(d.getTime()); +} +return d; +}else{ +if(typeof _6=="string"){ +d=_4.fromISOString(_6); +if(d===null){ +throw new Error("Cannot parse date string ("+_6+"), specify a \"decodeDate\" function that translates this string into a Date object"); +}else{ +if(_7!==Date){ +d=new _7(d.getTime()); +} +} +return d; +} +} +} +} +}; +_5.floorToDay=function(d,_8,_9){ +_9=_9||Date; +if(!_8){ +d=_5.newDate(d,_9); +} +d.setHours(0,0,0,0); +return d; +}; +_5.floorToMonth=function(d,_a,_b){ +_b=_b||Date; +if(!_a){ +d=_5.newDate(d,_b); +} +d.setDate(1); +d.setHours(0,0,0,0); +return d; +}; +_5.floorToWeek=function(d,_c,_d,_e,_f){ +_c=_c||Date; +_d=_d||_2; +var fd=_e==undefined||_e<0?_3.getFirstDayOfWeek(_f):_e; +var day=d.getDay(); +if(day==fd){ +return d; +} +return _5.floorToDay(_d.add(d,"day",day>fd?-day+fd:-day+fd-7),true,_c); +}; +_5.floor=function(_10,_11,_12,_13,_14){ +var d=_5.floorToDay(_10,_13,_14); +switch(_11){ +case "week": +return _5.floorToWeek(d,firstDayOfWeek,dateModule,locale); +case "minute": +d.setHours(_10.getHours()); +d.setMinutes(Math.floor(_10.getMinutes()/_12)*_12); +break; +case "hour": +d.setHours(Math.floor(_10.getHours()/_12)*_12); +break; +} +return d; +}; +_5.isStartOfDay=function(d,_15,_16){ +_16=_16||_2; +return _16.compare(this.floorToDay(d,false,_15),d)==0; +}; +_5.isToday=function(d,_17){ +_17=_17||Date; +var _18=new _17(); +return d.getFullYear()==_18.getFullYear()&&d.getMonth()==_18.getMonth()&&d.getDate()==_18.getDate(); +}; +_5.isOverlapping=function(_19,_1a,_1b,_1c,_1d,_1e){ +if(_1a==null||_1c==null||_1b==null||_1d==null){ +return false; +} +var cal=_19.dateModule; +if(_1e){ +if(cal.compare(_1a,_1d)==1||cal.compare(_1c,_1b)==1){ +return false; +} +}else{ +if(cal.compare(_1a,_1d)!=-1||cal.compare(_1c,_1b)!=-1){ +return false; +} +} +return true; +}; +return _5; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/time.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/time.js.uncompressed.js new file mode 100644 index 00000000..aa37efc1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/calendar/time.js.uncompressed.js @@ -0,0 +1,209 @@ +define("dojox/calendar/time", ["dojo/_base/lang", "dojo/date", "dojo/cldr/supplemental","dojo/date/stamp"], function(lang, date, cldr, stamp) { + +// summary: Advanced date manipulation utilities. + +var time = {}; + + +time.newDate = function(obj, dateClassObj){ + // summary: + // Creates a new Date object. + // obj: Object + // This object can have several values: + // - the time in milliseconds since gregorian epoch. + // - a Date instance + // - a String instance that can be decoded by the dojo/date/stamp class. + // dateClassObj: Object? + // The Date class used, by default the native Date. + + // returns: Date + dateClassObj = dateClassObj || Date; + var d; + + if(typeof(obj) == "number"){ + return new dateClassObj(obj); + }else if(obj.getTime){ + return new dateClassObj(obj.getTime()); + }else if(obj.toGregorian){ + d = obj.toGregorian(); + if(dateClassObj !== Date){ + d = new dateClassObj(d.getTime()); + } + return d; + }else if(typeof obj == "string"){ + d = stamp.fromISOString(obj); + if(d === null){ + throw new Error("Cannot parse date string ("+obj+"), specify a \"decodeDate\" function that translates this string into a Date object"); // cannot build date + }else if(dateClassObj !== Date){ // from Date to dateClassObj + d = new dateClassObj(d.getTime()); + } + return d; + } + +}; + +time.floorToDay = function(d, reuse, dateClassObj){ + // summary: + // Floors the specified date to the start of day. + // date: Date + // The date to floor. + // reuse: Boolean + // Whether use the specified instance or create a new one. Default is false. + // dateClassObj: Object? + // The Date class used, by default the native Date. + // returns: Date + dateClassObj = dateClassObj || Date; + + if(!reuse){ + d = time.newDate(d, dateClassObj); + } + + d.setHours(0, 0, 0, 0); + + return d; +}; + +time.floorToMonth = function(d, reuse, dateClassObj){ + // summary: + // Floors the specified date to the start of the date's month. + // date: Date + // The date to floor. + // reuse: Boolean + // Whether use the specified instance or create a new one. Default is false. + // dateClassObj: Object? + // The Date class used, by default the native Date. + // returns: Date + dateClassObj = dateClassObj || Date; + + if(!reuse){ + d = time.newDate(d, dateClassObj); + } + + d.setDate(1); + d.setHours(0, 0, 0, 0); + + return d; +}; + + +time.floorToWeek = function(d, dateClassObj, dateModule, firstDayOfWeek, locale){ + // summary: + // Floors the specified date to the beginning of week. + // d: Date + // Date to floor. + // dateClassObj: Object? + // The Date class used, by default the native Date. + // dateModule: Object? + // Object that contains the "add" method. By default dojo.date is used. + // firstDayOfWeek: Integer? + // Optional day of week that overrides the one provided by the CLDR. + // locale: String? + // Optional locale used to determine first day of week. + dateClassObj = dateClassObj || Date; + dateModule = dateModule || date; + + var fd = firstDayOfWeek == undefined || firstDayOfWeek < 0 ? cldr.getFirstDayOfWeek(locale) : firstDayOfWeek; + var day = d.getDay(); + if(day == fd){ + return d; + } + return time.floorToDay( + dateModule.add(d, "day", day > fd ? -day+fd : -day+fd-7), + true, dateClassObj); +}; + +time.floor = function(date, unit, steps, reuse, dateClassObj){ + // summary: + // floors the date to the unit. + // date: Date + // The date/time to floor. + // unit: String + // The unit. Valid values are "minute", "hour", "day". + // steps: Integer + // Valid for "minute" or "hour" units. + // reuse: Boolean + // Whether use the specified instance or create a new one. Default is false. + // dateClassObj: Object? + // The Date class used, by default the native Date. + // returns: Date + + var d = time.floorToDay(date, reuse, dateClassObj); + + switch(unit){ + case "week": + return time.floorToWeek(d, firstDayOfWeek, dateModule, locale); + case "minute": + d.setHours(date.getHours()); + d.setMinutes(Math.floor(date.getMinutes() /steps) * steps); + break; + case "hour": + d.setHours(Math.floor(date.getHours() /steps) * steps); + break; + } + return d; +}; + +time.isStartOfDay = function(d, dateClassObj, dateModule){ + // summary: + // Tests if the specified date represents the starts of day. + // d: Date + // The date to test. + // dateClassObj: Object? + // The Date class used, by default the native Date. + // dateModule: Object? + // Object that contains the "add" method. By default dojo.date is used. + // returns: Boolean + dateModule = dateModule || date; + return dateModule.compare(this.floorToDay(d, false, dateClassObj), d) == 0; +}; + +time.isToday = function(d, dateClassObj){ + // summary: + // Returns whether the specified date is in the current day. + // d: Date + // The date to test. + // dateClassObj: Object? + // The Date class used, by default the native Date. + // returns: Boolean + dateClassObj = dateClassObj || Date; + var today = new dateClassObj(); + return d.getFullYear() == today.getFullYear() && + d.getMonth() == today.getMonth() && + d.getDate() == today.getDate(); +}; + +time.isOverlapping = function(renderData, start1, end1, start2, end2, includeLimits){ + // summary: + // Computes if the first time range defined by the start1 and end1 parameters + // is overlapping the second time range defined by the start2 and end2 parameters. + // renderData: Object + // The render data. + // start1: Date + // The start time of the first time range. + // end1: Date + // The end time of the first time range. + // start2: Date + // The start time of the second time range. + // end2: Date + // The end time of the second time range. + // includeLimits: Boolean + // Whether include the end time or not. + // returns: Boolean + if(start1 == null || start2 == null || end1 == null || end2 == null){ + return false; + } + + var cal = renderData.dateModule; + + if(includeLimits){ + if(cal.compare(start1, end2) == 1 || cal.compare(start2, end1) == 1){ + return false; + } + }else if(cal.compare(start1, end2) != -1 || cal.compare(start2, end1) != -1){ + return false; + } + return true; +}; + +return time; +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport.js new file mode 100644 index 00000000..87d1e462 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport.js @@ -0,0 +1,4 @@ +//>>built +define("dojox/charting/BidiSupport",["dojo/_base/kernel"],function(_1){ +_1.deprecated("dojox.charting.BidiSupport is deprecated,","set \"has: {'dojo-bidi': true }\" in data-dojo-config to enable bidi support"); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport.js.uncompressed.js new file mode 100644 index 00000000..e8345873 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport.js.uncompressed.js @@ -0,0 +1,4 @@ +define("dojox/charting/BidiSupport", ["dojo/_base/kernel"], + function(kernel){ + kernel.deprecated('dojox.charting.BidiSupport is deprecated,', 'set "has: {\'dojo-bidi\': true }" in data-dojo-config to enable bidi support'); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport3D.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport3D.js new file mode 100644 index 00000000..44fd0b2c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport3D.js @@ -0,0 +1,4 @@ +//>>built +define("dojox/charting/BidiSupport3D",["dojo/_base/kernel"],function(_1){ +_1.deprecated("dojox.charting.BidiSupport3D is deprecated,","set \"has: {'dojo-bidi': true }\" in data-dojo-config to enable bidi support"); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport3D.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport3D.js.uncompressed.js new file mode 100644 index 00000000..0616afa5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/BidiSupport3D.js.uncompressed.js @@ -0,0 +1,4 @@ +define("dojox/charting/BidiSupport3D", ["dojo/_base/kernel"], + function(kernel){ + kernel.deprecated('dojox.charting.BidiSupport3D is deprecated,', 'set "has: {\'dojo-bidi\': true }" in data-dojo-config to enable bidi support'); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart.js new file mode 100644 index 00000000..2913578a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart.js @@ -0,0 +1,626 @@ +//>>built +define("dojox/charting/Chart",["../main","dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/dom-style","dojo/dom","dojo/dom-geometry","dojo/dom-construct","dojo/_base/Color","dojo/sniff","./Element","./SimpleTheme","./Series","./axis2d/common","dojox/gfx/shape","dojox/gfx","dojo/has!dojo-bidi?./bidi/Chart","dojox/lang/functional","dojox/lang/functional/fold","dojox/lang/functional/reversed"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e,_f,g,_10,_11){ +var dc=_2.getObject("charting",true,_1),_12=_11.lambda("item.clear()"),_13=_11.lambda("item.purgeGroup()"),_14=_11.lambda("item.destroy()"),_15=_11.lambda("item.dirty = false"),_16=_11.lambda("item.dirty = true"),_17=_11.lambda("item.name"); +var _18=_4(_a("dojo-bidi")?"dojox.charting.NonBidiChart":"dojox.charting.Chart",null,{constructor:function(_19,_1a){ +if(!_1a){ +_1a={}; +} +this.margins=_1a.margins?_1a.margins:{l:10,t:10,r:10,b:10}; +this.stroke=_1a.stroke; +this.fill=_1a.fill; +this.delayInMs=_1a.delayInMs||200; +this.title=_1a.title; +this.titleGap=_1a.titleGap; +this.titlePos=_1a.titlePos; +this.titleFont=_1a.titleFont; +this.titleFontColor=_1a.titleFontColor; +this.chartTitle=null; +this.htmlLabels=true; +if("htmlLabels" in _1a){ +this.htmlLabels=_1a.htmlLabels; +} +this.theme=null; +this.axes={}; +this.stack=[]; +this.plots={}; +this.series=[]; +this.runs={}; +this.dirty=true; +this.node=_6.byId(_19); +var box=_7.getMarginBox(_19); +this.surface=g.createSurface(this.node,box.w||400,box.h||300); +if(this.surface.declaredClass.indexOf("vml")==-1){ +this._nativeClip=true; +} +},destroy:function(){ +_3.forEach(this.series,_14); +_3.forEach(this.stack,_14); +_11.forIn(this.axes,_14); +this.surface.destroy(); +if(this.chartTitle&&this.chartTitle.tagName){ +_8.destroy(this.chartTitle); +} +},getCoords:function(){ +var _1b=this.node; +var s=_5.getComputedStyle(_1b),_1c=_7.getMarginBox(_1b,s); +var abs=_7.position(_1b,true); +_1c.x=abs.x; +_1c.y=abs.y; +return _1c; +},setTheme:function(_1d){ +this.theme=_1d.clone(); +this.dirty=true; +return this; +},addAxis:function(_1e,_1f){ +var _20,_21=_1f&&_1f.type||"Default"; +if(typeof _21=="string"){ +if(!dc.axis2d||!dc.axis2d[_21]){ +throw Error("Can't find axis: "+_21+" - Check "+"require() dependencies."); +} +_20=new dc.axis2d[_21](this,_1f); +}else{ +_20=new _21(this,_1f); +} +_20.name=_1e; +_20.dirty=true; +if(_1e in this.axes){ +this.axes[_1e].destroy(); +} +this.axes[_1e]=_20; +this.dirty=true; +return this; +},getAxis:function(_22){ +return this.axes[_22]; +},removeAxis:function(_23){ +if(_23 in this.axes){ +this.axes[_23].destroy(); +delete this.axes[_23]; +this.dirty=true; +} +return this; +},addPlot:function(_24,_25){ +var _26,_27=_25&&_25.type||"Default"; +if(typeof _27=="string"){ +if(!dc.plot2d||!dc.plot2d[_27]){ +throw Error("Can't find plot: "+_27+" - didn't you forget to dojo"+".require() it?"); +} +_26=new dc.plot2d[_27](this,_25); +}else{ +_26=new _27(this,_25); +} +_26.name=_24; +_26.dirty=true; +if(_24 in this.plots){ +this.stack[this.plots[_24]].destroy(); +this.stack[this.plots[_24]]=_26; +}else{ +this.plots[_24]=this.stack.length; +this.stack.push(_26); +} +this.dirty=true; +return this; +},getPlot:function(_28){ +return this.stack[this.plots[_28]]; +},removePlot:function(_29){ +if(_29 in this.plots){ +var _2a=this.plots[_29]; +delete this.plots[_29]; +this.stack[_2a].destroy(); +this.stack.splice(_2a,1); +_11.forIn(this.plots,function(idx,_2b,_2c){ +if(idx>_2a){ +_2c[_2b]=idx-1; +} +}); +var ns=_3.filter(this.series,function(run){ +return run.plot!=_29; +}); +if(ns.length_42){ +_44[_43]=idx-1; +} +}); +this.dirty=true; +} +return this; +},updateSeries:function(_45,_46,_47){ +if(_45 in this.runs){ +var run=this.series[this.runs[_45]]; +run.update(_46); +if(_47){ +this.dirty=true; +}else{ +this._invalidateDependentPlots(run.plot,false); +this._invalidateDependentPlots(run.plot,true); +} +} +return this; +},getSeriesOrder:function(_48){ +return _11.map(_11.filter(this.series,function(run){ +return run.plot==_48; +}),_17); +},setSeriesOrder:function(_49){ +var _4a,_4b={},_4c=_11.filter(_49,function(_4d){ +if(!(_4d in this.runs)||(_4d in _4b)){ +return false; +} +var run=this.series[this.runs[_4d]]; +if(_4a){ +if(run.plot!=_4a){ +return false; +} +}else{ +_4a=run.plot; +} +_4b[_4d]=1; +return true; +},this); +_11.forEach(this.series,function(run){ +var _4e=run.name; +if(!(_4e in _4b)&&run.plot==_4a){ +_4c.push(_4e); +} +}); +var _4f=_11.map(_4c,function(_50){ +return this.series[this.runs[_50]]; +},this); +this.series=_4f.concat(_11.filter(this.series,function(run){ +return run.plot!=_4a; +})); +_11.forEach(this.series,function(run,i){ +this.runs[run.name]=i; +},this); +this.dirty=true; +return this; +},moveSeriesToFront:function(_51){ +if(_51 in this.runs){ +var _52=this.runs[_51],_53=this.getSeriesOrder(this.series[_52].plot); +if(_51!=_53[0]){ +_53.splice(_52,1); +_53.unshift(_51); +return this.setSeriesOrder(_53); +} +} +return this; +},moveSeriesToBack:function(_54){ +if(_54 in this.runs){ +var _55=this.runs[_54],_56=this.getSeriesOrder(this.series[_55].plot); +if(_54!=_56[_56.length-1]){ +_56.splice(_55,1); +_56.push(_54); +return this.setSeriesOrder(_56); +} +} +return this; +},resize:function(_57,_58){ +switch(arguments.length){ +case 1: +_7.setMarginBox(this.node,_57); +break; +case 2: +_7.setMarginBox(this.node,{w:_57,h:_58}); +break; +} +var box=_7.getMarginBox(this.node); +var d=this.surface.getDimensions(); +if(d.width!=box.w||d.height!=box.h){ +this.surface.setDimensions(box.w,box.h); +this.dirty=true; +return this.render(); +}else{ +return this; +} +},getGeometry:function(){ +var ret={}; +_11.forIn(this.axes,function(_59){ +if(_59.initialized()){ +ret[_59.name]={name:_59.name,vertical:_59.vertical,scaler:_59.scaler,ticks:_59.ticks}; +} +}); +return ret; +},setAxisWindow:function(_5a,_5b,_5c,_5d){ +var _5e=this.axes[_5a]; +if(_5e){ +_5e.setWindow(_5b,_5c); +_3.forEach(this.stack,function(_5f){ +if(_5f.hAxis==_5a||_5f.vAxis==_5a){ +_5f.zoom=_5d; +} +}); +} +return this; +},setWindow:function(sx,sy,dx,dy,_60){ +if(!("plotArea" in this)){ +this.calculateGeometry(); +} +_11.forIn(this.axes,function(_61){ +var _62,_63,_64=_61.getScaler().bounds,s=_64.span/(_64.upper-_64.lower); +if(_61.vertical){ +_62=sy; +_63=dy/s/_62; +}else{ +_62=sx; +_63=dx/s/_62; +} +_61.setWindow(_62,_63); +}); +_3.forEach(this.stack,function(_65){ +_65.zoom=_60; +}); +return this; +},zoomIn:function(_66,_67,_68){ +var _69=this.axes[_66]; +if(_69){ +var _6a,_6b,_6c=_69.getScaler().bounds; +var _6d=Math.min(_67[0],_67[1]); +var _6e=Math.max(_67[0],_67[1]); +_6d=_67[0]<_6c.lower?_6c.lower:_6d; +_6e=_67[1]>_6c.upper?_6c.upper:_6e; +_6a=(_6c.upper-_6c.lower)/(_6e-_6d); +_6b=_6d-_6c.lower; +this.setAxisWindow(_66,_6a,_6b); +if(_68){ +this.delayedRender(); +}else{ +this.render(); +} +} +},calculateGeometry:function(){ +if(this.dirty){ +return this.fullGeometry(); +} +var _6f=_3.filter(this.stack,function(_70){ +return _70.dirty||(_70.hAxis&&this.axes[_70.hAxis].dirty)||(_70.vAxis&&this.axes[_70.vAxis].dirty); +},this); +_71(_6f,this.plotArea); +return this; +},fullGeometry:function(){ +this._makeDirty(); +_3.forEach(this.stack,_12); +if(!this.theme){ +this.setTheme(new _c()); +} +_3.forEach(this.series,function(run){ +if(!(run.plot in this.plots)){ +if(!dc.plot2d||!dc.plot2d.Default){ +throw Error("Can't find plot: Default - didn't you forget to dojo"+".require() it?"); +} +var _72=new dc.plot2d.Default(this,{}); +_72.name=run.plot; +this.plots[run.plot]=this.stack.length; +this.stack.push(_72); +} +this.stack[this.plots[run.plot]].addSeries(run); +},this); +_3.forEach(this.stack,function(_73){ +if(_73.assignAxes){ +_73.assignAxes(this.axes); +} +},this); +var dim=this.dim=this.surface.getDimensions(); +dim.width=g.normalizedLength(dim.width); +dim.height=g.normalizedLength(dim.height); +_11.forIn(this.axes,_12); +_71(this.stack,dim); +var _74=this.offsets={l:0,r:0,t:0,b:0}; +var _75=this; +_11.forIn(this.axes,function(_76){ +if(_a("dojo-bidi")){ +_75._resetLeftBottom(_76); +} +_11.forIn(_76.getOffsets(),function(o,i){ +_74[i]=Math.max(o,_74[i]); +}); +}); +if(this.title){ +this.titleGap=(this.titleGap==0)?0:this.titleGap||this.theme.chart.titleGap||20; +this.titlePos=this.titlePos||this.theme.chart.titlePos||"top"; +this.titleFont=this.titleFont||this.theme.chart.titleFont; +this.titleFontColor=this.titleFontColor||this.theme.chart.titleFontColor||"black"; +var _77=g.normalizedLength(g.splitFontString(this.titleFont).size); +_74[this.titlePos=="top"?"t":"b"]+=(_77+this.titleGap); +} +_11.forIn(this.margins,function(o,i){ +_74[i]+=o; +}); +this.plotArea={width:dim.width-_74.l-_74.r,height:dim.height-_74.t-_74.b}; +_11.forIn(this.axes,_12); +_71(this.stack,this.plotArea); +return this; +},render:function(){ +if(this._delayedRenderHandle){ +clearTimeout(this._delayedRenderHandle); +this._delayedRenderHandle=null; +} +if(this.theme){ +this.theme.clear(); +} +if(this.dirty){ +return this.fullRender(); +} +this.calculateGeometry(); +_11.forEachRev(this.stack,function(_78){ +_78.render(this.dim,this.offsets); +},this); +_11.forIn(this.axes,function(_79){ +_79.render(this.dim,this.offsets); +},this); +this._makeClean(); +return this; +},fullRender:function(){ +this.fullGeometry(); +var _7a=this.offsets,dim=this.dim; +var w=Math.max(0,dim.width-_7a.l-_7a.r),h=Math.max(0,dim.height-_7a.t-_7a.b); +_3.forEach(this.series,_13); +_11.forIn(this.axes,_13); +_3.forEach(this.stack,_13); +var _7b=this.surface.children; +if(_f.dispose){ +for(var i=0;i<_7b.length;++i){ +_f.dispose(_7b[i]); +} +} +if(this.chartTitle&&this.chartTitle.tagName){ +_8.destroy(this.chartTitle); +} +this.surface.clear(); +this.chartTitle=null; +this._renderChartBackground(dim,_7a); +if(this._nativeClip){ +this._renderPlotBackground(dim,_7a,w,h); +}else{ +this._renderPlotBackground(dim,_7a,w,h); +} +_11.foldr(this.stack,function(z,_7c){ +return _7c.render(dim,_7a),0; +},0); +if(!this._nativeClip){ +this._renderChartBackground(dim,_7a); +} +if(this.title){ +var _7d=(g.renderer=="canvas")&&this.htmlLabels,_7e=_7d||!_a("ie")&&!_a("opera")&&this.htmlLabels?"html":"gfx",_7f=g.normalizedLength(g.splitFontString(this.titleFont).size); +this.chartTitle=_e.createText[_7e](this,this.surface,dim.width/2,this.titlePos=="top"?_7f+this.margins.t:dim.height-this.margins.b,"middle",this.title,this.titleFont,this.titleFontColor); +} +_11.forIn(this.axes,function(_80){ +_80.render(dim,_7a); +}); +this._makeClean(); +return this; +},_renderChartBackground:function(dim,_81){ +var t=this.theme,_82; +var _83=this.fill!==undefined?this.fill:(t.chart&&t.chart.fill); +var _84=this.stroke!==undefined?this.stroke:(t.chart&&t.chart.stroke); +if(_83=="inherit"){ +var _85=this.node; +_83=new _9(_5.get(_85,"backgroundColor")); +while(_83.a==0&&_85!=document.documentElement){ +_83=new _9(_5.get(_85,"backgroundColor")); +_85=_85.parentNode; +} +} +if(_83){ +if(this._nativeClip){ +_83=_b.prototype._shapeFill(_b.prototype._plotFill(_83,dim),{x:0,y:0,width:dim.width+1,height:dim.height+1}); +this.surface.createRect({width:dim.width+1,height:dim.height+1}).setFill(_83); +}else{ +_83=_b.prototype._plotFill(_83,dim,_81); +if(_81.l){ +_82={x:0,y:0,width:_81.l,height:dim.height+1}; +this.surface.createRect(_82).setFill(_b.prototype._shapeFill(_83,_82)); +} +if(_81.r){ +_82={x:dim.width-_81.r,y:0,width:_81.r+1,height:dim.height+2}; +this.surface.createRect(_82).setFill(_b.prototype._shapeFill(_83,_82)); +} +if(_81.t){ +_82={x:0,y:0,width:dim.width+1,height:_81.t}; +this.surface.createRect(_82).setFill(_b.prototype._shapeFill(_83,_82)); +} +if(_81.b){ +_82={x:0,y:dim.height-_81.b,width:dim.width+1,height:_81.b+2}; +this.surface.createRect(_82).setFill(_b.prototype._shapeFill(_83,_82)); +} +} +} +if(_84){ +this.surface.createRect({width:dim.width-1,height:dim.height-1}).setStroke(_84); +} +},_renderPlotBackground:function(dim,_86,w,h){ +var t=this.theme; +var _87=t.plotarea&&t.plotarea.fill; +var _88=t.plotarea&&t.plotarea.stroke; +var _89={x:_86.l-1,y:_86.t-1,width:w+2,height:h+2}; +if(_87){ +_87=_b.prototype._shapeFill(_b.prototype._plotFill(_87,dim,_86),_89); +this.surface.createRect(_89).setFill(_87); +} +if(_88){ +this.surface.createRect({x:_86.l,y:_86.t,width:w+1,height:h+1}).setStroke(_88); +} +},delayedRender:function(){ +if(!this._delayedRenderHandle){ +this._delayedRenderHandle=setTimeout(_2.hitch(this,function(){ +this.render(); +}),this.delayInMs); +} +return this; +},connectToPlot:function(_8a,_8b,_8c){ +return _8a in this.plots?this.stack[this.plots[_8a]].connect(_8b,_8c):null; +},fireEvent:function(_8d,_8e,_8f){ +if(_8d in this.runs){ +var _90=this.series[this.runs[_8d]].plot; +if(_90 in this.plots){ +var _91=this.stack[this.plots[_90]]; +if(_91){ +_91.fireEvent(_8d,_8e,_8f); +} +} +} +return this; +},_makeClean:function(){ +_3.forEach(this.axes,_15); +_3.forEach(this.stack,_15); +_3.forEach(this.series,_15); +this.dirty=false; +},_makeDirty:function(){ +_3.forEach(this.axes,_16); +_3.forEach(this.stack,_16); +_3.forEach(this.series,_16); +this.dirty=true; +},_invalidateDependentPlots:function(_92,_93){ +if(_92 in this.plots){ +var _94=this.stack[this.plots[_92]],_95,_96=_93?"vAxis":"hAxis"; +if(_94[_96]){ +_95=this.axes[_94[_96]]; +if(_95&&_95.dependOnData()){ +_95.dirty=true; +_3.forEach(this.stack,function(p){ +if(p[_96]&&p[_96]==_94[_96]){ +p.dirty=true; +} +}); +} +}else{ +_94.dirty=true; +} +} +},setDir:function(dir){ +return this; +},_resetLeftBottom:function(_97){ +},formatTruncatedLabel:function(_98,_99,_9a){ +}}); +function _9b(_9c){ +return {min:_9c.hmin,max:_9c.hmax}; +}; +function _9d(_9e){ +return {min:_9e.vmin,max:_9e.vmax}; +}; +function _9f(_a0,h){ +_a0.hmin=h.min; +_a0.hmax=h.max; +}; +function _a1(_a2,v){ +_a2.vmin=v.min; +_a2.vmax=v.max; +}; +function _a3(_a4,_a5){ +if(_a4&&_a5){ +_a4.min=Math.min(_a4.min,_a5.min); +_a4.max=Math.max(_a4.max,_a5.max); +} +return _a4||_a5; +}; +function _71(_a6,_a7){ +var _a8={},_a9={}; +_3.forEach(_a6,function(_aa){ +var _ab=_a8[_aa.name]=_aa.getSeriesStats(); +if(_aa.hAxis){ +_a9[_aa.hAxis]=_a3(_a9[_aa.hAxis],_9b(_ab)); +} +if(_aa.vAxis){ +_a9[_aa.vAxis]=_a3(_a9[_aa.vAxis],_9d(_ab)); +} +}); +_3.forEach(_a6,function(_ac){ +var _ad=_a8[_ac.name]; +if(_ac.hAxis){ +_9f(_ad,_a9[_ac.hAxis]); +} +if(_ac.vAxis){ +_a1(_ad,_a9[_ac.vAxis]); +} +_ac.initializeScalers(_a7,_ad); +}); +}; +return _a("dojo-bidi")?_4("dojox.charting.Chart",[_18,_10]):_18; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart.js.uncompressed.js new file mode 100644 index 00000000..45b41727 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart.js.uncompressed.js @@ -0,0 +1,1220 @@ +define("dojox/charting/Chart", ["../main", "dojo/_base/lang", "dojo/_base/array","dojo/_base/declare", "dojo/dom-style", + "dojo/dom", "dojo/dom-geometry", "dojo/dom-construct","dojo/_base/Color", "dojo/sniff", + "./Element", "./SimpleTheme", "./Series", "./axis2d/common", "dojox/gfx/shape", + "dojox/gfx", "dojo/has!dojo-bidi?./bidi/Chart", "dojox/lang/functional", "dojox/lang/functional/fold", "dojox/lang/functional/reversed"], + function(dojox, lang, arr, declare, domStyle, + dom, domGeom, domConstruct, Color, has, + Element, SimpleTheme, Series, common, shape, + g, BidiChart, func){ + /*===== + var __ChartCtorArgs = { + // summary: + // The keyword arguments that can be passed in a Chart constructor. + // margins: Object? + // Optional margins for the chart, in the form of { l, t, r, b}. + // stroke: dojox.gfx.Stroke? + // An optional outline/stroke for the chart. + // fill: dojox.gfx.Fill? + // An optional fill for the chart. + // delayInMs: Number + // Delay in ms for delayedRender(). Default: 200. + }; + =====*/ + + /*===== + var __SeriesCtorArgs = { + // summary: + // An optional arguments object that can be used in the Series constructor. + // plot: String? + // The plot (by name) that this series belongs to. + }; + =====*/ + + /*===== + var __BaseAxisCtorArgs = { + // summary: + // Optional arguments used in the definition of an invisible axis. + // vertical: Boolean? + // A flag that says whether an axis is vertical (i.e. y axis) or horizontal. Default is false (horizontal). + // min: Number? + // The smallest value on an axis. Default is 0. + // max: Number? + // The largest value on an axis. Default is 1. + }; + =====*/ + + var dc = lang.getObject("charting", true, dojox), + clear = func.lambda("item.clear()"), + purge = func.lambda("item.purgeGroup()"), + destroy = func.lambda("item.destroy()"), + makeClean = func.lambda("item.dirty = false"), + makeDirty = func.lambda("item.dirty = true"), + getName = func.lambda("item.name"); + + var Chart = declare(has("dojo-bidi")? "dojox.charting.NonBidiChart" : "dojox.charting.Chart", null, { + // summary: + // The main chart object in dojox.charting. This will create a two dimensional + // chart based on dojox.gfx. + // + // description: + // dojox.charting.Chart is the primary object used for any kind of charts. It + // is simple to create--just pass it a node reference, which is used as the + // container for the chart--and a set of optional keyword arguments and go. + // + // Note that like most of dojox.gfx, most of dojox.charting.Chart's methods are + // designed to return a reference to the chart itself, to allow for functional + // chaining. This makes defining everything on a Chart very easy to do. + // + // example: + // Create an area chart, with smoothing. + // | require(["dojox/charting/Chart", "dojox/charting/themes/Shrooms", "dojox/charting/plot2d/Areas", ...], + // | function(Chart, Shrooms, Areas, ...){ + // | new Chart(node) + // | .addPlot("default", { type: Areas, tension: "X" }) + // | .setTheme(Shrooms) + // | .addSeries("Series A", [1, 2, 0.5, 1.5, 1, 2.8, 0.4]) + // | .addSeries("Series B", [2.6, 1.8, 2, 1, 1.4, 0.7, 2]) + // | .addSeries("Series C", [6.3, 1.8, 3, 0.5, 4.4, 2.7, 2]) + // | .render(); + // | }); + // + // example: + // The form of data in a data series can take a number of forms: a simple array, + // an array of objects {x,y}, or something custom (as determined by the plot). + // Here's an example of a Candlestick chart, which expects an object of + // { open, high, low, close }. + // | require(["dojox/charting/Chart", "dojox/charting/plot2d/Candlesticks", ...], + // | function(Chart, Candlesticks, ...){ + // | new Chart(node) + // | .addPlot("default", {type: Candlesticks, gap: 1}) + // | .addAxis("x", {fixLower: "major", fixUpper: "major", includeZero: true}) + // | .addAxis("y", {vertical: true, fixLower: "major", fixUpper: "major", natural: true}) + // | .addSeries("Series A", [ + // | { open: 20, close: 16, high: 22, low: 8 }, + // | { open: 16, close: 22, high: 26, low: 6, mid: 18 }, + // | { open: 22, close: 18, high: 22, low: 11, mid: 21 }, + // | { open: 18, close: 29, high: 32, low: 14, mid: 27 }, + // | { open: 29, close: 24, high: 29, low: 13, mid: 27 }, + // | { open: 24, close: 8, high: 24, low: 5 }, + // | { open: 8, close: 16, high: 22, low: 2 }, + // | { open: 16, close: 12, high: 19, low: 7 }, + // | { open: 12, close: 20, high: 22, low: 8 }, + // | { open: 20, close: 16, high: 22, low: 8 }, + // | { open: 16, close: 22, high: 26, low: 6, mid: 18 }, + // | { open: 22, close: 18, high: 22, low: 11, mid: 21 }, + // | { open: 18, close: 29, high: 32, low: 14, mid: 27 }, + // | { open: 29, close: 24, high: 29, low: 13, mid: 27 }, + // | { open: 24, close: 8, high: 24, low: 5 }, + // | { open: 8, close: 16, high: 22, low: 2 }, + // | { open: 16, close: 12, high: 19, low: 7 }, + // | { open: 12, close: 20, high: 22, low: 8 }, + // | { open: 20, close: 16, high: 22, low: 8 }, + // | { open: 16, close: 22, high: 26, low: 6 }, + // | { open: 22, close: 18, high: 22, low: 11 }, + // | { open: 18, close: 29, high: 32, low: 14 }, + // | { open: 29, close: 24, high: 29, low: 13 }, + // | { open: 24, close: 8, high: 24, low: 5 }, + // | { open: 8, close: 16, high: 22, low: 2 }, + // | { open: 16, close: 12, high: 19, low: 7 }, + // | { open: 12, close: 20, high: 22, low: 8 }, + // | { open: 20, close: 16, high: 22, low: 8 } + // | ], + // | { stroke: { color: "green" }, fill: "lightgreen" } + // | ) + // | .render(); + // | }); + + // theme: dojox/charting/SimpleTheme? + // An optional theme to use for styling the chart. + // axes: dojox/charting/axis2d/Base{}? + // A map of axes for use in plotting a chart. + // stack: dojox/charting/plot2d/Base[] + // A stack of plotters. + // plots: dojox/charting/plot2d/Base{} + // A map of plotter indices + // series: dojox/charting/Series[] + // The stack of data runs used to create plots. + // runs: dojox/charting/Series{} + // A map of series indices + // margins: Object? + // The margins around the chart. Default is { l:10, t:10, r:10, b:10 }. + // stroke: dojox.gfx.Stroke? + // The outline of the chart (stroke in vector graphics terms). + // fill: dojox.gfx.Fill? + // The color for the chart. + // node: DOMNode + // The container node passed to the constructor. + // surface: dojox/gfx/shape.Surface + // The main graphics surface upon which a chart is drawn. + // dirty: Boolean + // A boolean flag indicating whether or not the chart needs to be updated/re-rendered. + // htmlLabels: Boolean + // A boolean flag indicating whether or not it should try to use HTML-based labels for the title or not. + // The default is true. The only caveat is IE and Opera browsers will always use GFX-based labels. + + constructor: function(/* DOMNode */node, /* __ChartCtorArgs? */kwArgs){ + // summary: + // The constructor for a new Chart. Initializes all parameters used for a chart. + // returns: dojox/charting/Chart + // The newly created chart. + + // initialize parameters + if(!kwArgs){ kwArgs = {}; } + this.margins = kwArgs.margins ? kwArgs.margins : {l: 10, t: 10, r: 10, b: 10}; + this.stroke = kwArgs.stroke; + this.fill = kwArgs.fill; + this.delayInMs = kwArgs.delayInMs || 200; + this.title = kwArgs.title; + this.titleGap = kwArgs.titleGap; + this.titlePos = kwArgs.titlePos; + this.titleFont = kwArgs.titleFont; + this.titleFontColor = kwArgs.titleFontColor; + this.chartTitle = null; + this.htmlLabels = true; + if("htmlLabels" in kwArgs){ + this.htmlLabels = kwArgs.htmlLabels; + } + + // default initialization + this.theme = null; + this.axes = {}; // map of axes + this.stack = []; // stack of plotters + this.plots = {}; // map of plotter indices + this.series = []; // stack of data runs + this.runs = {}; // map of data run indices + this.dirty = true; + + // create a surface + this.node = dom.byId(node); + var box = domGeom.getMarginBox(node); + this.surface = g.createSurface(this.node, box.w || 400, box.h || 300); + if(this.surface.declaredClass.indexOf("vml") == -1){ + // except if vml use native clipping + this._nativeClip = true; + } + }, + destroy: function(){ + // summary: + // Cleanup when a chart is to be destroyed. + // returns: void + arr.forEach(this.series, destroy); + arr.forEach(this.stack, destroy); + func.forIn(this.axes, destroy); + this.surface.destroy(); + if(this.chartTitle && this.chartTitle.tagName){ + // destroy title if it is a DOM node + domConstruct.destroy(this.chartTitle); + } + }, + getCoords: function(){ + // summary: + // Get the coordinates and dimensions of the containing DOMNode, as + // returned by dojo.coords. + // returns: Object + // The resulting coordinates of the chart. See dojo.coords for details. + var node = this.node; + var s = domStyle.getComputedStyle(node), coords = domGeom.getMarginBox(node, s); + var abs = domGeom.position(node, true); + coords.x = abs.x; + coords.y = abs.y; + return coords; // Object + }, + setTheme: function(theme){ + // summary: + // Set a theme of the chart. + // theme: dojox/charting/SimpleTheme + // The theme to be used for visual rendering. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + this.theme = theme.clone(); + this.dirty = true; + return this; // dojox/charting/Chart + }, + addAxis: function(name, kwArgs){ + // summary: + // Add an axis to the chart, for rendering. + // name: String + // The name of the axis. + // kwArgs: __BaseAxisCtorArgs? + // An optional keyword arguments object for use in defining details of an axis. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + var axis, axisType = kwArgs && kwArgs.type || "Default"; + if(typeof axisType == "string"){ + if(!dc.axis2d || !dc.axis2d[axisType]){ + throw Error("Can't find axis: " + axisType + " - Check " + "require() dependencies."); + } + axis = new dc.axis2d[axisType](this, kwArgs); + }else{ + axis = new axisType(this, kwArgs); + } + axis.name = name; + axis.dirty = true; + if(name in this.axes){ + this.axes[name].destroy(); + } + this.axes[name] = axis; + this.dirty = true; + return this; // dojox/charting/Chart + }, + getAxis: function(name){ + // summary: + // Get the given axis, by name. + // name: String + // The name the axis was defined by. + // returns: dojox/charting/axis2d/Default + // The axis as stored in the chart's axis map. + return this.axes[name]; // dojox/charting/axis2d/Default + }, + removeAxis: function(name){ + // summary: + // Remove the axis that was defined using name. + // name: String + // The axis name, as defined in addAxis. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + if(name in this.axes){ + // destroy the axis + this.axes[name].destroy(); + delete this.axes[name]; + // mark the chart as dirty + this.dirty = true; + } + return this; // dojox/charting/Chart + }, + addPlot: function(name, kwArgs){ + // summary: + // Add a new plot to the chart, defined by name and using the optional keyword arguments object. + // Note that dojox.charting assumes the main plot to be called "default"; if you do not have + // a plot called "default" and attempt to add data series to the chart without specifying the + // plot to be rendered on, you WILL get errors. + // name: String + // The name of the plot to be added to the chart. If you only plan on using one plot, call it "default". + // kwArgs: dojox.charting.plot2d.__PlotCtorArgs + // An object with optional parameters for the plot in question. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + var plot, plotType = kwArgs && kwArgs.type || "Default"; + if(typeof plotType == "string"){ + if(!dc.plot2d || !dc.plot2d[plotType]){ + throw Error("Can't find plot: " + plotType + " - didn't you forget to dojo" + ".require() it?"); + } + plot = new dc.plot2d[plotType](this, kwArgs); + }else{ + plot = new plotType(this, kwArgs); + } + plot.name = name; + plot.dirty = true; + if(name in this.plots){ + this.stack[this.plots[name]].destroy(); + this.stack[this.plots[name]] = plot; + }else{ + this.plots[name] = this.stack.length; + this.stack.push(plot); + } + this.dirty = true; + return this; // dojox/charting/Chart + }, + getPlot: function(name){ + // summary: + // Get the given plot, by name. + // name: String + // The name the plot was defined by. + // returns: dojox/charting/plot2d/Base + // The plot. + return this.stack[this.plots[name]]; + }, + removePlot: function(name){ + // summary: + // Remove the plot defined using name from the chart's plot stack. + // name: String + // The name of the plot as defined using addPlot. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + if(name in this.plots){ + // get the index and remove the name + var index = this.plots[name]; + delete this.plots[name]; + // destroy the plot + this.stack[index].destroy(); + // remove the plot from the stack + this.stack.splice(index, 1); + // update indices to reflect the shift + func.forIn(this.plots, function(idx, name, plots){ + if(idx > index){ + plots[name] = idx - 1; + } + }); + // remove all related series + var ns = arr.filter(this.series, function(run){ return run.plot != name; }); + if(ns.length < this.series.length){ + // kill all removed series + arr.forEach(this.series, function(run){ + if(run.plot == name){ + run.destroy(); + } + }); + // rebuild all necessary data structures + this.runs = {}; + arr.forEach(ns, function(run, index){ + this.runs[run.plot] = index; + }, this); + this.series = ns; + } + // mark the chart as dirty + this.dirty = true; + } + return this; // dojox/charting/Chart + }, + getPlotOrder: function(){ + // summary: + // Returns an array of plot names in the current order + // (the top-most plot is the first). + // returns: Array + return func.map(this.stack, getName); // Array + }, + setPlotOrder: function(newOrder){ + // summary: + // Sets new order of plots. newOrder cannot add or remove + // plots. Wrong names, or dups are ignored. + // newOrder: Array + // Array of plot names compatible with getPlotOrder(). + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + var names = {}, + order = func.filter(newOrder, function(name){ + if(!(name in this.plots) || (name in names)){ + return false; + } + names[name] = 1; + return true; + }, this); + if(order.length < this.stack.length){ + func.forEach(this.stack, function(plot){ + var name = plot.name; + if(!(name in names)){ + order.push(name); + } + }); + } + var newStack = func.map(order, function(name){ + return this.stack[this.plots[name]]; + }, this); + func.forEach(newStack, function(plot, i){ + this.plots[plot.name] = i; + }, this); + this.stack = newStack; + this.dirty = true; + return this; // dojox/charting/Chart + }, + movePlotToFront: function(name){ + // summary: + // Moves a given plot to front. + // name: String + // Plot's name to move. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + if(name in this.plots){ + var index = this.plots[name]; + if(index){ + var newOrder = this.getPlotOrder(); + newOrder.splice(index, 1); + newOrder.unshift(name); + return this.setPlotOrder(newOrder); // dojox/charting/Chart + } + } + return this; // dojox/charting/Chart + }, + movePlotToBack: function(name){ + // summary: + // Moves a given plot to back. + // name: String + // Plot's name to move. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + if(name in this.plots){ + var index = this.plots[name]; + if(index < this.stack.length - 1){ + var newOrder = this.getPlotOrder(); + newOrder.splice(index, 1); + newOrder.push(name); + return this.setPlotOrder(newOrder); // dojox/charting/Chart + } + } + return this; // dojox/charting/Chart + }, + addSeries: function(name, data, kwArgs){ + // summary: + // Add a data series to the chart for rendering. + // name: String + // The name of the data series to be plotted. + // data: Array|Object + // The array of data points (either numbers or objects) that + // represents the data to be drawn. Or it can be an object. In + // the latter case, it should have a property "data" (an array), + // destroy(), and setSeriesObject(). + // kwArgs: __SeriesCtorArgs? + // An optional keyword arguments object that will be mixed into + // the resultant series object. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + var run = new Series(this, data, kwArgs); + run.name = name; + if(name in this.runs){ + this.series[this.runs[name]].destroy(); + this.series[this.runs[name]] = run; + }else{ + this.runs[name] = this.series.length; + this.series.push(run); + } + this.dirty = true; + // fix min/max + if(!("ymin" in run) && "min" in run){ run.ymin = run.min; } + if(!("ymax" in run) && "max" in run){ run.ymax = run.max; } + return this; // dojox/charting/Chart + }, + getSeries: function(name){ + // summary: + // Get the given series, by name. + // name: String + // The name the series was defined by. + // returns: dojox/charting/Series + // The series. + return this.series[this.runs[name]]; + }, + removeSeries: function(name){ + // summary: + // Remove the series defined by name from the chart. + // name: String + // The name of the series as defined by addSeries. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + if(name in this.runs){ + // get the index and remove the name + var index = this.runs[name]; + delete this.runs[name]; + // destroy the run + this.series[index].destroy(); + // remove the run from the stack of series + this.series.splice(index, 1); + // update indices to reflect the shift + func.forIn(this.runs, function(idx, name, runs){ + if(idx > index){ + runs[name] = idx - 1; + } + }); + this.dirty = true; + } + return this; // dojox/charting/Chart + }, + updateSeries: function(name, data, offsets){ + // summary: + // Update the given series with a new set of data points. + // name: String + // The name of the series as defined in addSeries. + // data: Array|Object + // The array of data points (either numbers or objects) that + // represents the data to be drawn. Or it can be an object. In + // the latter case, it should have a property "data" (an array), + // destroy(), and setSeriesObject(). + // offsets: Boolean? + // If true recomputes the offsets of the chart based on the new + // data. This is useful if the range of data is drastically changing + // and offsets need to be recomputed. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + if(name in this.runs){ + var run = this.series[this.runs[name]]; + run.update(data); + if(offsets){ + this.dirty = true; + }else{ + this._invalidateDependentPlots(run.plot, false); + this._invalidateDependentPlots(run.plot, true); + } + } + return this; // dojox/charting/Chart + }, + getSeriesOrder: function(plotName){ + // summary: + // Returns an array of series names in the current order + // (the top-most series is the first) within a plot. + // plotName: String + // Plot's name. + // returns: Array + return func.map(func.filter(this.series, function(run){ + return run.plot == plotName; + }), getName); + }, + setSeriesOrder: function(newOrder){ + // summary: + // Sets new order of series within a plot. newOrder cannot add + // or remove series. Wrong names, or dups are ignored. + // newOrder: Array + // Array of series names compatible with getPlotOrder(). All + // series should belong to the same plot. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + var plotName, names = {}, + order = func.filter(newOrder, function(name){ + if(!(name in this.runs) || (name in names)){ + return false; + } + var run = this.series[this.runs[name]]; + if(plotName){ + if(run.plot != plotName){ + return false; + } + }else{ + plotName = run.plot; + } + names[name] = 1; + return true; + }, this); + func.forEach(this.series, function(run){ + var name = run.name; + if(!(name in names) && run.plot == plotName){ + order.push(name); + } + }); + var newSeries = func.map(order, function(name){ + return this.series[this.runs[name]]; + }, this); + this.series = newSeries.concat(func.filter(this.series, function(run){ + return run.plot != plotName; + })); + func.forEach(this.series, function(run, i){ + this.runs[run.name] = i; + }, this); + this.dirty = true; + return this; // dojox/charting/Chart + }, + moveSeriesToFront: function(name){ + // summary: + // Moves a given series to front of a plot. + // name: String + // Series' name to move. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + if(name in this.runs){ + var index = this.runs[name], + newOrder = this.getSeriesOrder(this.series[index].plot); + if(name != newOrder[0]){ + newOrder.splice(index, 1); + newOrder.unshift(name); + return this.setSeriesOrder(newOrder); // dojox/charting/Chart + } + } + return this; // dojox/charting/Chart + }, + moveSeriesToBack: function(name){ + // summary: + // Moves a given series to back of a plot. + // name: String + // Series' name to move. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + if(name in this.runs){ + var index = this.runs[name], + newOrder = this.getSeriesOrder(this.series[index].plot); + if(name != newOrder[newOrder.length - 1]){ + newOrder.splice(index, 1); + newOrder.push(name); + return this.setSeriesOrder(newOrder); // dojox/charting/Chart + } + } + return this; // dojox/charting/Chart + }, + resize: function(width, height){ + // summary: + // Resize the chart to the dimensions of width and height. + // description: + // Resize the chart and its surface to the width and height dimensions. + // If a single argument of the form {w: value1, h: value2} is provided take that argument as the dimensions to use. + // Finally if no argument is provided, resize the surface to the marginBox of the chart. + // width: Number|Object? + // The new width of the chart or the box definition. + // height: Number? + // The new height of the chart. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + switch(arguments.length){ + // case 0, do not resize the div, just the surface + case 1: + // argument, override node box + domGeom.setMarginBox(this.node, width); + break; + case 2: + // argument, override node box + domGeom.setMarginBox(this.node, {w: width, h: height}); + break; + } + // in all cases take back the computed box + var box = domGeom.getMarginBox(this.node); + var d = this.surface.getDimensions(); + if(d.width != box.w || d.height != box.h){ + // and set it on the surface + this.surface.setDimensions(box.w, box.h); + this.dirty = true; + return this.render(); // dojox/charting/Chart + }else{ + return this; + } + }, + getGeometry: function(){ + // summary: + // Returns a map of information about all axes in a chart and what they represent + // in terms of scaling (see dojox.charting.axis2d.Default.getScaler). + // returns: Object + // An map of geometry objects, a one-to-one mapping of axes. + var ret = {}; + func.forIn(this.axes, function(axis){ + if(axis.initialized()){ + ret[axis.name] = { + name: axis.name, + vertical: axis.vertical, + scaler: axis.scaler, + ticks: axis.ticks + }; + } + }); + return ret; // Object + }, + setAxisWindow: function(name, scale, offset, zoom){ + // summary: + // Zooms an axis and all dependent plots. Can be used to zoom in 1D. + // name: String + // The name of the axis as defined by addAxis. + // scale: Number + // The scale on the target axis. + // offset: Number + // Any offest, as measured by axis tick + // zoom: Boolean|Object? + // The chart zooming animation trigger. This is null by default, + // e.g. {duration: 1200}, or just set true. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + var axis = this.axes[name]; + if(axis){ + axis.setWindow(scale, offset); + arr.forEach(this.stack,function(plot){ + if(plot.hAxis == name || plot.vAxis == name){ + plot.zoom = zoom; + } + }); + } + return this; // dojox/charting/Chart + }, + setWindow: function(sx, sy, dx, dy, zoom){ + // summary: + // Zooms in or out any plots in two dimensions. + // sx: Number + // The scale for the x axis. + // sy: Number + // The scale for the y axis. + // dx: Number + // The pixel offset on the x axis. + // dy: Number + // The pixel offset on the y axis. + // zoom: Boolean|Object? + // The chart zooming animation trigger. This is null by default, + // e.g. {duration: 1200}, or just set true. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + if(!("plotArea" in this)){ + this.calculateGeometry(); + } + func.forIn(this.axes, function(axis){ + var scale, offset, bounds = axis.getScaler().bounds, + s = bounds.span / (bounds.upper - bounds.lower); + if(axis.vertical){ + scale = sy; + offset = dy / s / scale; + }else{ + scale = sx; + offset = dx / s / scale; + } + axis.setWindow(scale, offset); + }); + arr.forEach(this.stack, function(plot){ plot.zoom = zoom; }); + return this; // dojox/charting/Chart + }, + zoomIn: function(name, range, delayed){ + // summary: + // Zoom the chart to a specific range on one axis. This calls render() + // directly as a convenience method. + // name: String + // The name of the axis as defined by addAxis. + // range: Array + // The end points of the zoom range, measured in axis ticks. + var axis = this.axes[name]; + if(axis){ + var scale, offset, bounds = axis.getScaler().bounds; + var lower = Math.min(range[0],range[1]); + var upper = Math.max(range[0],range[1]); + lower = range[0] < bounds.lower ? bounds.lower : lower; + upper = range[1] > bounds.upper ? bounds.upper : upper; + scale = (bounds.upper - bounds.lower) / (upper - lower); + offset = lower - bounds.lower; + this.setAxisWindow(name, scale, offset); + if(delayed){ + this.delayedRender(); + }else{ + this.render(); + } + } + }, + calculateGeometry: function(){ + // summary: + // Calculate the geometry of the chart based on the defined axes of + // a chart. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + if(this.dirty){ + return this.fullGeometry(); + } + + // calculate geometry + var dirty = arr.filter(this.stack, function(plot){ + return plot.dirty || + (plot.hAxis && this.axes[plot.hAxis].dirty) || + (plot.vAxis && this.axes[plot.vAxis].dirty); + }, this); + calculateAxes(dirty, this.plotArea); + + return this; // dojox/charting/Chart + }, + fullGeometry: function(){ + // summary: + // Calculate the full geometry of the chart. This includes passing + // over all major elements of a chart (plots, axes, series, container) + // in order to ensure proper rendering. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + this._makeDirty(); + + // clear old values + arr.forEach(this.stack, clear); + + // rebuild new connections, and add defaults + + // set up a theme + if(!this.theme){ + this.setTheme(new SimpleTheme()); + } + + // assign series + arr.forEach(this.series, function(run){ + if(!(run.plot in this.plots)){ + // TODO remove auto-assignment + if(!dc.plot2d || !dc.plot2d.Default){ + throw Error("Can't find plot: Default - didn't you forget to dojo" + ".require() it?"); + } + var plot = new dc.plot2d.Default(this, {}); + plot.name = run.plot; + this.plots[run.plot] = this.stack.length; + this.stack.push(plot); + } + this.stack[this.plots[run.plot]].addSeries(run); + }, this); + // assign axes + arr.forEach(this.stack, function(plot){ + if(plot.assignAxes){ + plot.assignAxes(this.axes); + } + }, this); + + // calculate geometry + + // 1st pass + var dim = this.dim = this.surface.getDimensions(); + dim.width = g.normalizedLength(dim.width); + dim.height = g.normalizedLength(dim.height); + func.forIn(this.axes, clear); + calculateAxes(this.stack, dim); + + // assumption: we don't have stacked axes yet + var offsets = this.offsets = {l: 0, r: 0, t: 0, b: 0}; + // chart mirroring starts + var self = this; + func.forIn(this.axes, function(axis){ + if(has("dojo-bidi")){ + self._resetLeftBottom(axis); + } + func.forIn(axis.getOffsets(), function(o, i){ offsets[i] = Math.max(o, offsets[i]); }); + }); + // chart mirroring ends + // add title area + if(this.title){ + this.titleGap = (this.titleGap==0) ? 0 : this.titleGap || this.theme.chart.titleGap || 20; + this.titlePos = this.titlePos || this.theme.chart.titlePos || "top"; + this.titleFont = this.titleFont || this.theme.chart.titleFont; + this.titleFontColor = this.titleFontColor || this.theme.chart.titleFontColor || "black"; + var tsize = g.normalizedLength(g.splitFontString(this.titleFont).size); + offsets[this.titlePos == "top" ? "t" : "b"] += (tsize + this.titleGap); + } + // add margins + func.forIn(this.margins, function(o, i){ offsets[i] += o; }); + + // 2nd pass with realistic dimensions + this.plotArea = { + width: dim.width - offsets.l - offsets.r, + height: dim.height - offsets.t - offsets.b + }; + func.forIn(this.axes, clear); + calculateAxes(this.stack, this.plotArea); + + return this; // dojox/charting/Chart + }, + render: function(){ + // summary: + // Render the chart according to the current information defined. This should + // be the last call made when defining/creating a chart, or if data within the + // chart has been changed. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + + // do we have a delayed renderer pending? If yes we need to clear it + if(this._delayedRenderHandle){ + clearTimeout(this._delayedRenderHandle); + this._delayedRenderHandle = null; + } + + if(this.theme){ + this.theme.clear(); + } + + if(this.dirty){ + return this.fullRender(); + } + + this.calculateGeometry(); + + // go over the stack backwards + func.forEachRev(this.stack, function(plot){ plot.render(this.dim, this.offsets); }, this); + + // go over axes + func.forIn(this.axes, function(axis){ axis.render(this.dim, this.offsets); }, this); + + this._makeClean(); + + return this; // dojox/charting/Chart + }, + fullRender: function(){ + // summary: + // Force a full rendering of the chart, including full resets on the chart itself. + // You should not call this method directly unless absolutely necessary. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + + // calculate geometry + this.fullGeometry(); + var offsets = this.offsets, dim = this.dim; + var w = Math.max(0, dim.width - offsets.l - offsets.r), + h = Math.max(0, dim.height - offsets.t - offsets.b); + + // get required colors + //var requiredColors = func.foldl(this.stack, "z + plot.getRequiredColors()", 0); + //this.theme.defineColors({num: requiredColors, cache: false}); + + // clear old shapes + arr.forEach(this.series, purge); + func.forIn(this.axes, purge); + arr.forEach(this.stack, purge); + var children = this.surface.children; + // starting with 1.9 the registry is optional and thus dispose is + if(shape.dispose){ + for(var i = 0; i < children.length;++i){ + shape.dispose(children[i]); + } + } + if(this.chartTitle && this.chartTitle.tagName){ + // destroy title if it is a DOM node + domConstruct.destroy(this.chartTitle); + } + this.surface.clear(); + this.chartTitle = null; + + this._renderChartBackground(dim, offsets); + if(this._nativeClip){ + this._renderPlotBackground(dim, offsets, w, h); + }else{ + // VML + this._renderPlotBackground(dim, offsets, w, h); + } + + // go over the stack backwards + func.foldr(this.stack, function(z, plot){ return plot.render(dim, offsets), 0; }, 0); + + if(!this._nativeClip){ + // VML, matting-clipping + this._renderChartBackground(dim, offsets); + } + + //create title: Whether to make chart title as a widget which extends dojox.charting.Element? + if(this.title){ + var forceHtmlLabels = (g.renderer == "canvas") && this.htmlLabels, + labelType = forceHtmlLabels || !has("ie") && !has("opera") && this.htmlLabels ? "html" : "gfx", + tsize = g.normalizedLength(g.splitFontString(this.titleFont).size); + this.chartTitle = common.createText[labelType]( + this, + this.surface, + dim.width/2, + this.titlePos=="top" ? tsize + this.margins.t : dim.height - this.margins.b, + "middle", + this.title, + this.titleFont, + this.titleFontColor + ); + } + + // go over axes + func.forIn(this.axes, function(axis){ axis.render(dim, offsets); }); + + this._makeClean(); + + return this; // dojox/charting/Chart + }, + _renderChartBackground: function(dim, offsets){ + var t = this.theme, rect; + // chart background + var fill = this.fill !== undefined ? this.fill : (t.chart && t.chart.fill); + var stroke = this.stroke !== undefined ? this.stroke : (t.chart && t.chart.stroke); + + // TRT: support for "inherit" as a named value in a theme. + if(fill == "inherit"){ + // find the background color of the nearest ancestor node, and use that explicitly. + var node = this.node; + fill = new Color(domStyle.get(node, "backgroundColor")); + while(fill.a==0 && node!=document.documentElement){ + fill = new Color(domStyle.get(node, "backgroundColor")); + node = node.parentNode; + } + } + + if(fill){ + if(this._nativeClip){ + fill = Element.prototype._shapeFill(Element.prototype._plotFill(fill, dim), + { x:0, y: 0, width: dim.width + 1, height: dim.height + 1 }); + this.surface.createRect({ width: dim.width + 1, height: dim.height + 1 }).setFill(fill); + }else{ + // VML + fill = Element.prototype._plotFill(fill, dim, offsets); + if(offsets.l){ // left + rect = { + x: 0, + y: 0, + width: offsets.l, + height: dim.height + 1 + }; + this.surface.createRect(rect).setFill(Element.prototype._shapeFill(fill, rect)); + } + if(offsets.r){ // right + rect = { + x: dim.width - offsets.r, + y: 0, + width: offsets.r + 1, + height: dim.height + 2 + }; + this.surface.createRect(rect).setFill(Element.prototype._shapeFill(fill, rect)); + } + if(offsets.t){ // top + rect = { + x: 0, + y: 0, + width: dim.width + 1, + height: offsets.t + }; + this.surface.createRect(rect).setFill(Element.prototype._shapeFill(fill, rect)); + } + if(offsets.b){ // bottom + rect = { + x: 0, + y: dim.height - offsets.b, + width: dim.width + 1, + height: offsets.b + 2 + }; + this.surface.createRect(rect).setFill(Element.prototype._shapeFill(fill, rect)); + } + } + } + if(stroke){ + this.surface.createRect({ + width: dim.width - 1, + height: dim.height - 1 + }).setStroke(stroke); + } + }, + _renderPlotBackground: function(dim, offsets, w, h){ + var t = this.theme; + + // draw a plot background + var fill = t.plotarea && t.plotarea.fill; + var stroke = t.plotarea && t.plotarea.stroke; + // size might be neg if offsets are bigger that chart size this happens quite often at + // initialization time if the chart widget is used in a BorderContainer + // this will fail on IE/VML + var rect = { + x: offsets.l - 1, y: offsets.t - 1, + width: w + 2, + height: h + 2 + }; + if(fill){ + fill = Element.prototype._shapeFill(Element.prototype._plotFill(fill, dim, offsets), rect); + this.surface.createRect(rect).setFill(fill); + } + if(stroke){ + this.surface.createRect({ + x: offsets.l, y: offsets.t, + width: w + 1, + height: h + 1 + }).setStroke(stroke); + } + }, + delayedRender: function(){ + // summary: + // Delayed render, which is used to collect multiple updates + // within a delayInMs time window. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + + if(!this._delayedRenderHandle){ + this._delayedRenderHandle = setTimeout( + lang.hitch(this, function(){ + this.render(); + }), + this.delayInMs + ); + } + + return this; // dojox/charting/Chart + }, + connectToPlot: function(name, object, method){ + // summary: + // A convenience method to connect a function to a plot. + // name: String + // The name of the plot as defined by addPlot. + // object: Object + // The object to be connected. + // method: Function + // The function to be executed. + // returns: Array + // A handle to the connection, as defined by dojo.connect (see dojo.connect). + return name in this.plots ? this.stack[this.plots[name]].connect(object, method) : null; // Array + }, + fireEvent: function(seriesName, eventName, index){ + // summary: + // Fires a synthetic event for a series item. + // seriesName: String + // Series name. + // eventName: String + // Event name to simulate: onmouseover, onmouseout, onclick. + // index: Number + // Valid data value index for the event. + // returns: dojox/charting/Chart + // A reference to the current chart for functional chaining. + if(seriesName in this.runs){ + var plotName = this.series[this.runs[seriesName]].plot; + if(plotName in this.plots){ + var plot = this.stack[this.plots[plotName]]; + if(plot){ + plot.fireEvent(seriesName, eventName, index); + } + } + } + return this; // dojox/charting/Chart + }, + _makeClean: function(){ + // reset dirty flags + arr.forEach(this.axes, makeClean); + arr.forEach(this.stack, makeClean); + arr.forEach(this.series, makeClean); + this.dirty = false; + }, + _makeDirty: function(){ + // reset dirty flags + arr.forEach(this.axes, makeDirty); + arr.forEach(this.stack, makeDirty); + arr.forEach(this.series, makeDirty); + this.dirty = true; + }, + _invalidateDependentPlots: function(plotName, /* Boolean */ verticalAxis){ + if(plotName in this.plots){ + var plot = this.stack[this.plots[plotName]], axis, + axisName = verticalAxis ? "vAxis" : "hAxis"; + if(plot[axisName]){ + axis = this.axes[plot[axisName]]; + if(axis && axis.dependOnData()){ + axis.dirty = true; + // find all plots and mark them dirty + arr.forEach(this.stack, function(p){ + if(p[axisName] && p[axisName] == plot[axisName]){ + p.dirty = true; + } + }); + } + }else{ + plot.dirty = true; + } + } + }, + setDir : function(dir){ + return this; + }, + _resetLeftBottom: function(axis){ + }, + formatTruncatedLabel: function(element, label, labelType){ + } + }); + + function hSection(stats){ + return {min: stats.hmin, max: stats.hmax}; + } + + function vSection(stats){ + return {min: stats.vmin, max: stats.vmax}; + } + + function hReplace(stats, h){ + stats.hmin = h.min; + stats.hmax = h.max; + } + + function vReplace(stats, v){ + stats.vmin = v.min; + stats.vmax = v.max; + } + + function combineStats(target, source){ + if(target && source){ + target.min = Math.min(target.min, source.min); + target.max = Math.max(target.max, source.max); + } + return target || source; + } + + function calculateAxes(stack, plotArea){ + var plots = {}, axes = {}; + arr.forEach(stack, function(plot){ + var stats = plots[plot.name] = plot.getSeriesStats(); + if(plot.hAxis){ + axes[plot.hAxis] = combineStats(axes[plot.hAxis], hSection(stats)); + } + if(plot.vAxis){ + axes[plot.vAxis] = combineStats(axes[plot.vAxis], vSection(stats)); + } + }); + arr.forEach(stack, function(plot){ + var stats = plots[plot.name]; + if(plot.hAxis){ + hReplace(stats, axes[plot.hAxis]); + } + if(plot.vAxis){ + vReplace(stats, axes[plot.vAxis]); + } + plot.initializeScalers(plotArea, stats); + }); + } + + return has("dojo-bidi")? declare("dojox.charting.Chart", [Chart, BidiChart]) : Chart; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart2D.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart2D.js new file mode 100644 index 00000000..9fd0e886 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart2D.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/Chart2D",["dojo/_base/kernel","dojo/_base/lang","..","./Chart","./axis2d/Default","./axis2d/Invisible","./plot2d/Default","./plot2d/Lines","./plot2d/Areas","./plot2d/Markers","./plot2d/MarkersOnly","./plot2d/Scatter","./plot2d/Stacked","./plot2d/StackedLines","./plot2d/StackedAreas","./plot2d/Columns","./plot2d/StackedColumns","./plot2d/ClusteredColumns","./plot2d/Bars","./plot2d/StackedBars","./plot2d/ClusteredBars","./plot2d/Grid","./plot2d/Pie","./plot2d/Bubble","./plot2d/Candlesticks","./plot2d/OHLC","./plot2d/Spider"],function(_1,_2,_3,_4){ +_1.deprecated("dojox.charting.Chart2D","Use dojox.charting.Chart instead and require all other components explicitly","2.0"); +return _2.setObject("dojox.charting.Chart2D",_4); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart2D.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart2D.js.uncompressed.js new file mode 100644 index 00000000..a29f58fc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart2D.js.uncompressed.js @@ -0,0 +1,16 @@ +define("dojox/charting/Chart2D", ["dojo/_base/kernel", "dojo/_base/lang", "..", "./Chart", + "./axis2d/Default", "./axis2d/Invisible", "./plot2d/Default", "./plot2d/Lines", "./plot2d/Areas", + "./plot2d/Markers", "./plot2d/MarkersOnly", "./plot2d/Scatter", "./plot2d/Stacked", "./plot2d/StackedLines", + "./plot2d/StackedAreas", "./plot2d/Columns", "./plot2d/StackedColumns", "./plot2d/ClusteredColumns", + "./plot2d/Bars", "./plot2d/StackedBars", "./plot2d/ClusteredBars", "./plot2d/Grid", "./plot2d/Pie", + "./plot2d/Bubble", "./plot2d/Candlesticks", "./plot2d/OHLC", "./plot2d/Spider"], + function(kernel, lang, dojox, Chart){ + kernel.deprecated("dojox.charting.Chart2D", "Use dojox.charting.Chart instead and require all other components explicitly", "2.0"); + // module: + // dojox/charting/Chart2D + // summary: + // This is a compatibility module which loads all charting modules that used to be automatically + // loaded in versions prior to 1.6. It is highly recommended for performance reasons that + // this module no longer be referenced by applications. Instead, use dojox/charting/Chart. + return lang.setObject("dojox.charting.Chart2D", Chart); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart3D.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart3D.js new file mode 100644 index 00000000..a0cd33ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart3D.js @@ -0,0 +1,65 @@ +//>>built +define("dojox/charting/Chart3D",["dojo/_base/array","dojo/dom","dojo/_base/declare","dojox/gfx","dojox/gfx3d","dojo/has","dojo/has!dojo-bidi?./bidi/Chart3D"],function(_1,_2,_3,_4,_5,_6,_7){ +var _8={x:0,y:0,z:1},v=_5.vector,n=_4.normalizedLength; +var _9=_3(_6("dojo-bidi")?"dojox.charting.NonBidiChart3D":"dojox.charting.Chart3D",null,{constructor:function(_a,_b,_c,_d){ +this.node=_2.byId(_a); +this.surface=_4.createSurface(this.node,n(this.node.style.width),n(this.node.style.height)); +this.view=this.surface.createViewport(); +this.view.setLights(_b.lights,_b.ambient,_b.specular); +this.view.setCameraTransform(_c); +this.theme=_d; +this.walls=[]; +this.plots=[]; +},generate:function(){ +return this._generateWalls()._generatePlots(); +},invalidate:function(){ +this.view.invalidate(); +return this; +},render:function(){ +this.view.render(); +return this; +},addPlot:function(_e){ +return this._add(this.plots,_e); +},removePlot:function(_f){ +return this._remove(this.plots,_f); +},addWall:function(_10){ +return this._add(this.walls,_10); +},removeWall:function(_11){ +return this._remove(this.walls,_11); +},_add:function(_12,_13){ +if(!_1.some(_12,function(i){ +return i==_13; +})){ +_12.push(_13); +this.view.invalidate(); +} +return this; +},_remove:function(_14,_15){ +var a=_1.filter(_14,function(i){ +return i!=_15; +}); +return a.length<_14.length?(_14=a,this.invalidate()):this; +},_generateWalls:function(){ +for(var i=0;i0){ +this.walls[i].generate(this); +} +} +return this; +},_generatePlots:function(){ +var _16=0,m=_5.matrix,i=0; +for(;i=0;--i){ +var _17=this.view.createScene(); +_17.setTransform(m.translate(0,0,-_16)); +this.plots[i].generate(this,_17); +_16-=this.plots[i].getDepth(); +} +return this; +},setDir:function(dir){ +return this; +}}); +return _6("dojo-bidi")?_3("dojox.charting.Chart3D",[_9,_7]):_9; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart3D.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart3D.js.uncompressed.js new file mode 100644 index 00000000..06b0dca5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Chart3D.js.uncompressed.js @@ -0,0 +1,104 @@ +define("dojox/charting/Chart3D", ["dojo/_base/array", "dojo/dom","dojo/_base/declare", "dojox/gfx", "dojox/gfx3d", + "dojo/has", "dojo/has!dojo-bidi?./bidi/Chart3D"], + function(arr, dom, declare, gfx, gfx3d, has, BidiChart3D){ + // module: + // dojox/charting/Chart3D + // summary: + // This module provides basic 3d charting capablities (using 2d vector graphics to simulate 3d. + + /*===== + var __Chart3DCtorArgs = function(node, lights, camera, theme){ + // summary: + // The keyword arguments that can be passed in a Chart constructor. + // + // node: Node + // The DOM node to construct the chart on. + // lights: + // Lighting properties for the 3d scene + // camera: Object + // Camera properties describing the viewing camera position. + // theme: Object + // Charting theme to use for coloring chart elements. + }; + =====*/ + var observerVector = {x: 0, y: 0, z: 1}, v = gfx3d.vector, n = gfx.normalizedLength; + + var Chart3D = declare(has("dojo-bidi")? "dojox.charting.NonBidiChart3D" : "dojox.charting.Chart3D", null, { + constructor: function(node, lights, camera, theme){ + // setup a view + this.node = dom.byId(node); + this.surface = gfx.createSurface(this.node, n(this.node.style.width), n(this.node.style.height)); + this.view = this.surface.createViewport(); + this.view.setLights(lights.lights, lights.ambient, lights.specular); + this.view.setCameraTransform(camera); + this.theme = theme; + + // initialize internal variables + this.walls = []; + this.plots = []; + }, + + // public API + generate: function(){ + return this._generateWalls()._generatePlots(); + }, + invalidate: function(){ + this.view.invalidate(); + return this; + }, + render: function(){ + this.view.render(); + return this; + }, + addPlot: function(plot){ + return this._add(this.plots, plot); + }, + removePlot: function(plot){ + return this._remove(this.plots, plot); + }, + addWall: function(wall){ + return this._add(this.walls, wall); + }, + removeWall: function(wall){ + return this._remove(this.walls, wall); + }, + + // internal API + _add: function(array, item){ + if(!arr.some(array, function(i){ return i == item; })){ + array.push(item); + this.view.invalidate(); + } + return this; + }, + _remove: function(array, item){ + var a = arr.filter(array, function(i){ return i != item; }); + return a.length < array.length ? (array = a, this.invalidate()) : this; + }, + _generateWalls: function(){ + for(var i = 0; i < this.walls.length; ++i){ + if(v.dotProduct(observerVector, this.walls[i].normal) > 0){ + this.walls[i].generate(this); + } + } + return this; + }, + _generatePlots: function(){ + var depth = 0, m = gfx3d.matrix, i = 0; + for(; i < this.plots.length; ++i){ + depth += this.plots[i].getDepth(); + } + for(--i; i >= 0; --i){ + var scene = this.view.createScene(); + scene.setTransform(m.translate(0, 0, -depth)); + this.plots[i].generate(this, scene); + depth -= this.plots[i].getDepth(); + } + return this; + }, + setDir: function(/*String*/dir){ + return this; + } + }); + return has("dojo-bidi")? declare("dojox.charting.Chart3D", [Chart3D, BidiChart3D]) : Chart3D; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataChart.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataChart.js new file mode 100644 index 00000000..db747b97 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataChart.js @@ -0,0 +1,221 @@ +//>>built +define("dojox/charting/DataChart",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/declare","dojo/_base/html","dojo/_base/connect","dojo/_base/array","./Chart2D","./themes/PlotKit/blue","dojo/dom"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9){ +_1.experimental("dojox.charting.DataChart"); +var _a={vertical:true,min:0,max:10,majorTickStep:5,minorTickStep:1,natural:false,stroke:"black",majorTick:{stroke:"black",length:8},minorTick:{stroke:"gray",length:2},majorLabels:true}; +var _b={natural:true,majorLabels:true,includeZero:false,majorTickStep:1,majorTick:{stroke:"black",length:8},fixUpper:"major",stroke:"black",htmlLabels:true,from:1}; +var _c={markers:true,tension:2,gap:2}; +return _3("dojox.charting.DataChart",_7,{scroll:true,comparative:false,query:"*",queryOptions:"",fieldName:"value",chartTheme:_8,displayRange:0,stretchToFit:true,minWidth:200,minHeight:100,showing:true,label:"name",constructor:function(_d,_e){ +this.domNode=_9.byId(_d); +_2.mixin(this,_e); +this.xaxis=_2.mixin(_2.mixin({},_b),_e.xaxis); +if(this.xaxis.labelFunc=="seriesLabels"){ +this.xaxis.labelFunc=_2.hitch(this,"seriesLabels"); +} +this.yaxis=_2.mixin(_2.mixin({},_a),_e.yaxis); +if(this.yaxis.labelFunc=="seriesLabels"){ +this.yaxis.labelFunc=_2.hitch(this,"seriesLabels"); +} +this._events=[]; +this.convertLabels(this.yaxis); +this.convertLabels(this.xaxis); +this.onSetItems={}; +this.onSetInterval=0; +this.dataLength=0; +this.seriesData={}; +this.seriesDataBk={}; +this.firstRun=true; +this.dataOffset=0; +this.chartTheme.plotarea.stroke={color:"gray",width:3}; +this.setTheme(this.chartTheme); +if(this.displayRange){ +this.stretchToFit=false; +} +if(!this.stretchToFit){ +this.xaxis.to=this.displayRange; +} +var _f=_e.type&&_e.type!="Pie"&&_e.type.prototype.declaredClass!="dojox.charting.plot2d.Pie"; +if(_f){ +this.addAxis("x",this.xaxis); +this.addAxis("y",this.yaxis); +} +_c.type=_e.type||"Markers"; +this.addPlot("default",_2.mixin(_c,_e.chartPlot)); +if(_f){ +this.addPlot("grid",_2.mixin(_e.grid||{},{type:"Grid",hMinorLines:true})); +} +if(this.showing){ +this.render(); +} +if(_e.store){ +this.setStore(_e.store,_e.query,_e.fieldName,_e.queryOptions); +} +},destroy:function(){ +_6.forEach(this._events,_5.disconnect); +this.inherited(arguments); +},setStore:function(_10,_11,_12,_13){ +this.firstRun=true; +this.store=_10||this.store; +this.query=_11||this.query; +this.fieldName=_12||this.fieldName; +this.label=this.store.getLabelAttributes(); +this.queryOptions=_13||_13; +_6.forEach(this._events,_5.disconnect); +this._events=[_5.connect(this.store,"onSet",this,"onSet"),_5.connect(this.store,"onError",this,"onError")]; +this.fetch(); +},show:function(){ +if(!this.showing){ +_4.style(this.domNode,"display",""); +this.showing=true; +this.render(); +} +},hide:function(){ +if(this.showing){ +_4.style(this.domNode,"display","none"); +this.showing=false; +} +},onSet:function(_14){ +var nm=this.getProperty(_14,this.label); +if(nm in this.runs||this.comparative){ +clearTimeout(this.onSetInterval); +if(!this.onSetItems[nm]){ +this.onSetItems[nm]=_14; +} +this.onSetInterval=setTimeout(_2.hitch(this,function(){ +clearTimeout(this.onSetInterval); +var _15=[]; +for(var nm in this.onSetItems){ +_15.push(this.onSetItems[nm]); +} +this.onData(_15); +this.onSetItems={}; +}),200); +} +},onError:function(err){ +console.error("DataChart Error:",err); +},onDataReceived:function(_16){ +},getProperty:function(_17,_18){ +if(_18==this.label){ +return this.store.getLabel(_17); +} +if(_18=="id"){ +return this.store.getIdentity(_17); +} +var _19=this.store.getValues(_17,_18); +if(_19.length<2){ +_19=this.store.getValue(_17,_18); +} +return _19; +},onData:function(_1a){ +if(!_1a||!_1a.length){ +return; +} +if(this.items&&this.items.length!=_1a.length){ +_6.forEach(_1a,function(m){ +var id=this.getProperty(m,"id"); +_6.forEach(this.items,function(m2,i){ +if(this.getProperty(m2,"id")==id){ +this.items[i]=m2; +} +},this); +},this); +_1a=this.items; +} +if(this.stretchToFit){ +this.displayRange=_1a.length; +} +this.onDataReceived(_1a); +this.items=_1a; +if(this.comparative){ +var nm="default"; +this.seriesData[nm]=[]; +this.seriesDataBk[nm]=[]; +_6.forEach(_1a,function(m){ +var _1b=this.getProperty(m,this.fieldName); +this.seriesData[nm].push(_1b); +},this); +}else{ +_6.forEach(_1a,function(m,i){ +var nm=this.store.getLabel(m); +if(!this.seriesData[nm]){ +this.seriesData[nm]=[]; +this.seriesDataBk[nm]=[]; +} +var _1c=this.getProperty(m,this.fieldName); +if(_2.isArray(_1c)){ +this.seriesData[nm]=_1c; +}else{ +if(!this.scroll){ +var ar=_6.map(new Array(i+1),function(){ +return 0; +}); +ar.push(Number(_1c)); +this.seriesData[nm]=ar; +}else{ +if(this.seriesDataBk[nm].length>this.seriesData[nm].length){ +this.seriesData[nm]=this.seriesDataBk[nm]; +} +this.seriesData[nm].push(Number(_1c)); +} +this.seriesDataBk[nm].push(Number(_1c)); +} +},this); +} +var _1d; +if(this.firstRun){ +this.firstRun=false; +for(nm in this.seriesData){ +this.addSeries(nm,this.seriesData[nm]); +_1d=this.seriesData[nm]; +} +}else{ +for(nm in this.seriesData){ +_1d=this.seriesData[nm]; +if(this.scroll&&_1d.length>this.displayRange){ +this.dataOffset=_1d.length-this.displayRange-1; +_1d=_1d.slice(_1d.length-this.displayRange,_1d.length); +} +this.updateSeries(nm,_1d); +} +} +this.dataLength=_1d.length; +if(this.showing){ +this.render(); +} +},fetch:function(){ +if(!this.store){ +return; +} +this.store.fetch({query:this.query,queryOptions:this.queryOptions,start:this.start,count:this.count,sort:this.sort,onComplete:_2.hitch(this,function(_1e){ +setTimeout(_2.hitch(this,function(){ +this.onData(_1e); +}),0); +}),onError:_2.hitch(this,"onError")}); +},convertLabels:function(_1f){ +if(!_1f.labels||_2.isObject(_1f.labels[0])){ +return null; +} +_1f.labels=_6.map(_1f.labels,function(ele,i){ +return {value:i,text:ele}; +}); +return null; +},seriesLabels:function(val){ +val--; +if(this.series.length<1||(!this.comparative&&val>this.series.length)){ +return "-"; +} +if(this.comparative){ +return this.store.getLabel(this.items[val]); +}else{ +for(var i=0;i0){ +return this.series[i].name; +} +} +} +return "-"; +},resizeChart:function(dim){ +var w=Math.max(dim.w,this.minWidth); +var h=Math.max(dim.h,this.minHeight); +this.resize(w,h); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataChart.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataChart.js.uncompressed.js new file mode 100644 index 00000000..2e23afd1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataChart.js.uncompressed.js @@ -0,0 +1,507 @@ +define("dojox/charting/DataChart", ["dojo/_base/kernel", "dojo/_base/lang", "dojo/_base/declare", "dojo/_base/html", "dojo/_base/connect", + "dojo/_base/array", "./Chart2D", "./themes/PlotKit/blue", "dojo/dom"], + function(kernel, lang, declare, html, hub, arr, Chart, blue, dom){ + // FIXME: This module drags in all Charting modules because of the Chart2D dependency...it is VERY heavy + kernel.experimental("dojox.charting.DataChart"); + + // Defaults for axes + // to be mixed in with xaxis/yaxis custom properties + // see dojox.charting.axis2d.Default for details. + var _yaxis = { + vertical: true, + min: 0, + max: 10, + majorTickStep: 5, + minorTickStep: 1, + natural:false, + stroke: "black", + majorTick: {stroke: "black", length: 8}, + minorTick: {stroke: "gray", length: 2}, + majorLabels:true + }; + + var _xaxis = { + natural: true, // true - no fractions + majorLabels: true, //show labels on major ticks + includeZero: false, // do not change on upating chart + majorTickStep: 1, + majorTick: {stroke: "black", length: 8}, + fixUpper:"major", + stroke: "black", + htmlLabels: true, + from:1 + }; + + // default for chart elements + var chartPlot = { + markers: true, + tension:2, + gap:2 + }; + + return declare("dojox.charting.DataChart", Chart, { + // summary: + // Extension to the 2D chart that connects to a data store in + // a simple manner. Convenience methods have been added for + // connecting store item labels to the chart labels. + // description: + // This code should be considered very experimental and the APIs subject + // to change. This is currently an alpha version and will need some testing + // and review. + // + // The main reason for this extension is to create animated charts, generally + // available with scroll=true, and a property field that gets continually updated. + // The previous property settings are kept in memory and displayed until scrolled + // off the chart. + // + // Although great effort was made to maintain the integrity of the current + // charting APIs, some things have been added or modified in order to get + // the store to connect and also to get the data to scroll/animate. + // "displayRange" in particular is used to force the xaxis to a specific + // size and keep the chart from stretching or squashing to fit the data. + // + // Currently, plot lines can only be set at initialization. Setting + // a new store query will have no effect (although using setStore + // may work but its untested). + // example: + // | var chart = new dojox.charting.DataChart("myNode", { + // | displayRange:8, + // | store:dataStore, + // | query:{symbol:"*"}, + // | fieldName:"price" + // | type: dojox.charting.plot2d.Columns + // | }); + + // scroll: Boolean + // Whether live data updates and changes display, like columns moving + // up and down, or whether it scrolls to the left as data is added + scroll:true, + + // comparative: Boolean + // If false, all items are each their own series. + // If true, the items are combined into one series + // so that their charted properties can be compared. + comparative:false, + + // query: String + // Used for fetching items. Will vary depending upon store. + query: "*", + + // queryOptions: String + // Option used for fetching items + queryOptions: "", + + /*===== + // start:Number + // first item to fetch from store + // count:Number + // Total amount of items to fetch from store + // sort:Object + // Parameters to sort the fetched items from store + =====*/ + + // fieldName: String + // The field in the store item that is getting charted + fieldName: "value", + + // chartTheme: dojox.charting.themes.* + // The theme to style the chart. Defaults to PlotKit.blue. + chartTheme: blue, + + // displayRange: Number + // The number of major ticks to show on the xaxis + displayRange:0, + + // stretchToFit: Boolean + // If true, chart is sized to data. If false, chart is a + // fixed size. Note, is overridden by displayRange. + // TODO: Stretch for the y-axis? + stretchToFit:true, + + // minWidth: Number + // The the smallest the chart width can be + minWidth:200, + + // minHeight: Number + // The the smallest the chart height can be + minHeight:100, + + // showing: Boolean + // Whether the chart is showing (default) on + // initialization or hidden. + showing: true, + + // label: String + // The name field of the store item + // DO NOT SET: Set from store.labelAttribute + label: "name", + + constructor: function(node, kwArgs){ + // summary: + // Set up properties and initialize chart build. + // node: DomNode + // The node to attach the chart to. + // kwArgs: Object + // - xaxis: Object: optional parameters for xaxis (see above) + // - yaxis: Object: optional parameters for yaxis (see above) + // - store: Object: dojo.data store (currently nly supports Persevere) + // - xaxis: Object: First query for store + // - grid: Object: Options for the grid plot + // - chartPlot: Object: Options for chart elements (lines, bars, etc) + + this.domNode = dom.byId(node); + + lang.mixin(this, kwArgs); + + this.xaxis = lang.mixin(lang.mixin({}, _xaxis), kwArgs.xaxis); + if(this.xaxis.labelFunc == "seriesLabels"){ + this.xaxis.labelFunc = lang.hitch(this, "seriesLabels"); + } + + this.yaxis = lang.mixin(lang.mixin({}, _yaxis), kwArgs.yaxis); + if(this.yaxis.labelFunc == "seriesLabels"){ + this.yaxis.labelFunc = lang.hitch(this, "seriesLabels"); + } + + // potential event's collector + this._events = []; + + this.convertLabels(this.yaxis); + this.convertLabels(this.xaxis); + + this.onSetItems = {}; + this.onSetInterval = 0; + this.dataLength = 0; + this.seriesData = {}; + this.seriesDataBk = {}; + this.firstRun = true; + + this.dataOffset = 0; + + // FIXME: looks better with this, but it's custom + this.chartTheme.plotarea.stroke = {color: "gray", width: 3}; + + this.setTheme(this.chartTheme); + + // displayRange overrides stretchToFit + if(this.displayRange){ + this.stretchToFit = false; + } + if(!this.stretchToFit){ + this.xaxis.to = this.displayRange; + } + // we don't want axis on Pie + var cartesian = kwArgs.type && kwArgs.type != "Pie" && kwArgs.type.prototype.declaredClass != "dojox.charting.plot2d.Pie"; + if(cartesian){ + this.addAxis("x", this.xaxis); + this.addAxis("y", this.yaxis); + } + chartPlot.type = kwArgs.type || "Markers"; + this.addPlot("default", lang.mixin(chartPlot, kwArgs.chartPlot)); + if(cartesian){ + this.addPlot("grid", lang.mixin(kwArgs.grid || {}, {type: "Grid", hMinorLines: true})); + } + + if(this.showing){ + this.render(); + } + + if(kwArgs.store){ + this.setStore(kwArgs.store, kwArgs.query, kwArgs.fieldName, kwArgs.queryOptions); + } + }, + + destroy: function(){ + arr.forEach(this._events, hub.disconnect); + this.inherited(arguments); + }, + + setStore: function(/*Object*/store, /* ? String*/query, /* ? String*/fieldName, /* ? Object */queryOptions){ + // summary: + // Sets the chart store and query + // then does the first fetch and + // connects to subsequent changes. + + // TODO: Not handling resetting store + + this.firstRun = true; + this.store = store || this.store; + this.query = query || this.query; + this.fieldName = fieldName || this.fieldName; + this.label = this.store.getLabelAttributes(); + this.queryOptions = queryOptions || queryOptions; + + arr.forEach(this._events, hub.disconnect); + this._events = [ + hub.connect(this.store, "onSet", this, "onSet"), + hub.connect(this.store, "onError", this, "onError") + ]; + this.fetch(); + }, + + show: function(){ + // summary: + // If chart is hidden, show it + if(!this.showing){ + html.style(this.domNode, "display", ""); + this.showing = true; + this.render(); + } + }, + hide: function(){ + // summary: + // If chart is showing, hide it + // Prevents rendering while hidden + if(this.showing){ + html.style(this.domNode, "display", "none"); + this.showing = false; + } + }, + + onSet: function(/*storeObject*/item){ + // summary: + // Fired when a store item changes. + // Collects the item calls and when + // done (after 200ms), sends item + // array to onData(). + + // FIXME: Using labels instead of IDs for item + // identifiers here and in the chart series. This + // is obviously short sighted, but currently used + // for seriesLabels. Workaround for potential bugs + // is to assign a label for which all items are unique. + + var nm = this.getProperty(item, this.label); + + // FIXME: why the check for if-in-runs? + if(nm in this.runs || this.comparative){ + clearTimeout(this.onSetInterval); + if(!this.onSetItems[nm]){ + this.onSetItems[nm] = item; + } + this.onSetInterval = setTimeout(lang.hitch(this, function(){ + clearTimeout(this.onSetInterval); + var items = []; + for(var nm in this.onSetItems){ + items.push(this.onSetItems[nm]); + } + this.onData(items); + this.onSetItems = {}; + }),200); + } + }, + + onError: function(/*Error*/err){ + // stub + // Fires on fetch error + console.error("DataChart Error:", err); + }, + + onDataReceived: function(/*Array*/items){ + // summary: + // stub. Fires after data is received but + // before data is parsed and rendered + }, + + getProperty: function(/*storeObject*/item, prop){ + // summary: + // The main use of this function is to determine + // between a single value and an array of values. + // Other property types included for convenience. + // + if(prop==this.label){ + return this.store.getLabel(item); + } + if(prop=="id"){ + return this.store.getIdentity(item); + } + var value = this.store.getValues(item, prop); + if(value.length < 2){ + value = this.store.getValue(item, prop); + } + return value; + }, + onData: function(/*Array*/items){ + // summary: + // Called after a completed fetch + // or when store items change. + // On first run, sets the chart data, + // then updates chart and legends. + + //console.log("Store:", store);console.log("items: (", items.length+")", items);console.log("Chart:", this); + if(!items || !items.length){ return; } + + if(this.items && this.items.length != items.length){ + arr.forEach(items, function(m){ + var id = this.getProperty(m, "id"); + arr.forEach(this.items, function(m2, i){ + if(this.getProperty(m2, "id") == id){ + this.items[i] = m2; + } + },this); + }, this); + items = this.items; + } + if(this.stretchToFit){ + this.displayRange = items.length; + } + this.onDataReceived(items); + this.items = items; + + + if(this.comparative){ + // all items are gathered together and used as one + // series so their properties can be compared. + var nm = "default"; + + this.seriesData[nm] = []; + this.seriesDataBk[nm] = []; + arr.forEach(items, function(m){ + var field = this.getProperty(m, this.fieldName); + this.seriesData[nm].push(field); + }, this); + + }else{ + + // each item is a separate series. + arr.forEach(items, function(m, i){ + var nm = this.store.getLabel(m); + if(!this.seriesData[nm]){ + this.seriesData[nm] = []; + this.seriesDataBk[nm] = []; + } + + // the property in the item we are using + var field = this.getProperty(m, this.fieldName); + if(lang.isArray(field)){ + // Data is an array, so it's a snapshot, and not + // live, updating data + // + this.seriesData[nm] = field; + + }else{ + if(!this.scroll){ + // Data updates, and "moves in place". Columns and + // line markers go up and down + // + // create empty chart elements by starting an array + // with zeros until we reach our relevant data + var ar = arr.map(new Array(i+1), function(){ return 0; }); + ar.push(Number(field)); + this.seriesData[nm] = ar; + + }else{ + // Data updates and scrolls to the left + if(this.seriesDataBk[nm].length > this.seriesData[nm].length){ + this.seriesData[nm] = this.seriesDataBk[nm]; + } + // Collecting and storing series data. The items come in + // only one at a time, but we need to display historical + // data, so it is kept in memory. + this.seriesData[nm].push(Number(field)); + } + this.seriesDataBk[nm].push(Number(field)); + } + }, this); + } + + // displayData is the segment of the data array that is within + // the chart boundaries + var displayData; + if(this.firstRun){ + // First time around we need to add the series (chart lines) + // to the chart. + this.firstRun = false; + for(nm in this.seriesData){ + this.addSeries(nm, this.seriesData[nm]); + displayData = this.seriesData[nm]; + } + + }else{ + + // update existing series + for(nm in this.seriesData){ + displayData = this.seriesData[nm]; + + if(this.scroll && displayData.length > this.displayRange){ + // chart lines have gone beyond the right boundary. + this.dataOffset = displayData.length-this.displayRange - 1; + displayData = displayData.slice(displayData.length-this.displayRange, displayData.length); + } + this.updateSeries(nm, displayData); + } + } + this.dataLength = displayData.length; + + if(this.showing){ + this.render(); + } + + }, + + fetch: function(){ + // summary: + // Fetches initial data. Subsequent changes + // are received via onSet in data store. + // + if(!this.store){ return; } + this.store.fetch({query:this.query, queryOptions:this.queryOptions, start:this.start, count:this.count, sort:this.sort, + onComplete:lang.hitch(this, function(data){ + setTimeout(lang.hitch(this, function(){ + this.onData(data) + }),0); + }), + onError:lang.hitch(this, "onError") + }); + }, + + convertLabels: function(axis){ + // summary: + // Convenience method to convert a label array of strings + // into an array of objects + // + if(!axis.labels || lang.isObject(axis.labels[0])){ return null; } + + axis.labels = arr.map(axis.labels, function(ele, i){ + return {value:i, text:ele}; + }); + return null; // null + }, + + seriesLabels: function(/*Number*/val){ + // summary: + // Convenience method that sets series labels based on item labels. + val--; + if(this.series.length<1 || (!this.comparative && val>this.series.length)){ return "-"; } + if(this.comparative){ + return this.store.getLabel(this.items[val]);// String + + }else{ + // FIXME: + // Here we are setting the label base on if there is data in the array slot. + // A typical series may look like: [0,0,3.1,0,0,0] which mean the data is populated in the + // 3rd row or column. This works well and keeps the labels aligned but has a side effect + // of not showing the label is the data is zero. Work around is to not go lower than + // 0.01 or something. + for(var i=0;i0){ + return this.series[i].name; // String + } + } + } + return "-"; // String + + }, + + resizeChart: function(/*Object*/dim){ + // summary: + // Call this function to change the chart size. + // Can be connected to a layout widget that calls + // resize. + + var w = Math.max(dim.w, this.minWidth); + var h = Math.max(dim.h, this.minHeight); + this.resize(w, h); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataSeries.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataSeries.js new file mode 100644 index 00000000..5cc1b5ba --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataSeries.js @@ -0,0 +1,111 @@ +//>>built +define("dojox/charting/DataSeries",["dojo/_base/lang","dojo/_base/declare","dojo/_base/array","dojo/_base/connect","dojox/lang/functional"],function(_1,_2,_3,_4,df){ +return _2("dojox.charting.DataSeries",null,{constructor:function(_5,_6,_7){ +this.store=_5; +this.kwArgs=_6; +if(_7){ +if(_1.isFunction(_7)){ +this.value=_7; +}else{ +if(_1.isObject(_7)){ +this.value=_1.hitch(this,"_dictValue",df.keys(_7),_7); +}else{ +this.value=_1.hitch(this,"_fieldValue",_7); +} +} +}else{ +this.value=_1.hitch(this,"_defaultValue"); +} +this.data=[]; +this._events=[]; +if(this.store.getFeatures()["dojo.data.api.Notification"]){ +this._events.push(_4.connect(this.store,"onNew",this,"_onStoreNew"),_4.connect(this.store,"onDelete",this,"_onStoreDelete"),_4.connect(this.store,"onSet",this,"_onStoreSet")); +} +this._initialRendering=true; +this.fetch(); +},destroy:function(){ +_3.forEach(this._events,_4.disconnect); +},setSeriesObject:function(_8){ +this.series=_8; +},_dictValue:function(_9,_a,_b,_c){ +var o={}; +_3.forEach(_9,function(_d){ +o[_d]=_b.getValue(_c,_a[_d]); +}); +return o; +},_fieldValue:function(_e,_f,_10){ +return _f.getValue(_10,_e); +},_defaultValue:function(_11,_12){ +return _11.getValue(_12,"value"); +},fetch:function(){ +if(!this._inFlight){ +this._inFlight=true; +var _13=_1.delegate(this.kwArgs); +_13.onComplete=_1.hitch(this,"_onFetchComplete"); +_13.onError=_1.hitch(this,"onFetchError"); +this.store.fetch(_13); +} +},_onFetchComplete:function(_14,_15){ +this.items=_14; +this._buildItemMap(); +this.data=_3.map(this.items,function(_16){ +return this.value(this.store,_16); +},this); +this._pushDataChanges(); +this._inFlight=false; +},onFetchError:function(_17,_18){ +this._inFlight=false; +},_buildItemMap:function(){ +if(this.store.getFeatures()["dojo.data.api.Identity"]){ +var _19={}; +_3.forEach(this.items,function(_1a,_1b){ +_19[this.store.getIdentity(_1a)]=_1b; +},this); +this.itemMap=_19; +} +},_pushDataChanges:function(){ +if(this.series){ +this.series.chart.updateSeries(this.series.name,this,this._initialRendering); +this._initialRendering=false; +this.series.chart.delayedRender(); +} +},_onStoreNew:function(){ +this.fetch(); +},_onStoreDelete:function(_1c){ +if(this.items){ +var _1d=_3.some(this.items,function(it,_1e){ +if(it===_1c){ +this.items.splice(_1e,1); +this._buildItemMap(); +this.data.splice(_1e,1); +return true; +} +return false; +},this); +if(_1d){ +this._pushDataChanges(); +} +} +},_onStoreSet:function(_1f){ +if(this.itemMap){ +var id=this.store.getIdentity(_1f),_20=this.itemMap[id]; +if(typeof _20=="number"){ +this.data[_20]=this.value(this.store,this.items[_20]); +this._pushDataChanges(); +} +}else{ +if(this.items){ +var _21=_3.some(this.items,function(it,_22){ +if(it===_1f){ +this.data[_22]=this.value(this.store,it); +return true; +} +return false; +},this); +if(_21){ +this._pushDataChanges(); +} +} +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataSeries.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataSeries.js.uncompressed.js new file mode 100644 index 00000000..2a29e43d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/DataSeries.js.uncompressed.js @@ -0,0 +1,185 @@ +define("dojox/charting/DataSeries", ["dojo/_base/lang", "dojo/_base/declare", "dojo/_base/array", "dojo/_base/connect", "dojox/lang/functional"], + function(Lang, declare, ArrayUtil, connect, df){ + + return declare("dojox.charting.DataSeries", null, { + constructor: function(store, kwArgs, value){ + // summary: + // Series adapter for dojo.data stores. + // store: Object + // A dojo.data store object. + // kwArgs: Object + // A store-specific keyword parameters used for fetching items. + // See dojo/data/api/Read.fetch(). + // value: Function|Object|String + // Function, which takes a store, and an object handle, and + // produces an output possibly inspecting the store's item. Or + // a dictionary object, which tells what names to extract from + // an object and how to map them to an output. Or a string, which + // is a numeric field name to use for plotting. If undefined, null + // or empty string (the default), "value" field is extracted. + this.store = store; + this.kwArgs = kwArgs; + + if(value){ + if(Lang.isFunction(value)){ + this.value = value; + }else if(Lang.isObject(value)){ + this.value = Lang.hitch(this, "_dictValue", + df.keys(value), value); + }else{ + this.value = Lang.hitch(this, "_fieldValue", value); + } + }else{ + this.value = Lang.hitch(this, "_defaultValue"); + } + + this.data = []; + + this._events = []; + + if(this.store.getFeatures()["dojo.data.api.Notification"]){ + this._events.push( + connect.connect(this.store, "onNew", this, "_onStoreNew"), + connect.connect(this.store, "onDelete", this, "_onStoreDelete"), + connect.connect(this.store, "onSet", this, "_onStoreSet") + ); + } + + this._initialRendering = true; + this.fetch(); + }, + + destroy: function(){ + // summary: + // Clean up before GC. + ArrayUtil.forEach(this._events, connect.disconnect); + }, + + setSeriesObject: function(series){ + // summary: + // Sets a dojox.charting.Series object we will be working with. + // series: dojox.charting.Series + // Our interface to the chart. + this.series = series; + }, + + // value transformers + + _dictValue: function(keys, dict, store, item){ + var o = {}; + ArrayUtil.forEach(keys, function(key){ + o[key] = store.getValue(item, dict[key]); + }); + return o; + }, + + _fieldValue: function(field, store, item){ + return store.getValue(item, field); + }, + + _defaultValue: function(store, item){ + return store.getValue(item, "value"); + }, + + // store fetch loop + + fetch: function(){ + // summary: + // Fetches data from the store and updates a chart. + if(!this._inFlight){ + this._inFlight = true; + var kwArgs = Lang.delegate(this.kwArgs); + kwArgs.onComplete = Lang.hitch(this, "_onFetchComplete"); + kwArgs.onError = Lang.hitch(this, "onFetchError"); + this.store.fetch(kwArgs); + } + }, + + _onFetchComplete: function(items, request){ + this.items = items; + this._buildItemMap(); + this.data = ArrayUtil.map(this.items, function(item){ + return this.value(this.store, item); + }, this); + this._pushDataChanges(); + this._inFlight = false; + }, + + onFetchError: function(errorData, request){ + // summary: + // As stub to process fetch errors. Provide so user can attach to + // it with dojo.connect(). See dojo/data/api/Read fetch() for + // details: onError property. + this._inFlight = false; + }, + + _buildItemMap: function(){ + if(this.store.getFeatures()["dojo.data.api.Identity"]){ + var itemMap = {}; + ArrayUtil.forEach(this.items, function(item, index){ + itemMap[this.store.getIdentity(item)] = index; + }, this); + this.itemMap = itemMap; + } + }, + + _pushDataChanges: function(){ + if(this.series){ + this.series.chart.updateSeries(this.series.name, this, this._initialRendering); + this._initialRendering = false; + this.series.chart.delayedRender(); + } + }, + + // store notification handlers + + _onStoreNew: function(){ + // the only thing we can do is to re-fetch items + this.fetch(); + }, + + _onStoreDelete: function(item){ + // we cannot do anything with deleted item, the only way is to compare + // items for equality + if(this.items){ + var flag = ArrayUtil.some(this.items, function(it, index){ + if(it === item){ + this.items.splice(index, 1); + this._buildItemMap(); + this.data.splice(index, 1); + return true; + } + return false; + }, this); + if(flag){ + this._pushDataChanges(); + } + } + }, + + _onStoreSet: function(item){ + if(this.itemMap){ + // we can use our handy item map, if the store supports Identity + var id = this.store.getIdentity(item), index = this.itemMap[id]; + if(typeof index == "number"){ + this.data[index] = this.value(this.store, this.items[index]); + this._pushDataChanges(); + } + }else{ + // otherwise we have to rely on item's equality + if(this.items){ + var flag = ArrayUtil.some(this.items, function(it, index){ + if(it === item){ + this.data[index] = this.value(this.store, it); + return true; + } + return false; + }, this); + if(flag){ + this._pushDataChanges(); + } + } + } + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Element.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Element.js new file mode 100644 index 00000000..f60ddbaf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Element.js @@ -0,0 +1,247 @@ +//>>built +define("dojox/charting/Element",["dojo/_base/array","dojo/dom-construct","dojo/_base/declare","dojox/gfx","dojox/gfx/shape"],function(_1,_2,_3,_4,_5){ +return _3("dojox.charting.Element",null,{chart:null,group:null,htmlElements:null,dirty:true,renderingOptions:null,constructor:function(_6,_7){ +this.chart=_6; +this.group=null; +this.htmlElements=[]; +this.dirty=true; +this.trailingSymbol="..."; +this._events=[]; +if(_7&&_7.renderingOptions){ +this.renderingOptions=_7.renderingOptions; +} +},purgeGroup:function(){ +this.destroyHtmlElements(); +if(this.group){ +this.getGroup().removeShape(); +var _8=this.getGroup().children; +if(_5.dispose){ +for(var i=0;i<_8.length;++i){ +_5.dispose(_8[i],true); +} +} +if(this.getGroup().rawNode){ +_2.empty(this.getGroup().rawNode); +} +this.getGroup().clear(); +if(_5.dispose){ +_5.dispose(this.getGroup(),true); +} +if(this.getGroup()!=this.group){ +if(this.group.rawNode){ +_2.empty(this.group.rawNode); +} +this.group.clear(); +if(_5.dispose){ +_5.dispose(this.group,true); +} +} +this.group=null; +} +this.dirty=true; +if(this._events.length){ +_1.forEach(this._events,function(_9){ +_9.shape.disconnect(_9.handle); +}); +this._events=[]; +} +return this; +},cleanGroup:function(_a){ +this.destroyHtmlElements(); +if(!_a){ +_a=this.chart.surface; +} +if(this.group){ +var _b; +var _c=this.getGroup().children; +if(_5.dispose){ +for(var i=0;i<_c.length;++i){ +_5.dispose(_c[i],true); +} +} +if(this.getGroup().rawNode){ +_b=this.getGroup().bgNode; +_2.empty(this.getGroup().rawNode); +} +this.getGroup().clear(); +if(_b){ +this.getGroup().rawNode.appendChild(_b); +} +}else{ +this.group=_a.createGroup(); +if(this.renderingOptions&&this.group.rawNode&&this.group.rawNode.namespaceURI=="http://www.w3.org/2000/svg"){ +for(var _d in this.renderingOptions){ +this.group.rawNode.setAttribute(_d,this.renderingOptions[_d]); +} +} +} +this.dirty=true; +return this; +},getGroup:function(){ +return this.group; +},destroyHtmlElements:function(){ +if(this.htmlElements.length){ +_1.forEach(this.htmlElements,_2.destroy); +this.htmlElements=[]; +} +},destroy:function(){ +this.purgeGroup(); +},getTextWidth:function(s,_e){ +return _4._base._getTextBox(s,{font:_e}).w||0; +},getTextWithLimitLength:function(s,_f,_10,_11){ +if(!s||s.length<=0){ +return {text:"",truncated:_11||false}; +} +if(!_10||_10<=0){ +return {text:s,truncated:_11||false}; +} +var _12=2,_13=0.618,_14=s.substring(0,1)+this.trailingSymbol,_15=this.getTextWidth(_14,_f); +if(_10<=_15){ +return {text:_14,truncated:true}; +} +var _16=this.getTextWidth(s,_f); +if(_16<=_10){ +return {text:s,truncated:_11||false}; +}else{ +var _17=0,end=s.length; +while(_17_10){ +_17-=1; +} +return {text:(s.substring(0,_17)+this.trailingSymbol),truncated:true}; +} +var _18=_17+Math.round((end-_17)*_13),_19=this.getTextWidth(s.substring(0,_18),_f); +if(_19<_10){ +_17=_18; +end=end; +}else{ +_17=_17; +end=_18; +} +} +} +},getTextWithLimitCharCount:function(s,_1a,_1b,_1c){ +if(!s||s.length<=0){ +return {text:"",truncated:_1c||false}; +} +if(!_1b||_1b<=0||s.length<=_1b){ +return {text:s,truncated:_1c||false}; +} +return {text:s.substring(0,_1b)+this.trailingSymbol,truncated:true}; +},_plotFill:function(_1d,dim,_1e){ +if(!_1d||!_1d.type||!_1d.space){ +return _1d; +} +var _1f=_1d.space,_20; +switch(_1d.type){ +case "linear": +if(_1f==="plot"||_1f==="shapeX"||_1f==="shapeY"){ +_1d=_4.makeParameters(_4.defaultLinearGradient,_1d); +_1d.space=_1f; +if(_1f==="plot"||_1f==="shapeX"){ +_20=dim.height-_1e.t-_1e.b; +_1d.y1=_1e.t+_20*_1d.y1/100; +_1d.y2=_1e.t+_20*_1d.y2/100; +} +if(_1f==="plot"||_1f==="shapeY"){ +_20=dim.width-_1e.l-_1e.r; +_1d.x1=_1e.l+_20*_1d.x1/100; +_1d.x2=_1e.l+_20*_1d.x2/100; +} +} +break; +case "radial": +if(_1f==="plot"){ +_1d=_4.makeParameters(_4.defaultRadialGradient,_1d); +_1d.space=_1f; +var _21=dim.width-_1e.l-_1e.r,_22=dim.height-_1e.t-_1e.b; +_1d.cx=_1e.l+_21*_1d.cx/100; +_1d.cy=_1e.t+_22*_1d.cy/100; +_1d.r=_1d.r*Math.sqrt(_21*_21+_22*_22)/200; +} +break; +case "pattern": +if(_1f==="plot"||_1f==="shapeX"||_1f==="shapeY"){ +_1d=_4.makeParameters(_4.defaultPattern,_1d); +_1d.space=_1f; +if(_1f==="plot"||_1f==="shapeX"){ +_20=dim.height-_1e.t-_1e.b; +_1d.y=_1e.t+_20*_1d.y/100; +_1d.height=_20*_1d.height/100; +} +if(_1f==="plot"||_1f==="shapeY"){ +_20=dim.width-_1e.l-_1e.r; +_1d.x=_1e.l+_20*_1d.x/100; +_1d.width=_20*_1d.width/100; +} +} +break; +} +return _1d; +},_shapeFill:function(_23,_24){ +if(!_23||!_23.space){ +return _23; +} +var _25=_23.space,_26; +switch(_23.type){ +case "linear": +if(_25==="shape"||_25==="shapeX"||_25==="shapeY"){ +_23=_4.makeParameters(_4.defaultLinearGradient,_23); +_23.space=_25; +if(_25==="shape"||_25==="shapeX"){ +_26=_24.width; +_23.x1=_24.x+_26*_23.x1/100; +_23.x2=_24.x+_26*_23.x2/100; +} +if(_25==="shape"||_25==="shapeY"){ +_26=_24.height; +_23.y1=_24.y+_26*_23.y1/100; +_23.y2=_24.y+_26*_23.y2/100; +} +} +break; +case "radial": +if(_25==="shape"){ +_23=_4.makeParameters(_4.defaultRadialGradient,_23); +_23.space=_25; +_23.cx=_24.x+_24.width/2; +_23.cy=_24.y+_24.height/2; +_23.r=_23.r*_24.width/200; +} +break; +case "pattern": +if(_25==="shape"||_25==="shapeX"||_25==="shapeY"){ +_23=_4.makeParameters(_4.defaultPattern,_23); +_23.space=_25; +if(_25==="shape"||_25==="shapeX"){ +_26=_24.width; +_23.x=_24.x+_26*_23.x/100; +_23.width=_26*_23.width/100; +} +if(_25==="shape"||_25==="shapeY"){ +_26=_24.height; +_23.y=_24.y+_26*_23.y/100; +_23.height=_26*_23.height/100; +} +} +break; +} +return _23; +},_pseudoRadialFill:function(_27,_28,_29,_2a,end){ +if(!_27||_27.type!=="radial"||_27.space!=="shape"){ +return _27; +} +var _2b=_27.space; +_27=_4.makeParameters(_4.defaultRadialGradient,_27); +_27.space=_2b; +if(arguments.length<4){ +_27.cx=_28.x; +_27.cy=_28.y; +_27.r=_27.r*_29/100; +return _27; +} +var _2c=arguments.length<5?_2a:(end+_2a)/2; +return {type:"linear",x1:_28.x,y1:_28.y,x2:_28.x+_27.r*_29*Math.cos(_2c)/100,y2:_28.y+_27.r*_29*Math.sin(_2c)/100,colors:_27.colors}; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Element.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Element.js.uncompressed.js new file mode 100644 index 00000000..381687c3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Element.js.uncompressed.js @@ -0,0 +1,402 @@ +define("dojox/charting/Element", ["dojo/_base/array", "dojo/dom-construct","dojo/_base/declare", "dojox/gfx", "dojox/gfx/shape"], + function(arr, domConstruct, declare, gfx, shape){ + + return declare("dojox.charting.Element", null, { + // summary: + // A base class that is used to build other elements of a chart, such as + // a series. + // chart: dojox/charting/Chart + // The parent chart for this element. + // group: dojox/gfx/shape.Group + // The visual GFX group representing this element. + // htmlElement: Array + // Any DOMNodes used as a part of this element (such as HTML-based labels). + // dirty: Boolean + // A flag indicating whether or not this element needs to be rendered. + + chart: null, + group: null, + htmlElements: null, + dirty: true, + renderingOptions: null, + + constructor: function(chart, kwArgs){ + // summary: + // Creates a new charting element. + // chart: dojox/charting/Chart + // The chart that this element belongs to. + this.chart = chart; + this.group = null; + this.htmlElements = []; + this.dirty = true; + this.trailingSymbol = "..."; + this._events = []; + if (kwArgs && kwArgs.renderingOptions) { + this.renderingOptions = kwArgs.renderingOptions; + } + }, + purgeGroup: function(){ + // summary: + // Clear any elements out of our group, and destroy the group. + // returns: dojox/charting/Element + // A reference to this object for functional chaining. + this.destroyHtmlElements(); + if(this.group){ + // since 1.7.x we need dispose shape otherwise there is a memoryleak + this.getGroup().removeShape(); + var children = this.getGroup().children; + // starting with 1.9 the registry is optional and thus dispose is + if(shape.dispose){ + for(var i = 0; i < children.length;++i){ + shape.dispose(children[i], true); + } + } + if(this.getGroup().rawNode){ + domConstruct.empty(this.getGroup().rawNode); + } + this.getGroup().clear(); + // starting with 1.9 the registry is optional and thus dispose is + if(shape.dispose){ + shape.dispose(this.getGroup(), true); + } + if(this.getGroup() != this.group){ + // we do have an intermediary clipping group (see CartesianBase) + if(this.group.rawNode){ + domConstruct.empty(this.group.rawNode); + } + this.group.clear(); + // starting with 1.9 the registry is optional and thus dispose is + if(shape.dispose){ + shape.dispose(this.group, true); + } + } + this.group = null; + } + this.dirty = true; + if(this._events.length){ + arr.forEach(this._events, function(item){ + item.shape.disconnect(item.handle); + }); + this._events = []; + } + return this; // dojox.charting.Element + }, + cleanGroup: function(creator){ + // summary: + // Clean any elements (HTML or GFX-based) out of our group, and create a new one. + // creator: dojox/gfx/shape.Surface? + // An optional surface to work with. + // returns: dojox/charting/Element + // A reference to this object for functional chaining. + this.destroyHtmlElements(); + if(!creator){ creator = this.chart.surface; } + if(this.group){ + var bgnode; + var children = this.getGroup().children; + // starting with 1.9 the registry is optional and thus dispose is + if(shape.dispose){ + for(var i = 0; i < children.length;++i){ + shape.dispose(children[i], true); + } + } + if(this.getGroup().rawNode){ + bgnode = this.getGroup().bgNode; + domConstruct.empty(this.getGroup().rawNode); + } + this.getGroup().clear(); + if(bgnode){ + this.getGroup().rawNode.appendChild(bgnode); + } + }else{ + this.group = creator.createGroup(); + // in some cases we have a rawNode but this is not an actual DOM element (CanvasWithEvents) so check + // the actual rawNode type. + if (this.renderingOptions && this.group.rawNode && + this.group.rawNode.namespaceURI == "http://www.w3.org/2000/svg") { + for (var key in this.renderingOptions) { + this.group.rawNode.setAttribute(key, this.renderingOptions[key]); + } + } + } + this.dirty = true; + return this; // dojox.charting.Element + }, + getGroup: function(){ + return this.group; + }, + destroyHtmlElements: function(){ + // summary: + // Destroy any DOMNodes that may have been created as a part of this element. + if(this.htmlElements.length){ + arr.forEach(this.htmlElements, domConstruct.destroy); + this.htmlElements = []; + } + }, + destroy: function(){ + // summary: + // API addition to conform to the rest of the Dojo Toolkit's standard. + this.purgeGroup(); + }, + //text utilities + getTextWidth: function(s, font){ + return gfx._base._getTextBox(s, {font: font}).w || 0; + }, + getTextWithLimitLength: function(s, font, limitWidth, truncated){ + // summary: + // Get the truncated string based on the limited width in px(dichotomy algorithm) + // s: String? + // candidate text. + // font: String? + // text's font style. + // limitWidth: Number? + // text limited width in px. + // truncated: Boolean? + // whether the input text(s) has already been truncated. + // returns: Object + // | { + // | text: processed text, maybe truncated or not, + // | truncated: whether text has been truncated + // | } + if(!s || s.length <= 0){ + return { + text: "", + truncated: truncated || false + }; + } + if(!limitWidth || limitWidth <= 0){ + return { + text: s, + truncated: truncated || false + }; + } + var delta = 2, + //golden section for dichotomy algorithm + trucPercentage = 0.618, + minStr = s.substring(0,1) + this.trailingSymbol, + minWidth = this.getTextWidth(minStr, font); + if(limitWidth <= minWidth){ + return { + text: minStr, + truncated: true + }; + } + var width = this.getTextWidth(s, font); + if(width <= limitWidth){ + return { + text: s, + truncated: truncated || false + }; + }else{ + var begin = 0, + end = s.length; + while(begin < end){ + if(end - begin <= delta ){ + while (this.getTextWidth(s.substring(0, begin) + this.trailingSymbol, font) > limitWidth) { + begin -= 1; + } + return { + text: (s.substring(0,begin) + this.trailingSymbol), + truncated: true + }; + } + var index = begin + Math.round((end - begin) * trucPercentage), + widthIntercepted = this.getTextWidth(s.substring(0, index), font); + if(widthIntercepted < limitWidth){ + begin = index; + end = end; + }else{ + begin = begin; + end = index; + } + } + } + }, + getTextWithLimitCharCount: function(s, font, wcLimit, truncated){ + // summary: + // Get the truncated string based on the limited character count(dichotomy algorithm) + // s: String? + // candidate text. + // font: String? + // text's font style. + // wcLimit: Number? + // text limited character count. + // truncated: Boolean? + // whether the input text(s) has already been truncated. + // returns: Object + // | { + // | text: processed text, maybe truncated or not, + // | truncated: whether text has been truncated + // | } + if (!s || s.length <= 0) { + return { + text: "", + truncated: truncated || false + }; + } + if(!wcLimit || wcLimit <= 0 || s.length <= wcLimit){ + return { + text: s, + truncated: truncated || false + }; + } + return { + text: s.substring(0, wcLimit) + this.trailingSymbol, + truncated: true + }; + }, + // fill utilities + _plotFill: function(fill, dim, offsets){ + // process a plot-wide fill + if(!fill || !fill.type || !fill.space){ + return fill; + } + var space = fill.space, span; + switch(fill.type){ + case "linear": + if(space === "plot" || space === "shapeX" || space === "shapeY"){ + // clone a fill so we can modify properly directly + fill = gfx.makeParameters(gfx.defaultLinearGradient, fill); + fill.space = space; + // process dimensions + if(space === "plot" || space === "shapeX"){ + // process Y + span = dim.height - offsets.t - offsets.b; + fill.y1 = offsets.t + span * fill.y1 / 100; + fill.y2 = offsets.t + span * fill.y2 / 100; + } + if(space === "plot" || space === "shapeY"){ + // process X + span = dim.width - offsets.l - offsets.r; + fill.x1 = offsets.l + span * fill.x1 / 100; + fill.x2 = offsets.l + span * fill.x2 / 100; + } + } + break; + case "radial": + if(space === "plot"){ + // this one is used exclusively for scatter charts + // clone a fill so we can modify properly directly + fill = gfx.makeParameters(gfx.defaultRadialGradient, fill); + fill.space = space; + // process both dimensions + var spanX = dim.width - offsets.l - offsets.r, + spanY = dim.height - offsets.t - offsets.b; + fill.cx = offsets.l + spanX * fill.cx / 100; + fill.cy = offsets.t + spanY * fill.cy / 100; + fill.r = fill.r * Math.sqrt(spanX * spanX + spanY * spanY) / 200; + } + break; + case "pattern": + if(space === "plot" || space === "shapeX" || space === "shapeY"){ + // clone a fill so we can modify properly directly + fill = gfx.makeParameters(gfx.defaultPattern, fill); + fill.space = space; + // process dimensions + if(space === "plot" || space === "shapeX"){ + // process Y + span = dim.height - offsets.t - offsets.b; + fill.y = offsets.t + span * fill.y / 100; + fill.height = span * fill.height / 100; + } + if(space === "plot" || space === "shapeY"){ + // process X + span = dim.width - offsets.l - offsets.r; + fill.x = offsets.l + span * fill.x / 100; + fill.width = span * fill.width / 100; + } + } + break; + } + return fill; + }, + _shapeFill: function(fill, bbox){ + // process shape-specific fill + if(!fill || !fill.space){ + return fill; + } + var space = fill.space, span; + switch(fill.type){ + case "linear": + if(space === "shape" || space === "shapeX" || space === "shapeY"){ + // clone a fill so we can modify properly directly + fill = gfx.makeParameters(gfx.defaultLinearGradient, fill); + fill.space = space; + // process dimensions + if(space === "shape" || space === "shapeX"){ + // process X + span = bbox.width; + fill.x1 = bbox.x + span * fill.x1 / 100; + fill.x2 = bbox.x + span * fill.x2 / 100; + } + if(space === "shape" || space === "shapeY"){ + // process Y + span = bbox.height; + fill.y1 = bbox.y + span * fill.y1 / 100; + fill.y2 = bbox.y + span * fill.y2 / 100; + } + } + break; + case "radial": + if(space === "shape"){ + // this one is used exclusively for bubble charts and pie charts + // clone a fill so we can modify properly directly + fill = gfx.makeParameters(gfx.defaultRadialGradient, fill); + fill.space = space; + // process both dimensions + fill.cx = bbox.x + bbox.width / 2; + fill.cy = bbox.y + bbox.height / 2; + fill.r = fill.r * bbox.width / 200; + } + break; + case "pattern": + if(space === "shape" || space === "shapeX" || space === "shapeY"){ + // clone a fill so we can modify properly directly + fill = gfx.makeParameters(gfx.defaultPattern, fill); + fill.space = space; + // process dimensions + if(space === "shape" || space === "shapeX"){ + // process X + span = bbox.width; + fill.x = bbox.x + span * fill.x / 100; + fill.width = span * fill.width / 100; + } + if(space === "shape" || space === "shapeY"){ + // process Y + span = bbox.height; + fill.y = bbox.y + span * fill.y / 100; + fill.height = span * fill.height / 100; + } + } + break; + } + return fill; + }, + _pseudoRadialFill: function(fill, center, radius, start, end){ + // process pseudo-radial fills + if(!fill || fill.type !== "radial" || fill.space !== "shape"){ + return fill; + } + // clone and normalize fill + var space = fill.space; + fill = gfx.makeParameters(gfx.defaultRadialGradient, fill); + fill.space = space; + if(arguments.length < 4){ + // process both dimensions + fill.cx = center.x; + fill.cy = center.y; + fill.r = fill.r * radius / 100; + return fill; + } + // convert to a linear gradient + var angle = arguments.length < 5 ? start : (end + start) / 2; + return { + type: "linear", + x1: center.x, + y1: center.y, + x2: center.x + fill.r * radius * Math.cos(angle) / 100, + y2: center.y + fill.r * radius * Math.sin(angle) / 100, + colors: fill.colors + }; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/README new file mode 100644 index 00000000..0858f3aa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/README @@ -0,0 +1,31 @@ +------------------------------------------------------------------------------- +dojox.charting +------------------------------------------------------------------------------- +Version 0.800 +Release date: 10/31/2007 +------------------------------------------------------------------------------- +Project state: +beta +------------------------------------------------------------------------------- +Credits + Tom Trenka (ttrenka@gmail.com) + Eugene Lazutkin (eugene.lazutkin@gmail.com) +------------------------------------------------------------------------------- +Project description + +Implementation of simple charting library based on dojox.gfx/dojox.gfx3d. +------------------------------------------------------------------------------- +Dependencies: + +Dojo Core, dojox.gfx, dojox.gfx3d, dojox.lang. +------------------------------------------------------------------------------- +Documentation + +Not ready yet. +------------------------------------------------------------------------------- +Installation instructions + +Grab the following from the Dojo SVN Repository: +http://svn.dojotoolkit.org/var/src/dojo/dojox/trunk/ +http://svn.dojotoolkit.org/var/src/dojo/dojox/trunk/ +------------------------------------------------------------------------------- diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Series.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Series.js new file mode 100644 index 00000000..f772218f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Series.js @@ -0,0 +1,24 @@ +//>>built +define("dojox/charting/Series",["dojo/_base/lang","dojo/_base/declare","./Element"],function(_1,_2,_3){ +return _2("dojox.charting.Series",_3,{constructor:function(_4,_5,_6){ +_1.mixin(this,_6); +if(typeof this.plot!="string"){ +this.plot="default"; +} +this.update(_5); +},clear:function(){ +this.dyn={}; +},update:function(_7){ +if(_1.isArray(_7)){ +this.data=_7; +}else{ +this.source=_7; +this.data=this.source.data; +if(this.source.setSeriesObject){ +this.source.setSeriesObject(this); +} +} +this.dirty=true; +this.clear(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Series.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Series.js.uncompressed.js new file mode 100644 index 00000000..0f949b84 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Series.js.uncompressed.js @@ -0,0 +1,58 @@ +define("dojox/charting/Series", ["dojo/_base/lang", "dojo/_base/declare", "./Element"], + function(lang, declare, Element){ + /*===== + var __SeriesCtorArgs = { + // summary: + // An optional arguments object that can be used in the Series constructor. + // plot: String? + // The plot (by name) that this series belongs to. + }; + =====*/ + return declare("dojox.charting.Series", Element, { + // summary: + // An object representing a series of data for plotting on a chart. + constructor: function(chart, data, kwArgs){ + // summary: + // Create a new data series object for use within charting. + // chart: dojox/charting/Chart + // The chart that this series belongs to. + // data: Array|Object + // The array of data points (either numbers or objects) that + // represents the data to be drawn. Or it can be an object. In + // the latter case, it should have a property "data" (an array), + // destroy(), and setSeriesObject(). + // kwArgs: __SeriesCtorArgs? + // An optional keyword arguments object to set details for this series. + lang.mixin(this, kwArgs); + if(typeof this.plot != "string"){ this.plot = "default"; } + this.update(data); + }, + + clear: function(){ + // summary: + // Clear the calculated additional parameters set on this series. + this.dyn = {}; + }, + + update: function(data){ + // summary: + // Set data and make this object dirty, so it can be redrawn. + // data: Array|Object + // The array of data points (either numbers or objects) that + // represents the data to be drawn. Or it can be an object. In + // the latter case, it should have a property "data" (an array), + // destroy(), and setSeriesObject(). + if(lang.isArray(data)){ + this.data = data; + }else{ + this.source = data; + this.data = this.source.data; + if(this.source.setSeriesObject){ + this.source.setSeriesObject(this); + } + } + this.dirty = true; + this.clear(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/SimpleTheme.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/SimpleTheme.js new file mode 100644 index 00000000..9ecd97c6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/SimpleTheme.js @@ -0,0 +1,191 @@ +//>>built +define("dojox/charting/SimpleTheme",["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/_base/Color","dojox/lang/utils","dojox/gfx/gradutils"],function(_1,_2,_3,_4,_5,_6){ +var _7=_3("dojox.charting.SimpleTheme",null,{shapeSpaces:{shape:1,shapeX:1,shapeY:1},constructor:function(_8){ +_8=_8||{}; +var _9=_7.defaultTheme; +_2.forEach(["chart","plotarea","axis","grid","series","marker","indicator"],function(_a){ +this[_a]=_1.delegate(_9[_a],_8[_a]); +},this); +if(_8.seriesThemes&&_8.seriesThemes.length){ +this.colors=null; +this.seriesThemes=_8.seriesThemes.slice(0); +}else{ +this.seriesThemes=null; +this.colors=(_8.colors||_7.defaultColors).slice(0); +} +this.markerThemes=null; +if(_8.markerThemes&&_8.markerThemes.length){ +this.markerThemes=_8.markerThemes.slice(0); +} +this.markers=_8.markers?_1.clone(_8.markers):_1.delegate(_7.defaultMarkers); +this.noGradConv=_8.noGradConv; +this.noRadialConv=_8.noRadialConv; +if(_8.reverseFills){ +this.reverseFills(); +} +this._current=0; +this._buildMarkerArray(); +},clone:function(){ +var _b=new this.constructor({chart:this.chart,plotarea:this.plotarea,axis:this.axis,grid:this.grid,series:this.series,marker:this.marker,colors:this.colors,markers:this.markers,indicator:this.indicator,seriesThemes:this.seriesThemes,markerThemes:this.markerThemes,noGradConv:this.noGradConv,noRadialConv:this.noRadialConv}); +_2.forEach(["clone","clear","next","skip","addMixin","post","getTick"],function(_c){ +if(this.hasOwnProperty(_c)){ +_b[_c]=this[_c]; +} +},this); +return _b; +},clear:function(){ +this._current=0; +},next:function(_d,_e,_f){ +var _10=_5.merge,_11,_12; +if(this.colors){ +_11=_1.delegate(this.series); +_12=_1.delegate(this.marker); +var _13=new _4(this.colors[this._current%this.colors.length]),old; +if(_11.stroke&&_11.stroke.color){ +_11.stroke=_1.delegate(_11.stroke); +old=new _4(_11.stroke.color); +_11.stroke.color=new _4(_13); +_11.stroke.color.a=old.a; +}else{ +_11.stroke={color:_13}; +} +if(_12.stroke&&_12.stroke.color){ +_12.stroke=_1.delegate(_12.stroke); +old=new _4(_12.stroke.color); +_12.stroke.color=new _4(_13); +_12.stroke.color.a=old.a; +}else{ +_12.stroke={color:_13}; +} +if(!_11.fill||_11.fill.type){ +_11.fill=_13; +}else{ +old=new _4(_11.fill); +_11.fill=new _4(_13); +_11.fill.a=old.a; +} +if(!_12.fill||_12.fill.type){ +_12.fill=_13; +}else{ +old=new _4(_12.fill); +_12.fill=new _4(_13); +_12.fill.a=old.a; +} +}else{ +_11=this.seriesThemes?_10(this.series,this.seriesThemes[this._current%this.seriesThemes.length]):this.series; +_12=this.markerThemes?_10(this.marker,this.markerThemes[this._current%this.markerThemes.length]):_11; +} +var _14=_12&&_12.symbol||this._markers[this._current%this._markers.length]; +var _15={series:_11,marker:_12,symbol:_14}; +++this._current; +if(_e){ +_15=this.addMixin(_15,_d,_e); +} +if(_f){ +_15=this.post(_15,_d); +} +return _15; +},skip:function(){ +++this._current; +},addMixin:function(_16,_17,_18,_19){ +if(_1.isArray(_18)){ +_2.forEach(_18,function(m){ +_16=this.addMixin(_16,_17,m); +},this); +}else{ +var t={}; +if("color" in _18){ +if(_17=="line"||_17=="area"){ +_1.setObject("series.stroke.color",_18.color,t); +_1.setObject("marker.stroke.color",_18.color,t); +}else{ +_1.setObject("series.fill",_18.color,t); +} +} +_2.forEach(["stroke","outline","shadow","fill","filter","font","fontColor","labelWiring"],function(_1a){ +var _1b="marker"+_1a.charAt(0).toUpperCase()+_1a.substr(1),b=_1b in _18; +if(_1a in _18){ +_1.setObject("series."+_1a,_18[_1a],t); +if(!b){ +_1.setObject("marker."+_1a,_18[_1a],t); +} +} +if(b){ +_1.setObject("marker."+_1a,_18[_1b],t); +} +}); +if("marker" in _18){ +t.symbol=_18.marker; +t.symbol=_18.marker; +} +_16=_5.merge(_16,t); +} +if(_19){ +_16=this.post(_16,_17); +} +return _16; +},post:function(_1c,_1d){ +var _1e=_1c.series.fill,t; +if(!this.noGradConv&&this.shapeSpaces[_1e.space]&&_1e.type=="linear"){ +if(_1d=="bar"){ +t={x1:_1e.y1,y1:_1e.x1,x2:_1e.y2,y2:_1e.x2}; +}else{ +if(!this.noRadialConv&&_1e.space=="shape"&&(_1d=="slice"||_1d=="circle")){ +t={type:"radial",cx:0,cy:0,r:100}; +} +} +if(t){ +return _5.merge(_1c,{series:{fill:t}}); +} +} +return _1c; +},getTick:function(_1f,_20){ +var _21=this.axis.tick,_22=_1f+"Tick",_23=_5.merge; +if(_21){ +if(this.axis[_22]){ +_21=_23(_21,this.axis[_22]); +} +}else{ +_21=this.axis[_22]; +} +if(_20){ +if(_21){ +if(_20[_22]){ +_21=_23(_21,_20[_22]); +} +}else{ +_21=_20[_22]; +} +} +return _21; +},inspectObjects:function(f){ +_2.forEach(["chart","plotarea","axis","grid","series","marker","indicator"],function(_24){ +f(this[_24]); +},this); +if(this.seriesThemes){ +_2.forEach(this.seriesThemes,f); +} +if(this.markerThemes){ +_2.forEach(this.markerThemes,f); +} +},reverseFills:function(){ +this.inspectObjects(function(o){ +if(o&&o.fill){ +o.fill=_6.reverse(o.fill); +} +}); +},addMarker:function(_25,_26){ +this.markers[_25]=_26; +this._buildMarkerArray(); +},setMarkers:function(obj){ +this.markers=obj; +this._buildMarkerArray(); +},_buildMarkerArray:function(){ +this._markers=[]; +for(var p in this.markers){ +this._markers.push(this.markers[p]); +} +}}); +_1.mixin(_7,{defaultMarkers:{CIRCLE:"m-3,0 c0,-4 6,-4 6,0 m-6,0 c0,4 6,4 6,0",SQUARE:"m-3,-3 l0,6 6,0 0,-6 z",DIAMOND:"m0,-3 l3,3 -3,3 -3,-3 z",CROSS:"m0,-3 l0,6 m-3,-3 l6,0",X:"m-3,-3 l6,6 m0,-6 l-6,6",TRIANGLE:"m-3,3 l3,-6 3,6 z",TRIANGLE_INVERTED:"m-3,-3 l3,6 3,-6 z"},defaultColors:["#54544c","#858e94","#6e767a","#948585","#474747"],defaultTheme:{chart:{stroke:null,fill:"white",pageStyle:null,titleGap:20,titlePos:"top",titleFont:"normal normal bold 14pt Tahoma",titleFontColor:"#333"},plotarea:{stroke:null,fill:"white"},axis:{stroke:{color:"#333",width:1},tick:{color:"#666",position:"center",font:"normal normal normal 7pt Tahoma",fontColor:"#333",labelGap:4},majorTick:{width:1,length:6},minorTick:{width:0.8,length:3},microTick:{width:0.5,length:1},title:{gap:15,font:"normal normal normal 11pt Tahoma",fontColor:"#333",orientation:"axis"}},series:{stroke:{width:1.5,color:"#333"},outline:{width:0.1,color:"#ccc"},shadow:null,fill:"#ccc",font:"normal normal normal 8pt Tahoma",fontColor:"#000",labelWiring:{width:1,color:"#ccc"}},marker:{stroke:{width:1.5,color:"#333"},outline:{width:0.1,color:"#ccc"},shadow:null,fill:"#ccc",font:"normal normal normal 8pt Tahoma",fontColor:"#000"},indicator:{lineStroke:{width:1.5,color:"#333"},lineOutline:{width:0.1,color:"#ccc"},lineShadow:null,lineFill:null,stroke:{width:1.5,color:"#333"},outline:{width:0.1,color:"#ccc"},shadow:null,fill:"#ccc",radius:3,font:"normal normal normal 10pt Tahoma",fontColor:"#000",markerFill:"#ccc",markerSymbol:"m-3,0 c0,-4 6,-4 6,0 m-6,0 c0,4 6,4 6,0",markerStroke:{width:1.5,color:"#333"},markerOutline:{width:0.1,color:"#ccc"},markerShadow:null}}}); +return _7; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/SimpleTheme.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/SimpleTheme.js.uncompressed.js new file mode 100644 index 00000000..0b4ac85f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/SimpleTheme.js.uncompressed.js @@ -0,0 +1,577 @@ +define("dojox/charting/SimpleTheme", ["dojo/_base/lang", "dojo/_base/array","dojo/_base/declare","dojo/_base/Color", "dojox/lang/utils", "dojox/gfx/gradutils"], + function(lang, arr, declare, Color, dlu, dgg){ + + var SimpleTheme = declare("dojox.charting.SimpleTheme", null, { + // summary: + // A SimpleTheme or Theme is a pre-defined object, primarily JSON-based, that makes up the definitions to + // style a chart. + // + // description: + // While you can set up style definitions on a chart directly (usually through the various add methods + // on a dojox.charting.Chart object), a Theme simplifies this manual setup by allowing you to + // pre-define all of the various visual parameters of each element in a chart. + // + // Most of the properties of a Theme are straight-forward; if something is line-based (such as + // an axis or the ticks on an axis), they will be defined using basic stroke parameters. Likewise, + // if an element is primarily block-based (such as the background of a chart), it will be primarily + // fill-based. + // + // In addition (for convenience), a Theme definition does not have to contain the entire JSON-based + // structure. Each theme is built on top of a default theme (which serves as the basis for the theme + // "GreySkies"), and is mixed into the default theme object. This allows you to create a theme based, + // say, solely on colors for data series. + // + // Defining a new theme is relatively easy; see any of the themes in dojox.charting.themes for examples + // on how to define your own. + // + // When you set a theme on a chart, the theme itself is deep-cloned. This means that you cannot alter + // the theme itself after setting the theme value on a chart, and expect it to change your chart. If you + // are looking to make alterations to a theme for a chart, the suggestion would be to create your own + // theme, based on the one you want to use, that makes those alterations before it is applied to a chart. + // + // Finally, a Theme contains a number of functions to facilitate rendering operations on a chart--the main + // helper of which is the ~next~ method, in which a chart asks for the information for the next data series + // to be rendered. + // + // A note on colors: + // A theme palette is usually comprised of 5 different color definitions, and + // no more. If you have a need to render a chart with more than 5 data elements, you can simply "push" + // new color definitions into the theme's .color array. Make sure that you do that with the actual + // theme object from a Chart, and not in the theme itself (i.e. either do that before using .setTheme + // on a chart). + // + // example: + // The default theme (and structure) looks like so: + // | // all objects are structs used directly in dojox.gfx + // | chart:{ + // | stroke: null, + // | fill: "white", + // | pageStyle: null // suggested page style as an object suitable for dojo.style() + // | }, + // | plotarea:{ + // | stroke: null, + // | fill: "white" + // | }, + // | axis:{ + // | stroke: { // the axis itself + // | color: "#333", + // | width: 1 + // | }, + // | tick: { // used as a foundation for all ticks + // | color: "#666", + // | position: "center", + // | font: "normal normal normal 7pt Tahoma", // labels on axis + // | fontColor: "#333" // color of labels + // | }, + // | majorTick: { // major ticks on axis, and used for major gridlines + // | width: 1, + // | length: 6 + // | }, + // | minorTick: { // minor ticks on axis, and used for minor gridlines + // | width: 0.8, + // | length: 3 + // | }, + // | microTick: { // minor ticks on axis, and used for minor gridlines + // | width: 0.5, + // | length: 1 + // | }, + // | title: { + // | gap: 15, + // | font: "normal normal normal 11pt Tahoma", // title font + // | fontColor: "#333", // title font color + // | orientation: "axis" // "axis": facing the axis, "away": facing away + // | } + // | }, + // | series: { + // | stroke: {width: 1.5, color: "#333"}, // line + // | outline: {width: 0.1, color: "#ccc"}, // outline + // | //shadow: {dx: 1, dy: 1, width: 2, color: [0, 0, 0, 0.3]}, + // | shadow: null, // no shadow + // | //filter: dojox/gfx/filters.createFilter(), + // | filter: null, // no filter, to use a filter you must use gfx SVG render and require dojox/gfx/svgext + // | fill: "#ccc", // fill, if appropriate + // | font: "normal normal normal 8pt Tahoma", // if there's a label + // | fontColor: "#000" // color of labels + // | labelWiring: {width: 1, color: "#ccc"}, // connect marker and target data item(slice, column, bar...) + // | }, + // | marker: { // any markers on a series + // | symbol: "m-3,3 l3,-6 3,6 z", // symbol + // | stroke: {width: 1.5, color: "#333"}, // stroke + // | outline: {width: 0.1, color: "#ccc"}, // outline + // | shadow: null, // no shadow + // | fill: "#ccc", // fill if needed + // | font: "normal normal normal 8pt Tahoma", // label + // | fontColor: "#000" + // | }, + // | grid: { // grid, when not present axis tick strokes are used instead + // | majorLine: { // major grid line + // | color: "#666", + // | width: 1, + // | length: 6 + // | }, + // | minorLine: { // minor grid line + // | color: "#666", + // | width: 0.8, + // | length: 3 + // | }, + // | fill: "grey", // every other stripe + // | alternateFill: "grey" // alternate stripe + // | }, + // | indicator: { + // | lineStroke: {width: 1.5, color: "#333"}, // line + // | lineOutline: {width: 0.1, color: "#ccc"}, // line outline + // | lineShadow: null, // no line shadow + // | lineFill: null, // fill between lines for dual indicators + // | stroke: {width: 1.5, color: "#333"}, // label background stroke + // | outline: {width: 0.1, color: "#ccc"}, // label background outline + // | shadow: null, // no label background shadow + // | fill: "#ccc", // label background fill + // | radius: 3, // radius of the label background + // | font: "normal normal normal 10pt Tahoma", // label font + // | fontColor: "#000" // label color + // | markerFill: "#ccc", // marker fill + // | markerSymbol: "m-3,0 c0,-4 6,-4 6,0 m-6,0 c0,4 6,4 6,0", // marker symbol + // | markerStroke: {width: 1.5, color: "#333"}, // marker stroke + // | markerOutline: {width: 0.1, color: "#ccc"}, // marker outline + // | markerShadow: null, // no marker shadow + // | } + // + // example: + // Defining a new theme is pretty simple: + // | var Grasslands = new SimpleTheme({ + // | colors: [ "#70803a", "#dde574", "#788062", "#b1cc5d", "#eff2c2" ] + // | }); + // | + // | myChart.setTheme(Grasslands); + + shapeSpaces: {shape: 1, shapeX: 1, shapeY: 1}, + + constructor: function(kwArgs){ + // summary: + // Initialize a theme using the keyword arguments. Note that the arguments + // look like the example (above), and may include a few more parameters. + kwArgs = kwArgs || {}; + + // populate theme with defaults updating them if needed + var def = SimpleTheme.defaultTheme; + arr.forEach(["chart", "plotarea", "axis", "grid", "series", "marker", "indicator"], function(name){ + this[name] = lang.delegate(def[name], kwArgs[name]); + }, this); + + // personalize theme + if(kwArgs.seriesThemes && kwArgs.seriesThemes.length){ + this.colors = null; + this.seriesThemes = kwArgs.seriesThemes.slice(0); + }else{ + this.seriesThemes = null; + this.colors = (kwArgs.colors || SimpleTheme.defaultColors).slice(0); + } + this.markerThemes = null; + if(kwArgs.markerThemes && kwArgs.markerThemes.length){ + this.markerThemes = kwArgs.markerThemes.slice(0); + } + this.markers = kwArgs.markers ? lang.clone(kwArgs.markers) : lang.delegate(SimpleTheme.defaultMarkers); + + // set flags + this.noGradConv = kwArgs.noGradConv; + this.noRadialConv = kwArgs.noRadialConv; + if(kwArgs.reverseFills){ + this.reverseFills(); + } + + // private housekeeping + this._current = 0; + this._buildMarkerArray(); + }, + + clone: function(){ + // summary: + // Clone the current theme. + // returns: dojox.charting.SimpleTheme + // The cloned theme; any alterations made will not affect the original. + var theme = new this.constructor({ + // theme components + chart: this.chart, + plotarea: this.plotarea, + axis: this.axis, + grid: this.grid, + series: this.series, + marker: this.marker, + // individual arrays + colors: this.colors, + markers: this.markers, + indicator: this.indicator, + seriesThemes: this.seriesThemes, + markerThemes: this.markerThemes, + // flags + noGradConv: this.noGradConv, + noRadialConv: this.noRadialConv + }); + // copy custom methods + arr.forEach( + ["clone", "clear", "next", "skip", "addMixin", "post", "getTick"], + function(name){ + if(this.hasOwnProperty(name)){ + theme[name] = this[name]; + } + }, + this + ); + return theme; // dojox.charting.SimpleTheme + }, + + clear: function(){ + // summary: + // Clear and reset the internal pointer to start fresh. + this._current = 0; + }, + + next: function(elementType, mixin, doPost){ + // summary: + // Get the next color or series theme. + // elementType: String? + // An optional element type (for use with series themes) + // mixin: Object? + // An optional object to mix into the theme. + // doPost: Boolean? + // A flag to post-process the results. + // returns: Object + // An object of the structure { series, marker, symbol } + var merge = dlu.merge, series, marker; + if(this.colors){ + series = lang.delegate(this.series); + marker = lang.delegate(this.marker); + var color = new Color(this.colors[this._current % this.colors.length]), old; + // modify the stroke + if(series.stroke && series.stroke.color){ + series.stroke = lang.delegate(series.stroke); + old = new Color(series.stroke.color); + series.stroke.color = new Color(color); + series.stroke.color.a = old.a; + }else{ + series.stroke = {color: color}; + } + if(marker.stroke && marker.stroke.color){ + marker.stroke = lang.delegate(marker.stroke); + old = new Color(marker.stroke.color); + marker.stroke.color = new Color(color); + marker.stroke.color.a = old.a; + }else{ + marker.stroke = {color: color}; + } + // modify the fill + if(!series.fill || series.fill.type){ + series.fill = color; + }else{ + old = new Color(series.fill); + series.fill = new Color(color); + series.fill.a = old.a; + } + if(!marker.fill || marker.fill.type){ + marker.fill = color; + }else{ + old = new Color(marker.fill); + marker.fill = new Color(color); + marker.fill.a = old.a; + } + }else{ + series = this.seriesThemes ? + merge(this.series, this.seriesThemes[this._current % this.seriesThemes.length]) : + this.series; + marker = this.markerThemes ? + merge(this.marker, this.markerThemes[this._current % this.markerThemes.length]) : + series; + } + + var symbol = marker && marker.symbol || this._markers[this._current % this._markers.length]; + + var theme = {series: series, marker: marker, symbol: symbol}; + + // advance the counter + ++this._current; + + if(mixin){ + theme = this.addMixin(theme, elementType, mixin); + } + if(doPost){ + theme = this.post(theme, elementType); + } + + return theme; // Object + }, + + skip: function(){ + // summary: + // Skip the next internal color. + ++this._current; + }, + + addMixin: function(theme, elementType, mixin, doPost){ + // summary: + // Add a mixin object to the passed theme and process. + // theme: dojox/charting/SimpleTheme + // The theme to mixin to. + // elementType: String + // The type of element in question. Can be "line", "bar" or "circle" + // mixin: Object|Array + // The object or objects to mix into the theme. + // doPost: Boolean + // If true, run the new theme through the post-processor. + // returns: dojox/charting/SimpleTheme + // The new theme. + if(lang.isArray(mixin)){ + arr.forEach(mixin, function(m){ + theme = this.addMixin(theme, elementType, m); + }, this); + }else{ + var t = {}; + if("color" in mixin){ + if(elementType == "line" || elementType == "area"){ + lang.setObject("series.stroke.color", mixin.color, t); + lang.setObject("marker.stroke.color", mixin.color, t); + }else{ + lang.setObject("series.fill", mixin.color, t); + } + } + arr.forEach(["stroke", "outline", "shadow", "fill", "filter", "font", "fontColor", "labelWiring"], function(name){ + var markerName = "marker" + name.charAt(0).toUpperCase() + name.substr(1), + b = markerName in mixin; + if(name in mixin){ + lang.setObject("series." + name, mixin[name], t); + if(!b){ + lang.setObject("marker." + name, mixin[name], t); + } + } + if(b){ + lang.setObject("marker." + name, mixin[markerName], t); + } + }); + if("marker" in mixin){ + t.symbol = mixin.marker; + t.symbol = mixin.marker; + } + theme = dlu.merge(theme, t); + } + if(doPost){ + theme = this.post(theme, elementType); + } + return theme; // dojox/charting/SimpleTheme + }, + + post: function(theme, elementType){ + // summary: + // Process any post-shape fills. + // theme: dojox/charting/SimpleTheme + // The theme to post process with. + // elementType: String + // The type of element being filled. Can be "bar" or "circle". + // returns: dojox/charting/SimpleTheme + // The post-processed theme. + var fill = theme.series.fill, t; + if(!this.noGradConv && this.shapeSpaces[fill.space] && fill.type == "linear"){ + if(elementType == "bar"){ + // transpose start and end points + t = { + x1: fill.y1, + y1: fill.x1, + x2: fill.y2, + y2: fill.x2 + }; + }else if(!this.noRadialConv && fill.space == "shape" && (elementType == "slice" || elementType == "circle")){ + // switch to radial + t = { + type: "radial", + cx: 0, + cy: 0, + r: 100 + }; + } + if(t){ + return dlu.merge(theme, {series: {fill: t}}); + } + } + return theme; // dojox/charting/SimpleTheme + }, + + getTick: function(name, mixin){ + // summary: + // Calculates and merges tick parameters. + // name: String + // Tick name, can be "major", "minor", or "micro". + // mixin: Object? + // Optional object to mix in to the tick. + var tick = this.axis.tick, tickName = name + "Tick", + merge = dlu.merge; + if(tick){ + if(this.axis[tickName]){ + tick = merge(tick, this.axis[tickName]); + } + }else{ + tick = this.axis[tickName]; + } + if(mixin){ + if(tick){ + if(mixin[tickName]){ + tick = merge(tick, mixin[tickName]); + } + }else{ + tick = mixin[tickName]; + } + } + return tick; // Object + }, + + inspectObjects: function(f){ + arr.forEach(["chart", "plotarea", "axis", "grid", "series", "marker", "indicator"], function(name){ + f(this[name]); + }, this); + if(this.seriesThemes){ + arr.forEach(this.seriesThemes, f); + } + if(this.markerThemes){ + arr.forEach(this.markerThemes, f); + } + }, + + reverseFills: function(){ + this.inspectObjects(function(o){ + if(o && o.fill){ + o.fill = dgg.reverse(o.fill); + } + }); + }, + + addMarker:function(/*String*/ name, /*String*/ segment){ + // summary: + // Add a custom marker to this theme. + // example: + // | myTheme.addMarker("Ellipse", foo); + this.markers[name] = segment; + this._buildMarkerArray(); + }, + + setMarkers:function(/*Object*/ obj){ + // summary: + // Set all the markers of this theme at once. obj should be a + // dictionary of keys and path segments. + // + // example: + // | myTheme.setMarkers({ "CIRCLE": foo }); + this.markers = obj; + this._buildMarkerArray(); + }, + + _buildMarkerArray: function(){ + this._markers = []; + for(var p in this.markers){ + this._markers.push(this.markers[p]); + } + } +}); + +lang.mixin(SimpleTheme, { + defaultMarkers: { + CIRCLE: "m-3,0 c0,-4 6,-4 6,0 m-6,0 c0,4 6,4 6,0", + SQUARE: "m-3,-3 l0,6 6,0 0,-6 z", + DIAMOND: "m0,-3 l3,3 -3,3 -3,-3 z", + CROSS: "m0,-3 l0,6 m-3,-3 l6,0", + X: "m-3,-3 l6,6 m0,-6 l-6,6", + TRIANGLE: "m-3,3 l3,-6 3,6 z", + TRIANGLE_INVERTED: "m-3,-3 l3,6 3,-6 z" + }, + + defaultColors:[ + // gray skies + "#54544c", "#858e94", "#6e767a", "#948585", "#474747" + ], + + defaultTheme: { + // all objects are structs used directly in dojox.gfx + chart:{ + stroke: null, + fill: "white", + pageStyle: null, + titleGap: 20, + titlePos: "top", + titleFont: "normal normal bold 14pt Tahoma", // chart title + titleFontColor: "#333" + }, + plotarea:{ + stroke: null, + fill: "white" + }, + // TODO: label rotation on axis + axis:{ + stroke: { // the axis itself + color: "#333", + width: 1 + }, + tick: { // used as a foundation for all ticks + color: "#666", + position: "center", + font: "normal normal normal 7pt Tahoma", // labels on axis + fontColor: "#333", // color of labels + labelGap: 4 // gap between a tick and its label in pixels + }, + majorTick: { // major ticks on axis, and used for major gridlines + width: 1, + length: 6 + }, + minorTick: { // minor ticks on axis, and used for minor gridlines + width: 0.8, + length: 3 + }, + microTick: { // minor ticks on axis, and used for minor gridlines + width: 0.5, + length: 1 + }, + title: { + gap: 15, + font: "normal normal normal 11pt Tahoma", // title font + fontColor: "#333", // title font color + orientation: "axis" // "axis": facing the axis, "away": facing away + } + }, + series: { + // used as a "main" theme for series, sThemes augment it + stroke: {width: 1.5, color: "#333"}, // line + outline: {width: 0.1, color: "#ccc"}, // outline + //shadow: {dx: 1, dy: 1, width: 2, color: [0, 0, 0, 0.3]}, + shadow: null, // no shadow + fill: "#ccc", // fill, if appropriate + font: "normal normal normal 8pt Tahoma", // if there's a label + fontColor: "#000", // color of labels + labelWiring: {width: 1, color: "#ccc"} // connect marker and target data item(slice, column, bar...) + }, + marker: { // any markers on a series + stroke: {width: 1.5, color: "#333"}, // stroke + outline: {width: 0.1, color: "#ccc"}, // outline + //shadow: {dx: 1, dy: 1, width: 2, color: [0, 0, 0, 0.3]}, + shadow: null, // no shadow + fill: "#ccc", // fill if needed + font: "normal normal normal 8pt Tahoma", // label + fontColor: "#000" + }, + indicator: { + lineStroke: {width: 1.5, color: "#333"}, + lineOutline: {width: 0.1, color: "#ccc"}, + lineShadow: null, + lineFill: null, + stroke: {width: 1.5, color: "#333"}, + outline: {width: 0.1, color: "#ccc"}, + shadow: null, + fill : "#ccc", + radius: 3, + font: "normal normal normal 10pt Tahoma", + fontColor: "#000", + markerFill: "#ccc", + markerSymbol: "m-3,0 c0,-4 6,-4 6,0 m-6,0 c0,4 6,4 6,0", + markerStroke: {width: 1.5, color: "#333"}, + markerOutline: {width: 0.1, color: "#ccc"}, + markerShadow: null + } + } +}); + +return SimpleTheme; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/StoreSeries.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/StoreSeries.js new file mode 100644 index 00000000..501650fa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/StoreSeries.js @@ -0,0 +1,64 @@ +//>>built +define("dojox/charting/StoreSeries",["dojo/_base/array","dojo/_base/declare","dojo/_base/Deferred"],function(_1,_2,_3){ +return _2("dojox.charting.StoreSeries",null,{constructor:function(_4,_5,_6){ +this.store=_4; +this.kwArgs=_5; +if(_6){ +if(typeof _6=="function"){ +this.value=_6; +}else{ +if(typeof _6=="object"){ +this.value=function(_7){ +var o={}; +for(var _8 in _6){ +o[_8]=_7[_6[_8]]; +} +return o; +}; +}else{ +this.value=function(_9){ +return _9[_6]; +}; +} +} +}else{ +this.value=function(_a){ +return _a.value; +}; +} +this.data=[]; +this._initialRendering=true; +this.fetch(); +},destroy:function(){ +if(this.observeHandle){ +this.observeHandle.remove(); +} +},setSeriesObject:function(_b){ +this.series=_b; +},fetch:function(){ +var _c=this; +if(this.observeHandle){ +this.observeHandle.remove(); +} +var _d=this.store.query(this.kwArgs.query,this.kwArgs); +_3.when(_d,function(_e){ +_c.objects=_e; +_f(); +}); +if(_d.observe){ +this.observeHandle=_d.observe(_f,true); +} +function _f(){ +_c.data=_1.map(_c.objects,function(_10){ +return _c.value(_10,_c.store); +}); +_c._pushDataChanges(); +}; +},_pushDataChanges:function(){ +if(this.series){ +this.series.chart.updateSeries(this.series.name,this,this._initialRendering); +this._initialRendering=false; +this.series.chart.delayedRender(); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/StoreSeries.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/StoreSeries.js.uncompressed.js new file mode 100644 index 00000000..ae9b26c5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/StoreSeries.js.uncompressed.js @@ -0,0 +1,101 @@ +define("dojox/charting/StoreSeries", ["dojo/_base/array", "dojo/_base/declare", "dojo/_base/Deferred"], + function(arr, declare, Deferred){ + + return declare("dojox.charting.StoreSeries", null, { + constructor: function(store, kwArgs, value){ + // summary: + // Series adapter for dojo object stores (dojo.store). + // store: Object + // A dojo object store. + // kwArgs: Object + // A store-specific keyword parameters used for querying objects. + // See dojo.store docs + // value: Function|Object|String + // Function, which takes an object handle, and + // produces an output possibly inspecting the store's item. Or + // a dictionary object, which tells what names to extract from + // an object and how to map them to an output. Or a string, which + // is a numeric field name to use for plotting. If undefined, null + // or empty string (the default), "value" field is extracted. + this.store = store; + this.kwArgs = kwArgs; + + if(value){ + if(typeof value == "function"){ + this.value = value; + }else if(typeof value == "object"){ + this.value = function(object){ + var o = {}; + for(var key in value){ + o[key] = object[value[key]]; + } + return o; + }; + }else{ + this.value = function(object){ + return object[value]; + }; + } + }else{ + this.value = function(object){ + return object.value; + }; + } + + this.data = []; + + this._initialRendering = true; + this.fetch(); + }, + + destroy: function(){ + // summary: + // Clean up before GC. + if(this.observeHandle){ + this.observeHandle.remove(); + } + }, + + setSeriesObject: function(series){ + // summary: + // Sets a dojox.charting.Series object we will be working with. + // series: dojox/charting/Series + // Our interface to the chart. + this.series = series; + }, + + // store fetch loop + + fetch: function(){ + // summary: + // Fetches data from the store and updates a chart. + var self = this; + if(this.observeHandle){ + this.observeHandle.remove(); + } + var results = this.store.query(this.kwArgs.query, this.kwArgs); + Deferred.when(results, function(objects){ + self.objects = objects; + update(); + }); + if(results.observe){ + this.observeHandle = results.observe(update, true); + } + function update(){ + self.data = arr.map(self.objects, function(object){ + return self.value(object, self.store); + }); + self._pushDataChanges(); + } + }, + + _pushDataChanges: function(){ + if(this.series){ + this.series.chart.updateSeries(this.series.name, this, this._initialRendering); + this._initialRendering = false; + this.series.chart.delayedRender(); + } + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Theme.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Theme.js new file mode 100644 index 00000000..499b44b5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/Theme.js @@ -0,0 +1,42 @@ +//>>built +define("dojox/charting/Theme",["dojo/_base/lang","dojo/_base/declare","dojo/_base/Color","./SimpleTheme","dojox/color/_base","dojox/color/Palette","dojox/gfx/gradutils"],function(_1,_2,_3,_4,_5,_6){ +var _7=_2("dojox.charting.Theme",_4,{}); +_1.mixin(_7,{defineColors:function(_8){ +_8=_8||{}; +var l,c=[],n=_8.num||5; +if(_8.colors){ +l=_8.colors.length; +for(var i=0;i>built +define("dojox/charting/action2d/Base",["dojo/_base/lang","dojo/_base/declare","dojo/Evented"],function(_1,_2,_3){ +return _2("dojox.charting.action2d.Base",_3,{constructor:function(_4,_5){ +this.chart=_4; +this.plot=_5?(_1.isString(_5)?this.chart.getPlot(_5):_5):this.chart.getPlot("default"); +},connect:function(){ +},disconnect:function(){ +},destroy:function(){ +this.disconnect(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Base.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Base.js.uncompressed.js new file mode 100644 index 00000000..99ed3bcf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Base.js.uncompressed.js @@ -0,0 +1,36 @@ +define("dojox/charting/action2d/Base", ["dojo/_base/lang", "dojo/_base/declare", "dojo/Evented"], + function(lang, declare, Evented){ + + return declare("dojox.charting.action2d.Base", Evented, { + // summary: + // Base action class for plot and chart actions. + + constructor: function(chart, plot){ + // summary: + // Create a new base action. This can either be a plot or a chart action. + // chart: dojox/charting/Chart + // The chart this action applies to. + // plot: String|dojox/charting/plot2d/Base? + // Optional target plot for this action. Default is "default". + this.chart = chart; + this.plot = plot ? (lang.isString(plot) ? this.chart.getPlot(plot) : plot) : this.chart.getPlot("default"); + }, + + connect: function(){ + // summary: + // Connect this action to the plot or the chart. + }, + + disconnect: function(){ + // summary: + // Disconnect this action from the plot or the chart. + }, + + destroy: function(){ + // summary: + // Do any cleanup needed when destroying parent elements. + this.disconnect(); + } + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/ChartAction.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/ChartAction.js new file mode 100644 index 00000000..40ca499f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/ChartAction.js @@ -0,0 +1,14 @@ +//>>built +define("dojox/charting/action2d/ChartAction",["dojo/_base/connect","dojo/_base/declare","./Base"],function(_1,_2,_3){ +return _2("dojox.charting.action2d.ChartAction",_3,{constructor:function(_4,_5){ +},connect:function(){ +for(var i=0;i>built +define("dojox/charting/action2d/Highlight",["dojo/_base/lang","dojo/_base/declare","dojo/_base/Color","dojo/_base/connect","dojox/color/_base","./PlotAction","dojo/fx/easing","dojox/gfx/fx"],function(_1,_2,_3,_4,c,_5,_6,_7){ +var _8=100,_9=75,_a=50,cc=function(_b){ +return function(){ +return _b; +}; +},hl=function(_c){ +var a=new c.Color(_c),x=a.toHsl(); +if(x.s==0){ +x.l=x.l<50?100:0; +}else{ +x.s=_8; +if(x.l<_a){ +x.l=_9; +}else{ +if(x.l>_9){ +x.l=_a; +}else{ +x.l=x.l-_a>_9-x.l?_a:_9; +} +} +} +var _d=c.fromHsl(x); +_d.a=a.a; +return _d; +},_e=function(_f){ +var r=hl(_f); +r.a=0.7; +return r; +}; +return _2("dojox.charting.action2d.Highlight",_5,{defaultParams:{duration:400,easing:_6.backOut},optionalParams:{highlight:"red"},constructor:function(_10,_11,_12){ +var a=_12&&_12.highlight; +this.colorFunc=a?(_1.isFunction(a)?a:cc(a)):hl; +this.connect(); +},process:function(o){ +if(!o.shape||!(o.type in this.overOutEvents)){ +return; +} +if(o.element=="spider_circle"||o.element=="spider_plot"){ +return; +}else{ +if(o.element=="spider_poly"&&this.colorFunc==hl){ +this.colorFunc=_e; +} +} +var _13=o.run.name,_14=o.index,_15; +if(_13 in this.anim){ +_15=this.anim[_13][_14]; +}else{ +this.anim[_13]={}; +} +if(_15){ +_15.action.stop(true); +}else{ +var _16=o.shape.getFill(); +if(!_16||!(_16 instanceof _3)){ +return; +} +this.anim[_13][_14]=_15={start:_16,end:this.colorFunc(_16)}; +} +var _17=_15.start,end=_15.end; +if(o.type=="onmouseout"){ +var t=_17; +_17=end; +end=t; +} +_15.action=_7.animateFill({shape:o.shape,duration:this.duration,easing:this.easing,color:{start:_17,end:end}}); +if(o.type=="onmouseout"){ +_4.connect(_15.action,"onEnd",this,function(){ +if(this.anim[_13]){ +delete this.anim[_13][_14]; +} +}); +} +_15.action.play(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Highlight.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Highlight.js.uncompressed.js new file mode 100644 index 00000000..8630c1f4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Highlight.js.uncompressed.js @@ -0,0 +1,144 @@ +define("dojox/charting/action2d/Highlight", ["dojo/_base/lang", "dojo/_base/declare", "dojo/_base/Color", "dojo/_base/connect", "dojox/color/_base", + "./PlotAction", "dojo/fx/easing", "dojox/gfx/fx"], + function(lang, declare, Color, hub, c, PlotAction, dfe, dgf){ + + /*===== + var __HighlightCtorArgs = { + // summary: + // Additional arguments for highlighting actions. + // duration: Number? + // The amount of time in milliseconds for an animation to last. Default is 400. + // easing: dojo/fx/easing/*? + // An easing object (see dojo.fx.easing) for use in an animation. The + // default is dojo.fx.easing.backOut. + // highlight: String|dojo/_base/Color|Function? + // Either a color or a function that creates a color when highlighting happens. + }; + =====*/ + + var DEFAULT_SATURATION = 100, // % + DEFAULT_LUMINOSITY1 = 75, // % + DEFAULT_LUMINOSITY2 = 50, // % + cc = function(color){ + return function(){ return color; }; + }, + + hl = function(color){ + var a = new c.Color(color), + x = a.toHsl(); + if(x.s == 0){ + x.l = x.l < 50 ? 100 : 0; + }else{ + x.s = DEFAULT_SATURATION; + if(x.l < DEFAULT_LUMINOSITY2){ + x.l = DEFAULT_LUMINOSITY1; + }else if(x.l > DEFAULT_LUMINOSITY1){ + x.l = DEFAULT_LUMINOSITY2; + }else{ + x.l = x.l - DEFAULT_LUMINOSITY2 > DEFAULT_LUMINOSITY1 - x.l ? + DEFAULT_LUMINOSITY2 : DEFAULT_LUMINOSITY1; + } + } + var rcolor = c.fromHsl(x); + rcolor.a = a.a; + return rcolor; + }, + + spiderhl = function(color){ + var r = hl(color); + r.a = 0.7; + return r; + } + + return declare("dojox.charting.action2d.Highlight", PlotAction, { + // summary: + // Creates a highlighting action on a plot, where an element on that plot + // has a highlight on it. + + // the data description block for the widget parser + defaultParams: { + duration: 400, // duration of the action in ms + easing: dfe.backOut // easing for the action + }, + optionalParams: { + highlight: "red" // name for the highlight color + // programmatic instantiation can use functions and color objects + }, + + constructor: function(chart, plot, kwArgs){ + // summary: + // Create the highlighting action and connect it to the plot. + // chart: dojox/charting/Chart + // The chart this action belongs to. + // plot: String? + // The plot this action is attached to. If not passed, "default" is assumed. + // kwArgs: __HighlightCtorArgs? + // Optional keyword arguments object for setting parameters. + var a = kwArgs && kwArgs.highlight; + this.colorFunc = a ? (lang.isFunction(a) ? a : cc(a)) : hl; + this.connect(); + }, + + process: function(o){ + // summary: + // Process the action on the given object. + // o: dojox/gfx/shape.Shape + // The object on which to process the highlighting action. + if(!o.shape || !(o.type in this.overOutEvents)){ return; } + + // if spider let's deal only with poly + if(o.element == "spider_circle" || o.element == "spider_plot"){ + return; + }else if(o.element == "spider_poly" && this.colorFunc == hl){ + // hardcode alpha for compatibility reasons + // TODO to remove in 2.0 + this.colorFunc = spiderhl; + } + + var runName = o.run.name, index = o.index, anim; + + if(runName in this.anim){ + anim = this.anim[runName][index]; + }else{ + this.anim[runName] = {}; + } + + if(anim){ + anim.action.stop(true); + }else{ + var color = o.shape.getFill(); + if(!color || !(color instanceof Color)){ + return; + } + this.anim[runName][index] = anim = { + start: color, + end: this.colorFunc(color) + }; + } + + var start = anim.start, end = anim.end; + if(o.type == "onmouseout"){ + // swap colors + var t = start; + start = end; + end = t; + } + + anim.action = dgf.animateFill({ + shape: o.shape, + duration: this.duration, + easing: this.easing, + color: {start: start, end: end} + }); + if(o.type == "onmouseout"){ + hub.connect(anim.action, "onEnd", this, function(){ + if(this.anim[runName]){ + delete this.anim[runName][index]; + } + }); + } + anim.action.play(); + } + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Magnify.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Magnify.js new file mode 100644 index 00000000..8891ab70 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Magnify.js @@ -0,0 +1,58 @@ +//>>built +define("dojox/charting/action2d/Magnify",["dojo/_base/connect","dojo/_base/declare","./PlotAction","dojox/gfx/matrix","dojox/gfx/fx","dojo/fx","dojo/fx/easing"],function(_1,_2,_3,m,gf,df,_4){ +var _5=2; +return _2("dojox.charting.action2d.Magnify",_3,{defaultParams:{duration:400,easing:_4.backOut,scale:_5},optionalParams:{},constructor:function(_6,_7,_8){ +this.scale=_8&&typeof _8.scale=="number"?_8.scale:_5; +this.connect(); +},process:function(o){ +if(!o.shape||!(o.type in this.overOutEvents)||!("cx" in o)||!("cy" in o)){ +return; +} +if(o.element=="spider_plot"||o.element=="spider_poly"){ +return; +} +var _9=o.run.name,_a=o.index,_b=[],_c,_d,_e; +if(_9 in this.anim){ +_c=this.anim[_9][_a]; +}else{ +this.anim[_9]={}; +} +if(_c){ +_c.action.stop(true); +}else{ +this.anim[_9][_a]=_c={}; +} +if(o.type=="onmouseover"){ +_d=m.identity; +_e=this.scale; +}else{ +_d=m.scaleAt(this.scale,o.cx,o.cy); +_e=1/this.scale; +} +var _f={shape:o.shape,duration:this.duration,easing:this.easing,transform:[{name:"scaleAt",start:[1,o.cx,o.cy],end:[_e,o.cx,o.cy]},_d]}; +if(o.shape){ +_b.push(gf.animateTransform(_f)); +} +if(o.outline){ +_f.shape=o.outline; +_b.push(gf.animateTransform(_f)); +} +if(o.shadow){ +_f.shape=o.shadow; +_b.push(gf.animateTransform(_f)); +} +if(!_b.length){ +delete this.anim[_9][_a]; +return; +} +_c.action=df.combine(_b); +if(o.type=="onmouseout"){ +_1.connect(_c.action,"onEnd",this,function(){ +if(this.anim[_9]){ +delete this.anim[_9][_a]; +} +}); +} +_c.action.play(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Magnify.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Magnify.js.uncompressed.js new file mode 100644 index 00000000..0980279d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Magnify.js.uncompressed.js @@ -0,0 +1,123 @@ +define("dojox/charting/action2d/Magnify", ["dojo/_base/connect", "dojo/_base/declare", + "./PlotAction", "dojox/gfx/matrix", + "dojox/gfx/fx", "dojo/fx", "dojo/fx/easing"], + function(Hub, declare, PlotAction, m, gf, df, dfe){ + + /*===== + var __MagnifyCtorArgs = { + // summary: + // Additional arguments for magnifying actions. + // duration: Number? + // The amount of time in milliseconds for an animation to last. Default is 400. + // easing: dojo/fx/easing/*? + // An easing object (see dojo.fx.easing) for use in an animation. The + // default is dojo.fx.easing.backOut. + // scale: Number? + // The amount to magnify the given object to. Default is 2. + }; + =====*/ + + var DEFAULT_SCALE = 2; + + return declare("dojox.charting.action2d.Magnify", PlotAction, { + // summary: + // Create an action that magnifies the object the action is applied to. + + // the data description block for the widget parser + defaultParams: { + duration: 400, // duration of the action in ms + easing: dfe.backOut, // easing for the action + scale: DEFAULT_SCALE // scale of magnification + }, + optionalParams: {}, // no optional parameters + + constructor: function(chart, plot, kwArgs){ + // summary: + // Create the magnifying action. + // chart: dojox/charting/Chart + // The chart this action belongs to. + // plot: String? + // The plot to apply the action to. If not passed, "default" is assumed. + // kwArgs: __MagnifyCtorArgs? + // Optional keyword arguments for this action. + + // process optional named parameters + this.scale = kwArgs && typeof kwArgs.scale == "number" ? kwArgs.scale : DEFAULT_SCALE; + + this.connect(); + }, + + process: function(o){ + // summary: + // Process the action on the given object. + // o: dojox/gfx/shape.Shape + // The object on which to process the magnifying action. + if(!o.shape || !(o.type in this.overOutEvents) || + !("cx" in o) || !("cy" in o)){ return; } + + // if spider deal only with circle + if(o.element == "spider_plot" || o.element == "spider_poly"){ + return; + } + + var runName = o.run.name, index = o.index, vector = [], anim, init, scale; + + if(runName in this.anim){ + anim = this.anim[runName][index]; + }else{ + this.anim[runName] = {}; + } + + if(anim){ + anim.action.stop(true); + }else{ + this.anim[runName][index] = anim = {}; + } + + if(o.type == "onmouseover"){ + init = m.identity; + scale = this.scale; + }else{ + init = m.scaleAt(this.scale, o.cx, o.cy); + scale = 1 / this.scale; + } + + var kwArgs = { + shape: o.shape, + duration: this.duration, + easing: this.easing, + transform: [ + {name: "scaleAt", start: [1, o.cx, o.cy], end: [scale, o.cx, o.cy]}, + init + ] + }; + if(o.shape){ + vector.push(gf.animateTransform(kwArgs)); + } + if(o.outline){ + kwArgs.shape = o.outline; + vector.push(gf.animateTransform(kwArgs)); + } + if(o.shadow){ + kwArgs.shape = o.shadow; + vector.push(gf.animateTransform(kwArgs)); + } + + if(!vector.length){ + delete this.anim[runName][index]; + return; + } + + anim.action = df.combine(vector); + if(o.type == "onmouseout"){ + Hub.connect(anim.action, "onEnd", this, function(){ + if(this.anim[runName]){ + delete this.anim[runName][index]; + } + }); + } + anim.action.play(); + } + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseIndicator.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseIndicator.js new file mode 100644 index 00000000..9b46cec0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseIndicator.js @@ -0,0 +1,58 @@ +//>>built +define("dojox/charting/action2d/MouseIndicator",["dojo/_base/lang","dojo/_base/declare","dojo/_base/connect","dojo/_base/window","dojo/sniff","./ChartAction","./_IndicatorElement","dojox/lang/utils","dojo/_base/event","dojo/_base/array"],function(_1,_2,_3,_4,_5,_6,_7,du,_8,_9){ +return _2("dojox.charting.action2d.MouseIndicator",_6,{defaultParams:{series:"",vertical:true,autoScroll:true,fixed:true,precision:0,lines:true,labels:true,markers:true},optionalParams:{lineStroke:{},outlineStroke:{},shadowStroke:{},lineFill:{},stroke:{},outline:{},shadow:{},fill:{},fillFunc:null,labelFunc:null,font:"",fontColor:"",markerStroke:{},markerOutline:{},markerShadow:{},markerFill:{},markerSymbol:"",offset:{},start:false,mouseOver:false},constructor:function(_a,_b,_c){ +this.opt=_1.clone(this.defaultParams); +du.updateWithObject(this.opt,_c); +du.updateWithPattern(this.opt,_c,this.optionalParams); +this._listeners=this.opt.mouseOver?[{eventName:"onmousemove",methodName:"onMouseMove"}]:[{eventName:"onmousedown",methodName:"onMouseDown"}]; +this._uName="mouseIndicator"+this.opt.series; +this._handles=[]; +this.connect(); +},_disconnectHandles:function(){ +if(_5("ie")){ +this.chart.node.releaseCapture(); +} +_9.forEach(this._handles,_3.disconnect); +this._handles=[]; +},connect:function(){ +this.inherited(arguments); +this.chart.addPlot(this._uName,{type:_7,inter:this}); +},disconnect:function(){ +if(this._isMouseDown){ +this.onMouseUp(); +} +this.chart.removePlot(this._uName); +this.inherited(arguments); +this._disconnectHandles(); +},onChange:function(_d){ +},onMouseDown:function(_e){ +this._isMouseDown=true; +if(_5("ie")){ +this._handles.push(_3.connect(this.chart.node,"onmousemove",this,"onMouseMove")); +this._handles.push(_3.connect(this.chart.node,"onmouseup",this,"onMouseUp")); +this.chart.node.setCapture(); +}else{ +this._handles.push(_3.connect(_4.doc,"onmousemove",this,"onMouseMove")); +this._handles.push(_3.connect(_4.doc,"onmouseup",this,"onMouseUp")); +} +this._onMouseSingle(_e); +},onMouseMove:function(_f){ +if(this._isMouseDown||this.opt.mouseOver){ +this._onMouseSingle(_f); +} +},_onMouseSingle:function(_10){ +var _11=this.chart.getPlot(this._uName); +_11.pageCoord={x:_10.pageX,y:_10.pageY}; +_11.dirty=true; +this.chart.render(); +_8.stop(_10); +},onMouseUp:function(_12){ +var _13=this.chart.getPlot(this._uName); +_13.stopTrack(); +this._isMouseDown=false; +this._disconnectHandles(); +_13.pageCoord=null; +_13.dirty=true; +this.chart.render(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseIndicator.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseIndicator.js.uncompressed.js new file mode 100644 index 00000000..325fc126 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseIndicator.js.uncompressed.js @@ -0,0 +1,213 @@ +define("dojox/charting/action2d/MouseIndicator", ["dojo/_base/lang", "dojo/_base/declare", "dojo/_base/connect", "dojo/_base/window", "dojo/sniff", + "./ChartAction", "./_IndicatorElement", "dojox/lang/utils", "dojo/_base/event","dojo/_base/array"], + function(lang, declare, hub, win, has, ChartAction, IndicatorElement, du, eventUtil, arr){ + + /*===== + var __MouseIndicatorCtorArgs = { + // summary: + // Additional arguments for mouse indicator. + // series: String + // Target series name for this action. + // autoScroll: Boolean? + // Whether when moving indicator the chart is automatically scrolled. Default is true. + // lines: Boolean? + // Whether the indicator lines are visible or not. Default is true. + // labels: Boolean? + // Whether the indicator label is visible or not. Default is true. + // markers: Boolean? + // Whether the indicator markers are visible or not. Default is true. + // offset: {x, y}? + // A pair of (x, y) pixel coordinate to specify the offset between the end of the indicator line and the + // position at which the labels are rendered. Default is no offset which means it is automatically computed. + // start: Boolean? + // Whether the label is rendered at the start or end of the indicator. Default is false meaning end of + // the line. + // vertical: Boolean? + // Whether the indicator is vertical or not. Default is true. + // fixed: Boolean? + // Whether a fixed precision must be applied to data values for display. Default is true. + // precision: Number? + // The precision at which to round data values for display. Default is 0. + // lineStroke: dojo/gfx/Stroke? + // An optional stroke to use for indicator line. + // lineOutline: dojo/gfx/Stroke? + // An optional outline to use for indicator line. + // lineShadow: dojo/gfx/Stroke? + // An optional shadow to use for indicator line. + // stroke: dojo.gfx.Stroke? + // An optional stroke to use for indicator label background. + // outline: dojo.gfx.Stroke? + // An optional outline to use for indicator label background. + // shadow: dojo.gfx.Stroke? + // An optional shadow to use for indicator label background. + // fill: dojo.gfx.Fill? + // An optional fill to use for indicator label background. + // fillFunc: Function? + // An optional function to use to compute label background fill. It takes precedence over + // fill property when available. + // labelFunc: Function? + // An optional function to use to compute label text. It takes precedence over + // the default text when available. + // | function labelFunc(firstDataPoint, secondDataPoint, fixed, precision) {} + // `firstDataPoint` is the `{x, y}` data coordinates pointed by the mouse. + // `secondDataPoint` is only useful for dual touch indicators not mouse indicators. + // `fixed` is true if fixed precision must be applied. + // `precision` is the requested precision to be applied. + // font: String? + // A font definition to use for indicator label background. + // fontColor: String|dojo.Color? + // The color to use for indicator label background. + // markerStroke: dojo.gfx.Stroke? + // An optional stroke to use for indicator marker. + // markerOutline: dojo.gfx.Stroke? + // An optional outline to use for indicator marker. + // markerShadow: dojo.gfx.Stroke? + // An optional shadow to use for indicator marker. + // markerFill: dojo.gfx.Fill? + // An optional fill to use for indicator marker. + // markerSymbol: String? + // An optional symbol string to use for indicator marker. + // mouseOver: Boolean? + // Whether the mouse indicator is enabled on mouse over or on mouse drag. Default is false. + }; + =====*/ + + return declare("dojox.charting.action2d.MouseIndicator", ChartAction, { + // summary: + // Create a mouse indicator action. You can drag mouse over the chart to display a data indicator. + + // the data description block for the widget parser + defaultParams: { + series: "", + vertical: true, + autoScroll: true, + fixed: true, + precision: 0, + lines: true, + labels: true, + markers: true + }, + optionalParams: { + lineStroke: {}, + outlineStroke: {}, + shadowStroke: {}, + lineFill: {}, + stroke: {}, + outline: {}, + shadow: {}, + fill: {}, + fillFunc: null, + labelFunc: null, + font: "", + fontColor: "", + markerStroke: {}, + markerOutline: {}, + markerShadow: {}, + markerFill: {}, + markerSymbol: "", + offset: {}, + start: false, + mouseOver: false + }, + + constructor: function(chart, plot, kwArgs){ + // summary: + // Create an mouse indicator action and connect it. + // chart: dojox/charting/Chart + // The chart this action applies to. + // kwArgs: __MouseIndicatorCtorArgs? + // Optional arguments for the chart action. + this.opt = lang.clone(this.defaultParams); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + this._listeners = this.opt.mouseOver?[{eventName: "onmousemove", methodName: "onMouseMove"}]: + [{eventName: "onmousedown", methodName: "onMouseDown"}]; + this._uName = "mouseIndicator"+this.opt.series; + this._handles = []; + this.connect(); + }, + + _disconnectHandles: function(){ + if(has("ie")){ + this.chart.node.releaseCapture(); + } + arr.forEach(this._handles, hub.disconnect); + this._handles = []; + }, + + connect: function(){ + // summary: + // Connect this action to the chart. This adds a indicator plot + // to the chart that's why Chart.render() must be called after connect. + this.inherited(arguments); + // add plot with unique name + this.chart.addPlot(this._uName, {type: IndicatorElement, inter: this }); + }, + + disconnect: function(){ + // summary: + // Disconnect this action from the chart. + if(this._isMouseDown){ + this.onMouseUp(); + } + this.chart.removePlot(this._uName); + this.inherited(arguments); + this._disconnectHandles(); + }, + + onChange: function(event){ + // summary: + // Called when the indicator value changed. + // event: + // An event with a start property containing the {x, y} data points of the mouse indicator. It also + // contains a label property containing the displayed text. + }, + + onMouseDown: function(event){ + // summary: + // Called when mouse is down on the chart. + this._isMouseDown = true; + + // we now want to capture mouse move events everywhere to avoid + // stop scrolling when going out of the chart window + if(has("ie")){ + this._handles.push(hub.connect(this.chart.node, "onmousemove", this, "onMouseMove")); + this._handles.push(hub.connect(this.chart.node, "onmouseup", this, "onMouseUp")); + this.chart.node.setCapture(); + }else{ + this._handles.push(hub.connect(win.doc, "onmousemove", this, "onMouseMove")); + this._handles.push(hub.connect(win.doc, "onmouseup", this, "onMouseUp")); + } + + this._onMouseSingle(event); + }, + + onMouseMove: function(event){ + // summary: + // Called when the mouse is moved on the chart. + if(this._isMouseDown || this.opt.mouseOver){ + this._onMouseSingle(event); + } + }, + + _onMouseSingle: function(event){ + var plot = this.chart.getPlot(this._uName); + plot.pageCoord = {x: event.pageX, y: event.pageY}; + plot.dirty = true; + this.chart.render(); + eventUtil.stop(event); + }, + + onMouseUp: function(event){ + // summary: + // Called when mouse is up on the chart. + var plot = this.chart.getPlot(this._uName); + plot.stopTrack(); + this._isMouseDown = false; + this._disconnectHandles(); + plot.pageCoord = null; + plot.dirty = true; + this.chart.render(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseZoomAndPan.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseZoomAndPan.js new file mode 100644 index 00000000..3ee15697 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseZoomAndPan.js @@ -0,0 +1,131 @@ +//>>built +define("dojox/charting/action2d/MouseZoomAndPan",["dojo/_base/declare","dojo/_base/window","dojo/_base/array","dojo/_base/event","dojo/_base/connect","dojo/mouse","./ChartAction","dojo/sniff","dojo/dom-prop","dojo/keys","dojo/has!dojo-bidi?../bidi/action2d/ZoomAndPan"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b){ +var _c=_8("mozilla")?3:120; +var _d={none:function(_e){ +return !_e.ctrlKey&&!_e.altKey&&!_e.shiftKey; +},ctrl:function(_f){ +return _f.ctrlKey&&!_f.altKey&&!_f.shiftKey; +},alt:function(_10){ +return !_10.ctrlKey&&_10.altKey&&!_10.shiftKey; +},shift:function(_11){ +return !_11.ctrlKey&&!_11.altKey&&_11.shiftKey; +}}; +var _12=_1(_8("dojo-bidi")?"dojox.charting.action2d.NonBidiMouseZoomAndPan":"dojox.charting.action2d.MouseZoomAndPan",_7,{defaultParams:{axis:"x",scaleFactor:1.2,maxScale:100,enableScroll:true,enableDoubleClickZoom:true,enableKeyZoom:true,keyZoomModifier:"ctrl"},optionalParams:{},constructor:function(_13,_14,_15){ +this._listeners=[{eventName:_6.wheel,methodName:"onMouseWheel"}]; +if(!_15){ +_15={}; +} +this.axis=_15.axis?_15.axis:"x"; +this.scaleFactor=_15.scaleFactor?_15.scaleFactor:1.2; +this.maxScale=_15.maxScale?_15.maxScale:100; +this.enableScroll=_15.enableScroll!=undefined?_15.enableScroll:true; +this.enableDoubleClickZoom=_15.enableDoubleClickZoom!=undefined?_15.enableDoubleClickZoom:true; +this.enableKeyZoom=_15.enableKeyZoom!=undefined?_15.enableKeyZoom:true; +this.keyZoomModifier=_15.keyZoomModifier?_15.keyZoomModifier:"ctrl"; +if(this.enableScroll){ +this._listeners.push({eventName:"onmousedown",methodName:"onMouseDown"}); +} +if(this.enableDoubleClickZoom){ +this._listeners.push({eventName:"ondblclick",methodName:"onDoubleClick"}); +} +if(this.enableKeyZoom){ +this._listeners.push({eventName:"keypress",methodName:"onKeyPress"}); +} +this._handles=[]; +this.connect(); +},_disconnectHandles:function(){ +if(_8("ie")){ +this.chart.node.releaseCapture(); +} +_3.forEach(this._handles,_5.disconnect); +this._handles=[]; +},connect:function(){ +this.inherited(arguments); +if(this.enableKeyZoom){ +_9.set(this.chart.node,"tabindex","0"); +} +},disconnect:function(){ +this.inherited(arguments); +if(this.enableKeyZoom){ +_9.set(this.chart.node,"tabindex","-1"); +} +this._disconnectHandles(); +},onMouseDown:function(_16){ +var _17=this.chart,_18=_17.getAxis(this.axis); +if(!_18.vertical){ +this._startCoord=_16.pageX; +}else{ +this._startCoord=_16.pageY; +} +this._startOffset=_18.getWindowOffset(); +this._isPanning=true; +if(_8("ie")){ +this._handles.push(_5.connect(this.chart.node,"onmousemove",this,"onMouseMove")); +this._handles.push(_5.connect(this.chart.node,"onmouseup",this,"onMouseUp")); +this.chart.node.setCapture(); +}else{ +this._handles.push(_5.connect(_2.doc,"onmousemove",this,"onMouseMove")); +this._handles.push(_5.connect(_2.doc,"onmouseup",this,"onMouseUp")); +} +_17.node.focus(); +_4.stop(_16); +},onMouseMove:function(_19){ +if(this._isPanning){ +var _1a=this.chart,_1b=_1a.getAxis(this.axis); +var _1c=this._getDelta(_19); +var _1d=_1b.getScaler().bounds,s=_1d.span/(_1d.upper-_1d.lower); +var _1e=_1b.getWindowScale(); +_1a.setAxisWindow(this.axis,_1e,this._startOffset-_1c/s/_1e); +_1a.render(); +} +},onMouseUp:function(_1f){ +this._isPanning=false; +this._disconnectHandles(); +},onMouseWheel:function(_20){ +var _21=_20.wheelDelta/_c; +if(_21>-1&&_21<0){ +_21=-1; +}else{ +if(_21>0&&_21<1){ +_21=1; +} +} +this._onZoom(_21,_20); +},onKeyPress:function(_22){ +if(_d[this.keyZoomModifier](_22)){ +if(_22.keyChar=="+"||_22.keyCode==_a.NUMPAD_PLUS){ +this._onZoom(1,_22); +}else{ +if(_22.keyChar=="-"||_22.keyCode==_a.NUMPAD_MINUS){ +this._onZoom(-1,_22); +} +} +} +},onDoubleClick:function(_23){ +var _24=this.chart,_25=_24.getAxis(this.axis); +var _26=1/this.scaleFactor; +if(_25.getWindowScale()==1){ +var _27=_25.getScaler(),_28=_27.bounds.from,end=_27.bounds.to,_29=(_28+end)/2,_2a=this.plot.toData({x:_23.pageX,y:_23.pageY})[this.axis],_2b=_26*(_28-_29)+_2a,_2c=_26*(end-_29)+_2a; +_24.zoomIn(this.axis,[_2b,_2c]); +}else{ +_24.setAxisWindow(this.axis,1,0); +_24.render(); +} +_4.stop(_23); +},_onZoom:function(_2d,_2e){ +var _2f=(_2d<0?Math.abs(_2d)*this.scaleFactor:1/(Math.abs(_2d)*this.scaleFactor)); +var _30=this.chart,_31=_30.getAxis(this.axis); +var _32=_31.getWindowScale(); +if(_32/_2f>this.maxScale){ +return; +} +var _33=_31.getScaler(),_34=_33.bounds.from,end=_33.bounds.to; +var _35=(_2e.type=="keypress")?(_34+end)/2:this.plot.toData({x:_2e.pageX,y:_2e.pageY})[this.axis]; +var _36=_2f*(_34-_35)+_35,_37=_2f*(end-_35)+_35; +_30.zoomIn(this.axis,[_36,_37]); +_4.stop(_2e); +},_getDelta:function(_38){ +return this.chart.getAxis(this.axis).vertical?(this._startCoord-_38.pageY):(_38.pageX-this._startCoord); +}}); +return _8("dojo-bidi")?_1("dojox.charting.action2d.MouseZoomAndPan",[_12,_b]):_12; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseZoomAndPan.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseZoomAndPan.js.uncompressed.js new file mode 100644 index 00000000..98098f74 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MouseZoomAndPan.js.uncompressed.js @@ -0,0 +1,241 @@ +define("dojox/charting/action2d/MouseZoomAndPan", ["dojo/_base/declare", "dojo/_base/window", "dojo/_base/array", "dojo/_base/event", + "dojo/_base/connect", "dojo/mouse", "./ChartAction", "dojo/sniff", "dojo/dom-prop", "dojo/keys", + "dojo/has!dojo-bidi?../bidi/action2d/ZoomAndPan"], + function(declare, win, arr, eventUtil, connect, mouse, ChartAction, has, domProp, keys, BidiMouseZoomAndPan){ + + /*===== + var __MouseZoomAndPanCtorArgs = { + // summary: + // Additional arguments for mouse zoom and pan actions. + // axis: String? + // Target axis name for this action. Default is "x". + // scaleFactor: Number? + // The scale factor applied on mouse wheel zoom. Default is 1.2. + // maxScale: Number? + // The max scale factor accepted by this chart action. Default is 100. + // enableScroll: Boolean? + // Whether mouse drag gesture should scroll the chart. Default is true. + // enableDoubleClickZoom: Boolean? + // Whether a double click gesture should toggle between fit and zoom on the chart. Default is true. + // enableKeyZoom: Boolean? + // Whether a keyZoomModifier + + or keyZoomModifier + - key press should zoom in our out on the chart. Default is true. + // keyZoomModifier: String? + // Which keyboard modifier should used for keyboard zoom in and out. This should be one of "alt", "ctrl", "shift" or "none" for no modifier. Default is "ctrl". + }; + =====*/ + + var sUnit = has("mozilla") ? 3 : 120; + var keyTests = { + none: function(event){ + return !event.ctrlKey && !event.altKey && !event.shiftKey; + }, + ctrl: function(event){ + return event.ctrlKey && !event.altKey && !event.shiftKey; + }, + alt: function(event){ + return !event.ctrlKey && event.altKey && !event.shiftKey; + }, + shift: function(event){ + return !event.ctrlKey && !event.altKey && event.shiftKey; + } + }; + + var MouseZoomAndPan = declare(has("dojo-bidi")? "dojox.charting.action2d.NonBidiMouseZoomAndPan" : "dojox.charting.action2d.MouseZoomAndPan", ChartAction, { + // summary: + // Create an mouse zoom and pan action. + // You can zoom in or out the data window with mouse wheel. You can scroll using mouse drag gesture. + // You can toggle between zoom and fit view using double click on the chart. + + // the data description block for the widget parser + defaultParams: { + axis: "x", + scaleFactor: 1.2, + maxScale: 100, + enableScroll: true, + enableDoubleClickZoom: true, + enableKeyZoom: true, + keyZoomModifier: "ctrl" + }, + optionalParams: {}, // no optional parameters + + constructor: function(chart, plot, kwArgs){ + // summary: + // Create an mouse zoom and pan action and connect it. + // chart: dojox/charting/Chart + // The chart this action applies to. + // kwArgs: __MouseZoomAndPanCtorArgs? + // Optional arguments for the chart action. + this._listeners = [{eventName: mouse.wheel, methodName: "onMouseWheel"}]; + if(!kwArgs){ kwArgs = {}; } + this.axis = kwArgs.axis ? kwArgs.axis : "x"; + this.scaleFactor = kwArgs.scaleFactor ? kwArgs.scaleFactor : 1.2; + this.maxScale = kwArgs.maxScale ? kwArgs.maxScale : 100; + this.enableScroll = kwArgs.enableScroll != undefined ? kwArgs.enableScroll : true; + this.enableDoubleClickZoom = kwArgs.enableDoubleClickZoom != undefined ? kwArgs.enableDoubleClickZoom : true; + this.enableKeyZoom = kwArgs.enableKeyZoom != undefined ? kwArgs.enableKeyZoom : true; + this.keyZoomModifier = kwArgs.keyZoomModifier ? kwArgs.keyZoomModifier : "ctrl"; + if(this.enableScroll){ + this._listeners.push({eventName: "onmousedown", methodName: "onMouseDown"}); + } + if(this.enableDoubleClickZoom){ + this._listeners.push({eventName: "ondblclick", methodName: "onDoubleClick"}); + } + if(this.enableKeyZoom){ + this._listeners.push({eventName: "keypress", methodName: "onKeyPress"}); + } + this._handles = []; + this.connect(); + }, + + _disconnectHandles: function(){ + if(has("ie")){ + this.chart.node.releaseCapture(); + } + arr.forEach(this._handles, connect.disconnect); + this._handles = []; + }, + + connect: function(){ + // summary: + // Connect this action to the chart. + this.inherited(arguments); + if(this.enableKeyZoom){ + // we want to be able to get focus to receive key events + domProp.set(this.chart.node, "tabindex", "0"); + // if one doesn't want a focus border he can do something like + // dojo.style(this.chart.node, "outline", "none"); + } + }, + + disconnect: function(){ + // summary: + // Disconnect this action from the chart. + this.inherited(arguments); + if(this.enableKeyZoom){ + // we don't need anymore to be able to get focus to receive key events + domProp.set(this.chart.node, "tabindex", "-1"); + } + // in case we disconnect before the end of the action + this._disconnectHandles(); + }, + + onMouseDown: function(event){ + // summary: + // Called when mouse is down on the chart. + var chart = this.chart, axis = chart.getAxis(this.axis); + if(!axis.vertical){ + this._startCoord = event.pageX; + }else{ + this._startCoord = event.pageY; + } + this._startOffset = axis.getWindowOffset(); + this._isPanning = true; + // we now want to capture mouse move events everywhere to avoid + // stop scrolling when going out of the chart window + if(has("ie")){ + this._handles.push(connect.connect(this.chart.node, "onmousemove", this, "onMouseMove")); + this._handles.push(connect.connect(this.chart.node, "onmouseup", this, "onMouseUp")); + this.chart.node.setCapture(); + }else{ + this._handles.push(connect.connect(win.doc, "onmousemove", this, "onMouseMove")); + this._handles.push(connect.connect(win.doc, "onmouseup", this, "onMouseUp")); + } + chart.node.focus(); + // prevent the browser from trying the drag on the "image" + eventUtil.stop(event); + }, + + onMouseMove: function(event){ + // summary: + // Called when mouse is moved on the chart. + if(this._isPanning){ + var chart = this.chart, axis = chart.getAxis(this.axis); + var delta = this._getDelta(event); + + var bounds = axis.getScaler().bounds, + s = bounds.span / (bounds.upper - bounds.lower); + + var scale = axis.getWindowScale(); + chart.setAxisWindow(this.axis, scale, this._startOffset - delta / s / scale); + chart.render(); + } + }, + + onMouseUp: function(event){ + // summary: + // Called when mouse is up on the chart. + this._isPanning = false; + this._disconnectHandles(); + }, + + onMouseWheel: function(event){ + // summary: + // Called when mouse wheel is used on the chart. + var scroll = event.wheelDelta / sUnit; + // on Mozilla the sUnit might actually not always be 3 + // make sure we never have -1 < scroll < 1 + if(scroll > -1 && scroll < 0){ + scroll = -1; + }else if(scroll > 0 && scroll < 1){ + scroll = 1; + } + this._onZoom(scroll, event); + }, + + onKeyPress: function(event){ + // summary: + // Called when a key is pressed on the chart. + if(keyTests[this.keyZoomModifier](event)){ + if(event.keyChar == "+" || event.keyCode == keys.NUMPAD_PLUS){ + this._onZoom(1, event); + }else if(event.keyChar == "-" || event.keyCode == keys.NUMPAD_MINUS){ + this._onZoom(-1, event); + } + } + }, + + onDoubleClick: function(event){ + // summary: + // Called when the mouse is double is double clicked on the chart. Toggle between zoom and fit chart. + var chart = this.chart, axis = chart.getAxis(this.axis); + var scale = 1 / this.scaleFactor; + // are we fit? + if(axis.getWindowScale()==1){ + // fit => zoom + var scaler = axis.getScaler(), start = scaler.bounds.from, end = scaler.bounds.to, + oldMiddle = (start + end) / 2, newMiddle = this.plot.toData({x: event.pageX, y: event.pageY})[this.axis], + newStart = scale * (start - oldMiddle) + newMiddle, newEnd = scale * (end - oldMiddle) + newMiddle; + chart.zoomIn(this.axis, [newStart, newEnd]); + }else{ + // non fit => fit + chart.setAxisWindow(this.axis, 1, 0); + chart.render(); + } + eventUtil.stop(event); + }, + + _onZoom: function(scroll, event){ + var scale = (scroll < 0 ? Math.abs(scroll)*this.scaleFactor : + 1 / (Math.abs(scroll)*this.scaleFactor)); + var chart = this.chart, axis = chart.getAxis(this.axis); + // after wheel reset event position exactly if we could start a new scroll action + var cscale = axis.getWindowScale(); + if(cscale / scale > this.maxScale){ + return; + } + var scaler = axis.getScaler(), start = scaler.bounds.from, end = scaler.bounds.to; + // keep mouse pointer as transformation center if available otherwise center + var middle = (event.type == "keypress") ? (start + end) / 2 : + this.plot.toData({x: event.pageX, y: event.pageY})[this.axis]; + var newStart = scale * (start - middle) + middle, newEnd = scale * (end - middle) + middle; + chart.zoomIn(this.axis, [newStart, newEnd]); + // do not scroll browser + eventUtil.stop(event); + }, + + _getDelta: function(event){ + return this.chart.getAxis(this.axis).vertical?(this._startCoord- event.pageY):(event.pageX - this._startCoord); + } + }); + return has("dojo-bidi")? declare("dojox.charting.action2d.MouseZoomAndPan", [MouseZoomAndPan, BidiMouseZoomAndPan]) : MouseZoomAndPan; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MoveSlice.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MoveSlice.js new file mode 100644 index 00000000..1029d383 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MoveSlice.js @@ -0,0 +1,54 @@ +//>>built +define("dojox/charting/action2d/MoveSlice",["dojo/_base/connect","dojo/_base/declare","dojo/_base/array","./PlotAction","dojo/fx/easing","dojox/gfx/matrix","dojox/gfx/fx","dojox/lang/functional","dojox/lang/functional/scan","dojox/lang/functional/fold"],function(_1,_2,_3,_4,_5,m,gf,df){ +var _6=1.05,_7=7; +return _2("dojox.charting.action2d.MoveSlice",_4,{defaultParams:{duration:400,easing:_5.backOut,scale:_6,shift:_7},optionalParams:{},constructor:function(_8,_9,_a){ +if(!_a){ +_a={}; +} +this.scale=typeof _a.scale=="number"?_a.scale:_6; +this.shift=typeof _a.shift=="number"?_a.shift:_7; +this.connect(); +},process:function(o){ +if(!o.shape||o.element!="slice"||!(o.type in this.overOutEvents)){ +return; +} +if(!this.angles){ +var _b=m._degToRad(o.plot.opt.startAngle); +if(typeof o.run.data[0]=="number"){ +this.angles=df.map(df.scanl(o.run.data,"+",0),"* 2 * Math.PI / this",df.foldl(o.run.data,"+",0)); +}else{ +this.angles=df.map(df.scanl(o.run.data,"a + b.y",0),"* 2 * Math.PI / this",df.foldl(o.run.data,"a + b.y",0)); +} +this.angles=_3.map(this.angles,function(_c){ +return _c+_b; +}); +} +var _d=o.index,_e,_f,_10,_11,_12,_13=(this.angles[_d]+this.angles[_d+1])/2,_14=m.rotateAt(-_13,o.cx,o.cy),_15=m.rotateAt(_13,o.cx,o.cy); +_e=this.anim[_d]; +if(_e){ +_e.action.stop(true); +}else{ +this.anim[_d]=_e={}; +} +if(o.type=="onmouseover"){ +_11=0; +_12=this.shift; +_f=1; +_10=this.scale; +}else{ +_11=this.shift; +_12=0; +_f=this.scale; +_10=1; +} +_e.action=gf.animateTransform({shape:o.shape,duration:this.duration,easing:this.easing,transform:[_15,{name:"translate",start:[_11,0],end:[_12,0]},{name:"scaleAt",start:[_f,o.cx,o.cy],end:[_10,o.cx,o.cy]},_14]}); +if(o.type=="onmouseout"){ +_1.connect(_e.action,"onEnd",this,function(){ +delete this.anim[_d]; +}); +} +_e.action.play(); +},reset:function(){ +delete this.angles; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MoveSlice.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MoveSlice.js.uncompressed.js new file mode 100644 index 00000000..ae74e3ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/MoveSlice.js.uncompressed.js @@ -0,0 +1,124 @@ +define("dojox/charting/action2d/MoveSlice", ["dojo/_base/connect", "dojo/_base/declare", "dojo/_base/array", "./PlotAction", "dojo/fx/easing", "dojox/gfx/matrix", + "dojox/gfx/fx", "dojox/lang/functional", "dojox/lang/functional/scan", "dojox/lang/functional/fold"], + function(hub, declare, array, PlotAction, dfe, m, gf, df){ + + /*===== + var __MoveSliceCtorArgs = { + // summary: + // Additional arguments for move slice actions. + // duration: Number? + // The amount of time in milliseconds for an animation to last. Default is 400. + // easing: dojo/fx/easing/*? + // An easing object (see dojo.fx.easing) for use in an animation. The + // default is dojo.fx.easing.backOut. + // scale: Number? + // The amount to scale the pie slice. Default is 1.05. + // shift: Number? + // The amount in pixels to shift the pie slice. Default is 7. + }; + =====*/ + + var DEFAULT_SCALE = 1.05, + DEFAULT_SHIFT = 7; // px + + return declare("dojox.charting.action2d.MoveSlice", PlotAction, { + // summary: + // Create an action for a pie chart that moves and scales a pie slice. + + // the data description block for the widget parser + defaultParams: { + duration: 400, // duration of the action in ms + easing: dfe.backOut, // easing for the action + scale: DEFAULT_SCALE, // scale of magnification + shift: DEFAULT_SHIFT // shift of the slice + }, + optionalParams: {}, // no optional parameters + + constructor: function(chart, plot, kwArgs){ + // summary: + // Create the slice moving action and connect it to the plot. + // chart: dojox/charting/Chart + // The chart this action belongs to. + // plot: String? + // The plot this action is attached to. If not passed, "default" is assumed. + // kwArgs: __MoveSliceCtorArgs? + // Optional keyword arguments object for setting parameters. + if(!kwArgs){ kwArgs = {}; } + this.scale = typeof kwArgs.scale == "number" ? kwArgs.scale : DEFAULT_SCALE; + this.shift = typeof kwArgs.shift == "number" ? kwArgs.shift : DEFAULT_SHIFT; + + this.connect(); + }, + + process: function(o){ + // summary: + // Process the action on the given object. + // o: dojox/gfx/shape.Shape + // The object on which to process the slice moving action. + if(!o.shape || o.element != "slice" || !(o.type in this.overOutEvents)){ return; } + + if(!this.angles){ + // calculate the running total of slice angles + var startAngle = m._degToRad(o.plot.opt.startAngle); + if(typeof o.run.data[0] == "number"){ + this.angles = df.map(df.scanl(o.run.data, "+", 0), + "* 2 * Math.PI / this", df.foldl(o.run.data, "+", 0)); + }else{ + this.angles = df.map(df.scanl(o.run.data, "a + b.y", 0), + "* 2 * Math.PI / this", df.foldl(o.run.data, "a + b.y", 0)); + } + this.angles = array.map(this.angles, function(item){ + return item + startAngle; + }); + } + + var index = o.index, anim, startScale, endScale, startOffset, endOffset, + angle = (this.angles[index] + this.angles[index + 1]) / 2, + rotateTo0 = m.rotateAt(-angle, o.cx, o.cy), + rotateBack = m.rotateAt( angle, o.cx, o.cy); + + anim = this.anim[index]; + + if(anim){ + anim.action.stop(true); + }else{ + this.anim[index] = anim = {}; + } + + if(o.type == "onmouseover"){ + startOffset = 0; + endOffset = this.shift; + startScale = 1; + endScale = this.scale; + }else{ + startOffset = this.shift; + endOffset = 0; + startScale = this.scale; + endScale = 1; + } + + anim.action = gf.animateTransform({ + shape: o.shape, + duration: this.duration, + easing: this.easing, + transform: [ + rotateBack, + {name: "translate", start: [startOffset, 0], end: [endOffset, 0]}, + {name: "scaleAt", start: [startScale, o.cx, o.cy], end: [endScale, o.cx, o.cy]}, + rotateTo0 + ] + }); + + if(o.type == "onmouseout"){ + hub.connect(anim.action, "onEnd", this, function(){ + delete this.anim[index]; + }); + } + anim.action.play(); + }, + + reset: function(){ + delete this.angles; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/PlotAction.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/PlotAction.js new file mode 100644 index 00000000..96b52af9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/PlotAction.js @@ -0,0 +1,28 @@ +//>>built +define("dojox/charting/action2d/PlotAction",["dojo/_base/connect","dojo/_base/declare","./Base","dojo/fx/easing","dojox/lang/functional"],function(_1,_2,_3,_4,df){ +var _5=400,_6=_4.backOut; +return _2("dojox.charting.action2d.PlotAction",_3,{overOutEvents:{onmouseover:1,onmouseout:1},constructor:function(_7,_8,_9){ +this.anim={}; +if(!_9){ +_9={}; +} +this.duration=_9.duration?_9.duration:_5; +this.easing=_9.easing?_9.easing:_6; +},connect:function(){ +this.handle=this.chart.connectToPlot(this.plot.name,this,"process"); +},disconnect:function(){ +if(this.handle){ +_1.disconnect(this.handle); +this.handle=null; +} +},reset:function(){ +},destroy:function(){ +this.inherited(arguments); +df.forIn(this.anim,function(o){ +df.forIn(o,function(_a){ +_a.action.stop(true); +}); +}); +this.anim={}; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/PlotAction.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/PlotAction.js.uncompressed.js new file mode 100644 index 00000000..951384d0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/PlotAction.js.uncompressed.js @@ -0,0 +1,74 @@ +define("dojox/charting/action2d/PlotAction", ["dojo/_base/connect", "dojo/_base/declare", "./Base", "dojo/fx/easing", "dojox/lang/functional"], + function(hub, declare, Base, dfe, df){ + + /*===== + var __PlotActionCtorArgs = { + // summary: + // The base keyword arguments object for creating an action2d. + // duration: Number? + // The amount of time in milliseconds for an animation to last. Default is 400. + // easing: dojo/fx/easing/*? + // An easing object (see dojo.fx.easing) for use in an animation. The + // default is dojo.fx.easing.backOut. + }; + =====*/ + + var DEFAULT_DURATION = 400, // ms + DEFAULT_EASING = dfe.backOut; + + return declare("dojox.charting.action2d.PlotAction", Base, { + // summary: + // Base action class for plot actions. + + overOutEvents: {onmouseover: 1, onmouseout: 1}, + + constructor: function(chart, plot, kwargs){ + // summary: + // Create a new base PlotAction. + // chart: dojox/charting/Chart + // The chart this action applies to. + // plot: String? + // The name of the plot this action belongs to. If none is passed "default" is assumed. + // kwargs: __PlotActionCtorArgs? + // Optional arguments for the action. + this.anim = {}; + + // process common optional named parameters + if(!kwargs){ kwargs = {}; } + this.duration = kwargs.duration ? kwargs.duration : DEFAULT_DURATION; + this.easing = kwargs.easing ? kwargs.easing : DEFAULT_EASING; + }, + + connect: function(){ + // summary: + // Connect this action to the given plot. + this.handle = this.chart.connectToPlot(this.plot.name, this, "process"); + }, + + disconnect: function(){ + // summary: + // Disconnect this action from the given plot, if connected. + if(this.handle){ + hub.disconnect(this.handle); + this.handle = null; + } + }, + + reset: function(){ + // summary: + // Reset the action. + }, + + destroy: function(){ + // summary: + // Do any cleanup needed when destroying parent elements. + this.inherited(arguments); + df.forIn(this.anim, function(o){ + df.forIn(o, function(anim){ + anim.action.stop(true); + }); + }); + this.anim = {}; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Shake.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Shake.js new file mode 100644 index 00000000..b859eb67 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Shake.js @@ -0,0 +1,52 @@ +//>>built +define("dojox/charting/action2d/Shake",["dojo/_base/connect","dojo/_base/declare","./PlotAction","dojo/fx","dojo/fx/easing","dojox/gfx/matrix","dojox/gfx/fx"],function(_1,_2,_3,df,_4,m,gf){ +var _5=3; +return _2("dojox.charting.action2d.Shake",_3,{defaultParams:{duration:400,easing:_4.backOut,shiftX:_5,shiftY:_5},optionalParams:{},constructor:function(_6,_7,_8){ +if(!_8){ +_8={}; +} +this.shiftX=typeof _8.shiftX=="number"?_8.shiftX:_5; +this.shiftY=typeof _8.shiftY=="number"?_8.shiftY:_5; +this.connect(); +},process:function(o){ +if(!o.shape||!(o.type in this.overOutEvents)){ +return; +} +var _9=o.run.name,_a=o.index,_b=[],_c; +if(_9 in this.anim){ +_c=this.anim[_9][_a]; +}else{ +this.anim[_9]={}; +} +if(_c){ +_c.action.stop(true); +}else{ +this.anim[_9][_a]=_c={}; +} +var _d={shape:o.shape,duration:this.duration,easing:this.easing,transform:[{name:"translate",start:[this.shiftX,this.shiftY],end:[0,0]},m.identity]}; +if(o.shape){ +_b.push(gf.animateTransform(_d)); +} +if(o.oultine){ +_d.shape=o.outline; +_b.push(gf.animateTransform(_d)); +} +if(o.shadow){ +_d.shape=o.shadow; +_b.push(gf.animateTransform(_d)); +} +if(!_b.length){ +delete this.anim[_9][_a]; +return; +} +_c.action=df.combine(_b); +if(o.type=="onmouseout"){ +_1.connect(_c.action,"onEnd",this,function(){ +if(this.anim[_9]){ +delete this.anim[_9][_a]; +} +}); +} +_c.action.play(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Shake.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Shake.js.uncompressed.js new file mode 100644 index 00000000..ee55ab56 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Shake.js.uncompressed.js @@ -0,0 +1,108 @@ +define("dojox/charting/action2d/Shake", ["dojo/_base/connect", "dojo/_base/declare", "./PlotAction", + "dojo/fx", "dojo/fx/easing", "dojox/gfx/matrix", "dojox/gfx/fx"], + function(hub, declare, PlotAction, df, dfe, m, gf){ + + /*===== + var __ShakeCtorArgs = { + // summary: + // Additional arguments for shaking actions. + // duration: Number? + // The amount of time in milliseconds for an animation to last. Default is 400. + // easing: dojo/fx/easing/*? + // An easing object (see dojo.fx.easing) for use in an animation. The + // default is dojo.fx.easing.backOut. + // shift: Number? + // The amount in pixels to shift the pie slice. Default is 3. + }; + =====*/ + + var DEFAULT_SHIFT = 3; + + return declare("dojox.charting.action2d.Shake", PlotAction, { + // summary: + // Create a shaking action for use on an element in a chart. + + // the data description block for the widget parser + defaultParams: { + duration: 400, // duration of the action in ms + easing: dfe.backOut, // easing for the action + shiftX: DEFAULT_SHIFT, // shift of the element along the X axis + shiftY: DEFAULT_SHIFT // shift of the element along the Y axis + }, + optionalParams: {}, // no optional parameters + + constructor: function(chart, plot, kwArgs){ + // summary: + // Create the shaking action and connect it to the plot. + // chart: dojox/charting/Chart + // The chart this action belongs to. + // plot: String? + // The plot this action is attached to. If not passed, "default" is assumed. + // kwArgs: __ShakeCtorArgs? + // Optional keyword arguments object for setting parameters. + if(!kwArgs){ kwArgs = {}; } + this.shiftX = typeof kwArgs.shiftX == "number" ? kwArgs.shiftX : DEFAULT_SHIFT; + this.shiftY = typeof kwArgs.shiftY == "number" ? kwArgs.shiftY : DEFAULT_SHIFT; + + this.connect(); + }, + + process: function(o){ + // summary: + // Process the action on the given object. + // o: dojox/gfx/shape.Shape + // The object on which to process the slice moving action. + if(!o.shape || !(o.type in this.overOutEvents)){ return; } + + var runName = o.run.name, index = o.index, vector = [], anim; + + if(runName in this.anim){ + anim = this.anim[runName][index]; + }else{ + this.anim[runName] = {}; + } + + if(anim){ + anim.action.stop(true); + }else{ + this.anim[runName][index] = anim = {}; + } + + var kwArgs = { + shape: o.shape, + duration: this.duration, + easing: this.easing, + transform: [ + {name: "translate", start: [this.shiftX, this.shiftY], end: [0, 0]}, + m.identity + ] + }; + if(o.shape){ + vector.push(gf.animateTransform(kwArgs)); + } + if(o.oultine){ + kwArgs.shape = o.outline; + vector.push(gf.animateTransform(kwArgs)); + } + if(o.shadow){ + kwArgs.shape = o.shadow; + vector.push(gf.animateTransform(kwArgs)); + } + + if(!vector.length){ + delete this.anim[runName][index]; + return; + } + + anim.action = df.combine(vector); + if(o.type == "onmouseout"){ + hub.connect(anim.action, "onEnd", this, function(){ + if(this.anim[runName]){ + delete this.anim[runName][index]; + } + }); + } + anim.action.play(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Tooltip.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Tooltip.js new file mode 100644 index 00000000..9b61ef96 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/Tooltip.js @@ -0,0 +1,116 @@ +//>>built +define("dojox/charting/action2d/Tooltip",["dijit/Tooltip","dojo/_base/lang","dojo/_base/declare","dojo/_base/window","dojo/_base/connect","dojo/dom-style","./PlotAction","dojox/gfx/matrix","dojo/has","dojo/has!dojo-bidi?../bidi/action2d/Tooltip","dojox/lang/functional","dojox/lang/functional/scan","dojox/lang/functional/fold"],function(_1,_2,_3,_4,_5,_6,_7,m,_8,_9,df){ +var _a=function(o,_b){ +var t=o.run&&o.run.data&&o.run.data[o.index]; +if(t&&typeof t!="number"&&(t.tooltip||t.text)){ +return t.tooltip||t.text; +} +if(_b.tooltipFunc){ +return _b.tooltipFunc(o); +}else{ +return o.y; +} +}; +var _c=Math.PI/4,_d=Math.PI/2; +var _e=_3(_8("dojo-bidi")?"dojox.charting.action2d.NonBidiTooltip":"dojox.charting.action2d.Tooltip",_7,{defaultParams:{text:_a,mouseOver:true},optionalParams:{},constructor:function(_f,_10,_11){ +this.text=_11&&_11.text?_11.text:_a; +this.mouseOver=_11&&_11.mouseOver!=undefined?_11.mouseOver:true; +this.connect(); +},process:function(o){ +if(o.type==="onplotreset"||o.type==="onmouseout"){ +_1.hide(this.aroundRect); +this.aroundRect=null; +if(o.type==="onplotreset"){ +delete this.angles; +} +return; +} +if(!o.shape||(this.mouseOver&&o.type!=="onmouseover")||(!this.mouseOver&&o.type!=="onclick")){ +return; +} +var _12={type:"rect"},_13=["after-centered","before-centered"]; +switch(o.element){ +case "marker": +_12.x=o.cx; +_12.y=o.cy; +_12.w=_12.h=1; +break; +case "circle": +_12.x=o.cx-o.cr; +_12.y=o.cy-o.cr; +_12.w=_12.h=2*o.cr; +break; +case "spider_circle": +_12.x=o.cx; +_12.y=o.cy; +_12.w=_12.h=1; +break; +case "spider_plot": +return; +case "column": +_13=["above-centered","below-centered"]; +case "bar": +_12=_2.clone(o.shape.getShape()); +_12.w=_12.width; +_12.h=_12.height; +break; +case "candlestick": +_12.x=o.x; +_12.y=o.y; +_12.w=o.width; +_12.h=o.height; +break; +default: +if(!this.angles){ +var _14=typeof o.run.data[0]=="number"?df.map(o.run.data,"x ? Math.max(x, 0) : 0"):df.map(o.run.data,"x ? Math.max(x.y, 0) : 0"); +this.angles=df.map(df.scanl(_14,"+",0),"* 2 * Math.PI / this",df.foldl(_14,"+",0)); +} +var _15=m._degToRad(o.plot.opt.startAngle),_16=(this.angles[o.index]+this.angles[o.index+1])/2+_15; +_12.x=o.cx+o.cr*Math.cos(_16); +_12.y=o.cy+o.cr*Math.sin(_16); +_12.w=_12.h=1; +if(_15&&(_16<0||_16>2*Math.PI)){ +_16=Math.abs(2*Math.PI-Math.abs(_16)); +} +if(_16<_c){ +}else{ +if(_16<_d+_c){ +_13=["below-centered","above-centered"]; +}else{ +if(_16 2 * Math.PI)){ + angle = Math.abs(2 * Math.PI - Math.abs(angle)); + } + // calculate the position + if(angle < pi4){ + // do nothing: the position is right + }else if(angle < pi2 + pi4){ + position = ["below-centered", "above-centered"]; + }else if(angle < Math.PI + pi4){ + position = ["before-centered", "after-centered"]; + }else if(angle < 2 * Math.PI - pi4){ + position = ["above-centered", "below-centered"]; + } + /* + else{ + // do nothing: the position is right + } + */ + break; + } + if(has("dojo-bidi")){ + this._recheckPosition(o,aroundRect,position); + } + // adjust relative coordinates to absolute, and remove fractions + var lt = this.chart.getCoords(); + aroundRect.x += lt.x; + aroundRect.y += lt.y; + aroundRect.x = Math.round(aroundRect.x); + aroundRect.y = Math.round(aroundRect.y); + aroundRect.w = Math.ceil(aroundRect.w); + aroundRect.h = Math.ceil(aroundRect.h); + this.aroundRect = aroundRect; + + var tooltipText = this.text(o, this.plot); + if(tooltipText){ + DijitTooltip.show(this._format(tooltipText), this.aroundRect, position); + } + if(!this.mouseOver){ + this._handle = hub.connect(win.doc, "onclick", this, "onClick"); + } + }, + onClick: function(){ + this.process({ type: "onmouseout"}); + }, + _recheckPosition: function(obj,rect,position){ + }, + _format: function(tooltipText){ + return tooltipText; + } + }); + return has("dojo-bidi")? declare("dojox.charting.action2d.Tooltip", [Tooltip, BidiTooltip]) : Tooltip; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchIndicator.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchIndicator.js new file mode 100644 index 00000000..2db4272e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchIndicator.js @@ -0,0 +1,82 @@ +//>>built +define("dojox/charting/action2d/TouchIndicator",["dojo/_base/lang","dojo/_base/declare","dojo/_base/event","dojo/has","dojo/touch","dojo/_base/connect","./ChartAction","./_IndicatorElement","dojox/lang/utils"],function(_1,_2,_3,_4,_5,_6,_7,_8,du){ +return _2("dojox.charting.action2d.TouchIndicator",_7,{defaultParams:{series:"",dualIndicator:false,vertical:true,autoScroll:true,fixed:true,precision:0,lines:true,labels:true,markers:true},optionalParams:{lineStroke:{},outlineStroke:{},shadowStroke:{},lineFill:{},stroke:{},outline:{},shadow:{},fill:{},fillFunc:null,labelFunc:null,font:"",fontColor:"",markerStroke:{},markerOutline:{},markerShadow:{},markerFill:{},markerSymbol:"",offset:{},start:false},constructor:function(_9,_a,_b){ +if(_4("touch-events")){ +this._listeners=[{eventName:"touchstart",methodName:"onTouchStart"},{eventName:"touchmove",methodName:"onTouchMove"},{eventName:"touchend",methodName:"onTouchEnd"},{eventName:"touchcancel",methodName:"onTouchEnd"}]; +}else{ +this._listeners=[{eventName:_5.press,methodName:"onTouchStart"},{eventName:_5.move,methodName:"onTouchMove"},{eventName:_5.cancel,methodName:"onTouchEnd"}]; +} +this.opt=_1.clone(this.defaultParams); +du.updateWithObject(this.opt,_b); +du.updateWithPattern(this.opt,_b,this.optionalParams); +this._uName="touchIndicator"+this.opt.series; +this.connect(); +},connect:function(){ +this.inherited(arguments); +this.chart.addPlot(this._uName,{type:_8,inter:this}); +},disconnect:function(){ +var _c=this.chart.getPlot(this._uName); +if(_c.pageCoord){ +this.onTouchEnd(); +} +this.chart.removePlot(this._uName); +this.inherited(arguments); +},onChange:function(_d){ +},onTouchStart:function(_e){ +if(!_e.touches||_e.touches.length==1){ +this._onTouchSingle(_e,true); +}else{ +if(this.opt.dualIndicator&&_e.touches.length==2){ +this._onTouchDual(_e); +} +} +},onTouchMove:function(_f){ +if(!_f.touches||_f.touches.length==1){ +this._onTouchSingle(_f); +}else{ +if(this.opt.dualIndicator&&_f.touches.length==2){ +this._onTouchDual(_f); +} +} +},_onTouchSingle:function(_10,_11){ +if(!_4("touch-events")&&!this._onTouchEndHandler){ +this._onTouchEndHandler=_6.connect(this.chart.node.ownerDocument,_5.release,this,"onTouchEnd"); +} +if(this.chart._delayedRenderHandle&&!_11){ +this.chart.render(); +} +var _12=this.chart.getPlot(this._uName); +_12.pageCoord={x:_10.touches?_10.touches[0].pageX:_10.pageX,y:_10.touches?_10.touches[0].pageY:_10.pageY}; +_12.dirty=true; +if(_11){ +this.chart.delayedRender(); +}else{ +this.chart.render(); +} +_3.stop(_10); +},_onTouchDual:function(_13){ +if(!_4("touch-events")&&!this._onTouchEndHandler){ +this._onTouchEndHandler=_6.connect(this.chart.node.ownerDocument,_5.release,this,"onTouchEnd"); +} +if(this.chart._delayedRenderHandle){ +this.chart.render(); +} +var _14=this.chart.getPlot(this._uName); +_14.pageCoord={x:_13.touches[0].pageX,y:_13.touches[0].pageY}; +_14.secondCoord={x:_13.touches[1].pageX,y:_13.touches[1].pageY}; +_14.dirty=true; +this.chart.render(); +_3.stop(_13); +},onTouchEnd:function(_15){ +if(!_4("touch-events")&&this._onTouchEndHandler){ +_6.disconnect(this._onTouchEndHandler); +this._onTouchEndHandler=null; +} +var _16=this.chart.getPlot(this._uName); +_16.stopTrack(); +_16.pageCoord=null; +_16.secondCoord=null; +_16.dirty=true; +this.chart.delayedRender(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchIndicator.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchIndicator.js.uncompressed.js new file mode 100644 index 00000000..3bc4a890 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchIndicator.js.uncompressed.js @@ -0,0 +1,244 @@ +define("dojox/charting/action2d/TouchIndicator", ["dojo/_base/lang", "dojo/_base/declare", "dojo/_base/event", "dojo/has", "dojo/touch", "dojo/_base/connect", "./ChartAction", "./_IndicatorElement", "dojox/lang/utils"], + function(lang, declare, eventUtil, has, touch, dconnect, ChartAction, IndicatorElement, du){ + + /*===== + var __TouchIndicatorCtorArgs = { + // summary: + // Additional arguments for touch indicator. + // series: String + // Target series name for this action. + // autoScroll: Boolean? + // Whether when moving indicator the chart is automatically scrolled. Default is true. + // lines: Boolean? + // Whether the indicator lines are visible or not. Default is true. + // labels: Boolean? + // Whether the indicator label is visible or not. Default is true. + // markers: Boolean? + // Whether the indicator markers are visible or not. Default is true. + // offset: {x, y}? + // A pair of (x, y) pixel coordinate to specify the offset between the end of the indicator line and the + // position at which the labels are rendered. Default is no offset which means it is automatically computed. + // start: Boolean? + // Whether the label is rendered at the start or end of the indicator. Default is false meaning end of + // the line. + // vertical: Boolean? + // Whether the indicator is vertical or not. Default is true. + // fixed: Boolean? + // Whether a fixed precision must be applied to data values for display. Default is true. + // precision: Number? + // The precision at which to round data values for display. Default is 0. + // lineStroke: dojo/gfx/Stroke? + // An optional stroke to use for indicator line. + // lineOutline: dojo/gfx/Stroke? + // An optional outline to use for indicator line. + // lineShadow: dojo/gfx/Stroke? + // An optional shadow to use for indicator line. + // stroke: dojo.gfx.Stroke? + // An optional stroke to use for indicator label background. + // outline: dojo.gfx.Stroke? + // An optional outline to use for indicator label background. + // shadow: dojo.gfx.Stroke? + // An optional shadow to use for indicator label background. + // fill: dojo.gfx.Fill? + // An optional fill to use for indicator label background. + // fillFunc: Function? + // An optional function to use to compute label background fill. It takes precedence over + // fill property when available. + // labelFunc: Function? + // An optional function to use to compute label text. It takes precedence over + // the default text when available. + // | function labelFunc(firstDataPoint, secondDataPoint, fixed, precision) {} + // `firstDataPoint` is the `{x, y}` data coordinates pointed by the touch point. + // `secondDataPoint` is the data coordinates pointed by the second touch point. + // `fixed` is true if fixed precision must be applied. + // `precision` is the requested precision to be applied. + // font: String? + // A font definition to use for indicator label background. + // fontColor: String|dojo.Color? + // The color to use for indicator label background. + // markerStroke: dojo.gfx.Stroke? + // An optional stroke to use for indicator marker. + // markerOutline: dojo.gfx.Stroke? + // An optional outline to use for indicator marker. + // markerShadow: dojo.gfx.Stroke? + // An optional shadow to use for indicator marker. + // markerFill: dojo.gfx.Fill? + // An optional fill to use for indicator marker. + // markerSymbol: String? + // An optional symbol string to use for indicator marker. + }; + =====*/ + + return declare("dojox.charting.action2d.TouchIndicator", ChartAction, { + // summary: + // Create a touch indicator action. You can touch over the chart to display a data indicator. + + // the data description block for the widget parser + defaultParams: { + series: "", + dualIndicator: false, + vertical: true, + autoScroll: true, + fixed: true, + precision: 0, + lines: true, + labels: true, + markers: true + }, + optionalParams: { + lineStroke: {}, + outlineStroke: {}, + shadowStroke: {}, + lineFill: {}, + stroke: {}, + outline: {}, + shadow: {}, + fill: {}, + fillFunc: null, + labelFunc: null, + font: "", + fontColor: "", + markerStroke: {}, + markerOutline: {}, + markerShadow: {}, + markerFill: {}, + markerSymbol: "", + offset: {}, + start: false + }, + + constructor: function(chart, plot, kwArgs){ + // summary: + // Create a new touch indicator action and connect it. + // chart: dojox/charting/Chart + // The chart this action applies to. + // kwArgs: __TouchIndicatorCtorArgs? + // Optional arguments for the chart action. + + // we should not have to do that, but dojo/touch is causing performances issue + // we have to workaround here for now + if(has("touch-events")){ + this._listeners = [ + {eventName: "touchstart", methodName: "onTouchStart"}, + {eventName: "touchmove", methodName: "onTouchMove"}, + {eventName: "touchend", methodName: "onTouchEnd"}, + {eventName: "touchcancel", methodName: "onTouchEnd"} + ]; + } else { + this._listeners = [ + {eventName: touch.press, methodName: "onTouchStart"}, + {eventName: touch.move, methodName: "onTouchMove"}, + {eventName: touch.cancel, methodName: "onTouchEnd"} + ]; + } + this.opt = lang.clone(this.defaultParams); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + this._uName = "touchIndicator"+this.opt.series; + this.connect(); + }, + + connect: function(){ + // summary: + // Connect this action to the chart. This adds a indicator plot + // to the chart that's why Chart.render() must be called after connect. + this.inherited(arguments); + // add plot with unique name + this.chart.addPlot(this._uName, {type: IndicatorElement, inter: this}); + }, + + disconnect: function(){ + // summary: + // Disconnect this action from the chart. + var plot = this.chart.getPlot(this._uName); + if(plot.pageCoord){ + // we might still have something drawn on the screen + this.onTouchEnd(); + } + this.chart.removePlot(this._uName); + this.inherited(arguments); + }, + + onChange: function(event){ + // summary: + // Called when the indicator value changed. + // event: + // An event with a start and end properties containing the {x, y} data points of the first and + // second (if available) touch indicators. It also contains a label property containing the displayed + // text. + }, + + onTouchStart: function(event){ + // summary: + // Called when touch is started on the chart. + if(!event.touches || event.touches.length == 1){ + this._onTouchSingle(event, true); + }else if(this.opt.dualIndicator && event.touches.length == 2){ + this._onTouchDual(event); + } + }, + + onTouchMove: function(event){ + // summary: + // Called when touch is moved on the chart. + if(!event.touches || event.touches.length == 1){ + this._onTouchSingle(event); + }else if(this.opt.dualIndicator && event.touches.length == 2){ + this._onTouchDual(event); + } + }, + + _onTouchSingle: function(event, delayed){ + if(!has("touch-events") && !this._onTouchEndHandler){ + this._onTouchEndHandler = + dconnect.connect(this.chart.node.ownerDocument, touch.release, this, "onTouchEnd"); + } + if(this.chart._delayedRenderHandle && !delayed){ + // we have pending rendering from a previous call, let's sync + this.chart.render(); + } + var plot = this.chart.getPlot(this._uName); + plot.pageCoord = {x: event.touches?event.touches[0].pageX:event.pageX, y: event.touches?event.touches[0].pageY:event.pageY}; + plot.dirty = true; + if(delayed){ + this.chart.delayedRender(); + }else{ + this.chart.render(); + } + eventUtil.stop(event); + }, + + _onTouchDual: function(event){ + // sync + if(!has("touch-events") && !this._onTouchEndHandler){ + this._onTouchEndHandler = + dconnect.connect(this.chart.node.ownerDocument, touch.release, this, "onTouchEnd"); + } + if(this.chart._delayedRenderHandle){ + // we have pending rendering from a previous call, let's sync + this.chart.render(); + } + var plot = this.chart.getPlot(this._uName); + plot.pageCoord = {x: event.touches[0].pageX, y: event.touches[0].pageY}; + plot.secondCoord = {x: event.touches[1].pageX, y: event.touches[1].pageY}; + plot.dirty = true; + this.chart.render(); + eventUtil.stop(event); + }, + + onTouchEnd: function(event){ + // summary: + // Called when touch is ended or canceled on the chart. + if(!has("touch-events") && this._onTouchEndHandler){ + dconnect.disconnect(this._onTouchEndHandler); + this._onTouchEndHandler = null; + } + var plot = this.chart.getPlot(this._uName); + plot.stopTrack(); + plot.pageCoord = null; + plot.secondCoord = null; + plot.dirty = true; + this.chart.delayedRender(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchZoomAndPan.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchZoomAndPan.js new file mode 100644 index 00000000..1999bd7f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchZoomAndPan.js @@ -0,0 +1,136 @@ +//>>built +define("dojox/charting/action2d/TouchZoomAndPan",["dojo/_base/lang","dojo/_base/declare","dojo/_base/event","dojo/sniff","./ChartAction","../Element","dojo/touch","../plot2d/common","dojo/has!dojo-bidi?../bidi/action2d/ZoomAndPan"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9){ +var _a=_2(_6,{constructor:function(_b){ +},render:function(){ +if(!this.isDirty()){ +return; +} +this.cleanGroup(); +this.group.createRect({width:this.chart.dim.width,height:this.chart.dim.height}).setFill("rgba(0,0,0,0)"); +},clear:function(){ +this.dirty=true; +if(this.chart.stack[0]!=this){ +this.chart.movePlotToFront(this.name); +} +return this; +},getSeriesStats:function(){ +return _1.delegate(_8.defaultStats); +},initializeScalers:function(){ +return this; +},isDirty:function(){ +return this.dirty; +}}); +var _c=_2(_4("dojo-bidi")?"dojox.charting.action2d.NonBidiTouchZoomAndPan":"dojox.charting.action2d.TouchZoomAndPan",_5,{defaultParams:{axis:"x",scaleFactor:1.2,maxScale:100,enableScroll:true,enableZoom:true},optionalParams:{},constructor:function(_d,_e,_f){ +this._listeners=[{eventName:_7.press,methodName:"onTouchStart"},{eventName:_7.move,methodName:"onTouchMove"},{eventName:_7.release,methodName:"onTouchEnd"}]; +if(!_f){ +_f={}; +} +this.axis=_f.axis?_f.axis:"x"; +this.scaleFactor=_f.scaleFactor?_f.scaleFactor:1.2; +this.maxScale=_f.maxScale?_f.maxScale:100; +this.enableScroll=_f.enableScroll!=undefined?_f.enableScroll:true; +this.enableZoom=_f.enableScroll!=undefined?_f.enableZoom:true; +this._uName="touchZoomPan"+this.axis; +this.connect(); +},connect:function(){ +this.inherited(arguments); +if(this.chart.surface.declaredClass.indexOf("svg")!=-1){ +this.chart.addPlot(this._uName,{type:_a}); +} +},disconnect:function(){ +if(this.chart.surface.declaredClass.indexOf("svg")!=-1){ +this.chart.removePlot(this._uName); +} +this.inherited(arguments); +},onTouchStart:function(_10){ +var _11=this.chart,_12=_11.getAxis(this.axis); +var _13=_10.touches?_10.touches.length:1; +var _14=_10.touches?_10.touches[0]:_10; +var _15=this._startPageCoord; +this._startPageCoord={x:_14.pageX,y:_14.pageY}; +if((this.enableZoom||this.enableScroll)&&_11._delayedRenderHandle){ +_11.render(); +} +if(this.enableZoom&&_13>=2){ +this._startTime=0; +this._endPageCoord={x:_10.touches[1].pageX,y:_10.touches[1].pageY}; +var _16={x:(this._startPageCoord.x+this._endPageCoord.x)/2,y:(this._startPageCoord.y+this._endPageCoord.y)/2}; +var _17=_12.getScaler(); +this._initScale=_12.getWindowScale(); +var t=this._initData=this.plot.toData(); +this._middleCoord=t(_16)[this.axis]; +this._startCoord=_17.bounds.from; +this._endCoord=_17.bounds.to; +}else{ +if(!_10.touches||_10.touches.length==1){ +if(!this._startTime){ +this._startTime=new Date().getTime(); +}else{ +if((new Date().getTime()-this._startTime)<250&&Math.abs(this._startPageCoord.x-_15.x)<30&&Math.abs(this._startPageCoord.y-_15.y)<30){ +this._startTime=0; +this.onDoubleTap(_10); +}else{ +this._startTime=0; +} +} +}else{ +this._startTime=0; +} +if(this.enableScroll){ +this._startScroll(_12); +_3.stop(_10); +} +} +},onTouchMove:function(_18){ +var _19=this.chart,_1a=_19.getAxis(this.axis); +var _1b=_18.touches?_18.touches.length:1; +var _1c=_1a.vertical?"pageY":"pageX",_1d=_1a.vertical?"y":"x"; +this._startTime=0; +if(this.enableZoom&&_1b>=2){ +var _1e={x:(_18.touches[1].pageX+_18.touches[0].pageX)/2,y:(_18.touches[1].pageY+_18.touches[0].pageY)/2}; +var _1f=(this._endPageCoord[_1d]-this._startPageCoord[_1d])/(_18.touches[1][_1c]-_18.touches[0][_1c]); +if(this._initScale/_1f>this.maxScale){ +return; +} +var _20=this._initData(_1e)[this.axis]; +var _21=_1f*(this._startCoord-_20)+this._middleCoord,_22=_1f*(this._endCoord-_20)+this._middleCoord; +_19.zoomIn(this.axis,[_21,_22]); +_3.stop(_18); +}else{ +if(this.enableScroll){ +var _23=this._getDelta(_18); +_19.setAxisWindow(this.axis,this._lastScale,this._initOffset-_23/this._lastFactor/this._lastScale); +_19.delayedRender(); +_3.stop(_18); +} +} +},onTouchEnd:function(_24){ +var _25=this.chart,_26=_25.getAxis(this.axis); +if((!_24.touches||_24.touches.length==1)&&this.enableScroll){ +var _27=_24.touches?_24.touches[0]:_24; +this._startPageCoord={x:_27.pageX,y:_27.pageY}; +this._startScroll(_26); +} +},_startScroll:function(_28){ +var _29=_28.getScaler().bounds; +this._initOffset=_28.getWindowOffset(); +this._lastScale=_28.getWindowScale(); +this._lastFactor=_29.span/(_29.upper-_29.lower); +},onDoubleTap:function(_2a){ +var _2b=this.chart,_2c=_2b.getAxis(this.axis); +var _2d=1/this.scaleFactor; +if(_2c.getWindowScale()==1){ +var _2e=_2c.getScaler(),_2f=_2e.bounds.from,end=_2e.bounds.to,_30=(_2f+end)/2,_31=this.plot.toData(this._startPageCoord)[this.axis],_32=_2d*(_2f-_30)+_31,_33=_2d*(end-_30)+_31; +_2b.zoomIn(this.axis,[_32,_33]); +}else{ +_2b.setAxisWindow(this.axis,1,0); +_2b.render(); +} +_3.stop(_2a); +},_getDelta:function(_34){ +var _35=this.chart.getAxis(this.axis),_36=_35.vertical?"pageY":"pageX",_37=_35.vertical?"y":"x"; +var _38=_34.touches?_34.touches[0]:_34; +return _35.vertical?(this._startPageCoord[_37]-_38[_36]):(_38[_36]-this._startPageCoord[_37]); +}}); +return _4("dojo-bidi")?_2("dojox.charting.action2d.TouchZoomAndPan",[_c,_9]):_c; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchZoomAndPan.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchZoomAndPan.js.uncompressed.js new file mode 100644 index 00000000..4fcbc241 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/TouchZoomAndPan.js.uncompressed.js @@ -0,0 +1,269 @@ +define("dojox/charting/action2d/TouchZoomAndPan", ["dojo/_base/lang", "dojo/_base/declare", "dojo/_base/event", "dojo/sniff", + "./ChartAction", "../Element", "dojo/touch", "../plot2d/common", "dojo/has!dojo-bidi?../bidi/action2d/ZoomAndPan"], + function(lang, declare, eventUtil, has, ChartAction, Element, touch, common, BidiTouchZoomAndPan){ + var GlassView = declare(Element, { + // summary: + // Private internal class used by TouchZoomAndPan actions. + // tags: + // private + constructor: function(chart){ + }, + render: function(){ + if(!this.isDirty()){ + return; + } + this.cleanGroup(); + this.group.createRect({width: this.chart.dim.width, height: this.chart.dim.height}).setFill("rgba(0,0,0,0)"); + }, + clear: function(){ + // summary: + // Clear out any parameters set on this plot. + // returns: GlassView + // The reference to this plot for functional chaining. + this.dirty = true; + // glass view needs to be above + if(this.chart.stack[0] != this){ + this.chart.movePlotToFront(this.name); + } + return this; // GlassView + }, + getSeriesStats: function(){ + // summary: + // Returns default stats (irrelevant for this type of plot). + // returns: Object + // {hmin, hmax, vmin, vmax} min/max in both directions. + return lang.delegate(common.defaultStats); + }, + initializeScalers: function(){ + // summary: + // Does nothing (irrelevant for this type of plot). + return this; + }, + isDirty: function(){ + // summary: + // Return whether or not this plot needs to be redrawn. + // returns: Boolean + // If this plot needs to be rendered, this will return true. + return this.dirty; + } + }); + + /*===== + var __TouchZoomAndPanCtorArgs = { + // summary: + // Additional arguments for touch zoom and pan actions. + // axis: String? + // Target axis name for this action. Default is "x". + // scaleFactor: Number? + // The scale factor applied on mouse wheel zoom. Default is 1.2. + // maxScale: Number? + // The max scale factor accepted by this chart action. Default is 100. + // enableScroll: Boolean? + // Whether touch drag gesture should scroll the chart. Default is true. + // enableZoom: Boolean? + // Whether touch pinch and spread gesture should zoom out or in the chart. Default is true. + }; + =====*/ + + var TouchZoomAndPan = declare(has("dojo-bidi")? "dojox.charting.action2d.NonBidiTouchZoomAndPan" : "dojox.charting.action2d.TouchZoomAndPan", ChartAction, { + // summary: + // Create a touch zoom and pan action. + // You can zoom out or in the data window with pinch and spread gestures except on Android 2.x and WP8 devices. + // You can scroll using drag gesture. + // Finally this is possible to navigate between a fit window and a zoom one using double tap gesture. + + // the data description block for the widget parser + defaultParams: { + axis: "x", + scaleFactor: 1.2, + maxScale: 100, + enableScroll: true, + enableZoom: true + }, + optionalParams: {}, // no optional parameters + + constructor: function(chart, plot, kwArgs){ + // summary: + // Create a new touch zoom and pan action and connect it. + // chart: dojox/charting/Chart + // The chart this action applies to. + // kwArgs: __TouchZoomAndPanCtorArgs? + // Optional arguments for the action. + this._listeners = [ + {eventName: touch.press, methodName: "onTouchStart"}, + {eventName: touch.move, methodName: "onTouchMove"}, + {eventName: touch.release, methodName: "onTouchEnd"} + ]; + if(!kwArgs){ kwArgs = {}; } + this.axis = kwArgs.axis ? kwArgs.axis : "x"; + this.scaleFactor = kwArgs.scaleFactor ? kwArgs.scaleFactor : 1.2; + this.maxScale = kwArgs.maxScale ? kwArgs.maxScale : 100; + this.enableScroll = kwArgs.enableScroll != undefined ? kwArgs.enableScroll : true; + this.enableZoom = kwArgs.enableScroll != undefined ? kwArgs.enableZoom : true; + this._uName = "touchZoomPan"+this.axis; + this.connect(); + }, + + connect: function(){ + // summary: + // Connect this action to the chart. On iOS this adds a new glass view plot + // to the chart that's why Chart.render() must be called after connect. + this.inherited(arguments); + // this is needed to workaround issue on iOS Safari + SVG, because a touch start action + // started above a item that is removed during the touch action will stop + // dispatching touch events! + if(this.chart.surface.declaredClass.indexOf("svg")!=-1){ + this.chart.addPlot(this._uName, {type: GlassView}); + } + }, + + disconnect: function(){ + // summary: + // Disconnect this action from the chart. + if(this.chart.surface.declaredClass.indexOf("svg")!=-1){ + this.chart.removePlot(this._uName); + } + this.inherited(arguments); + }, + + onTouchStart: function(event){ + // summary: + // Called when touch is started on the chart. + + // we always want to be above regular plots and not clipped + var chart = this.chart, axis = chart.getAxis(this.axis); + var length = event.touches ? event.touches.length : 1; + var coord = event.touches ? event.touches[0] : event; + // in case we have a double tap register previous coord + var prevPageCoord = this._startPageCoord; + this._startPageCoord = {x: coord.pageX, y: coord.pageY}; + if((this.enableZoom || this.enableScroll) && chart._delayedRenderHandle){ + // we have pending rendering from a scroll, let's sync + chart.render(); + } + if(this.enableZoom && length >= 2){ + // we reset double tap + this._startTime = 0; + this._endPageCoord = {x: event.touches[1].pageX, y: event.touches[1].pageY}; + var middlePageCoord = {x: (this._startPageCoord.x + this._endPageCoord.x) / 2, + y: (this._startPageCoord.y + this._endPageCoord.y) / 2}; + var scaler = axis.getScaler(); + this._initScale = axis.getWindowScale(); + var t = this._initData = this.plot.toData(); + this._middleCoord = t(middlePageCoord)[this.axis]; + this._startCoord = scaler.bounds.from; + this._endCoord = scaler.bounds.to; + }else{ + // double tap is only for single touch + if(!event.touches || event.touches.length == 1){ + if(!this._startTime){ + this._startTime = new Date().getTime(); + }else if((new Date().getTime() - this._startTime) < 250 && + Math.abs(this._startPageCoord.x - prevPageCoord.x) < 30 && + Math.abs(this._startPageCoord.y - prevPageCoord.y) < 30){ + this._startTime = 0; + this.onDoubleTap(event); + }else{ + // we missed the doubletap, we need to re-init for next time + this._startTime = 0; + } + }else{ + // we missed the doubletap, we need to re-init for next time + this._startTime = 0; + } + if(this.enableScroll){ + this._startScroll(axis); + // needed for Android, otherwise will get a touch cancel while swiping + eventUtil.stop(event); + } + } + }, + + onTouchMove: function(event){ + // summary: + // Called when touch is moved on the chart. + var chart = this.chart, axis = chart.getAxis(this.axis); + var length = event.touches ? event.touches.length : 1; + var pAttr = axis.vertical?"pageY":"pageX", + attr = axis.vertical?"y":"x"; + // any move action cancel double tap + this._startTime = 0; + if(this.enableZoom && length >= 2){ + var newMiddlePageCoord = {x: (event.touches[1].pageX + event.touches[0].pageX) / 2, + y: (event.touches[1].pageY + event.touches[0].pageY) / 2}; + var scale = (this._endPageCoord[attr] - this._startPageCoord[attr]) / + (event.touches[1][pAttr] - event.touches[0][pAttr]); + + if(this._initScale / scale > this.maxScale){ + return; + } + + var newMiddleCoord = this._initData(newMiddlePageCoord)[this.axis]; + + var newStart = scale * (this._startCoord - newMiddleCoord) + this._middleCoord, + newEnd = scale * (this._endCoord - newMiddleCoord) + this._middleCoord; + chart.zoomIn(this.axis, [newStart, newEnd]); + // avoid browser pan + eventUtil.stop(event); + }else if(this.enableScroll){ + var delta = this._getDelta(event); + chart.setAxisWindow(this.axis, this._lastScale, this._initOffset - delta / this._lastFactor / this._lastScale); + chart.delayedRender(); + // avoid browser pan + eventUtil.stop(event); + } + }, + + onTouchEnd: function(event){ + // summary: + // Called when touch is ended on the chart. + var chart = this.chart, axis = chart.getAxis(this.axis); + if((!event.touches || event.touches.length == 1) && this.enableScroll){ + // still one touch available, let's start back from here for + // potential pan + var coord = event.touches ? event.touches[0] : event; + this._startPageCoord = {x: coord.pageX, y: coord.pageY}; + this._startScroll(axis); + } + }, + + _startScroll: function(axis){ + var bounds = axis.getScaler().bounds; + this._initOffset = axis.getWindowOffset(); + // we keep it because of delay rendering we might now always have access to the + // information to compute it + this._lastScale = axis.getWindowScale(); + this._lastFactor = bounds.span / (bounds.upper - bounds.lower); + }, + + onDoubleTap: function(event){ + // summary: + // Called when double tap is performed on the chart. + var chart = this.chart, axis = chart.getAxis(this.axis); + var scale = 1 / this.scaleFactor; + // are we fit? + if(axis.getWindowScale()==1){ + // fit => zoom + var scaler = axis.getScaler(), start = scaler.bounds.from, end = scaler.bounds.to, + oldMiddle = (start + end) / 2, newMiddle = this.plot.toData(this._startPageCoord)[this.axis], + newStart = scale * (start - oldMiddle) + newMiddle, newEnd = scale * (end - oldMiddle) + newMiddle; + chart.zoomIn(this.axis, [newStart, newEnd]); + }else{ + // non fit => fit + chart.setAxisWindow(this.axis, 1, 0); + chart.render(); + } + eventUtil.stop(event); + }, + + _getDelta: function(event){ + var axis = this.chart.getAxis(this.axis), + pAttr = axis.vertical?"pageY":"pageX", + attr = axis.vertical?"y":"x"; + var coord = event.touches?event.touches[0]:event; + return axis.vertical?(this._startPageCoord[attr] - coord[pAttr]): + (coord[pAttr] - this._startPageCoord[attr]); + } + }); + return has("dojo-bidi")? declare("dojox.charting.action2d.TouchZoomAndPan", [TouchZoomAndPan, BidiTouchZoomAndPan]) : TouchZoomAndPan; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/_IndicatorElement.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/_IndicatorElement.js new file mode 100644 index 00000000..b6232e06 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/_IndicatorElement.js @@ -0,0 +1,229 @@ +//>>built +define("dojox/charting/action2d/_IndicatorElement",["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","../plot2d/Indicator","dojo/has","../plot2d/common","../axis2d/common","dojox/gfx"],function(_1,_2,_3,_4,_5){ +var _6=function(v,_7,_8){ +var c2,c1=v?{x:_7[0],y:_8[0][0]}:{x:_8[0][0],y:_7[0]}; +if(_7.length>1){ +c2=v?{x:_7[1],y:_8[1][0]}:{x:_8[1][0],y:_7[1]}; +} +return [c1,c2]; +}; +var _9=_3("dojox.charting.action2d._IndicatorElement",_4,{constructor:function(_a,_b){ +if(!_b){ +_b={}; +} +this.inter=_b.inter; +},_updateVisibility:function(cp,_c,_d){ +var _e=_d=="x"?this._hAxis:this._vAxis; +var _f=_e.getWindowScale(); +this.chart.setAxisWindow(_e.name,_f,_e.getWindowOffset()+(cp[_d]-_c[_d])/_f); +this._noDirty=true; +this.chart.render(); +this._noDirty=false; +this._initTrack(); +},_trackMove:function(){ +this._updateIndicator(this.pageCoord); +this._tracker=setTimeout(_1.hitch(this,this._trackMove),100); +},_initTrack:function(){ +if(!this._tracker){ +this._tracker=setTimeout(_1.hitch(this,this._trackMove),500); +} +},stopTrack:function(){ +if(this._tracker){ +clearTimeout(this._tracker); +this._tracker=null; +} +},render:function(){ +if(!this.isDirty()){ +return; +} +var _10=this.inter,_11=_10.plot,v=_10.opt.vertical; +this.opt.offset=_10.opt.offset||(v?{x:0,y:5}:{x:5,y:0}); +if(_10.opt.labelFunc){ +this.opt.labelFunc=function(_12,_13,_14,_15,_16){ +var _17=_6(v,_13,_14); +return _10.opt.labelFunc(_17[0],_17[1],_15,_16); +}; +} +if(_10.opt.fillFunc){ +this.opt.fillFunc=function(_18,_19,_1a){ +var _1b=_6(v,_19,_1a); +return _10.opt.fillFunc(_1b[0],_1b[1]); +}; +} +this.opt=_1.delegate(_10.opt,this.opt); +if(!this.pageCoord){ +this.opt.values=null; +this.inter.onChange({}); +}else{ +this.opt.values=[]; +this.opt.labels=this.secondCoord?"trend":"markers"; +} +this.hAxis=_11.hAxis; +this.vAxis=_11.vAxis; +this.inherited(arguments); +},_updateIndicator:function(){ +var _1c=this._updateCoordinates(this.pageCoord,this.secondCoord); +if(_1c.length>1){ +var v=this.opt.vertical; +this._data=[]; +this.opt.values=[]; +_2.forEach(_1c,function(_1d){ +if(_1d){ +this.opt.values.push(v?_1d.x:_1d.y); +this._data.push([v?_1d.y:_1d.x]); +} +},this); +}else{ +this.inter.onChange({}); +return; +} +this.inherited(arguments); +},_renderText:function(g,_1e,t,x,y,_1f,_20,_21){ +if(this.inter.opt.labels){ +this.inherited(arguments); +} +var _22=_6(this.opt.vertical,_20,_21); +this.inter.onChange({start:_22[0],end:_22[1],label:_1e}); +},_updateCoordinates:function(cp1,cp2){ +if(_5("dojo-bidi")){ +this._checkXCoords(cp1,cp2); +} +var _23=this.inter,_24=_23.plot,v=_23.opt.vertical; +var _25=this.chart.getAxis(_24.hAxis),_26=this.chart.getAxis(_24.vAxis); +var hn=_25.name,vn=_26.name,hb=_25.getScaler().bounds,vb=_26.getScaler().bounds; +var _27=v?"x":"y",n=v?hn:vn,_28=v?hb:vb; +if(cp2){ +var tmp; +if(v){ +if(cp1.x>cp2.x){ +tmp=cp2; +cp2=cp1; +cp1=tmp; +} +}else{ +if(cp1.y>cp2.y){ +tmp=cp2; +cp2=cp1; +cp1=tmp; +} +} +} +var cd1=_24.toData(cp1),cd2; +if(cp2){ +cd2=_24.toData(cp2); +} +var o={}; +o[hn]=hb.from; +o[vn]=vb.from; +var min=_24.toPage(o); +o[hn]=hb.to; +o[vn]=vb.to; +var max=_24.toPage(o); +if(cd1[n]<_28.from){ +if(!cd2&&_23.opt.autoScroll&&!_23.opt.mouseOver){ +this._updateVisibility(cp1,min,_27); +return []; +}else{ +if(_23.opt.mouseOver){ +return []; +} +cp1[_27]=min[_27]; +} +cd1=_24.toData(cp1); +}else{ +if(cd1[n]>_28.to){ +if(!cd2&&_23.opt.autoScroll&&!_23.opt.mouseOver){ +this._updateVisibility(cp1,max,_27); +return []; +}else{ +if(_23.opt.mouseOver){ +return []; +} +cp1[_27]=max[_27]; +} +cd1=_24.toData(cp1); +} +} +var c1=this._snapData(cd1,_27,v),c2; +if(c1.y==null){ +return []; +} +if(cp2){ +if(cd2[n]<_28.from){ +cp2[_27]=min[_27]; +cd2=_24.toData(cp2); +}else{ +if(cd2[n]>_28.to){ +cp2[_27]=max[_27]; +cd2=_24.toData(cp2); +} +} +c2=this._snapData(cd2,_27,v); +if(c2.y==null){ +c2=null; +} +} +return [c1,c2]; +},_snapData:function(cd,_29,v){ +var _2a=this.chart.getSeries(this.inter.opt.series).data; +var i,r,l=_2a.length; +for(i=0;icd[_29]){ +break; +} +}else{ +if(r[_29]>cd[_29]){ +break; +} +} +} +} +var x,y,px,py; +if(typeof r=="number"){ +x=i+1; +y=r; +if(i>0){ +px=i; +py=_2a[i-1]; +} +}else{ +x=r.x; +y=r.y; +if(i>0){ +px=_2a[i-1].x; +py=_2a[i-1].y; +} +} +if(i>0){ +var m=v?(x+px)/2:(y+py)/2; +if(cd[_29]<=m){ +x=px; +y=py; +} +} +return {x:x,y:y}; +},cleanGroup:function(_2b){ +this.inherited(arguments); +this.group.moveToFront(); +return this; +},isDirty:function(){ +return !this._noDirty&&(this.dirty||this.inter.plot.isDirty()); +}}); +if(_5("dojo-bidi")){ +_9.extend({_checkXCoords:function(cp1,cp2){ +if(this.chart.isRightToLeft()){ +if(cp1){ +cp1.x=this.chart.dim.width+(this.chart.offsets.l-this.chart.offsets.r)-cp1.x; +} +if(cp2){ +cp2.x=this.chart.dim.width+(this.chart.offsets.l-this.chart.offsets.r)-cp2.x; +} +} +}}); +} +return _9; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/_IndicatorElement.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/_IndicatorElement.js.uncompressed.js new file mode 100644 index 00000000..3ccd755a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/action2d/_IndicatorElement.js.uncompressed.js @@ -0,0 +1,296 @@ +define("dojox/charting/action2d/_IndicatorElement", ["dojo/_base/lang", "dojo/_base/array", "dojo/_base/declare", "../plot2d/Indicator", + "dojo/has", "../plot2d/common", "../axis2d/common", "dojox/gfx"], + function(lang, array, declare, Indicator, has){ + + var getXYCoordinates = function(v, values, data){ + var c2, c1 = v?{ x: values[0], y : data[0][0] } : + { x : data[0][0], y : values[0] }; + if(values.length > 1){ + c2 = v?{ x: values[1], y : data[1][0] } : + { x : data[1][0], y : values[1] }; + } + return [c1, c2]; + }; + + var _IndicatorElement = declare("dojox.charting.action2d._IndicatorElement", Indicator, { + // summary: + // Internal element used by indicator actions. + // tags: + // private + constructor: function(chart, kwArgs){ + if(!kwArgs){ kwArgs = {}; } + this.inter = kwArgs.inter; + }, + _updateVisibility: function(cp, limit, attr){ + var axis = attr=="x"?this._hAxis:this._vAxis; + var scale = axis.getWindowScale(); + this.chart.setAxisWindow(axis.name, scale, axis.getWindowOffset() + (cp[attr] - limit[attr]) / scale); + this._noDirty = true; + this.chart.render(); + this._noDirty = false; + this._initTrack(); + }, + _trackMove: function(){ + // let's update the selector + this._updateIndicator(this.pageCoord); + // if we reached that point once, then we don't stop until mouse up + // use a recursive setTimeout to avoid intervals that might get backed up + this._tracker = setTimeout(lang.hitch(this, this._trackMove), 100); + }, + _initTrack: function(){ + if(!this._tracker){ + this._tracker = setTimeout(lang.hitch(this, this._trackMove), 500); + } + }, + stopTrack: function(){ + if(this._tracker){ + clearTimeout(this._tracker); + this._tracker = null; + } + }, + render: function(){ + if(!this.isDirty()){ + return; + } + + var inter = this.inter, plot = inter.plot, v = inter.opt.vertical; + + this.opt.offset = inter.opt.offset || (v?{ x:0 , y: 5}: { x: 5, y: 0}); + + if(inter.opt.labelFunc){ + // adapt to indicator labelFunc format + this.opt.labelFunc = function(index, values, data, fixed, precision){ + var coords = getXYCoordinates(v, values, data); + return inter.opt.labelFunc(coords[0], coords[1], fixed, precision); + }; + } + if(inter.opt.fillFunc){ + // adapt to indicator fillFunc format + this.opt.fillFunc = function(index, values, data){ + var coords = getXYCoordinates(v, values, data); + return inter.opt.fillFunc(coords[0], coords[1]); + }; + } + + this.opt = lang.delegate(inter.opt, this.opt); + + if(!this.pageCoord){ + this.opt.values = null; + this.inter.onChange({}); + }else{ + // let's create a fake coordinate to not block parent render method + // actual coordinate will be computed in _updateCoordinates + this.opt.values = []; + this.opt.labels = this.secondCoord?"trend":"markers"; + } + + // take axis on the interactor plot and forward them onto the indicator plot + this.hAxis = plot.hAxis; + this.vAxis = plot.vAxis; + + this.inherited(arguments); + }, + _updateIndicator: function(){ + var coordinates = this._updateCoordinates(this.pageCoord, this.secondCoord); + if(coordinates.length > 1){ + var v = this.opt.vertical; + this._data= []; + this.opt.values = []; + array.forEach(coordinates, function(value){ + if(value){ + this.opt.values.push(v?value.x:value.y); + this._data.push([v?value.y:value.x]); + } + }, this); + }else{ + this.inter.onChange({}); + return; + } + this.inherited(arguments); + }, + _renderText: function(g, text, t, x, y, index, values, data){ + // render only if labels is true + if(this.inter.opt.labels){ + this.inherited(arguments); + } + // send the event in all cases + var coords = getXYCoordinates(this.opt.vertical, values, data); + this.inter.onChange({ + start: coords[0], + end: coords[1], + label: text + }); + }, + _updateCoordinates: function(cp1, cp2){ + // chart mirroring starts + if(has("dojo-bidi")){ + this._checkXCoords(cp1, cp2); + } + // chart mirroring ends + var inter = this.inter, plot = inter.plot, v = inter.opt.vertical; + var hAxis = this.chart.getAxis(plot.hAxis), vAxis = this.chart.getAxis(plot.vAxis); + var hn = hAxis.name, vn = vAxis.name, hb = hAxis.getScaler().bounds, vb = vAxis.getScaler().bounds; + var attr = v?"x":"y", n = v?hn:vn, bounds = v?hb:vb; + + // sort data point + if(cp2){ + var tmp; + if(v){ + if(cp1.x > cp2.x){ + tmp = cp2; + cp2 = cp1; + cp1 = tmp; + } + }else{ + if(cp1.y > cp2.y){ + tmp = cp2; + cp2 = cp1; + cp1 = tmp; + } + } + } + + var cd1 = plot.toData(cp1), cd2; + if(cp2){ + cd2 = plot.toData(cp2); + } + + var o = {}; + o[hn] = hb.from; + o[vn] = vb.from; + var min = plot.toPage(o); + o[hn] = hb.to; + o[vn] = vb.to; + var max = plot.toPage(o); + + if(cd1[n] < bounds.from){ + // do not autoscroll if dual indicator + if(!cd2 && inter.opt.autoScroll && !inter.opt.mouseOver){ + this._updateVisibility(cp1, min, attr); + return []; + }else{ + if(inter.opt.mouseOver){ + return[]; + } + cp1[attr] = min[attr]; + } + // cp1 might have changed, let's update cd1 + cd1 = plot.toData(cp1); + }else if(cd1[n] > bounds.to){ + if(!cd2 && inter.opt.autoScroll && !inter.opt.mouseOver){ + this._updateVisibility(cp1, max, attr); + return []; + }else{ + if(inter.opt.mouseOver){ + return[]; + } + cp1[attr] = max[attr]; + } + // cp1 might have changed, let's update cd1 + cd1 = plot.toData(cp1); + } + + var c1 = this._snapData(cd1, attr, v), c2; + + if(c1.y == null){ + // we have no data for that point let's just return + return []; + } + + if(cp2){ + if(cd2[n] < bounds.from){ + cp2[attr] = min[attr]; + cd2 = plot.toData(cp2); + }else if(cd2[n] > bounds.to){ + cp2[attr] = max[attr]; + cd2 = plot.toData(cp2); + } + c2 = this._snapData(cd2, attr, v); + if(c2.y == null){ + // we have no data for that point let's pretend we have a single touch point + c2 = null; + } + } + + return [c1, c2]; + }, + _snapData: function(cd, attr, v){ + // we need to find which actual data point is "close" to the data value + var data = this.chart.getSeries(this.inter.opt.series).data; + // let's consider data are sorted because anyway rendering will be "weird" with unsorted data + // i is an index in the array, which is different from a x-axis value even for index based data + var i, r, l = data.length; + // first let's find which data index we are in + for (i = 0; i < l; ++i){ + r = data[i]; + if(r == null){ + // move to next item + }else if(typeof r == "number"){ + if(i + 1 > cd[attr]){ + break; + } + }else if(r[attr] > cd[attr]){ + break; + } + } + var x, y, px, py; + if(typeof r == "number"){ + x = i+1; + y = r; + if(i > 0){ + px = i; + py = data[i-1]; + } + }else{ + x = r.x; + y = r.y; + if(i > 0){ + px = data[i-1].x; + py = data[i-1].y; + } + } + if(i > 0){ + var m = v?(x+px)/2:(y+py)/2; + if(cd[attr]<=m){ + x = px; + y = py; + } + } + return {x: x, y: y}; + }, + cleanGroup: function(creator){ + // summary: + // Clean any elements (HTML or GFX-based) out of our group, and create a new one. + // creator: dojox/gfx/Surface? + // An optional surface to work with. + // returns: dojox/charting/Element + // A reference to this object for functional chaining. + this.inherited(arguments); + // we always want to be above regular plots and not clipped + this.group.moveToFront(); + return this; // dojox/charting/Element + }, + isDirty: function(){ + // summary: + // Return whether or not this plot needs to be redrawn. + // returns: Boolean + // If this plot needs to be rendered, this will return true. + return !this._noDirty && (this.dirty || this.inter.plot.isDirty()); + } + }); + if(has("dojo-bidi")){ + _IndicatorElement.extend({ + _checkXCoords: function(cp1, cp2){ + if(this.chart.isRightToLeft()){ + if(cp1){ + cp1.x = this.chart.dim.width + (this.chart.offsets.l - this.chart.offsets.r) - cp1.x; + } + if(cp2){ + cp2.x = this.chart.dim.width + (this.chart.offsets.l - this.chart.offsets.r) - cp2.x; + } + } + } + }); + } + return _IndicatorElement; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Base.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Base.js new file mode 100644 index 00000000..3f464346 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Base.js @@ -0,0 +1,24 @@ +//>>built +define("dojox/charting/axis2d/Base",["dojo/_base/declare","../Element"],function(_1,_2){ +return _1("dojox.charting.axis2d.Base",_2,{constructor:function(_3,_4){ +this.vertical=_4&&_4.vertical; +this.opt={}; +this.opt.min=_4&&_4.min; +this.opt.max=_4&&_4.max; +},clear:function(){ +return this; +},initialized:function(){ +return false; +},calculate:function(_5,_6,_7){ +return this; +},getScaler:function(){ +return null; +},getTicks:function(){ +return null; +},getOffsets:function(){ +return {l:0,r:0,t:0,b:0}; +},render:function(_8,_9){ +this.dirty=false; +return this; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Base.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Base.js.uncompressed.js new file mode 100644 index 00000000..0b95435e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Base.js.uncompressed.js @@ -0,0 +1,83 @@ +define("dojox/charting/axis2d/Base", ["dojo/_base/declare", "../Element"], + function(declare, Element){ + /*===== + var __BaseAxisCtorArgs = { + // summary: + // Optional arguments used in the definition of an invisible axis. + // vertical: Boolean? + // A flag that says whether an axis is vertical (i.e. y axis) or horizontal. Default is false (horizontal). + // min: Number? + // The smallest value on an axis. Default is 0. + // max: Number? + // The largest value on an axis. Default is 1. + }; + =====*/ + return declare("dojox.charting.axis2d.Base", Element, { + // summary: + // The base class for any axis. This is more of an interface/API + // definition than anything else; see dojox.charting.axis2d.Default + // for more details. + constructor: function(chart, kwArgs){ + // summary: + // Return a new base axis. + // chart: dojox/charting/Chart + // The chart this axis belongs to. + // kwArgs: __BaseAxisCtorArgs? + // An optional arguments object to define the axis parameters. + this.vertical = kwArgs && kwArgs.vertical; + this.opt = {}; + this.opt.min = kwArgs && kwArgs.min; + this.opt.max = kwArgs && kwArgs.max; + }, + clear: function(){ + // summary: + // Stub function for clearing the axis. + // returns: dojox/charting/axis2d/Base + // A reference to the axis for functional chaining. + return this; // dojox/charting/axis2d/Base + }, + initialized: function(){ + // summary: + // Return a flag as to whether or not this axis has been initialized. + // returns: Boolean + // If the axis is initialized or not. + return false; // Boolean + }, + calculate: function(min, max, span){ + // summary: + // Stub function to run the calculations needed for drawing this axis. + // returns: dojox/charting/axis2d/Base + // A reference to the axis for functional chaining. + return this; // dojox/charting/axis2d/Base + }, + getScaler: function(){ + // summary: + // A stub function to return the scaler object created during calculate. + // returns: Object + // The scaler object (see dojox.charting.scaler.linear for more information) + return null; // Object + }, + getTicks: function(){ + // summary: + // A stub function to return the object that helps define how ticks are rendered. + // returns: Object + // The ticks object. + return null; // Object + }, + getOffsets: function(){ + // summary: + // A stub function to return any offsets needed for axis and series rendering. + // returns: Object + // An object of the form { l, r, t, b }. + return {l: 0, r: 0, t: 0, b: 0}; // Object + }, + render: function(dim, offsets){ + // summary: + // Stub function to render this axis. + // returns: dojox/charting/axis2d/Base + // A reference to the axis for functional chaining. + this.dirty = false; + return this; // dojox/charting/axis2d/Base + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Default.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Default.js new file mode 100644 index 00000000..03e58231 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Default.js @@ -0,0 +1,557 @@ +//>>built +define("dojox/charting/axis2d/Default",["dojo/_base/lang","dojo/_base/array","dojo/sniff","dojo/_base/declare","dojo/_base/connect","dojo/dom-geometry","./Invisible","../scaler/linear","./common","dojox/gfx","dojox/lang/utils","dojox/lang/functional","dojo/has!dojo-bidi?../bidi/axis2d/Default"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,g,du,df,_a){ +var _b=45; +var _c=_4(_3("dojo-bidi")?"dojox.charting.axis2d.NonBidiDefault":"dojox.charting.axis2d.Default",_7,{defaultParams:{vertical:false,fixUpper:"none",fixLower:"none",natural:false,leftBottom:true,includeZero:false,fixed:true,majorLabels:true,minorTicks:true,minorLabels:true,microTicks:false,rotation:0,htmlLabels:true,enableCache:false,dropLabels:true,labelSizeChange:false,position:"leftOrBottom"},optionalParams:{min:0,max:1,from:0,to:1,majorTickStep:4,minorTickStep:2,microTickStep:1,labels:[],labelFunc:null,maxLabelSize:0,maxLabelCharCount:0,trailingSymbol:null,stroke:{},majorTick:{},minorTick:{},microTick:{},tick:{},font:"",fontColor:"",title:"",titleGap:0,titleFont:"",titleFontColor:"",titleOrientation:""},constructor:function(_d,_e){ +this.opt=_1.clone(this.defaultParams); +du.updateWithObject(this.opt,_e); +du.updateWithPattern(this.opt,_e,this.optionalParams); +if(this.opt.enableCache){ +this._textFreePool=[]; +this._lineFreePool=[]; +this._textUsePool=[]; +this._lineUsePool=[]; +} +this._invalidMaxLabelSize=true; +if(!(_e&&("position" in _e))){ +this.opt.position=this.opt.leftBottom?"leftOrBottom":"rightOrTop"; +} +this.renderingOptions={"shape-rendering":"crispEdges"}; +},setWindow:function(_f,_10){ +if(_f!=this.scale){ +this._invalidMaxLabelSize=true; +} +return this.inherited(arguments); +},_groupLabelWidth:function(_11,_12,_13){ +if(!_11.length){ +return 0; +} +if(_11.length>50){ +_11.length=50; +} +if(_1.isObject(_11[0])){ +_11=df.map(_11,function(_14){ +return _14.text; +}); +} +if(_13){ +_11=df.map(_11,function(_15){ +return _1.trim(_15).length==0?"":_15.substring(0,_13)+this.trailingSymbol; +},this); +} +var s=_11.join("
    "); +return g._base._getTextBox(s,{font:_12}).w||0; +},_getMaxLabelSize:function(min,max,_16,_17,_18,_19){ +if(this._maxLabelSize==null&&arguments.length==6){ +var o=this.opt; +this.scaler.minMinorStep=this._prevMinMinorStep=0; +var ob=_1.clone(o); +delete ob.to; +delete ob.from; +var sb=_8.buildScaler(min,max,_16,ob,o.to-o.from); +sb.minMinorStep=0; +this._majorStart=sb.major.start; +var tb=_8.buildTicks(sb,o); +if(_19&&tb){ +var _1a=0,_1b=0; +var _1c=function(_1d){ +if(_1d.label){ +this.push(_1d.label); +} +}; +var _1e=[]; +if(this.opt.majorLabels){ +_2.forEach(tb.major,_1c,_1e); +_1a=this._groupLabelWidth(_1e,_18,ob.maxLabelCharCount); +if(ob.maxLabelSize){ +_1a=Math.min(ob.maxLabelSize,_1a); +} +} +_1e=[]; +if(this.opt.dropLabels&&this.opt.minorLabels){ +_2.forEach(tb.minor,_1c,_1e); +_1b=this._groupLabelWidth(_1e,_18,ob.maxLabelCharCount); +if(ob.maxLabelSize){ +_1b=Math.min(ob.maxLabelSize,_1b); +} +} +this._maxLabelSize={majLabelW:_1a,minLabelW:_1b,majLabelH:_19,minLabelH:_19}; +}else{ +this._maxLabelSize=null; +} +} +return this._maxLabelSize; +},calculate:function(min,max,_1f){ +this.inherited(arguments); +this.scaler.minMinorStep=this._prevMinMinorStep; +if((this._invalidMaxLabelSize||_1f!=this._oldSpan)&&(min!=Infinity&&max!=-Infinity)){ +this._invalidMaxLabelSize=false; +if(this.opt.labelSizeChange){ +this._maxLabelSize=null; +} +this._oldSpan=_1f; +var o=this.opt; +var ta=this.chart.theme.axis,_20=o.rotation%360,_21=this.chart.theme.axis.tick.labelGap,_22=o.font||(ta.majorTick&&ta.majorTick.font)||(ta.tick&&ta.tick.font),_23=_22?g.normalizedLength(g.splitFontString(_22).size):0,_24=this._getMaxLabelSize(min,max,_1f,_20,_22,_23); +if(typeof _21!="number"){ +_21=4; +} +if(_24&&o.dropLabels){ +var _25=Math.abs(Math.cos(_20*Math.PI/180)),_26=Math.abs(Math.sin(_20*Math.PI/180)); +var _27,_28; +if(_20<0){ +_20+=360; +} +switch(_20){ +case 0: +case 180: +if(this.vertical){ +_27=_28=_23; +}else{ +_27=_24.majLabelW; +_28=_24.minLabelW; +} +break; +case 90: +case 270: +if(this.vertical){ +_27=_24.majLabelW; +_28=_24.minLabelW; +}else{ +_27=_28=_23; +} +break; +default: +_27=this.vertical?Math.min(_24.majLabelW,_23/_25):Math.min(_24.majLabelW,_23/_26); +var _29=Math.sqrt(_24.minLabelW*_24.minLabelW+_23*_23),_2a=this.vertical?_23*_25+_24.minLabelW*_26:_24.minLabelW*_25+_23*_26; +_28=Math.min(_29,_2a); +break; +} +this.scaler.minMinorStep=this._prevMinMinorStep=Math.max(_27,_28)+_21; +var _2b=this.scaler.minMinorStep<=this.scaler.minor.tick*this.scaler.bounds.scale; +if(!_2b){ +this._skipInterval=Math.floor((_27+_21)/(this.scaler.major.tick*this.scaler.bounds.scale)); +}else{ +this._skipInterval=0; +} +}else{ +this._skipInterval=0; +} +} +this.ticks=_8.buildTicks(this.scaler,this.opt); +return this; +},getOffsets:function(){ +var s=this.scaler,_2c={l:0,r:0,t:0,b:0}; +if(!s){ +return _2c; +} +var o=this.opt,ta=this.chart.theme.axis,_2d=this.chart.theme.axis.tick.labelGap,_2e=o.titleFont||(ta.title&&ta.title.font),_2f=(o.titleGap==0)?0:o.titleGap||(ta.title&&ta.title.gap),_30=this.chart.theme.getTick("major",o),_31=this.chart.theme.getTick("minor",o),_32=_2e?g.normalizedLength(g.splitFontString(_2e).size):0,_33=o.rotation%360,_34=o.position,_35=_34!=="rightOrTop",_36=Math.abs(Math.cos(_33*Math.PI/180)),_37=Math.abs(Math.sin(_33*Math.PI/180)); +this.trailingSymbol=(o.trailingSymbol===undefined||o.trailingSymbol===null)?this.trailingSymbol:o.trailingSymbol; +if(typeof _2d!="number"){ +_2d=4; +} +if(_33<0){ +_33+=360; +} +var _38=this._getMaxLabelSize(); +if(_38){ +var _39; +var _3a=Math.ceil(Math.max(_38.majLabelW,_38.minLabelW))+1,_3b=Math.ceil(Math.max(_38.majLabelH,_38.minLabelH))+1; +if(this.vertical){ +_39=_35?"l":"r"; +switch(_33){ +case 0: +case 180: +_2c[_39]=_34==="center"?0:_3a; +_2c.t=_2c.b=_3b/2; +break; +case 90: +case 270: +_2c[_39]=_3b; +_2c.t=_2c.b=_3a/2; +break; +default: +if(_33<=_b||(180<_33&&_33<=(180+_b))){ +_2c[_39]=_3b*_37/2+_3a*_36; +_2c[_35?"t":"b"]=_3b*_36/2+_3a*_37; +_2c[_35?"b":"t"]=_3b*_36/2; +}else{ +if(_33>(360-_b)||(180>_33&&_33>(180-_b))){ +_2c[_39]=_3b*_37/2+_3a*_36; +_2c[_35?"b":"t"]=_3b*_36/2+_3a*_37; +_2c[_35?"t":"b"]=_3b*_36/2; +}else{ +if(_33<90||(180<_33&&_33<270)){ +_2c[_39]=_3b*_37+_3a*_36; +_2c[_35?"t":"b"]=_3b*_36+_3a*_37; +}else{ +_2c[_39]=_3b*_37+_3a*_36; +_2c[_35?"b":"t"]=_3b*_36+_3a*_37; +} +} +} +break; +} +if(_34==="center"){ +_2c[_39]=0; +}else{ +_2c[_39]+=_2d+Math.max(_30.length>0?_30.length:0,_31.length>0?_31.length:0)+(o.title?(_32+_2f):0); +} +}else{ +_39=_35?"b":"t"; +switch(_33){ +case 0: +case 180: +_2c[_39]=_34==="center"?0:_3b; +_2c.l=_2c.r=_3a/2; +break; +case 90: +case 270: +_2c[_39]=_3a; +_2c.l=_2c.r=_3b/2; +break; +default: +if((90-_b)<=_33&&_33<=90||(270-_b)<=_33&&_33<=270){ +_2c[_39]=_3b*_36/2+_3a*_37; +_2c[_35?"r":"l"]=_3b*_37/2+_3a*_36; +_2c[_35?"l":"r"]=_3b*_37/2; +}else{ +if(90<=_33&&_33<=(90+_b)||270<=_33&&_33<=(270+_b)){ +_2c[_39]=_3b*_36/2+_3a*_37; +_2c[_35?"l":"r"]=_3b*_37/2+_3a*_36; +_2c[_35?"r":"l"]=_3b*_37/2; +}else{ +if(_33<_b||(180<_33&&_33<(180+_b))){ +_2c[_39]=_3b*_36+_3a*_37; +_2c[_35?"r":"l"]=_3b*_37+_3a*_36; +}else{ +_2c[_39]=_3b*_36+_3a*_37; +_2c[_35?"l":"r"]=_3b*_37+_3a*_36; +} +} +} +break; +} +if(_34==="center"){ +_2c[_39]=0; +}else{ +_2c[_39]+=_2d+Math.max(_30.length>0?_30.length:0,_31.length>0?_31.length:0)+(o.title?(_32+_2f):0); +} +} +} +return _2c; +},cleanGroup:function(_3c){ +if(this.opt.enableCache&&this.group){ +this._lineFreePool=this._lineFreePool.concat(this._lineUsePool); +this._lineUsePool=[]; +this._textFreePool=this._textFreePool.concat(this._textUsePool); +this._textUsePool=[]; +} +this.inherited(arguments); +},createText:function(_3d,_3e,x,y,_3f,_40,_41,_42,_43){ +if(!this.opt.enableCache||_3d=="html"){ +return _9.createText[_3d](this.chart,_3e,x,y,_3f,_40,_41,_42,_43); +} +var _44; +if(this._textFreePool.length>0){ +_44=this._textFreePool.pop(); +_44.setShape({x:x,y:y,text:_40,align:_3f}); +_3e.add(_44); +}else{ +_44=_9.createText[_3d](this.chart,_3e,x,y,_3f,_40,_41,_42); +} +this._textUsePool.push(_44); +return _44; +},createLine:function(_45,_46){ +var _47; +if(this.opt.enableCache&&this._lineFreePool.length>0){ +_47=this._lineFreePool.pop(); +_47.setShape(_46); +_45.add(_47); +}else{ +_47=_45.createLine(_46); +} +if(this.opt.enableCache){ +this._lineUsePool.push(_47); +} +return _47; +},render:function(dim,_48){ +var _49=this._isRtl(); +if(!this.dirty||!this.scaler){ +return this; +} +var o=this.opt,ta=this.chart.theme.axis,_4a=o.position,_4b=_4a!=="rightOrTop",_4c=o.rotation%360,_4d,_4e,_4f,_50=0,_51,_52,_53,_54,_55,_56,_57=this.chart.theme.axis.tick.labelGap,_58=o.font||(ta.majorTick&&ta.majorTick.font)||(ta.tick&&ta.tick.font),_59=o.titleFont||(ta.title&&ta.title.font),_5a=o.fontColor||(ta.majorTick&&ta.majorTick.fontColor)||(ta.tick&&ta.tick.fontColor)||"black",_5b=o.titleFontColor||(ta.title&&ta.title.fontColor)||"black",_5c=(o.titleGap==0)?0:o.titleGap||(ta.title&&ta.title.gap)||15,_5d=o.titleOrientation||(ta.title&&ta.title.orientation)||"axis",_5e=this.chart.theme.getTick("major",o),_5f=this.chart.theme.getTick("minor",o),_60=this.chart.theme.getTick("micro",o),_61="stroke" in o?o.stroke:ta.stroke,_62=_58?g.normalizedLength(g.splitFontString(_58).size):0,_63=Math.abs(Math.cos(_4c*Math.PI/180)),_64=Math.abs(Math.sin(_4c*Math.PI/180)),_65=_59?g.normalizedLength(g.splitFontString(_59).size):0; +if(typeof _57!="number"){ +_57=4; +} +if(_4c<0){ +_4c+=360; +} +var _66=this._getMaxLabelSize(); +_66=_66&&_66.majLabelW; +if(this.vertical){ +_4d={y:dim.height-_48.b}; +_4e={y:_48.t}; +_4f={y:(dim.height-_48.b+_48.t)/2}; +_51=_62*_64+(_66||0)*_63+_57+Math.max(_5e.length>0?_5e.length:0,_5f.length>0?_5f.length:0)+_65+_5c; +_52={x:0,y:-1}; +_55={x:0,y:0}; +_53={x:1,y:0}; +_54={x:_57,y:0}; +switch(_4c){ +case 0: +_56="end"; +_55.y=_62*0.4; +break; +case 90: +_56="middle"; +_55.x=-_62; +break; +case 180: +_56="start"; +_55.y=-_62*0.4; +break; +case 270: +_56="middle"; +break; +default: +if(_4c<_b){ +_56="end"; +_55.y=_62*0.4; +}else{ +if(_4c<90){ +_56="end"; +_55.y=_62*0.4; +}else{ +if(_4c<(180-_b)){ +_56="start"; +}else{ +if(_4c<(180+_b)){ +_56="start"; +_55.y=-_62*0.4; +}else{ +if(_4c<270){ +_56="start"; +_55.x=_4b?0:_62*0.4; +}else{ +if(_4c<(360-_b)){ +_56="end"; +_55.x=_4b?0:_62*0.4; +}else{ +_56="end"; +_55.y=_62*0.4; +} +} +} +} +} +} +} +if(_4b){ +_4d.x=_4e.x=_4a==="center"?dim.width/2:_48.l; +_50=(_5d&&_5d=="away")?90:270; +_4f.x=_48.l-_51+(_50==270?_65:0); +_53.x=-1; +_54.x=-_54.x; +}else{ +_4d.x=_4e.x=dim.width-_48.r; +_50=(_5d&&_5d=="axis")?90:270; +_4f.x=dim.width-_48.r+_51-(_50==270?0:_65); +switch(_56){ +case "start": +_56="end"; +break; +case "end": +_56="start"; +break; +case "middle": +_55.x+=_62; +break; +} +} +}else{ +_4d={x:_48.l}; +_4e={x:dim.width-_48.r}; +_4f={x:(dim.width-_48.r+_48.l)/2}; +_51=_62*_63+(_66||0)*_64+_57+Math.max(_5e.length>0?_5e.length:0,_5f.length>0?_5f.length:0)+_65+_5c; +_52={x:_49?-1:1,y:0}; +_55={x:0,y:0}; +_53={x:0,y:1}; +_54={x:0,y:_57}; +switch(_4c){ +case 0: +_56="middle"; +_55.y=_62; +break; +case 90: +_56="start"; +_55.x=-_62*0.4; +break; +case 180: +_56="middle"; +break; +case 270: +_56="end"; +_55.x=_62*0.4; +break; +default: +if(_4c<(90-_b)){ +_56="start"; +_55.y=_4b?_62:0; +}else{ +if(_4c<(90+_b)){ +_56="start"; +_55.x=-_62*0.4; +}else{ +if(_4c<180){ +_56="start"; +_55.y=_4b?0:-_62; +}else{ +if(_4c<(270-_b)){ +_56="end"; +_55.y=_4b?0:-_62; +}else{ +if(_4c<(270+_b)){ +_56="end"; +_55.y=_4b?_62*0.4:0; +}else{ +_56="end"; +_55.y=_4b?_62:0; +} +} +} +} +} +} +if(_4b){ +_4d.y=_4e.y=_4a==="center"?dim.height/2:dim.height-_48.b; +_50=(_5d&&_5d=="axis")?180:0; +_4f.y=dim.height-_48.b+_51-(_50?_65:0); +}else{ +_4d.y=_4e.y=_48.t; +_50=(_5d&&_5d=="away")?180:0; +_4f.y=_48.t-_51+(_50?0:_65); +_53.y=-1; +_54.y=-_54.y; +switch(_56){ +case "start": +_56="end"; +break; +case "end": +_56="start"; +break; +case "middle": +_55.y-=_62; +break; +} +} +} +this.cleanGroup(); +var s=this.group,c=this.scaler,t=this.ticks,f=_8.getTransformerFromModel(this.scaler),_67=(!o.title||!_50)&&!_4c&&this.opt.htmlLabels&&!_3("ie")&&!_3("opera")?"html":"gfx",dx=_53.x*_5e.length,dy=_53.y*_5e.length,_68=this._skipInterval; +s.createLine({x1:_4d.x,y1:_4d.y,x2:_4e.x,y2:_4e.y}).setStroke(_61); +if(o.title){ +var _69=_9.createText[_67](this.chart,s,_4f.x,_4f.y,"middle",o.title,_59,_5b); +if(_67=="html"){ +this.htmlElements.push(_69); +}else{ +_69.setTransform(g.matrix.rotategAt(_50,_4f.x,_4f.y)); +} +} +if(t==null){ +this.dirty=false; +return this; +} +var rel=(t.major.length>0)?(t.major[0].value-this._majorStart)/c.major.tick:0; +var _6a=this.opt.majorLabels; +_2.forEach(t.major,function(_6b,i){ +var _6c=f(_6b.value),_6d,x=(_49?_4e.x:_4d.x)+_52.x*_6c,y=_4d.y+_52.y*_6c; +i+=rel; +this.createLine(s,{x1:x,y1:y,x2:x+dx,y2:y+dy}).setStroke(_5e); +if(_6b.label&&(!_68||(i-(1+_68))%(1+_68)==0)){ +var _6e=o.maxLabelCharCount?this.getTextWithLimitCharCount(_6b.label,_58,o.maxLabelCharCount):{text:_6b.label,truncated:false}; +_6e=o.maxLabelSize?this.getTextWithLimitLength(_6e.text,_58,o.maxLabelSize,_6e.truncated):_6e; +_6d=this.createText(_67,s,x+(_5e.length>0?dx:0)+_54.x+(_4c?0:_55.x),y+(_5e.length>0?dy:0)+_54.y+(_4c?0:_55.y),_56,_6e.text,_58,_5a); +if(_6e.truncated){ +this.chart.formatTruncatedLabel(_6d,_6b.label,_67); +} +_6e.truncated&&this.labelTooltip(_6d,this.chart,_6b.label,_6e.text,_58,_67); +if(_67=="html"){ +this.htmlElements.push(_6d); +}else{ +if(_4c){ +_6d.setTransform([{dx:_55.x,dy:_55.y},g.matrix.rotategAt(_4c,x+(_5e.length>0?dx:0)+_54.x,y+(_5e.length>0?dy:0)+_54.y)]); +} +} +} +},this); +dx=_53.x*_5f.length; +dy=_53.y*_5f.length; +_6a=this.opt.minorLabels&&c.minMinorStep<=c.minor.tick*c.bounds.scale; +_2.forEach(t.minor,function(_6f){ +var _70=f(_6f.value),_71,x=(_49?_4e.x:_4d.x)+_52.x*_70,y=_4d.y+_52.y*_70; +this.createLine(s,{x1:x,y1:y,x2:x+dx,y2:y+dy}).setStroke(_5f); +if(_6a&&_6f.label){ +var _72=o.maxLabelCharCount?this.getTextWithLimitCharCount(_6f.label,_58,o.maxLabelCharCount):{text:_6f.label,truncated:false}; +_72=o.maxLabelSize?this.getTextWithLimitLength(_72.text,_58,o.maxLabelSize,_72.truncated):_72; +_71=this.createText(_67,s,x+(_5f.length>0?dx:0)+_54.x+(_4c?0:_55.x),y+(_5f.length>0?dy:0)+_54.y+(_4c?0:_55.y),_56,_72.text,_58,_5a); +if(_72.truncated){ +this.chart.formatTruncatedLabel(_71,_6f.label,_67); +} +_72.truncated&&this.labelTooltip(_71,this.chart,_6f.label,_72.text,_58,_67); +if(_67=="html"){ +this.htmlElements.push(_71); +}else{ +if(_4c){ +_71.setTransform([{dx:_55.x,dy:_55.y},g.matrix.rotategAt(_4c,x+(_5f.length>0?dx:0)+_54.x,y+(_5f.length>0?dy:0)+_54.y)]); +} +} +} +},this); +dx=_53.x*_60.length; +dy=_53.y*_60.length; +_2.forEach(t.micro,function(_73){ +var _74=f(_73.value),x=_4d.x+_52.x*_74,y=_4d.y+_52.y*_74; +this.createLine(s,{x1:x,y1:y,x2:x+dx,y2:y+dy}).setStroke(_60); +},this); +this.dirty=false; +return this; +},labelTooltip:function(_75,_76,_77,_78,_79,_7a){ +var _7b=["dijit/Tooltip"]; +var _7c={type:"rect"},_7d=["above","below"],_7e=g._base._getTextBox(_78,{font:_79}).w||0,_7f=_79?g.normalizedLength(g.splitFontString(_79).size):0; +if(_7a=="html"){ +_1.mixin(_7c,_6.position(_75.firstChild,true)); +_7c.width=Math.ceil(_7e); +_7c.height=Math.ceil(_7f); +this._events.push({shape:dojo,handle:_5.connect(_75.firstChild,"onmouseover",this,function(e){ +require(_7b,function(_80){ +_80.show(_77,_7c,_7d); +}); +})}); +this._events.push({shape:dojo,handle:_5.connect(_75.firstChild,"onmouseout",this,function(e){ +require(_7b,function(_81){ +_81.hide(_7c); +}); +})}); +}else{ +var shp=_75.getShape(),lt=_76.getCoords(); +_7c=_1.mixin(_7c,{x:shp.x-_7e/2,y:shp.y}); +_7c.x+=lt.x; +_7c.y+=lt.y; +_7c.x=Math.round(_7c.x); +_7c.y=Math.round(_7c.y); +_7c.width=Math.ceil(_7e); +_7c.height=Math.ceil(_7f); +this._events.push({shape:_75,handle:_75.connect("onmouseenter",this,function(e){ +require(_7b,function(_82){ +_82.show(_77,_7c,_7d); +}); +})}); +this._events.push({shape:_75,handle:_75.connect("onmouseleave",this,function(e){ +require(_7b,function(_83){ +_83.hide(_7c); +}); +})}); +} +},_isRtl:function(){ +return false; +}}); +return _3("dojo-bidi")?_4("dojox.charting.axis2d.Default",[_c,_a]):_c; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Default.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Default.js.uncompressed.js new file mode 100644 index 00000000..12352b47 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Default.js.uncompressed.js @@ -0,0 +1,980 @@ +define("dojox/charting/axis2d/Default", ["dojo/_base/lang", "dojo/_base/array", "dojo/sniff", "dojo/_base/declare", + "dojo/_base/connect", "dojo/dom-geometry", "./Invisible", + "../scaler/linear", "./common", "dojox/gfx", "dojox/lang/utils", "dojox/lang/functional", + "dojo/has!dojo-bidi?../bidi/axis2d/Default"], + function(lang, arr, has, declare, connect, domGeom, Invisible, + lin, acommon, g, du, df, BidiDefault){ + + /*===== + var __AxisCtorArgs = { + // summary: + // Optional arguments used in the definition of an axis. + // vertical: Boolean? + // A flag that says whether an axis is vertical (i.e. y axis) or horizontal. Default is false (horizontal). + // fixUpper: String? + // Align the greatest value on the axis with the specified tick level. Options are "major", "minor", "micro", or "none". Defaults to "none". + // fixLower: String? + // Align the smallest value on the axis with the specified tick level. Options are "major", "minor", "micro", or "none". Defaults to "none". + // natural: Boolean? + // Ensure tick marks are made on "natural" numbers. Defaults to false. + // leftBottom: Boolean? + // Deprecated: use position instead. The position of a vertical axis; if true, will be placed against the left-bottom corner of the chart. Defaults to true. + // includeZero: Boolean? + // Include 0 on the axis rendering. Default is false. + // fixed: Boolean? + // Force all axis labels to be fixed numbers. Default is true. + // majorLabels: Boolean? + // Flag to draw labels at major ticks. Default is true. + // minorTicks: Boolean? + // Flag to draw minor ticks on an axis. Default is true. + // minorLabels: Boolean? + // Flag to labels on minor ticks when there is enough space. Default is true. + // microTicks: Boolean? + // Flag to draw micro ticks on an axis. Default is false. + // htmlLabels: Boolean? + // Flag to use HTML (as opposed to the native vector graphics engine) to draw labels. Default is true. + // min: Number? + // The smallest value on an axis. Default is 0. + // max: Number? + // The largest value on an axis. Default is 1. + // from: Number? + // Force the chart to render data visible from this value. Default is 0. + // to: Number? + // Force the chart to render data visible to this value. Default is 1. + // majorTickStep: Number? + // The amount to skip before a major tick is drawn. When not set the major ticks step is computed from + // the data range. + // minorTickStep: Number? + // The amount to skip before a minor tick is drawn. When not set the minor ticks step is computed from + // the data range. + // microTickStep: Number? + // The amount to skip before a micro tick is drawn. When not set the micro ticks step is computed from + // labels: Object[]? + // An array of labels for major ticks, with corresponding numeric values, ordered by value. + // labelFunc: Function? + // An optional function to use to compute label text. It takes precedence over + // the default text when available. The function must be of the following form: + // | function labelFunc(text, value, precision) {} + // `text` is the already pre-formatted text. Pre-formatting is done using `dojo/number` is available, `Date.toFixed` otherwise. + // `value` is the raw axis value. + // `precision` is the requested precision to be applied. + // maxLabelSize: Number? + // The maximum size, in pixels, for a label. To be used with the optional label function. + // stroke: dojox.gfx.Stroke? + // An optional stroke to be used for drawing an axis. + // majorTick: Object? + // An object containing a dojox.gfx.Stroke, and a length (number) for a major tick. + // minorTick: Object? + // An object containing a dojox.gfx.Stroke, and a length (number) for a minor tick. + // microTick: Object? + // An object containing a dojox.gfx.Stroke, and a length (number) for a micro tick. + // tick: Object? + // An object containing a dojox.gfx.Stroke, and a length (number) for a tick. + // font: String? + // An optional font definition (as used in the CSS font property) for labels. + // fontColor: String|dojo.Color? + // An optional color to be used in drawing labels. + // titleGap: Number? + // An optional grap between axis title and axis label + // titleFont: String? + // An optional font definition for axis title + // titleFontColor: String? + // An optional axis title color + // titleOrientation: String? + // An optional orientation for axis title. "axis" means the title facing the axis, "away" means facing away. + // If no value is set "axis" is used. + // enableCache: Boolean? + // Whether the ticks and labels are cached from one rendering to another. This improves the rendering performance of + // successive rendering but penalize the first rendering. For labels it is only working with gfx labels + // not html ones. Default false. + // dropLabels: Boolean? + // Whether the axis automatically drops labels at regular interval or not to avoid labels overlapping. + // This gives better results but require more computations. You can disable it to save computation + // time when you know your labels won't overlap. Default is true. + // labelSizeChange: Boolean? + // Indicates to the axis whether the axis labels are changing their size on zoom. If false this allows to + // optimize the axis by avoiding recomputing labels maximum size on zoom actions. Default is false. + // position: String? + // The position of the axis. Values: "leftOrBottom", "center" or "rightOrTop". Default is "leftOrBottom". + }; + =====*/ + + var centerAnchorLimit = 45; // in degrees + + var Default = declare(has("dojo-bidi")? "dojox.charting.axis2d.NonBidiDefault" : "dojox.charting.axis2d.Default", Invisible, { + // summary: + // The default axis object used in dojox.charting. See dojox.charting.Chart.addAxis for details. + + // defaultParams: Object + // The default parameters used to define any axis. + // optionalParams: Object + // Any optional parameters needed to define an axis. + + /*===== + // TODO: the documentation tools need these to be pre-defined in order to pick them up + // correctly, but the code here is partially predicated on whether or not the properties + // actually exist. For now, we will leave these undocumented but in the code for later. -- TRT + + // opt: Object + // The actual options used to define this axis, created at initialization. + // scaler: Object + // The calculated helper object to tell charts how to draw an axis and any data. + // ticks: Object + // The calculated tick object that helps a chart draw the scaling on an axis. + // dirty: Boolean + // The state of the axis (whether it needs to be redrawn or not) + // scale: Number + // The current scale of the axis. + // offset: Number + // The current offset of the axis. + + opt: null, + scaler: null, + ticks: null, + dirty: true, + scale: 1, + offset: 0, + =====*/ + defaultParams: { + vertical: false, // true for vertical axis + fixUpper: "none", // align the upper on ticks: "major", "minor", "micro", "none" + fixLower: "none", // align the lower on ticks: "major", "minor", "micro", "none" + natural: false, // all tick marks should be made on natural numbers + leftBottom: true, // position of the axis, used with "vertical" - deprecated: use position instead + includeZero: false, // 0 should be included + fixed: true, // all labels are fixed numbers + majorLabels: true, // draw major labels + minorTicks: true, // draw minor ticks + minorLabels: true, // draw minor labels + microTicks: false, // draw micro ticks + rotation: 0, // label rotation angle in degrees + htmlLabels: true, // use HTML to draw labels + enableCache: false, // whether we cache or not + dropLabels: true, // whether we automatically drop overlapping labels or not + labelSizeChange: false, // whether the labels size change on zoom + position: "leftOrBottom" // position of the axis: "leftOrBottom" (default), "center" or "rightOrTop" + }, + optionalParams: { + min: 0, // minimal value on this axis + max: 1, // maximal value on this axis + from: 0, // visible from this value + to: 1, // visible to this value + majorTickStep: 4, // major tick step + minorTickStep: 2, // minor tick step + microTickStep: 1, // micro tick step + labels: [], // array of labels for major ticks + // with corresponding numeric values + // ordered by values + labelFunc: null, // function to compute label values + maxLabelSize: 0, // size in px. For use with labelFunc + maxLabelCharCount: 0, // size in word count. + trailingSymbol: null, + + // TODO: add support for minRange! + // minRange: 1, // smallest distance from min allowed on the axis + + // theme components + stroke: {}, // stroke for an axis + majorTick: {}, // stroke + length for a tick + minorTick: {}, // stroke + length for a tick + microTick: {}, // stroke + length for a tick + tick: {}, // stroke + length for a tick + font: "", // font for labels + fontColor: "", // color for labels as a string + title: "", // axis title + titleGap: 0, // gap between axis title and axis label + titleFont: "", // axis title font + titleFontColor: "", // axis title font color + titleOrientation: "" // "axis" means the title facing the axis, "away" means facing away + }, + + constructor: function(chart, kwArgs){ + // summary: + // The constructor for an axis. + // chart: dojox/charting/Chart + // The chart the axis belongs to. + // kwArgs: __AxisCtorArgs? + // Any optional keyword arguments to be used to define this axis. + this.opt = lang.clone(this.defaultParams); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + if(this.opt.enableCache){ + this._textFreePool = []; + this._lineFreePool = []; + this._textUsePool = []; + this._lineUsePool = []; + } + this._invalidMaxLabelSize = true; + // replace deprecated leftBotton to position + if(!(kwArgs && ('position' in kwArgs))){ + this.opt.position = this.opt.leftBottom ? "leftOrBottom" : "rightOrTop"; + } + this.renderingOptions = { "shape-rendering": "crispEdges" }; + }, + setWindow: function(scale, offset){ + // summary: + // Set the drawing "window" for the axis. + // scale: Number + // The new scale for the axis. + // offset: Number + // The new offset for the axis. + // returns: dojox/charting/axis2d/Default + // The reference to the axis for functional chaining. + if(scale != this.scale){ + // if scale changed we need to recompute new max label size + this._invalidMaxLabelSize = true; + } + return this.inherited(arguments); + }, + + _groupLabelWidth: function(labels, font, wcLimit){ + if(!labels.length){ + return 0; + } + if(labels.length > 50){ + // let's avoid degenerated cases + labels.length = 50; + } + if(lang.isObject(labels[0])){ + labels = df.map(labels, function(label){ return label.text; }); + } + if(wcLimit){ + labels = df.map(labels, function(label){ + return lang.trim(label).length == 0 ? "" : label.substring(0, wcLimit) + this.trailingSymbol; + }, this); + } + var s = labels.join("
    "); + return g._base._getTextBox(s, {font: font}).w || 0; + }, + + _getMaxLabelSize: function(min, max, span, rotation, font, size){ + if(this._maxLabelSize == null && arguments.length == 6){ + var o = this.opt; + // everything might have changed, reset the minMinorStep value + this.scaler.minMinorStep = this._prevMinMinorStep = 0; + var ob = lang.clone(o); + delete ob.to; + delete ob.from; + // build all the ticks from min, to max not from to to _but_ using the step + // that would be used if we where just displaying from to to from. + var sb = lin.buildScaler(min, max, span, ob, o.to - o.from); + sb.minMinorStep = 0; + this._majorStart = sb.major.start; + // we build all the ticks not only the ones we need to draw in order to get + // a correct drop rate computation that works for any offset of this scale + var tb = lin.buildTicks(sb, o); + // if there is not tick at all tb is null + if(size && tb){ + var majLabelW = 0, minLabelW = 0; // non rotated versions + // we first collect all labels when needed + var tickLabelFunc = function(tick){ + if(tick.label){ + this.push(tick.label); + } + }; + var labels = []; + if(this.opt.majorLabels){ + arr.forEach(tb.major, tickLabelFunc, labels); + majLabelW = this._groupLabelWidth(labels, font, ob.maxLabelCharCount); + if(ob.maxLabelSize){ + majLabelW = Math.min(ob.maxLabelSize, majLabelW); + } + } + // do the minor labels computation only if dropLabels is set + labels = []; + if(this.opt.dropLabels && this.opt.minorLabels){ + arr.forEach(tb.minor, tickLabelFunc, labels); + minLabelW = this._groupLabelWidth(labels, font, ob.maxLabelCharCount); + if(ob.maxLabelSize){ + minLabelW = Math.min(ob.maxLabelSize, minLabelW); + } + } + this._maxLabelSize = { + majLabelW: majLabelW, minLabelW: minLabelW, + majLabelH: size, minLabelH: size + }; + }else{ + this._maxLabelSize = null; + } + } + return this._maxLabelSize; + }, + + calculate: function(min, max, span){ + this.inherited(arguments); + // when the scale has not changed there is no reason for minMinorStep to change + this.scaler.minMinorStep = this._prevMinMinorStep; + // we want to recompute the dropping mechanism only when the scale or the size of the axis is changing + // not when for example when we scroll (otherwise effect would be weird) + if((this._invalidMaxLabelSize || span != this._oldSpan) && (min != Infinity && max != -Infinity)){ + this._invalidMaxLabelSize = false; + if(this.opt.labelSizeChange){ + this._maxLabelSize = null; + } + this._oldSpan = span; + var o = this.opt; + var ta = this.chart.theme.axis, rotation = o.rotation % 360, + labelGap = this.chart.theme.axis.tick.labelGap, + // TODO: we use one font --- of major tick, we need to use major and minor fonts + font = o.font || (ta.majorTick && ta.majorTick.font) || (ta.tick && ta.tick.font), + size = font ? g.normalizedLength(g.splitFontString(font).size) : 0, + // even if we don't drop label we need to compute max size for offsets + labelW = this._getMaxLabelSize(min, max, span, rotation, font, size); + if(typeof labelGap != "number"){ + labelGap = 4; // in pixels + } + if(labelW && o.dropLabels){ + var cosr = Math.abs(Math.cos(rotation * Math.PI / 180)), + sinr = Math.abs(Math.sin(rotation * Math.PI / 180)); + var majLabelW, minLabelW; + if(rotation < 0){ + rotation += 360; + } + switch(rotation){ + case 0: + case 180: + // trivial cases: horizontal labels + if(this.vertical){ + majLabelW = minLabelW = size; + }else{ + majLabelW = labelW.majLabelW; + minLabelW = labelW.minLabelW; + } + break; + case 90: + case 270: + // trivial cases: vertical + if(this.vertical){ + majLabelW = labelW.majLabelW; + minLabelW = labelW.minLabelW; + }else{ + majLabelW = minLabelW = size; + } + break; + default: + // all major labels are parallel they can't collapse except if the two ticks are + // closer than the height of the text * cos(90-rotation) + majLabelW = this.vertical ? Math.min(labelW.majLabelW, size / cosr) : Math.min(labelW.majLabelW, size / sinr); + // for minor labels we need to rotated them + var gap1 = Math.sqrt(labelW.minLabelW * labelW.minLabelW + size * size), + gap2 = this.vertical ? size * cosr + labelW.minLabelW * sinr : labelW.minLabelW * cosr + size * sinr; + minLabelW = Math.min(gap1, gap2); + break; + } + // we need to check both minor and major labels fit a minor step + this.scaler.minMinorStep = this._prevMinMinorStep = Math.max(majLabelW, minLabelW) + labelGap; + var canMinorLabel = this.scaler.minMinorStep <= this.scaler.minor.tick * this.scaler.bounds.scale; + if(!canMinorLabel){ + // we can't place minor labels, let's see if we can place major ones + // in a major step and if not which skip interval we must follow + this._skipInterval = Math.floor((majLabelW + labelGap) / (this.scaler.major.tick * this.scaler.bounds.scale)); + }else{ + // everything fit well + this._skipInterval = 0; + } + }else{ + // drop label disabled + this._skipInterval = 0; + } + } + // computes the tick subset we need for that scale/offset + this.ticks = lin.buildTicks(this.scaler, this.opt); + return this; + }, + + getOffsets: function(){ + // summary: + // Get the physical offset values for this axis (used in drawing data series). This method is not + // supposed to be called by the users but internally. + // returns: Object + // The calculated offsets in the form of { l, r, t, b } (left, right, top, bottom). + var s = this.scaler, offsets = { l: 0, r: 0, t: 0, b: 0 }; + if(!s){ + return offsets; + } + var o = this.opt, + ta = this.chart.theme.axis, + labelGap = this.chart.theme.axis.tick.labelGap, + // TODO: we use one font --- of major tick, we need to use major and minor fonts + taTitleFont = o.titleFont || (ta.title && ta.title.font), + taTitleGap = (o.titleGap==0) ? 0 : o.titleGap || (ta.title && ta.title.gap), + taMajorTick = this.chart.theme.getTick("major", o), + taMinorTick = this.chart.theme.getTick("minor", o), + tsize = taTitleFont ? g.normalizedLength(g.splitFontString(taTitleFont).size) : 0, + rotation = o.rotation % 360, position = o.position, + leftBottom = position !== "rightOrTop", + cosr = Math.abs(Math.cos(rotation * Math.PI / 180)), + sinr = Math.abs(Math.sin(rotation * Math.PI / 180)); + this.trailingSymbol = (o.trailingSymbol === undefined || o.trailingSymbol === null) ? + this.trailingSymbol : o.trailingSymbol; + if(typeof labelGap != "number"){ + labelGap = 4; // in pixels + } + if(rotation < 0){ + rotation += 360; + } + var maxLabelSize = this._getMaxLabelSize(); // don't need parameters, calculate has been called before => we use cached value + if(maxLabelSize){ + var side; + var labelWidth = Math.ceil(Math.max(maxLabelSize.majLabelW, maxLabelSize.minLabelW)) + 1, + size = Math.ceil(Math.max(maxLabelSize.majLabelH, maxLabelSize.minLabelH)) + 1; + if(this.vertical){ + side = leftBottom ? "l" : "r"; + switch(rotation){ + case 0: + case 180: + offsets[side] = position === "center" ? 0 : labelWidth; + offsets.t = offsets.b = size / 2; + break; + case 90: + case 270: + offsets[side] = size; + offsets.t = offsets.b = labelWidth / 2; + break; + default: + if(rotation <= centerAnchorLimit || (180 < rotation && rotation <= (180 + centerAnchorLimit))){ + offsets[side] = size * sinr / 2 + labelWidth * cosr; + offsets[leftBottom ? "t" : "b"] = size * cosr / 2 + labelWidth * sinr; + offsets[leftBottom ? "b" : "t"] = size * cosr / 2; + }else if(rotation > (360 - centerAnchorLimit) || (180 > rotation && rotation > (180 - centerAnchorLimit))){ + offsets[side] = size * sinr / 2 + labelWidth * cosr; + offsets[leftBottom ? "b" : "t"] = size * cosr / 2 + labelWidth * sinr; + offsets[leftBottom ? "t" : "b"] = size * cosr / 2; + }else if(rotation < 90 || (180 < rotation && rotation < 270)){ + offsets[side] = size * sinr + labelWidth * cosr; + offsets[leftBottom ? "t" : "b"] = size * cosr + labelWidth * sinr; + }else{ + offsets[side] = size * sinr + labelWidth * cosr; + offsets[leftBottom ? "b" : "t"] = size * cosr + labelWidth * sinr; + } + break; + } + if(position === "center"){ + offsets[side] = 0; + } + else{ + offsets[side] += labelGap + Math.max(taMajorTick.length > 0?taMajorTick.length:0, + taMinorTick.length > 0?taMinorTick.length:0) + (o.title ? (tsize + taTitleGap) : 0); + } + }else{ + side = leftBottom ? "b" : "t"; + switch(rotation){ + case 0: + case 180: + offsets[side] = position === "center" ? 0 : size; + offsets.l = offsets.r = labelWidth / 2; + break; + case 90: + case 270: + offsets[side] = labelWidth; + offsets.l = offsets.r = size / 2; + break; + default: + if((90 - centerAnchorLimit) <= rotation && rotation <= 90 || (270 - centerAnchorLimit) <= rotation && rotation <= 270){ + offsets[side] = size * cosr / 2 + labelWidth * sinr; + offsets[leftBottom ? "r" : "l"] = size * sinr / 2 + labelWidth * cosr; + offsets[leftBottom ? "l" : "r"] = size * sinr / 2; + }else if(90 <= rotation && rotation <= (90 + centerAnchorLimit) || 270 <= rotation && rotation <= (270 + centerAnchorLimit)){ + offsets[side] = size * cosr / 2 + labelWidth * sinr; + offsets[leftBottom ? "l" : "r"] = size * sinr / 2 + labelWidth * cosr; + offsets[leftBottom ? "r" : "l"] = size * sinr / 2; + }else if(rotation < centerAnchorLimit || (180 < rotation && rotation < (180 + centerAnchorLimit))){ + offsets[side] = size * cosr + labelWidth * sinr; + offsets[leftBottom ? "r" : "l"] = size * sinr + labelWidth * cosr; + }else{ + offsets[side] = size * cosr + labelWidth * sinr; + offsets[leftBottom ? "l" : "r"] = size * sinr + labelWidth * cosr; + } + break; + } + if(position === "center"){ + offsets[side] = 0; + } + else{ + offsets[side] += labelGap + Math.max(taMajorTick.length > 0?taMajorTick.length:0, + taMinorTick.length > 0?taMinorTick.length:0) + (o.title ? (tsize + taTitleGap) : 0); + } + } + } + return offsets; // Object + }, + cleanGroup: function(creator){ + if(this.opt.enableCache && this.group){ + this._lineFreePool = this._lineFreePool.concat(this._lineUsePool); + this._lineUsePool = []; + this._textFreePool = this._textFreePool.concat(this._textUsePool); + this._textUsePool = []; + } + this.inherited(arguments); + }, + createText: function(labelType, creator, x, y, align, textContent, font, fontColor, labelWidth){ + if(!this.opt.enableCache || labelType=="html"){ + return acommon.createText[labelType]( + this.chart, + creator, + x, + y, + align, + textContent, + font, + fontColor, + labelWidth + ); + } + var text; + if(this._textFreePool.length > 0){ + text = this._textFreePool.pop(); + text.setShape({x: x, y: y, text: textContent, align: align}); + // For now all items share the same font, no need to re-set it + //.setFont(font).setFill(fontColor); + // was cleared, add it back + creator.add(text); + }else{ + text = acommon.createText[labelType]( + this.chart, + creator, + x, + y, + align, + textContent, + font, + fontColor + ); + } + this._textUsePool.push(text); + return text; + }, + createLine: function(creator, params){ + var line; + if(this.opt.enableCache && this._lineFreePool.length > 0){ + line = this._lineFreePool.pop(); + line.setShape(params); + // was cleared, add it back + creator.add(line); + }else{ + line = creator.createLine(params); + } + if(this.opt.enableCache){ + this._lineUsePool.push(line); + } + return line; + }, + render: function(dim, offsets){ + // summary: + // Render/draw the axis. + // dim: Object + // An object of the form { width, height}. + // offsets: Object + // An object of the form { l, r, t, b }. + // returns: dojox/charting/axis2d/Default + // The reference to the axis for functional chaining. + + var isRtl = this._isRtl(); // chart mirroring + if(!this.dirty || !this.scaler){ + return this; // dojox/charting/axis2d/Default + } + // prepare variable + var o = this.opt, ta = this.chart.theme.axis, position = o.position, + leftBottom = position !== "rightOrTop", rotation = o.rotation % 360, + start, stop, titlePos, titleRotation=0, titleOffset, axisVector, tickVector, anchorOffset, labelOffset, labelAlign, + labelGap = this.chart.theme.axis.tick.labelGap, + // TODO: we use one font --- of major tick, we need to use major and minor fonts + taFont = o.font || (ta.majorTick && ta.majorTick.font) || (ta.tick && ta.tick.font), + taTitleFont = o.titleFont || (ta.title && ta.title.font), + // TODO: we use one font color --- we need to use different colors + taFontColor = o.fontColor || (ta.majorTick && ta.majorTick.fontColor) || (ta.tick && ta.tick.fontColor) || "black", + taTitleFontColor = o.titleFontColor || (ta.title && ta.title.fontColor) || "black", + taTitleGap = (o.titleGap==0) ? 0 : o.titleGap || (ta.title && ta.title.gap) || 15, + taTitleOrientation = o.titleOrientation || (ta.title && ta.title.orientation) || "axis", + taMajorTick = this.chart.theme.getTick("major", o), + taMinorTick = this.chart.theme.getTick("minor", o), + taMicroTick = this.chart.theme.getTick("micro", o), + + taStroke = "stroke" in o ? o.stroke : ta.stroke, + size = taFont ? g.normalizedLength(g.splitFontString(taFont).size) : 0, + cosr = Math.abs(Math.cos(rotation * Math.PI / 180)), + sinr = Math.abs(Math.sin(rotation * Math.PI / 180)), + tsize = taTitleFont ? g.normalizedLength(g.splitFontString(taTitleFont).size) : 0; + if(typeof labelGap != "number"){ + labelGap = 4; // in pixels + } + if(rotation < 0){ + rotation += 360; + } + var cachedLabelW = this._getMaxLabelSize(); + cachedLabelW = cachedLabelW && cachedLabelW.majLabelW; + if(this.vertical){ + start = {y: dim.height - offsets.b}; + stop = {y: offsets.t}; + titlePos = {y: (dim.height - offsets.b + offsets.t)/2}; + titleOffset = size * sinr + (cachedLabelW || 0) * cosr + labelGap + Math.max(taMajorTick.length > 0?taMajorTick.length:0, + taMinorTick.length > 0?taMinorTick.length:0) + + tsize + taTitleGap; + axisVector = {x: 0, y: -1}; + labelOffset = {x: 0, y: 0}; + tickVector = {x: 1, y: 0}; + anchorOffset = {x: labelGap, y: 0}; + switch(rotation){ + case 0: + labelAlign = "end"; + labelOffset.y = size * 0.4; + break; + case 90: + labelAlign = "middle"; + labelOffset.x = -size; + break; + case 180: + labelAlign = "start"; + labelOffset.y = -size * 0.4; + break; + case 270: + labelAlign = "middle"; + break; + default: + if(rotation < centerAnchorLimit){ + labelAlign = "end"; + labelOffset.y = size * 0.4; + }else if(rotation < 90){ + labelAlign = "end"; + labelOffset.y = size * 0.4; + }else if(rotation < (180 - centerAnchorLimit)){ + labelAlign = "start"; + }else if(rotation < (180 + centerAnchorLimit)){ + labelAlign = "start"; + labelOffset.y = -size * 0.4; + }else if(rotation < 270){ + labelAlign = "start"; + labelOffset.x = leftBottom ? 0 : size * 0.4; + }else if(rotation < (360 - centerAnchorLimit)){ + labelAlign = "end"; + labelOffset.x = leftBottom ? 0 : size * 0.4; + }else{ + labelAlign = "end"; + labelOffset.y = size * 0.4; + } + } + if(leftBottom){ + start.x = stop.x = position === "center" ? dim.width/2 : offsets.l; + titleRotation = (taTitleOrientation && taTitleOrientation == "away") ? 90 : 270; + titlePos.x = offsets.l - titleOffset + (titleRotation == 270 ? tsize : 0); + tickVector.x = -1; + anchorOffset.x = -anchorOffset.x; + }else{ + start.x = stop.x = dim.width - offsets.r; + titleRotation = (taTitleOrientation && taTitleOrientation == "axis") ? 90 : 270; + titlePos.x = dim.width - offsets.r + titleOffset - (titleRotation == 270 ? 0 : tsize); + switch(labelAlign){ + case "start": + labelAlign = "end"; + break; + case "end": + labelAlign = "start"; + break; + case "middle": + labelOffset.x += size; + break; + } + } + }else{ + start = {x: offsets.l}; + stop = {x: dim.width - offsets.r}; + titlePos = {x: (dim.width - offsets.r + offsets.l)/2}; + titleOffset = size * cosr + (cachedLabelW || 0) * sinr + labelGap + Math.max(taMajorTick.length > 0?taMajorTick.length:0, + taMinorTick.length > 0?taMinorTick.length:0) + + tsize + taTitleGap; + axisVector = {x: isRtl ? -1 : 1, y: 0}; // chart mirroring + labelOffset = {x: 0, y: 0}; + tickVector = {x: 0, y: 1}; + anchorOffset = {x: 0, y: labelGap}; + switch(rotation){ + case 0: + labelAlign = "middle"; + labelOffset.y = size; + break; + case 90: + labelAlign = "start"; + labelOffset.x = -size * 0.4; + break; + case 180: + labelAlign = "middle"; + break; + case 270: + labelAlign = "end"; + labelOffset.x = size * 0.4; + break; + default: + if(rotation < (90 - centerAnchorLimit)){ + labelAlign = "start"; + labelOffset.y = leftBottom ? size : 0; + }else if(rotation < (90 + centerAnchorLimit)){ + labelAlign = "start"; + labelOffset.x = -size * 0.4; + }else if(rotation < 180){ + labelAlign = "start"; + labelOffset.y = leftBottom ? 0 : -size; + }else if(rotation < (270 - centerAnchorLimit)){ + labelAlign = "end"; + labelOffset.y = leftBottom ? 0 : -size; + }else if(rotation < (270 + centerAnchorLimit)){ + labelAlign = "end"; + labelOffset.y = leftBottom ? size * 0.4 : 0; + }else{ + labelAlign = "end"; + labelOffset.y = leftBottom ? size : 0; + } + } + if(leftBottom){ + start.y = stop.y = position === "center" ? dim.height/2 : dim.height - offsets.b; + titleRotation = (taTitleOrientation && taTitleOrientation == "axis") ? 180 : 0; + titlePos.y = dim.height - offsets.b + titleOffset - (titleRotation ? tsize : 0); + }else{ + start.y = stop.y = offsets.t; + titleRotation = (taTitleOrientation && taTitleOrientation == "away") ? 180 : 0; + titlePos.y = offsets.t - titleOffset + (titleRotation ? 0 : tsize); + tickVector.y = -1; + anchorOffset.y = -anchorOffset.y; + switch(labelAlign){ + case "start": + labelAlign = "end"; + break; + case "end": + labelAlign = "start"; + break; + case "middle": + labelOffset.y -= size; + break; + } + } + } + + // render shapes + + this.cleanGroup(); + + var s = this.group, + c = this.scaler, + t = this.ticks, + f = lin.getTransformerFromModel(this.scaler), + // GFX Canvas now supports labels, so let's _not_ fallback to HTML anymore on canvas, just use + // HTML labels if explicitly asked + no rotation + no IE + no Opera + labelType = (!o.title || !titleRotation) && !rotation && this.opt.htmlLabels && !has("ie") && !has("opera") ? "html" : "gfx", + dx = tickVector.x * taMajorTick.length, + dy = tickVector.y * taMajorTick.length, + skip = this._skipInterval; + + s.createLine({ + x1: start.x, + y1: start.y, + x2: stop.x, + y2: stop.y + }).setStroke(taStroke); + + //create axis title + if(o.title){ + var axisTitle = acommon.createText[labelType]( + this.chart, + s, + titlePos.x, + titlePos.y, + "middle", + o.title, + taTitleFont, + taTitleFontColor + ); + if(labelType == "html"){ + this.htmlElements.push(axisTitle); + }else{ + //as soon as rotation is provided, labelType won't be "html" + //rotate gfx labels + axisTitle.setTransform(g.matrix.rotategAt(titleRotation, titlePos.x, titlePos.y)); + } + } + + // go out nicely instead of try/catch + if(t == null){ + this.dirty = false; + return this; + } + + var rel = (t.major.length > 0)?(t.major[0].value - this._majorStart) / c.major.tick:0; + var canLabel = this.opt.majorLabels; + arr.forEach(t.major, function(tick, i){ + var offset = f(tick.value), elem, + x = (isRtl ? stop.x : start.x) + axisVector.x * offset, // chart mirroring + y = start.y + axisVector.y * offset; + i += rel; + this.createLine(s, { + x1: x, y1: y, + x2: x + dx, + y2: y + dy + }).setStroke(taMajorTick); + if(tick.label && (!skip || (i - (1 + skip)) % (1 + skip) == 0)){ + var label = o.maxLabelCharCount ? this.getTextWithLimitCharCount(tick.label, taFont, o.maxLabelCharCount) : { + text: tick.label, + truncated: false + }; + label = o.maxLabelSize ? this.getTextWithLimitLength(label.text, taFont, o.maxLabelSize, label.truncated) : label; + elem = this.createText(labelType, + s, + x + (taMajorTick.length > 0 ? dx : 0) + anchorOffset.x + (rotation ? 0 : labelOffset.x), + y + (taMajorTick.length > 0 ? dy : 0) + anchorOffset.y + (rotation ? 0 : labelOffset.y), + labelAlign, + label.text, + taFont, + taFontColor + //cachedLabelW + ); + // if bidi support was required, the textDir is "auto" and truncation + // took place, we need to update the dir of the element for cases as: + // Fool label: 111111W (W for bidi character) + // truncated label: 11... + // in this case for auto textDir the dir will be "ltr" which is wrong. + if(label.truncated){ + this.chart.formatTruncatedLabel(elem, tick.label, labelType); + } + label.truncated && this.labelTooltip(elem, this.chart, tick.label, label.text, taFont, labelType); + if(labelType == "html"){ + this.htmlElements.push(elem); + }else if(rotation){ + elem.setTransform([ + {dx: labelOffset.x, dy: labelOffset.y}, + g.matrix.rotategAt( + rotation, + x + (taMajorTick.length > 0 ? dx : 0) + anchorOffset.x, + y + (taMajorTick.length > 0 ? dy : 0) + anchorOffset.y + ) + ]); + } + } + }, this); + + dx = tickVector.x * taMinorTick.length; + dy = tickVector.y * taMinorTick.length; + canLabel = this.opt.minorLabels && c.minMinorStep <= c.minor.tick * c.bounds.scale; + arr.forEach(t.minor, function(tick){ + var offset = f(tick.value), elem, + x = (isRtl ? stop.x : start.x) + axisVector.x * offset, + y = start.y + axisVector.y * offset; // chart mirroring + this.createLine(s, { + x1: x, y1: y, + x2: x + dx, + y2: y + dy + }).setStroke(taMinorTick); + if(canLabel && tick.label){ + var label = o.maxLabelCharCount ? this.getTextWithLimitCharCount(tick.label, taFont, o.maxLabelCharCount) : { + text: tick.label, + truncated: false + }; + label = o.maxLabelSize ? this.getTextWithLimitLength(label.text, taFont, o.maxLabelSize, label.truncated) : label; + elem = this.createText(labelType, + s, + x + (taMinorTick.length > 0 ? dx : 0) + anchorOffset.x + (rotation ? 0 : labelOffset.x), + y + (taMinorTick.length > 0 ? dy : 0) + anchorOffset.y + (rotation ? 0 : labelOffset.y), + labelAlign, + label.text, + taFont, + taFontColor + //cachedLabelW + ); + // if bidi support was required, the textDir is "auto" and truncation + // took place, we need to update the dir of the element for cases as: + // Fool label: 111111W (W for bidi character) + // truncated label: 11... + // in this case for auto textDir the dir will be "ltr" which is wrong. + if(label.truncated){ + this.chart.formatTruncatedLabel(elem, tick.label, labelType); + } + label.truncated && this.labelTooltip(elem, this.chart, tick.label, label.text, taFont, labelType); + if(labelType == "html"){ + this.htmlElements.push(elem); + }else if(rotation){ + elem.setTransform([ + {dx: labelOffset.x, dy: labelOffset.y}, + g.matrix.rotategAt( + rotation, + x + (taMinorTick.length > 0 ? dx : 0) + anchorOffset.x, + y + (taMinorTick.length > 0 ? dy : 0) + anchorOffset.y + ) + ]); + } + } + }, this); + + dx = tickVector.x * taMicroTick.length; + dy = tickVector.y * taMicroTick.length; + arr.forEach(t.micro, function(tick){ + var offset = f(tick.value), + x = start.x + axisVector.x * offset, + y = start.y + axisVector.y * offset; + this.createLine(s, { + x1: x, y1: y, + x2: x + dx, + y2: y + dy + }).setStroke(taMicroTick); + }, this); + + this.dirty = false; + return this; // dojox/charting/axis2d/Default + }, + labelTooltip: function(elem, chart, label, truncatedLabel, font, elemType){ + var modules = ["dijit/Tooltip"]; + var aroundRect = {type: "rect"}, position = ["above", "below"], + fontWidth = g._base._getTextBox(truncatedLabel, {font: font}).w || 0, + fontHeight = font ? g.normalizedLength(g.splitFontString(font).size) : 0; + if(elemType == "html"){ + lang.mixin(aroundRect, domGeom.position(elem.firstChild, true)); + aroundRect.width = Math.ceil(fontWidth); + aroundRect.height = Math.ceil(fontHeight); + this._events.push({ + shape: dojo, + handle: connect.connect(elem.firstChild, "onmouseover", this, function(e){ + require(modules, function(Tooltip){ + Tooltip.show(label, aroundRect, position); + }); + }) + }); + this._events.push({ + shape: dojo, + handle: connect.connect(elem.firstChild, "onmouseout", this, function(e){ + require(modules, function(Tooltip){ + Tooltip.hide(aroundRect); + }); + }) + }); + }else{ + var shp = elem.getShape(), + lt = chart.getCoords(); + aroundRect = lang.mixin(aroundRect, { + x: shp.x - fontWidth / 2, + y: shp.y + }); + aroundRect.x += lt.x; + aroundRect.y += lt.y; + aroundRect.x = Math.round(aroundRect.x); + aroundRect.y = Math.round(aroundRect.y); + aroundRect.width = Math.ceil(fontWidth); + aroundRect.height = Math.ceil(fontHeight); + this._events.push({ + shape: elem, + handle: elem.connect("onmouseenter", this, function(e){ + require(modules, function(Tooltip){ + Tooltip.show(label, aroundRect, position); + }); + }) + }); + this._events.push({ + shape: elem, + handle: elem.connect("onmouseleave", this, function(e){ + require(modules, function(Tooltip){ + Tooltip.hide(aroundRect); + }); + }) + }); + } + }, + _isRtl: function(){ + return false; + } + }); + return has("dojo-bidi")? declare("dojox.charting.axis2d.Default", [Default, BidiDefault]) : Default; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Invisible.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Invisible.js new file mode 100644 index 00000000..1072e294 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Invisible.js @@ -0,0 +1,65 @@ +//>>built +define("dojox/charting/axis2d/Invisible",["dojo/_base/lang","dojo/_base/declare","./Base","../scaler/linear","dojox/lang/utils"],function(_1,_2,_3,_4,du){ +return _2("dojox.charting.axis2d.Invisible",_3,{defaultParams:{vertical:false,fixUpper:"none",fixLower:"none",natural:false,leftBottom:true,includeZero:false,fixed:true},optionalParams:{min:0,max:1,from:0,to:1,majorTickStep:4,minorTickStep:2,microTickStep:1},constructor:function(_5,_6){ +this.opt=_1.clone(this.defaultParams); +du.updateWithObject(this.opt,_6); +du.updateWithPattern(this.opt,_6,this.optionalParams); +},dependOnData:function(){ +return !("min" in this.opt)||!("max" in this.opt); +},clear:function(){ +delete this.scaler; +delete this.ticks; +this.dirty=true; +return this; +},initialized:function(){ +return "scaler" in this&&!(this.dirty&&this.dependOnData()); +},setWindow:function(_7,_8){ +this.scale=_7; +this.offset=_8; +return this.clear(); +},getWindowScale:function(){ +return "scale" in this?this.scale:1; +},getWindowOffset:function(){ +return "offset" in this?this.offset:0; +},calculate:function(_9,_a,_b){ +if(this.initialized()){ +return this; +} +var o=this.opt; +this.labels=o.labels; +this.scaler=_4.buildScaler(_9,_a,_b,o); +var _c=this.scaler.bounds; +if("scale" in this){ +o.from=_c.lower+this.offset; +o.to=(_c.upper-_c.lower)/this.scale+o.from; +if(!isFinite(o.from)||isNaN(o.from)||!isFinite(o.to)||isNaN(o.to)||o.to-o.from>=_c.upper-_c.lower){ +delete o.from; +delete o.to; +delete this.scale; +delete this.offset; +}else{ +if(o.from<_c.lower){ +o.to+=_c.lower-o.from; +o.from=_c.lower; +}else{ +if(o.to>_c.upper){ +o.from+=_c.upper-o.to; +o.to=_c.upper; +} +} +this.offset=o.from-_c.lower; +} +this.scaler=_4.buildScaler(_9,_a,_b,o); +_c=this.scaler.bounds; +if(this.scale==1&&this.offset==0){ +delete this.scale; +delete this.offset; +} +} +return this; +},getScaler:function(){ +return this.scaler; +},getTicks:function(){ +return this.ticks; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Invisible.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Invisible.js.uncompressed.js new file mode 100644 index 00000000..0ee60d82 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/Invisible.js.uncompressed.js @@ -0,0 +1,224 @@ +define("dojox/charting/axis2d/Invisible", ["dojo/_base/lang", "dojo/_base/declare", "./Base", "../scaler/linear", + "dojox/lang/utils"], + function(lang, declare, Base, lin, du){ + +/*===== + var __InvisibleAxisCtorArgs = { + // summary: + // Optional arguments used in the definition of an invisible axis. + // vertical: Boolean? + // A flag that says whether an axis is vertical (i.e. y axis) or horizontal. Default is false (horizontal). + // fixUpper: String? + // Align the greatest value on the axis with the specified tick level. Options are "major", "minor", "micro", or "none". Defaults to "none". + // fixLower: String? + // Align the smallest value on the axis with the specified tick level. Options are "major", "minor", "micro", or "none". Defaults to "none". + // natural: Boolean? + // Ensure tick marks are made on "natural" numbers. Defaults to false. + // leftBottom: Boolean? + // The position of a vertical axis; if true, will be placed against the left-bottom corner of the chart. Defaults to true. + // includeZero: Boolean? + // Include 0 on the axis rendering. Default is false. + // fixed: Boolean? + // Force all axis labels to be fixed numbers. Default is true. + // min: Number? + // The smallest value on an axis. Default is 0. + // max: Number? + // The largest value on an axis. Default is 1. + // from: Number? + // Force the chart to render data visible from this value. Default is 0. + // to: Number? + // Force the chart to render data visible to this value. Default is 1. + // majorTickStep: Number? + // The amount to skip before a major tick is drawn. When not set the major ticks step is computed from + // the data range. + // minorTickStep: Number? + // The amount to skip before a minor tick is drawn. When not set the minor ticks step is computed from + // the data range. + // microTickStep: Number? + // The amount to skip before a micro tick is drawn. When not set the micro ticks step is computed from + }; +=====*/ + + return declare("dojox.charting.axis2d.Invisible", Base, { + // summary: + // A axis object used in dojox.charting. You can use that axis if you want the axis to be invisible. + // See dojox.charting.Chart.addAxis for details. + // + // defaultParams: Object + // The default parameters used to define any axis. + // optionalParams: Object + // Any optional parameters needed to define an axis. + + /* + // TODO: the documentation tools need these to be pre-defined in order to pick them up + // correctly, but the code here is partially predicated on whether or not the properties + // actually exist. For now, we will leave these undocumented but in the code for later. -- TRT + + // opt: Object + // The actual options used to define this axis, created at initialization. + // scaler: Object + // The calculated helper object to tell charts how to draw an axis and any data. + // ticks: Object + // The calculated tick object that helps a chart draw the scaling on an axis. + // dirty: Boolean + // The state of the axis (whether it needs to be redrawn or not) + // scale: Number + // The current scale of the axis. + // offset: Number + // The current offset of the axis. + + opt: null, + scaler: null, + ticks: null, + dirty: true, + scale: 1, + offset: 0, + */ + defaultParams: { + vertical: false, // true for vertical axis + fixUpper: "none", // align the upper on ticks: "major", "minor", "micro", "none" + fixLower: "none", // align the lower on ticks: "major", "minor", "micro", "none" + natural: false, // all tick marks should be made on natural numbers + leftBottom: true, // position of the axis, used with "vertical" + includeZero: false, // 0 should be included + fixed: true // all labels are fixed numbers + }, + optionalParams: { + min: 0, // minimal value on this axis + max: 1, // maximal value on this axis + from: 0, // visible from this value + to: 1, // visible to this value + majorTickStep: 4, // major tick step + minorTickStep: 2, // minor tick step + microTickStep: 1 // micro tick step + }, + + constructor: function(chart, kwArgs){ + // summary: + // The constructor for an invisible axis. + // chart: dojox/charting/Chart + // The chart the axis belongs to. + // kwArgs: __InvisibleAxisCtorArgs? + // Any optional keyword arguments to be used to define this axis. + this.opt = lang.clone(this.defaultParams); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + }, + dependOnData: function(){ + // summary: + // Find out whether or not the axis options depend on the data in the axis. + return !("min" in this.opt) || !("max" in this.opt); // Boolean + }, + clear: function(){ + // summary: + // Clear out all calculated properties on this axis; + // returns: dojox/charting/axis2d/Invisible + // The reference to the axis for functional chaining. + delete this.scaler; + delete this.ticks; + this.dirty = true; + return this; // dojox/charting/axis2d/Invisible + }, + initialized: function(){ + // summary: + // Finds out if this axis has been initialized or not. + // returns: Boolean + // Whether a scaler has been calculated and if the axis is not dirty. + return "scaler" in this && !(this.dirty && this.dependOnData()); + }, + setWindow: function(scale, offset){ + // summary: + // Set the drawing "window" for the axis. + // scale: Number + // The new scale for the axis. + // offset: Number + // The new offset for the axis. + // returns: dojox/charting/axis2d/Invisible + // The reference to the axis for functional chaining. + this.scale = scale; + this.offset = offset; + return this.clear(); // dojox/charting/axis2d/Invisible + }, + getWindowScale: function(){ + // summary: + // Get the current windowing scale of the axis. + return "scale" in this ? this.scale : 1; // Number + }, + getWindowOffset: function(){ + // summary: + // Get the current windowing offset for the axis. + return "offset" in this ? this.offset : 0; // Number + }, + calculate: function(min, max, span){ + // summary: + // Perform all calculations needed to render this axis. + // min: Number + // The smallest value represented on this axis. + // max: Number + // The largest value represented on this axis. + // span: Number + // The span in pixels over which axis calculations are made. + // returns: dojox/charting/axis2d/Invisible + // The reference to the axis for functional chaining. + if(this.initialized()){ + return this; + } + var o = this.opt; + // we used to have a 4th function parameter to reach labels but + // nobody was calling it with 4 parameters. + this.labels = o.labels; + this.scaler = lin.buildScaler(min, max, span, o); + // store the absolute major tick start, this will be useful when dropping a label every n labels + // TODO: if o.lower then it does not work + var tsb = this.scaler.bounds; + if("scale" in this){ + // calculate new range + o.from = tsb.lower + this.offset; + o.to = (tsb.upper - tsb.lower) / this.scale + o.from; + // make sure that bounds are correct + if( !isFinite(o.from) || + isNaN(o.from) || + !isFinite(o.to) || + isNaN(o.to) || + o.to - o.from >= tsb.upper - tsb.lower + ){ + // any error --- remove from/to bounds + delete o.from; + delete o.to; + delete this.scale; + delete this.offset; + }else{ + // shift the window, if we are out of bounds + if(o.from < tsb.lower){ + o.to += tsb.lower - o.from; + o.from = tsb.lower; + }else if(o.to > tsb.upper){ + o.from += tsb.upper - o.to; + o.to = tsb.upper; + } + // update the offset + this.offset = o.from - tsb.lower; + } + // re-calculate the scaler + this.scaler = lin.buildScaler(min, max, span, o); + tsb = this.scaler.bounds; + // cleanup + if(this.scale == 1 && this.offset == 0){ + delete this.scale; + delete this.offset; + } + } + return this; // dojox/charting/axis2d/Invisible + }, + getScaler: function(){ + // summary: + // Get the pre-calculated scaler object. + return this.scaler; // Object + }, + getTicks: function(){ + // summary: + // Get the pre-calculated ticks object. + return this.ticks; // Object + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/common.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/common.js new file mode 100644 index 00000000..8971f68a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/common.js @@ -0,0 +1,91 @@ +//>>built +define("dojox/charting/axis2d/common",["dojo/_base/lang","dojo/_base/window","dojo/dom-geometry","dojox/gfx","dojo/has"],function(_1,_2,_3,g,_4){ +var _5=_1.getObject("dojox.charting.axis2d.common",true); +var _6=function(s){ +s.marginLeft="0px"; +s.marginTop="0px"; +s.marginRight="0px"; +s.marginBottom="0px"; +s.paddingLeft="0px"; +s.paddingTop="0px"; +s.paddingRight="0px"; +s.paddingBottom="0px"; +s.borderLeftWidth="0px"; +s.borderTopWidth="0px"; +s.borderRightWidth="0px"; +s.borderBottomWidth="0px"; +}; +var _7=function(n){ +if(n["getBoundingClientRect"]){ +var _8=n.getBoundingClientRect(); +return _8.width||(_8.right-_8.left); +}else{ +return _3.getMarginBox(n).w; +} +}; +return _1.mixin(_5,{createText:{gfx:function(_9,_a,x,y,_b,_c,_d,_e){ +return _a.createText({x:x,y:y,text:_c,align:_b}).setFont(_d).setFill(_e); +},html:function(_f,_10,x,y,_11,_12,_13,_14,_15){ +var p=_2.doc.createElement("div"),s=p.style,_16; +if(_f.getTextDir){ +p.dir=_f.getTextDir(_12); +} +_6(s); +s.font=_13; +p.innerHTML=String(_12).replace(/\s/g," "); +s.color=_14; +s.position="absolute"; +s.left="-10000px"; +_2.body().appendChild(p); +var _17=g.normalizedLength(g.splitFontString(_13).size); +if(!_15){ +_16=_7(p); +} +if(p.dir=="rtl"){ +x+=_15?_15:_16; +} +_2.body().removeChild(p); +s.position="relative"; +if(_15){ +s.width=_15+"px"; +switch(_11){ +case "middle": +s.textAlign="center"; +s.left=(x-_15/2)+"px"; +break; +case "end": +s.textAlign="right"; +s.left=(x-_15)+"px"; +break; +default: +s.left=x+"px"; +s.textAlign="left"; +break; +} +}else{ +switch(_11){ +case "middle": +s.left=Math.floor(x-_16/2)+"px"; +break; +case "end": +s.left=Math.floor(x-_16)+"px"; +break; +default: +s.left=Math.floor(x)+"px"; +break; +} +} +s.top=Math.floor(y-_17)+"px"; +s.whiteSpace="nowrap"; +var _18=_2.doc.createElement("div"),w=_18.style; +_6(w); +w.width="0px"; +w.height="0px"; +_18.appendChild(p); +_f.node.insertBefore(_18,_f.node.firstChild); +if(_4("dojo-bidi")){ +_f.htmlElementsRegistry.push([_18,x,y,_11,_12,_13,_14]); +} +return _18; +}}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/common.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/common.js.uncompressed.js new file mode 100644 index 00000000..da0a2055 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/axis2d/common.js.uncompressed.js @@ -0,0 +1,164 @@ +define("dojox/charting/axis2d/common", ["dojo/_base/lang", "dojo/_base/window", "dojo/dom-geometry", "dojox/gfx", "dojo/has"], + function(lang, win, domGeom, g, has){ + + var common = lang.getObject("dojox.charting.axis2d.common", true); + + var clearNode = function(s){ + s.marginLeft = "0px"; + s.marginTop = "0px"; + s.marginRight = "0px"; + s.marginBottom = "0px"; + s.paddingLeft = "0px"; + s.paddingTop = "0px"; + s.paddingRight = "0px"; + s.paddingBottom = "0px"; + s.borderLeftWidth = "0px"; + s.borderTopWidth = "0px"; + s.borderRightWidth = "0px"; + s.borderBottomWidth = "0px"; + }; + + var getBoxWidth = function(n){ + // marginBox is incredibly slow, so avoid it if we can + if(n["getBoundingClientRect"]){ + var bcr = n.getBoundingClientRect(); + return bcr.width || (bcr.right - bcr.left); + }else{ + return domGeom.getMarginBox(n).w; + } + }; + + return lang.mixin(common, { + // summary: + // Common methods to be used by any axis. This is considered "static". + createText: { + gfx: function(chart, creator, x, y, align, text, font, fontColor){ + // summary: + // Use dojox.gfx to create any text. + // chart: dojox.charting.Chart + // The chart to create the text into. + // creator: dojox.gfx.Surface + // The graphics surface to use for creating the text. + // x: Number + // Where to create the text along the x axis (CSS left). + // y: Number + // Where to create the text along the y axis (CSS top). + // align: String + // How to align the text. Can be "left", "right", "center". + // text: String + // The text to render. + // font: String + // The font definition, a la CSS "font". + // fontColor: String|dojo.Color + // The color of the resultant text. + // returns: dojox.gfx.Text + // The resultant GFX object. + return creator.createText({ + x: x, y: y, text: text, align: align + }).setFont(font).setFill(fontColor); // dojox.gfx.Text + }, + html: function(chart, creator, x, y, align, text, font, fontColor, labelWidth){ + // summary: + // Use the HTML DOM to create any text. + // chart: dojox.charting.Chart + // The chart to create the text into. + // creator: dojox.gfx.Surface + // The graphics surface to use for creating the text. + // x: Number + // Where to create the text along the x axis (CSS left). + // y: Number + // Where to create the text along the y axis (CSS top). + // align: String + // How to align the text. Can be "left", "right", "center". + // text: String + // The text to render. + // font: String + // The font definition, a la CSS "font". + // fontColor: String|dojo.Color + // The color of the resultant text. + // labelWidth: Number? + // The maximum width of the resultant DOM node. + // returns: DOMNode + // The resultant DOMNode (a "div" element). + + // setup the text node + var p = win.doc.createElement("div"), s = p.style, boxWidth; + // bidi support, if this function exists the module was loaded + if(chart.getTextDir){ + p.dir = chart.getTextDir(text); + } + clearNode(s); + s.font = font; + p.innerHTML = String(text).replace(/\s/g, " "); + s.color = fontColor; + // measure the size + s.position = "absolute"; + s.left = "-10000px"; + win.body().appendChild(p); + var size = g.normalizedLength(g.splitFontString(font).size); + + // do we need to calculate the label width? + if(!labelWidth){ + boxWidth = getBoxWidth(p); + } + // when the textDir is rtl, but the UI ltr needs + // to recalculate the starting point + if(p.dir == "rtl"){ + x += labelWidth ? labelWidth : boxWidth; + } + + // new settings for the text node + win.body().removeChild(p); + + s.position = "relative"; + if(labelWidth){ + s.width = labelWidth + "px"; + // s.border = "1px dotted grey"; + switch(align){ + case "middle": + s.textAlign = "center"; + s.left = (x - labelWidth / 2) + "px"; + break; + case "end": + s.textAlign = "right"; + s.left = (x - labelWidth) + "px"; + break; + default: + s.left = x + "px"; + s.textAlign = "left"; + break; + } + }else{ + switch(align){ + case "middle": + s.left = Math.floor(x - boxWidth / 2) + "px"; + // s.left = Math.floor(x - p.offsetWidth / 2) + "px"; + break; + case "end": + s.left = Math.floor(x - boxWidth) + "px"; + // s.left = Math.floor(x - p.offsetWidth) + "px"; + break; + //case "start": + default: + s.left = Math.floor(x) + "px"; + break; + } + } + s.top = Math.floor(y - size) + "px"; + s.whiteSpace = "nowrap"; // hack for WebKit + // setup the wrapper node + var wrap = win.doc.createElement("div"), w = wrap.style; + clearNode(w); + w.width = "0px"; + w.height = "0px"; + // insert nodes + wrap.appendChild(p); + chart.node.insertBefore(wrap, chart.node.firstChild); + if(has("dojo-bidi")){ + chart.htmlElementsRegistry.push([wrap, x, y, align, text, font, fontColor]); + } + return wrap; // DOMNode + } + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart.js new file mode 100644 index 00000000..dc448a76 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart.js @@ -0,0 +1,103 @@ +//>>built +define("dojox/charting/bidi/Chart",["dojox/main","dojo/_base/declare","dojo/_base/lang","dojo/dom-style","dojo/_base/array","dojo/sniff","dojo/dom","dojo/dom-construct","dojox/gfx","dojox/gfx/_gfxBidiSupport","../axis2d/common","dojox/string/BidiEngine","dojox/lang/functional","dojo/dom-attr","./_bidiutils"],function(_1,_2,_3,_4,_5,_6,_7,_8,g,_9,da,_a,df,_b,_c){ +var _d=new _a(); +var dc=_3.getObject("charting",true,_1); +function _e(_f){ +return /^(ltr|rtl|auto)$/.test(_f)?_f:null; +}; +return _2(null,{textDir:"",dir:"",isMirrored:false,getTextDir:function(_10){ +var _11=this.textDir=="auto"?_d.checkContextual(_10):this.textDir; +if(!_11){ +_11=_4.get(this.node,"direction"); +} +return _11; +},postscript:function(_12,_13){ +var _14=_13?(_13["textDir"]?_e(_13["textDir"]):""):""; +_14=_14?_14:_4.get(this.node,"direction"); +this.textDir=_14; +this.surface.textDir=_14; +this.htmlElementsRegistry=[]; +this.truncatedLabelsRegistry=[]; +var _15="ltr"; +if(_b.has(_12,"direction")){ +_15=_b.get(_12,"direction"); +} +this.setDir(_13?(_13.dir?_13.dir:_15):_15); +},setTextDir:function(_16,obj){ +if(_16==this.textDir){ +return this; +} +if(_e(_16)!=null){ +this.textDir=_16; +this.surface.setTextDir(_16); +if(this.truncatedLabelsRegistry&&_16=="auto"){ +_5.forEach(this.truncatedLabelsRegistry,function(_17){ +var _18=this.getTextDir(_17["label"]); +if(_17["element"].textDir!=_18){ +_17["element"].setShape({textDir:_18}); +} +},this); +} +var _19=df.keys(this.axes); +if(_19.length>0){ +_5.forEach(_19,function(key,_1a,arr){ +var _1b=this.axes[key]; +if(_1b.htmlElements[0]){ +_1b.dirty=true; +_1b.render(this.dim,this.offsets); +} +},this); +if(this.title){ +var _1c=(g.renderer=="canvas"),_1d=_1c||!_6("ie")&&!_6("opera")?"html":"gfx",_1e=g.normalizedLength(g.splitFontString(this.titleFont).size); +_8.destroy(this.chartTitle); +this.chartTitle=null; +this.chartTitle=da.createText[_1d](this,this.surface,this.dim.width/2,this.titlePos=="top"?_1e+this.margins.t:this.dim.height-this.margins.b,"middle",this.title,this.titleFont,this.titleFontColor); +} +}else{ +_5.forEach(this.htmlElementsRegistry,function(_1f,_20,arr){ +var _21=_16=="auto"?this.getTextDir(_1f[4]):_16; +if(_1f[0].children[0]&&_1f[0].children[0].dir!=_21){ +_8.destroy(_1f[0].children[0]); +_1f[0].children[0]=da.createText["html"](this,this.surface,_1f[1],_1f[2],_1f[3],_1f[4],_1f[5],_1f[6]).children[0]; +} +},this); +} +} +return this; +},setDir:function(dir){ +if(dir=="rtl"||dir=="ltr"){ +if(this.dir!=dir){ +this.isMirrored=true; +this.dirty=true; +} +this.dir=dir; +} +return this; +},isRightToLeft:function(){ +return this.dir=="rtl"; +},applyMirroring:function(_22,dim,_23){ +_c.reverseMatrix(_22,dim,_23,this.dir=="rtl"); +_4.set(this.node,"direction","ltr"); +return this; +},formatTruncatedLabel:function(_24,_25,_26){ +this.truncateBidi(_24,_25,_26); +},truncateBidi:function(_27,_28,_29){ +if(_29=="gfx"){ +this.truncatedLabelsRegistry.push({element:_27,label:_28}); +if(this.textDir=="auto"){ +_27.setShape({textDir:this.getTextDir(_28)}); +} +} +if(_29=="html"&&this.textDir=="auto"){ +_27.children[0].dir=this.getTextDir(_28); +} +},render:function(){ +this.inherited(arguments); +this.isMirrored=false; +return this; +},_resetLeftBottom:function(_2a){ +if(_2a.vertical&&this.isMirrored){ +_2a.opt.leftBottom=!_2a.opt.leftBottom; +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart.js.uncompressed.js new file mode 100644 index 00000000..b9a3cba9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart.js.uncompressed.js @@ -0,0 +1,260 @@ +define("dojox/charting/bidi/Chart", ["dojox/main", "dojo/_base/declare", "dojo/_base/lang", "dojo/dom-style", "dojo/_base/array", "dojo/sniff", + "dojo/dom","dojo/dom-construct", + "dojox/gfx", "dojox/gfx/_gfxBidiSupport", "../axis2d/common", "dojox/string/BidiEngine", + "dojox/lang/functional","dojo/dom-attr","./_bidiutils"], + function(dojox, declare, lang, domStyle, arr, has, dom, domConstruct, g, gBidi, da, BidiEngine, df, domAttr,utils){ + // module: + // dojox/charting/bidi/Chart + var bidiEngine = new BidiEngine(); + var dc = lang.getObject("charting", true, dojox); + function validateTextDir(textDir){ + return /^(ltr|rtl|auto)$/.test(textDir) ? textDir : null; + }; + + return declare(null, { + // textDir: String + // Bi-directional support, the main variable which is responsible for the direction of the text. + // The text direction can be different than the GUI direction by using this parameter. + // Allowed values: + // + // 1. "ltr" + // 2. "rtl" + // 3. "auto" - contextual the direction of a text defined by first strong letter. + // + // By default is as the page direction. + textDir:"", + + // dir: String + // Mirroring support, the main variable which is responsible for the direction of the chart. + // + // Allowed values: + // 1. "ltr" + // 2. "rtl" + // + // By default is ltr. + dir: "", + isMirrored: false, + + getTextDir: function(text){ + // summary: + // Return direction of the text. + // description: + // If textDir is ltr or rtl returns the value. + // If it's auto, calls to another function that responsible + // for checking the value, and defining the direction. + // text: + // Used in case textDir is "auto", this case the direction is according to the first + // strong (directionally - which direction is strong defined) letter. + // tags: + // protected. + var textDir = this.textDir == "auto" ? bidiEngine.checkContextual(text) : this.textDir; + // providing default value + if(!textDir){ + textDir = domStyle.get(this.node, "direction"); + } + return textDir; + }, + + postscript: function(node,args){ + // summary: + // Kicks off chart instantiation. + // description: + // Used for setting the textDir of the chart. + // tags: + // private + + // validate textDir + var textDir = args ? (args["textDir"] ? validateTextDir(args["textDir"]) : "") : ""; + // if textDir wasn't defined or was defined wrong, apply default value + textDir = textDir ? textDir : domStyle.get(this.node, "direction"); + this.textDir = textDir; + + this.surface.textDir = textDir; + + // two data structures, used for storing data for further enablement to change + // textDir dynamically + this.htmlElementsRegistry = []; + this.truncatedLabelsRegistry = []; + // chart mirroring starts + var chartDir = "ltr"; + if(domAttr.has(node, "direction")){ + chartDir = domAttr.get(node, "direction"); + } + this.setDir(args ? (args.dir ? args.dir: chartDir) : chartDir); + // chart mirroring ends + }, + + setTextDir: function(newTextDir, obj){ + // summary: + // Setter for the textDir attribute. + // description: + // Allows dynamically set the textDir, goes over all the text-children and + // updates their base text direction. + // tags: + // public + + if(newTextDir == this.textDir){ + return this; + } + if(validateTextDir(newTextDir) != null){ + this.textDir = newTextDir; + + // set automatically all the gfx objects that were created by this surface + // (groups, text objects) + this.surface.setTextDir(newTextDir); + + // truncated labels that were created with gfx creator need to recalculate dir + // for case like: "111111A" (A stands for bidi character) and the truncation + // is "111..." If the textDir is auto, the display should be: "...111" but in gfx + // case we will get "111...". Because this.surface.setTextDir will calculate the dir of truncated + // label, which value is "111..." but th real is "111111A". + // each time we created a gfx truncated label we stored it in the truncatedLabelsRegistry, so update now + // the registry. + if(this.truncatedLabelsRegistry && newTextDir == "auto"){ + arr.forEach(this.truncatedLabelsRegistry, function(elem){ + var tDir = this.getTextDir(elem["label"]); + if(elem["element"].textDir != tDir){ + elem["element"].setShape({textDir: tDir}); + } + }, this); + } + + // re-render axes with html labels. for recalculation of the labels + // positions etc. + // create array of keys for all the axis in chart + var axesKeyArr = df.keys(this.axes); + if(axesKeyArr.length > 0){ + // iterate over the axes, and for each that have html labels render it. + arr.forEach(axesKeyArr, function(key, index, arr){ + // get the axis + var axis = this.axes[key]; + // if the axis has html labels + if(axis.htmlElements[0]){ + axis.dirty = true; + axis.render(this.dim, this.offsets); + } + },this); + + // recreate title + if(this.title){ + var forceHtmlLabels = (g.renderer == "canvas"), + labelType = forceHtmlLabels || !has("ie") && !has("opera") ? "html" : "gfx", + tsize = g.normalizedLength(g.splitFontString(this.titleFont).size); + // remove the title + domConstruct.destroy(this.chartTitle); + this.chartTitle =null; + // create the new title + this.chartTitle = da.createText[labelType]( + this, + this.surface, + this.dim.width/2, + this.titlePos=="top" ? tsize + this.margins.t : this.dim.height - this.margins.b, + "middle", + this.title, + this.titleFont, + this.titleFontColor + ); + } + }else{ + // case of pies, spiders etc. + arr.forEach(this.htmlElementsRegistry, function(elem, index, arr){ + var tDir = newTextDir == "auto" ? this.getTextDir(elem[4]) : newTextDir; + if(elem[0].children[0] && elem[0].children[0].dir != tDir){ + domConstruct.destroy(elem[0].children[0]); + elem[0].children[0] = da.createText["html"] + (this, this.surface, elem[1], elem[2], elem[3], elem[4], elem[5], elem[6]).children[0]; + } + },this); + } + } + return this; + }, + + setDir : function(dir){ + // summary: + // Setter for the dir attribute. + // description: + // Allows dynamically set the dri attribute, which will used to + // updates the chart rendering direction. + // dir : the desired chart direction [rtl: for right to left ,ltr: for left to right] + + if(dir == "rtl" || dir == "ltr"){ + if(this.dir != dir){ + this.isMirrored = true; + this.dirty = true; + } + this.dir = dir; + } + return this; + }, + + isRightToLeft: function(){ + // summary: + // check the direction of the chart. + // description: + // check the dir attribute to determine the rendering direction + // of the chart. + return this.dir == "rtl"; + }, + + applyMirroring: function(plot, dim, offsets){ + // summary: + // apply the mirroring operation to the current chart plots. + // + utils.reverseMatrix(plot, dim, offsets, this.dir == "rtl"); + //force the direction of the node to be ltr to properly render the axes and the plots labels. + domStyle.set(this.node, "direction", "ltr"); + return this; + }, + + formatTruncatedLabel: function(element, label, labelType){ + this.truncateBidi(element, label, labelType); + }, + + truncateBidi: function(elem, label, labelType){ + // summary: + // Enables bidi support for truncated labels. + // description: + // Can be two types of labels: html or gfx. + // + // ####gfx labels: + // + // Need to be stored in registry to be used when the textDir will be set dynamically. + // Additional work on truncated labels is needed for case as 111111A (A stands for "bidi" character rtl directioned). + // let's say in this case the truncation is "111..." If the textDir is auto, the display should be: "...111" but in gfx + // case we will get "111...". Because this.surface.setTextDir will calculate the dir of truncated + // label, which value is "111..." but th real is "111111A". + // each time we created a gfx truncated label we store it in the truncatedLabelsRegistry. + // + // ####html labels: + // + // no need for repository (stored in another place). Here we only need to update the current dir according to textDir. + // tags: + // private + + if(labelType == "gfx"){ + // store truncated gfx labels in the data structure. + this.truncatedLabelsRegistry.push({element: elem, label: label}); + if(this.textDir == "auto"){ + elem.setShape({textDir: this.getTextDir(label)}); + } + } + if(labelType == "html" && this.textDir == "auto"){ + elem.children[0].dir = this.getTextDir(label); + } + }, + + render: function(){ + this.inherited(arguments); + this.isMirrored = false; + return this; + }, + + _resetLeftBottom: function(axis){ + if(axis.vertical && this.isMirrored){ + axis.opt.leftBottom = !axis.opt.leftBottom; + } + } + }); +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart3D.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart3D.js new file mode 100644 index 00000000..c2fe3c19 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart3D.js @@ -0,0 +1,30 @@ +//>>built +define("dojox/charting/bidi/Chart3D",["dojo/_base/declare","dojo/dom-style","dojo/dom-attr","./_bidiutils"],function(_1,_2,_3,_4){ +return _1(null,{direction:"",isMirrored:false,postscript:function(_5,_6,_7,_8,_9){ +var _a="ltr"; +if(_3.has(_5,"direction")){ +_a=_3.get(_5,"direction"); +} +this.chartBaseDirection=_9?_9:_a; +},generate:function(){ +this.inherited(arguments); +this.isMirrored=false; +return this; +},applyMirroring:function(_b,_c,_d){ +if(this.isMirrored){ +_4.reverseMatrix(_b,_c,_d,this.dir=="rtl"); +} +_2.set(this.node,"direction","ltr"); +return this; +},setDir:function(_e){ +if(_e=="rtl"||_e=="ltr"){ +if(this.dir!=_e){ +this.isMirrored=true; +} +this.dir=_e; +} +return this; +},isRightToLeft:function(){ +return this.dir=="rtl"; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart3D.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart3D.js.uncompressed.js new file mode 100644 index 00000000..0d4ee101 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/Chart3D.js.uncompressed.js @@ -0,0 +1,78 @@ +define("dojox/charting/bidi/Chart3D", ["dojo/_base/declare", "dojo/dom-style", "dojo/dom-attr", "./_bidiutils"], + function(declare, domStyle, domAttr, utils){ + // module: + // dojox/charting/bidi/Chart3D + return declare(null, { + // direction: String + // Mirroring support, the main variable which is responsible for the direction of the chart. + // + // Allowed values: + // 1. "ltr" + // 2. "rtl" + // + // By default is ltr. + direction: "", + isMirrored: false, + + postscript: function(node, lights, camera, theme, direction){ + // summary: + // The keyword arguments that can be passed in a Chart constructor. + // + // node: Node + // The DOM node to construct the chart on. + // lights: + // Lighting properties for the 3d scene + // camera: Object + // Camera properties describing the viewing camera position. + // theme: Object + // Charting theme to use for coloring chart elements. + // direction:String + // the direction used to render the chart values[rtl/ltr] + var chartDir = "ltr"; + if(domAttr.has(node, "direction")){ + chartDir = domAttr.get(node, "direction"); + } + this.chartBaseDirection = direction ? direction : chartDir; + }, + generate: function(){ + this.inherited(arguments); + this.isMirrored = false; + return this; + }, + applyMirroring: function(plot, dim, offsets){ + // summary: + // apply the mirroring operation to the current chart plots. + // + if(this.isMirrored){ + utils.reverseMatrix(plot, dim, offsets, this.dir == "rtl"); + } + //force the direction of the node to be ltr to properly render the axes and the plots labels. + domStyle.set(this.node, "direction", "ltr"); + return this; + }, + setDir: function(dir){ + // summary: + // Setter for the chartBaseDirection attribute. + // description: + // Allows dynamically set the chartBaseDirection attribute, which will used to + // updates the chart rendering direction. + // dir : the desired chart direction [rtl: for right to left ,ltr: for left to right] + if(dir == "rtl" || dir == "ltr"){ + if(this.dir != dir){ + this.isMirrored = true; + } + this.dir = dir; + } + return this; + }, + isRightToLeft: function(){ + // summary: + // check the Direction of the chart. + // description: + // check the chartBaseDirection attribute to determine the rendering direction + // of the chart. + return this.dir == "rtl"; + } + }); +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/_bidiutils.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/_bidiutils.js new file mode 100644 index 00000000..7cf45389 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/_bidiutils.js @@ -0,0 +1,18 @@ +//>>built +define("dojox/charting/bidi/_bidiutils",{reverseMatrix:function(_1,_2,_3,_4){ +var _5=_3.l-_3.r; +var xx=_4?-1:1; +var xy=0; +var yx=0; +var yy=1; +var dx=_4?_2.width+_5:0; +var dy=0; +if(_1.matrix){ +xx=xx*Math.abs(_1.matrix.xx); +yy=_1.matrix.yy; +xy=_1.matrix.xy; +yx=_1.matrix.yx; +dy=_1.matrix.xy; +} +_1.setTransform({xx:xx,xy:xy,yx:yx,yy:yy,dx:dx,dy:dy}); +}}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/_bidiutils.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/_bidiutils.js.uncompressed.js new file mode 100644 index 00000000..b386c5c6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/_bidiutils.js.uncompressed.js @@ -0,0 +1,27 @@ + define ("dojox/charting/bidi/_bidiutils", { + reverseMatrix: function(plot, dim, offsets, rtl){ + //summary: + // reverse the underlying matrix of the plots to perform the mirroring behavior. + //plot: + // the plot which has the matrix to be reversed. + //dim: + // the dimension (width,height) of the chart. + //offsets: + // the offsets of the chart + var shift = offsets.l - offsets.r; + var xx = rtl? -1 : 1; + var xy = 0; + var yx = 0; + var yy = 1; + var dx = rtl? dim.width + shift : 0; + var dy = 0; + if(plot.matrix){ + xx = xx * Math.abs(plot.matrix.xx); + yy = plot.matrix.yy; + xy = plot.matrix.xy; + yx = plot.matrix.yx; + dy = plot.matrix.xy; + } + plot.setTransform({xx: xx, xy: xy, yx: yx, yy: yy, dx: dx, dy: dy}); + } + }); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/Tooltip.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/Tooltip.js new file mode 100644 index 00000000..71d13b40 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/Tooltip.js @@ -0,0 +1,42 @@ +//>>built +define("dojox/charting/bidi/action2d/Tooltip",["dojo/_base/declare","dojo/dom-style"],function(_1,_2){ +return _1(null,{_recheckPosition:function(_3,_4,_5){ +if(!this.chart.isRightToLeft()){ +return; +} +var _6=this.chart.offsets.l-this.chart.offsets.r; +if(_3.element=="marker"){ +_4.x=this.chart.dim.width-_3.cx+_6; +_5[0]="before-centered"; +_5[1]="after-centered"; +}else{ +if(_3.element=="circle"){ +_4.x=this.chart.dim.width-_3.cx-_3.cr+_6; +}else{ +if(_3.element=="bar"||_3.element=="column"){ +_4.x=this.chart.dim.width-_4.width-_4.x+_6; +if(_3.element=="bar"){ +_5[0]="before-centered"; +_5[1]="after-centered"; +} +}else{ +if(_3.element=="candlestick"){ +_4.x=this.chart.dim.width+_6-_3.x; +} +} +} +} +},_format:function(_7){ +var _8=(_2.get(this.chart.node,"direction")=="rtl"); +var _9=(this.chart.getTextDir(_7)=="rtl"); +if(_9&&!_8){ +return ""+_7+""; +}else{ +if(!_9&&_8){ +return ""+_7+""; +}else{ +return _7; +} +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/Tooltip.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/Tooltip.js.uncompressed.js new file mode 100644 index 00000000..d786907f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/Tooltip.js.uncompressed.js @@ -0,0 +1,45 @@ +define("dojox/charting/bidi/action2d/Tooltip", ["dojo/_base/declare", "dojo/dom-style"], + function(declare, domStyle){ + // module: + // dojox/charting/bidi/action2d/Tooltip + return declare(null, { + _recheckPosition: function(obj,rect,position){ + if(!this.chart.isRightToLeft()){ + return; + } + var shift = this.chart.offsets.l - this.chart.offsets.r; + if(obj.element == "marker"){ + rect.x = this.chart.dim.width - obj.cx + shift; + position[0] = "before-centered"; + position[1] = "after-centered"; + } + else if(obj.element == "circle"){ + rect.x = this.chart.dim.width - obj.cx - obj.cr + shift; + } + else if(obj.element == "bar" || obj.element == "column"){ + rect.x = this.chart.dim.width - rect.width - rect.x + shift; + if(obj.element == "bar"){ + position[0] = "before-centered"; + position[1] = "after-centered"; + } + } + else if(obj.element == "candlestick"){ + rect.x = this.chart.dim.width + shift - obj.x; + } + }, + + _format: function(tooltip){ + var isChartDirectionRtl = (domStyle.get(this.chart.node, "direction") == "rtl"); + var isBaseTextDirRtl = (this.chart.getTextDir(tooltip) == "rtl"); + if(isBaseTextDirRtl && !isChartDirectionRtl){ + return "" + tooltip +""; + } + else if(!isBaseTextDirRtl && isChartDirectionRtl){ + return "" + tooltip +""; + }else{ + return tooltip; + } + } + }); +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/ZoomAndPan.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/ZoomAndPan.js new file mode 100644 index 00000000..33da91c4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/ZoomAndPan.js @@ -0,0 +1,7 @@ +//>>built +define("dojox/charting/bidi/action2d/ZoomAndPan",["dojo/_base/declare"],function(_1){ +return _1(null,{_getDelta:function(_2){ +var _3=this.inherited(arguments); +return _3*(this.chart.isRightToLeft()?-1:1); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/ZoomAndPan.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/ZoomAndPan.js.uncompressed.js new file mode 100644 index 00000000..3a96ab20 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/action2d/ZoomAndPan.js.uncompressed.js @@ -0,0 +1,11 @@ +define("dojox/charting/bidi/action2d/ZoomAndPan", ["dojo/_base/declare"], + function(declare){ + // module: + // dojox/charting/bidi/action2d/ZoomAndPan + return declare(null, { + _getDelta: function(event){ + var delta = this.inherited(arguments); + return delta * (this.chart.isRightToLeft()? -1 : 1); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/axis2d/Default.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/axis2d/Default.js new file mode 100644 index 00000000..9f7ccccf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/axis2d/Default.js @@ -0,0 +1,16 @@ +//>>built +define("dojox/charting/bidi/axis2d/Default",["dojo/_base/declare","dojo/dom-style"],function(_1,_2){ +return _1(null,{labelTooltip:function(_3,_4,_5,_6,_7,_8){ +var _9=(_2.get(_4.node,"direction")=="rtl"); +var _a=(_4.getTextDir(_5)=="rtl"); +if(_a&&!_9){ +_5=""+_5+""; +} +if(!_a&&_9){ +_5=""+_5+""; +} +this.inherited(arguments); +},_isRtl:function(){ +return this.chart.isRightToLeft(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/axis2d/Default.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/axis2d/Default.js.uncompressed.js new file mode 100644 index 00000000..695ca494 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/axis2d/Default.js.uncompressed.js @@ -0,0 +1,27 @@ +define("dojox/charting/bidi/axis2d/Default", ["dojo/_base/declare", "dojo/dom-style"], + function(declare, domStyle){ + // module: + // dojox/charting/bidi/axis2d/Default + return declare(null, { + labelTooltip: function(elem, chart, label, truncatedLabel, font, elemType){ + // additional preprocessing of the labels, needed for rtl base text direction in LTR + // GUI, or for ltr base text direction for RTL GUI. + + var isChartDirectionRtl = (domStyle.get(chart.node,"direction") == "rtl"); + var isBaseTextDirRtl = (chart.getTextDir(label) == "rtl"); + + if(isBaseTextDirRtl && !isChartDirectionRtl){ + label = "" + label +""; + } + if(!isBaseTextDirRtl && isChartDirectionRtl){ + label = "" + label +""; + } + this.inherited(arguments); + }, + + _isRtl: function(){ + return this.chart.isRightToLeft(); + } + }); +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Chart.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Chart.js new file mode 100644 index 00000000..dac4898a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Chart.js @@ -0,0 +1,17 @@ +//>>built +define("dojox/charting/bidi/widget/Chart",["dojo/_base/declare"],function(_1){ +function _2(_3){ +return /^(ltr|rtl|auto)$/.test(_3)?_3:null; +}; +return _1(null,{postMixInProperties:function(){ +this.textDir=this.params["textDir"]?this.params["textDir"]:this.params["dir"]; +},_setTextDirAttr:function(_4){ +if(_2(_4)!=null){ +this._set("textDir",_4); +this.chart.setTextDir(_4); +} +},_setDirAttr:function(_5){ +this._set("dir",_5); +this.chart.setDir(_5); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Chart.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Chart.js.uncompressed.js new file mode 100644 index 00000000..d8953c4c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Chart.js.uncompressed.js @@ -0,0 +1,29 @@ +define("dojox/charting/bidi/widget/Chart", ["dojo/_base/declare"], + function(declare){ + // module: + // dojox/charting/bidi/widget/Chart + function validateTextDir(textDir){ + return /^(ltr|rtl|auto)$/.test(textDir) ? textDir : null; + } + + return declare(null, { + postMixInProperties: function(){ + // set initial textDir of the chart, if passed in the creation use that value + // else use default value, following the GUI direction, this.chart doesn't exist yet + // so can't use set("textDir", textDir). This passed to this.chart in it's future creation. + this.textDir = this.params["textDir"] ? this.params["textDir"] : this.params["dir"]; + }, + + _setTextDirAttr: function(/*String*/ textDir){ + if(validateTextDir(textDir) != null){ + this._set("textDir", textDir); + this.chart.setTextDir(textDir); + } + }, + + _setDirAttr: function(/*String*/ dir){ + this._set("dir", dir); + this.chart.setDir(dir); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Legend.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Legend.js new file mode 100644 index 00000000..7656888b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Legend.js @@ -0,0 +1,37 @@ +//>>built +define("dojox/charting/bidi/widget/Legend",["dojo/_base/declare","dojo/dom","dijit/registry","dojo/_base/connect","dojo/_base/array","dojo/query"],function(_1,_2,_3,_4,_5,_6){ +function _7(_8){ +return /^(ltr|rtl|auto)$/.test(_8)?_8:null; +}; +return _1(null,{postMixInProperties:function(){ +if(!this.chart){ +if(!this.chartRef){ +return; +} +var _9=_3.byId(this.chartRef); +if(!_9){ +var _a=_2.byId(this.chartRef); +if(_a){ +_9=_3.byNode(_a); +}else{ +return; +} +} +this.textDir=_9.chart.textDir; +_4.connect(_9.chart,"setTextDir",this,"_setTextDirAttr"); +}else{ +this.textDir=this.chart.textDir; +_4.connect(this.chart,"setTextDir",this,"_setTextDirAttr"); +} +},_setTextDirAttr:function(_b){ +if(_7(_b)!=null){ +if(this.textDir!=_b){ +this._set("textDir",_b); +var _c=_6(".dojoxLegendText",this._tr); +_5.forEach(_c,function(_d){ +_d.dir=this.getTextDir(_d.innerHTML,_d.dir); +},this); +} +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Legend.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Legend.js.uncompressed.js new file mode 100644 index 00000000..de39907a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/bidi/widget/Legend.js.uncompressed.js @@ -0,0 +1,63 @@ +define("dojox/charting/bidi/widget/Legend", ["dojo/_base/declare", "dojo/dom", "dijit/registry", "dojo/_base/connect", "dojo/_base/array", "dojo/query"], + function(declare, dom, widgetManager, hub, arrayUtil, query){ + // module: + // dojox/charting/bidi/widget/Legend + function validateTextDir(textDir){ + return /^(ltr|rtl|auto)$/.test(textDir) ? textDir : null; + } + + return declare(null, { + postMixInProperties: function(){ + // summary: + // Connect the setter of textDir legend to setTextDir of the chart, + // so _setTextDirAttr of the legend will be called after setTextDir of the chart is called. + // tags: + // private + + // find the chart that is the owner of this legend, use it's + // textDir + if(!this.chart){ + if(!this.chartRef){ return; } + var chart = widgetManager.byId(this.chartRef); + if(!chart){ + var node = dom.byId(this.chartRef); + if(node){ + chart = widgetManager.byNode(node); + }else{ + return; + } + } + this.textDir = chart.chart.textDir; + hub.connect(chart.chart, "setTextDir", this, "_setTextDirAttr"); + + }else{ + this.textDir = this.chart.textDir; + hub.connect(this.chart, "setTextDir", this, "_setTextDirAttr"); + + } + }, + + _setTextDirAttr: function(/*String*/ textDir){ + // summary: + // Setter for textDir. + // description: + // Users shouldn't call this function; they should be calling + // set('textDir', value) + // tags: + // private + + // only if new textDir is different from the old one + if(validateTextDir(textDir) != null){ + if(this.textDir != textDir){ + this._set("textDir", textDir); + // get array of all the labels + var legendLabels = query(".dojoxLegendText", this._tr); + // for every label calculate it's new dir. + arrayUtil.forEach(legendLabels, function(label){ + label.dir = this.getTextDir(label.innerHTML, label.dir); + }, this); + } + } + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Areas.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Areas.js new file mode 100644 index 00000000..bf60fa91 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Areas.js @@ -0,0 +1,7 @@ +//>>built +define("dojox/charting/plot2d/Areas",["dojo/_base/declare","./Default"],function(_1,_2){ +return _1("dojox.charting.plot2d.Areas",_2,{constructor:function(){ +this.opt.lines=true; +this.opt.areas=true; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Areas.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Areas.js.uncompressed.js new file mode 100644 index 00000000..0b3127e4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Areas.js.uncompressed.js @@ -0,0 +1,14 @@ +define("dojox/charting/plot2d/Areas", ["dojo/_base/declare", "./Default"], + function(declare, Default){ + + return declare("dojox.charting.plot2d.Areas", Default, { + // summary: + // Represents an area chart. See dojox/charting/plot2d/Default for details. + constructor: function(){ + // summary: + // The constructor for an Area chart. + this.opt.lines = true; + this.opt.areas = true; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bars.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bars.js new file mode 100644 index 00000000..dbc3945d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bars.js @@ -0,0 +1,168 @@ +//>>built +define("dojox/charting/plot2d/Bars",["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/has","./CartesianBase","./_PlotEvents","./common","dojox/gfx/fx","dojox/lang/utils","dojox/lang/functional","dojox/lang/functional/reversed"],function(_1,_2,_3,_4,_5,_6,dc,fx,du,df,_7){ +var _8=_7.lambda("item.purgeGroup()"); +return _3("dojox.charting.plot2d.Bars",[_5,_6],{defaultParams:{gap:0,animate:null,enableCache:false},optionalParams:{minBarSize:1,maxBarSize:1,stroke:{},outline:{},shadow:{},fill:{},filter:{},styleFunc:null,font:"",fontColor:""},constructor:function(_9,_a){ +this.opt=_1.clone(_1.mixin(this.opt,this.defaultParams)); +du.updateWithObject(this.opt,_a); +du.updateWithPattern(this.opt,_a,this.optionalParams); +this.animate=this.opt.animate; +this.renderingOptions={"shape-rendering":"crispEdges"}; +},getSeriesStats:function(){ +var _b=dc.collectSimpleStats(this.series),t; +_b.hmin-=0.5; +_b.hmax+=0.5; +t=_b.hmin,_b.hmin=_b.vmin,_b.vmin=t; +t=_b.hmax,_b.hmax=_b.vmax,_b.vmax=t; +return _b; +},createRect:function(_c,_d,_e){ +var _f; +if(this.opt.enableCache&&_c._rectFreePool.length>0){ +_f=_c._rectFreePool.pop(); +_f.setShape(_e); +_d.add(_f); +}else{ +_f=_d.createRect(_e); +} +if(this.opt.enableCache){ +_c._rectUsePool.push(_f); +} +return _f; +},createLabel:function(_10,_11,_12,_13){ +if(this.opt.labels&&this.opt.labelStyle=="outside"){ +var y=_12.y+_12.height/2; +var x=_12.x+_12.width+this.opt.labelOffset; +this.renderLabel(_10,x,y,this._getLabel(isNaN(_11.y)?_11:_11.y),_13,"start"); +}else{ +this.inherited(arguments); +} +},render:function(dim,_14){ +if(this.zoom&&!this.isDataDirty()){ +return this.performZoom(dim,_14); +} +this.dirty=this.isDirty(); +this.resetEvents(); +var s; +if(this.dirty){ +_2.forEach(this.series,_8); +this._eventSeries={}; +this.cleanGroup(); +s=this.getGroup(); +df.forEachRev(this.series,function(_15){ +_15.cleanGroup(s); +}); +} +var t=this.chart.theme,ht=this._hScaler.scaler.getTransformerFromModel(this._hScaler),vt=this._vScaler.scaler.getTransformerFromModel(this._vScaler),_16=Math.max(0,this._hScaler.bounds.lower),_17=ht(_16),_18=this.events(); +var bar=this.getBarProperties(); +var _19=this.series.length; +_2.forEach(this.series,function(_1a){ +if(_1a.hidden){ +_19--; +} +}); +var z=_19; +for(var i=this.series.length-1;i>=0;--i){ +var run=this.series[i]; +if(!this.dirty&&!run.dirty){ +t.skip(); +this._reconnectEvents(run.name); +continue; +} +run.cleanGroup(); +if(this.opt.enableCache){ +run._rectFreePool=(run._rectFreePool?run._rectFreePool:[]).concat(run._rectUsePool?run._rectUsePool:[]); +run._rectUsePool=[]; +} +var _1b=t.next("bar",[this.opt,run]); +if(run.hidden){ +run.dyn.fill=_1b.series.fill; +run.dyn.stroke=_1b.series.stroke; +continue; +} +z--; +var _1c=new Array(run.data.length); +s=run.group; +var _1d=_2.some(run.data,function(_1e){ +return typeof _1e=="number"||(_1e&&!_1e.hasOwnProperty("x")); +}); +var min=_1d?Math.max(0,Math.floor(this._vScaler.bounds.from-1)):0; +var max=_1d?Math.min(run.data.length,Math.ceil(this._vScaler.bounds.to)):run.data.length; +for(var j=min;j=0&&bar.height>=1){ +var _23={x:_14.l+(val.y<_16?hv:_17),y:dim.height-_14.b-vt(val.x+1.5)+bar.gap+bar.thickness*(_19-z-1),width:w,height:bar.height}; +if(_20.series.shadow){ +var _24=_1.clone(_23); +_24.x+=_20.series.shadow.dx; +_24.y+=_20.series.shadow.dy; +_21=this.createRect(run,s,_24).setFill(_20.series.shadow.color).setStroke(_20.series.shadow); +if(this.animate){ +this._animateBar(_21,_14.l+_17,-w); +} +} +var _25=this._plotFill(_20.series.fill,dim,_14); +_25=this._shapeFill(_25,_23); +var _26=this.createRect(run,s,_23).setFill(_25).setStroke(_20.series.stroke); +if(_26.setFilter&&_20.series.filter){ +_26.setFilter(_20.series.filter); +} +run.dyn.fill=_26.getFill(); +run.dyn.stroke=_26.getStroke(); +if(_18){ +var o={element:"bar",index:j,run:run,shape:_26,shadow:_21,cx:val.y,cy:val.x+1.5,x:_1d?j:run.data[j].x,y:_1d?run.data[j]:run.data[j].y}; +this._connectEvents(o); +_1c[j]=o; +} +if(!isNaN(val.py)&&val.py>_16){ +_23.x+=ht(val.py); +_23.width-=ht(val.py); +} +this.createLabel(s,_1f,_23,_20); +if(this.animate){ +this._animateBar(_26,_14.l+_17,-w); +} +} +} +} +this._eventSeries[run.name]=_1c; +run.dirty=false; +} +this.dirty=false; +if(_4("dojo-bidi")){ +this._checkOrientation(this.group,dim,_14); +} +return this; +},getValue:function(_27,j,_28,_29){ +var y,x; +if(_29){ +if(typeof _27=="number"){ +y=_27; +}else{ +y=_27.y; +} +x=j; +}else{ +y=_27.y; +x=_27.x-1; +} +return {y:y,x:x}; +},getBarProperties:function(){ +var f=dc.calculateBarSize(this._vScaler.bounds.scale,this.opt); +return {gap:f.gap,height:f.size,thickness:0}; +},_animateBar:function(_2a,_2b,_2c){ +if(_2c==0){ +_2c=1; +} +fx.animateTransform(_1.delegate({shape:_2a,duration:1200,transform:[{name:"translate",start:[_2b-(_2b/_2c),0],end:[0,0]},{name:"scale",start:[1/_2c,1],end:[1,1]},{name:"original"}]},this.animate)).play(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bars.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bars.js.uncompressed.js new file mode 100644 index 00000000..74c8b6b1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bars.js.uncompressed.js @@ -0,0 +1,311 @@ +define("dojox/charting/plot2d/Bars", ["dojo/_base/lang", "dojo/_base/array", "dojo/_base/declare", "dojo/has", "./CartesianBase", "./_PlotEvents", "./common", + "dojox/gfx/fx", "dojox/lang/utils", "dojox/lang/functional", "dojox/lang/functional/reversed"], + function(lang, arr, declare, has, CartesianBase, _PlotEvents, dc, fx, du, df, dfr){ + + /*===== + declare("dojox.charting.plot2d.__BarCtorArgs", dojox.charting.plot2d.__DefaultCtorArgs, { + // summary: + // Additional keyword arguments for bar charts. + + // minBarSize: Number? + // The minimum size for a bar in pixels. Default is 1. + minBarSize: 1, + + // maxBarSize: Number? + // The maximum size for a bar in pixels. Default is 1. + maxBarSize: 1, + + // stroke: dojox.gfx.Stroke? + // An optional stroke to use for any series on the plot. + stroke: {}, + + // outline: dojox.gfx.Stroke? + // An optional stroke used to outline any series on the plot. + outline: {}, + + // shadow: dojox.gfx.Stroke? + // An optional stroke to use to draw any shadows for a series on a plot. + shadow: {}, + + // fill: dojox.gfx.Fill? + // Any fill to be used for elements on the plot. + fill: {}, + + // filter: dojox.gfx.Filter? + // An SVG filter to be used for elements on the plot. gfx SVG renderer must be used and dojox/gfx/svgext must + // be required for this to work. + filter: {}, + + // styleFunc: Function? + // A function that returns a styling object for the a given data item. + styleFunc: null, + + // font: String? + // A font definition to be used for labels and other text-based elements on the plot. + font: "", + + // fontColor: String|dojo.Color? + // The color to be used for any text-based elements on the plot. + fontColor: "", + + // enableCache: Boolean? + // Whether the bars rect are cached from one rendering to another. This improves the rendering performance of + // successive rendering but penalize the first rendering. Default false. + enableCache: false + }); + =====*/ + var purgeGroup = dfr.lambda("item.purgeGroup()"); + + return declare("dojox.charting.plot2d.Bars", [CartesianBase, _PlotEvents], { + // summary: + // The plot object representing a bar chart (horizontal bars). + defaultParams: { + gap: 0, // gap between columns in pixels + animate: null, // animate bars into place + enableCache: false + }, + optionalParams: { + minBarSize: 1, // minimal bar width in pixels + maxBarSize: 1, // maximal bar width in pixels + // theme component + stroke: {}, + outline: {}, + shadow: {}, + fill: {}, + filter: {}, + styleFunc: null, + font: "", + fontColor: "" + }, + + constructor: function(chart, kwArgs){ + // summary: + // The constructor for a bar chart. + // chart: dojox/charting/Chart + // The chart this plot belongs to. + // kwArgs: dojox.charting.plot2d.__BarCtorArgs? + // An optional keyword arguments object to help define the plot. + this.opt = lang.clone(lang.mixin(this.opt, this.defaultParams)); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + this.animate = this.opt.animate; + this.renderingOptions = { "shape-rendering": "crispEdges" }; + }, + + getSeriesStats: function(){ + // summary: + // Calculate the min/max on all attached series in both directions. + // returns: Object + // {hmin, hmax, vmin, vmax} min/max in both directions. + var stats = dc.collectSimpleStats(this.series), t; + stats.hmin -= 0.5; + stats.hmax += 0.5; + t = stats.hmin, stats.hmin = stats.vmin, stats.vmin = t; + t = stats.hmax, stats.hmax = stats.vmax, stats.vmax = t; + return stats; // Object + }, + + createRect: function(run, creator, params){ + var rect; + if(this.opt.enableCache && run._rectFreePool.length > 0){ + rect = run._rectFreePool.pop(); + rect.setShape(params); + // was cleared, add it back + creator.add(rect); + }else{ + rect = creator.createRect(params); + } + if(this.opt.enableCache){ + run._rectUsePool.push(rect); + } + return rect; + }, + + createLabel: function(group, value, bbox, theme){ + if(this.opt.labels && this.opt.labelStyle == "outside"){ + var y = bbox.y + bbox.height / 2; + var x = bbox.x + bbox.width + this.opt.labelOffset; + this.renderLabel(group, x, y, this._getLabel(isNaN(value.y)?value:value.y), theme, "start"); + }else{ + this.inherited(arguments); + } + }, + + render: function(dim, offsets){ + // summary: + // Run the calculations for any axes for this plot. + // dim: Object + // An object in the form of { width, height } + // offsets: Object + // An object of the form { l, r, t, b}. + // returns: dojox/charting/plot2d/Bars + // A reference to this plot for functional chaining. + if(this.zoom && !this.isDataDirty()){ + return this.performZoom(dim, offsets); // dojox/charting/plot2d/Bars + } + this.dirty = this.isDirty(); + this.resetEvents(); + var s; + if(this.dirty){ + arr.forEach(this.series, purgeGroup); + this._eventSeries = {}; + this.cleanGroup(); + s = this.getGroup(); + df.forEachRev(this.series, function(item){ item.cleanGroup(s); }); + } + var t = this.chart.theme, + ht = this._hScaler.scaler.getTransformerFromModel(this._hScaler), + vt = this._vScaler.scaler.getTransformerFromModel(this._vScaler), + baseline = Math.max(0, this._hScaler.bounds.lower), + baselineWidth = ht(baseline), + events = this.events(); + var bar = this.getBarProperties(); + + var actualLength = this.series.length; + arr.forEach(this.series, function(serie){if(serie.hidden){actualLength--;}}); + var z = actualLength; + for(var i = this.series.length - 1; i >= 0; --i){ + var run = this.series[i]; + if(!this.dirty && !run.dirty){ + t.skip(); + this._reconnectEvents(run.name); + continue; + } + run.cleanGroup(); + if(this.opt.enableCache){ + run._rectFreePool = (run._rectFreePool?run._rectFreePool:[]).concat(run._rectUsePool?run._rectUsePool:[]); + run._rectUsePool = []; + } + var theme = t.next("bar", [this.opt, run]); + if(run.hidden){ + run.dyn.fill = theme.series.fill; + run.dyn.stroke = theme.series.stroke; + continue; + } + z--; + + var eventSeries = new Array(run.data.length); + s = run.group; + var indexed = arr.some(run.data, function(item){ + return typeof item == "number" || (item && !item.hasOwnProperty("x")); + }); + // on indexed charts we can easily just interate from the first visible to the last visible + // data point to save time + var min = indexed?Math.max(0, Math.floor(this._vScaler.bounds.from - 1)):0; + var max = indexed?Math.min(run.data.length, Math.ceil(this._vScaler.bounds.to)):run.data.length; + for(var j = min; j < max; ++j){ + var value = run.data[j]; + if(value != null){ + var val = this.getValue(value, j, i, indexed), + hv = ht(val.y), + w = Math.abs(hv - baselineWidth), + finalTheme, + sshape; + if(this.opt.styleFunc || typeof value != "number"){ + var tMixin = typeof value != "number" ? [value] : []; + if(this.opt.styleFunc){ + tMixin.push(this.opt.styleFunc(value)); + } + finalTheme = t.addMixin(theme, "bar", tMixin, true); + }else{ + finalTheme = t.post(theme, "bar"); + } + if(w >= 0 && bar.height >= 1){ + var rect = { + x: offsets.l + (val.y < baseline ? hv : baselineWidth), + y: dim.height - offsets.b - vt(val.x + 1.5) + bar.gap + bar.thickness * (actualLength - z - 1), + // y: dim.height - offsets.b - vt(val.x + 1.5) + bar.gap + bar.thickness * z, + width: w, + height: bar.height + }; + if(finalTheme.series.shadow){ + var srect = lang.clone(rect); + srect.x += finalTheme.series.shadow.dx; + srect.y += finalTheme.series.shadow.dy; + sshape = this.createRect(run, s, srect).setFill(finalTheme.series.shadow.color).setStroke(finalTheme.series.shadow); + if(this.animate){ + this._animateBar(sshape, offsets.l + baselineWidth, -w); + } + } + var specialFill = this._plotFill(finalTheme.series.fill, dim, offsets); + specialFill = this._shapeFill(specialFill, rect); + var shape = this.createRect(run, s, rect).setFill(specialFill).setStroke(finalTheme.series.stroke); + if(shape.setFilter && finalTheme.series.filter){ + shape.setFilter(finalTheme.series.filter); + } + run.dyn.fill = shape.getFill(); + run.dyn.stroke = shape.getStroke(); + if(events){ + var o = { + element: "bar", + index: j, + run: run, + shape: shape, + shadow: sshape, + cx: val.y, + cy: val.x + 1.5, + x: indexed?j:run.data[j].x, + y: indexed?run.data[j]:run.data[j].y + }; + this._connectEvents(o); + eventSeries[j] = o; + } + // if val.py is here, this means we are stacking and we need to subtract previous + // value to get the high in which we will lay out the label + if(!isNaN(val.py) && val.py > baseline){ + rect.x += ht(val.py); + rect.width -= ht(val.py); + } + this.createLabel(s, value, rect, finalTheme); + if(this.animate){ + this._animateBar(shape, offsets.l + baselineWidth, -w); + } + } + } + } + this._eventSeries[run.name] = eventSeries; + run.dirty = false; + } + this.dirty = false; + // chart mirroring starts + if(has("dojo-bidi")){ + this._checkOrientation(this.group, dim, offsets); + } + // chart mirroring ends + return this; // dojox/charting/plot2d/Bars + }, + getValue: function(value, j, seriesIndex, indexed){ + var y, x; + if(indexed){ + if(typeof value == "number"){ + y = value; + }else{ + y = value.y; + } + x = j; + }else{ + y = value.y; + x = value.x -1; + } + return {y:y, x:x}; + }, + getBarProperties: function(){ + var f = dc.calculateBarSize(this._vScaler.bounds.scale, this.opt); + return {gap: f.gap, height: f.size, thickness: 0}; + }, + _animateBar: function(shape, hoffset, hsize){ + if(hsize==0){ + hsize = 1; + } + fx.animateTransform(lang.delegate({ + shape: shape, + duration: 1200, + transform: [ + {name: "translate", start: [hoffset - (hoffset/hsize), 0], end: [0, 0]}, + {name: "scale", start: [1/hsize, 1], end: [1, 1]}, + {name: "original"} + ] + }, this.animate)).play(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Base.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Base.js new file mode 100644 index 00000000..7f7dab2f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Base.js @@ -0,0 +1,61 @@ +//>>built +define("dojox/charting/plot2d/Base",["dojo/_base/declare","dojo/_base/array","dojox/gfx","../Element","./common","../axis2d/common","dojo/has"],function(_1,_2,_3,_4,_5,ac,_6){ +var _7=_1("dojox.charting.plot2d.Base",_4,{constructor:function(_8,_9){ +if(_9&&_9.tooltipFunc){ +this.tooltipFunc=_9.tooltipFunc; +} +},clear:function(){ +this.series=[]; +this.dirty=true; +return this; +},setAxis:function(_a){ +return this; +},assignAxes:function(_b){ +_2.forEach(this.axes,function(_c){ +if(this[_c]){ +this.setAxis(_b[this[_c]]); +} +},this); +},addSeries:function(_d){ +this.series.push(_d); +return this; +},getSeriesStats:function(){ +return _5.collectSimpleStats(this.series); +},calculateAxes:function(_e){ +this.initializeScalers(_e,this.getSeriesStats()); +return this; +},initializeScalers:function(){ +return this; +},isDataDirty:function(){ +return _2.some(this.series,function(_f){ +return _f.dirty; +}); +},render:function(dim,_10){ +return this; +},renderLabel:function(_11,x,y,_12,_13,_14,_15){ +var _16=ac.createText[this.opt.htmlLabels&&_3.renderer!="vml"?"html":"gfx"](this.chart,_11,x,y,_15?_15:"middle",_12,_13.series.font,_13.series.fontColor); +if(_14){ +if(this.opt.htmlLabels&&_3.renderer!="vml"){ +_16.style.pointerEvents="none"; +}else{ +if(_16.rawNode){ +_16.rawNode.style.pointerEvents="none"; +} +} +} +if(this.opt.htmlLabels&&_3.renderer!="vml"){ +this.htmlElements.push(_16); +} +return _16; +},getRequiredColors:function(){ +return this.series.length; +},_getLabel:function(_17){ +return _5.getLabel(_17,this.opt.fixed,this.opt.precision); +}}); +if(_6("dojo-bidi")){ +_7.extend({_checkOrientation:function(_18,dim,_19){ +this.chart.applyMirroring(this.group,dim,_19); +}}); +} +return _7; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Base.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Base.js.uncompressed.js new file mode 100644 index 00000000..0062cd17 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Base.js.uncompressed.js @@ -0,0 +1,161 @@ +define("dojox/charting/plot2d/Base", ["dojo/_base/declare", "dojo/_base/array", "dojox/gfx", + "../Element", "./common", "../axis2d/common", "dojo/has"], + function(declare, arr, gfx, Element, common, ac, has){ +/*===== +dojox.charting.plot2d.__PlotCtorArgs = { + // summary: + // The base keyword arguments object for plot constructors. + // Note that the parameters for this may change based on the + // specific plot type (see the corresponding plot type for + // details). + + // tooltipFunc: Function? + // An optional function used to compute tooltip text for this plot. It takes precedence over + // the default function when available. + // | function tooltipFunc(o) { return "text"; } + // `o`is the event object that triggered the tooltip. + tooltipFunc: null +}; +=====*/ + var Base = declare("dojox.charting.plot2d.Base", Element, { + // summary: + // Base class for all plot types. + constructor: function(chart, kwArgs){ + // summary: + // Create a base plot for charting. + // chart: dojox/chart/Chart + // The chart this plot belongs to. + // kwArgs: dojox.charting.plot2d.__PlotCtorArgs? + // An optional arguments object to help define the plot. + + // TODO does not work in markup + if(kwArgs && kwArgs.tooltipFunc){ + this.tooltipFunc = kwArgs.tooltipFunc; + } + }, + clear: function(){ + // summary: + // Clear out all of the information tied to this plot. + // returns: dojox.charting.plot2d.Base + // A reference to this plot for functional chaining. + this.series = []; + this.dirty = true; + return this; // dojox/charting/plot2d/Base + }, + setAxis: function(axis){ + // summary: + // Set an axis for this plot. + // axis: dojox.charting.axis2d.Base + // The axis to set. + // returns: dojox/charting/plot2d/Base + // A reference to this plot for functional chaining. + return this; // dojox/charting/plot2d/Base + }, + assignAxes: function(axes){ + // summary: + // From an array of axes pick the ones that correspond to this plot and + // assign them to the plot using setAxis method. + // axes: Array + // An array of dojox/charting/axis2d/Base + // tags: + // protected + arr.forEach(this.axes, function(axis){ + if(this[axis]){ + this.setAxis(axes[this[axis]]); + } + }, this); + }, + addSeries: function(run){ + // summary: + // Add a data series to this plot. + // run: dojox.charting.Series + // The series to be added. + // returns: dojox/charting/plot2d/Base + // A reference to this plot for functional chaining. + this.series.push(run); + return this; // dojox/charting/plot2d/Base + }, + getSeriesStats: function(){ + // summary: + // Calculate the min/max on all attached series in both directions. + // returns: Object + // {hmin, hmax, vmin, vmax} min/max in both directions. + return common.collectSimpleStats(this.series); + }, + calculateAxes: function(dim){ + // summary: + // Stub function for running the axis calculations (deprecated). + // dim: Object + // An object of the form { width, height } + // returns: dojox/charting/plot2d/Base + // A reference to this plot for functional chaining. + this.initializeScalers(dim, this.getSeriesStats()); + return this; // dojox/charting/plot2d/Base + }, + initializeScalers: function(){ + // summary: + // Does nothing. + return this; + }, + isDataDirty: function(){ + // summary: + // Returns whether or not any of this plot's data series need to be rendered. + // returns: Boolean + // Flag indicating if any of this plot's series are invalid and need rendering. + return arr.some(this.series, function(item){ return item.dirty; }); // Boolean + }, + render: function(dim, offsets){ + // summary: + // Render the plot on the chart. + // dim: Object + // An object of the form { width, height }. + // offsets: Object + // An object of the form { l, r, t, b }. + // returns: dojox/charting/plot2d/Base + // A reference to this plot for functional chaining. + return this; // dojox/charting/plot2d/Base + }, + renderLabel: function(group, x, y, label, theme, block, align){ + var elem = ac.createText[this.opt.htmlLabels && gfx.renderer != "vml" ? "html" : "gfx"] + (this.chart, group, x, y, align?align:"middle", label, theme.series.font, theme.series.fontColor); + // if the label is inside we need to avoid catching events on it this would prevent action on + // chart elements + if(block){ + // TODO this won't work in IE neither in VML nor in HTML + // a solution would be to catch the event on the label and refire it to the element + // possibly using elementFromPoint or having it already available + if(this.opt.htmlLabels && gfx.renderer != "vml"){ + // we have HTML labels, let's use pointEvents on the HTML node + elem.style.pointerEvents = "none"; + }else if(elem.rawNode){ + // we have SVG labels, let's use pointerEvents on the SVG or VML node + elem.rawNode.style.pointerEvents = "none"; + } + // else we have Canvas, we need do nothing, as Canvas text won't catch events + } + if(this.opt.htmlLabels && gfx.renderer != "vml"){ + this.htmlElements.push(elem); + } + + return elem; + }, + getRequiredColors: function(){ + // summary: + // Get how many data series we have, so we know how many colors to use. + // returns: Number + // The number of colors needed. + return this.series.length; // Number + }, + _getLabel: function(number){ + return common.getLabel(number, this.opt.fixed, this.opt.precision); + } + }); + if(has("dojo-bidi")){ + Base.extend({ + _checkOrientation: function(group, dim, offsets){ + this.chart.applyMirroring(this.group, dim, offsets); + } + }); + } + return Base; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bubble.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bubble.js new file mode 100644 index 00000000..edd5a831 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bubble.js @@ -0,0 +1,141 @@ +//>>built +define("dojox/charting/plot2d/Bubble",["dojo/_base/lang","dojo/_base/declare","dojo/_base/array","dojo/has","./CartesianBase","./_PlotEvents","./common","dojox/lang/functional","dojox/lang/functional/reversed","dojox/lang/utils","dojox/gfx/fx"],function(_1,_2,_3,_4,_5,_6,dc,df,_7,du,fx){ +var _8=_7.lambda("item.purgeGroup()"); +return _2("dojox.charting.plot2d.Bubble",[_5,_6],{defaultParams:{animate:null},optionalParams:{stroke:{},outline:{},shadow:{},fill:{},filter:{},styleFunc:null,font:"",fontColor:"",labelFunc:null},constructor:function(_9,_a){ +this.opt=_1.clone(_1.mixin(this.opt,this.defaultParams)); +du.updateWithObject(this.opt,_a); +du.updateWithPattern(this.opt,_a,this.optionalParams); +if(!this.opt.labelFunc){ +this.opt.labelFunc=function(_b,_c,_d){ +return this._getLabel(_b.size,_c,_d); +}; +} +this.animate=this.opt.animate; +},render:function(_e,_f){ +var s; +if(this.zoom&&!this.isDataDirty()){ +return this.performZoom(_e,_f); +} +this.resetEvents(); +this.dirty=this.isDirty(); +if(this.dirty){ +_3.forEach(this.series,_8); +this._eventSeries={}; +this.cleanGroup(); +s=this.getGroup(); +df.forEachRev(this.series,function(_10){ +_10.cleanGroup(s); +}); +} +var t=this.chart.theme,ht=this._hScaler.scaler.getTransformerFromModel(this._hScaler),vt=this._vScaler.scaler.getTransformerFromModel(this._vScaler),_11=this.events(); +for(var i=this.series.length-1;i>=0;--i){ +var run=this.series[i]; +if(!this.dirty&&!run.dirty){ +t.skip(); +this._reconnectEvents(run.name); +continue; +} +run.cleanGroup(); +if(!run.data.length){ +run.dirty=false; +t.skip(); +continue; +} +if(typeof run.data[0]=="number"){ +console.warn("dojox.charting.plot2d.Bubble: the data in the following series cannot be rendered as a bubble chart; ",run); +continue; +} +var _12=t.next("circle",[this.opt,run]),_13=_3.map(run.data,function(v){ +return v?{x:ht(v.x)+_f.l,y:_e.height-_f.b-vt(v.y),radius:this._vScaler.bounds.scale*(v.size/2)}:null; +},this); +if(run.hidden){ +run.dyn.fill=_12.series.fill; +run.dyn.stroke=_12.series.stroke; +continue; +} +s=run.group; +var _14=null,_15=null,_16=null,_17=this.opt.styleFunc; +var _18=function(_19){ +if(_17){ +return t.addMixin(_12,"circle",[_19,_17(_19)],true); +} +return t.addMixin(_12,"circle",_19,true); +}; +if(_12.series.shadow){ +_16=_3.map(_13,function(_1a,i){ +if(_1a!==null){ +var _1b=_18(run.data[i]),_1c=_1b.series.shadow; +var _1d=s.createCircle({cx:_1a.x+_1c.dx,cy:_1a.y+_1c.dy,r:_1a.radius}).setStroke(_1c).setFill(_1c.color); +if(this.animate){ +this._animateBubble(_1d,_e.height-_f.b,_1a.radius); +} +return _1d; +} +return null; +},this); +if(_16.length){ +run.dyn.shadow=_16[_16.length-1].getStroke(); +} +} +if(_12.series.outline){ +_15=_3.map(_13,function(_1e,i){ +if(_1e!==null){ +var _1f=_18(run.data[i]),_20=dc.makeStroke(_1f.series.outline); +_20.width=2*_20.width+_12.series.stroke.width; +var _21=s.createCircle({cx:_1e.x,cy:_1e.y,r:_1e.radius}).setStroke(_20); +if(this.animate){ +this._animateBubble(_21,_e.height-_f.b,_1e.radius); +} +return _21; +} +return null; +},this); +if(_15.length){ +run.dyn.outline=_15[_15.length-1].getStroke(); +} +} +_14=_3.map(_13,function(_22,i){ +if(_22!==null){ +var _23=_18(run.data[i]),_24={x:_22.x-_22.radius,y:_22.y-_22.radius,width:2*_22.radius,height:2*_22.radius}; +var _25=this._plotFill(_23.series.fill,_e,_f); +_25=this._shapeFill(_25,_24); +var _26=s.createCircle({cx:_22.x,cy:_22.y,r:_22.radius}).setFill(_25).setStroke(_23.series.stroke); +if(_26.setFilter&&_23.series.filter){ +_26.setFilter(_23.series.filter); +} +if(this.animate){ +this._animateBubble(_26,_e.height-_f.b,_22.radius); +} +this.createLabel(s,run.data[i],_24,_23); +return _26; +} +return null; +},this); +if(_14.length){ +run.dyn.fill=_14[_14.length-1].getFill(); +run.dyn.stroke=_14[_14.length-1].getStroke(); +} +if(_11){ +var _27=new Array(_14.length); +_3.forEach(_14,function(s,i){ +if(s!==null){ +var o={element:"circle",index:i,run:run,shape:s,outline:_15&&_15[i]||null,shadow:_16&&_16[i]||null,x:run.data[i].x,y:run.data[i].y,r:run.data[i].size/2,cx:_13[i].x,cy:_13[i].y,cr:_13[i].radius}; +this._connectEvents(o); +_27[i]=o; +} +},this); +this._eventSeries[run.name]=_27; +}else{ +delete this._eventSeries[run.name]; +} +run.dirty=false; +} +this.dirty=false; +if(_4("dojo-bidi")){ +this._checkOrientation(this.group,_e,_f); +} +return this; +},_animateBubble:function(_28,_29,_2a){ +fx.animateTransform(_1.delegate({shape:_28,duration:1200,transform:[{name:"translate",start:[0,_29],end:[0,0]},{name:"scale",start:[0,1/_2a],end:[1,1]},{name:"original"}]},this.animate)).play(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bubble.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bubble.js.uncompressed.js new file mode 100644 index 00000000..41073ba4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Bubble.js.uncompressed.js @@ -0,0 +1,242 @@ +define("dojox/charting/plot2d/Bubble", ["dojo/_base/lang", "dojo/_base/declare", "dojo/_base/array", "dojo/has", + "./CartesianBase", "./_PlotEvents", "./common", "dojox/lang/functional", "dojox/lang/functional/reversed", + "dojox/lang/utils", "dojox/gfx/fx"], + function(lang, declare, arr, has, CartesianBase, _PlotEvents, dc, df, dfr, du, fx){ + + var purgeGroup = dfr.lambda("item.purgeGroup()"); + + return declare("dojox.charting.plot2d.Bubble", [CartesianBase, _PlotEvents], { + // summary: + // A plot representing bubbles. Note that data for Bubbles requires 3 parameters, + // in the form of: { x, y, size }, where size determines the size of the bubble. + defaultParams: { + animate: null // animate bars into place + }, + optionalParams: { + // theme component + stroke: {}, + outline: {}, + shadow: {}, + fill: {}, + filter: {}, + styleFunc: null, + font: "", + fontColor: "", + labelFunc: null + }, + + constructor: function(chart, kwArgs){ + // summary: + // Create a plot of bubbles. + // chart: dojox/charting/Chart + // The chart this plot belongs to. + // kwArgs: dojox.charting.plot2d.__DefaultCtorArgs? + // Optional keyword arguments object to help define plot parameters. + this.opt = lang.clone(lang.mixin(this.opt, this.defaultParams)); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + if(!this.opt.labelFunc){ + this.opt.labelFunc = function(value, fixed, precision){ + return this._getLabel(value.size, fixed, precision); + }; + } + this.animate = this.opt.animate; + }, + + // override the render so that we are plotting only circles. + render: function(dim, offsets){ + // summary: + // Run the calculations for any axes for this plot. + // dim: Object + // An object in the form of { width, height } + // offsets: Object + // An object of the form { l, r, t, b}. + // returns: dojox/charting/plot2d/Bubble + // A reference to this plot for functional chaining. + var s; + if(this.zoom && !this.isDataDirty()){ + return this.performZoom(dim, offsets); + } + this.resetEvents(); + this.dirty = this.isDirty(); + if(this.dirty){ + arr.forEach(this.series, purgeGroup); + this._eventSeries = {}; + this.cleanGroup(); + s = this.getGroup(); + df.forEachRev(this.series, function(item){ item.cleanGroup(s); }); + } + + var t = this.chart.theme, + ht = this._hScaler.scaler.getTransformerFromModel(this._hScaler), + vt = this._vScaler.scaler.getTransformerFromModel(this._vScaler), + events = this.events(); + + for(var i = this.series.length - 1; i >= 0; --i){ + var run = this.series[i]; + if(!this.dirty && !run.dirty){ + t.skip(); + this._reconnectEvents(run.name); + continue; + } + run.cleanGroup(); + if(!run.data.length){ + run.dirty = false; + t.skip(); + continue; + } + + if(typeof run.data[0] == "number"){ + console.warn("dojox.charting.plot2d.Bubble: the data in the following series cannot be rendered as a bubble chart; ", run); + continue; + } + + var theme = t.next("circle", [this.opt, run]), + points = arr.map(run.data, function(v){ + return v ? { + x: ht(v.x) + offsets.l, + y: dim.height - offsets.b - vt(v.y), + radius: this._vScaler.bounds.scale * (v.size / 2) + } : null; + }, this); + + if(run.hidden){ + run.dyn.fill = theme.series.fill; + run.dyn.stroke = theme.series.stroke; + continue; + } + s = run.group; + + var frontCircles = null, outlineCircles = null, shadowCircles = null, styleFunc = this.opt.styleFunc; + + var getFinalTheme = function(item){ + if(styleFunc){ + return t.addMixin(theme, "circle", [item, styleFunc(item)], true); + } + return t.addMixin(theme, "circle", item, true); + }; + + // make shadows if needed + if(theme.series.shadow){ + shadowCircles = arr.map(points, function(item, i){ + if(item !== null){ + var finalTheme = getFinalTheme(run.data[i]), + shadow = finalTheme.series.shadow; + var shape = s.createCircle({ + cx: item.x + shadow.dx, cy: item.y + shadow.dy, r: item.radius + }).setStroke(shadow).setFill(shadow.color); + if(this.animate){ + this._animateBubble(shape, dim.height - offsets.b, item.radius); + } + return shape; + } + return null; + }, this); + if(shadowCircles.length){ + run.dyn.shadow = shadowCircles[shadowCircles.length - 1].getStroke(); + } + } + + // make outlines if needed + if(theme.series.outline){ + outlineCircles = arr.map(points, function(item, i){ + if(item !== null){ + var finalTheme = getFinalTheme(run.data[i]), + outline = dc.makeStroke(finalTheme.series.outline); + outline.width = 2 * outline.width + theme.series.stroke.width; + var shape = s.createCircle({ + cx: item.x, cy: item.y, r: item.radius + }).setStroke(outline); + if(this.animate){ + this._animateBubble(shape, dim.height - offsets.b, item.radius); + } + return shape; + } + return null; + }, this); + if(outlineCircles.length){ + run.dyn.outline = outlineCircles[outlineCircles.length - 1].getStroke(); + } + } + + // run through the data and add the circles. + frontCircles = arr.map(points, function(item, i){ + if(item !== null){ + var finalTheme = getFinalTheme(run.data[i]), + rect = { + x: item.x - item.radius, + y: item.y - item.radius, + width: 2 * item.radius, + height: 2 * item.radius + }; + var specialFill = this._plotFill(finalTheme.series.fill, dim, offsets); + specialFill = this._shapeFill(specialFill, rect); + var shape = s.createCircle({ + cx: item.x, cy: item.y, r: item.radius + }).setFill(specialFill).setStroke(finalTheme.series.stroke); + if(shape.setFilter && finalTheme.series.filter){ + shape.setFilter(finalTheme.series.filter); + } + if(this.animate){ + this._animateBubble(shape, dim.height - offsets.b, item.radius); + } + this.createLabel(s, run.data[i], rect, finalTheme); + return shape; + } + return null; + }, this); + if(frontCircles.length){ + run.dyn.fill = frontCircles[frontCircles.length - 1].getFill(); + run.dyn.stroke = frontCircles[frontCircles.length - 1].getStroke(); + } + + if(events){ + var eventSeries = new Array(frontCircles.length); + arr.forEach(frontCircles, function(s, i){ + if(s !== null){ + var o = { + element: "circle", + index: i, + run: run, + shape: s, + outline: outlineCircles && outlineCircles[i] || null, + shadow: shadowCircles && shadowCircles[i] || null, + x: run.data[i].x, + y: run.data[i].y, + r: run.data[i].size / 2, + cx: points[i].x, + cy: points[i].y, + cr: points[i].radius + }; + this._connectEvents(o); + eventSeries[i] = o; + } + }, this); + this._eventSeries[run.name] = eventSeries; + }else{ + delete this._eventSeries[run.name]; + } + + run.dirty = false; + } + this.dirty = false; + // chart mirroring starts + if(has("dojo-bidi")){ + this._checkOrientation(this.group, dim, offsets); + } + // chart mirroring ends + return this; // dojox/charting/plot2d/Bubble + }, + _animateBubble: function(shape, offset, size){ + fx.animateTransform(lang.delegate({ + shape: shape, + duration: 1200, + transform: [ + {name: "translate", start: [0, offset], end: [0, 0]}, + {name: "scale", start: [0, 1/size], end: [1, 1]}, + {name: "original"} + ] + }, this.animate)).play(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Candlesticks.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Candlesticks.js new file mode 100644 index 00000000..3c99cdfa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Candlesticks.js @@ -0,0 +1,126 @@ +//>>built +define("dojox/charting/plot2d/Candlesticks",["dojo/_base/lang","dojo/_base/declare","dojo/_base/array","dojo/has","./CartesianBase","./_PlotEvents","./common","dojox/lang/functional","dojox/lang/functional/reversed","dojox/lang/utils","dojox/gfx/fx"],function(_1,_2,_3,_4,_5,_6,dc,df,_7,du,fx){ +var _8=_7.lambda("item.purgeGroup()"); +return _2("dojox.charting.plot2d.Candlesticks",[_5,_6],{defaultParams:{gap:2,animate:null},optionalParams:{minBarSize:1,maxBarSize:1,stroke:{},outline:{},shadow:{},fill:{},font:"",fontColor:""},constructor:function(_9,_a){ +this.opt=_1.clone(this.defaultParams); +du.updateWithObject(this.opt,_a); +du.updateWithPattern(this.opt,_a,this.optionalParams); +this.animate=this.opt.animate; +},collectStats:function(_b){ +var _c=_1.delegate(dc.defaultStats); +for(var i=0;i<_b.length;i++){ +var _d=_b[i]; +if(!_d.data.length){ +continue; +} +var _e=_c.vmin,_f=_c.vmax; +if(!("ymin" in _d)||!("ymax" in _d)){ +_3.forEach(_d.data,function(val,idx){ +if(val!==null){ +var x=val.x||idx+1; +_c.hmin=Math.min(_c.hmin,x); +_c.hmax=Math.max(_c.hmax,x); +_c.vmin=Math.min(_c.vmin,val.open,val.close,val.high,val.low); +_c.vmax=Math.max(_c.vmax,val.open,val.close,val.high,val.low); +} +}); +} +if("ymin" in _d){ +_c.vmin=Math.min(_e,_d.ymin); +} +if("ymax" in _d){ +_c.vmax=Math.max(_f,_d.ymax); +} +} +return _c; +},getSeriesStats:function(){ +var _10=this.collectStats(this.series); +_10.hmin-=0.5; +_10.hmax+=0.5; +return _10; +},render:function(dim,_11){ +if(this.zoom&&!this.isDataDirty()){ +return this.performZoom(dim,_11); +} +this.resetEvents(); +this.dirty=this.isDirty(); +var s; +if(this.dirty){ +_3.forEach(this.series,_8); +this._eventSeries={}; +this.cleanGroup(); +s=this.getGroup(); +df.forEachRev(this.series,function(_12){ +_12.cleanGroup(s); +}); +} +var t=this.chart.theme,f,gap,_13,ht=this._hScaler.scaler.getTransformerFromModel(this._hScaler),vt=this._vScaler.scaler.getTransformerFromModel(this._vScaler),_14=this.events(); +f=dc.calculateBarSize(this._hScaler.bounds.scale,this.opt); +gap=f.gap; +_13=f.size; +for(var i=this.series.length-1;i>=0;--i){ +var run=this.series[i]; +if(!this.dirty&&!run.dirty){ +t.skip(); +this._reconnectEvents(run.name); +continue; +} +run.cleanGroup(); +var _15=t.next("candlestick",[this.opt,run]),_16=new Array(run.data.length); +if(run.hidden){ +run.dyn.fill=_15.series.fill; +run.dyn.stroke=_15.series.stroke; +continue; +} +s=run.group; +for(var j=0;j_1a){ +var tmp=_1a; +_1a=low; +low=tmp; +} +if(_13>=1){ +var _1b=_18>_19; +var _1c={x1:_13/2,x2:_13/2,y1:y-_1a,y2:y-low},_1d={x:0,y:y-Math.max(_18,_19),width:_13,height:Math.max(_1b?_18-_19:_19-_18,1)}; +var _1e=s.createGroup(); +_1e.setTransform({dx:x,dy:0}); +var _1f=_1e.createGroup(); +_1f.createLine(_1c).setStroke(_17.series.stroke); +_1f.createRect(_1d).setStroke(_17.series.stroke).setFill(_1b?_17.series.fill:"white"); +if("mid" in v){ +_1f.createLine({x1:(_17.series.stroke.width||1),x2:_13-(_17.series.stroke.width||1),y1:y-mid,y2:y-mid}).setStroke(_1b?"white":_17.series.stroke); +} +run.dyn.fill=_17.series.fill; +run.dyn.stroke=_17.series.stroke; +if(_14){ +var o={element:"candlestick",index:j,run:run,shape:_1f,x:x,y:y-Math.max(_18,_19),cx:_13/2,cy:(y-Math.max(_18,_19))+(Math.max(_1b?_18-_19:_19-_18,1)/2),width:_13,height:Math.max(_1b?_18-_19:_19-_18,1),data:v}; +this._connectEvents(o); +_16[j]=o; +} +} +if(this.animate){ +this._animateCandlesticks(_1e,y-low,_1a-low); +} +} +} +this._eventSeries[run.name]=_16; +run.dirty=false; +} +this.dirty=false; +if(_4("dojo-bidi")){ +this._checkOrientation(this.group,dim,_11); +} +return this; +},tooltipFunc:function(o){ +return ""+""+""+""+""+(o.data.mid!==undefined?"":"")+"
    Open:"+o.data.open+"
    High:"+o.data.high+"
    Low:"+o.data.low+"
    Close:"+o.data.close+"
    Mid:"+o.data.mid+"
    "; +},_animateCandlesticks:function(_20,_21,_22){ +fx.animateTransform(_1.delegate({shape:_20,duration:1200,transform:[{name:"translate",start:[0,_21-(_21/_22)],end:[0,0]},{name:"scale",start:[1,1/_22],end:[1,1]},{name:"original"}]},this.animate)).play(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Candlesticks.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Candlesticks.js.uncompressed.js new file mode 100644 index 00000000..1adc85a4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Candlesticks.js.uncompressed.js @@ -0,0 +1,243 @@ +define("dojox/charting/plot2d/Candlesticks", ["dojo/_base/lang", "dojo/_base/declare", "dojo/_base/array", "dojo/has", "./CartesianBase", "./_PlotEvents", "./common", + "dojox/lang/functional", "dojox/lang/functional/reversed", "dojox/lang/utils", "dojox/gfx/fx"], + function(lang, declare, arr, has, CartesianBase, _PlotEvents, dc, df, dfr, du, fx){ + + var purgeGroup = dfr.lambda("item.purgeGroup()"); + + // Candlesticks are based on the Bars plot type; we expect the following passed + // as values in a series: + // { x?, open, close, high, low, mid? } + // if x is not provided, the array index is used. + // failing to provide the OHLC values will throw an error. + return declare("dojox.charting.plot2d.Candlesticks", [CartesianBase, _PlotEvents], { + // summary: + // A plot that represents typical candlesticks (financial reporting, primarily). + // Unlike most charts, the Candlestick expects data points to be represented by + // an object of the form { x?, open, close, high, low, mid? }, where both + // x and mid are optional parameters. If x is not provided, the index of the + // data array is used. + defaultParams: { + gap: 2, // gap between columns in pixels + animate: null // animate bars into place + }, + optionalParams: { + minBarSize: 1, // minimal candle width in pixels + maxBarSize: 1, // maximal candle width in pixels + // theme component + stroke: {}, + outline: {}, + shadow: {}, + fill: {}, + font: "", + fontColor: "" + }, + + constructor: function(chart, kwArgs){ + // summary: + // The constructor for a candlestick chart. + // chart: dojox/charting/Chart + // The chart this plot belongs to. + // kwArgs: dojox.charting.plot2d.__BarCtorArgs? + // An optional keyword arguments object to help define the plot. + this.opt = lang.clone(this.defaultParams); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + this.animate = this.opt.animate; + }, + + collectStats: function(series){ + // summary: + // Collect all statistics for drawing this chart. Since the common + // functionality only assumes x and y, Candlesticks must create it's own + // stats (since data has no y value, but open/close/high/low instead). + // series: dojox.charting.Series[] + // The data series array to be drawn on this plot. + // returns: Object + // Returns an object in the form of { hmin, hmax, vmin, vmax }. + + // we have to roll our own, since we need to use all four passed + // values to figure out our stats, and common only assumes x and y. + var stats = lang.delegate(dc.defaultStats); + for(var i=0; i= 0; --i){ + var run = this.series[i]; + if(!this.dirty && !run.dirty){ + t.skip(); + this._reconnectEvents(run.name); + continue; + } + run.cleanGroup(); + var theme = t.next("candlestick", [this.opt, run]), + eventSeries = new Array(run.data.length); + + if(run.hidden){ + run.dyn.fill = theme.series.fill; + run.dyn.stroke = theme.series.stroke; + continue; + } + s = run.group; + + for(var j = 0; j < run.data.length; ++j){ + var v = run.data[j]; + if(v !== null){ + var finalTheme = t.addMixin(theme, "candlestick", v, true); + + // calculate the points we need for OHLC + var x = ht(v.x || (j+0.5)) + offsets.l + gap, + y = dim.height - offsets.b, + open = vt(v.open), + close = vt(v.close), + high = vt(v.high), + low = vt(v.low); + if("mid" in v){ + var mid = vt(v.mid); + } + if(low > high){ + var tmp = high; + high = low; + low = tmp; + } + + if(width >= 1){ + // draw the line and rect, set up as a group and pass that to the events. + var doFill = open > close; + var line = { x1: width/2, x2: width/2, y1: y - high, y2: y - low }, + rect = { + x: 0, y: y-Math.max(open, close), + width: width, height: Math.max(doFill ? open-close : close-open, 1) + }; + var shape = s.createGroup(); + shape.setTransform({dx: x, dy: 0 }); + var inner = shape.createGroup(); + inner.createLine(line).setStroke(finalTheme.series.stroke); + inner.createRect(rect).setStroke(finalTheme.series.stroke). + setFill(doFill ? finalTheme.series.fill : "white"); + if("mid" in v){ + // add the mid line. + inner.createLine({ + x1: (finalTheme.series.stroke.width||1), x2: width - (finalTheme.series.stroke.width || 1), + y1: y - mid, y2: y - mid + }).setStroke(doFill ? "white" : finalTheme.series.stroke); + } + + // TODO: double check this. + run.dyn.fill = finalTheme.series.fill; + run.dyn.stroke = finalTheme.series.stroke; + if(events){ + var o = { + element: "candlestick", + index: j, + run: run, + shape: inner, + x: x, + y: y-Math.max(open, close), + cx: width/2, + cy: (y-Math.max(open, close)) + (Math.max(doFill ? open-close : close-open, 1)/2), + width: width, + height: Math.max(doFill ? open-close : close-open, 1), + data: v + }; + this._connectEvents(o); + eventSeries[j] = o; + } + } + if(this.animate){ + this._animateCandlesticks(shape, y - low, high - low); + } + } + } + this._eventSeries[run.name] = eventSeries; + run.dirty = false; + } + this.dirty = false; + // chart mirroring starts + if(has("dojo-bidi")){ + this._checkOrientation(this.group, dim, offsets); + } + // chart mirroring ends + return this; // dojox/charting/plot2d/Candlesticks + }, + + tooltipFunc: function(o){ + return '' + + '' + + '' + + '' + + '' + + (o.data.mid !== undefined ? '' : '') + + '
    Open:' + o.data.open + '
    High:' + o.data.high + '
    Low:' + o.data.low + '
    Close:' + o.data.close + '
    Mid:' + o.data.mid + '
    '; + }, + + _animateCandlesticks: function(shape, voffset, vsize){ + fx.animateTransform(lang.delegate({ + shape: shape, + duration: 1200, + transform: [ + {name: "translate", start: [0, voffset - (voffset/vsize)], end: [0, 0]}, + {name: "scale", start: [1, 1/vsize], end: [1, 1]}, + {name: "original"} + ] + }, this.animate)).play(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/CartesianBase.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/CartesianBase.js new file mode 100644 index 00000000..25d92a1a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/CartesianBase.js @@ -0,0 +1,108 @@ +//>>built +define("dojox/charting/plot2d/CartesianBase",["dojo/_base/lang","dojo/_base/declare","dojo/_base/connect","dojo/has","./Base","../scaler/primitive","dojox/gfx","dojox/gfx/fx","dojox/lang/utils"],function(_1,_2,_3,_4,_5,_6,_7,fx,du){ +return _2("dojox.charting.plot2d.CartesianBase",_5,{baseParams:{hAxis:"x",vAxis:"y",labels:false,labelOffset:10,fixed:true,precision:1,labelStyle:"inside",htmlLabels:true,omitLabels:true,labelFunc:null},constructor:function(_8,_9){ +this.axes=["hAxis","vAxis"]; +this.zoom=null; +this.zoomQueue=[]; +this.lastWindow={vscale:1,hscale:1,xoffset:0,yoffset:0}; +this.hAxis=(_9&&_9.hAxis)||"x"; +this.vAxis=(_9&&_9.vAxis)||"y"; +this.series=[]; +this.opt=_1.clone(this.baseParams); +du.updateWithObject(this.opt,_9); +},clear:function(){ +this.inherited(arguments); +this._hAxis=null; +this._vAxis=null; +return this; +},cleanGroup:function(_a,_b){ +this.inherited(arguments); +if(!_b&&this.chart._nativeClip){ +var _c=this.chart.offsets,_d=this.chart.dim; +var w=Math.max(0,_d.width-_c.l-_c.r),h=Math.max(0,_d.height-_c.t-_c.b); +this.group.setClip({x:_c.l,y:_c.t,width:w,height:h}); +if(!this._clippedGroup){ +this._clippedGroup=this.group.createGroup(); +} +} +},purgeGroup:function(){ +this.inherited(arguments); +this._clippedGroup=null; +},getGroup:function(){ +return this._clippedGroup||this.group; +},setAxis:function(_e){ +if(_e){ +this[_e.vertical?"_vAxis":"_hAxis"]=_e; +} +return this; +},toPage:function(_f){ +var ah=this._hAxis,av=this._vAxis,sh=ah.getScaler(),sv=av.getScaler(),th=sh.scaler.getTransformerFromModel(sh),tv=sv.scaler.getTransformerFromModel(sv),c=this.chart.getCoords(),o=this.chart.offsets,dim=this.chart.dim; +var t=function(_10){ +var r={}; +r.x=th(_10[ah.name])+c.x+o.l; +r.y=c.y+dim.height-o.b-tv(_10[av.name]); +return r; +}; +return _f?t(_f):t; +},toData:function(_11){ +var ah=this._hAxis,av=this._vAxis,sh=ah.getScaler(),sv=av.getScaler(),th=sh.scaler.getTransformerFromPlot(sh),tv=sv.scaler.getTransformerFromPlot(sv),c=this.chart.getCoords(),o=this.chart.offsets,dim=this.chart.dim; +var t=function(_12){ +var r={}; +r[ah.name]=th(_12.x-c.x-o.l); +r[av.name]=tv(c.y+dim.height-_12.y-o.b); +return r; +}; +return _11?t(_11):t; +},isDirty:function(){ +return this.dirty||this._hAxis&&this._hAxis.dirty||this._vAxis&&this._vAxis.dirty; +},createLabel:function(_13,_14,_15,_16){ +if(this.opt.labels){ +var x,y,_17=this.opt.labelFunc?this.opt.labelFunc.apply(this,[_14,this.opt.fixed,this.opt.precision]):this._getLabel(isNaN(_14.y)?_14:_14.y); +if(this.opt.labelStyle=="inside"){ +var _18=_7._base._getTextBox(_17,{font:_16.series.font}); +x=_15.x+_15.width/2; +y=_15.y+_15.height/2+_18.h/4; +if(_18.w>_15.width||_18.h>_15.height){ +return; +} +}else{ +x=_15.x+_15.width/2; +y=_15.y-this.opt.labelOffset; +} +this.renderLabel(_13,x,y,_17,_16,this.opt.labelStyle=="inside"); +} +},performZoom:function(dim,_19){ +var vs=this._vAxis.scale||1,hs=this._hAxis.scale||1,_1a=dim.height-_19.b,_1b=this._hScaler.bounds,_1c=(_1b.from-_1b.lower)*_1b.scale,_1d=this._vScaler.bounds,_1e=(_1d.from-_1d.lower)*_1d.scale,_1f=vs/this.lastWindow.vscale,_20=hs/this.lastWindow.hscale,_21=(this.lastWindow.xoffset-_1c)/((this.lastWindow.hscale==1)?hs:this.lastWindow.hscale),_22=(_1e-this.lastWindow.yoffset)/((this.lastWindow.vscale==1)?vs:this.lastWindow.vscale),_23=this.getGroup(),_24=fx.animateTransform(_1.delegate({shape:_23,duration:1200,transform:[{name:"translate",start:[0,0],end:[_19.l*(1-_20),_1a*(1-_1f)]},{name:"scale",start:[1,1],end:[_20,_1f]},{name:"original"},{name:"translate",start:[0,0],end:[_21,_22]}]},this.zoom)); +_1.mixin(this.lastWindow,{vscale:vs,hscale:hs,xoffset:_1c,yoffset:_1e}); +this.zoomQueue.push(_24); +_3.connect(_24,"onEnd",this,function(){ +this.zoom=null; +this.zoomQueue.shift(); +if(this.zoomQueue.length>0){ +this.zoomQueue[0].play(); +} +}); +if(this.zoomQueue.length==1){ +this.zoomQueue[0].play(); +} +return this; +},initializeScalers:function(dim,_25){ +if(this._hAxis){ +if(!this._hAxis.initialized()){ +this._hAxis.calculate(_25.hmin,_25.hmax,dim.width); +} +this._hScaler=this._hAxis.getScaler(); +}else{ +this._hScaler=_6.buildScaler(_25.hmin,_25.hmax,dim.width); +} +if(this._vAxis){ +if(!this._vAxis.initialized()){ +this._vAxis.calculate(_25.vmin,_25.vmax,dim.height); +} +this._vScaler=this._vAxis.getScaler(); +}else{ +this._vScaler=_6.buildScaler(_25.vmin,_25.vmax,dim.height); +} +return this; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/CartesianBase.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/CartesianBase.js.uncompressed.js new file mode 100644 index 00000000..0c7c268c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/CartesianBase.js.uncompressed.js @@ -0,0 +1,290 @@ +define("dojox/charting/plot2d/CartesianBase", ["dojo/_base/lang", "dojo/_base/declare", "dojo/_base/connect", "dojo/has", + "./Base", "../scaler/primitive", "dojox/gfx", "dojox/gfx/fx", "dojox/lang/utils"], + function(lang, declare, hub, has, Base, primitive, gfx, fx, du){ + /*===== + declare("dojox.charting.plot2d.__CartesianCtorArgs", dojox.charting.plot2d.__PlotCtorArgs, { + // hAxis: String? + // The horizontal axis name. + hAxis: "x", + + // vAxis: String? + // The vertical axis name + vAxis: "y", + + // labels: Boolean? + // For plots that support labels, whether or not to draw labels for each data item. Default is false. + labels: false, + + // fixed: Boolean? + // Whether a fixed precision must be applied to data values for display. Default is true. + fixed: true, + + // precision: Number? + // The precision at which to round data values for display. Default is 0. + precision: 1, + + // labelOffset: Number? + // The amount in pixels by which to offset labels when using "outside" labelStyle. Default is 10. + labelOffset: 10, + + // labelStyle: String? + // Options as to where to draw labels. This must be either "inside" or "outside". By default + // the labels are drawn "inside" the shape representing the data point (a column rectangle for a Columns plot + // or a marker for a Line plot for instance). When "outside" is used the labels are drawn above the data point shape. + labelStyle: "inside", + + // htmlLabels: Boolean? + // Whether or not to use HTML to render slice labels. Default is true. + htmlLabels: true, + + // omitLabels: Boolean? + // Whether labels that do not fit in an item render are omitted or not. This applies only when labelStyle + // is "inside". Default is false. + omitLabels: true, + + // labelFunc: Function? + // An optional function to use to compute label text. It takes precedence over + // the default text when available. + // | function labelFunc(value, fixed, precision) {} + // `value` is the data value to display + // `fixed` is true if fixed precision must be applied. + // `precision` is the requested precision to be applied. + labelFunc: null + }); + =====*/ + + return declare("dojox.charting.plot2d.CartesianBase", Base, { + baseParams: { + hAxis: "x", + vAxis: "y", + labels: false, + labelOffset: 10, + fixed: true, + precision: 1, + labelStyle: "inside", + htmlLabels: true, // use HTML to draw labels + omitLabels: true, + labelFunc: null + }, + + // summary: + // Base class for cartesian plot types. + constructor: function(chart, kwArgs){ + // summary: + // Create a cartesian base plot for cartesian charts. + // chart: dojox/chart/Chart + // The chart this plot belongs to. + // kwArgs: dojox.charting.plot2d.__CartesianCtorArgs? + // An optional arguments object to help define the plot. + this.axes = ["hAxis", "vAxis"]; + this.zoom = null; + this.zoomQueue = []; // zooming action task queue + this.lastWindow = {vscale: 1, hscale: 1, xoffset: 0, yoffset: 0}; + this.hAxis = (kwArgs && kwArgs.hAxis) || "x"; + this.vAxis = (kwArgs && kwArgs.vAxis) || "y"; + this.series = []; + this.opt = lang.clone(this.baseParams); + du.updateWithObject(this.opt, kwArgs); + }, + clear: function(){ + // summary: + // Clear out all of the information tied to this plot. + // returns: dojox/charting/plot2d/CartesianBase + // A reference to this plot for functional chaining. + this.inherited(arguments); + this._hAxis = null; + this._vAxis = null; + return this; // dojox/charting/plot2d/CartesianBase + }, + cleanGroup: function(creator, noClip){ + this.inherited(arguments); + if(!noClip && this.chart._nativeClip){ + var offsets = this.chart.offsets, dim = this.chart.dim; + var w = Math.max(0, dim.width - offsets.l - offsets.r), + h = Math.max(0, dim.height - offsets.t - offsets.b); + this.group.setClip({ x: offsets.l, y: offsets.t, width: w, height: h }); + if(!this._clippedGroup){ + this._clippedGroup = this.group.createGroup(); + } + } + }, + purgeGroup: function(){ + this.inherited(arguments); + this._clippedGroup = null; + }, + getGroup: function(){ + return this._clippedGroup || this.group; + }, + setAxis: function(axis){ + // summary: + // Set an axis for this plot. + // axis: dojox/charting/axis2d/Base + // The axis to set. + // returns: dojox/charting/plot2d/CartesianBase + // A reference to this plot for functional chaining. + if(axis){ + this[axis.vertical ? "_vAxis" : "_hAxis"] = axis; + } + return this; // dojox/charting/plot2d/CartesianBase + }, + toPage: function(coord){ + // summary: + // Compute page coordinates from plot axis data coordinates. + // coord: Object? + // The coordinates in plot axis data coordinate space. For cartesian charts that is of the following form: + // `{ hAxisName: 50, vAxisName: 200 }` + // If not provided return the transform method instead of the result of the transformation. + // returns: Object + // The resulting page pixel coordinates. That is of the following form: + // `{ x: 50, y: 200 }` + var ah = this._hAxis, av = this._vAxis, + sh = ah.getScaler(), sv = av.getScaler(), + th = sh.scaler.getTransformerFromModel(sh), + tv = sv.scaler.getTransformerFromModel(sv), + c = this.chart.getCoords(), + o = this.chart.offsets, dim = this.chart.dim; + var t = function(coord){ + var r = {}; + r.x = th(coord[ah.name]) + c.x + o.l; + r.y = c.y + dim.height - o.b - tv(coord[av.name]); + return r; + }; + // if no coord return the function so that we can capture the current transforms + // and reuse them later on + return coord?t(coord):t; // Object + }, + toData: function(coord){ + // summary: + // Compute plot axis data coordinates from page coordinates. + // coord: Object + // The pixel coordinate in page coordinate space. That is of the following form: + // `{ x: 50, y: 200 }` + // If not provided return the tranform method instead of the result of the transformation. + // returns: Object + // The resulting plot axis data coordinates. For cartesian charts that is of the following form: + // `{ hAxisName: 50, vAxisName: 200 }` + var ah = this._hAxis, av = this._vAxis, + sh = ah.getScaler(), sv = av.getScaler(), + th = sh.scaler.getTransformerFromPlot(sh), + tv = sv.scaler.getTransformerFromPlot(sv), + c = this.chart.getCoords(), + o = this.chart.offsets, dim = this.chart.dim; + var t = function(coord){ + var r = {}; + r[ah.name] = th(coord.x - c.x - o.l); + r[av.name] = tv(c.y + dim.height - coord.y - o.b); + return r; + }; + // if no coord return the function so that we can capture the current transforms + // and reuse them later on + return coord?t(coord):t; // Object + }, + isDirty: function(){ + // summary: + // Returns whether or not this plot needs to be rendered. + // returns: Boolean + // The state of the plot. + return this.dirty || this._hAxis && this._hAxis.dirty || this._vAxis && this._vAxis.dirty; // Boolean + }, + createLabel: function(group, value, bbox, theme){ + if(this.opt.labels){ + var x, y, label = this.opt.labelFunc?this.opt.labelFunc.apply(this, [value, this.opt.fixed, this.opt.precision]): + this._getLabel(isNaN(value.y)?value:value.y); + if(this.opt.labelStyle == "inside"){ + var lbox = gfx._base._getTextBox(label, { font: theme.series.font } ); + x = bbox.x + bbox.width / 2; + y = bbox.y + bbox.height / 2 + lbox.h / 4; + if(lbox.w > bbox.width || lbox.h > bbox.height){ + return; + } + + }else{ + x = bbox.x + bbox.width / 2; + y = bbox.y - this.opt.labelOffset; + } + this.renderLabel(group, x, y, label, theme, this.opt.labelStyle == "inside"); + } + }, + performZoom: function(dim, offsets){ + // summary: + // Create/alter any zooming windows on this plot. + // dim: Object + // An object of the form { width, height }. + // offsets: Object + // An object of the form { l, r, t, b }. + // returns: dojox/charting/plot2d/CartesianBase + // A reference to this plot for functional chaining. + + // get current zooming various + var vs = this._vAxis.scale || 1, + hs = this._hAxis.scale || 1, + vOffset = dim.height - offsets.b, + hBounds = this._hScaler.bounds, + xOffset = (hBounds.from - hBounds.lower) * hBounds.scale, + vBounds = this._vScaler.bounds, + yOffset = (vBounds.from - vBounds.lower) * vBounds.scale, + // get incremental zooming various + rVScale = vs / this.lastWindow.vscale, + rHScale = hs / this.lastWindow.hscale, + rXOffset = (this.lastWindow.xoffset - xOffset)/ + ((this.lastWindow.hscale == 1)? hs : this.lastWindow.hscale), + rYOffset = (yOffset - this.lastWindow.yoffset)/ + ((this.lastWindow.vscale == 1)? vs : this.lastWindow.vscale), + + shape = this.getGroup(), + anim = fx.animateTransform(lang.delegate({ + shape: shape, + duration: 1200, + transform:[ + {name:"translate", start:[0, 0], end: [offsets.l * (1 - rHScale), vOffset * (1 - rVScale)]}, + {name:"scale", start:[1, 1], end: [rHScale, rVScale]}, + {name:"original"}, + {name:"translate", start: [0, 0], end: [rXOffset, rYOffset]} + ]}, this.zoom)); + + lang.mixin(this.lastWindow, {vscale: vs, hscale: hs, xoffset: xOffset, yoffset: yOffset}); + //add anim to zooming action queue, + //in order to avoid several zooming action happened at the same time + this.zoomQueue.push(anim); + //perform each anim one by one in zoomQueue + hub.connect(anim, "onEnd", this, function(){ + this.zoom = null; + this.zoomQueue.shift(); + if(this.zoomQueue.length > 0){ + this.zoomQueue[0].play(); + } + }); + if(this.zoomQueue.length == 1){ + this.zoomQueue[0].play(); + } + return this; // dojox/charting/plot2d/CartesianBase + }, + initializeScalers: function(dim, stats){ + // summary: + // Initializes scalers using attached axes. + // dim: Object + // Size of a plot area in pixels as {width, height}. + // stats: Object + // Min/max of data in both directions as {hmin, hmax, vmin, vmax}. + // returns: dojox/charting/plot2d/CartesianBase + // A reference to this plot for functional chaining. + if(this._hAxis){ + if(!this._hAxis.initialized()){ + this._hAxis.calculate(stats.hmin, stats.hmax, dim.width); + } + this._hScaler = this._hAxis.getScaler(); + }else{ + this._hScaler = primitive.buildScaler(stats.hmin, stats.hmax, dim.width); + } + if(this._vAxis){ + if(!this._vAxis.initialized()){ + this._vAxis.calculate(stats.vmin, stats.vmax, dim.height); + } + this._vScaler = this._vAxis.getScaler(); + }else{ + this._vScaler = primitive.buildScaler(stats.vmin, stats.vmax, dim.height); + } + return this; // dojox/charting/plot2d/CartesianBase + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredBars.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredBars.js new file mode 100644 index 00000000..2b4a5fc9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredBars.js @@ -0,0 +1,13 @@ +//>>built +define("dojox/charting/plot2d/ClusteredBars",["dojo/_base/declare","dojo/_base/array","./Bars","./common"],function(_1,_2,_3,dc){ +return _1("dojox.charting.plot2d.ClusteredBars",_3,{getBarProperties:function(){ +var _4=this.series.length; +_2.forEach(this.series,function(_5){ +if(_5.hidden){ +_4--; +} +}); +var f=dc.calculateBarSize(this._vScaler.bounds.scale,this.opt,_4); +return {gap:f.gap,height:f.size,thickness:f.size}; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredBars.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredBars.js.uncompressed.js new file mode 100644 index 00000000..bccc901e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredBars.js.uncompressed.js @@ -0,0 +1,14 @@ +define("dojox/charting/plot2d/ClusteredBars", ["dojo/_base/declare", "dojo/_base/array", "./Bars", "./common"], + function(declare, array, Bars, dc){ + + return declare("dojox.charting.plot2d.ClusteredBars", Bars, { + // summary: + // A plot representing grouped or clustered bars (horizontal bars) + getBarProperties: function(){ + var length = this.series.length; + array.forEach(this.series, function(serie){if(serie.hidden){length--;}}); + var f = dc.calculateBarSize(this._vScaler.bounds.scale, this.opt, length); + return {gap: f.gap, height: f.size, thickness: f.size}; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredColumns.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredColumns.js new file mode 100644 index 00000000..d208ff34 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredColumns.js @@ -0,0 +1,13 @@ +//>>built +define("dojox/charting/plot2d/ClusteredColumns",["dojo/_base/declare","dojo/_base/array","./Columns","./common"],function(_1,_2,_3,dc){ +return _1("dojox.charting.plot2d.ClusteredColumns",_3,{getBarProperties:function(){ +var _4=this.series.length; +_2.forEach(this.series,function(_5){ +if(_5.hidden){ +_4--; +} +}); +var f=dc.calculateBarSize(this._hScaler.bounds.scale,this.opt,_4); +return {gap:f.gap,width:f.size,thickness:f.size,clusterSize:_4}; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredColumns.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredColumns.js.uncompressed.js new file mode 100644 index 00000000..ad1c5abb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/ClusteredColumns.js.uncompressed.js @@ -0,0 +1,14 @@ +define("dojox/charting/plot2d/ClusteredColumns", ["dojo/_base/declare", "dojo/_base/array", "./Columns", "./common"], + function(declare, array, Columns, dc){ + + return declare("dojox.charting.plot2d.ClusteredColumns", Columns, { + // summary: + // A plot representing grouped or clustered columns (vertical bars) + getBarProperties: function(){ + var length = this.series.length; + array.forEach(this.series, function(serie){if(serie.hidden){length--;}}); + var f = dc.calculateBarSize(this._hScaler.bounds.scale, this.opt, length); + return {gap: f.gap, width: f.size, thickness: f.size, clusterSize: length}; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Columns.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Columns.js new file mode 100644 index 00000000..6690b262 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Columns.js @@ -0,0 +1,153 @@ +//>>built +define("dojox/charting/plot2d/Columns",["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/has","./CartesianBase","./_PlotEvents","./common","dojox/lang/functional","dojox/lang/functional/reversed","dojox/lang/utils","dojox/gfx/fx"],function(_1,_2,_3,_4,_5,_6,dc,df,_7,du,fx){ +var _8=_7.lambda("item.purgeGroup()"); +return _3("dojox.charting.plot2d.Columns",[_5,_6],{defaultParams:{gap:0,animate:null,enableCache:false},optionalParams:{minBarSize:1,maxBarSize:1,stroke:{},outline:{},shadow:{},fill:{},filter:{},styleFunc:null,font:"",fontColor:""},constructor:function(_9,_a){ +this.opt=_1.clone(_1.mixin(this.opt,this.defaultParams)); +du.updateWithObject(this.opt,_a); +du.updateWithPattern(this.opt,_a,this.optionalParams); +this.animate=this.opt.animate; +this.renderingOptions={"shape-rendering":"crispEdges"}; +},getSeriesStats:function(){ +var _b=dc.collectSimpleStats(this.series); +_b.hmin-=0.5; +_b.hmax+=0.5; +return _b; +},createRect:function(_c,_d,_e){ +var _f; +if(this.opt.enableCache&&_c._rectFreePool.length>0){ +_f=_c._rectFreePool.pop(); +_f.setShape(_e); +_d.add(_f); +}else{ +_f=_d.createRect(_e); +} +if(this.opt.enableCache){ +_c._rectUsePool.push(_f); +} +return _f; +},render:function(dim,_10){ +if(this.zoom&&!this.isDataDirty()){ +return this.performZoom(dim,_10); +} +this.resetEvents(); +this.dirty=this.isDirty(); +var s; +if(this.dirty){ +_2.forEach(this.series,_8); +this._eventSeries={}; +this.cleanGroup(); +s=this.getGroup(); +df.forEachRev(this.series,function(_11){ +_11.cleanGroup(s); +}); +} +var t=this.chart.theme,ht=this._hScaler.scaler.getTransformerFromModel(this._hScaler),vt=this._vScaler.scaler.getTransformerFromModel(this._vScaler),_12=Math.max(0,this._vScaler.bounds.lower),_13=vt(_12),_14=this.events(),bar=this.getBarProperties(); +var z=this.series.length; +_2.forEach(this.series,function(_15){ +if(_15.hidden){ +z--; +} +}); +for(var i=this.series.length-1;i>=0;--i){ +var run=this.series[i]; +if(!this.dirty&&!run.dirty){ +t.skip(); +this._reconnectEvents(run.name); +continue; +} +run.cleanGroup(); +if(this.opt.enableCache){ +run._rectFreePool=(run._rectFreePool?run._rectFreePool:[]).concat(run._rectUsePool?run._rectUsePool:[]); +run._rectUsePool=[]; +} +var _16=t.next("column",[this.opt,run]),_17=new Array(run.data.length); +if(run.hidden){ +run.dyn.fill=_16.series.fill; +continue; +} +z--; +s=run.group; +var _18=_2.some(run.data,function(_19){ +return typeof _19=="number"||(_19&&!_19.hasOwnProperty("x")); +}); +var min=_18?Math.max(0,Math.floor(this._hScaler.bounds.from-1)):0; +var max=_18?Math.min(run.data.length,Math.ceil(this._hScaler.bounds.to)):run.data.length; +for(var j=min;j=1&&h>=0){ +var _1e={x:_10.l+ht(val.x+0.5)+bar.gap+bar.thickness*z,y:dim.height-_10.b-(val.y>_12?vv:_13),width:bar.width,height:h}; +if(_1b.series.shadow){ +var _1f=_1.clone(_1e); +_1f.x+=_1b.series.shadow.dx; +_1f.y+=_1b.series.shadow.dy; +_1c=this.createRect(run,s,_1f).setFill(_1b.series.shadow.color).setStroke(_1b.series.shadow); +if(this.animate){ +this._animateColumn(_1c,dim.height-_10.b+_13,h); +} +} +var _20=this._plotFill(_1b.series.fill,dim,_10); +_20=this._shapeFill(_20,_1e); +var _21=this.createRect(run,s,_1e).setFill(_20).setStroke(_1b.series.stroke); +if(_21.setFilter&&_1b.series.filter){ +_21.setFilter(_1b.series.filter); +} +run.dyn.fill=_21.getFill(); +run.dyn.stroke=_21.getStroke(); +if(_14){ +var o={element:"column",index:j,run:run,shape:_21,shadow:_1c,cx:val.x+0.5,cy:val.y,x:_18?j:run.data[j].x,y:_18?run.data[j]:run.data[j].y}; +this._connectEvents(o); +_17[j]=o; +} +if(!isNaN(val.py)&&val.py>_12){ +_1e.height=vv-vt(val.py); +} +this.createLabel(s,_1a,_1e,_1b); +if(this.animate){ +this._animateColumn(_21,dim.height-_10.b-_13,h); +} +} +} +} +this._eventSeries[run.name]=_17; +run.dirty=false; +} +this.dirty=false; +if(_4("dojo-bidi")){ +this._checkOrientation(this.group,dim,_10); +} +return this; +},getValue:function(_22,j,_23,_24){ +var y,x; +if(_24){ +if(typeof _22=="number"){ +y=_22; +}else{ +y=_22.y; +} +x=j; +}else{ +y=_22.y; +x=_22.x-1; +} +return {x:x,y:y}; +},getBarProperties:function(){ +var f=dc.calculateBarSize(this._hScaler.bounds.scale,this.opt); +return {gap:f.gap,width:f.size,thickness:0}; +},_animateColumn:function(_25,_26,_27){ +if(_27==0){ +_27=1; +} +fx.animateTransform(_1.delegate({shape:_25,duration:1200,transform:[{name:"translate",start:[0,_26-(_26/_27)],end:[0,0]},{name:"scale",start:[1,1/_27],end:[1,1]},{name:"original"}]},this.animate)).play(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Columns.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Columns.js.uncompressed.js new file mode 100644 index 00000000..52b992d6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Columns.js.uncompressed.js @@ -0,0 +1,249 @@ +define("dojox/charting/plot2d/Columns", ["dojo/_base/lang", "dojo/_base/array", "dojo/_base/declare", "dojo/has", "./CartesianBase", "./_PlotEvents", "./common", + "dojox/lang/functional", "dojox/lang/functional/reversed", "dojox/lang/utils", "dojox/gfx/fx"], + function(lang, arr, declare, has, CartesianBase, _PlotEvents, dc, df, dfr, du, fx){ + + var purgeGroup = dfr.lambda("item.purgeGroup()"); + + return declare("dojox.charting.plot2d.Columns", [CartesianBase, _PlotEvents], { + // summary: + // The plot object representing a column chart (vertical bars). + defaultParams: { + gap: 0, // gap between columns in pixels + animate: null, // animate bars into place + enableCache: false + }, + optionalParams: { + minBarSize: 1, // minimal column width in pixels + maxBarSize: 1, // maximal column width in pixels + // theme component + stroke: {}, + outline: {}, + shadow: {}, + fill: {}, + filter: {}, + styleFunc: null, + font: "", + fontColor: "" + }, + + constructor: function(chart, kwArgs){ + // summary: + // The constructor for a columns chart. + // chart: dojox/charting/Chart + // The chart this plot belongs to. + // kwArgs: dojox.charting.plot2d.__BarCtorArgs? + // An optional keyword arguments object to help define the plot. + this.opt = lang.clone(lang.mixin(this.opt, this.defaultParams)); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + this.animate = this.opt.animate; + this.renderingOptions = { "shape-rendering": "crispEdges" }; + }, + + getSeriesStats: function(){ + // summary: + // Calculate the min/max on all attached series in both directions. + // returns: Object + // {hmin, hmax, vmin, vmax} min/max in both directions. + var stats = dc.collectSimpleStats(this.series); + stats.hmin -= 0.5; + stats.hmax += 0.5; + return stats; // Object + }, + + createRect: function(run, creator, params){ + var rect; + if(this.opt.enableCache && run._rectFreePool.length > 0){ + rect = run._rectFreePool.pop(); + rect.setShape(params); + // was cleared, add it back + creator.add(rect); + }else{ + rect = creator.createRect(params); + } + if(this.opt.enableCache){ + run._rectUsePool.push(rect); + } + return rect; + }, + + render: function(dim, offsets){ + // summary: + // Run the calculations for any axes for this plot. + // dim: Object + // An object in the form of { width, height } + // offsets: Object + // An object of the form { l, r, t, b}. + // returns: dojox/charting/plot2d/Columns + // A reference to this plot for functional chaining. + if(this.zoom && !this.isDataDirty()){ + return this.performZoom(dim, offsets); + } + this.resetEvents(); + this.dirty = this.isDirty(); + var s; + if(this.dirty){ + arr.forEach(this.series, purgeGroup); + this._eventSeries = {}; + this.cleanGroup(); + s = this.getGroup(); + df.forEachRev(this.series, function(item){ item.cleanGroup(s); }); + } + var t = this.chart.theme, + ht = this._hScaler.scaler.getTransformerFromModel(this._hScaler), + vt = this._vScaler.scaler.getTransformerFromModel(this._vScaler), + baseline = Math.max(0, this._vScaler.bounds.lower), + baselineHeight = vt(baseline), + events = this.events(), + bar = this.getBarProperties(); + + var z = this.series.length; + arr.forEach(this.series, function(serie){if(serie.hidden){z--;}}); + + for(var i = this.series.length - 1; i >= 0; --i){ + var run = this.series[i]; + if(!this.dirty && !run.dirty){ + t.skip(); + this._reconnectEvents(run.name); + continue; + } + run.cleanGroup(); + if(this.opt.enableCache){ + run._rectFreePool = (run._rectFreePool?run._rectFreePool:[]).concat(run._rectUsePool?run._rectUsePool:[]); + run._rectUsePool = []; + } + var theme = t.next("column", [this.opt, run]), + eventSeries = new Array(run.data.length); + + if(run.hidden){ + run.dyn.fill = theme.series.fill; + continue; + } + z--; + + s = run.group; + var indexed = arr.some(run.data, function(item){ + return typeof item == "number" || (item && !item.hasOwnProperty("x")); + }); + // on indexed charts we can easily just interate from the first visible to the last visible + // data point to save time + var min = indexed?Math.max(0, Math.floor(this._hScaler.bounds.from - 1)):0; + var max = indexed?Math.min(run.data.length, Math.ceil(this._hScaler.bounds.to)):run.data.length; + for(var j = min; j < max; ++j){ + var value = run.data[j]; + if(value != null){ + var val = this.getValue(value, j, i, indexed), + vv = vt(val.y), + h = Math.abs(vv - baselineHeight), + finalTheme, + sshape; + + if(this.opt.styleFunc || typeof value != "number"){ + var tMixin = typeof value != "number" ? [value] : []; + if(this.opt.styleFunc){ + tMixin.push(this.opt.styleFunc(value)); + } + finalTheme = t.addMixin(theme, "column", tMixin, true); + }else{ + finalTheme = t.post(theme, "column"); + } + + if(bar.width >= 1 && h >= 0){ + var rect = { + x: offsets.l + ht(val.x + 0.5) + bar.gap + bar.thickness * z, + y: dim.height - offsets.b - (val.y > baseline ? vv : baselineHeight), + width: bar.width, + height: h + }; + if(finalTheme.series.shadow){ + var srect = lang.clone(rect); + srect.x += finalTheme.series.shadow.dx; + srect.y += finalTheme.series.shadow.dy; + sshape = this.createRect(run, s, srect).setFill(finalTheme.series.shadow.color).setStroke(finalTheme.series.shadow); + if(this.animate){ + this._animateColumn(sshape, dim.height - offsets.b + baselineHeight, h); + } + } + + var specialFill = this._plotFill(finalTheme.series.fill, dim, offsets); + specialFill = this._shapeFill(specialFill, rect); + var shape = this.createRect(run, s, rect).setFill(specialFill).setStroke(finalTheme.series.stroke); + if(shape.setFilter && finalTheme.series.filter){ + shape.setFilter(finalTheme.series.filter); + } + run.dyn.fill = shape.getFill(); + run.dyn.stroke = shape.getStroke(); + if(events){ + var o = { + element: "column", + index: j, + run: run, + shape: shape, + shadow: sshape, + cx: val.x + 0.5, + cy: val.y, + x: indexed?j:run.data[j].x, + y: indexed?run.data[j]:run.data[j].y + }; + this._connectEvents(o); + eventSeries[j] = o; + } + // if val.py is here, this means we are stacking and we need to subtract previous + // value to get the high in which we will lay out the label + if(!isNaN(val.py) && val.py > baseline){ + rect.height = vv - vt(val.py); + } + this.createLabel(s, value, rect, finalTheme); + if(this.animate){ + this._animateColumn(shape, dim.height - offsets.b - baselineHeight, h); + } + } + } + } + this._eventSeries[run.name] = eventSeries; + run.dirty = false; + } + this.dirty = false; + // chart mirroring starts + if(has("dojo-bidi")){ + this._checkOrientation(this.group, dim, offsets); + } + // chart mirroring ends + return this; // dojox/charting/plot2d/Columns + }, + getValue: function(value, j, seriesIndex, indexed){ + var y,x; + if(indexed){ + if(typeof value == "number"){ + y = value; + }else{ + y = value.y; + } + x = j; + }else{ + y = value.y; + x = value.x - 1; + } + return { x: x, y: y }; + }, + getBarProperties: function(){ + var f = dc.calculateBarSize(this._hScaler.bounds.scale, this.opt); + return {gap: f.gap, width: f.size, thickness: 0}; + }, + _animateColumn: function(shape, voffset, vsize){ + if(vsize==0){ + vsize = 1; + } + fx.animateTransform(lang.delegate({ + shape: shape, + duration: 1200, + transform: [ + {name: "translate", start: [0, voffset - (voffset/vsize)], end: [0, 0]}, + {name: "scale", start: [1, 1/vsize], end: [1, 1]}, + {name: "original"} + ] + }, this.animate)).play(); + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Default.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Default.js new file mode 100644 index 00000000..f1aaa916 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Default.js @@ -0,0 +1,253 @@ +//>>built +define("dojox/charting/plot2d/Default",["dojo/_base/lang","dojo/_base/declare","dojo/_base/array","dojo/has","./CartesianBase","./_PlotEvents","./common","dojox/lang/functional","dojox/lang/functional/reversed","dojox/lang/utils","dojox/gfx/fx"],function(_1,_2,_3,_4,_5,_6,dc,df,_7,du,fx){ +var _8=_7.lambda("item.purgeGroup()"); +var _9=1200; +return _2("dojox.charting.plot2d.Default",[_5,_6],{defaultParams:{lines:true,areas:false,markers:false,tension:"",animate:false,enableCache:false,interpolate:false},optionalParams:{stroke:{},outline:{},shadow:{},fill:{},filter:{},styleFunc:null,font:"",fontColor:"",marker:"",markerStroke:{},markerOutline:{},markerShadow:{},markerFill:{},markerFont:"",markerFontColor:""},constructor:function(_a,_b){ +this.opt=_1.clone(_1.mixin(this.opt,this.defaultParams)); +du.updateWithObject(this.opt,_b); +du.updateWithPattern(this.opt,_b,this.optionalParams); +this.animate=this.opt.animate; +},createPath:function(_c,_d,_e){ +var _f; +if(this.opt.enableCache&&_c._pathFreePool.length>0){ +_f=_c._pathFreePool.pop(); +_f.setShape(_e); +_d.add(_f); +}else{ +_f=_d.createPath(_e); +} +if(this.opt.enableCache){ +_c._pathUsePool.push(_f); +} +return _f; +},buildSegments:function(i,_10){ +var run=this.series[i],min=_10?Math.max(0,Math.floor(this._hScaler.bounds.from-1)):0,max=_10?Math.min(run.data.length,Math.ceil(this._hScaler.bounds.to)):run.data.length,_11=null,_12=[]; +for(var j=min;j=0;--i){ +var run=this.series[i]; +if(!this.dirty&&!run.dirty){ +t.skip(); +this._reconnectEvents(run.name); +continue; +} +run.cleanGroup(); +if(this.opt.enableCache){ +run._pathFreePool=(run._pathFreePool?run._pathFreePool:[]).concat(run._pathUsePool?run._pathUsePool:[]); +run._pathUsePool=[]; +} +if(!run.data.length){ +run.dirty=false; +t.skip(); +continue; +} +var _18=t.next(this.opt.areas?"area":"line",[this.opt,run],true),_19,ht=this._hScaler.scaler.getTransformerFromModel(this._hScaler),vt=this._vScaler.scaler.getTransformerFromModel(this._vScaler),_1a=this._eventSeries[run.name]=new Array(run.data.length); +s=run.group; +if(run.hidden){ +if(this.opt.lines){ +run.dyn.stroke=_18.series.stroke; +} +if(this.opt.markers){ +run.dyn.markerFill=_18.marker.fill; +run.dyn.markerStroke=_18.marker.stroke; +run.dyn.marker=_18.symbol; +} +if(this.opt.areas){ +run.dyn.fill=_18.series.fill; +} +continue; +} +var _1b=_3.some(run.data,function(_1c){ +return typeof _1c=="number"||(_1c&&!_1c.hasOwnProperty("x")); +}); +var _1d=this.buildSegments(i,_1b); +for(var seg=0;seg<_1d.length;seg++){ +var _1e=_1d[seg]; +if(_1b){ +_19=_3.map(_1e.rseg,function(v,i){ +return {x:ht(i+_1e.index+1)+_13.l,y:dim.height-_13.b-vt(v),data:v}; +},this); +}else{ +_19=_3.map(_1e.rseg,function(v){ +return {x:ht(v.x)+_13.l,y:dim.height-_13.b-vt(v.y),data:v}; +},this); +} +if(_1b&&this.opt.interpolate){ +while(seg<_1d.length){ +seg++; +_1e=_1d[seg]; +if(_1e){ +_19=_19.concat(_3.map(_1e.rseg,function(v,i){ +return {x:ht(i+_1e.index+1)+_13.l,y:dim.height-_13.b-vt(v),data:v}; +},this)); +} +} +} +var _1f=this.opt.tension?dc.curve(_19,this.opt.tension):""; +if(this.opt.areas&&_19.length>1){ +var _20=this._plotFill(_18.series.fill,dim,_13),_21=_1.clone(_19); +if(this.opt.tension){ +var _22="L"+_21[_21.length-1].x+","+(dim.height-_13.b)+" L"+_21[0].x+","+(dim.height-_13.b)+" L"+_21[0].x+","+_21[0].y; +run.dyn.fill=s.createPath(_1f+" "+_22).setFill(_20).getFill(); +}else{ +_21.push({x:_19[_19.length-1].x,y:dim.height-_13.b}); +_21.push({x:_19[0].x,y:dim.height-_13.b}); +_21.push(_19[0]); +run.dyn.fill=s.createPolyline(_21).setFill(_20).getFill(); +} +} +if(this.opt.lines||this.opt.markers){ +_15=_18.series.stroke; +if(_18.series.outline){ +_16=run.dyn.outline=dc.makeStroke(_18.series.outline); +_16.width=2*_16.width+_15.width; +} +} +if(this.opt.markers){ +run.dyn.marker=_18.symbol; +} +var _23=null,_24=null,_25=null; +if(_15&&_18.series.shadow&&_19.length>1){ +var _26=_18.series.shadow,_27=_3.map(_19,function(c){ +return {x:c.x+_26.dx,y:c.y+_26.dy}; +}); +if(this.opt.lines){ +if(this.opt.tension){ +run.dyn.shadow=s.createPath(dc.curve(_27,this.opt.tension)).setStroke(_26).getStroke(); +}else{ +run.dyn.shadow=s.createPolyline(_27).setStroke(_26).getStroke(); +} +} +if(this.opt.markers&&_18.marker.shadow){ +_26=_18.marker.shadow; +_25=_3.map(_27,function(c){ +return this.createPath(run,s,"M"+c.x+" "+c.y+" "+_18.symbol).setStroke(_26).setFill(_26.color); +},this); +} +} +if(this.opt.lines&&_19.length>1){ +var _28; +if(_16){ +if(this.opt.tension){ +run.dyn.outline=s.createPath(_1f).setStroke(_16).getStroke(); +}else{ +run.dyn.outline=s.createPolyline(_19).setStroke(_16).getStroke(); +} +} +if(this.opt.tension){ +run.dyn.stroke=(_28=s.createPath(_1f)).setStroke(_15).getStroke(); +}else{ +run.dyn.stroke=(_28=s.createPolyline(_19)).setStroke(_15).getStroke(); +} +if(_28.setFilter&&_18.series.filter){ +_28.setFilter(_18.series.filter); +} +} +var _29=null; +if(this.opt.markers){ +var _2a=_18; +_23=new Array(_19.length); +_24=new Array(_19.length); +_16=null; +if(_2a.marker.outline){ +_16=dc.makeStroke(_2a.marker.outline); +_16.width=2*_16.width+(_2a.marker.stroke?_2a.marker.stroke.width:0); +} +_3.forEach(_19,function(c,i){ +if(this.opt.styleFunc||typeof c.data!="number"){ +var _2b=typeof c.data!="number"?[c.data]:[]; +if(this.opt.styleFunc){ +_2b.push(this.opt.styleFunc(c.data)); +} +_2a=t.addMixin(_18,"marker",_2b,true); +}else{ +_2a=t.post(_18,"marker"); +} +var _2c="M"+c.x+" "+c.y+" "+_2a.symbol; +if(_16){ +_24[i]=this.createPath(run,s,_2c).setStroke(_16); +} +_23[i]=this.createPath(run,s,_2c).setStroke(_2a.marker.stroke).setFill(_2a.marker.fill); +},this); +run.dyn.markerFill=_2a.marker.fill; +run.dyn.markerStroke=_2a.marker.stroke; +if(!_29&&this.opt.labels){ +_29=_23[0].getBoundingBox(); +} +if(_17){ +_3.forEach(_23,function(s,i){ +var o={element:"marker",index:i+_1e.index,run:run,shape:s,outline:_24[i]||null,shadow:_25&&_25[i]||null,cx:_19[i].x,cy:_19[i].y}; +if(_1b){ +o.x=i+_1e.index+1; +o.y=run.data[i+_1e.index]; +}else{ +o.x=_1e.rseg[i].x; +o.y=run.data[i+_1e.index].y; +} +this._connectEvents(o); +_1a[i+_1e.index]=o; +},this); +}else{ +delete this._eventSeries[run.name]; +} +} +if(this.opt.labels){ +var _2d=_29?_29.width:2; +var _2e=_29?_29.height:2; +_3.forEach(_19,function(c,i){ +if(this.opt.styleFunc||typeof c.data!="number"){ +var _2f=typeof c.data!="number"?[c.data]:[]; +if(this.opt.styleFunc){ +_2f.push(this.opt.styleFunc(c.data)); +} +_2a=t.addMixin(_18,"marker",_2f,true); +}else{ +_2a=t.post(_18,"marker"); +} +this.createLabel(s,_1e.rseg[i],{x:c.x-_2d/2,y:c.y-_2e/2,width:_2d,height:_2e},_2a); +},this); +} +} +run.dirty=false; +} +if(_4("dojo-bidi")){ +this._checkOrientation(this.group,dim,_13); +} +if(this.animate){ +var _30=this.getGroup(); +fx.animateTransform(_1.delegate({shape:_30,duration:_9,transform:[{name:"translate",start:[0,dim.height-_13.b],end:[0,0]},{name:"scale",start:[1,0],end:[1,1]},{name:"original"}]},this.animate)).play(); +} +this.dirty=false; +return this; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Default.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Default.js.uncompressed.js new file mode 100644 index 00000000..e551380a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Default.js.uncompressed.js @@ -0,0 +1,472 @@ +define("dojox/charting/plot2d/Default", ["dojo/_base/lang", "dojo/_base/declare", "dojo/_base/array", "dojo/has", + "./CartesianBase", "./_PlotEvents", "./common", "dojox/lang/functional", "dojox/lang/functional/reversed", "dojox/lang/utils", "dojox/gfx/fx"], + function(lang, declare, arr, has, CartesianBase, _PlotEvents, dc, df, dfr, du, fx){ + + /*===== + declare("dojox.charting.plot2d.__DefaultCtorArgs", dojox.charting.plot2d.__CartesianCtorArgs, { + // summary: + // The arguments used for any/most plots. + + // lines: Boolean? + // Whether or not to draw lines on this plot. Defaults to true. + lines: true, + + // areas: Boolean? + // Whether or not to draw areas on this plot. Defaults to false. + areas: false, + + // markers: Boolean? + // Whether or not to draw markers at data points on this plot. Default is false. + markers: false, + + // tension: Number|String? + // Whether or not to apply 'tensioning' to the lines on this chart. + // Options include a number, "X", "x", or "S"; if a number is used, the + // simpler bezier curve calculations are used to draw the lines. If X, x or S + // is used, the more accurate smoothing algorithm is used. + tension: "", + + // animate: Boolean?|Number? + // Whether or not to animate the chart to place. When a Number it specifies the duration of the animation. + // Default is false. + animate: false, + + // stroke: dojox.gfx.Stroke? + // An optional stroke to use for any series on the plot. + stroke: {}, + + // outline: dojox.gfx.Stroke? + // An optional stroke used to outline any series on the plot. + outline: {}, + + // shadow: dojox.gfx.Stroke? + // An optional stroke to use to draw any shadows for a series on a plot. + shadow: {}, + + // fill: dojox.gfx.Fill? + // Any fill to be used for elements on the plot (such as areas). + fill: {}, + + // filter: dojox.gfx.Filter? + // An SVG filter to be used for elements on the plot. gfx SVG renderer must be used and dojox/gfx/svgext must + // be required for this to work. + filter: {}, + + // styleFunc: Function? + // A function that returns a styling object for the a given data item. + styleFunc: null, + + // font: String? + // A font definition to be used for labels and other text-based elements on the plot. + font: "", + + // fontColor: String|dojo.Color? + // The color to be used for any text-based elements on the plot. + fontColor: "", + + // markerStroke: dojo.gfx.Stroke? + // An optional stroke to use for any markers on the plot. + markerStroke: {}, + + // markerOutline: dojo.gfx.Stroke? + // An optional outline to use for any markers on the plot. + markerOutline: {}, + + // markerShadow: dojo.gfx.Stroke? + // An optional shadow to use for any markers on the plot. + markerShadow: {}, + + // markerFill: dojo.gfx.Fill? + // An optional fill to use for any markers on the plot. + markerFill: {}, + + // markerFont: String? + // An optional font definition to use for any markers on the plot. + markerFont: "", + + // markerFontColor: String|dojo.Color? + // An optional color to use for any marker text on the plot. + markerFontColor: "", + + // enableCache: Boolean? + // Whether the markers are cached from one rendering to another. This improves the rendering performance of + // successive rendering but penalize the first rendering. Default false. + enableCache: false, + + // interpolate: Boolean? + // Whether when there is a null data point in the data the plot interpolates it or if the lines is split at that + // point. Default false. + interpolate: false + }); +=====*/ + + var purgeGroup = dfr.lambda("item.purgeGroup()"); + + var DEFAULT_ANIMATION_LENGTH = 1200; // in ms + + return declare("dojox.charting.plot2d.Default", [CartesianBase, _PlotEvents], { + + // defaultParams: + // The default parameters of this plot. + defaultParams: { + lines: true, // draw lines + areas: false, // draw areas + markers: false, // draw markers + tension: "", // draw curved lines (tension is "X", "x", or "S") + animate: false, // animate chart to place + enableCache: false, + interpolate: false + }, + + // optionalParams: + // The optional parameters of this plot. + optionalParams: { + // theme component + stroke: {}, + outline: {}, + shadow: {}, + fill: {}, + filter: {}, + styleFunc: null, + font: "", + fontColor: "", + marker: "", + markerStroke: {}, + markerOutline: {}, + markerShadow: {}, + markerFill: {}, + markerFont: "", + markerFontColor: "" + }, + + constructor: function(chart, kwArgs){ + // summary: + // Return a new plot. + // chart: dojox/charting/Chart + // The chart this plot belongs to. + // kwArgs: dojox.charting.plot2d.__DefaultCtorArgs? + // An optional arguments object to help define this plot. + this.opt = lang.clone(lang.mixin(this.opt, this.defaultParams)); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + // animation properties + this.animate = this.opt.animate; + }, + + createPath: function(run, creator, params){ + var path; + if(this.opt.enableCache && run._pathFreePool.length > 0){ + path = run._pathFreePool.pop(); + path.setShape(params); + // was cleared, add it back + creator.add(path); + }else{ + path = creator.createPath(params); + } + if(this.opt.enableCache){ + run._pathUsePool.push(path); + } + return path; + }, + + buildSegments: function(i, indexed){ + var run = this.series[i], + min = indexed?Math.max(0, Math.floor(this._hScaler.bounds.from - 1)):0, + max = indexed?Math.min(run.data.length, Math.ceil(this._hScaler.bounds.to)):run.data.length, + rseg = null, segments = []; + + // split the run data into dense segments (each containing no nulls) + // except if interpolates is false in which case ignore null between valid data + for(var j = min; j < max; j++){ + if(run.data[j] != null && (indexed || run.data[j].y != null)){ + if(!rseg){ + rseg = []; + segments.push({index: j, rseg: rseg}); + } + rseg.push((indexed && run.data[j].hasOwnProperty("y"))?run.data[j].y:run.data[j]); + }else{ + if(!this.opt.interpolate || indexed){ + // we break the line only if not interpolating or if we have indexed data + rseg = null; + } + } + } + return segments; + }, + + render: function(dim, offsets){ + // summary: + // Render/draw everything on this plot. + // dim: Object + // An object of the form { width, height } + // offsets: Object + // An object of the form { l, r, t, b } + // returns: dojox/charting/plot2d/Default + // A reference to this plot for functional chaining. + + // make sure all the series is not modified + if(this.zoom && !this.isDataDirty()){ + return this.performZoom(dim, offsets); + } + + this.resetEvents(); + this.dirty = this.isDirty(); + var s; + if(this.dirty){ + arr.forEach(this.series, purgeGroup); + this._eventSeries = {}; + this.cleanGroup(); + this.getGroup().setTransform(null); + s = this.getGroup(); + df.forEachRev(this.series, function(item){ item.cleanGroup(s); }); + } + var t = this.chart.theme, stroke, outline, events = this.events(); + + for(var i = this.series.length - 1; i >= 0; --i){ + var run = this.series[i]; + if(!this.dirty && !run.dirty){ + t.skip(); + this._reconnectEvents(run.name); + continue; + } + run.cleanGroup(); + if(this.opt.enableCache){ + run._pathFreePool = (run._pathFreePool?run._pathFreePool:[]).concat(run._pathUsePool?run._pathUsePool:[]); + run._pathUsePool = []; + } + if(!run.data.length){ + run.dirty = false; + t.skip(); + continue; + } + + var theme = t.next(this.opt.areas ? "area" : "line", [this.opt, run], true), + lpoly, + ht = this._hScaler.scaler.getTransformerFromModel(this._hScaler), + vt = this._vScaler.scaler.getTransformerFromModel(this._vScaler), + eventSeries = this._eventSeries[run.name] = new Array(run.data.length); + + s = run.group; + if(run.hidden){ + if(this.opt.lines){ + run.dyn.stroke = theme.series.stroke; + } + if(this.opt.markers){ + run.dyn.markerFill = theme.marker.fill; + run.dyn.markerStroke = theme.marker.stroke; + run.dyn.marker = theme.symbol; + } + if(this.opt.areas){ + run.dyn.fill = theme.series.fill; + } + continue; + } + // optim works only for index based case + var indexed = arr.some(run.data, function(item){ + return typeof item == "number" || (item && !item.hasOwnProperty("x")); + }); + + var rsegments = this.buildSegments(i, indexed); + for(var seg = 0; seg < rsegments.length; seg++){ + var rsegment = rsegments[seg]; + if(indexed){ + lpoly = arr.map(rsegment.rseg, function(v, i){ + return { + x: ht(i + rsegment.index + 1) + offsets.l, + y: dim.height - offsets.b - vt(v), + data: v + }; + }, this); + }else{ + lpoly = arr.map(rsegment.rseg, function(v){ + return { + x: ht(v.x) + offsets.l, + y: dim.height - offsets.b - vt(v.y), + data: v + }; + }, this); + } + + // if we are indexed & we interpolate we need to put all the segments as a single one now + if(indexed && this.opt.interpolate){ + while(seg < rsegments.length) { + seg++; + rsegment = rsegments[seg]; + if(rsegment){ + lpoly = lpoly.concat(arr.map(rsegment.rseg, function(v, i){ + return { + x: ht(i + rsegment.index + 1) + offsets.l, + y: dim.height - offsets.b - vt(v), + data: v + }; + }, this)); + } + } + } + + var lpath = this.opt.tension ? dc.curve(lpoly, this.opt.tension) : ""; + + if(this.opt.areas && lpoly.length > 1){ + var fill = this._plotFill(theme.series.fill, dim, offsets), apoly = lang.clone(lpoly); + if(this.opt.tension){ + var apath = "L" + apoly[apoly.length-1].x + "," + (dim.height - offsets.b) + + " L" + apoly[0].x + "," + (dim.height - offsets.b) + + " L" + apoly[0].x + "," + apoly[0].y; + run.dyn.fill = s.createPath(lpath + " " + apath).setFill(fill).getFill(); + } else { + apoly.push({x: lpoly[lpoly.length - 1].x, y: dim.height - offsets.b}); + apoly.push({x: lpoly[0].x, y: dim.height - offsets.b}); + apoly.push(lpoly[0]); + run.dyn.fill = s.createPolyline(apoly).setFill(fill).getFill(); + } + } + if(this.opt.lines || this.opt.markers){ + // need a stroke + stroke = theme.series.stroke; + if(theme.series.outline){ + outline = run.dyn.outline = dc.makeStroke(theme.series.outline); + outline.width = 2 * outline.width + stroke.width; + } + } + if(this.opt.markers){ + run.dyn.marker = theme.symbol; + } + var frontMarkers = null, outlineMarkers = null, shadowMarkers = null; + if(stroke && theme.series.shadow && lpoly.length > 1){ + var shadow = theme.series.shadow, + spoly = arr.map(lpoly, function(c){ + return {x: c.x + shadow.dx, y: c.y + shadow.dy}; + }); + if(this.opt.lines){ + if(this.opt.tension){ + run.dyn.shadow = s.createPath(dc.curve(spoly, this.opt.tension)).setStroke(shadow).getStroke(); + } else { + run.dyn.shadow = s.createPolyline(spoly).setStroke(shadow).getStroke(); + } + } + if(this.opt.markers && theme.marker.shadow){ + shadow = theme.marker.shadow; + shadowMarkers = arr.map(spoly, function(c){ + return this.createPath(run, s, "M" + c.x + " " + c.y + " " + theme.symbol). + setStroke(shadow).setFill(shadow.color); + }, this); + } + } + if(this.opt.lines && lpoly.length > 1){ + var shape; + if(outline){ + if(this.opt.tension){ + run.dyn.outline = s.createPath(lpath).setStroke(outline).getStroke(); + } else { + run.dyn.outline = s.createPolyline(lpoly).setStroke(outline).getStroke(); + } + } + if(this.opt.tension){ + run.dyn.stroke = (shape = s.createPath(lpath)).setStroke(stroke).getStroke(); + } else { + run.dyn.stroke = (shape = s.createPolyline(lpoly)).setStroke(stroke).getStroke(); + } + if(shape.setFilter && theme.series.filter){ + shape.setFilter(theme.series.filter); + } + } + var markerBox = null; + if(this.opt.markers){ + var markerTheme = theme; + frontMarkers = new Array(lpoly.length); + outlineMarkers = new Array(lpoly.length); + outline = null; + if(markerTheme.marker.outline){ + outline = dc.makeStroke(markerTheme.marker.outline); + outline.width = 2 * outline.width + (markerTheme.marker.stroke ? markerTheme.marker.stroke.width : 0); + } + arr.forEach(lpoly, function(c, i){ + if(this.opt.styleFunc || typeof c.data != "number"){ + var tMixin = typeof c.data != "number" ? [c.data] : []; + if(this.opt.styleFunc){ + tMixin.push(this.opt.styleFunc(c.data)); + } + markerTheme = t.addMixin(theme, "marker", tMixin, true); + }else{ + markerTheme = t.post(theme, "marker"); + } + var path = "M" + c.x + " " + c.y + " " + markerTheme.symbol; + if(outline){ + outlineMarkers[i] = this.createPath(run, s, path).setStroke(outline); + } + frontMarkers[i] = this.createPath(run, s, path).setStroke(markerTheme.marker.stroke).setFill(markerTheme.marker.fill); + }, this); + run.dyn.markerFill = markerTheme.marker.fill; + run.dyn.markerStroke = markerTheme.marker.stroke; + if(!markerBox && this.opt.labels){ + markerBox = frontMarkers[0].getBoundingBox(); + } + if(events){ + arr.forEach(frontMarkers, function(s, i){ + var o = { + element: "marker", + index: i + rsegment.index, + run: run, + shape: s, + outline: outlineMarkers[i] || null, + shadow: shadowMarkers && shadowMarkers[i] || null, + cx: lpoly[i].x, + cy: lpoly[i].y + }; + if(indexed){ + o.x = i + rsegment.index + 1; + o.y = run.data[i + rsegment.index]; + }else{ + o.x = rsegment.rseg[i].x; + o.y = run.data[i + rsegment.index].y; + } + this._connectEvents(o); + eventSeries[i + rsegment.index] = o; + }, this); + }else{ + delete this._eventSeries[run.name]; + } + } + if(this.opt.labels){ + var labelBoxW = markerBox?markerBox.width:2; + var labelBoxH = markerBox?markerBox.height:2; + arr.forEach(lpoly, function(c, i){ + if(this.opt.styleFunc || typeof c.data != "number"){ + var tMixin = typeof c.data != "number" ? [c.data] : []; + if(this.opt.styleFunc){ + tMixin.push(this.opt.styleFunc(c.data)); + } + markerTheme = t.addMixin(theme, "marker", tMixin, true); + }else{ + markerTheme = t.post(theme, "marker"); + } + this.createLabel(s, rsegment.rseg[i], { x: c.x - labelBoxW / 2, y: c.y - labelBoxH / 2, + width: labelBoxW , height: labelBoxH }, markerTheme); + }, this); + } + } + run.dirty = false; + } + // chart mirroring starts + if(has("dojo-bidi")){ + this._checkOrientation(this.group, dim, offsets); + } + // chart mirroring ends + if(this.animate){ + // grow from the bottom + var plotGroup = this.getGroup(); + fx.animateTransform(lang.delegate({ + shape: plotGroup, + duration: DEFAULT_ANIMATION_LENGTH, + transform:[ + {name:"translate", start: [0, dim.height - offsets.b], end: [0, 0]}, + {name:"scale", start: [1, 0], end:[1, 1]}, + {name:"original"} + ] + }, this.animate)).play(); + } + this.dirty = false; + return this; // dojox/charting/plot2d/Default + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Grid.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Grid.js new file mode 100644 index 00000000..8eb0a296 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Grid.js @@ -0,0 +1,182 @@ +//>>built +define("dojox/charting/plot2d/Grid",["dojo/_base/lang","dojo/_base/declare","dojo/_base/array","dojo/sniff","./CartesianBase","./common","dojox/lang/utils","dojox/gfx/fx"],function(_1,_2,_3,_4,_5,dc,du,fx){ +var _6=function(a,b){ +return a.value-b.value; +}; +return _2("dojox.charting.plot2d.Grid",_5,{defaultParams:{hMajorLines:true,hMinorLines:false,vMajorLines:true,vMinorLines:false,hStripes:false,vStripes:false,animate:null,enableCache:false,renderOnAxis:true},optionalParams:{majorHLine:{},minorHLine:{},majorVLine:{},minorVLine:{},hFill:{},vFill:{},hAlternateFill:{},vAlternateFill:{}},constructor:function(_7,_8){ +this.opt=_1.clone(this.defaultParams); +du.updateWithObject(this.opt,_8); +du.updateWithPattern(this.opt,_8,this.optionalParams); +this.animate=this.opt.animate; +if(this.opt.enableCache){ +this._lineFreePool=[]; +this._lineUsePool=[]; +this._rectFreePool=[]; +this._rectUsePool=[]; +} +},addSeries:function(_9){ +return this; +},getSeriesStats:function(){ +return _1.delegate(dc.defaultStats); +},cleanGroup:function(){ +this.inherited(arguments); +if(this.opt.enableCache){ +this._lineFreePool=this._lineFreePool.concat(this._lineUsePool); +this._lineUsePool=[]; +this._rectFreePool=this._rectFreePool.concat(this._rectUsePool); +this._rectUsePool=[]; +} +},createLine:function(_a,_b){ +var _c; +if(this.opt.enableCache&&this._lineFreePool.length>0){ +_c=this._lineFreePool.pop(); +_c.setShape(_b); +_a.add(_c); +}else{ +_c=_a.createLine(_b); +} +if(this.opt.enableCache){ +this._lineUsePool.push(_c); +} +return _c; +},createRect:function(_d,_e){ +var _f; +if(this.opt.enableCache&&this._rectFreePool.length>0){ +_f=this._rectFreePool.pop(); +_f.setShape(_e); +_d.add(_f); +}else{ +_f=_d.createRect(_e); +} +if(this.opt.enableCache){ +this._rectUsePool.push(_f); +} +return _f; +},render:function(dim,_10){ +if(this.zoom){ +return this.performZoom(dim,_10); +} +this.dirty=this.isDirty(); +if(!this.dirty){ +return this; +} +this.cleanGroup(); +var s=this.getGroup(),ta=this.chart.theme,_11,_12; +if((_4("ios")&&_4("ios")<6)||_4("android")||(_4("safari")&&!_4("ios"))){ +var w=Math.max(0,dim.width-_10.l-_10.r),h=Math.max(0,dim.height-_10.t-_10.b); +s.createRect({x:_10.l,y:_10.t,width:w,height:h}); +} +if(this._vAxis){ +_12=this._vAxis.getTicks(); +var _13=this._vAxis.getScaler(); +if(_12!=null&&_13!=null){ +var vt=_13.scaler.getTransformerFromModel(_13); +if(this.opt.hStripes){ +this._renderHRect(_12,ta.grid,dim,_10,_13,vt); +} +if(this.opt.hMinorLines){ +_11=this.opt.minorHLine||(ta.grid&&ta.grid.minorLine)||ta.axis.minorTick; +this._renderHLines(_12.minor,_11,dim,_10,_13,vt); +} +if(this.opt.hMajorLines){ +_11=this.opt.majorHLine||(ta.grid&&ta.grid.majorLine)||ta.axis.majorTick; +this._renderHLines(_12.major,_11,dim,_10,_13,vt); +} +} +} +if(this._hAxis){ +_12=this._hAxis.getTicks(); +var _14=this._hAxis.getScaler(); +if(_12!=null&&_14!=null){ +var ht=_14.scaler.getTransformerFromModel(_14); +if(this.opt.vStripes){ +this._renderVRect(_12,ta.grid,dim,_10,_14,ht); +} +if(_12&&this.opt.vMinorLines){ +_11=this.opt.minorVLine||(ta.grid&&ta.grid.minorLine)||ta.axis.minorTick; +this._renderVLines(_12.minor,_11,dim,_10,_14,ht); +} +if(_12&&this.opt.vMajorLines){ +_11=this.opt.majorVLine||(ta.grid&&ta.grid.majorLine)||ta.axis.majorTick; +this._renderVLines(_12.major,_11,dim,_10,_14,ht); +} +} +} +this.dirty=false; +return this; +},_renderHLines:function(_15,_16,dim,_17,_18,vt){ +var s=this.getGroup(); +_3.forEach(_15,function(_19){ +if(!this.opt.renderOnAxis&&_19.value==(this._vAxis.opt.leftBottom?_18.bounds.from:_18.bounds.to)){ +return; +} +var y=dim.height-_17.b-vt(_19.value); +var _1a=this.createLine(s,{x1:_17.l,y1:y,x2:dim.width-_17.r,y2:y}).setStroke(_16); +if(this.animate){ +this._animateGrid(_1a,"h",_17.l,_17.r+_17.l-dim.width); +} +},this); +},_renderVLines:function(_1b,_1c,dim,_1d,_1e,ht){ +var s=this.getGroup(); +_3.forEach(_1b,function(_1f){ +if(!this.opt.renderOnAxis&&_1f.value==(this._hAxis.opt.leftBottom?_1e.bounds.from:_1e.bounds.to)){ +return; +} +var x=_1d.l+ht(_1f.value); +var _20=this.createLine(s,{x1:x,y1:_1d.t,x2:x,y2:dim.height-_1d.b}).setStroke(_1c); +if(this.animate){ +this._animateGrid(_20,"v",dim.height-_1d.b,dim.height-_1d.b-_1d.t); +} +},this); +},_renderHRect:function(_21,_22,dim,_23,_24,vt){ +var _25,_26,y,y2,_27; +var _28=_21.major.concat(_21.minor); +_28.sort(_6); +if(_28[0].value>_24.bounds.from){ +_28.splice(0,0,{value:_24.bounds.from}); +} +if(_28[_28.length-1].value<_24.bounds.to){ +_28.push({value:_24.bounds.to}); +} +var s=this.getGroup(); +for(var j=0;j<_28.length-1;j++){ +_26=_28[j]; +y=dim.height-_23.b-vt(_26.value); +y2=dim.height-_23.b-vt(_28[j+1].value); +_25=(j%2==0)?(this.opt.hAlternateFill||(_22&&_22.alternateFill)):(this.opt.hFill||(_22&&_22.fill)); +if(_25){ +_27=this.createRect(s,{x:_23.l,y:y,width:dim.width-_23.r,height:y-y2}).setFill(_25); +if(this.animate){ +this._animateGrid(_27,"h",_23.l,_23.r+_23.l-dim.width); +} +} +} +},_renderVRect:function(_29,_2a,dim,_2b,_2c,ht){ +var _2d,_2e,x,x2,_2f; +var _30=_29.major.concat(_29.minor); +_30.sort(_6); +if(_30[0].value>_2c.bounds.from){ +_30.splice(0,0,{value:_2c.bounds.from}); +} +if(_30[_30.length-1].value<_2c.bounds.to){ +_30.push({value:_2c.bounds.to}); +} +var s=this.getGroup(); +for(var j=0;j<_30.length-1;j++){ +_2e=_30[j]; +x=_2b.l+ht(_2e.value); +x2=_2b.l+ht(_30[j+1].value); +_2d=(j%2==0)?(this.opt.vAlternateFill||(_2a&&_2a.alternateFill)):(this.opt.vFill||(_2a&&_2a.fill)); +if(_2d){ +_2f=this.createRect(s,{x:x,y:_2b.t,width:x2-x,height:dim.width-_2b.r}).setFill(_2d); +if(this.animate){ +this._animateGrid(_2f,"v",dim.height-_2b.b,dim.height-_2b.b-_2b.t); +} +} +} +},_animateGrid:function(_31,_32,_33,_34){ +var _35=_32=="h"?[_33,0]:[0,_33]; +var _36=_32=="h"?[1/_34,1]:[1,1/_34]; +fx.animateTransform(_1.delegate({shape:_31,duration:1200,transform:[{name:"translate",start:_35,end:[0,0]},{name:"scale",start:_36,end:[1,1]},{name:"original"}]},this.animate)).play(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Grid.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Grid.js.uncompressed.js new file mode 100644 index 00000000..a97afdd3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Grid.js.uncompressed.js @@ -0,0 +1,356 @@ +define("dojox/charting/plot2d/Grid", ["dojo/_base/lang", "dojo/_base/declare", "dojo/_base/array", "dojo/sniff", + "./CartesianBase", "./common", "dojox/lang/utils", "dojox/gfx/fx"], + function(lang, declare, arr, has, CartesianBase, dc, du, fx){ + + var sortTicks = function(a,b){return a.value - b.value}; + + /*===== + declare("dojox.charting.plot2d.__GridCtorArgs", dojox.charting.plot2d.__CartesianCtorArgs, { + // summary: + // A special keyword arguments object that is specific to a grid "plot". + + // majorHLine: dojox.gfx.Stroke? + // An optional dojox.gfx.Stroke for a major horizontal line. By default major lines use major tick stroke. + majorHLine:undefined, + + // minorHLine: dojox.gfx.Stroke? + // An optional dojox.gfx.Stroke for a minor horizontal line. By default minor lines use minor tick stroke. + minorHLine:undefined, + + // majorVLine: dojox.gfx.Stroke? + // An optional dojox.gfx.Stroke for a major vertical line. By default major lines use major tick stroke. + majorVLine:undefined, + + // minorVLine: dojox.gfx.Stroke? + // An optional dojox.gfx.Stroke for a minor vertical line. By default major lines use major tick stroke. + minorVLine:undefined, + + // hFill: dojox.gfx.Fill? + // An optional dojox.gfx.Fill used to fill every other horizontal stripe created by grid lines. + hFill: undefined, + + // hAlternateFill: dojox.gfx.Fill? + // An optional dojox.gfx.Fill used to fill alternating horizontal stripe created by grid lines not filled by `hFill`. + hAlternateFill: undefined, + + // vFill: dojox.gfx.Fill? + // An optional dojox.gfx.Fill used to fill every other vertical stripe created by grid lines. + vFill: undefined, + + // vAlternateFill: dojox.gfx.Fill? + // An optional dojox.gfx.Fill used to fill alternating vertical stripe created by grid lines not filled by `vFill`. + vAlternateFill: undefined, + + // hMajorLines: Boolean? + // Whether to show lines at the major ticks along the horizontal axis. Default is true. + hMajorLines: true, + + // hMinorLines: Boolean? + // Whether to show lines at the minor ticks along the horizontal axis. Default is false. + hMinorLines: false, + + // vMajorLines: Boolean? + // Whether to show lines at the major ticks along the vertical axis. Default is true. + vMajorLines: true, + + // vMinorLines: Boolean? + // Whether to show lines at the major ticks along the vertical axis. Default is false. + vMinorLines: false, + + // hStripes: Boolean? + // Whether to show horizontal stripes. Default is false. + hStripes: false, + + // vStripes: Boolean? + // Whether to show vertical stripes. Default is false. + vStripes: false, + + // enableCache: Boolean? + // Whether the grid lines are cached from one rendering to another. This improves the rendering performance of + // successive rendering but penalize the first rendering. Default false. + enableCache: false, + + // renderOnAxis: Boolean? + // Whether or not the grid is rendered when drawn at horizontal or vertical axis position. Default is true. + renderOnAxis: true + }); + =====*/ + + return declare("dojox.charting.plot2d.Grid", CartesianBase, { + // summary: + // A "faux" plot that can be placed behind other plots to represent + // a grid against which other plots can be easily measured. + defaultParams: { + hMajorLines: true, // draw horizontal major lines + hMinorLines: false, // draw horizontal minor lines + vMajorLines: true, // draw vertical major lines + vMinorLines: false, // draw vertical minor lines + hStripes: false, // draw vertical stripes + vStripes: false, // draw vertical stripes + animate: null, // animate bars into place + enableCache: false, + renderOnAxis: true + }, + + optionalParams: { + majorHLine: {}, + minorHLine: {}, + majorVLine: {}, + minorVLine: {}, + hFill: {}, + vFill: {}, + hAlternateFill: {}, + vAlternateFill: {} + }, + + constructor: function(chart, kwArgs){ + // summary: + // Create the faux Grid plot. + // chart: dojox/charting/Chart + // The chart this plot belongs to. + // kwArgs: dojox.charting.plot2d.__GridCtorArgs? + // An optional keyword arguments object to help define the parameters of the underlying grid. + this.opt = lang.clone(this.defaultParams); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + this.animate = this.opt.animate; + if(this.opt.enableCache){ + this._lineFreePool = []; + this._lineUsePool = []; + this._rectFreePool = []; + this._rectUsePool = []; + } + }, + addSeries: function(run){ + // summary: + // Ignored but included as a dummy method. + // returns: dojox/charting/plot2d/Grid + // The reference to this plot for functional chaining. + return this; // dojox/charting/plot2d/Grid + }, + getSeriesStats: function(){ + // summary: + // Returns default stats (irrelevant for this type of plot). + // returns: Object + // {hmin, hmax, vmin, vmax} min/max in both directions. + return lang.delegate(dc.defaultStats); // Object + }, + cleanGroup: function(){ + this.inherited(arguments); + if(this.opt.enableCache){ + this._lineFreePool = this._lineFreePool.concat(this._lineUsePool); + this._lineUsePool = []; + this._rectFreePool = this._rectFreePool.concat(this._rectUsePool); + this._rectUsePool = []; + } + }, + createLine: function(creator, params){ + var line; + if(this.opt.enableCache && this._lineFreePool.length > 0){ + line = this._lineFreePool.pop(); + line.setShape(params); + // was cleared, add it back + creator.add(line); + }else{ + line = creator.createLine(params); + } + if(this.opt.enableCache){ + this._lineUsePool.push(line); + } + return line; + }, + createRect: function(creator, params){ + var rect; + if(this.opt.enableCache && this._rectFreePool.length > 0){ + rect = this._rectFreePool.pop(); + rect.setShape(params); + // was cleared, add it back + creator.add(rect); + }else{ + rect = creator.createRect(params); + } + if(this.opt.enableCache){ + this._rectUsePool.push(rect); + } + return rect; + }, + + render: function(dim, offsets){ + // summary: + // Render the plot on the chart. + // dim: Object + // An object of the form { width, height }. + // offsets: Object + // An object of the form { l, r, t, b }. + // returns: dojox/charting/plot2d/Grid + // A reference to this plot for functional chaining. + if(this.zoom){ + return this.performZoom(dim, offsets); + } + this.dirty = this.isDirty(); + if(!this.dirty){ return this; } + this.cleanGroup(); + var s = this.getGroup(), ta = this.chart.theme, lineStroke, ticks; + if((has("ios") && has("ios") < 6) || has("android") || (has("safari") && !has("ios"))){ + // clipping seems buggy in some mobile Webkit browser and Safari desktop + // it does not clip correctly if only lines are present => create a invisible rectangle... + var w = Math.max(0, dim.width - offsets.l - offsets.r), + h = Math.max(0, dim.height - offsets.t - offsets.b); + s.createRect({ x: offsets.l, y: offsets.t, width: w, height: h}); + } + if(this._vAxis){ + // draw horizontal stripes and lines + ticks = this._vAxis.getTicks(); + var vScaler = this._vAxis.getScaler(); + if(ticks != null && vScaler != null){ + var vt = vScaler.scaler.getTransformerFromModel(vScaler); + if(this.opt.hStripes){ + this._renderHRect(ticks, ta.grid, dim, offsets, vScaler, vt); + } + if(this.opt.hMinorLines){ + lineStroke = this.opt.minorHLine || (ta.grid && ta.grid.minorLine) || ta.axis.minorTick; + this._renderHLines(ticks.minor, lineStroke, dim, offsets, vScaler, vt); + } + if(this.opt.hMajorLines){ + lineStroke = this.opt.majorHLine || (ta.grid && ta.grid.majorLine) || ta.axis.majorTick; + this._renderHLines(ticks.major, lineStroke, dim, offsets, vScaler, vt); + } + } + + } + if(this._hAxis){ + // draw vertical stripes and lines + ticks = this._hAxis.getTicks(); + var hScaler = this._hAxis.getScaler(); + if(ticks != null && hScaler != null){ + var ht = hScaler.scaler.getTransformerFromModel(hScaler); + if(this.opt.vStripes){ + this._renderVRect(ticks, ta.grid, dim, offsets, hScaler, ht); + } + if(ticks && this.opt.vMinorLines){ + lineStroke = this.opt.minorVLine || (ta.grid && ta.grid.minorLine) || ta.axis.minorTick; + this._renderVLines(ticks.minor, lineStroke, dim, offsets, hScaler, ht); + } + if(ticks && this.opt.vMajorLines){ + lineStroke = this.opt.majorVLine || (ta.grid && ta.grid.majorLine) || ta.axis.majorTick; + this._renderVLines(ticks.major, lineStroke, dim, offsets, hScaler, ht); + } + + } + } + this.dirty = false; + return this; // dojox/charting/plot2d/Grid + }, + _renderHLines: function(ticks, lineStroke, dim, offsets, vScaler, vt){ + var s = this.getGroup(); + arr.forEach(ticks, function(tick){ + if(!this.opt.renderOnAxis && tick.value == (this._vAxis.opt.leftBottom?vScaler.bounds.from:vScaler.bounds.to)){ + return; + } + var y = dim.height - offsets.b - vt(tick.value); + var hLine = this.createLine(s, { + x1: offsets.l, + y1: y, + x2: dim.width - offsets.r, + y2: y + }).setStroke(lineStroke); + if(this.animate){ + this._animateGrid(hLine, "h", offsets.l, offsets.r + offsets.l - dim.width); + } + }, this); + }, + _renderVLines: function(ticks, lineStroke, dim, offsets, hScaler, ht){ + var s = this.getGroup(); + arr.forEach(ticks, function(tick){ + if(!this.opt.renderOnAxis && tick.value == (this._hAxis.opt.leftBottom?hScaler.bounds.from:hScaler.bounds.to)){ + return; + } + var x = offsets.l + ht(tick.value); + var vLine = this.createLine(s, { + x1: x, + y1: offsets.t, + x2: x, + y2: dim.height - offsets.b + }).setStroke(lineStroke); + if(this.animate){ + this._animateGrid(vLine, "v", dim.height - offsets.b, dim.height - offsets.b - offsets.t); + } + }, this); + }, + _renderHRect: function(ticks, theme, dim, offsets, vScaler, vt){ + var fill, tick, y, y2, hStripe; + var allTicks = ticks.major.concat(ticks.minor); + allTicks.sort(sortTicks); + if(allTicks[0].value > vScaler.bounds.from){ + allTicks.splice(0, 0, {value: vScaler.bounds.from}); + } + if(allTicks[allTicks.length - 1].value < vScaler.bounds.to){ + allTicks.push({value: vScaler.bounds.to}); + } + var s = this.getGroup(); + for(var j = 0; j < allTicks.length - 1; j++){ + tick = allTicks[j]; + y = dim.height - offsets.b - vt(tick.value); + y2 = dim.height - offsets.b - vt(allTicks[j+1].value); + + fill = (j%2 == 0)?(this.opt.hAlternateFill ||(theme && theme.alternateFill)): + (this.opt.hFill || (theme && theme.fill)); + if(fill){ + hStripe = this.createRect(s, { + x: offsets.l, + y: y, + width: dim.width - offsets.r, + height: y - y2 + }).setFill(fill); + if(this.animate){ + this._animateGrid(hStripe, "h", offsets.l, offsets.r + offsets.l - dim.width); + } + } + } + }, + _renderVRect: function(ticks, theme, dim, offsets, hScaler, ht){ + var fill, tick, x, x2, vStripe; + var allTicks = ticks.major.concat(ticks.minor); + allTicks.sort(sortTicks); + if(allTicks[0].value > hScaler.bounds.from){ + allTicks.splice(0, 0, {value: hScaler.bounds.from}); + } + if(allTicks[allTicks.length - 1].value < hScaler.bounds.to){ + allTicks.push({value: hScaler.bounds.to}); + } + var s = this.getGroup(); + for(var j = 0; j < allTicks.length - 1; j++){ + tick = allTicks[j]; + x = offsets.l + ht(tick.value); + x2 = offsets.l + ht(allTicks[j+1].value); + + fill = (j%2 == 0)?(this.opt.vAlternateFill ||(theme && theme.alternateFill)): + (this.opt.vFill || (theme && theme.fill)); + if(fill){ + vStripe = this.createRect(s, { + x: x, + y: offsets.t, + width: x2 - x, + height: dim.width - offsets.r + }).setFill(fill); + if(this.animate){ + this._animateGrid(vStripe, "v", dim.height - offsets.b, dim.height - offsets.b - offsets.t); + } + } + } + }, + _animateGrid: function(shape, type, offset, size){ + var transStart = type == "h" ? [offset, 0] : [0, offset]; + var scaleStart = type == "h" ? [1/size, 1] : [1, 1/size]; + fx.animateTransform(lang.delegate({ + shape: shape, + duration: 1200, + transform: [ + {name: "translate", start: transStart, end: [0, 0]}, + {name: "scale", start: scaleStart, end: [1, 1]}, + {name: "original"} + ] + }, this.animate)).play(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Indicator.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Indicator.js new file mode 100644 index 00000000..478209e5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Indicator.js @@ -0,0 +1,250 @@ +//>>built +define("dojox/charting/plot2d/Indicator",["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","./CartesianBase","./_PlotEvents","./common","../axis2d/common","dojox/gfx","dojox/lang/utils","dojox/gfx/fx","dojo/has"],function(_1,_2,_3,_4,_5,_6,_7,_8,du,fx,_9){ +var _a=function(_b){ +return _c(_b,_b.getShape().text); +}; +var _c=function(s,t){ +var c=s.declaredClass; +var w,h; +if(c.indexOf("svg")!=-1){ +try{ +return _1.mixin({},s.rawNode.getBBox()); +} +catch(e){ +return null; +} +}else{ +if(c.indexOf("vml")!=-1){ +var _d=s.rawNode,_e=_d.style.display; +_d.style.display="inline"; +w=_8.pt2px(parseFloat(_d.currentStyle.width)); +h=_8.pt2px(parseFloat(_d.currentStyle.height)); +var sz={x:0,y:0,width:w,height:h}; +_f(s,sz); +_d.style.display=_e; +return sz; +}else{ +if(c.indexOf("silverlight")!=-1){ +var bb={width:s.rawNode.actualWidth,height:s.rawNode.actualHeight}; +return _f(s,bb,0.75); +}else{ +if(s.getTextWidth){ +w=s.getTextWidth(); +var _10=s.getFont(); +var fz=_10?_10.size:_8.defaultFont.size; +h=_8.normalizedLength(fz); +sz={width:w,height:h}; +_f(s,sz,0.75); +return sz; +} +} +} +} +return null; +}; +var _f=function(s,sz,_11){ +var _12=sz.width,_13=sz.height,sh=s.getShape(),_14=sh.align; +switch(_14){ +case "end": +sz.x=sh.x-_12; +break; +case "middle": +sz.x=sh.x-_12/2; +break; +case "start": +default: +sz.x=sh.x; +break; +} +_11=_11||1; +sz.y=sh.y-_13*_11; +return sz; +}; +var _15=_3("dojox.charting.plot2d.Indicator",[_4,_5],{defaultParams:{vertical:true,fixed:true,precision:0,lines:true,labels:"line",markers:true},optionalParams:{lineStroke:{},outlineStroke:{},shadowStroke:{},lineFill:{},stroke:{},outline:{},shadow:{},fill:{},fillFunc:null,labelFunc:null,font:"",fontColor:"",markerStroke:{},markerOutline:{},markerShadow:{},markerFill:{},markerSymbol:"",values:[],offset:{},start:false,animate:false},constructor:function(_16,_17){ +this.opt=_1.clone(this.defaultParams); +du.updateWithObject(this.opt,_17); +if(typeof _17.values=="number"){ +_17.values=[_17.values]; +} +du.updateWithPattern(this.opt,_17,this.optionalParams); +this.animate=this.opt.animate; +},render:function(dim,_18){ +if(this.zoom){ +return this.performZoom(dim,_18); +} +if(!this.isDirty()){ +return this; +} +this.cleanGroup(null,true); +if(!this.opt.values){ +return this; +} +this._updateIndicator(); +return this; +},_updateIndicator:function(){ +var t=this.chart.theme; +var hn=this._hAxis.name,vn=this._vAxis.name,hb=this._hAxis.getScaler().bounds,vb=this._vAxis.getScaler().bounds; +var o={}; +o[hn]=hb.from; +o[vn]=vb.from; +var min=this.toPage(o); +o[hn]=hb.to; +o[vn]=vb.to; +var max=this.toPage(o); +var _19=this.events(); +var _1a=_2.map(this.opt.values,function(_1b,_1c){ +return this._renderIndicator(_1b,_1c,hn,vn,min,max,_19,this.animate); +},this); +var _1d=_1a.length; +if(this.opt.labels=="trend"){ +var v=this.opt.vertical; +var _1e=this._data[0][0]; +var _1f=this._data[_1d-1][0]; +var _20=_1f-_1e; +var _21=this.opt.labelFunc?this.opt.labelFunc(-1,this.values,this._data,this.opt.fixed,this.opt.precision):(_6.getLabel(_20,this.opt.fixed,this.opt.precision)+" ("+_6.getLabel(100*_20/_1e,true,2)+"%)"); +this._renderText(this.getGroup(),_21,this.chart.theme,v?(_1a[0].x+_1a[_1d-1].x)/2:_1a[1].x,v?_1a[0].y:(_1a[1].y+_1a[_1d-1].y)/2,-1,this.opt.values,this._data); +} +var _22=this.opt.lineFill!=undefined?this.opt.lineFill:t.indicator.lineFill; +if(_22&&_1d>1){ +var x0=Math.min(_1a[0].x1,_1a[_1d-1].x1); +var y0=Math.min(_1a[0].y1,_1a[_1d-1].y1); +var r=this.getGroup().createRect({x:x0,y:y0,width:Math.max(_1a[0].x2,_1a[_1d-1].x2)-x0,height:Math.max(_1a[0].y2,_1a[_1d-1].y2)-y0}).setFill(_22); +r.moveToBack(); +} +},_renderIndicator:function(_23,_24,hn,vn,min,max,_25,_26){ +var t=this.chart.theme,c=this.chart.getCoords(),v=this.opt.vertical; +var g=this.getGroup().createGroup(); +var _27={}; +_27[hn]=v?_23:0; +_27[vn]=v?0:_23; +if(_9("dojo-bidi")){ +_27.x=this._getMarkX(_27.x); +} +_27=this.toPage(_27); +var _28=v?_27.x>=min.x&&_27.x<=max.x:_27.y>=max.y&&_27.y<=min.y; +var cx=_27.x-c.x,cy=_27.y-c.y; +var x1=v?cx:min.x-c.x,y1=v?min.y-c.y:cy,x2=v?x1:max.x-c.x,y2=v?max.y-c.y:y1; +if(this.opt.lines&&_28){ +var sh=this.opt.hasOwnProperty("lineShadow")?this.opt.lineShadow:t.indicator.lineShadow,ls=this.opt.hasOwnProperty("lineStroke")?this.opt.lineStroke:t.indicator.lineStroke,ol=this.opt.hasOwnProperty("lineOutline")?this.opt.lineOutline:t.indicator.lineOutline; +if(sh){ +g.createLine({x1:x1+sh.dx,y1:y1+sh.dy,x2:x2+sh.dx,y2:y2+sh.dy}).setStroke(sh); +} +if(ol){ +ol=_6.makeStroke(ol); +ol.width=2*ol.width+(ls?ls.width:0); +g.createLine({x1:x1,y1:y1,x2:x2,y2:y2}).setStroke(ol); +} +g.createLine({x1:x1,y1:y1,x2:x2,y2:y2}).setStroke(ls); +} +var _29; +if(this.opt.markers&&_28){ +var d=this._data[_24]; +var _2a=this; +if(d){ +_29=_2.map(d,function(_2b,_2c){ +_27[hn]=v?_23:_2b; +_27[vn]=v?_2b:_23; +if(_9("dojo-bidi")){ +_27.x=_2a._getMarkX(_27.x); +} +_27=this.toPage(_27); +if(v?_27.y<=min.y&&_27.y>=max.y:_27.x>=min.x&&_27.x<=max.x){ +cx=_27.x-c.x; +cy=_27.y-c.y; +var ms=this.opt.markerSymbol?this.opt.markerSymbol:t.indicator.markerSymbol,_2d="M"+cx+" "+cy+" "+ms; +sh=this.opt.markerShadow!=undefined?this.opt.markerShadow:t.indicator.markerShadow; +ls=this.opt.markerStroke!=undefined?this.opt.markerStroke:t.indicator.markerStroke; +ol=this.opt.markerOutline!=undefined?this.opt.markerOutline:t.indicator.markerOutline; +if(sh){ +var sp="M"+(cx+sh.dx)+" "+(cy+sh.dy)+" "+ms; +g.createPath(sp).setFill(sh.color).setStroke(sh); +} +if(ol){ +ol=_6.makeStroke(ol); +ol.width=2*ol.width+(ls?ls.width:0); +g.createPath(_2d).setStroke(ol); +} +var _2e=g.createPath(_2d); +var sf=this._shapeFill(this.opt.markerFill!=undefined?this.opt.markerFill:t.indicator.markerFill,_2e.getBoundingBox()); +_2e.setFill(sf).setStroke(ls); +} +return _2b; +},this); +} +} +var _2f; +if(this.opt.start){ +_2f={x:v?x1:x1,y:v?y1:y2}; +}else{ +_2f={x:v?x1:x2,y:v?y2:y1}; +} +if(this.opt.labels&&this.opt.labels!="trend"&&_28){ +var _30; +if(this.opt.labelFunc){ +_30=this.opt.labelFunc(_24,this.opt.values,this._data,this.opt.fixed,this.opt.precision,this.opt.labels); +}else{ +if(this.opt.labels=="markers"){ +_30=_2.map(_29,function(_31){ +return _6.getLabel(_31,this.opt.fixed,this.opt.precision); +},this); +_30=_30.length!=1?"[ "+_30.join(", ")+" ]":_30[0]; +}else{ +_30=_6.getLabel(_23,this.opt.fixed,this.opt.precision); +} +} +this._renderText(g,_30,t,_2f.x,_2f.y,_24,this.opt.values,this._data); +} +if(_25){ +this._connectEvents({element:"indicator",run:this.run?this.run[_24]:undefined,shape:g,value:_23}); +} +if(_26){ +this._animateIndicator(g,v,v?y1:x1,v?(y1+y2):(x1+x2),_26); +} +return _1.mixin(_2f,{x1:x1,y1:y1,x2:x2,y2:y2}); +},_animateIndicator:function(_32,_33,_34,_35,_36){ +var _37=_33?[0,_34]:[_34,0]; +var _38=_33?[1,1/_35]:[1/_35,1]; +fx.animateTransform(_1.delegate({shape:_32,duration:1200,transform:[{name:"translate",start:_37,end:[0,0]},{name:"scale",start:_38,end:[1,1]},{name:"original"}]},_36)).play(); +},clear:function(){ +this.inherited(arguments); +this._data=[]; +},addSeries:function(run){ +this.inherited(arguments); +this._data.push(run.data); +},_renderText:function(g,_39,t,x,y,_3a,_3b,_3c){ +if(this.opt.offset){ +x+=this.opt.offset.x; +y+=this.opt.offset.y; +} +var _3d=_7.createText.gfx(this.chart,g,x,y,"middle",_39,this.opt.font?this.opt.font:t.indicator.font,this.opt.fontColor?this.opt.fontColor:t.indicator.fontColor); +var b=_a(_3d); +b.x-=2; +b.y-=1; +b.width+=4; +b.height+=2; +b.r=this.opt.radius?this.opt.radius:t.indicator.radius; +var sh=this.opt.shadow!=undefined?this.opt.shadow:t.indicator.shadow,ls=this.opt.stroke!=undefined?this.opt.stroke:t.indicator.stroke,ol=this.opt.outline!=undefined?this.opt.outline:t.indicator.outline; +if(sh){ +g.createRect(b).setFill(sh.color).setStroke(sh); +} +if(ol){ +ol=_6.makeStroke(ol); +ol.width=2*ol.width+(ls?ls.width:0); +g.createRect(b).setStroke(ol); +} +var f=this.opt.fillFunc?this.opt.fillFunc(_3a,_3b,_3c):(this.opt.fill!=undefined?this.opt.fill:t.indicator.fill); +g.createRect(b).setFill(this._shapeFill(f,b)).setStroke(ls); +_3d.moveToFront(); +},getSeriesStats:function(){ +return _1.delegate(_6.defaultStats); +}}); +if(_9("dojo-bidi")){ +_15.extend({_getMarkX:function(x){ +if(this.chart.isRightToLeft()){ +return this.chart.axes.x.scaler.bounds.to+this.chart.axes.x.scaler.bounds.from-x; +} +return x; +}}); +} +return _15; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Indicator.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Indicator.js.uncompressed.js new file mode 100644 index 00000000..38aff340 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Indicator.js.uncompressed.js @@ -0,0 +1,493 @@ +define("dojox/charting/plot2d/Indicator", ["dojo/_base/lang", "dojo/_base/array", "dojo/_base/declare", "./CartesianBase", "./_PlotEvents", "./common", + "../axis2d/common", "dojox/gfx", "dojox/lang/utils", "dojox/gfx/fx", "dojo/has"], + function(lang, array, declare, CartesianBase, _PlotEvents, dcpc, dcac, gfx, du, fx, has){ + + // all the code below should be removed when http://trac.dojotoolkit.org/ticket/11299 will be available + var getBoundingBox = function(shape){ + return getTextBBox(shape, shape.getShape().text); + }; + var getTextBBox = function(s, t){ + var c = s.declaredClass; + var w, h; + if(c.indexOf("svg")!=-1){ + // try/catch the FF native getBBox error. cheaper than walking up in the DOM + // hierarchy to check the conditions (bench show /10 ) + try { + return lang.mixin({}, s.rawNode.getBBox()); + }catch (e){ + return null; + } + }else if(c.indexOf("vml")!=-1){ + var rawNode = s.rawNode, _display = rawNode.style.display; + rawNode.style.display = "inline"; + w = gfx.pt2px(parseFloat(rawNode.currentStyle.width)); + h = gfx.pt2px(parseFloat(rawNode.currentStyle.height)); + var sz = {x: 0, y: 0, width: w, height: h}; + // in VML, the width/height we get are in view coordinates + // in our case we don't zoom the view so that is ok + // It's impossible to get the x/y from the currentStyle.left/top, + // because all negative coordinates are 'clipped' to 0. + // (x:0 + translate(-100) -> x=0 + computeLocation(s, sz); + rawNode.style.display = _display; + return sz; + }else if(c.indexOf("silverlight")!=-1){ + var bb = {width: s.rawNode.actualWidth, height: s.rawNode.actualHeight}; + return computeLocation(s, bb, 0.75); + }else if(s.getTextWidth){ + // canvas + w = s.getTextWidth(); + var font = s.getFont(); + var fz = font ? font.size : gfx.defaultFont.size; + h = gfx.normalizedLength(fz); + sz = {width: w, height: h}; + computeLocation(s, sz, 0.75); + return sz; + } + return null; + }; + var computeLocation = function(s, sz, coef){ + var width = sz.width, height = sz.height, sh = s.getShape(), align = sh.align; + switch (align) { + case "end": + sz.x = sh.x - width; + break; + case "middle": + sz.x = sh.x - width / 2; + break; + case "start": + default: + sz.x = sh.x; + break; + } + coef = coef || 1; + sz.y = sh.y - height*coef; // rough approximation of the ascent!... + return sz; + }; + + /*===== + declare("dojox.charting.plot2d.__IndicatorCtorArgs", dojox.charting.plot2d.__CartesianCtorArgs, { + // summary: + // A special keyword arguments object that is specific to a indicator "plot". + + // lines: Boolean? + // Whether the indicator lines are visible or not. The lines are displayed for each of the + // 'values' of the indicator. Default is true. + lines: true, + + // labels: String? + // Describes how the indicator labels are displayed. + // Possible values are: + // `"line"` for displaying the value of each indicator line, + // `"marker"` for displaying the values of the markers of each indicator line, + // `"trend"` for displaying the percentage variation from the first to the last indicator line, + // `"none"` to prevent any label to display. + // Default is "line". + labels: "line", + + // markers: Boolean? + // Whether the markers on the indicator lines are visible or not. The markers are displayed for each + // of the indicator lines using the series attached to the indicator plot. Default is true. + markers: true, + + // values: Boolean + // The data values at which each of the indicator line is drawn. For a single value a Number can be provided + // otherwise an Array of Number is required. fault is []. + values: [], + + // offset: {x, y}? + // A pair of (x, y) pixel coordinate to specifiy the offset between the end of the indicator line and the + // position at which the labels are rendered. Default is no offset. + offset: {}, + + // start: Boolean? + // Whether the label is rendered at the start or end of the indicator line. Default is false meaning end of + // the line. + start: false, + + // animate: Boolean?|Number? + // Whether or not to animate the chart to place. When a Number it specifies the duration of the animation. + // Default is false. + animate: false, + + // vertical: Boolean? + // Whether the indicator is vertical or not. Default is true. + vertical: true, + + // fixed: Boolean? + // Whether a fixed precision must be applied to data values for display. Default is true. + fixed: true, + + // precision: Number? + // The precision at which to round data values for display. Default is 0. + precision: 0, + + // lineStroke: dojo/gfx/Stroke? + // An optional stroke to use for indicator line. + lineStroke: {}, + + // lineOutline: dojo/gfx/Stroke? + // An optional outline to use for indicator line. + lineOutline: {}, + + // lineShadow: dojo/gfx/Stroke? + // An optional shadow to use for indicator line. + lineShadow: {}, + + // stroke: dojo.gfx.Stroke? + // An optional stroke to use for indicator label background. + stroke: {}, + + // outline: dojo.gfx.Stroke? + // An optional outline to use for indicator label background. + outline: {}, + + // shadow: dojo.gfx.Stroke? + // An optional shadow to use for indicator label background. + shadow: {}, + + // fill: dojo.gfx.Fill? + // An optional fill to use for indicator label background. + fill: {}, + + // fillFunc: Function? + // An optional function to use to compute label background fill. It takes precedence over + // fill property when available. + // | function fillFunc(index, values, data) {} + // `index` is the index in the values array of the label being drawn. + // `values` is the entire array of values. + // `data` is the entire array of marker values. + fillFunc: null, + + // labelFunc: Function? + // An optional function to use to compute label text. It takes precedence over + // the default text when available. + // | function labelFunc(index, values, data, fixed, precision, labels) {} + // `index` is the index in the values array of the label being drawn. + // `values` is the entire array of values. + // `data` is the entire array of marker values. + // `fixed` is true if fixed precision must be applied. + // `precision` is the requested precision to be applied. + // `labels` is the labels mode of the indicator. + labelFunc: null, + + // font: String? + // A font definition to use for indicator label background. + font: "", + + // fontColor: String|dojo.Color? + // The color to use for indicator label background. + fontColor: "", + + // markerStroke: dojo.gfx.Stroke? + // An optional stroke to use for indicator marker. + markerStroke: {}, + + // markerOutline: dojo.gfx.Stroke? + // An optional outline to use for indicator marker. + markerOutline: {}, + + // markerShadow: dojo.gfx.Stroke? + // An optional shadow to use for indicator marker. + markerShadow: {}, + + // markerFill: dojo.gfx.Fill? + // An optional fill to use for indicator marker. + markerFill: {}, + + // markerSymbol: String? + // An optional symbol string to use for indicator marker. + markerSymbol: "", + }); + =====*/ + + var Indicator = declare("dojox.charting.plot2d.Indicator", [CartesianBase, _PlotEvents], { + // summary: + // A "faux" plot that can be placed behind or above other plots to represent a line or multi-line + // threshold on the chart. + defaultParams: { + vertical: true, + fixed: true, + precision: 0, + lines: true, + labels: "line", // "line" | "trend" | "markers" | "none" + markers: true + }, + optionalParams: { + lineStroke: {}, + outlineStroke: {}, + shadowStroke: {}, + lineFill: {}, + stroke: {}, + outline: {}, + shadow: {}, + fill: {}, + fillFunc: null, + labelFunc: null, + font: "", + fontColor: "", + markerStroke: {}, + markerOutline: {}, + markerShadow: {}, + markerFill: {}, + markerSymbol: "", + values: [], + offset: {}, + start: false, + animate: false + }, + + constructor: function(chart, kwArgs){ + // summary: + // Create the faux Grid plot. + // chart: dojox/charting/Chart + // The chart this plot belongs to. + // kwArgs: dojox.charting.plot2d.__GridCtorArgs? + // An optional keyword arguments object to help define the parameters of the underlying grid. + this.opt = lang.clone(this.defaultParams); + du.updateWithObject(this.opt, kwArgs); + if(typeof kwArgs.values == "number"){ + kwArgs.values = [ kwArgs.values ]; + } + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + this.animate = this.opt.animate; + }, + render: function(dim, offsets){ + if(this.zoom){ + return this.performZoom(dim, offsets); + } + + if(!this.isDirty()){ + return this; + } + + this.cleanGroup(null, true); + + if(!this.opt.values){ + return this; + } + + this._updateIndicator(); + return this; + }, + _updateIndicator: function(){ + var t = this.chart.theme; + var hn = this._hAxis.name, vn = this._vAxis.name, + hb = this._hAxis.getScaler().bounds, vb = this._vAxis.getScaler().bounds; + var o = {}; + o[hn] = hb.from; + o[vn] = vb.from; + var min = this.toPage(o); + o[hn] = hb.to; + o[vn] = vb.to; + var max = this.toPage(o); + var events = this.events(); + var results = array.map(this.opt.values, function(value, index){ + return this._renderIndicator(value, index, hn, vn, min, max, events, this.animate); + }, this); + var length = results.length; + if(this.opt.labels == "trend"){ + var v = this.opt.vertical; + var first = this._data[0][0]; + var last = this._data[length - 1][0]; + var delta = last-first; + var text = this.opt.labelFunc?this.opt.labelFunc(-1, this.values, this._data, this.opt.fixed, this.opt.precision): + (dcpc.getLabel(delta, this.opt.fixed, this.opt.precision)+" ("+dcpc.getLabel(100*delta/first, true, 2)+"%)"); + this._renderText(this.getGroup(), text, this.chart.theme, v?(results[0].x+results[length - 1].x)/2:results[1].x, + v?results[0].y:(results[1].y+results[length - 1].y)/2, -1, this.opt.values, this._data); + } + var lineFill = this.opt.lineFill!=undefined?this.opt.lineFill:t.indicator.lineFill; + if(lineFill && length > 1){ + var x0 = Math.min(results[0].x1, results[length - 1].x1); + var y0 = Math.min(results[0].y1, results[length - 1].y1); + var r = this.getGroup().createRect({x: x0, y: y0, width: Math.max(results[0].x2, results[length - 1].x2) - x0, + height: Math.max(results[0].y2, results[length - 1].y2) - y0}). + setFill(lineFill); + r.moveToBack(); + } + }, + _renderIndicator: function(coord, index, hn, vn, min, max, events, animate){ + var t = this.chart.theme, c = this.chart.getCoords(), v = this.opt.vertical; + + var g = this.getGroup().createGroup(); + var mark = {}; + mark[hn] = v?coord:0; + mark[vn] = v?0:coord; + if(has("dojo-bidi")){ + mark.x = this._getMarkX(mark.x); + } + mark = this.toPage(mark); + var visible = v?mark.x >= min.x && mark.x <= max.x:mark.y >= max.y && mark.y <= min.y; + + var cx = mark.x - c.x, cy = mark.y - c.y; + var x1 = v?cx:min.x - c.x, y1 = v?min.y - c.y:cy, x2 = v?x1:max.x - c.x, y2 = v?max.y - c.y:y1; + + if(this.opt.lines && visible){ + var sh = this.opt.hasOwnProperty("lineShadow")?this.opt.lineShadow:t.indicator.lineShadow, + ls = this.opt.hasOwnProperty("lineStroke")?this.opt.lineStroke:t.indicator.lineStroke, + ol = this.opt.hasOwnProperty("lineOutline")?this.opt.lineOutline:t.indicator.lineOutline; + if(sh){ + g.createLine({x1: x1 + sh.dx, y1: y1 + sh.dy, x2: x2 + sh.dx, y2: y2 + sh.dy}).setStroke(sh); + } + if(ol){ + ol = dcpc.makeStroke(ol); + ol.width = 2 * ol.width + (ls?ls.width:0); + g.createLine({x1: x1, y1: y1, x2: x2, y2: y2}).setStroke(ol); + } + g.createLine({x1: x1, y1: y1, x2: x2, y2: y2}).setStroke(ls); + } + + // series items represent markers on the indicator + var data; + if(this.opt.markers && visible){ + var d = this._data[index]; + var self = this; + if(d){ + data = array.map(d, function(value, index){ + mark[hn] = v?coord:value; + mark[vn] = v?value:coord; + if(has("dojo-bidi")){ + mark.x = self._getMarkX(mark.x); + } + mark = this.toPage(mark); + if(v?mark.y <= min.y && mark.y >= max.y:mark.x >= min.x && mark.x <= max.x){ + cx = mark.x - c.x + cy = mark.y - c.y; + var ms = this.opt.markerSymbol?this.opt.markerSymbol:t.indicator.markerSymbol, + path = "M" + cx + " " + cy + " " + ms; + sh = this.opt.markerShadow!=undefined?this.opt.markerShadow:t.indicator.markerShadow; + ls = this.opt.markerStroke!=undefined?this.opt.markerStroke:t.indicator.markerStroke; + ol = this.opt.markerOutline!=undefined?this.opt.markerOutline:t.indicator.markerOutline; + if(sh){ + var sp = "M" + (cx + sh.dx) + " " + (cy + sh.dy) + " " + ms; + g.createPath(sp).setFill(sh.color).setStroke(sh); + } + if(ol){ + ol = dcpc.makeStroke(ol); + ol.width = 2 * ol.width + (ls?ls.width:0); + g.createPath(path).setStroke(ol); + } + + var shape = g.createPath(path); + var sf = this._shapeFill(this.opt.markerFill != undefined?this.opt.markerFill:t.indicator.markerFill, shape.getBoundingBox()); + shape.setFill(sf).setStroke(ls); + } + return value; + }, this); + } + } + var ctext; + if(this.opt.start){ + ctext = { + x: v?x1:x1, + y: v?y1:y2 + }; + }else{ + ctext = { + x: v?x1:x2, + y: v?y2:y1 + }; + } + + if(this.opt.labels && this.opt.labels != "trend" && visible){ + var text; + if(this.opt.labelFunc){ + text = this.opt.labelFunc(index, this.opt.values, this._data, + this.opt.fixed, this.opt.precision, this.opt.labels); + }else{ + if(this.opt.labels == "markers"){ + text = array.map(data, function(value){ + return dcpc.getLabel(value, this.opt.fixed, this.opt.precision); + }, this); + text = text.length != 1 ? "[ "+text.join(", ")+" ]" : text[0]; + }else{ + text = dcpc.getLabel(coord, this.opt.fixed, this.opt.precision); + } + } + this._renderText(g, text, t, ctext.x, ctext.y, index, this.opt.values, this._data); + } + + if(events){ + this._connectEvents({ + element: "indicator", + run: this.run?this.run[index]:undefined, + shape: g, + value: coord + }); + } + + if(animate){ + this._animateIndicator(g, v, v?y1:x1, v?(y1 + y2):(x1 + x2), animate); + } + + return lang.mixin(ctext, {x1: x1, y1: y1, x2: x2, y2: y2}); + }, + _animateIndicator: function(shape, vertical, offset, size, animate){ + var transStart = vertical ? [0, offset] : [offset, 0]; + var scaleStart = vertical ? [1, 1 / size] : [1 / size, 1]; + fx.animateTransform(lang.delegate({ + shape: shape, + duration: 1200, + transform: [ + {name: "translate", start: transStart, end: [0, 0]}, + {name: "scale", start: scaleStart, end: [1, 1]}, + {name: "original"} + ] + }, animate)).play(); + }, + clear: function(){ + this.inherited(arguments); + this._data = []; + }, + addSeries: function(run){ + this.inherited(arguments); + this._data.push(run.data); + }, + _renderText: function(g, text, t, x, y, index, values, data){ + if(this.opt.offset){ + x += this.opt.offset.x; + y += this.opt.offset.y; + } + var label = dcac.createText.gfx( + this.chart, + g, + x, y, + "middle", + text, this.opt.font?this.opt.font:t.indicator.font, this.opt.fontColor?this.opt.fontColor:t.indicator.fontColor); + var b = getBoundingBox(label); + b.x-=2; b.y-=1; b.width+=4; b.height+=2; b.r = this.opt.radius?this.opt.radius:t.indicator.radius; + var sh = this.opt.shadow!=undefined?this.opt.shadow:t.indicator.shadow, + ls = this.opt.stroke!=undefined?this.opt.stroke:t.indicator.stroke, + ol = this.opt.outline!=undefined?this.opt.outline:t.indicator.outline; + if(sh){ + g.createRect(b).setFill(sh.color).setStroke(sh); + } + if(ol){ + ol = dcpc.makeStroke(ol); + ol.width = 2 * ol.width + (ls?ls.width:0); + g.createRect(b).setStroke(ol); + } + var f = this.opt.fillFunc?this.opt.fillFunc(index, values, data):(this.opt.fill!=undefined?this.opt.fill:t.indicator.fill); + g.createRect(b).setFill(this._shapeFill(f, b)).setStroke(ls); + label.moveToFront(); + }, + getSeriesStats: function(){ + // summary: + // Returns default stats (irrelevant for this type of plot). + // returns: Object + // {hmin, hmax, vmin, vmax} min/max in both directions. + return lang.delegate(dcpc.defaultStats); + } + }); + if(has("dojo-bidi")){ + Indicator.extend({ + _getMarkX: function(x){ + if(this.chart.isRightToLeft()){ + return this.chart.axes.x.scaler.bounds.to + this.chart.axes.x.scaler.bounds.from - x; + } + return x; + } + }); + } + return Indicator; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Lines.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Lines.js new file mode 100644 index 00000000..e8a7a8f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Lines.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/charting/plot2d/Lines",["dojo/_base/declare","./Default"],function(_1,_2){ +return _1("dojox.charting.plot2d.Lines",_2,{constructor:function(){ +this.opt.lines=true; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Lines.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Lines.js.uncompressed.js new file mode 100644 index 00000000..0ac78573 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Lines.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/plot2d/Lines", ["dojo/_base/declare", "./Default"], function(declare, Default){ + + return declare("dojox.charting.plot2d.Lines", Default, { + // summary: + // A convenience constructor to create a typical line chart. + constructor: function(){ + // summary: + // Preset our default plot to be line-based. + this.opt.lines = true; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Markers.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Markers.js new file mode 100644 index 00000000..968848f4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Markers.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/charting/plot2d/Markers",["dojo/_base/declare","./Default"],function(_1,_2){ +return _1("dojox.charting.plot2d.Markers",_2,{constructor:function(){ +this.opt.markers=true; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Markers.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Markers.js.uncompressed.js new file mode 100644 index 00000000..ad551bba --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Markers.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/plot2d/Markers", ["dojo/_base/declare", "./Default"], function(declare, Default){ + + return declare("dojox.charting.plot2d.Markers", Default, { + // summary: + // A convenience plot to draw a line chart with markers. + constructor: function(){ + // summary: + // Set up the plot for lines and markers. + this.opt.markers = true; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/MarkersOnly.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/MarkersOnly.js new file mode 100644 index 00000000..8a54d006 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/MarkersOnly.js @@ -0,0 +1,7 @@ +//>>built +define("dojox/charting/plot2d/MarkersOnly",["dojo/_base/declare","./Default"],function(_1,_2){ +return _1("dojox.charting.plot2d.MarkersOnly",_2,{constructor:function(){ +this.opt.lines=false; +this.opt.markers=true; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/MarkersOnly.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/MarkersOnly.js.uncompressed.js new file mode 100644 index 00000000..2cfa1352 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/MarkersOnly.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/charting/plot2d/MarkersOnly", ["dojo/_base/declare", "./Default"], function(declare, Default){ + + return declare("dojox.charting.plot2d.MarkersOnly", Default, { + // summary: + // A convenience object to draw only markers (like a scatter but not quite). + constructor: function(){ + // summary: + // Set up our default plot to only have markers and no lines. + this.opt.lines = false; + this.opt.markers = true; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/OHLC.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/OHLC.js new file mode 100644 index 00000000..30a2a305 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/OHLC.js @@ -0,0 +1,110 @@ +//>>built +define("dojox/charting/plot2d/OHLC",["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/has","./CartesianBase","./_PlotEvents","./common","dojox/lang/functional","dojox/lang/functional/reversed","dojox/lang/utils","dojox/gfx/fx"],function(_1,_2,_3,_4,_5,_6,dc,df,_7,du,fx){ +var _8=_7.lambda("item.purgeGroup()"); +return _3("dojox.charting.plot2d.OHLC",[_5,_6],{defaultParams:{gap:2,animate:null},optionalParams:{minBarSize:1,maxBarSize:1,stroke:{},outline:{},shadow:{},fill:{},font:"",fontColor:""},constructor:function(_9,_a){ +this.opt=_1.clone(this.defaultParams); +du.updateWithObject(this.opt,_a); +du.updateWithPattern(this.opt,_a,this.optionalParams); +this.animate=this.opt.animate; +},collectStats:function(_b){ +var _c=_1.delegate(dc.defaultStats); +for(var i=0;i<_b.length;i++){ +var _d=_b[i]; +if(!_d.data.length){ +continue; +} +var _e=_c.vmin,_f=_c.vmax; +if(!("ymin" in _d)||!("ymax" in _d)){ +_2.forEach(_d.data,function(val,idx){ +if(val!==null){ +var x=val.x||idx+1; +_c.hmin=Math.min(_c.hmin,x); +_c.hmax=Math.max(_c.hmax,x); +_c.vmin=Math.min(_c.vmin,val.open,val.close,val.high,val.low); +_c.vmax=Math.max(_c.vmax,val.open,val.close,val.high,val.low); +} +}); +} +if("ymin" in _d){ +_c.vmin=Math.min(_e,_d.ymin); +} +if("ymax" in _d){ +_c.vmax=Math.max(_f,_d.ymax); +} +} +return _c; +},getSeriesStats:function(){ +var _10=this.collectStats(this.series); +_10.hmin-=0.5; +_10.hmax+=0.5; +return _10; +},render:function(dim,_11){ +if(this.zoom&&!this.isDataDirty()){ +return this.performZoom(dim,_11); +} +this.resetEvents(); +this.dirty=this.isDirty(); +if(this.dirty){ +_2.forEach(this.series,_8); +this._eventSeries={}; +this.cleanGroup(); +var s=this.getGroup(); +df.forEachRev(this.series,function(_12){ +_12.cleanGroup(s); +}); +} +var t=this.chart.theme,f,gap,_13,ht=this._hScaler.scaler.getTransformerFromModel(this._hScaler),vt=this._vScaler.scaler.getTransformerFromModel(this._vScaler),_14=this.events(); +f=dc.calculateBarSize(this._hScaler.bounds.scale,this.opt); +gap=f.gap; +_13=f.size; +for(var i=this.series.length-1;i>=0;--i){ +var run=this.series[i]; +if(!this.dirty&&!run.dirty){ +t.skip(); +this._reconnectEvents(run.name); +continue; +} +run.cleanGroup(); +var _15=t.next("candlestick",[this.opt,run]),s=run.group,_16=new Array(run.data.length); +for(var j=0;j_1a){ +var tmp=_1a; +_1a=low; +low=tmp; +} +if(_13>=1){ +var hl={x1:_13/2,x2:_13/2,y1:y-_1a,y2:y-low},op={x1:0,x2:((_13/2)+((_17.series.stroke.width||1)/2)),y1:y-_18,y2:y-_18},cl={x1:((_13/2)-((_17.series.stroke.width||1)/2)),x2:_13,y1:y-_19,y2:y-_19}; +var _1b=s.createGroup(); +_1b.setTransform({dx:x,dy:0}); +var _1c=_1b.createGroup(); +_1c.createLine(hl).setStroke(_17.series.stroke); +_1c.createLine(op).setStroke(_17.series.stroke); +_1c.createLine(cl).setStroke(_17.series.stroke); +run.dyn.stroke=_17.series.stroke; +if(_14){ +var o={element:"candlestick",index:j,run:run,shape:_1c,x:x,y:y-Math.max(_18,_19),cx:_13/2,cy:(y-Math.max(_18,_19))+(Math.max(_18>_19?_18-_19:_19-_18,1)/2),width:_13,height:Math.max(_18>_19?_18-_19:_19-_18,1),data:v}; +this._connectEvents(o); +_16[j]=o; +} +} +if(this.animate){ +this._animateOHLC(_1b,y-low,_1a-low); +} +} +} +this._eventSeries[run.name]=_16; +run.dirty=false; +} +this.dirty=false; +if(_4("dojo-bidi")){ +this._checkOrientation(this.group,dim,_11); +} +return this; +},_animateOHLC:function(_1d,_1e,_1f){ +fx.animateTransform(_1.delegate({shape:_1d,duration:1200,transform:[{name:"translate",start:[0,_1e-(_1e/_1f)],end:[0,0]},{name:"scale",start:[1,1/_1f],end:[1,1]},{name:"original"}]},this.animate)).play(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/OHLC.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/OHLC.js.uncompressed.js new file mode 100644 index 00000000..339e7991 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/OHLC.js.uncompressed.js @@ -0,0 +1,208 @@ +define("dojox/charting/plot2d/OHLC", ["dojo/_base/lang", "dojo/_base/array", "dojo/_base/declare", "dojo/has", "./CartesianBase", "./_PlotEvents", "./common", + "dojox/lang/functional", "dojox/lang/functional/reversed", "dojox/lang/utils", "dojox/gfx/fx"], + function(lang, arr, declare, has, CartesianBase, _PlotEvents, dc, df, dfr, du, fx){ + + var purgeGroup = dfr.lambda("item.purgeGroup()"); + + // Candlesticks are based on the Bars plot type; we expect the following passed + // as values in a series: + // { x?, open, close, high, low } + // if x is not provided, the array index is used. + // failing to provide the OHLC values will throw an error. + return declare("dojox.charting.plot2d.OHLC", [CartesianBase, _PlotEvents], { + // summary: + // A plot that represents typical open/high/low/close (financial reporting, primarily). + // Unlike most charts, the Candlestick expects data points to be represented by + // an object of the form { x?, open, close, high, low, mid? }, where both + // x and mid are optional parameters. If x is not provided, the index of the + // data array is used. + defaultParams: { + gap: 2, // gap between columns in pixels + animate: null // animate chart to place + }, + optionalParams: { + minBarSize: 1, // minimal bar size in pixels + maxBarSize: 1, // maximal bar size in pixels + // theme component + stroke: {}, + outline: {}, + shadow: {}, + fill: {}, + font: "", + fontColor: "" + }, + + constructor: function(chart, kwArgs){ + // summary: + // The constructor for a candlestick chart. + // chart: dojox/charting/Chart + // The chart this plot belongs to. + // kwArgs: dojox.charting.plot2d.__BarCtorArgs? + // An optional keyword arguments object to help define the plot. + this.opt = lang.clone(this.defaultParams); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + this.animate = this.opt.animate; + }, + + collectStats: function(series){ + // summary: + // Collect all statistics for drawing this chart. Since the common + // functionality only assumes x and y, OHLC must create it's own + // stats (since data has no y value, but open/close/high/low instead). + // series: dojox/charting/Series[] + // The data series array to be drawn on this plot. + // returns: Object + // Returns an object in the form of { hmin, hmax, vmin, vmax }. + + // we have to roll our own, since we need to use all four passed + // values to figure out our stats, and common only assumes x and y. + var stats = lang.delegate(dc.defaultStats); + for(var i=0; i= 0; --i){ + var run = this.series[i]; + if(!this.dirty && !run.dirty){ + t.skip(); + this._reconnectEvents(run.name); + continue; + } + run.cleanGroup(); + var theme = t.next("candlestick", [this.opt, run]), s = run.group, + eventSeries = new Array(run.data.length); + for(var j = 0; j < run.data.length; ++j){ + var v = run.data[j]; + if(v !== null){ + var finalTheme = t.addMixin(theme, "candlestick", v, true); + + // calculate the points we need for OHLC + var x = ht(v.x || (j+0.5)) + offsets.l + gap, + y = dim.height - offsets.b, + open = vt(v.open), + close = vt(v.close), + high = vt(v.high), + low = vt(v.low); + if(low > high){ + var tmp = high; + high = low; + low = tmp; + } + + if(width >= 1){ + var hl = {x1: width/2, x2: width/2, y1: y - high, y2: y - low}, + op = {x1: 0, x2: ((width/2) + ((finalTheme.series.stroke.width||1)/2)), y1: y-open, y2: y-open}, + cl = {x1: ((width/2) - ((finalTheme.series.stroke.width||1)/2)), x2: width, y1: y-close, y2: y-close}; + var shape = s.createGroup(); + shape.setTransform({dx: x, dy: 0}); + var inner = shape.createGroup(); + inner.createLine(hl).setStroke(finalTheme.series.stroke); + inner.createLine(op).setStroke(finalTheme.series.stroke); + inner.createLine(cl).setStroke(finalTheme.series.stroke); + + // TODO: double check this. + run.dyn.stroke = finalTheme.series.stroke; + if(events){ + var o = { + element: "candlestick", + index: j, + run: run, + shape: inner, + x: x, + y: y-Math.max(open, close), + cx: width/2, + cy: (y-Math.max(open, close)) + (Math.max(open > close ? open-close : close-open, 1)/2), + width: width, + height: Math.max(open > close ? open-close : close-open, 1), + data: v + }; + this._connectEvents(o); + eventSeries[j] = o; + } + } + if(this.animate){ + this._animateOHLC(shape, y - low, high - low); + } + } + } + this._eventSeries[run.name] = eventSeries; + run.dirty = false; + } + this.dirty = false; + // chart mirroring starts + if(has("dojo-bidi")){ + this._checkOrientation(this.group, dim, offsets); + } + // chart mirroring ends + return this; // dojox/charting/plot2d/OHLC + }, + _animateOHLC: function(shape, voffset, vsize){ + fx.animateTransform(lang.delegate({ + shape: shape, + duration: 1200, + transform: [ + {name: "translate", start: [0, voffset - (voffset/vsize)], end: [0, 0]}, + {name: "scale", start: [1, 1/vsize], end: [1, 1]}, + {name: "original"} + ] + }, this.animate)).play(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Pie.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Pie.js new file mode 100644 index 00000000..71627341 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Pie.js @@ -0,0 +1,303 @@ +//>>built +define("dojox/charting/plot2d/Pie",["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","./Base","./_PlotEvents","./common","dojox/gfx","dojox/gfx/matrix","dojox/lang/functional","dojox/lang/utils","dojo/has"],function(_1,_2,_3,_4,_5,dc,g,m,df,du,_6){ +var _7=0.2; +return _3("dojox.charting.plot2d.Pie",[_4,_5],{defaultParams:{labels:true,ticks:false,fixed:true,precision:1,labelOffset:20,labelStyle:"default",htmlLabels:true,radGrad:"native",fanSize:5,startAngle:0},optionalParams:{radius:0,omitLabels:false,stroke:{},outline:{},shadow:{},fill:{},filter:{},styleFunc:null,font:"",fontColor:"",labelWiring:{}},constructor:function(_8,_9){ +this.opt=_1.clone(this.defaultParams); +du.updateWithObject(this.opt,_9); +du.updateWithPattern(this.opt,_9,this.optionalParams); +this.axes=[]; +this.run=null; +this.dyn=[]; +this.runFilter=[]; +},clear:function(){ +this.inherited(arguments); +this.dyn=[]; +this.run=null; +return this; +},setAxis:function(_a){ +return this; +},addSeries:function(_b){ +this.run=_b; +return this; +},getSeriesStats:function(){ +return _1.delegate(dc.defaultStats); +},getRequiredColors:function(){ +return this.run?this.run.data.length:0; +},render:function(_c,_d){ +if(!this.dirty){ +return this; +} +this.resetEvents(); +this.dirty=false; +this._eventSeries={}; +this.cleanGroup(); +var s=this.group,t=this.chart.theme; +if(!this.run||!this.run.data.length){ +return this; +} +var rx=(_c.width-_d.l-_d.r)/2,ry=(_c.height-_d.t-_d.b)/2,r=Math.min(rx,ry),_e="font" in this.opt?this.opt.font:t.series.font,_f,_10=m._degToRad(this.opt.startAngle),_11=_10,_12,_13,_14,_15,_16,_17=this.events(); +var run=_2.map(this.run.data,function(_18,i){ +if(typeof _18!="number"&&_18.hidden){ +this.runFilter.push(i); +_18.hidden=false; +} +if(_2.some(this.runFilter,function(_19){ +return _19==i; +})){ +if(typeof _18=="number"){ +return 0; +}else{ +return {y:0,text:_18.text}; +} +}else{ +return _18; +} +},this); +this.dyn=[]; +if("radius" in this.opt){ +r=this.opt.radius; +_16=r-this.opt.labelOffset; +} +var _1a={cx:_d.l+rx,cy:_d.t+ry,r:r}; +if(this.opt.shadow||t.shadow){ +var _1b=this.opt.shadow||t.shadow; +var _1c=_1.clone(_1a); +_1c.cx+=_1b.dx; +_1c.cy+=_1b.dy; +s.createCircle(_1c).setFill(_1b.color).setStroke(_1b); +} +if(s.setFilter&&(this.opt.filter||t.filter)){ +s.createCircle(_1a).setFill(t.series.stroke).setFilter(this.opt.filter||t.filter); +} +if(typeof run[0]=="number"){ +_12=df.map(run,"x ? Math.max(x, 0) : 0"); +if(df.every(_12,"<= 0")){ +s.createCircle(_1a).setStroke(t.series.stroke); +this.dyn=_2.map(_12,function(){ +return {}; +}); +return this; +}else{ +_13=df.map(_12,"/this",df.foldl(_12,"+",0)); +if(this.opt.labels){ +_14=_2.map(_13,function(x){ +return x>0?this._getLabel(x*100)+"%":""; +},this); +} +} +}else{ +_12=df.map(run,"x ? Math.max(x.y, 0) : 0"); +if(df.every(_12,"<= 0")){ +s.createCircle(_1a).setStroke(t.series.stroke); +this.dyn=_2.map(_12,function(){ +return {}; +}); +return this; +}else{ +_13=df.map(_12,"/this",df.foldl(_12,"+",0)); +if(this.opt.labels){ +_14=_2.map(_13,function(x,i){ +if(x<0){ +return ""; +} +var v=run[i]; +return "text" in v?v.text:this._getLabel(x*100)+"%"; +},this); +} +} +} +var _1d=df.map(run,function(v,i){ +var _1e=[this.opt,this.run]; +if(v!==null&&typeof v!="number"){ +_1e.push(v); +} +if(this.opt.styleFunc){ +_1e.push(this.opt.styleFunc(v)); +} +return t.next("slice",_1e,true); +},this); +if(this.opt.labels){ +_f=_e?g.normalizedLength(g.splitFontString(_e).size):0; +_15=df.foldl1(df.map(_14,function(_1f,i){ +var _20=_1d[i].series.font; +return g._base._getTextBox(_1f,{font:_20}).w; +},this),"Math.max(a, b)")/2; +if(this.opt.labelOffset<0){ +r=Math.min(rx-2*_15,ry-_f)+this.opt.labelOffset; +} +_16=r-this.opt.labelOffset; +} +var _21=new Array(_13.length); +_2.some(_13,function(_22,i){ +if(_22<0){ +return false; +} +var v=run[i],_23=_1d[i],_24,o; +if(_22==0){ +this.dyn.push({fill:_23.series.fill,stroke:_23.series.stroke}); +return false; +} +if(_22>=1){ +_24=this._plotFill(_23.series.fill,_c,_d); +_24=this._shapeFill(_24,{x:_1a.cx-_1a.r,y:_1a.cy-_1a.r,width:2*_1a.r,height:2*_1a.r}); +_24=this._pseudoRadialFill(_24,{x:_1a.cx,y:_1a.cy},_1a.r); +var _25=s.createCircle(_1a).setFill(_24).setStroke(_23.series.stroke); +this.dyn.push({fill:_24,stroke:_23.series.stroke}); +if(_17){ +o={element:"slice",index:i,run:this.run,shape:_25,x:i,y:typeof v=="number"?v:v.y,cx:_1a.cx,cy:_1a.cy,cr:r}; +this._connectEvents(o); +_21[i]=o; +} +return false; +} +var end=_11+_22*2*Math.PI; +if(i+1==_13.length){ +end=_10+2*Math.PI; +} +var _26=end-_11,x1=_1a.cx+r*Math.cos(_11),y1=_1a.cy+r*Math.sin(_11),x2=_1a.cx+r*Math.cos(end),y2=_1a.cy+r*Math.sin(end); +var _27=m._degToRad(this.opt.fanSize); +if(_23.series.fill&&_23.series.fill.type==="radial"&&this.opt.radGrad==="fan"&&_26>_27){ +var _28=s.createGroup(),_29=Math.ceil(_26/_27),_2a=_26/_29; +_24=this._shapeFill(_23.series.fill,{x:_1a.cx-_1a.r,y:_1a.cy-_1a.r,width:2*_1a.r,height:2*_1a.r}); +for(var j=0;j<_29;++j){ +var _2b=j==0?x1:_1a.cx+r*Math.cos(_11+(j-_7)*_2a),_2c=j==0?y1:_1a.cy+r*Math.sin(_11+(j-_7)*_2a),_2d=j==_29-1?x2:_1a.cx+r*Math.cos(_11+(j+1+_7)*_2a),_2e=j==_29-1?y2:_1a.cy+r*Math.sin(_11+(j+1+_7)*_2a); +_28.createPath().moveTo(_1a.cx,_1a.cy).lineTo(_2b,_2c).arcTo(r,r,0,_2a>Math.PI,true,_2d,_2e).lineTo(_1a.cx,_1a.cy).closePath().setFill(this._pseudoRadialFill(_24,{x:_1a.cx,y:_1a.cy},r,_11+(j+0.5)*_2a,_11+(j+0.5)*_2a)); +} +_28.createPath().moveTo(_1a.cx,_1a.cy).lineTo(x1,y1).arcTo(r,r,0,_26>Math.PI,true,x2,y2).lineTo(_1a.cx,_1a.cy).closePath().setStroke(_23.series.stroke); +_25=_28; +}else{ +_25=s.createPath().moveTo(_1a.cx,_1a.cy).lineTo(x1,y1).arcTo(r,r,0,_26>Math.PI,true,x2,y2).lineTo(_1a.cx,_1a.cy).closePath().setStroke(_23.series.stroke); +_24=_23.series.fill; +if(_24&&_24.type==="radial"){ +_24=this._shapeFill(_24,{x:_1a.cx-_1a.r,y:_1a.cy-_1a.r,width:2*_1a.r,height:2*_1a.r}); +if(this.opt.radGrad==="linear"){ +_24=this._pseudoRadialFill(_24,{x:_1a.cx,y:_1a.cy},r,_11,end); +} +}else{ +if(_24&&_24.type==="linear"){ +_24=this._plotFill(_24,_c,_d); +_24=this._shapeFill(_24,_25.getBoundingBox()); +} +} +_25.setFill(_24); +} +this.dyn.push({fill:_24,stroke:_23.series.stroke}); +if(_17){ +o={element:"slice",index:i,run:this.run,shape:_25,x:i,y:typeof v=="number"?v:v.y,cx:_1a.cx,cy:_1a.cy,cr:r}; +this._connectEvents(o); +_21[i]=o; +} +_11=end; +return false; +},this); +if(this.opt.labels){ +var _2f=_6("dojo-bidi")&&this.chart.isRightToLeft(); +if(this.opt.labelStyle=="default"){ +_11=_10; +_2.some(_13,function(_30,i){ +if(_30<=0){ +return false; +} +var _31=_1d[i]; +if(_30>=1){ +this.renderLabel(s,_1a.cx,_1a.cy+_f/2,_14[i],_31,this.opt.labelOffset>0); +return true; +} +var end=_11+_30*2*Math.PI; +if(i+1==_13.length){ +end=_10+2*Math.PI; +} +if(this.opt.omitLabels&&end-_11<0.001){ +return false; +} +var _32=(_11+end)/2,x=_1a.cx+_16*Math.cos(_32),y=_1a.cy+_16*Math.sin(_32)+_f/2; +this.renderLabel(s,_2f?_c.width-x:x,y,_14[i],_31,this.opt.labelOffset>0); +_11=end; +return false; +},this); +}else{ +if(this.opt.labelStyle=="columns"){ +_11=_10; +var _33=this.opt.omitLabels; +var _34=[]; +_2.forEach(_13,function(_35,i){ +var end=_11+_35*2*Math.PI; +if(i+1==_13.length){ +end=_10+2*Math.PI; +} +var _36=(_11+end)/2; +_34.push({angle:_36,left:Math.cos(_36)<0,theme:_1d[i],index:i,omit:_33?end-_11<0.001:false}); +_11=end; +}); +var _37=g._base._getTextBox("a",{font:_e}).h; +this._getProperLabelRadius(_34,_37,_1a.r*1.1); +_2.forEach(_34,function(_38,i){ +if(!_38.omit){ +var _39=_1a.cx-_1a.r*2,_3a=_1a.cx+_1a.r*2,_3b=g._base._getTextBox(_14[i],{font:_38.theme.series.font}).w,x=_1a.cx+_38.labelR*Math.cos(_38.angle),y=_1a.cy+_38.labelR*Math.sin(_38.angle),_3c=(_38.left)?(_39+_3b):(_3a-_3b),_3d=(_38.left)?_39:_3c; +var _3e=s.createPath().moveTo(_1a.cx+_1a.r*Math.cos(_38.angle),_1a.cy+_1a.r*Math.sin(_38.angle)); +if(Math.abs(_38.labelR*Math.cos(_38.angle))<_1a.r*2-_3b){ +_3e.lineTo(x,y); +} +_3e.lineTo(_3c,y).setStroke(_38.theme.series.labelWiring); +this.renderLabel(s,_2f?_c.width-_3b-_3d:_3d,y,_14[i],_38.theme,false,"left"); +} +},this); +} +} +} +var esi=0; +this._eventSeries[this.run.name]=df.map(run,function(v){ +return v<=0?null:_21[esi++]; +}); +if(_6("dojo-bidi")){ +this._checkOrientation(this.group,_c,_d); +} +return this; +},_getProperLabelRadius:function(_3f,_40,_41){ +var _42,_43,_44=1,_45=1; +if(_3f.length==1){ +_3f[0].labelR=_41; +return; +} +for(var i=0;i<_3f.length;i++){ +var _46=Math.abs(Math.sin(_3f[i].angle)); +if(_3f[i].left){ +if(_44>=_46){ +_44=_46; +_42=_3f[i]; +} +}else{ +if(_45>=_46){ +_45=_46; +_43=_3f[i]; +} +} +} +_42.labelR=_43.labelR=_41; +this._calculateLabelR(_42,_3f,_40); +this._calculateLabelR(_43,_3f,_40); +},_calculateLabelR:function(_47,_48,_49){ +var i=_47.index,_4a=_48.length,_4b=_47.labelR,_4c; +while(!(_48[i%_4a].left^_48[(i+1)%_4a].left)){ +if(!_48[(i+1)%_4a].omit){ +_4c=(Math.sin(_48[i%_4a].angle)*_4b+((_48[i%_4a].left)?(-_49):_49))/Math.sin(_48[(i+1)%_4a].angle); +_4b=(_4c<_47.labelR)?_47.labelR:_4c; +_48[(i+1)%_4a].labelR=_4b; +} +i++; +} +i=_47.index; +var j=(i==0)?_4a-1:i-1; +while(!(_48[i].left^_48[j].left)){ +if(!_48[j].omit){ +_4c=(Math.sin(_48[i].angle)*_4b+((_48[i].left)?_49:(-_49)))/Math.sin(_48[j].angle); +_4b=(_4c<_47.labelR)?_47.labelR:_4c; +_48[j].labelR=_4b; +} +i--; +j--; +i=(i<0)?i+_48.length:i; +j=(j<0)?j+_48.length:j; +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Pie.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Pie.js.uncompressed.js new file mode 100644 index 00000000..793af784 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Pie.js.uncompressed.js @@ -0,0 +1,547 @@ +define("dojox/charting/plot2d/Pie", ["dojo/_base/lang", "dojo/_base/array" ,"dojo/_base/declare", + "./Base", "./_PlotEvents", "./common", + "dojox/gfx", "dojox/gfx/matrix", "dojox/lang/functional", "dojox/lang/utils","dojo/has"], + function(lang, arr, declare, Base, PlotEvents, dc, g, m, df, du, has){ + + /*===== + declare("dojox.charting.plot2d.__PieCtorArgs", dojox.charting.plot2d.__DefaultCtorArgs, { + // summary: + // Specialized keyword arguments object for use in defining parameters on a Pie chart. + + // labels: Boolean? + // Whether or not to draw labels for each pie slice. Default is true. + labels: true, + + // ticks: Boolean? + // Whether or not to draw ticks to labels within each slice. Default is false. + ticks: false, + + // fixed: Boolean? + // Whether a fixed precision must be applied to data values for display. Default is true. + fixed: true, + + // precision: Number? + // The precision at which to round data values for display. Default is 0. + precision: 1, + + // labelOffset: Number? + // The amount in pixels by which to offset labels. Default is 20. + labelOffset: 20, + + // labelStyle: String? + // Options as to where to draw labels. Values include "default", and "columns". Default is "default". + labelStyle: "default", // default/columns + + // omitLabels: Boolean? + // Whether labels of slices small to the point of not being visible are omitted. Default false. + omitLabels: false, + + // htmlLabels: Boolean? + // Whether or not to use HTML to render slice labels. Default is true. + htmlLabels: true, + + // radGrad: String? + // The type of radial gradient to use in rendering. Default is "native". + radGrad: "native", + + // fanSize: Number? + // The amount for a radial gradient. Default is 5. + fanSize: 5, + + // startAngle: Number? + // Where to being rendering gradients in slices, in degrees. Default is 0. + startAngle: 0, + + // radius: Number? + // The size of the radial gradient. Default is 0. + radius: 0, + + // shadow: dojox.gfx.Stroke? + // An optional stroke to use to draw any shadows for a series on a plot. + shadow: {}, + + // fill: dojox.gfx.Fill? + // Any fill to be used for elements on the plot. + fill: {}, + + // filter: dojox.gfx.Filter? + // An SVG filter to be used for elements on the plot. gfx SVG renderer must be used and dojox/gfx/svgext must + // be required for this to work. + filter: {}, + + // styleFunc: Function? + // A function that returns a styling object for the a given data item. + styleFunc: null + }); + =====*/ + + var FUDGE_FACTOR = 0.2; // use to overlap fans + + return declare("dojox.charting.plot2d.Pie", [Base, PlotEvents], { + // summary: + // The plot that represents a typical pie chart. + defaultParams: { + labels: true, + ticks: false, + fixed: true, + precision: 1, + labelOffset: 20, + labelStyle: "default", // default/columns + htmlLabels: true, // use HTML to draw labels + radGrad: "native", // or "linear", or "fan" + fanSize: 5, // maximum fan size in degrees + startAngle: 0 // start angle for slices in degrees + }, + optionalParams: { + radius: 0, + omitLabels: false, + // theme components + stroke: {}, + outline: {}, + shadow: {}, + fill: {}, + filter: {}, + styleFunc: null, + font: "", + fontColor: "", + labelWiring: {} + }, + + constructor: function(chart, kwArgs){ + // summary: + // Create a pie plot. + this.opt = lang.clone(this.defaultParams); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + this.axes = []; + this.run = null; + this.dyn = []; + this.runFilter = []; + }, + clear: function(){ + // summary: + // Clear out all of the information tied to this plot. + // returns: dojox/charting/plot2d/Pie + // A reference to this plot for functional chaining. + this.inherited(arguments); + this.dyn = []; + this.run = null; + return this; // dojox/charting/plot2d/Pie + }, + setAxis: function(axis){ + // summary: + // Dummy method, since axes are irrelevant with a Pie chart. + // returns: dojox/charting/plot2d/Pie + // The reference to this plot for functional chaining. + return this; // dojox/charting/plot2d/Pie + }, + addSeries: function(run){ + // summary: + // Add a series of data to this plot. + // returns: dojox/charting/plot2d/Pie + // The reference to this plot for functional chaining. + this.run = run; + return this; // dojox/charting/plot2d/Pie + }, + getSeriesStats: function(){ + // summary: + // Returns default stats (irrelevant for this type of plot). + // returns: Object + // {hmin, hmax, vmin, vmax} min/max in both directions. + return lang.delegate(dc.defaultStats); // Object + }, + getRequiredColors: function(){ + // summary: + // Return the number of colors needed to draw this plot. + return this.run ? this.run.data.length : 0; + }, + render: function(dim, offsets){ + // summary: + // Render the plot on the chart. + // dim: Object + // An object of the form { width, height }. + // offsets: Object + // An object of the form { l, r, t, b }. + // returns: dojox/charting/plot2d/Pie + // A reference to this plot for functional chaining. + if(!this.dirty){ return this; } + this.resetEvents(); + this.dirty = false; + this._eventSeries = {}; + this.cleanGroup(); + var s = this.group, t = this.chart.theme; + + if(!this.run || !this.run.data.length){ + return this; + } + + // calculate the geometry + var rx = (dim.width - offsets.l - offsets.r) / 2, + ry = (dim.height - offsets.t - offsets.b) / 2, + r = Math.min(rx, ry), + labelFont = "font" in this.opt ? this.opt.font : t.series.font, + size, + startAngle = m._degToRad(this.opt.startAngle), + start = startAngle, filteredRun, slices, labels, shift, labelR, + events = this.events(); + + var run = arr.map(this.run.data, function(item, i){ + if(typeof item != "number" && item.hidden){ + this.runFilter.push(i); + item.hidden = false; + } + if(arr.some(this.runFilter, function(filter){return filter == i;})){ + if(typeof item == "number"){ + return 0; + }else{ + return {y: 0, text: item.text}; + } + }else{ + return item; + } + }, this); + + this.dyn = []; + + if("radius" in this.opt){ + r = this.opt.radius; + labelR = r - this.opt.labelOffset; + } + var circle = { + cx: offsets.l + rx, + cy: offsets.t + ry, + r: r + }; + + // draw shadow + if(this.opt.shadow || t.shadow){ + var shadow = this.opt.shadow || t.shadow; + var scircle = lang.clone(circle); + scircle.cx += shadow.dx; + scircle.cy += shadow.dy; + s.createCircle(scircle).setFill(shadow.color).setStroke(shadow); + } + if(s.setFilter && (this.opt.filter || t.filter)){ + s.createCircle(circle).setFill(t.series.stroke).setFilter(this.opt.filter || t.filter); + } + + if(typeof run[0] == "number"){ + filteredRun = df.map(run, "x ? Math.max(x, 0) : 0"); + if(df.every(filteredRun, "<= 0")){ + s.createCircle(circle).setStroke(t.series.stroke); + this.dyn = arr.map(filteredRun, function(){ + return { }; + }); + return this; + }else{ + slices = df.map(filteredRun, "/this", df.foldl(filteredRun, "+", 0)); + if(this.opt.labels){ + labels = arr.map(slices, function(x){ + return x > 0 ? this._getLabel(x * 100) + "%" : ""; + }, this); + } + } + }else{ + filteredRun = df.map(run, "x ? Math.max(x.y, 0) : 0"); + if(df.every(filteredRun, "<= 0")){ + s.createCircle(circle).setStroke(t.series.stroke); + this.dyn = arr.map(filteredRun, function(){ + return { }; + }); + return this; + }else{ + slices = df.map(filteredRun, "/this", df.foldl(filteredRun, "+", 0)); + if(this.opt.labels){ + labels = arr.map(slices, function(x, i){ + if(x < 0){ return ""; } + var v = run[i]; + return "text" in v ? v.text : this._getLabel(x * 100) + "%"; + }, this); + } + } + } + var themes = df.map(run, function(v, i){ + var tMixin = [this.opt, this.run]; + if(v !== null && typeof v != "number"){ + tMixin.push(v); + } + if(this.opt.styleFunc){ + tMixin.push(this.opt.styleFunc(v)); + } + return t.next("slice", tMixin, true); + }, this); + + if(this.opt.labels){ + size = labelFont ? g.normalizedLength(g.splitFontString(labelFont).size) : 0; + shift = df.foldl1(df.map(labels, function(label, i){ + var font = themes[i].series.font; + return g._base._getTextBox(label, {font: font}).w; + }, this), "Math.max(a, b)") / 2; + if(this.opt.labelOffset < 0){ + r = Math.min(rx - 2 * shift, ry - size) + this.opt.labelOffset; + } + labelR = r - this.opt.labelOffset; + } + + // draw slices + var eventSeries = new Array(slices.length); + arr.some(slices, function(slice, i){ + if(slice < 0){ + // degenerated slice + return false; // continue + } + var v = run[i], theme = themes[i], specialFill, o; + if(slice == 0){ + this.dyn.push({fill: theme.series.fill, stroke: theme.series.stroke}); + return false; + } + + if(slice >= 1){ + // whole pie + specialFill = this._plotFill(theme.series.fill, dim, offsets); + specialFill = this._shapeFill(specialFill, + { + x: circle.cx - circle.r, y: circle.cy - circle.r, + width: 2 * circle.r, height: 2 * circle.r + }); + specialFill = this._pseudoRadialFill(specialFill, {x: circle.cx, y: circle.cy}, circle.r); + var shape = s.createCircle(circle).setFill(specialFill).setStroke(theme.series.stroke); + this.dyn.push({fill: specialFill, stroke: theme.series.stroke}); + + if(events){ + o = { + element: "slice", + index: i, + run: this.run, + shape: shape, + x: i, + y: typeof v == "number" ? v : v.y, + cx: circle.cx, + cy: circle.cy, + cr: r + }; + this._connectEvents(o); + eventSeries[i] = o; + } + + return false; // we continue because we want to collect null data points for legend + } + // calculate the geometry of the slice + var end = start + slice * 2 * Math.PI; + if(i + 1 == slices.length){ + end = startAngle + 2 * Math.PI; + } + var step = end - start, + x1 = circle.cx + r * Math.cos(start), + y1 = circle.cy + r * Math.sin(start), + x2 = circle.cx + r * Math.cos(end), + y2 = circle.cy + r * Math.sin(end); + // draw the slice + var fanSize = m._degToRad(this.opt.fanSize); + if(theme.series.fill && theme.series.fill.type === "radial" && this.opt.radGrad === "fan" && step > fanSize){ + var group = s.createGroup(), nfans = Math.ceil(step / fanSize), delta = step / nfans; + specialFill = this._shapeFill(theme.series.fill, + {x: circle.cx - circle.r, y: circle.cy - circle.r, width: 2 * circle.r, height: 2 * circle.r}); + for(var j = 0; j < nfans; ++j){ + var fansx = j == 0 ? x1 : circle.cx + r * Math.cos(start + (j - FUDGE_FACTOR) * delta), + fansy = j == 0 ? y1 : circle.cy + r * Math.sin(start + (j - FUDGE_FACTOR) * delta), + fanex = j == nfans - 1 ? x2 : circle.cx + r * Math.cos(start + (j + 1 + FUDGE_FACTOR) * delta), + faney = j == nfans - 1 ? y2 : circle.cy + r * Math.sin(start + (j + 1 + FUDGE_FACTOR) * delta); + group.createPath(). + moveTo(circle.cx, circle.cy). + lineTo(fansx, fansy). + arcTo(r, r, 0, delta > Math.PI, true, fanex, faney). + lineTo(circle.cx, circle.cy). + closePath(). + setFill(this._pseudoRadialFill(specialFill, {x: circle.cx, y: circle.cy}, r, start + (j + 0.5) * delta, start + (j + 0.5) * delta)); + } + group.createPath(). + moveTo(circle.cx, circle.cy). + lineTo(x1, y1). + arcTo(r, r, 0, step > Math.PI, true, x2, y2). + lineTo(circle.cx, circle.cy). + closePath(). + setStroke(theme.series.stroke); + shape = group; + }else{ + shape = s.createPath(). + moveTo(circle.cx, circle.cy). + lineTo(x1, y1). + arcTo(r, r, 0, step > Math.PI, true, x2, y2). + lineTo(circle.cx, circle.cy). + closePath(). + setStroke(theme.series.stroke); + specialFill = theme.series.fill; + if(specialFill && specialFill.type === "radial"){ + specialFill = this._shapeFill(specialFill, {x: circle.cx - circle.r, y: circle.cy - circle.r, width: 2 * circle.r, height: 2 * circle.r}); + if(this.opt.radGrad === "linear"){ + specialFill = this._pseudoRadialFill(specialFill, {x: circle.cx, y: circle.cy}, r, start, end); + } + }else if(specialFill && specialFill.type === "linear"){ + specialFill = this._plotFill(specialFill, dim, offsets); + specialFill = this._shapeFill(specialFill, shape.getBoundingBox()); + } + shape.setFill(specialFill); + } + this.dyn.push({fill: specialFill, stroke: theme.series.stroke}); + + if(events){ + o = { + element: "slice", + index: i, + run: this.run, + shape: shape, + x: i, + y: typeof v == "number" ? v : v.y, + cx: circle.cx, + cy: circle.cy, + cr: r + }; + this._connectEvents(o); + eventSeries[i] = o; + } + + start = end; + + return false; // continue + }, this); + // draw labels + if(this.opt.labels){ + var isRtl = has("dojo-bidi") && this.chart.isRightToLeft(); + if(this.opt.labelStyle == "default"){ // inside or outside based on labelOffset + start = startAngle; + arr.some(slices, function(slice, i){ + if(slice <= 0){ + // degenerated slice + return false; // continue + } + var theme = themes[i]; + if(slice >= 1){ + // whole pie + this.renderLabel(s, circle.cx, circle.cy + size / 2, labels[i], theme, this.opt.labelOffset > 0); + return true; // stop iteration + } + // calculate the geometry of the slice + var end = start + slice * 2 * Math.PI; + if(i + 1 == slices.length){ + end = startAngle + 2 * Math.PI; + } + if(this.opt.omitLabels && end-start < 0.001){ + return false; // continue + } + var labelAngle = (start + end) / 2, + x = circle.cx + labelR * Math.cos(labelAngle), + y = circle.cy + labelR * Math.sin(labelAngle) + size / 2; + // draw the label + this.renderLabel(s, isRtl ? dim.width - x : x, y, labels[i], theme, this.opt.labelOffset > 0); + start = end; + return false; // continue + }, this); + }else if(this.opt.labelStyle == "columns"){ + start = startAngle; + var omitLabels = this.opt.omitLabels; + //calculate label angles + var labeledSlices = []; + arr.forEach(slices, function(slice, i){ + var end = start + slice * 2 * Math.PI; + if(i + 1 == slices.length){ + end = startAngle + 2 * Math.PI; + } + var labelAngle = (start + end) / 2; + labeledSlices.push({ + angle: labelAngle, + left: Math.cos(labelAngle) < 0, + theme: themes[i], + index: i, + omit: omitLabels?end - start < 0.001:false + }); + start = end; + }); + //calculate label radius to each slice + var labelHeight = g._base._getTextBox("a",{ font: labelFont }).h; + this._getProperLabelRadius(labeledSlices, labelHeight, circle.r * 1.1); + //draw label and wiring + arr.forEach(labeledSlices, function(slice, i){ + if(!slice.omit){ + var leftColumn = circle.cx - circle.r * 2, + rightColumn = circle.cx + circle.r * 2, + labelWidth = g._base._getTextBox(labels[i], {font: slice.theme.series.font}).w, + x = circle.cx + slice.labelR * Math.cos(slice.angle), + y = circle.cy + slice.labelR * Math.sin(slice.angle), + jointX = (slice.left) ? (leftColumn + labelWidth) : (rightColumn - labelWidth), + labelX = (slice.left) ? leftColumn : jointX; + var wiring = s.createPath().moveTo(circle.cx + circle.r * Math.cos(slice.angle), circle.cy + circle.r * Math.sin(slice.angle)); + if(Math.abs(slice.labelR * Math.cos(slice.angle)) < circle.r * 2 - labelWidth){ + wiring.lineTo(x, y); + } + wiring.lineTo(jointX, y).setStroke(slice.theme.series.labelWiring); + this.renderLabel(s, isRtl ? dim.width - labelWidth - labelX : labelX, y, labels[i], slice.theme, false, "left"); + } + },this); + } + } + // post-process events to restore the original indexing + var esi = 0; + this._eventSeries[this.run.name] = df.map(run, function(v){ + return v <= 0 ? null : eventSeries[esi++]; + }); + // chart mirroring starts + if(has("dojo-bidi")){ + this._checkOrientation(this.group, dim, offsets); + } + // chart mirroring ends + return this; // dojox/charting/plot2d/Pie + }, + _getProperLabelRadius: function(slices, labelHeight, minRidius){ + var leftCenterSlice, rightCenterSlice, + leftMinSIN = 1, rightMinSIN = 1; + if(slices.length == 1){ + slices[0].labelR = minRidius; + return; + } + for(var i = 0; i < slices.length; i++){ + var tempSIN = Math.abs(Math.sin(slices[i].angle)); + if(slices[i].left){ + if(leftMinSIN >= tempSIN){ + leftMinSIN = tempSIN; + leftCenterSlice = slices[i]; + } + }else{ + if(rightMinSIN >= tempSIN){ + rightMinSIN = tempSIN; + rightCenterSlice = slices[i]; + } + } + } + leftCenterSlice.labelR = rightCenterSlice.labelR = minRidius; + this._calculateLabelR(leftCenterSlice, slices, labelHeight); + this._calculateLabelR(rightCenterSlice, slices, labelHeight); + }, + _calculateLabelR: function(firstSlice, slices, labelHeight){ + var i = firstSlice.index,length = slices.length, + currentLabelR = firstSlice.labelR, nextLabelR; + while(!(slices[i%length].left ^ slices[(i+1)%length].left)){ + if(!slices[(i + 1) % length].omit){ + nextLabelR = (Math.sin(slices[i % length].angle) * currentLabelR + ((slices[i % length].left) ? (-labelHeight) : labelHeight)) / + Math.sin(slices[(i + 1) % length].angle); + currentLabelR = (nextLabelR < firstSlice.labelR) ? firstSlice.labelR : nextLabelR; + slices[(i + 1) % length].labelR = currentLabelR; + } + i++; + } + i = firstSlice.index; + var j = (i == 0)?length-1 : i - 1; + while(!(slices[i].left ^ slices[j].left)){ + if(!slices[j].omit){ + nextLabelR = (Math.sin(slices[i].angle) * currentLabelR + ((slices[i].left) ? labelHeight : (-labelHeight))) / + Math.sin(slices[j].angle); + currentLabelR = (nextLabelR < firstSlice.labelR) ? firstSlice.labelR : nextLabelR; + slices[j].labelR = currentLabelR; + } + i--;j--; + i = (i < 0)?i+slices.length:i; + j = (j < 0)?j+slices.length:j; + } + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Scatter.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Scatter.js new file mode 100644 index 00000000..abcf6b6c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Scatter.js @@ -0,0 +1,134 @@ +//>>built +define("dojox/charting/plot2d/Scatter",["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/has","./CartesianBase","./_PlotEvents","./common","dojox/lang/functional","dojox/lang/functional/reversed","dojox/lang/utils","dojox/gfx/fx","dojox/gfx/gradutils"],function(_1,_2,_3,_4,_5,_6,dc,df,_7,du,fx,_8){ +var _9=_7.lambda("item.purgeGroup()"); +return _3("dojox.charting.plot2d.Scatter",[_5,_6],{defaultParams:{shadows:null,animate:null},optionalParams:{markerStroke:{},markerOutline:{},markerShadow:{},markerFill:{},markerFont:"",markerFontColor:"",styleFunc:null},constructor:function(_a,_b){ +this.opt=_1.clone(_1.mixin(this.opt,this.defaultParams)); +du.updateWithObject(this.opt,_b); +du.updateWithPattern(this.opt,_b,this.optionalParams); +this.animate=this.opt.animate; +},render:function(_c,_d){ +if(this.zoom&&!this.isDataDirty()){ +return this.performZoom(_c,_d); +} +this.resetEvents(); +this.dirty=this.isDirty(); +var s; +if(this.dirty){ +_2.forEach(this.series,_9); +this._eventSeries={}; +this.cleanGroup(); +s=this.getGroup(); +df.forEachRev(this.series,function(_e){ +_e.cleanGroup(s); +}); +} +var t=this.chart.theme,_f=this.events(); +for(var i=this.series.length-1;i>=0;--i){ +var run=this.series[i]; +if(!this.dirty&&!run.dirty){ +t.skip(); +this._reconnectEvents(run.name); +continue; +} +run.cleanGroup(); +if(!run.data.length){ +run.dirty=false; +t.skip(); +continue; +} +var _10=t.next("marker",[this.opt,run]),_11,ht=this._hScaler.scaler.getTransformerFromModel(this._hScaler),vt=this._vScaler.scaler.getTransformerFromModel(this._vScaler); +if(run.hidden){ +run.dyn.marker=_10.symbol; +run.dyn.markerFill=_10.marker.fill; +run.dyn.markerStroke=_10.marker.stroke; +continue; +} +s=run.group; +if(typeof run.data[0]=="number"){ +_11=_2.map(run.data,function(v,i){ +return {x:ht(i+1)+_d.l,y:_c.height-_d.b-vt(v)}; +},this); +}else{ +_11=_2.map(run.data,function(v,i){ +return {x:ht(v.x)+_d.l,y:_c.height-_d.b-vt(v.y)}; +},this); +} +var _12=new Array(_11.length),_13=new Array(_11.length),_14=new Array(_11.length); +_2.forEach(_11,function(c,i){ +var _15=run.data[i],_16; +if(this.opt.styleFunc||typeof _15!="number"){ +var _17=typeof _15!="number"?[_15]:[]; +if(this.opt.styleFunc){ +_17.push(this.opt.styleFunc(_15)); +} +_16=t.addMixin(_10,"marker",_17,true); +}else{ +_16=t.post(_10,"marker"); +} +var _18="M"+c.x+" "+c.y+" "+_16.symbol; +if(_16.marker.shadow){ +_12[i]=s.createPath("M"+(c.x+_16.marker.shadow.dx)+" "+(c.y+_16.marker.shadow.dy)+" "+_16.symbol).setStroke(_16.marker.shadow).setFill(_16.marker.shadow.color); +if(this.animate){ +this._animateScatter(_12[i],_c.height-_d.b); +} +} +if(_16.marker.outline){ +var _19=dc.makeStroke(_16.marker.outline); +_19.width=2*_19.width+_16.marker.stroke.width; +_14[i]=s.createPath(_18).setStroke(_19); +if(this.animate){ +this._animateScatter(_14[i],_c.height-_d.b); +} +} +var _1a=dc.makeStroke(_16.marker.stroke),_1b=this._plotFill(_16.marker.fill,_c,_d); +if(_1b&&(_1b.type==="linear"||_1b.type=="radial")){ +var _1c=_8.getColor(_1b,{x:c.x,y:c.y}); +if(_1a){ +_1a.color=_1c; +} +_13[i]=s.createPath(_18).setStroke(_1a).setFill(_1c); +}else{ +_13[i]=s.createPath(_18).setStroke(_1a).setFill(_1b); +} +if(this.opt.labels){ +var _1d=_13[i].getBoundingBox(); +this.createLabel(s,_15,_1d,_16); +} +if(this.animate){ +this._animateScatter(_13[i],_c.height-_d.b); +} +},this); +if(_13.length){ +run.dyn.marker=_10.symbol; +run.dyn.markerStroke=_13[_13.length-1].getStroke(); +run.dyn.markerFill=_13[_13.length-1].getFill(); +} +if(_f){ +var _1e=new Array(_13.length); +_2.forEach(_13,function(s,i){ +var o={element:"marker",index:i,run:run,shape:s,outline:_14&&_14[i]||null,shadow:_12&&_12[i]||null,cx:_11[i].x,cy:_11[i].y}; +if(typeof run.data[0]=="number"){ +o.x=i+1; +o.y=run.data[i]; +}else{ +o.x=run.data[i].x; +o.y=run.data[i].y; +} +this._connectEvents(o); +_1e[i]=o; +},this); +this._eventSeries[run.name]=_1e; +}else{ +delete this._eventSeries[run.name]; +} +run.dirty=false; +} +this.dirty=false; +if(_4("dojo-bidi")){ +this._checkOrientation(this.group,_c,_d); +} +return this; +},_animateScatter:function(_1f,_20){ +fx.animateTransform(_1.delegate({shape:_1f,duration:1200,transform:[{name:"translate",start:[0,_20],end:[0,0]},{name:"scale",start:[0,0],end:[1,1]},{name:"original"}]},this.animate)).play(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Scatter.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Scatter.js.uncompressed.js new file mode 100644 index 00000000..4ef01fc0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Scatter.js.uncompressed.js @@ -0,0 +1,207 @@ +define("dojox/charting/plot2d/Scatter", ["dojo/_base/lang", "dojo/_base/array", "dojo/_base/declare", "dojo/has", "./CartesianBase", "./_PlotEvents", "./common", + "dojox/lang/functional", "dojox/lang/functional/reversed", "dojox/lang/utils", "dojox/gfx/fx", "dojox/gfx/gradutils"], + function(lang, arr, declare, has, CartesianBase, _PlotEvents, dc, df, dfr, du, fx, gradutils){ + + var purgeGroup = dfr.lambda("item.purgeGroup()"); + + return declare("dojox.charting.plot2d.Scatter", [CartesianBase, _PlotEvents], { + // summary: + // A plot object representing a typical scatter chart. + defaultParams: { + shadows: null, // draw shadows + animate: null // animate chart to place + }, + optionalParams: { + // theme component + markerStroke: {}, + markerOutline: {}, + markerShadow: {}, + markerFill: {}, + markerFont: "", + markerFontColor: "", + styleFunc: null + }, + + constructor: function(chart, kwArgs){ + // summary: + // Create the scatter plot. + // chart: dojox/charting/Chart + // The chart this plot belongs to. + // kwArgs: dojox.charting.plot2d.__DefaultCtorArgs? + // An optional keyword arguments object to help define this plot's parameters. + this.opt = lang.clone(lang.mixin(this.opt, this.defaultParams)); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + this.animate = this.opt.animate; + }, + + render: function(dim, offsets){ + // summary: + // Run the calculations for any axes for this plot. + // dim: Object + // An object in the form of { width, height } + // offsets: Object + // An object of the form { l, r, t, b}. + // returns: dojox/charting/plot2d/Scatter + // A reference to this plot for functional chaining. + if(this.zoom && !this.isDataDirty()){ + return this.performZoom(dim, offsets); + } + this.resetEvents(); + this.dirty = this.isDirty(); + var s; + if(this.dirty){ + arr.forEach(this.series, purgeGroup); + this._eventSeries = {}; + this.cleanGroup(); + s = this.getGroup(); + df.forEachRev(this.series, function(item){ item.cleanGroup(s); }); + } + var t = this.chart.theme, events = this.events(); + for(var i = this.series.length - 1; i >= 0; --i){ + var run = this.series[i]; + if(!this.dirty && !run.dirty){ + t.skip(); + this._reconnectEvents(run.name); + continue; + } + run.cleanGroup(); + if(!run.data.length){ + run.dirty = false; + t.skip(); + continue; + } + + var theme = t.next("marker", [this.opt, run]), lpoly, + ht = this._hScaler.scaler.getTransformerFromModel(this._hScaler), + vt = this._vScaler.scaler.getTransformerFromModel(this._vScaler); + if(run.hidden){ + run.dyn.marker = theme.symbol; + run.dyn.markerFill = theme.marker.fill; + run.dyn.markerStroke = theme.marker.stroke; + continue; + } + s = run.group; + if(typeof run.data[0] == "number"){ + lpoly = arr.map(run.data, function(v, i){ + return { + x: ht(i + 1) + offsets.l, + y: dim.height - offsets.b - vt(v) + }; + }, this); + }else{ + lpoly = arr.map(run.data, function(v, i){ + return { + x: ht(v.x) + offsets.l, + y: dim.height - offsets.b - vt(v.y) + }; + }, this); + } + + var shadowMarkers = new Array(lpoly.length), + frontMarkers = new Array(lpoly.length), + outlineMarkers = new Array(lpoly.length); + + arr.forEach(lpoly, function(c, i){ + var value = run.data[i], finalTheme; + if(this.opt.styleFunc || typeof value != "number"){ + var tMixin = typeof value != "number" ? [value] : []; + if(this.opt.styleFunc){ + tMixin.push(this.opt.styleFunc(value)); + } + finalTheme = t.addMixin(theme, "marker", tMixin, true); + }else{ + finalTheme = t.post(theme, "marker"); + } + var path = "M" + c.x + " " + c.y + " " + finalTheme.symbol; + if(finalTheme.marker.shadow){ + shadowMarkers[i] = s.createPath("M" + (c.x + finalTheme.marker.shadow.dx) + " " + + (c.y + finalTheme.marker.shadow.dy) + " " + finalTheme.symbol). + setStroke(finalTheme.marker.shadow).setFill(finalTheme.marker.shadow.color); + if(this.animate){ + this._animateScatter(shadowMarkers[i], dim.height - offsets.b); + } + } + if(finalTheme.marker.outline){ + var outline = dc.makeStroke(finalTheme.marker.outline); + outline.width = 2 * outline.width + finalTheme.marker.stroke.width; + outlineMarkers[i] = s.createPath(path).setStroke(outline); + if(this.animate){ + this._animateScatter(outlineMarkers[i], dim.height - offsets.b); + } + } + var stroke = dc.makeStroke(finalTheme.marker.stroke), + fill = this._plotFill(finalTheme.marker.fill, dim, offsets); + if(fill && (fill.type === "linear" || fill.type == "radial")){ + var color = gradutils.getColor(fill, {x: c.x, y: c.y}); + if(stroke){ + stroke.color = color; + } + frontMarkers[i] = s.createPath(path).setStroke(stroke).setFill(color); + }else{ + frontMarkers[i] = s.createPath(path).setStroke(stroke).setFill(fill); + } + if(this.opt.labels){ + var markerBox = frontMarkers[i].getBoundingBox(); + this.createLabel(s, value, markerBox, finalTheme); + } + if(this.animate){ + this._animateScatter(frontMarkers[i], dim.height - offsets.b); + } + }, this); + if(frontMarkers.length){ + run.dyn.marker = theme.symbol; + run.dyn.markerStroke = frontMarkers[frontMarkers.length - 1].getStroke(); + run.dyn.markerFill = frontMarkers[frontMarkers.length - 1].getFill(); + } + + if(events){ + var eventSeries = new Array(frontMarkers.length); + arr.forEach(frontMarkers, function(s, i){ + var o = { + element: "marker", + index: i, + run: run, + shape: s, + outline: outlineMarkers && outlineMarkers[i] || null, + shadow: shadowMarkers && shadowMarkers[i] || null, + cx: lpoly[i].x, + cy: lpoly[i].y + }; + if(typeof run.data[0] == "number"){ + o.x = i + 1; + o.y = run.data[i]; + }else{ + o.x = run.data[i].x; + o.y = run.data[i].y; + } + this._connectEvents(o); + eventSeries[i] = o; + }, this); + this._eventSeries[run.name] = eventSeries; + }else{ + delete this._eventSeries[run.name]; + } + run.dirty = false; + } + this.dirty = false; + // chart mirroring starts + if(has("dojo-bidi")){ + this._checkOrientation(this.group, dim, offsets); + } + // chart mirroring ends + return this; // dojox/charting/plot2d/Scatter + }, + _animateScatter: function(shape, offset){ + fx.animateTransform(lang.delegate({ + shape: shape, + duration: 1200, + transform: [ + {name: "translate", start: [0, offset], end: [0, 0]}, + {name: "scale", start: [0, 0], end: [1, 1]}, + {name: "original"} + ] + }, this.animate)).play(); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Spider.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Spider.js new file mode 100644 index 00000000..10153ce6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Spider.js @@ -0,0 +1,299 @@ +//>>built +define("dojox/charting/plot2d/Spider",["dojo/_base/lang","dojo/_base/declare","dojo/_base/connect","dojo/_base/array","dojo/dom-geometry","dojo/_base/fx","dojo/fx","dojo/sniff","./Base","./_PlotEvents","./common","../axis2d/common","dojox/gfx","dojox/gfx/matrix","dojox/gfx/fx","dojox/lang/functional","dojox/lang/utils","dojo/fx/easing"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,dc,da,g,m,_b,df,du,_c){ +var _d=0.2; +var _e=_2("dojox.charting.plot2d.Spider",[_9,_a],{defaultParams:{labels:true,ticks:false,fixed:true,precision:1,labelOffset:-10,labelStyle:"default",htmlLabels:true,startAngle:-90,divisions:3,axisColor:"",axisWidth:0,spiderColor:"",spiderWidth:0,seriesWidth:0,seriesFillAlpha:0.2,spiderOrigin:0.16,markerSize:3,spiderType:"polygon",animationType:_c.backOut,animate:null,axisTickFont:"",axisTickFontColor:"",axisFont:"",axisFontColor:""},optionalParams:{radius:0,font:"",fontColor:""},constructor:function(_f,_10){ +this.opt=_1.clone(this.defaultParams); +du.updateWithObject(this.opt,_10); +du.updateWithPattern(this.opt,_10,this.optionalParams); +this.dyn=[]; +this.datas={}; +this.labelKey=[]; +this.oldSeriePoints={}; +this.animate=this.opt.animate===null?{}:this.opt.animate; +this.animations={}; +},clear:function(){ +this.inherited(arguments); +this.dyn=[]; +this.axes=[]; +this.datas={}; +this.labelKey=[]; +this.oldSeriePoints={}; +this.animations={}; +return this; +},setAxis:function(_11){ +if(_11){ +if(_11.opt.min!=undefined){ +this.datas[_11.name].min=_11.opt.min; +} +if(_11.opt.max!=undefined){ +this.datas[_11.name].max=_11.opt.max; +} +} +return this; +},addSeries:function(run){ +this.series.push(run); +var key; +for(key in run.data){ +var val=run.data[key],_12=this.datas[key]; +if(_12){ +_12.vlist.push(val); +_12.min=Math.min(_12.min,val); +_12.max=Math.max(_12.max,val); +}else{ +var _13="__"+key; +this.axes.push(_13); +this[_13]=key; +this.datas[key]={min:val,max:val,vlist:[val]}; +} +} +if(this.labelKey.length<=0){ +for(key in run.data){ +this.labelKey.push(key); +} +} +return this; +},getSeriesStats:function(){ +return dc.collectSimpleStats(this.series); +},render:function(dim,_14){ +if(!this.dirty){ +return this; +} +this.dirty=false; +this.cleanGroup(); +var s=this.group,t=this.chart.theme; +this.resetEvents(); +if(!this.series||!this.series.length){ +return this; +} +var o=this.opt,ta=t.axis,rx=(dim.width-_14.l-_14.r)/2,ry=(dim.height-_14.t-_14.b)/2,r=Math.min(rx,ry),_15=o.font||(ta.majorTick&&ta.majorTick.font)||(ta.tick&&ta.tick.font)||"normal normal normal 7pt Tahoma",_16=o.axisFont||(ta.tick&&ta.tick.titleFont)||"normal normal normal 11pt Tahoma",_17=o.axisTickFontColor||(ta.majorTick&&ta.majorTick.fontColor)||(ta.tick&&ta.tick.fontColor)||"silver",_18=o.axisFontColor||(ta.tick&&ta.tick.titleFontColor)||"black",_19=o.axisColor||(ta.tick&&ta.tick.axisColor)||"silver",_1a=o.spiderColor||(ta.tick&&ta.tick.spiderColor)||"silver",_1b=o.axisWidth||(ta.stroke&&ta.stroke.width)||2,_1c=o.spiderWidth||(ta.stroke&&ta.stroke.width)||2,_1d=o.seriesWidth||(ta.stroke&&ta.stroke.width)||2,_1e=g.normalizedLength(g.splitFontString(_16).size),_1f=m._degToRad(o.startAngle),_20=_1f,_21,_22,_23,_24,_25,_26,_27,_28,ro=o.spiderOrigin,dv=o.divisions>=3?o.divisions:3,ms=o.markerSize,spt=o.spiderType,at=o.animationType,_29=o.labelOffset<-10?o.labelOffset:-10,_2a=0.2,i,j,_2b,len,_2c,_2d,_2e,run,_2f,min,max,_30; +if(o.labels){ +_21=_4.map(this.series,function(s){ +return s.name; +},this); +_22=df.foldl1(df.map(_21,function(_31){ +var _32=t.series.font; +return g._base._getTextBox(_31,{font:_32}).w; +},this),"Math.max(a, b)")/2; +r=Math.min(rx-2*_22,ry-_1e)+_29; +_23=r-_29; +} +if("radius" in o){ +r=o.radius; +_23=r-_29; +} +r/=(1+_2a); +var _33={cx:_14.l+rx,cy:_14.t+ry,r:r}; +for(i=this.series.length-1;i>=0;i--){ +_2e=this.series[i]; +if(!this.dirty&&!_2e.dirty){ +t.skip(); +continue; +} +_2e.cleanGroup(); +run=_2e.data; +if(run!==null){ +len=this._getObjectLength(run); +if(!_24||_24.length<=0){ +_24=[],_25=[],_28=[]; +this._buildPoints(_24,len,_33,r,_20,true,dim); +this._buildPoints(_25,len,_33,r*ro,_20,true,dim); +this._buildPoints(_28,len,_33,_23,_20,false,dim); +if(dv>2){ +_26=[],_27=[]; +for(j=0;j=0;--j){ +_2b=_24[j]; +var st={x:_2b.x+(_2b.x-_33.cx)*_2a,y:_2b.y+(_2b.y-_33.cy)*_2a},nd={x:_2b.x+(_2b.x-_33.cx)*_2a/2,y:_2b.y+(_2b.y-_33.cy)*_2a/2}; +_34.createLine({x1:_33.cx,y1:_33.cy,x2:st.x,y2:st.y}).setStroke(_35); +this._drawArrow(_34,st,nd,_35); +} +var _37=s.createGroup(); +for(j=_28.length-1;j>=0;--j){ +_2b=_28[j]; +_2c=g._base._getTextBox(this.labelKey[j],{font:_16}).w||0; +_2d=this.opt.htmlLabels&&g.renderer!="vml"?"html":"gfx"; +var _38=da.createText[_2d](this.chart,_37,(!_5.isBodyLtr()&&_2d=="html")?(_2b.x+_2c-dim.width):_2b.x,_2b.y,"middle",this.labelKey[j],_16,_18); +if(this.opt.htmlLabels){ +this.htmlElements.push(_38); +} +} +var _39=s.createGroup(); +if(spt=="polygon"){ +_39.createPolyline(_24).setStroke(_36); +_39.createPolyline(_25).setStroke(_36); +if(_26.length>0){ +for(j=_26.length-1;j>=0;--j){ +_39.createPolyline(_26[j]).setStroke(_36); +} +} +}else{ +_39.createCircle({cx:_33.cx,cy:_33.cy,r:r}).setStroke(_36); +_39.createCircle({cx:_33.cx,cy:_33.cy,r:r*ro}).setStroke(_36); +if(_27.length>0){ +for(j=_27.length-1;j>=0;--j){ +_39.createCircle({cx:_33.cx,cy:_33.cy,r:_27[j]}).setStroke(_36); +} +} +} +len=this._getObjectLength(this.datas); +var _3a=s.createGroup(),k=0; +for(var key in this.datas){ +_2f=this.datas[key]; +min=_2f.min; +max=_2f.max; +_30=max-min; +end=_20+2*Math.PI*k/len; +for(i=0;i=0;i--){ +_2e=this.series[i]; +run=_2e.data; +if(run!==null){ +var _3c=t.next("spider",[o,_2e]),f=g.normalizeColor(_3c.series.fill),sk={color:_3c.series.fill,width:_1d}; +f.a=o.seriesFillAlpha; +_2e.dyn={fill:f,stroke:sk}; +if(_2e.hidden){ +continue; +} +var _3d=[],_3e=[]; +k=0; +for(key in run){ +_2f=this.datas[key]; +min=_2f.min; +max=_2f.max; +_30=max-min; +var _3f=run[key],end=_20+2*Math.PI*k/len; +_2b=this._getCoordinate(_33,r*(ro+(1-ro)*(_3f-min)/_30),end,dim); +_3d.push(_2b); +_3e.push({sname:_2e.name,key:key,data:_3f}); +k++; +} +_3d[_3d.length]=_3d[0]; +_3e[_3e.length]=_3e[0]; +var _40=this._getBoundary(_3d),ts=_2e.group; +var _41=this.oldSeriePoints[_2e.name]; +var cs=this._createSeriesEntry(ts,(_41||_25),_3d,f,sk,r,ro,ms,at); +this.chart.seriesShapes[_2e.name]=cs; +this.oldSeriePoints[_2e.name]=_3d; +var po={element:"spider_poly",index:i,id:"spider_poly_"+_2e.name,run:_2e,plot:this,shape:cs.poly,parent:ts,brect:_40,cx:_33.cx,cy:_33.cy,cr:r,f:f,s:s}; +this._connectEvents(po); +var so={element:"spider_plot",index:i,id:"spider_plot_"+_2e.name,run:_2e,plot:this,shape:_2e.group}; +this._connectEvents(so); +_4.forEach(cs.circles,function(c,i){ +var co={element:"spider_circle",index:i,id:"spider_circle_"+_2e.name+i,run:_2e,plot:this,shape:c,parent:ts,tdata:_3e[i],cx:_3d[i].x,cy:_3d[i].y,f:f,s:s}; +this._connectEvents(co); +},this); +} +} +return this; +},_createSeriesEntry:function(ts,_42,sps,f,sk,r,ro,ms,at){ +var _43=this.animate?_42:sps; +var _44=ts.createPolyline(_43).setFill(f).setStroke(sk),_45=[]; +for(var j=0;j<_43.length;j++){ +var _46=_43[j],cr=ms; +var _47=ts.createCircle({cx:_46.x,cy:_46.y,r:cr}).setFill(f).setStroke(sk); +_45.push(_47); +} +if(this.animate){ +var _48=_4.map(sps,function(np,j){ +var sp=_42[j],_49=new _6.Animation(_1.delegate({duration:1000,easing:at,curve:[sp.y,np.y]},this.animate)); +var spl=_44,sc=_45[j]; +_3.connect(_49,"onAnimate",function(y){ +var _4a=spl.getShape(); +_4a.points[j].y=y; +spl.setShape(_4a); +var _4b=sc.getShape(); +_4b.cy=y; +sc.setShape(_4b); +}); +return _49; +},this); +var _4c=_4.map(sps,function(np,j){ +var sp=_42[j],_4d=new _6.Animation(_1.delegate({duration:1000,easing:at,curve:[sp.x,np.x]},this.animate)); +var spl=_44,sc=_45[j]; +_3.connect(_4d,"onAnimate",function(x){ +var _4e=spl.getShape(); +_4e.points[j].x=x; +spl.setShape(_4e); +var _4f=sc.getShape(); +_4f.cx=x; +sc.setShape(_4f); +}); +return _4d; +},this); +var _50=_7.combine(_48.concat(_4c)); +_50.play(); +} +return {group:ts,poly:_44,circles:_45}; +},plotEvent:function(o){ +if(o.element=="spider_plot"){ +if(o.type=="onmouseover"&&!_8("ie")){ +o.shape.moveToFront(); +} +} +},tooltipFunc:function(o){ +if(o.element=="spider_circle"){ +return o.tdata.sname+"
    "+o.tdata.key+"
    "+o.tdata.data; +}else{ +return null; +} +},_getBoundary:function(_51){ +var _52=_51[0].x,_53=_51[0].x,_54=_51[0].y,_55=_51[0].y; +for(var i=0;i<_51.length;i++){ +var _56=_51[i]; +_52=Math.max(_56.x,_52); +_54=Math.max(_56.y,_54); +_53=Math.min(_56.x,_53); +_55=Math.min(_56.y,_55); +} +return {x:_53,y:_55,width:_52-_53,height:_54-_55}; +},_drawArrow:function(s,_57,end,_58){ +var len=Math.sqrt(Math.pow(end.x-_57.x,2)+Math.pow(end.y-_57.y,2)),sin=(end.y-_57.y)/len,cos=(end.x-_57.x)/len,_59={x:end.x+(len/3)*(-sin),y:end.y+(len/3)*cos},_5a={x:end.x+(len/3)*sin,y:end.y+(len/3)*(-cos)}; +s.createPolyline([_57,_59,_5a]).setFill(_58.color).setStroke(_58); +},_buildPoints:function(_5b,_5c,_5d,_5e,_5f,_60,dim){ +for(var i=0;i<_5c;i++){ +var end=_5f+2*Math.PI*i/_5c; +_5b.push(this._getCoordinate(_5d,_5e,end,dim)); +} +if(_60){ +_5b.push(this._getCoordinate(_5d,_5e,_5f+2*Math.PI,dim)); +} +},_getCoordinate:function(_61,_62,_63,dim){ +var x=_61.cx+_62*Math.cos(_63); +if(_8("dojo-bidi")&&this.chart.isRightToLeft()&&dim){ +x=dim.width-x; +} +return {x:x,y:_61.cy+_62*Math.sin(_63)}; +},_getObjectLength:function(obj){ +var _64=0; +if(_1.isObject(obj)){ +for(var key in obj){ +_64++; +} +} +return _64; +},_getLabel:function(_65){ +return dc.getLabel(_65,this.opt.fixed,this.opt.precision); +}}); +return _e; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Spider.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Spider.js.uncompressed.js new file mode 100644 index 00000000..f33cfbdf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Spider.js.uncompressed.js @@ -0,0 +1,537 @@ +define("dojox/charting/plot2d/Spider", ["dojo/_base/lang", "dojo/_base/declare", "dojo/_base/connect", "dojo/_base/array", + "dojo/dom-geometry", "dojo/_base/fx", "dojo/fx", "dojo/sniff", + "./Base", "./_PlotEvents", "./common", "../axis2d/common", + "dojox/gfx", "dojox/gfx/matrix", "dojox/gfx/fx", "dojox/lang/functional", + "dojox/lang/utils", "dojo/fx/easing"], + function(lang, declare, hub, arr, domGeom, baseFx, coreFx, has, + Base, PlotEvents, dc, da, g, m, gfxfx, df, du, easing){ + + var FUDGE_FACTOR = 0.2; // use to overlap fans + + var Spider = declare("dojox.charting.plot2d.Spider", [Base, PlotEvents], { + // summary: + // The plot that represents a typical Spider chart. + defaultParams: { + labels: true, + ticks: false, + fixed: true, + precision: 1, + labelOffset: -10, + labelStyle: "default", // default/rows/auto + htmlLabels: true, // use HTML to draw labels + startAngle: -90, // start angle for slices in degrees + divisions: 3, // radius tick count + axisColor: "", // spider axis color + axisWidth: 0, // spider axis stroke width + spiderColor: "", // spider web color + spiderWidth: 0, // spider web stroke width + seriesWidth: 0, // plot border with + seriesFillAlpha: 0.2, // plot fill alpha + spiderOrigin: 0.16, + markerSize: 3, // radius of plot vertex (px) + spiderType: "polygon", //"circle" + animationType: easing.backOut, + animate: null, + axisTickFont: "", + axisTickFontColor: "", + axisFont: "", + axisFontColor: "" + }, + optionalParams: { + radius: 0, + font: "", + fontColor: "" + }, + + constructor: function(chart, kwArgs){ + // summary: + // Create a Spider plot. + // chart: dojox/charting/Chart + // The chart this plot belongs to. + // kwArgs: dojox.charting.plot2d.__DefaultCtorArgs? + // An optional keyword arguments object to help define this plot's parameters. + this.opt = lang.clone(this.defaultParams); + du.updateWithObject(this.opt, kwArgs); + du.updateWithPattern(this.opt, kwArgs, this.optionalParams); + this.dyn = []; + this.datas = {}; + this.labelKey = []; + this.oldSeriePoints = {}; + this.animate = this.opt.animate === null ? {} : this.opt.animate; + this.animations = {}; + }, + clear: function(){ + // summary: + // Clear out all of the information tied to this plot. + // returns: dojox/charting/plot2d/Spider + // A reference to this plot for functional chaining. + this.inherited(arguments); + this.dyn = []; + this.axes = []; + this.datas = {}; + this.labelKey = []; + this.oldSeriePoints = {}; + this.animations = {}; + return this; // dojox/charting/plot2d/Spider + }, + setAxis: function(axis){ + // summary: + // Optionally set axis min and max property. + // returns: dojox/charting/plot2d/Spider + // The reference to this plot for functional chaining. + + // override the computed min/max with provided values if any + if(axis){ + if(axis.opt.min != undefined){ + this.datas[axis.name].min = axis.opt.min; + } + if(axis.opt.max != undefined){ + this.datas[axis.name].max = axis.opt.max; + } + } + return this; // dojox/charting/plot2d/Spider + }, + addSeries: function(run){ + // summary: + // Add a data series to this plot. + // run: dojox.charting.Series + // The series to be added. + // returns: dojox/charting/plot2d/Base + // A reference to this plot for functional chaining. + this.series.push(run); + var key; + for(key in run.data){ + var val = run.data[key], + data = this.datas[key]; + if(data){ + data.vlist.push(val); + data.min = Math.min(data.min, val); + data.max = Math.max(data.max, val); + }else{ + var axisKey = "__"+key; + this.axes.push(axisKey); + this[axisKey] = key; + this.datas[key] = {min: val, max: val, vlist: [val]}; + } + } + if(this.labelKey.length <= 0){ + for(key in run.data){ + this.labelKey.push(key); + } + } + return this; // dojox.charting.plot2d.Base + }, + getSeriesStats: function(){ + // summary: + // Calculate the min/max on all attached series in both directions. + // returns: Object + // {hmin, hmax, vmin, vmax} min/max in both directions. + return dc.collectSimpleStats(this.series); // Object + }, + render: function(dim, offsets){ + // summary: + // Render the plot on the chart. + // dim: Object + // An object of the form { width, height }. + // offsets: Object + // An object of the form { l, r, t, b }. + // returns: dojox/charting/plot2d/Spider + // A reference to this plot for functional chaining. + if(!this.dirty){ return this; } + this.dirty = false; + this.cleanGroup(); + var s = this.group, t = this.chart.theme; + this.resetEvents(); + + if(!this.series || !this.series.length){ + return this; + } + + // calculate the geometry + var o = this.opt, ta = t.axis, + rx = (dim.width - offsets.l - offsets.r) / 2, + ry = (dim.height - offsets.t - offsets.b) / 2, + r = Math.min(rx, ry), + axisTickFont = o.font || (ta.majorTick && ta.majorTick.font) || (ta.tick && ta.tick.font) || "normal normal normal 7pt Tahoma", + axisFont = o.axisFont || (ta.tick && ta.tick.titleFont) || "normal normal normal 11pt Tahoma", + axisTickFontColor = o.axisTickFontColor || (ta.majorTick && ta.majorTick.fontColor) || (ta.tick && ta.tick.fontColor) || "silver", + axisFontColor = o.axisFontColor || (ta.tick && ta.tick.titleFontColor) || "black", + axisColor = o.axisColor || (ta.tick && ta.tick.axisColor) || "silver", + spiderColor = o.spiderColor || (ta.tick && ta.tick.spiderColor) || "silver", + axisWidth = o.axisWidth || (ta.stroke && ta.stroke.width) || 2, + spiderWidth = o.spiderWidth || (ta.stroke && ta.stroke.width) || 2, + seriesWidth = o.seriesWidth || (ta.stroke && ta.stroke.width) || 2, + asize = g.normalizedLength(g.splitFontString(axisFont).size), + startAngle = m._degToRad(o.startAngle), + start = startAngle, labels, shift, labelR, + outerPoints, innerPoints, divisionPoints, divisionRadius, labelPoints, + ro = o.spiderOrigin, dv = o.divisions >= 3 ? o.divisions : 3, ms = o.markerSize, + spt = o.spiderType, at = o.animationType, lboffset = o.labelOffset < -10 ? o.labelOffset : -10, + axisExtra = 0.2, + i, j, point, len, fontWidth, render, serieEntry, run, data, min, max, distance; + + if(o.labels){ + labels = arr.map(this.series, function(s){ + return s.name; + }, this); + shift = df.foldl1(df.map(labels, function(label){ + var font = t.series.font; + return g._base._getTextBox(label, { + font: font + }).w; + }, this), "Math.max(a, b)") / 2; + r = Math.min(rx - 2 * shift, ry - asize) + lboffset; + labelR = r - lboffset; + } + if("radius" in o){ + r = o.radius; + labelR = r - lboffset; + } + r /= (1+axisExtra); + var circle = { + cx: offsets.l + rx, + cy: offsets.t + ry, + r: r + }; + + for (i = this.series.length - 1; i >= 0; i--){ + serieEntry = this.series[i]; + if(!this.dirty && !serieEntry.dirty){ + t.skip(); + continue; + } + serieEntry.cleanGroup(); + run = serieEntry.data; + if(run !== null){ + len = this._getObjectLength(run); + //construct connect points + if(!outerPoints || outerPoints.length <= 0){ + outerPoints = [], innerPoints = [], labelPoints = []; + this._buildPoints(outerPoints, len, circle, r, start, true, dim); + this._buildPoints(innerPoints, len, circle, r*ro, start, true, dim); + this._buildPoints(labelPoints, len, circle, labelR, start, false, dim); + if(dv > 2){ + divisionPoints = [], divisionRadius = []; + for (j = 0; j < dv - 2; j++){ + divisionPoints[j] = []; + this._buildPoints(divisionPoints[j], len, circle, r*(ro + (1-ro)*(j+1)/(dv-1)), start, true, dim); + divisionRadius[j] = r*(ro + (1-ro)*(j+1)/(dv-1)); + } + } + } + } + } + + //draw Spider + //axis + var axisGroup = s.createGroup(), axisStroke = {color: axisColor, width: axisWidth}, + spiderStroke = {color: spiderColor, width: spiderWidth}; + for (j = outerPoints.length - 1; j >= 0; --j){ + point = outerPoints[j]; + var st = { + x: point.x + (point.x - circle.cx) * axisExtra, + y: point.y + (point.y - circle.cy) * axisExtra + }, + nd = { + x: point.x + (point.x - circle.cx) * axisExtra / 2, + y: point.y + (point.y - circle.cy) * axisExtra / 2 + }; + axisGroup.createLine({ + x1: circle.cx, + y1: circle.cy, + x2: st.x, + y2: st.y + }).setStroke(axisStroke); + //arrow + this._drawArrow(axisGroup, st, nd, axisStroke); + } + + // draw the label + var labelGroup = s.createGroup(); + for (j = labelPoints.length - 1; j >= 0; --j){ + point = labelPoints[j]; + fontWidth = g._base._getTextBox(this.labelKey[j], {font: axisFont}).w || 0; + render = this.opt.htmlLabels && g.renderer != "vml" ? "html" : "gfx"; + var elem = da.createText[render](this.chart, labelGroup, (!domGeom.isBodyLtr() && render == "html") ? (point.x + fontWidth - dim.width) : point.x, point.y, + "middle", this.labelKey[j], axisFont, axisFontColor); + if(this.opt.htmlLabels){ + this.htmlElements.push(elem); + } + } + + //spider web: polygon or circle + var spiderGroup = s.createGroup(); + if(spt == "polygon"){ + spiderGroup.createPolyline(outerPoints).setStroke(spiderStroke); + spiderGroup.createPolyline(innerPoints).setStroke(spiderStroke); + if(divisionPoints.length > 0){ + for (j = divisionPoints.length - 1; j >= 0; --j){ + spiderGroup.createPolyline(divisionPoints[j]).setStroke(spiderStroke); + } + } + }else{//circle + spiderGroup.createCircle({cx: circle.cx, cy: circle.cy, r: r}).setStroke(spiderStroke); + spiderGroup.createCircle({cx: circle.cx, cy: circle.cy, r: r*ro}).setStroke(spiderStroke); + if(divisionRadius.length > 0){ + for (j = divisionRadius.length - 1; j >= 0; --j){ + spiderGroup.createCircle({cx: circle.cx, cy: circle.cy, r: divisionRadius[j]}).setStroke(spiderStroke); + } + } + } + //text + len = this._getObjectLength(this.datas); + var textGroup = s.createGroup(), k = 0; + for(var key in this.datas){ + data = this.datas[key]; + min = data.min; + max = data.max; + distance = max - min; + end = start + 2 * Math.PI * k / len; + for (i = 0; i < dv; i++){ + var text = min + distance*i/(dv-1); + point = this._getCoordinate(circle, r*(ro + (1-ro)*i/(dv-1)), end, dim); + text = this._getLabel(text); + fontWidth = g._base._getTextBox(text, {font: axisTickFont}).w || 0; + render = this.opt.htmlLabels && g.renderer != "vml" ? "html" : "gfx"; + if(this.opt.htmlLabels){ + this.htmlElements.push(da.createText[render] + (this.chart, textGroup, (!domGeom.isBodyLtr() && render == "html") ? (point.x + fontWidth - dim.width) : point.x, point.y, + "start", text, axisTickFont, axisTickFontColor)); + } + } + k++; + } + + //draw series (animation) + this.chart.seriesShapes = {}; + for (i = this.series.length - 1; i >= 0; i--){ + serieEntry = this.series[i]; + run = serieEntry.data; + if(run !== null){ + var theme = t.next("spider", [o, serieEntry]), + f = g.normalizeColor(theme.series.fill), + sk = {color: theme.series.fill, width: seriesWidth}; + f.a = o.seriesFillAlpha; + serieEntry.dyn = {fill: f, stroke: sk}; + if(serieEntry.hidden){ + continue; + } + //series polygon + var seriePoints = [], tipData = []; + k = 0; + for(key in run){ + data = this.datas[key]; + min = data.min; + max = data.max; + distance = max - min; + var entry = run[key], end = start + 2 * Math.PI * k / len; + point = this._getCoordinate(circle, r*(ro + (1-ro)*(entry-min)/distance), end, dim); + seriePoints.push(point); + tipData.push({sname: serieEntry.name, key: key, data: entry}); + k++; + } + seriePoints[seriePoints.length] = seriePoints[0]; + tipData[tipData.length] = tipData[0]; + var polygonBoundRect = this._getBoundary(seriePoints), + ts = serieEntry.group; + + + var osps = this.oldSeriePoints[serieEntry.name]; + var cs = this._createSeriesEntry(ts, (osps || innerPoints), seriePoints, f, sk, r, ro, ms, at); + this.chart.seriesShapes[serieEntry.name] = cs; + this.oldSeriePoints[serieEntry.name] = seriePoints; + + var po = { + element: "spider_poly", + index: i, + id: "spider_poly_"+serieEntry.name, + run: serieEntry, + plot: this, + shape: cs.poly, + parent: ts, + brect: polygonBoundRect, + cx: circle.cx, + cy: circle.cy, + cr: r, + f: f, + s: s + }; + this._connectEvents(po); + + var so = { + element: "spider_plot", + index: i, + id: "spider_plot_"+serieEntry.name, + run: serieEntry, + plot: this, + shape: serieEntry.group + }; + this._connectEvents(so); + + arr.forEach(cs.circles, function(c, i){ + var co = { + element: "spider_circle", + index: i, + id: "spider_circle_"+serieEntry.name+i, + run: serieEntry, + plot: this, + shape: c, + parent: ts, + tdata: tipData[i], + cx: seriePoints[i].x, + cy: seriePoints[i].y, + f: f, + s: s + }; + this._connectEvents(co); + }, this); + } + } + return this; // dojox/charting/plot2d/Spider + }, + _createSeriesEntry: function(ts, osps, sps, f, sk, r, ro, ms, at){ + //polygon + var initpoints = this.animate?osps:sps; + var spoly = ts.createPolyline(initpoints).setFill(f).setStroke(sk), scircle = []; + for (var j = 0; j < initpoints.length; j++){ + var point = initpoints[j], cr = ms; + var circle = ts.createCircle({cx: point.x, cy: point.y, r: cr}).setFill(f).setStroke(sk); + scircle.push(circle); + } + if(this.animate) { + var anims = arr.map(sps, function (np, j) { + // create animation + var sp = osps[j], + anim = new baseFx.Animation(lang.delegate({ + duration: 1000, + easing: at, + curve: [sp.y, np.y] + }, this.animate)); + var spl = spoly, sc = scircle[j]; + hub.connect(anim, "onAnimate", function (y) { + //apply poly + var pshape = spl.getShape(); + pshape.points[j].y = y; + spl.setShape(pshape); + //apply circle + var cshape = sc.getShape(); + cshape.cy = y; + sc.setShape(cshape); + }); + return anim; + }, this); + + var anims1 = arr.map(sps, function (np, j) { + // create animation + var sp = osps[j], + anim = new baseFx.Animation(lang.delegate({ + duration: 1000, + easing: at, + curve: [sp.x, np.x] + }, this.animate)); + var spl = spoly, sc = scircle[j]; + hub.connect(anim, "onAnimate", function (x) { + //apply poly + var pshape = spl.getShape(); + pshape.points[j].x = x; + spl.setShape(pshape); + //apply circle + var cshape = sc.getShape(); + cshape.cx = x; + sc.setShape(cshape); + }); + return anim; + }, this); + var masterAnimation = coreFx.combine(anims.concat(anims1)); //dojo.fx.chain(anims); + masterAnimation.play(); + } + return {group :ts, poly: spoly, circles: scircle}; + }, + plotEvent: function(o){ + // summary: + // Stub function for use by specific plots. + // o: Object + // An object intended to represent event parameters. + if(o.element == "spider_plot"){ + //dojo gfx function "moveToFront" not work in IE + if(o.type == "onmouseover" && !has("ie")){ + o.shape.moveToFront(); + } + } + }, + + tooltipFunc: function(o){ + if(o.element == "spider_circle"){ + return o.tdata.sname + "
    " + o.tdata.key + "
    " + o.tdata.data; + }else{ + return null; + } + }, + + _getBoundary: function(points){ + var xmax = points[0].x, + xmin = points[0].x, + ymax = points[0].y, + ymin = points[0].y; + for(var i = 0; i < points.length; i++){ + var point = points[i]; + xmax = Math.max(point.x, xmax); + ymax = Math.max(point.y, ymax); + xmin = Math.min(point.x, xmin); + ymin = Math.min(point.y, ymin); + } + return { + x: xmin, + y: ymin, + width: xmax - xmin, + height: ymax - ymin + }; + }, + + _drawArrow: function(s, start, end, stroke){ + var len = Math.sqrt(Math.pow(end.x - start.x, 2) + Math.pow(end.y - start.y, 2)), + sin = (end.y - start.y)/len, cos = (end.x - start.x)/len, + point2 = {x: end.x + (len/3)*(-sin), y: end.y + (len/3)*cos}, + point3 = {x: end.x + (len/3)*sin, y: end.y + (len/3)*(-cos)}; + s.createPolyline([start, point2, point3]).setFill(stroke.color).setStroke(stroke); + }, + + _buildPoints: function(points, count, circle, radius, angle, recursive, dim){ + for(var i = 0; i < count; i++){ + var end = angle + 2 * Math.PI * i / count; + points.push(this._getCoordinate(circle, radius, end, dim)); + } + if(recursive){ + points.push(this._getCoordinate(circle, radius, angle + 2 * Math.PI, dim)); + } + }, + + _getCoordinate: function(circle, radius, angle, dim){ + var x = circle.cx + radius * Math.cos(angle); + if(has("dojo-bidi") && this.chart.isRightToLeft() && dim){ + x = dim.width - x; + } + return { + x: x, + y: circle.cy + radius * Math.sin(angle) + } + }, + + _getObjectLength: function(obj){ + var count = 0; + if(lang.isObject(obj)){ + for(var key in obj){ + count++; + } + } + return count; + }, + + // utilities + _getLabel: function(number){ + return dc.getLabel(number, this.opt.fixed, this.opt.precision); + } + }); + + return Spider; // dojox/plot2d/Spider +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Stacked.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Stacked.js new file mode 100644 index 00000000..598171d9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Stacked.js @@ -0,0 +1,24 @@ +//>>built +define("dojox/charting/plot2d/Stacked",["dojo/_base/declare","./Default","./commonStacked"],function(_1,_2,_3){ +return _1("dojox.charting.plot2d.Stacked",_2,{getSeriesStats:function(){ +var _4=_3.collectStats(this.series); +return _4; +},buildSegments:function(i,_5){ +var _6=this.series[i],_7=_5?Math.max(0,Math.floor(this._hScaler.bounds.from-1)):0,_8=_5?Math.min(_6.data.length-1,Math.ceil(this._hScaler.bounds.to)):_6.data.length-1,_9=null,_a=[]; +for(var j=_7;j<=_8;j++){ +var _b=_5?_3.getIndexValue(this.series,i,j):_3.getValue(this.series,i,_6.data[j]?_6.data[j].x:null); +if(_b[0]!=null&&(_5||_b[0].y!=null)){ +if(!_9){ +_9=[]; +_a.push({index:j,rseg:_9}); +} +_9.push(_b[0]); +}else{ +if(!this.opt.interpolate||_5){ +_9=null; +} +} +} +return _a; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Stacked.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Stacked.js.uncompressed.js new file mode 100644 index 00000000..b250ab3d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/Stacked.js.uncompressed.js @@ -0,0 +1,44 @@ +define("dojox/charting/plot2d/Stacked", ["dojo/_base/declare", "./Default", "./commonStacked"], + function(declare, Default, commonStacked){ + + return declare("dojox.charting.plot2d.Stacked", Default, { + // summary: + // Like the default plot, Stacked sets up lines, areas and markers + // in a stacked fashion (values on the y axis added to each other) + // as opposed to a direct one. + getSeriesStats: function(){ + // summary: + // Calculate the min/max on all attached series in both directions. + // returns: Object + // {hmin, hmax, vmin, vmax} min/max in both directions. + var stats = commonStacked.collectStats(this.series); + return stats; // Object + }, + + buildSegments: function(i, indexed){ + var run = this.series[i], + min = indexed?Math.max(0, Math.floor(this._hScaler.bounds.from - 1)):0, + max = indexed?Math.min(run.data.length-1, Math.ceil(this._hScaler.bounds.to)):run.data.length-1, + rseg = null, segments = []; + // split the run data into dense segments (each containing no nulls) + // except if interpolates is false in which case ignore null between valid data + for(var j = min; j <= max; j++){ + var value = indexed ? commonStacked.getIndexValue(this.series, i, j) : commonStacked.getValue(this.series, i, run.data[j] ?run.data[j].x: null); + if(value[0] != null && (indexed || value[0].y != null)){ + if(!rseg){ + rseg = []; + segments.push({index: j, rseg: rseg}); + } + rseg.push(value[0]); + }else{ + if(!this.opt.interpolate || indexed){ + // we break the line only if not interpolating or if we have indexed data + rseg = null; + } + } + } + return segments; + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedAreas.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedAreas.js new file mode 100644 index 00000000..d09acc42 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedAreas.js @@ -0,0 +1,7 @@ +//>>built +define("dojox/charting/plot2d/StackedAreas",["dojo/_base/declare","./Stacked"],function(_1,_2){ +return _1("dojox.charting.plot2d.StackedAreas",_2,{constructor:function(){ +this.opt.lines=true; +this.opt.areas=true; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedAreas.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedAreas.js.uncompressed.js new file mode 100644 index 00000000..68af0b27 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedAreas.js.uncompressed.js @@ -0,0 +1,14 @@ +define("dojox/charting/plot2d/StackedAreas", ["dojo/_base/declare", "./Stacked"], function(declare, Stacked){ + + return declare("dojox.charting.plot2d.StackedAreas", Stacked, { + // summary: + // A convenience object to set up a stacked area plot. + constructor: function(){ + // summary: + // Force our Stacked plotter to include both lines and areas. + this.opt.lines = true; + this.opt.areas = true; + } + }); +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedBars.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedBars.js new file mode 100644 index 00000000..d8a6cc57 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedBars.js @@ -0,0 +1,22 @@ +//>>built +define("dojox/charting/plot2d/StackedBars",["dojo/_base/declare","./Bars","./commonStacked"],function(_1,_2,_3){ +return _1("dojox.charting.plot2d.StackedBars",_2,{getSeriesStats:function(){ +var _4=_3.collectStats(this.series),t; +_4.hmin-=0.5; +_4.hmax+=0.5; +t=_4.hmin,_4.hmin=_4.vmin,_4.vmin=t; +t=_4.hmax,_4.hmax=_4.vmax,_4.vmax=t; +return _4; +},getValue:function(_5,_6,_7,_8){ +var y,x; +if(_8){ +x=_6; +y=_3.getIndexValue(this.series,_7,x); +}else{ +x=_5.x-1; +y=_3.getValue(this.series,_7,_5.x); +y=[y[0]?y[0].y:null,y[1]?y[1]:null]; +} +return {x:x,y:y[0],py:y[1]}; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedBars.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedBars.js.uncompressed.js new file mode 100644 index 00000000..acf06518 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedBars.js.uncompressed.js @@ -0,0 +1,33 @@ +define("dojox/charting/plot2d/StackedBars", ["dojo/_base/declare", "./Bars", "./commonStacked"], + function(declare, Bars, commonStacked){ + + return declare("dojox.charting.plot2d.StackedBars", Bars, { + // summary: + // The plot object representing a stacked bar chart (horizontal bars). + getSeriesStats: function(){ + // summary: + // Calculate the min/max on all attached series in both directions. + // returns: Object + // {hmin, hmax, vmin, vmax} min/max in both directions. + var stats = commonStacked.collectStats(this.series), t; + stats.hmin -= 0.5; + stats.hmax += 0.5; + t = stats.hmin, stats.hmin = stats.vmin, stats.vmin = t; + t = stats.hmax, stats.hmax = stats.vmax, stats.vmax = t; + return stats; // Object + }, + getValue: function(value, index, seriesIndex, indexed){ + var y,x; + if(indexed){ + x = index; + y = commonStacked.getIndexValue(this.series, seriesIndex, x); + }else{ + x = value.x - 1; + y = commonStacked.getValue(this.series, seriesIndex, value.x); + y = [ y[0]?y[0].y:null, y[1]?y[1]:null ]; + } + // in py we return the previous stack value as we need it to position labels on columns + return { x: x, y: y[0], py: y[1] }; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedColumns.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedColumns.js new file mode 100644 index 00000000..4573b148 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedColumns.js @@ -0,0 +1,20 @@ +//>>built +define("dojox/charting/plot2d/StackedColumns",["dojo/_base/declare","./Columns","./commonStacked"],function(_1,_2,_3){ +return _1("dojox.charting.plot2d.StackedColumns",_2,{getSeriesStats:function(){ +var _4=_3.collectStats(this.series); +_4.hmin-=0.5; +_4.hmax+=0.5; +return _4; +},getValue:function(_5,_6,_7,_8){ +var x,y; +if(_8){ +x=_6; +y=_3.getIndexValue(this.series,_7,x); +}else{ +x=_5.x-1; +y=_3.getValue(this.series,_7,_5.x); +y=[y[0]?y[0].y:null,y[1]?y[1]:null]; +} +return {x:x,y:y[0],py:y[1]}; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedColumns.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedColumns.js.uncompressed.js new file mode 100644 index 00000000..723a077a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedColumns.js.uncompressed.js @@ -0,0 +1,31 @@ +define("dojox/charting/plot2d/StackedColumns", ["dojo/_base/declare", "./Columns", "./commonStacked"], + function( declare, Columns, commonStacked){ + + return declare("dojox.charting.plot2d.StackedColumns", Columns, { + // summary: + // The plot object representing a stacked column chart (vertical bars). + getSeriesStats: function(){ + // summary: + // Calculate the min/max on all attached series in both directions. + // returns: Object + // {hmin, hmax, vmin, vmax} min/max in both directions. + var stats = commonStacked.collectStats(this.series); + stats.hmin -= 0.5; + stats.hmax += 0.5; + return stats; // Object + }, + getValue: function(value, index, seriesIndex, indexed){ + var x, y; + if(indexed){ + x = index; + y = commonStacked.getIndexValue(this.series, seriesIndex, x); + }else{ + x = value.x - 1; + y = commonStacked.getValue(this.series, seriesIndex, value.x); + y = [ y[0]?y[0].y:null, y[1]?y[1]:null ]; + } + // in py we return the previous stack value as we need it to position labels on columns + return { x: x, y: y[0], py: y[1] }; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedLines.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedLines.js new file mode 100644 index 00000000..80f2e05e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedLines.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/charting/plot2d/StackedLines",["dojo/_base/declare","./Stacked"],function(_1,_2){ +return _1("dojox.charting.plot2d.StackedLines",_2,{constructor:function(){ +this.opt.lines=true; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedLines.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedLines.js.uncompressed.js new file mode 100644 index 00000000..081499bb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/StackedLines.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/plot2d/StackedLines", ["dojo/_base/declare", "./Stacked"], function(declare, Stacked){ + + return declare("dojox.charting.plot2d.StackedLines", Stacked, { + // summary: + // A convenience object to create a stacked line chart. + constructor: function(){ + // summary: + // Force our Stacked base to be lines only. + this.opt.lines = true; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/_PlotEvents.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/_PlotEvents.js new file mode 100644 index 00000000..ca662c8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/_PlotEvents.js @@ -0,0 +1,68 @@ +//>>built +define("dojox/charting/plot2d/_PlotEvents",["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/_base/connect"],function(_1,_2,_3,_4){ +return _3("dojox.charting.plot2d._PlotEvents",null,{constructor:function(){ +this._shapeEvents=[]; +this._eventSeries={}; +},destroy:function(){ +this.resetEvents(); +this.inherited(arguments); +},plotEvent:function(o){ +},raiseEvent:function(o){ +this.plotEvent(o); +var t=_1.delegate(o); +t.originalEvent=o.type; +t.originalPlot=o.plot; +t.type="onindirect"; +_2.forEach(this.chart.stack,function(_5){ +if(_5!==this&&_5.plotEvent){ +t.plot=_5; +_5.plotEvent(t); +} +},this); +},connect:function(_6,_7){ +this.dirty=true; +return _4.connect(this,"plotEvent",_6,_7); +},events:function(){ +return !!this.plotEvent.after; +},resetEvents:function(){ +if(this._shapeEvents.length){ +_2.forEach(this._shapeEvents,function(_8){ +_8.shape.disconnect(_8.handle); +}); +this._shapeEvents=[]; +} +this.raiseEvent({type:"onplotreset",plot:this}); +},_connectSingleEvent:function(o,_9){ +this._shapeEvents.push({shape:o.eventMask,handle:o.eventMask.connect(_9,this,function(e){ +o.type=_9; +o.event=e; +this.raiseEvent(o); +o.event=null; +})}); +},_connectEvents:function(o){ +if(o){ +o.chart=this.chart; +o.plot=this; +o.hAxis=this.hAxis||null; +o.vAxis=this.vAxis||null; +o.eventMask=o.eventMask||o.shape; +this._connectSingleEvent(o,"onmouseover"); +this._connectSingleEvent(o,"onmouseout"); +this._connectSingleEvent(o,"onclick"); +} +},_reconnectEvents:function(_a){ +var a=this._eventSeries[_a]; +if(a){ +_2.forEach(a,this._connectEvents,this); +} +},fireEvent:function(_b,_c,_d,_e){ +var s=this._eventSeries[_b]; +if(s&&s.length&&_d>built +define("dojox/charting/plot2d/common",["dojo/_base/lang","dojo/_base/array","dojo/_base/Color","dojox/gfx","dojox/lang/functional","../scaler/common"],function(_1,_2,_3,g,df,sc){ +var _4=_1.getObject("dojox.charting.plot2d.common",true); +return _1.mixin(_4,{doIfLoaded:sc.doIfLoaded,makeStroke:function(_5){ +if(!_5){ +return _5; +} +if(typeof _5=="string"||_5 instanceof _3){ +_5={color:_5}; +} +return g.makeParameters(g.defaultStroke,_5); +},augmentColor:function(_6,_7){ +var t=new _3(_6),c=new _3(_7); +c.a=t.a; +return c; +},augmentStroke:function(_8,_9){ +var s=_4.makeStroke(_8); +if(s){ +s.color=_4.augmentColor(s.color,_9); +} +return s; +},augmentFill:function(_a,_b){ +var fc,c=new _3(_b); +if(typeof _a=="string"||_a instanceof _3){ +return _4.augmentColor(_a,_b); +} +return _a; +},defaultStats:{vmin:Number.POSITIVE_INFINITY,vmax:Number.NEGATIVE_INFINITY,hmin:Number.POSITIVE_INFINITY,hmax:Number.NEGATIVE_INFINITY},collectSimpleStats:function(_c){ +var _d=_1.delegate(_4.defaultStats); +for(var i=0;i<_c.length;++i){ +var _e=_c[i]; +for(var j=0;j<_e.data.length;j++){ +if(_e.data[j]!==null){ +if(typeof _e.data[j]=="number"){ +var _f=_d.vmin,_10=_d.vmax; +_2.forEach(_e.data,function(val,i){ +if(val!==null){ +var x=i+1,y=val; +if(isNaN(y)){ +y=0; +} +_d.hmin=Math.min(_d.hmin,x); +_d.hmax=Math.max(_d.hmax,x); +_d.vmin=Math.min(_d.vmin,y); +_d.vmax=Math.max(_d.vmax,y); +} +}); +if("ymin" in _e){ +_d.vmin=Math.min(_f,_e.ymin); +} +if("ymax" in _e){ +_d.vmax=Math.max(_10,_e.ymax); +} +}else{ +var _11=_d.hmin,_12=_d.hmax,_f=_d.vmin,_10=_d.vmax; +if(!("xmin" in _e)||!("xmax" in _e)||!("ymin" in _e)||!("ymax" in _e)){ +_2.forEach(_e.data,function(val,i){ +if(val!==null){ +var x="x" in val?val.x:i+1,y=val.y; +if(isNaN(x)){ +x=0; +} +if(isNaN(y)){ +y=0; +} +_d.hmin=Math.min(_d.hmin,x); +_d.hmax=Math.max(_d.hmax,x); +_d.vmin=Math.min(_d.vmin,y); +_d.vmax=Math.max(_d.vmax,y); +} +}); +} +if("xmin" in _e){ +_d.hmin=Math.min(_11,_e.xmin); +} +if("xmax" in _e){ +_d.hmax=Math.max(_12,_e.xmax); +} +if("ymin" in _e){ +_d.vmin=Math.min(_f,_e.ymin); +} +if("ymax" in _e){ +_d.vmax=Math.max(_10,_e.ymax); +} +} +break; +} +} +} +return _d; +},calculateBarSize:function(_13,opt,_14){ +if(!_14){ +_14=1; +} +var gap=opt.gap,_15=(_13-2*gap)/_14; +if("minBarSize" in opt){ +_15=Math.max(_15,opt.minBarSize); +} +if("maxBarSize" in opt){ +_15=Math.min(_15,opt.maxBarSize); +} +_15=Math.max(_15,1); +gap=(_13-_15*_14)/2; +return {size:_15,gap:gap}; +},collectStackedStats:function(_16){ +var _17=_1.clone(_4.defaultStats); +if(_16.length){ +_17.hmin=Math.min(_17.hmin,1); +_17.hmax=df.foldl(_16,"seed, run -> Math.max(seed, run.data.length)",_17.hmax); +for(var i=0;i<_17.hmax;++i){ +var v=_16[0].data[i]; +v=v&&(typeof v=="number"?v:v.y); +if(isNaN(v)){ +v=0; +} +_17.vmin=Math.min(_17.vmin,v); +for(var j=1;j<_16.length;++j){ +var t=_16[j].data[i]; +t=t&&(typeof t=="number"?t:t.y); +if(isNaN(t)){ +t=0; +} +v+=t; +} +_17.vmax=Math.max(_17.vmax,v); +} +} +return _17; +},curve:function(a,_18){ +var _19=a.slice(0); +if(_18=="x"){ +_19[_19.length]=_19[0]; +} +var p=_2.map(_19,function(_1a,i){ +if(i==0){ +return "M"+_1a.x+","+_1a.y; +} +if(!isNaN(_18)){ +var dx=_1a.x-_19[i-1].x,dy=_19[i-1].y; +return "C"+(_1a.x-(_18-1)*(dx/_18))+","+dy+" "+(_1a.x-(dx/_18))+","+_1a.y+" "+_1a.x+","+_1a.y; +}else{ +if(_18=="X"||_18=="x"||_18=="S"){ +var p0,p1=_19[i-1],p2=_19[i],p3; +var _1b,_1c,_1d,_1e; +var f=1/6; +if(i==1){ +if(_18=="x"){ +p0=_19[_19.length-2]; +}else{ +p0=p1; +} +f=1/3; +}else{ +p0=_19[i-2]; +} +if(i==(_19.length-1)){ +if(_18=="x"){ +p3=_19[1]; +}else{ +p3=p2; +} +f=1/3; +}else{ +p3=_19[i+1]; +} +var _1f=Math.sqrt((p2.x-p1.x)*(p2.x-p1.x)+(p2.y-p1.y)*(p2.y-p1.y)); +var _20=Math.sqrt((p2.x-p0.x)*(p2.x-p0.x)+(p2.y-p0.y)*(p2.y-p0.y)); +var _21=Math.sqrt((p3.x-p1.x)*(p3.x-p1.x)+(p3.y-p1.y)*(p3.y-p1.y)); +var _22=_20*f; +var _23=_21*f; +if(_22>_1f/2&&_23>_1f/2){ +_22=_1f/2; +_23=_1f/2; +}else{ +if(_22>_1f/2){ +_22=_1f/2; +_23=_1f/2*_21/_20; +}else{ +if(_23>_1f/2){ +_23=_1f/2; +_22=_1f/2*_20/_21; +} +} +} +if(_18=="S"){ +if(p0==p1){ +_22=0; +} +if(p2==p3){ +_23=0; +} +} +_1b=p1.x+_22*(p2.x-p0.x)/_20; +_1c=p1.y+_22*(p2.y-p0.y)/_20; +_1d=p2.x-_23*(p3.x-p1.x)/_21; +_1e=p2.y-_23*(p3.y-p1.y)/_21; +} +} +return "C"+(_1b+","+_1c+" "+_1d+","+_1e+" "+p2.x+","+p2.y); +}); +return p.join(" "); +},getLabel:function(_24,_25,_26){ +return sc.doIfLoaded("dojo/number",function(_27){ +return (_25?_27.format(_24,{places:_26}):_27.format(_24))||""; +},function(){ +return _25?_24.toFixed(_26):_24.toString(); +}); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/common.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/common.js.uncompressed.js new file mode 100644 index 00000000..d30631a6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/common.js.uncompressed.js @@ -0,0 +1,214 @@ +define("dojox/charting/plot2d/common", ["dojo/_base/lang", "dojo/_base/array", "dojo/_base/Color", + "dojox/gfx", "dojox/lang/functional", "../scaler/common"], + function(lang, arr, Color, g, df, sc){ + + var common = lang.getObject("dojox.charting.plot2d.common", true); + + return lang.mixin(common, { + doIfLoaded: sc.doIfLoaded, + makeStroke: function(stroke){ + if(!stroke){ return stroke; } + if(typeof stroke == "string" || stroke instanceof Color){ + stroke = {color: stroke}; + } + return g.makeParameters(g.defaultStroke, stroke); + }, + augmentColor: function(target, color){ + var t = new Color(target), + c = new Color(color); + c.a = t.a; + return c; + }, + augmentStroke: function(stroke, color){ + var s = common.makeStroke(stroke); + if(s){ + s.color = common.augmentColor(s.color, color); + } + return s; + }, + augmentFill: function(fill, color){ + var fc, c = new Color(color); + if(typeof fill == "string" || fill instanceof Color){ + return common.augmentColor(fill, color); + } + return fill; + }, + + defaultStats: { + vmin: Number.POSITIVE_INFINITY, vmax: Number.NEGATIVE_INFINITY, + hmin: Number.POSITIVE_INFINITY, hmax: Number.NEGATIVE_INFINITY + }, + + collectSimpleStats: function(series){ + var stats = lang.delegate(common.defaultStats); + for(var i = 0; i < series.length; ++i){ + var run = series[i]; + for(var j = 0; j < run.data.length; j++){ + if(run.data[j] !== null){ + if(typeof run.data[j] == "number"){ + // 1D case + var old_vmin = stats.vmin, old_vmax = stats.vmax; + arr.forEach(run.data, function(val, i){ + if(val !== null){ + var x = i + 1, y = val; + if(isNaN(y)){ y = 0; } + stats.hmin = Math.min(stats.hmin, x); + stats.hmax = Math.max(stats.hmax, x); + stats.vmin = Math.min(stats.vmin, y); + stats.vmax = Math.max(stats.vmax, y); + } + }); + if("ymin" in run){ stats.vmin = Math.min(old_vmin, run.ymin); } + if("ymax" in run){ stats.vmax = Math.max(old_vmax, run.ymax); } + }else{ + // 2D case + var old_hmin = stats.hmin, old_hmax = stats.hmax, + old_vmin = stats.vmin, old_vmax = stats.vmax; + if(!("xmin" in run) || !("xmax" in run) || !("ymin" in run) || !("ymax" in run)){ + arr.forEach(run.data, function(val, i){ + if(val !== null){ + var x = "x" in val ? val.x : i + 1, y = val.y; + if(isNaN(x)){ x = 0; } + if(isNaN(y)){ y = 0; } + stats.hmin = Math.min(stats.hmin, x); + stats.hmax = Math.max(stats.hmax, x); + stats.vmin = Math.min(stats.vmin, y); + stats.vmax = Math.max(stats.vmax, y); + } + }); + } + if("xmin" in run){ stats.hmin = Math.min(old_hmin, run.xmin); } + if("xmax" in run){ stats.hmax = Math.max(old_hmax, run.xmax); } + if("ymin" in run){ stats.vmin = Math.min(old_vmin, run.ymin); } + if("ymax" in run){ stats.vmax = Math.max(old_vmax, run.ymax); } + } + + break; + } + } + } + return stats; + }, + + calculateBarSize: function(/* Number */ availableSize, /* Object */ opt, /* Number? */ clusterSize){ + if(!clusterSize){ + clusterSize = 1; + } + var gap = opt.gap, size = (availableSize - 2 * gap) / clusterSize; + if("minBarSize" in opt){ + size = Math.max(size, opt.minBarSize); + } + if("maxBarSize" in opt){ + size = Math.min(size, opt.maxBarSize); + } + size = Math.max(size, 1); + gap = (availableSize - size * clusterSize) / 2; + return {size: size, gap: gap}; // Object + }, + + collectStackedStats: function(series){ + // collect statistics + var stats = lang.clone(common.defaultStats); + if(series.length){ + // 1st pass: find the maximal length of runs + stats.hmin = Math.min(stats.hmin, 1); + stats.hmax = df.foldl(series, "seed, run -> Math.max(seed, run.data.length)", stats.hmax); + // 2nd pass: stack values + for(var i = 0; i < stats.hmax; ++i){ + var v = series[0].data[i]; + v = v && (typeof v == "number" ? v : v.y); + if(isNaN(v)){ v = 0; } + stats.vmin = Math.min(stats.vmin, v); + for(var j = 1; j < series.length; ++j){ + var t = series[j].data[i]; + t = t && (typeof t == "number" ? t : t.y); + if(isNaN(t)){ t = 0; } + v += t; + } + stats.vmax = Math.max(stats.vmax, v); + } + } + return stats; + }, + + curve: function(/* Number[] */a, /* Number|String */tension){ + // FIX for #7235, submitted by Enzo Michelangeli. + // Emulates the smoothing algorithms used in a famous, unnamed spreadsheet + // program ;) + var array = a.slice(0); + if(tension == "x") { + array[array.length] = array[0]; // add a last element equal to the first, closing the loop + } + var p=arr.map(array, function(item, i){ + if(i==0){ return "M" + item.x + "," + item.y; } + if(!isNaN(tension)) { // use standard Dojo smoothing in tension is numeric + var dx=item.x-array[i-1].x, dy=array[i-1].y; + return "C"+(item.x-(tension-1)*(dx/tension))+","+dy+" "+(item.x-(dx/tension))+","+item.y+" "+item.x+","+item.y; + } else if(tension == "X" || tension == "x" || tension == "S") { + // use Excel "line smoothing" algorithm (http://xlrotor.com/resources/files.shtml) + var p0, p1 = array[i-1], p2 = array[i], p3; + var bz1x, bz1y, bz2x, bz2y; + var f = 1/6; + if(i==1) { + if(tension == "x") { + p0 = array[array.length-2]; + } else { // "tension == X || tension == "S" + p0 = p1; + } + f = 1/3; + } else { + p0 = array[i-2]; + } + if(i==(array.length-1)) { + if(tension == "x") { + p3 = array[1]; + } else { // "tension == X || tension == "S" + p3 = p2; + } + f = 1/3; + } else { + p3 = array[i+1]; + } + var p1p2 = Math.sqrt((p2.x-p1.x)*(p2.x-p1.x)+(p2.y-p1.y)*(p2.y-p1.y)); + var p0p2 = Math.sqrt((p2.x-p0.x)*(p2.x-p0.x)+(p2.y-p0.y)*(p2.y-p0.y)); + var p1p3 = Math.sqrt((p3.x-p1.x)*(p3.x-p1.x)+(p3.y-p1.y)*(p3.y-p1.y)); + + var p0p2f = p0p2 * f; + var p1p3f = p1p3 * f; + + if(p0p2f > p1p2/2 && p1p3f > p1p2/2) { + p0p2f = p1p2/2; + p1p3f = p1p2/2; + } else if(p0p2f > p1p2/2) { + p0p2f = p1p2/2; + p1p3f = p1p2/2 * p1p3/p0p2; + } else if(p1p3f > p1p2/2) { + p1p3f = p1p2/2; + p0p2f = p1p2/2 * p0p2/p1p3; + } + + if(tension == "S") { + if(p0 == p1) { p0p2f = 0; } + if(p2 == p3) { p1p3f = 0; } + } + + bz1x = p1.x + p0p2f*(p2.x - p0.x)/p0p2; + bz1y = p1.y + p0p2f*(p2.y - p0.y)/p0p2; + bz2x = p2.x - p1p3f*(p3.x - p1.x)/p1p3; + bz2y = p2.y - p1p3f*(p3.y - p1.y)/p1p3; + } + return "C"+(bz1x+","+bz1y+" "+bz2x+","+bz2y+" "+p2.x+","+p2.y); + }); + return p.join(" "); + }, + + getLabel: function(/*Number*/number, /*Boolean*/fixed, /*Number*/precision){ + return sc.doIfLoaded("dojo/number", function(numberLib){ + return (fixed ? numberLib.format(number, {places : precision}) : + numberLib.format(number)) || ""; + }, function(){ + return fixed ? number.toFixed(precision) : number.toString(); + }); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/commonStacked.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/commonStacked.js new file mode 100644 index 00000000..80717d1f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/commonStacked.js @@ -0,0 +1,76 @@ +//>>built +define("dojox/charting/plot2d/commonStacked",["dojo/_base/lang","./common"],function(_1,_2){ +var _3=_1.getObject("dojox.charting.plot2d.commonStacked",true); +return _1.mixin(_3,{collectStats:function(_4){ +var _5=_1.delegate(_2.defaultStats); +for(var i=0;i<_4.length;++i){ +var _6=_4[i]; +for(var j=0;j<_6.data.length;j++){ +var x,y; +if(_6.data[j]!==null){ +if(typeof _6.data[j]=="number"||!_6.data[j].hasOwnProperty("x")){ +y=_3.getIndexValue(_4,i,j)[0]; +x=j+1; +}else{ +x=_6.data[j].x; +if(x!==null){ +y=_3.getValue(_4,i,x)[0]; +y=y!=null&&y.y?y.y:null; +} +} +_5.hmin=Math.min(_5.hmin,x); +_5.hmax=Math.max(_5.hmax,x); +_5.vmin=Math.min(_5.vmin,y); +_5.vmax=Math.max(_5.vmax,y); +} +} +} +return _5; +},getIndexValue:function(_7,i,_8){ +var _9=0,v,j,_a; +for(j=0;j<=i;++j){ +if(_7[j].hidden){ +continue; +} +_a=_9; +v=_7[j].data[_8]; +if(v!=null){ +if(isNaN(v)){ +v=v.y||0; +} +_9+=v; +} +} +return [_9,_a]; +},getValue:function(_b,i,x){ +var _c=null,j,z,v,_d; +for(j=0;j<=i;++j){ +if(_b[j].hidden){ +continue; +} +for(z=0;z<_b[j].data.length;z++){ +_d=_c; +v=_b[j].data[z]; +if(v!==null){ +if(v.x==x){ +if(!_c){ +_c={x:x}; +} +if(v.y!=null){ +if(_c.y==null){ +_c.y=0; +} +_c.y+=v.y; +} +break; +}else{ +if(v.x>x){ +break; +} +} +} +} +} +return [_c,_d]; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/commonStacked.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/commonStacked.js.uncompressed.js new file mode 100644 index 00000000..a57eb501 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot2d/commonStacked.js.uncompressed.js @@ -0,0 +1,77 @@ +define("dojox/charting/plot2d/commonStacked", [ + "dojo/_base/lang", + "./common" +], function(lang, common){ + + var commonStacked = lang.getObject("dojox.charting.plot2d.commonStacked", true); + return lang.mixin(commonStacked, { + collectStats: function(series){ + var stats = lang.delegate(common.defaultStats); + for(var i = 0; i < series.length; ++i){ + var run = series[i]; + for(var j = 0; j < run.data.length; j++){ + var x, y; + if(run.data[j] !== null){ + if(typeof run.data[j] == "number" || !run.data[j].hasOwnProperty("x")){ + y = commonStacked.getIndexValue(series, i, j)[0]; + x = j+1; + }else{ + x = run.data[j].x; + if(x !== null){ + y = commonStacked.getValue(series, i, x)[0]; + y = y != null && y.y ? y.y:null; + } + } + stats.hmin = Math.min(stats.hmin, x); + stats.hmax = Math.max(stats.hmax, x); + stats.vmin = Math.min(stats.vmin, y); + stats.vmax = Math.max(stats.vmax, y); + } + } + } + return stats; + }, + getIndexValue: function(series, i, index){ + var value = 0, v, j, pvalue; + for(j = 0; j <= i; ++j){ + if(series[j].hidden){ + continue; + } + pvalue = value; + v = series[j].data[index]; + if(v != null){ + if(isNaN(v)){ v = v.y || 0; } + value += v; + } + } + return [value , pvalue]; + }, + getValue: function(series, i, x){ + var value = null, j, z, v, pvalue; + for(j = 0; j <= i; ++j){ + if(series[j].hidden){ + continue; + } + for(z = 0; z < series[j].data.length; z++){ + pvalue = value; + v = series[j].data[z]; + if(v !== null){ + if(v.x == x){ + if(!value){ + value = {x: x}; + } + if(v.y != null){ + if(value.y == null){ + value.y = 0; + } + value.y += v.y; + } + break; + }else if(v.x > x){break;} + } + } + } + return [value, pvalue]; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Bars.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Bars.js new file mode 100644 index 00000000..99f7e95b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Bars.js @@ -0,0 +1,56 @@ +//>>built +define("dojox/charting/plot3d/Bars",["dojo/_base/kernel","dojo/_base/declare","dojo/_base/Color","dojo/has","./Base"],function(_1,_2,_3,_4,_5){ +var _6=function(a,f,o){ +a=typeof a=="string"?a.split(""):a; +o=o||_1.global; +var z=a[0]; +for(var i=1;i>built +define("dojox/charting/plot3d/Base",["dojo/_base/declare","dojo/has"],function(_1,_2){ +var _3=_1("dojox.charting.plot3d.Base",null,{constructor:function(_4,_5,_6){ +this.width=_4; +this.height=_5; +},setData:function(_7){ +this.data=_7?_7:[]; +return this; +},getDepth:function(){ +return this.depth; +},generate:function(_8,_9){ +}}); +if(_2("dojo-bidi")){ +_3.extend({_checkOrientation:function(_a){ +if(_a.isMirrored){ +_a.applyMirroring(_a.view,{width:this.width,height:this.height},{l:0,r:0,t:0,b:0}); +} +}}); +} +return _3; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Base.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Base.js.uncompressed.js new file mode 100644 index 00000000..3474ac8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Base.js.uncompressed.js @@ -0,0 +1,29 @@ +define("dojox/charting/plot3d/Base", ["dojo/_base/declare", "dojo/has"], + function(declare, has) { + var Base = declare("dojox.charting.plot3d.Base", null, { + constructor: function(width, height, kwArgs){ + this.width = width; + this.height = height; + }, + setData: function(data){ + this.data = data ? data : []; + return this; + }, + getDepth: function(){ + return this.depth; + }, + generate: function(chart, creator){ + } + }); + if(has("dojo-bidi")){ + Base.extend({ + _checkOrientation: function(chart){ + if(chart.isMirrored){ + chart.applyMirroring(chart.view, {width: this.width, height: this.height}, {l: 0, r: 0, t: 0, b: 0}); + } + } + }); + } + return Base; +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Cylinders.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Cylinders.js new file mode 100644 index 00000000..633b864a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/plot3d/Cylinders.js @@ -0,0 +1,60 @@ +//>>built +define("dojox/charting/plot3d/Cylinders",["dojox/gfx3d/matrix","dojo/_base/declare","dojo/_base/Color","dojo/_base/kernel","dojo/has","./Base"],function(_1,_2,_3,_4,_5,_6){ +var _7=function(a,f,o){ +a=typeof a=="string"?a.split(""):a; +o=o||_4.global; +var z=a[0]; +for(var i=1;i>built +define("dojox/charting/scaler/common",["dojo/_base/lang"],function(_1){ +var eq=function(a,b){ +return Math.abs(a-b)<=0.000001*(Math.abs(a)+Math.abs(b)); +}; +var _2=_1.getObject("dojox.charting.scaler.common",true); +var _3={}; +return _1.mixin(_2,{doIfLoaded:function(_4,_5,_6){ +if(_3[_4]==undefined){ +try{ +_3[_4]=require(_4); +} +catch(e){ +_3[_4]=null; +} +} +if(_3[_4]){ +return _5(_3[_4]); +}else{ +return _6(); +} +},getNumericLabel:function(_7,_8,_9){ +var _a=""; +_2.doIfLoaded("dojo/number",function(_b){ +_a=(_9.fixed?_b.format(_7,{places:_8<0?-_8:0}):_b.format(_7))||""; +},function(){ +_a=_9.fixed?_7.toFixed(_8<0?-_8:0):_7.toString(); +}); +if(_9.labelFunc){ +var r=_9.labelFunc(_a,_7,_8); +if(r){ +return r; +} +} +if(_9.labels){ +var l=_9.labels,lo=0,hi=l.length; +while(lo=0&&lo= 0 && lo < l.length && eq(l[lo].value, number)){ + return l[lo].text; + } + lo += 2; + if(lo < l.length && eq(l[lo].value, number)){ + return l[lo].text; + } + // otherwise we will produce a number + } + return def; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/linear.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/linear.js new file mode 100644 index 00000000..c4a20e15 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/linear.js @@ -0,0 +1,220 @@ +//>>built +define("dojox/charting/scaler/linear",["dojo/_base/lang","./common"],function(_1,_2){ +var _3=_1.getObject("dojox.charting.scaler.linear",true); +var _4=3,_5=_2.getNumericLabel; +function _6(_7,_8){ +_7=_7.toLowerCase(); +for(var i=_8.length-1;i>=0;--i){ +if(_7===_8[i]){ +return true; +} +} +return false; +}; +var _9=function(_a,_b,_c,_d,_e,_f,_10){ +_c=_1.delegate(_c); +if(!_d){ +if(_c.fixUpper=="major"){ +_c.fixUpper="minor"; +} +if(_c.fixLower=="major"){ +_c.fixLower="minor"; +} +} +if(!_e){ +if(_c.fixUpper=="minor"){ +_c.fixUpper="micro"; +} +if(_c.fixLower=="minor"){ +_c.fixLower="micro"; +} +} +if(!_f){ +if(_c.fixUpper=="micro"){ +_c.fixUpper="none"; +} +if(_c.fixLower=="micro"){ +_c.fixLower="none"; +} +} +var _11=_6(_c.fixLower,["major"])?Math.floor(_c.min/_d)*_d:_6(_c.fixLower,["minor"])?Math.floor(_c.min/_e)*_e:_6(_c.fixLower,["micro"])?Math.floor(_c.min/_f)*_f:_c.min,_12=_6(_c.fixUpper,["major"])?Math.ceil(_c.max/_d)*_d:_6(_c.fixUpper,["minor"])?Math.ceil(_c.max/_e)*_e:_6(_c.fixUpper,["micro"])?Math.ceil(_c.max/_f)*_f:_c.max; +if(_c.useMin){ +_a=_11; +} +if(_c.useMax){ +_b=_12; +} +var _13=(!_d||_c.useMin&&_6(_c.fixLower,["major"]))?_a:Math.ceil(_a/_d)*_d,_14=(!_e||_c.useMin&&_6(_c.fixLower,["major","minor"]))?_a:Math.ceil(_a/_e)*_e,_15=(!_f||_c.useMin&&_6(_c.fixLower,["major","minor","micro"]))?_a:Math.ceil(_a/_f)*_f,_16=!_d?0:(_c.useMax&&_6(_c.fixUpper,["major"])?Math.round((_b-_13)/_d):Math.floor((_b-_13)/_d))+1,_17=!_e?0:(_c.useMax&&_6(_c.fixUpper,["major","minor"])?Math.round((_b-_14)/_e):Math.floor((_b-_14)/_e))+1,_18=!_f?0:(_c.useMax&&_6(_c.fixUpper,["major","minor","micro"])?Math.round((_b-_15)/_f):Math.floor((_b-_15)/_f))+1,_19=_e?Math.round(_d/_e):0,_1a=_f?Math.round(_e/_f):0,_1b=_d?Math.floor(Math.log(_d)/Math.LN10):0,_1c=_e?Math.floor(Math.log(_e)/Math.LN10):0,_1d=_10/(_b-_a); +if(!isFinite(_1d)){ +_1d=1; +} +return {bounds:{lower:_11,upper:_12,from:_a,to:_b,scale:_1d,span:_10},major:{tick:_d,start:_13,count:_16,prec:_1b},minor:{tick:_e,start:_14,count:_17,prec:_1c},micro:{tick:_f,start:_15,count:_18,prec:0},minorPerMajor:_19,microPerMinor:_1a,scaler:_3}; +}; +return _1.mixin(_3,{buildScaler:function(min,max,_1e,_1f,_20,_21){ +var h={fixUpper:"none",fixLower:"none",natural:false}; +if(_1f){ +if("fixUpper" in _1f){ +h.fixUpper=String(_1f.fixUpper); +} +if("fixLower" in _1f){ +h.fixLower=String(_1f.fixLower); +} +if("natural" in _1f){ +h.natural=Boolean(_1f.natural); +} +} +_21=!_21||_21<_4?_4:_21; +if("min" in _1f){ +min=_1f.min; +} +if("max" in _1f){ +max=_1f.max; +} +if(_1f.includeZero){ +if(min>0){ +min=0; +} +if(max<0){ +max=0; +} +} +h.min=min; +h.useMin=true; +h.max=max; +h.useMax=true; +if("from" in _1f){ +min=_1f.from; +h.useMin=false; +} +if("to" in _1f){ +max=_1f.to; +h.useMax=false; +} +if(max<=min){ +return _9(min,max,h,0,0,0,_1e); +} +if(!_20){ +_20=max-min; +} +var mag=Math.floor(Math.log(_20)/Math.LN10),_22=_1f&&("majorTickStep" in _1f)?_1f.majorTickStep:Math.pow(10,mag),_23=0,_24=0,_25; +if(_1f&&("minorTickStep" in _1f)){ +_23=_1f.minorTickStep; +}else{ +do{ +_23=_22/10; +if(!h.natural||_23>0.9){ +_25=_9(min,max,h,_22,_23,0,_1e); +if(_25.bounds.scale*_25.minor.tick>_21){ +break; +} +} +_23=_22/5; +if(!h.natural||_23>0.9){ +_25=_9(min,max,h,_22,_23,0,_1e); +if(_25.bounds.scale*_25.minor.tick>_21){ +break; +} +} +_23=_22/2; +if(!h.natural||_23>0.9){ +_25=_9(min,max,h,_22,_23,0,_1e); +if(_25.bounds.scale*_25.minor.tick>_21){ +break; +} +} +return _9(min,max,h,_22,0,0,_1e); +}while(false); +} +if(_1f&&("microTickStep" in _1f)){ +_24=_1f.microTickStep; +_25=_9(min,max,h,_22,_23,_24,_1e); +}else{ +do{ +_24=_23/10; +if(!h.natural||_24>0.9){ +_25=_9(min,max,h,_22,_23,_24,_1e); +if(_25.bounds.scale*_25.micro.tick>_4){ +break; +} +} +_24=_23/5; +if(!h.natural||_24>0.9){ +_25=_9(min,max,h,_22,_23,_24,_1e); +if(_25.bounds.scale*_25.micro.tick>_4){ +break; +} +} +_24=_23/2; +if(!h.natural||_24>0.9){ +_25=_9(min,max,h,_22,_23,_24,_1e); +if(_25.bounds.scale*_25.micro.tick>_4){ +break; +} +} +_24=0; +}while(false); +} +return _24?_25:_9(min,max,h,_22,_23,0,_1e); +},buildTicks:function(_26,_27){ +var _28,_29,_2a,_2b=_26.major.start,_2c=_26.minor.start,_2d=_26.micro.start; +if(_27.microTicks&&_26.micro.tick){ +_28=_26.micro.tick,_29=_2d; +}else{ +if(_27.minorTicks&&_26.minor.tick){ +_28=_26.minor.tick,_29=_2c; +}else{ +if(_26.major.tick){ +_28=_26.major.tick,_29=_2b; +}else{ +return null; +} +} +} +var _2e=1/_26.bounds.scale; +if(_26.bounds.to<=_26.bounds.from||isNaN(_2e)||!isFinite(_2e)||_28<=0||isNaN(_28)||!isFinite(_28)){ +return null; +} +var _2f=[],_30=[],_31=[]; +while(_29<=_26.bounds.to+_2e){ +if(Math.abs(_2b-_29)<_28/2){ +_2a={value:_2b}; +if(_27.majorLabels){ +_2a.label=_5(_2b,_26.major.prec,_27); +} +_2f.push(_2a); +_2b+=_26.major.tick; +_2c+=_26.minor.tick; +_2d+=_26.micro.tick; +}else{ +if(Math.abs(_2c-_29)<_28/2){ +if(_27.minorTicks){ +_2a={value:_2c}; +if(_27.minorLabels&&(_26.minMinorStep<=_26.minor.tick*_26.bounds.scale)){ +_2a.label=_5(_2c,_26.minor.prec,_27); +} +_30.push(_2a); +} +_2c+=_26.minor.tick; +_2d+=_26.micro.tick; +}else{ +if(_27.microTicks){ +_31.push({value:_2d}); +} +_2d+=_26.micro.tick; +} +} +_29+=_28; +} +return {major:_2f,minor:_30,micro:_31}; +},getTransformerFromModel:function(_32){ +var _33=_32.bounds.from,_34=_32.bounds.scale; +return function(x){ +return (x-_33)*_34; +}; +},getTransformerFromPlot:function(_35){ +var _36=_35.bounds.from,_37=_35.bounds.scale; +return function(x){ +return x/_37+_36; +}; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/linear.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/linear.js.uncompressed.js new file mode 100644 index 00000000..4790876f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/linear.js.uncompressed.js @@ -0,0 +1,262 @@ +define("dojox/charting/scaler/linear", ["dojo/_base/lang", "./common"], + function(lang, common){ + var linear = lang.getObject("dojox.charting.scaler.linear", true); + + var deltaLimit = 3, // pixels + getLabel = common.getNumericLabel; + + function findString(/*String*/ val, /*Array*/ text){ + val = val.toLowerCase(); + for(var i = text.length - 1; i >= 0; --i){ + if(val === text[i]){ + return true; + } + } + return false; + } + + var calcTicks = function(min, max, kwArgs, majorTick, minorTick, microTick, span){ + kwArgs = lang.delegate(kwArgs); + if(!majorTick){ + if(kwArgs.fixUpper == "major"){ kwArgs.fixUpper = "minor"; } + if(kwArgs.fixLower == "major"){ kwArgs.fixLower = "minor"; } + } + if(!minorTick){ + if(kwArgs.fixUpper == "minor"){ kwArgs.fixUpper = "micro"; } + if(kwArgs.fixLower == "minor"){ kwArgs.fixLower = "micro"; } + } + if(!microTick){ + if(kwArgs.fixUpper == "micro"){ kwArgs.fixUpper = "none"; } + if(kwArgs.fixLower == "micro"){ kwArgs.fixLower = "none"; } + } + var lowerBound = findString(kwArgs.fixLower, ["major"]) ? + Math.floor(kwArgs.min / majorTick) * majorTick : + findString(kwArgs.fixLower, ["minor"]) ? + Math.floor(kwArgs.min / minorTick) * minorTick : + findString(kwArgs.fixLower, ["micro"]) ? + Math.floor(kwArgs.min / microTick) * microTick : kwArgs.min, + upperBound = findString(kwArgs.fixUpper, ["major"]) ? + Math.ceil(kwArgs.max / majorTick) * majorTick : + findString(kwArgs.fixUpper, ["minor"]) ? + Math.ceil(kwArgs.max / minorTick) * minorTick : + findString(kwArgs.fixUpper, ["micro"]) ? + Math.ceil(kwArgs.max / microTick) * microTick : kwArgs.max; + + if(kwArgs.useMin){ min = lowerBound; } + if(kwArgs.useMax){ max = upperBound; } + + var majorStart = (!majorTick || kwArgs.useMin && findString(kwArgs.fixLower, ["major"])) ? + min : Math.ceil(min / majorTick) * majorTick, + minorStart = (!minorTick || kwArgs.useMin && findString(kwArgs.fixLower, ["major", "minor"])) ? + min : Math.ceil(min / minorTick) * minorTick, + microStart = (! microTick || kwArgs.useMin && findString(kwArgs.fixLower, ["major", "minor", "micro"])) ? + min : Math.ceil(min / microTick) * microTick, + majorCount = !majorTick ? 0 : (kwArgs.useMax && findString(kwArgs.fixUpper, ["major"]) ? + Math.round((max - majorStart) / majorTick) : + Math.floor((max - majorStart) / majorTick)) + 1, + minorCount = !minorTick ? 0 : (kwArgs.useMax && findString(kwArgs.fixUpper, ["major", "minor"]) ? + Math.round((max - minorStart) / minorTick) : + Math.floor((max - minorStart) / minorTick)) + 1, + microCount = !microTick ? 0 : (kwArgs.useMax && findString(kwArgs.fixUpper, ["major", "minor", "micro"]) ? + Math.round((max - microStart) / microTick) : + Math.floor((max - microStart) / microTick)) + 1, + minorPerMajor = minorTick ? Math.round(majorTick / minorTick) : 0, + microPerMinor = microTick ? Math.round(minorTick / microTick) : 0, + majorPrecision = majorTick ? Math.floor(Math.log(majorTick) / Math.LN10) : 0, + minorPrecision = minorTick ? Math.floor(Math.log(minorTick) / Math.LN10) : 0, + scale = span / (max - min); + if(!isFinite(scale)){ scale = 1; } + + return { + bounds: { + lower: lowerBound, + upper: upperBound, + from: min, + to: max, + scale: scale, + span: span + }, + major: { + tick: majorTick, + start: majorStart, + count: majorCount, + prec: majorPrecision + }, + minor: { + tick: minorTick, + start: minorStart, + count: minorCount, + prec: minorPrecision + }, + micro: { + tick: microTick, + start: microStart, + count: microCount, + prec: 0 + }, + minorPerMajor: minorPerMajor, + microPerMinor: microPerMinor, + scaler: linear + }; + }; + + return lang.mixin(linear, { + buildScaler: function(/*Number*/ min, /*Number*/ max, /*Number*/ span, /*Object*/ kwArgs, /*Number?*/ delta, /*Number?*/ minorDelta){ + var h = {fixUpper: "none", fixLower: "none", natural: false}; + if(kwArgs){ + if("fixUpper" in kwArgs){ h.fixUpper = String(kwArgs.fixUpper); } + if("fixLower" in kwArgs){ h.fixLower = String(kwArgs.fixLower); } + if("natural" in kwArgs){ h.natural = Boolean(kwArgs.natural); } + } + minorDelta = !minorDelta || minorDelta < deltaLimit ? deltaLimit : minorDelta; + + // update bounds + if("min" in kwArgs){ min = kwArgs.min; } + if("max" in kwArgs){ max = kwArgs.max; } + if(kwArgs.includeZero){ + if(min > 0){ min = 0; } + if(max < 0){ max = 0; } + } + h.min = min; + h.useMin = true; + h.max = max; + h.useMax = true; + + if("from" in kwArgs){ + min = kwArgs.from; + h.useMin = false; + } + if("to" in kwArgs){ + max = kwArgs.to; + h.useMax = false; + } + + // check for erroneous condition + if(max <= min){ + return calcTicks(min, max, h, 0, 0, 0, span); // Object + } + if(!delta){ + delta = max - min; + } + var mag = Math.floor(Math.log(delta) / Math.LN10), + major = kwArgs && ("majorTickStep" in kwArgs) ? kwArgs.majorTickStep : Math.pow(10, mag), + minor = 0, micro = 0, ticks; + + // calculate minor ticks + if(kwArgs && ("minorTickStep" in kwArgs)){ + minor = kwArgs.minorTickStep; + }else{ + do{ + minor = major / 10; + if(!h.natural || minor > 0.9){ + ticks = calcTicks(min, max, h, major, minor, 0, span); + if(ticks.bounds.scale * ticks.minor.tick > minorDelta){ break; } + } + minor = major / 5; + if(!h.natural || minor > 0.9){ + ticks = calcTicks(min, max, h, major, minor, 0, span); + if(ticks.bounds.scale * ticks.minor.tick > minorDelta){ break; } + } + minor = major / 2; + if(!h.natural || minor > 0.9){ + ticks = calcTicks(min, max, h, major, minor, 0, span); + if(ticks.bounds.scale * ticks.minor.tick > minorDelta){ break; } + } + return calcTicks(min, max, h, major, 0, 0, span); // Object + }while(false); + } + + // calculate micro ticks + if(kwArgs && ("microTickStep" in kwArgs)){ + micro = kwArgs.microTickStep; + ticks = calcTicks(min, max, h, major, minor, micro, span); + }else{ + do{ + micro = minor / 10; + if(!h.natural || micro > 0.9){ + ticks = calcTicks(min, max, h, major, minor, micro, span); + if(ticks.bounds.scale * ticks.micro.tick > deltaLimit){ break; } + } + micro = minor / 5; + if(!h.natural || micro > 0.9){ + ticks = calcTicks(min, max, h, major, minor, micro, span); + if(ticks.bounds.scale * ticks.micro.tick > deltaLimit){ break; } + } + micro = minor / 2; + if(!h.natural || micro > 0.9){ + ticks = calcTicks(min, max, h, major, minor, micro, span); + if(ticks.bounds.scale * ticks.micro.tick > deltaLimit){ break; } + } + micro = 0; + }while(false); + } + + return micro ? ticks : calcTicks(min, max, h, major, minor, 0, span); // Object + }, + buildTicks: function(/*Object*/ scaler, /*Object*/ kwArgs){ + var step, next, tick, + nextMajor = scaler.major.start, + nextMinor = scaler.minor.start, + nextMicro = scaler.micro.start; + if(kwArgs.microTicks && scaler.micro.tick){ + step = scaler.micro.tick, next = nextMicro; + }else if(kwArgs.minorTicks && scaler.minor.tick){ + step = scaler.minor.tick, next = nextMinor; + }else if(scaler.major.tick){ + step = scaler.major.tick, next = nextMajor; + }else{ + // no ticks + return null; + } + // make sure that we have finite bounds + var revScale = 1 / scaler.bounds.scale; + if(scaler.bounds.to <= scaler.bounds.from || isNaN(revScale) || !isFinite(revScale) || + step <= 0 || isNaN(step) || !isFinite(step)){ + // no ticks + return null; + } + // loop over all ticks + var majorTicks = [], minorTicks = [], microTicks = []; + while(next <= scaler.bounds.to + revScale){ + if(Math.abs(nextMajor - next) < step / 2){ + // major tick + tick = {value: nextMajor}; + if(kwArgs.majorLabels){ + tick.label = getLabel(nextMajor, scaler.major.prec, kwArgs); + } + majorTicks.push(tick); + nextMajor += scaler.major.tick; + nextMinor += scaler.minor.tick; + nextMicro += scaler.micro.tick; + }else if(Math.abs(nextMinor - next) < step / 2){ + // minor tick + if(kwArgs.minorTicks){ + tick = {value: nextMinor}; + if(kwArgs.minorLabels && (scaler.minMinorStep <= scaler.minor.tick * scaler.bounds.scale)){ + tick.label = getLabel(nextMinor, scaler.minor.prec, kwArgs); + } + minorTicks.push(tick); + } + nextMinor += scaler.minor.tick; + nextMicro += scaler.micro.tick; + }else{ + // micro tick + if(kwArgs.microTicks){ + microTicks.push({value: nextMicro}); + } + nextMicro += scaler.micro.tick; + } + next += step; + } + return {major: majorTicks, minor: minorTicks, micro: microTicks}; // Object + }, + getTransformerFromModel: function(/*Object*/ scaler){ + var offset = scaler.bounds.from, scale = scaler.bounds.scale; + return function(x){ return (x - offset) * scale; }; // Function + }, + getTransformerFromPlot: function(/*Object*/ scaler){ + var offset = scaler.bounds.from, scale = scaler.bounds.scale; + return function(x){ return x / scale + offset; }; // Function + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/primitive.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/primitive.js new file mode 100644 index 00000000..dedf106e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/primitive.js @@ -0,0 +1,23 @@ +//>>built +define("dojox/charting/scaler/primitive",["dojo/_base/lang"],function(_1){ +var _2=_1.getObject("dojox.charting.scaler.primitive",true); +return _1.mixin(_2,{buildScaler:function(_3,_4,_5,_6){ +if(_3==_4){ +_3-=0.5; +_4+=0.5; +} +return {bounds:{lower:_3,upper:_4,from:_3,to:_4,scale:_5/(_4-_3),span:_5},scaler:_2}; +},buildTicks:function(_7,_8){ +return {major:[],minor:[],micro:[]}; +},getTransformerFromModel:function(_9){ +var _a=_9.bounds.from,_b=_9.bounds.scale; +return function(x){ +return (x-_a)*_b; +}; +},getTransformerFromPlot:function(_c){ +var _d=_c.bounds.from,_e=_c.bounds.scale; +return function(x){ +return x/_e+_d; +}; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/primitive.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/primitive.js.uncompressed.js new file mode 100644 index 00000000..8e216085 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/scaler/primitive.js.uncompressed.js @@ -0,0 +1,36 @@ +define("dojox/charting/scaler/primitive", ["dojo/_base/lang"], + function(lang){ + var primitive = lang.getObject("dojox.charting.scaler.primitive", true); + return lang.mixin(primitive, { + buildScaler: function(/*Number*/ min, /*Number*/ max, /*Number*/ span, /*Object*/ kwArgs){ + if(min == max){ + // artificially extend bounds + min -= 0.5; + max += 0.5; + // now the line will be centered + } + return { + bounds: { + lower: min, + upper: max, + from: min, + to: max, + scale: span / (max - min), + span: span + }, + scaler: primitive + }; + }, + buildTicks: function(/*Object*/ scaler, /*Object*/ kwArgs){ + return {major: [], minor: [], micro: []}; // Object + }, + getTransformerFromModel: function(/*Object*/ scaler){ + var offset = scaler.bounds.from, scale = scaler.bounds.scale; + return function(x){ return (x - offset) * scale; }; // Function + }, + getTransformerFromPlot: function(/*Object*/ scaler){ + var offset = scaler.bounds.from, scale = scaler.bounds.scale; + return function(x){ return x / scale + offset; }; // Function + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Adobebricks.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Adobebricks.js new file mode 100644 index 00000000..44701a57 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Adobebricks.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Adobebricks",["../SimpleTheme","./common"],function(_1,_2){ +_2.Adobebricks=new _1({colors:["#7f2518","#3e170c","#cc3927","#651f0e","#8c271c"]}); +return _2.Adobebricks; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Adobebricks.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Adobebricks.js.uncompressed.js new file mode 100644 index 00000000..91392e35 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Adobebricks.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/themes/Adobebricks", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.Adobebricks = new SimpleTheme({ + colors: [ + "#7f2518", + "#3e170c", + "#cc3927", + "#651f0e", + "#8c271c" + ] + }); + return themes.Adobebricks; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Algae.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Algae.js new file mode 100644 index 00000000..7f8c9f95 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Algae.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Algae",["../SimpleTheme","./common"],function(_1,_2){ +_2.Algae=new _1({colors:["#57808f","#506885","#4f7878","#558f7f","#508567"]}); +return _2.Algae; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Algae.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Algae.js.uncompressed.js new file mode 100644 index 00000000..0a3394c1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Algae.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/themes/Algae", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.Algae = new SimpleTheme({ + colors: [ + "#57808f", + "#506885", + "#4f7878", + "#558f7f", + "#508567" + ] + }); + return themes.Algae; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Bahamation.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Bahamation.js new file mode 100644 index 00000000..61ed7110 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Bahamation.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Bahamation",["../SimpleTheme","./common"],function(_1,_2){ +_2.Bahamation=new _1({colors:["#3f9998","#3fc0c3","#70c058","#ef446f","#c663a6"]}); +return _2.Bahamation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Bahamation.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Bahamation.js.uncompressed.js new file mode 100644 index 00000000..edbba41d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Bahamation.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/themes/Bahamation", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.Bahamation = new SimpleTheme({ + colors: [ + "#3f9998", + "#3fc0c3", + "#70c058", + "#ef446f", + "#c663a6" + ] + }); + return themes.Bahamation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/BlueDusk.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/BlueDusk.js new file mode 100644 index 00000000..5ee5ee87 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/BlueDusk.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/BlueDusk",["../SimpleTheme","./common"],function(_1,_2){ +_2.BlueDusk=new _1({colors:["#292e76","#3e56a6","#10143f","#33449c","#798dcd"]}); +return _2.BlueDusk; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/BlueDusk.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/BlueDusk.js.uncompressed.js new file mode 100644 index 00000000..b3970efc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/BlueDusk.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/charting/themes/BlueDusk", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.BlueDusk = new SimpleTheme({ + colors: [ + "#292e76", + "#3e56a6", + "#10143f", + "#33449c", + "#798dcd" + ] + }); + + return themes.BlueDusk; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Charged.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Charged.js new file mode 100644 index 00000000..c5c672ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Charged.js @@ -0,0 +1,32 @@ +//>>built +define("dojox/charting/themes/Charged",["../Theme","dojox/gfx/gradutils","./common"],function(_1,_2,_3){ +var g=_1.generateGradient,_4={type:"linear",space:"shape",x1:0,y1:0,x2:0,y2:75}; +_3.Charged=new _1({chart:{fill:"#ededdf",pageStyle:{backgroundColor:"#ededdf",backgroundImage:"none",color:"inherit"}},plotarea:{fill:"transparent"},axis:{stroke:{color:"#808078",width:1},tick:{color:"#b3b3a8",position:"center",font:"normal normal normal 7pt Helvetica, Arial, sans-serif",fontColor:"#808078"}},series:{stroke:{width:2,color:"#595954"},outline:null,font:"normal normal normal 8pt Helvetica, Arial, sans-serif",fontColor:"#808078"},marker:{stroke:{width:3,color:"#595954"},outline:null,font:"normal normal normal 8pt Helvetica, Arial, sans-serif",fontColor:"#808078"},seriesThemes:[{fill:g(_4,"#004cbf","#06f")},{fill:g(_4,"#bf004c","#f06")},{fill:g(_4,"#43bf00","#6f0")},{fill:g(_4,"#7300bf","#90f")},{fill:g(_4,"#bf7300","#f90")},{fill:g(_4,"#00bf73","#0f9")}],markerThemes:[{fill:"#06f",stroke:{color:"#06f"}},{fill:"#f06",stroke:{color:"#f06"}},{fill:"#6f0",stroke:{color:"#6f0"}},{fill:"#90f",stroke:{color:"#90f"}},{fill:"#f90",stroke:{color:"#f90"}},{fill:"#0f9",stroke:{color:"#0f9"}}]}); +_3.Charged.next=function(_5,_6,_7){ +var _8=_5=="line"; +if(_8||_5=="area"){ +var s=this.seriesThemes[this._current%this.seriesThemes.length]; +s.fill.space="plot"; +if(_8){ +s.stroke={width:2.5,color:s.fill.colors[1].color}; +} +if(_5=="area"){ +s.fill.y2=90; +} +var _9=_1.prototype.next.apply(this,arguments); +delete s.stroke; +s.fill.y2=75; +s.fill.space="shape"; +return _9; +} +return _1.prototype.next.apply(this,arguments); +}; +_3.Charged.post=function(_a,_b){ +_a=_1.prototype.post.apply(this,arguments); +if((_b=="slice"||_b=="circle")&&_a.series.fill&&_a.series.fill.type=="radial"){ +_a.series.fill=_2.reverse(_a.series.fill); +} +return _a; +}; +return _3.Charged; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Charged.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Charged.js.uncompressed.js new file mode 100644 index 00000000..17ed59da --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Charged.js.uncompressed.js @@ -0,0 +1,87 @@ +define("dojox/charting/themes/Charged", ["../Theme", "dojox/gfx/gradutils", "./common"], function(Theme, gradutils, themes){ + + var g = Theme.generateGradient, + defaultFill = {type: "linear", space: "shape", x1: 0, y1: 0, x2: 0, y2: 75}; + + themes.Charged = new Theme({ + chart: { + fill: "#ededdf", + pageStyle: {backgroundColor: "#ededdf", backgroundImage: "none", color: "inherit"} + }, + plotarea: { + fill: "transparent" + }, + axis:{ + stroke: { // the axis itself + color: "#808078", + width: 1 + }, + tick: { // used as a foundation for all ticks + color: "#b3b3a8", + position: "center", + font: "normal normal normal 7pt Helvetica, Arial, sans-serif", // labels on axis + fontColor: "#808078" // color of labels + } + }, + series: { + stroke: {width: 2, color: "#595954"}, + outline: null, + font: "normal normal normal 8pt Helvetica, Arial, sans-serif", + fontColor: "#808078" + }, + marker: { + stroke: {width: 3, color: "#595954"}, + outline: null, + font: "normal normal normal 8pt Helvetica, Arial, sans-serif", + fontColor: "#808078" + }, + seriesThemes: [ + {fill: g(defaultFill, "#004cbf", "#06f")}, + {fill: g(defaultFill, "#bf004c", "#f06")}, + {fill: g(defaultFill, "#43bf00", "#6f0")}, + {fill: g(defaultFill, "#7300bf", "#90f")}, + {fill: g(defaultFill, "#bf7300", "#f90")}, + {fill: g(defaultFill, "#00bf73", "#0f9")} + ], + markerThemes: [ + {fill: "#06f", stroke: {color: "#06f"}}, + {fill: "#f06", stroke: {color: "#f06"}}, + {fill: "#6f0", stroke: {color: "#6f0"}}, + {fill: "#90f", stroke: {color: "#90f"}}, + {fill: "#f90", stroke: {color: "#f90"}}, + {fill: "#0f9", stroke: {color: "#0f9"}} + ] + }); + + themes.Charged.next = function(elementType, mixin, doPost){ + var isLine = elementType == "line"; + if(isLine || elementType == "area"){ + // custom processing for lines: substitute colors + var s = this.seriesThemes[this._current % this.seriesThemes.length]; + s.fill.space = "plot"; + if(isLine){ + s.stroke = { width: 2.5, color: s.fill.colors[1].color}; + } + if(elementType == "area"){ + s.fill.y2 = 90; + } + var theme = Theme.prototype.next.apply(this, arguments); + // cleanup + delete s.stroke; + s.fill.y2 = 75; + s.fill.space = "shape"; + return theme; + } + return Theme.prototype.next.apply(this, arguments); + }; + + themes.Charged.post = function(theme, elementType){ + theme = Theme.prototype.post.apply(this, arguments); + if((elementType == "slice" || elementType == "circle") && theme.series.fill && theme.series.fill.type == "radial"){ + theme.series.fill = gradutils.reverse(theme.series.fill); + } + return theme; + }; + + return themes.Charged; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Chris.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Chris.js new file mode 100644 index 00000000..2e4104bd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Chris.js @@ -0,0 +1,30 @@ +//>>built +define("dojox/charting/themes/Chris",["../Theme","dojox/gfx/gradutils","./common"],function(_1,_2,_3){ +var g=_1.generateGradient,_4={type:"linear",space:"shape",x1:0,y1:0,x2:0,y2:100}; +_3.Chris=new _1({chart:{fill:"#c1c1c1",stroke:{color:"#666"}},plotarea:{fill:"#c1c1c1"},series:{stroke:{width:2,color:"white"},outline:null,fontColor:"#333"},marker:{stroke:{width:2,color:"white"},outline:{width:2,color:"white"},fontColor:"#333"},seriesThemes:[{fill:g(_4,"#01b717","#238c01")},{fill:g(_4,"#d04918","#7c0344")},{fill:g(_4,"#0005ec","#002578")},{fill:g(_4,"#f9e500","#786f00")},{fill:g(_4,"#e27d00","#773e00")},{fill:g(_4,"#00b5b0","#005f5d")},{fill:g(_4,"#ac00cb","#590060")}],markerThemes:[{fill:"#01b717",stroke:{color:"#238c01"}},{fill:"#d04918",stroke:{color:"#7c0344"}},{fill:"#0005ec",stroke:{color:"#002578"}},{fill:"#f9e500",stroke:{color:"#786f00"}},{fill:"#e27d00",stroke:{color:"#773e00"}},{fill:"#00b5b0",stroke:{color:"#005f5d"}},{fill:"#ac00cb",stroke:{color:"#590060"}}]}); +_3.Chris.next=function(_5,_6,_7){ +var _8=_5=="line"; +if(_8||_5=="area"){ +var s=this.seriesThemes[this._current%this.seriesThemes.length]; +s.fill.space="plot"; +if(_8){ +s.stroke={color:s.fill.colors[1].color}; +s.outline={width:2,color:"white"}; +} +var _9=_1.prototype.next.apply(this,arguments); +delete s.outline; +delete s.stroke; +s.fill.space="shape"; +return _9; +} +return _1.prototype.next.apply(this,arguments); +}; +_3.Chris.post=function(_a,_b){ +_a=_1.prototype.post.apply(this,arguments); +if((_b=="slice"||_b=="circle")&&_a.series.fill&&_a.series.fill.type=="radial"){ +_a.series.fill=_2.reverse(_a.series.fill); +} +return _a; +}; +return _3.Chris; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Chris.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Chris.js.uncompressed.js new file mode 100644 index 00000000..d0c1fc68 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Chris.js.uncompressed.js @@ -0,0 +1,75 @@ +define("dojox/charting/themes/Chris", ["../Theme", "dojox/gfx/gradutils", "./common"], function(Theme, gradutils, themes){ + + // created by Christopher Anderson + + var g = Theme.generateGradient, + defaultFill = {type: "linear", space: "shape", x1: 0, y1: 0, x2: 0, y2: 100}; + + themes.Chris = new Theme({ + chart: { + fill: "#c1c1c1", + stroke: {color: "#666"} + }, + plotarea: { + fill: "#c1c1c1" + }, + series: { + stroke: {width: 2, color: "white"}, + outline: null, + fontColor: "#333" + }, + marker: { + stroke: {width: 2, color: "white"}, + outline: {width: 2, color: "white"}, + fontColor: "#333" + }, + seriesThemes: [ + {fill: g(defaultFill, "#01b717", "#238c01")}, // green + {fill: g(defaultFill, "#d04918", "#7c0344")}, // red + {fill: g(defaultFill, "#0005ec", "#002578")}, // blue + {fill: g(defaultFill, "#f9e500", "#786f00")}, // yellow + {fill: g(defaultFill, "#e27d00", "#773e00")}, // orange + {fill: g(defaultFill, "#00b5b0", "#005f5d")}, // teal + {fill: g(defaultFill, "#ac00cb", "#590060")} // purple + ], + markerThemes: [ + {fill: "#01b717", stroke: {color: "#238c01"}}, // green + {fill: "#d04918", stroke: {color: "#7c0344"}}, // red + {fill: "#0005ec", stroke: {color: "#002578"}}, // blue + {fill: "#f9e500", stroke: {color: "#786f00"}}, // yellow + {fill: "#e27d00", stroke: {color: "#773e00"}}, // orange + {fill: "#00b5b0", stroke: {color: "#005f5d"}}, // teal + {fill: "#ac00cb", stroke: {color: "#590060"}} // purple + ] + }); + + themes.Chris.next = function(elementType, mixin, doPost){ + var isLine = elementType == "line"; + if(isLine || elementType == "area"){ + // custom processing for lines: substitute colors + var s = this.seriesThemes[this._current % this.seriesThemes.length]; + s.fill.space = "plot"; + if(isLine){ + s.stroke = {color: s.fill.colors[1].color}; + s.outline = {width: 2, color: "white"}; + } + var theme = Theme.prototype.next.apply(this, arguments); + // cleanup + delete s.outline; + delete s.stroke; + s.fill.space = "shape"; + return theme; + } + return Theme.prototype.next.apply(this, arguments); + }; + + themes.Chris.post = function(theme, elementType){ + theme = Theme.prototype.post.apply(this, arguments); + if((elementType == "slice" || elementType == "circle") && theme.series.fill && theme.series.fill.type == "radial"){ + theme.series.fill = gradutils.reverse(theme.series.fill); + } + return theme; + }; + + return themes.Chris; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Claro.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Claro.js new file mode 100644 index 00000000..ddf0e1bc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Claro.js @@ -0,0 +1,39 @@ +//>>built +define("dojox/charting/themes/Claro",["../Theme","dojox/gfx/gradutils","./common"],function(_1,_2,_3){ +var g=_1.generateGradient,_4={type:"linear",space:"shape",x1:0,y1:0,x2:0,y2:100}; +_3.Claro=new _1({chart:{fill:{type:"linear",x1:0,x2:0,y1:0,y2:100,colors:[{offset:0,color:"#dbdbdb"},{offset:1,color:"#efefef"}]},stroke:{color:"#b5bcc7"}},plotarea:{fill:{type:"linear",x1:0,x2:0,y1:0,y2:100,colors:[{offset:0,color:"#dbdbdb"},{offset:1,color:"#efefef"}]}},axis:{stroke:{color:"#888c76",width:1},tick:{color:"#888c76",position:"center",font:"normal normal normal 7pt Verdana, Arial, sans-serif",fontColor:"#888c76"}},series:{stroke:{width:2.5,color:"#fff"},outline:null,font:"normal normal normal 7pt Verdana, Arial, sans-serif",fontColor:"#131313"},marker:{stroke:{width:1.25,color:"#131313"},outline:{width:1.25,color:"#131313"},font:"normal normal normal 8pt Verdana, Arial, sans-serif",fontColor:"#131313"},seriesThemes:[{fill:g(_4,"#2a6ead","#3a99f2")},{fill:g(_4,"#613e04","#996106")},{fill:g(_4,"#0e3961","#155896")},{fill:g(_4,"#55aafa","#3f7fba")},{fill:g(_4,"#ad7b2a","#db9b35")}],markerThemes:[{fill:"#2a6ead",stroke:{color:"#fff"}},{fill:"#613e04",stroke:{color:"#fff"}},{fill:"#0e3961",stroke:{color:"#fff"}},{fill:"#55aafa",stroke:{color:"#fff"}},{fill:"#ad7b2a",stroke:{color:"#fff"}}]}); +_3.Claro.next=function(_5,_6,_7){ +var _8=_5=="line",s,_9; +if(_8||_5=="area"){ +s=this.seriesThemes[this._current%this.seriesThemes.length]; +var m=this.markerThemes[this._current%this.markerThemes.length]; +s.fill.space="plot"; +if(_8){ +s.stroke={width:4,color:s.fill.colors[0].color}; +} +m.outline={width:1.25,color:m.fill}; +_9=_1.prototype.next.apply(this,arguments); +delete s.outline; +delete s.stroke; +s.fill.space="shape"; +return _9; +}else{ +if(_5=="candlestick"){ +s=this.seriesThemes[this._current%this.seriesThemes.length]; +s.fill.space="plot"; +s.stroke={width:1,color:s.fill.colors[0].color}; +_9=_1.prototype.next.apply(this,arguments); +return _9; +} +} +return _1.prototype.next.apply(this,arguments); +}; +_3.Claro.post=function(_a,_b){ +_a=_1.prototype.post.apply(this,arguments); +if((_b=="slice"||_b=="circle")&&_a.series.fill&&_a.series.fill.type=="radial"){ +_a.series.fill=_2.reverse(_a.series.fill); +} +return _a; +}; +return _3.Claro; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Claro.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Claro.js.uncompressed.js new file mode 100644 index 00000000..63639ada --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Claro.js.uncompressed.js @@ -0,0 +1,106 @@ +define("dojox/charting/themes/Claro", ["../Theme", "dojox/gfx/gradutils", "./common"], function(Theme, gradutils, themes){ + // created by Tom Trenka + + var g = Theme.generateGradient, + defaultFill = {type: "linear", space: "shape", x1: 0, y1: 0, x2: 0, y2: 100}; + + themes.Claro = new Theme({ + chart: { + fill: { + type: "linear", + x1: 0, x2: 0, y1: 0, y2: 100, + colors: [ + { offset: 0, color: "#dbdbdb" }, + { offset: 1, color: "#efefef" } + ] + }, + stroke: {color: "#b5bcc7"} + }, + plotarea: { + fill: { + type: "linear", + x1: 0, x2: 0, y1: 0, y2: 100, + colors: [ + { offset: 0, color: "#dbdbdb" }, + { offset: 1, color: "#efefef" } + ] + } + }, + axis:{ + stroke: { // the axis itself + color: "#888c76", + width: 1 + }, + tick: { // used as a foundation for all ticks + color: "#888c76", + position: "center", + font: "normal normal normal 7pt Verdana, Arial, sans-serif", // labels on axis + fontColor: "#888c76" // color of labels + } + }, + series: { + stroke: {width: 2.5, color: "#fff"}, + outline: null, + font: "normal normal normal 7pt Verdana, Arial, sans-serif", + fontColor: "#131313" + }, + marker: { + stroke: {width: 1.25, color: "#131313"}, + outline: {width: 1.25, color: "#131313"}, + font: "normal normal normal 8pt Verdana, Arial, sans-serif", + fontColor: "#131313" + }, + seriesThemes: [ + {fill: g(defaultFill, "#2a6ead", "#3a99f2")}, + {fill: g(defaultFill, "#613e04", "#996106")}, + {fill: g(defaultFill, "#0e3961", "#155896")}, + {fill: g(defaultFill, "#55aafa", "#3f7fba")}, + {fill: g(defaultFill, "#ad7b2a", "#db9b35")} + ], + markerThemes: [ + {fill: "#2a6ead", stroke: {color: "#fff"}}, + {fill: "#613e04", stroke: {color: "#fff"}}, + {fill: "#0e3961", stroke: {color: "#fff"}}, + {fill: "#55aafa", stroke: {color: "#fff"}}, + {fill: "#ad7b2a", stroke: {color: "#fff"}} + ] + }); + + themes.Claro.next = function(elementType, mixin, doPost){ + var isLine = elementType == "line", + s, theme; + if(isLine || elementType == "area"){ + // custom processing for lines: substitute colors + s = this.seriesThemes[this._current % this.seriesThemes.length]; + var m = this.markerThemes[this._current % this.markerThemes.length]; + s.fill.space = "plot"; + if(isLine){ + s.stroke = { width: 4, color: s.fill.colors[0].color}; + } + m.outline = { width: 1.25, color: m.fill }; + theme = Theme.prototype.next.apply(this, arguments); + // cleanup + delete s.outline; + delete s.stroke; + s.fill.space = "shape"; + return theme; + }else if(elementType == "candlestick"){ + s = this.seriesThemes[this._current % this.seriesThemes.length]; + s.fill.space = "plot"; + s.stroke = { width: 1, color: s.fill.colors[0].color}; + theme = Theme.prototype.next.apply(this, arguments); + return theme; + } + return Theme.prototype.next.apply(this, arguments); + }; + + themes.Claro.post = function(theme, elementType){ + theme = Theme.prototype.post.apply(this, arguments); + if((elementType == "slice" || elementType == "circle") && theme.series.fill && theme.series.fill.type == "radial"){ + theme.series.fill = gradutils.reverse(theme.series.fill); + } + return theme; + }; + + return themes.Claro; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/CubanShirts.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/CubanShirts.js new file mode 100644 index 00000000..a1b234f5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/CubanShirts.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/CubanShirts",["../SimpleTheme","./common"],function(_1,_2){ +_2.CubanShirts=new _1({colors:["#d42d2a","#004f80","#989736","#2085c7","#7f7f33"]}); +return _2.CubanShirts; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/CubanShirts.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/CubanShirts.js.uncompressed.js new file mode 100644 index 00000000..a14c1052 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/CubanShirts.js.uncompressed.js @@ -0,0 +1,14 @@ +define("dojox/charting/themes/CubanShirts", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + // notes: colors generated by moving in 30 degree increments around the hue circle, + // at 90% saturation, using a B value of 75 (HSB model). + themes.CubanShirts = new SimpleTheme({ + colors: [ + "#d42d2a", + "#004f80", + "#989736", + "#2085c7", + "#7f7f33" + ] + }); + return themes.CubanShirts; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Desert.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Desert.js new file mode 100644 index 00000000..b8c60cea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Desert.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Desert",["../SimpleTheme","./common"],function(_1,_2){ +_2.Desert=new _1({colors:["#ffebd5","#806544","#fdc888","#80766b","#cda26e"]}); +return _2.Desert; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Desert.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Desert.js.uncompressed.js new file mode 100644 index 00000000..2e3c9ab5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Desert.js.uncompressed.js @@ -0,0 +1,14 @@ +define("dojox/charting/themes/Desert", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + // notes: colors generated by moving in 30 degree increments around the hue circle, + // at 90% saturation, using a B value of 75 (HSB model). + themes.Desert = new SimpleTheme({ + colors: [ + "#ffebd5", + "#806544", + "#fdc888", + "#80766b", + "#cda26e" + ] + }); + return themes.Desert; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Distinctive.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Distinctive.js new file mode 100644 index 00000000..bae8403d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Distinctive.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Distinctive",["../SimpleTheme","./common"],function(_1,_2){ +_2.Distinctive=new _1({colors:["#497c91","#ada9d6","#768b4e","#eeea99","#b39c53","#c28b69","#815454","#bebebe","#59a0bd","#c9c6e4","#677e13","#f0eebb","#e9c756","#cfb09b","#a05a5a","#d8d8d8","#9dc7d9","#7b78a4","#a8c179","#b7b35c","#ebcf81","#956649","#c99999","#868686","#c7e0e9","#8d88c7","#c0d0a0","#e8e667","#efdeb0","#b17044","#ddc0c0","#a5a5a5"]}); +return _2.Distinctive; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Distinctive.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Distinctive.js.uncompressed.js new file mode 100644 index 00000000..a2cfdd77 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Distinctive.js.uncompressed.js @@ -0,0 +1,40 @@ +define("dojox/charting/themes/Distinctive", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.Distinctive = new SimpleTheme({ + colors: [ + "#497c91", + "#ada9d6", + "#768b4e", + "#eeea99", + "#b39c53", + "#c28b69", + "#815454", + "#bebebe", + "#59a0bd", + "#c9c6e4", + "#677e13", + "#f0eebb", + "#e9c756", + "#cfb09b", + "#a05a5a", + "#d8d8d8", + "#9dc7d9", + "#7b78a4", + "#a8c179", + "#b7b35c", + "#ebcf81", + "#956649", + "#c99999", + "#868686", + "#c7e0e9", + "#8d88c7", + "#c0d0a0", + "#e8e667", + "#efdeb0", + "#b17044", + "#ddc0c0", + "#a5a5a5" + + ] + }); + return themes.Distinctive; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Dollar.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Dollar.js new file mode 100644 index 00000000..de62bb0a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Dollar.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Dollar",["../SimpleTheme","./common"],function(_1,_2){ +_2.Dollar=new _1({colors:["#A4CE67","#739363","#6B824A","#343434","#636563"]}); +return _2.Dollar; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Dollar.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Dollar.js.uncompressed.js new file mode 100644 index 00000000..e0164dad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Dollar.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/themes/Dollar", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.Dollar = new SimpleTheme({ + colors: [ + "#A4CE67", + "#739363", + "#6B824A", + "#343434", + "#636563" + ] + }); + return themes.Dollar; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Electric.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Electric.js new file mode 100644 index 00000000..6865098f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Electric.js @@ -0,0 +1,32 @@ +//>>built +define("dojox/charting/themes/Electric",["../Theme","dojox/gfx/gradutils","./common"],function(_1,_2,_3){ +var g=_1.generateGradient,_4={type:"linear",space:"shape",x1:0,y1:0,x2:0,y2:75}; +_3.Electric=new _1({chart:{fill:"#252525",stroke:{color:"#252525"},pageStyle:{backgroundColor:"#252525",backgroundImage:"none",color:"#ccc"}},plotarea:{fill:"#252525"},axis:{stroke:{color:"#aaa",width:1},tick:{color:"#777",position:"center",font:"normal normal normal 7pt Helvetica, Arial, sans-serif",fontColor:"#777"}},series:{stroke:{width:2,color:"#ccc"},outline:null,font:"normal normal normal 8pt Helvetica, Arial, sans-serif",fontColor:"#ccc"},marker:{stroke:{width:3,color:"#ccc"},outline:null,font:"normal normal normal 8pt Helvetica, Arial, sans-serif",fontColor:"#ccc"},seriesThemes:[{fill:g(_4,"#004cbf","#06f")},{fill:g(_4,"#bf004c","#f06")},{fill:g(_4,"#43bf00","#6f0")},{fill:g(_4,"#7300bf","#90f")},{fill:g(_4,"#bf7300","#f90")},{fill:g(_4,"#00bf73","#0f9")}],markerThemes:[{fill:"#06f",stroke:{color:"#06f"}},{fill:"#f06",stroke:{color:"#f06"}},{fill:"#6f0",stroke:{color:"#6f0"}},{fill:"#90f",stroke:{color:"#90f"}},{fill:"#f90",stroke:{color:"#f90"}},{fill:"#0f9",stroke:{color:"#0f9"}}]}); +_3.Electric.next=function(_5,_6,_7){ +var _8=_5=="line"; +if(_8||_5=="area"){ +var s=this.seriesThemes[this._current%this.seriesThemes.length]; +s.fill.space="plot"; +if(_8){ +s.stroke={width:2.5,color:s.fill.colors[1].color}; +} +if(_5=="area"){ +s.fill.y2=90; +} +var _9=_1.prototype.next.apply(this,arguments); +delete s.stroke; +s.fill.y2=75; +s.fill.space="shape"; +return _9; +} +return _1.prototype.next.apply(this,arguments); +}; +_3.Electric.post=function(_a,_b){ +_a=_1.prototype.post.apply(this,arguments); +if((_b=="slice"||_b=="circle")&&_a.series.fill&&_a.series.fill.type=="radial"){ +_a.series.fill=_2.reverse(_a.series.fill); +} +return _a; +}; +return _3.Electric; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Electric.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Electric.js.uncompressed.js new file mode 100644 index 00000000..122fd4e1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Electric.js.uncompressed.js @@ -0,0 +1,88 @@ +define("dojox/charting/themes/Electric", ["../Theme", "dojox/gfx/gradutils", "./common"], function(Theme, gradutils, themes){ + + var g = Theme.generateGradient, + defaultFill = {type: "linear", space: "shape", x1: 0, y1: 0, x2: 0, y2: 75}; + + themes.Electric = new Theme({ + chart: { + fill: "#252525", + stroke: {color: "#252525"}, + pageStyle: {backgroundColor: "#252525", backgroundImage: "none", color: "#ccc"} + }, + plotarea: { + fill: "#252525" + }, + axis:{ + stroke: { // the axis itself + color: "#aaa", + width: 1 + }, + tick: { // used as a foundation for all ticks + color: "#777", + position: "center", + font: "normal normal normal 7pt Helvetica, Arial, sans-serif", // labels on axis + fontColor: "#777" // color of labels + } + }, + series: { + stroke: {width: 2, color: "#ccc"}, + outline: null, + font: "normal normal normal 8pt Helvetica, Arial, sans-serif", + fontColor: "#ccc" + }, + marker: { + stroke: {width: 3, color: "#ccc"}, + outline: null, + font: "normal normal normal 8pt Helvetica, Arial, sans-serif", + fontColor: "#ccc" + }, + seriesThemes: [ + {fill: g(defaultFill, "#004cbf", "#06f")}, + {fill: g(defaultFill, "#bf004c", "#f06")}, + {fill: g(defaultFill, "#43bf00", "#6f0")}, + {fill: g(defaultFill, "#7300bf", "#90f")}, + {fill: g(defaultFill, "#bf7300", "#f90")}, + {fill: g(defaultFill, "#00bf73", "#0f9")} + ], + markerThemes: [ + {fill: "#06f", stroke: {color: "#06f"}}, + {fill: "#f06", stroke: {color: "#f06"}}, + {fill: "#6f0", stroke: {color: "#6f0"}}, + {fill: "#90f", stroke: {color: "#90f"}}, + {fill: "#f90", stroke: {color: "#f90"}}, + {fill: "#0f9", stroke: {color: "#0f9"}} + ] + }); + + themes.Electric.next = function(elementType, mixin, doPost){ + var isLine = elementType == "line"; + if(isLine || elementType == "area"){ + // custom processing for lines: substitute colors + var s = this.seriesThemes[this._current % this.seriesThemes.length]; + s.fill.space = "plot"; + if(isLine){ + s.stroke = { width: 2.5, color: s.fill.colors[1].color}; + } + if(elementType == "area"){ + s.fill.y2 = 90; + } + var theme = Theme.prototype.next.apply(this, arguments); + // cleanup + delete s.stroke; + s.fill.y2 = 75; + s.fill.space = "shape"; + return theme; + } + return Theme.prototype.next.apply(this, arguments); + }; + + themes.Electric.post = function(theme, elementType){ + theme = Theme.prototype.post.apply(this, arguments); + if((elementType == "slice" || elementType == "circle") && theme.series.fill && theme.series.fill.type == "radial"){ + theme.series.fill = gradutils.reverse(theme.series.fill); + } + return theme; + }; + + return themes.Electric; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasshopper.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasshopper.js new file mode 100644 index 00000000..cc9efb93 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasshopper.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Grasshopper",["dojo/_base/lang","../SimpleTheme","./common"],function(_1,_2,_3){ +_3.Grasshopper=new _2({colors:["#208040","#40b657","#78c25e","#14401f","#64bd5f"]}); +return _3.Grasshopper; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasshopper.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasshopper.js.uncompressed.js new file mode 100644 index 00000000..e1bb76da --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasshopper.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/themes/Grasshopper", ["dojo/_base/lang","../SimpleTheme", "./common"], function(lang, SimpleTheme, themes){ + themes.Grasshopper = new SimpleTheme({ + colors: [ + "#208040", + "#40b657", + "#78c25e", + "#14401f", + "#64bd5f" + ] + }); + return themes.Grasshopper; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasslands.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasslands.js new file mode 100644 index 00000000..40f88109 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasslands.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Grasslands",["../SimpleTheme","./common"],function(_1,_2){ +_2.Grasslands=new _1({colors:["#70803a","#dde574","#788062","#b1cc5d","#eff2c2"]}); +return _2.Grasslands; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasslands.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasslands.js.uncompressed.js new file mode 100644 index 00000000..bef80e06 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Grasslands.js.uncompressed.js @@ -0,0 +1,14 @@ +define("dojox/charting/themes/Grasslands", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + // notes: colors generated by moving in 30 degree increments around the hue circle, + // at 90% saturation, using a B value of 75 (HSB model). + themes.Grasslands = new SimpleTheme({ + colors: [ + "#70803a", + "#dde574", + "#788062", + "#b1cc5d", + "#eff2c2" + ] + }); + return themes.Grasslands; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/GreySkies.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/GreySkies.js new file mode 100644 index 00000000..9d060cec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/GreySkies.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/GreySkies",["../SimpleTheme","./common"],function(_1,_2){ +_2.GreySkies=new _1(); +return _2.GreySkies; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/GreySkies.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/GreySkies.js.uncompressed.js new file mode 100644 index 00000000..cd7898a4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/GreySkies.js.uncompressed.js @@ -0,0 +1,4 @@ +define("dojox/charting/themes/GreySkies", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.GreySkies = new SimpleTheme(); + return themes.GreySkies; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Harmony.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Harmony.js new file mode 100644 index 00000000..95352a12 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Harmony.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Harmony",["../SimpleTheme","./common"],function(_1,_2){ +_2.Harmony=new _1({colors:["#497c91","#59a0bd","#9dc7d9","#c7e0e9","#7b78a4","#8d88c7","#ada9d6","#c9c6e4","#768b4e","#677e13","#a8c179","#c0d0a0","#b7b35c","#e8e667","#eeea99","#f0eebb","#b39c53","#e9c756","#ebcf81","#efdeb0","#956649","#b17044","#c28b69","#cfb09b","#815454","#a05a5a","#c99999","#ddc0c0","#868686","#a5a5a5","#bebebe","#d8d8d8"]}); +return _2.Harmony; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Harmony.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Harmony.js.uncompressed.js new file mode 100644 index 00000000..b74bd59a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Harmony.js.uncompressed.js @@ -0,0 +1,39 @@ +define("dojox/charting/themes/Harmony", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.Harmony = new SimpleTheme({ + colors: [ + "#497c91", + "#59a0bd", + "#9dc7d9", + "#c7e0e9", + "#7b78a4", + "#8d88c7", + "#ada9d6", + "#c9c6e4", + "#768b4e", + "#677e13", + "#a8c179", + "#c0d0a0", + "#b7b35c", + "#e8e667", + "#eeea99", + "#f0eebb", + "#b39c53", + "#e9c756", + "#ebcf81", + "#efdeb0", + "#956649", + "#b17044", + "#c28b69", + "#cfb09b", + "#815454", + "#a05a5a", + "#c99999", + "#ddc0c0", + "#868686", + "#a5a5a5", + "#bebebe", + "#d8d8d8" + ] + }); + return themes.Harmony; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/IndigoNation.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/IndigoNation.js new file mode 100644 index 00000000..45314cb3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/IndigoNation.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/IndigoNation",["../SimpleTheme","./common"],function(_1,_2){ +_2.IndigoNation=new _1({colors:["#93a4d0","#3b4152","#687291","#9faed9","#8290b8"]}); +return _2.IndigoNation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/IndigoNation.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/IndigoNation.js.uncompressed.js new file mode 100644 index 00000000..e8ee943d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/IndigoNation.js.uncompressed.js @@ -0,0 +1,14 @@ +define("dojox/charting/themes/IndigoNation", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + // notes: colors generated by moving in 30 degree increments around the hue circle, + // at 90% saturation, using a B value of 75 (HSB model). + themes.IndigoNation = new SimpleTheme({ + colors: [ + "#93a4d0", + "#3b4152", + "#687291", + "#9faed9", + "#8290b8" + ] + }); + return themes.IndigoNation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Ireland.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Ireland.js new file mode 100644 index 00000000..c1bc3029 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Ireland.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Ireland",["../SimpleTheme","./common"],function(_1,_2){ +_2.Ireland=new _1({colors:["#abdbcb","#435a51","#70998b","#78d596","#5f8074"]}); +return _2.Ireland; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Ireland.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Ireland.js.uncompressed.js new file mode 100644 index 00000000..e7254412 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Ireland.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/themes/Ireland", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.Ireland = new SimpleTheme({ + colors: [ + "#abdbcb", + "#435a51", + "#70998b", + "#78d596", + "#5f8074" + ] + }); + return themes.Ireland; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Julie.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Julie.js new file mode 100644 index 00000000..0fd36126 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Julie.js @@ -0,0 +1,23 @@ +//>>built +define("dojox/charting/themes/Julie",["../Theme","dojox/gfx/gradutils","./common"],function(_1,_2,_3){ +var g=_1.generateGradient,_4={type:"linear",space:"shape",x1:0,y1:0,x2:0,y2:100}; +_3.Julie=new _1({seriesThemes:[{fill:g(_4,"#59a0bd","#497c91"),stroke:{color:"#22627d"}},{fill:g(_4,"#8d88c7","#6c6d8e"),stroke:{color:"#8a84c5"}},{fill:g(_4,"#85a54a","#768b4e"),stroke:{color:"#5b6d1f"}},{fill:g(_4,"#e8e667","#c6c361"),stroke:{color:"#918e38"}},{fill:g(_4,"#e9c756","#c7a223"),stroke:{color:"#947b30"}},{fill:g(_4,"#a05a5a","#815454"),stroke:{color:"#572828"}},{fill:g(_4,"#b17044","#72543e"),stroke:{color:"#74482e"}},{fill:g(_4,"#a5a5a5","#727272"),stroke:{color:"#535353"}},{fill:g(_4,"#9dc7d9","#59a0bd"),stroke:{color:"#22627d"}},{fill:g(_4,"#b7b3da","#8681b3"),stroke:{color:"#8a84c5"}},{fill:g(_4,"#a8c179","#85a54a"),stroke:{color:"#5b6d1f"}},{fill:g(_4,"#eeea99","#d6d456"),stroke:{color:"#918e38"}},{fill:g(_4,"#ebcf81","#e9c756"),stroke:{color:"#947b30"}},{fill:g(_4,"#c99999","#a05a5a"),stroke:{color:"#572828"}},{fill:g(_4,"#c28b69","#7d5437"),stroke:{color:"#74482e"}},{fill:g(_4,"#bebebe","#8c8c8c"),stroke:{color:"#535353"}},{fill:g(_4,"#c7e0e9","#92baca"),stroke:{color:"#22627d"}},{fill:g(_4,"#c9c6e4","#ada9d6"),stroke:{color:"#8a84c5"}},{fill:g(_4,"#c0d0a0","#98ab74"),stroke:{color:"#5b6d1f"}},{fill:g(_4,"#f0eebb","#dcd87c"),stroke:{color:"#918e38"}},{fill:g(_4,"#efdeb0","#ebcf81"),stroke:{color:"#947b30"}},{fill:g(_4,"#ddc0c0","#c99999"),stroke:{color:"#572828"}},{fill:g(_4,"#cfb09b","#c28b69"),stroke:{color:"#74482e"}},{fill:g(_4,"#d8d8d8","#bebebe"),stroke:{color:"#535353"}},{fill:g(_4,"#ddeff5","#a5c4cd"),stroke:{color:"#22627d"}},{fill:g(_4,"#dedcf0","#b3afd3"),stroke:{color:"#8a84c5"}},{fill:g(_4,"#dfe9ca","#c0d0a0"),stroke:{color:"#5b6d1f"}},{fill:g(_4,"#f8f7db","#e5e28f"),stroke:{color:"#918e38"}},{fill:g(_4,"#f7f0d8","#cfbd88"),stroke:{color:"#947b30"}},{fill:g(_4,"#eedede","#caafaf"),stroke:{color:"#572828"}},{fill:g(_4,"#e3cdbf","#cfb09b"),stroke:{color:"#74482e"}},{fill:g(_4,"#efefef","#cacaca"),stroke:{color:"#535353"}}]}); +_3.Julie.next=function(_5,_6,_7){ +if(_5=="line"||_5=="area"){ +var s=this.seriesThemes[this._current%this.seriesThemes.length]; +s.fill.space="plot"; +var _8=_1.prototype.next.apply(this,arguments); +s.fill.space="shape"; +return _8; +} +return _1.prototype.next.apply(this,arguments); +}; +_3.Julie.post=function(_9,_a){ +_9=_1.prototype.post.apply(this,arguments); +if(_a=="slice"&&_9.series.fill&&_9.series.fill.type=="radial"){ +_9.series.fill=_2.reverse(_9.series.fill); +} +return _9; +}; +return _3.Julie; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Julie.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Julie.js.uncompressed.js new file mode 100644 index 00000000..f8caf53c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Julie.js.uncompressed.js @@ -0,0 +1,68 @@ +define("dojox/charting/themes/Julie", ["../Theme", "dojox/gfx/gradutils", "./common"], function(Theme, gradutils, themes){ + + // created by Julie Santilli (Claro-based theme) + + var g = Theme.generateGradient, + defaultFill = {type: "linear", space: "shape", x1: 0, y1: 0, x2: 0, y2: 100}; + + themes.Julie = new Theme({ + seriesThemes: [ + {fill: g(defaultFill, "#59a0bd", "#497c91"), stroke: {color: "#22627d"}}, // blue + {fill: g(defaultFill, "#8d88c7", "#6c6d8e"), stroke: {color: "#8a84c5"}}, // purple + {fill: g(defaultFill, "#85a54a", "#768b4e"), stroke: {color: "#5b6d1f"}}, // green + {fill: g(defaultFill, "#e8e667", "#c6c361"), stroke: {color: "#918e38"}}, // yellow + {fill: g(defaultFill, "#e9c756", "#c7a223"), stroke: {color: "#947b30"}}, // orange + {fill: g(defaultFill, "#a05a5a", "#815454"), stroke: {color: "#572828"}}, // red + {fill: g(defaultFill, "#b17044", "#72543e"), stroke: {color: "#74482e"}}, // brown + {fill: g(defaultFill, "#a5a5a5", "#727272"), stroke: {color: "#535353"}}, // grey + + {fill: g(defaultFill, "#9dc7d9", "#59a0bd"), stroke: {color: "#22627d"}}, // blue + {fill: g(defaultFill, "#b7b3da", "#8681b3"), stroke: {color: "#8a84c5"}}, // purple + {fill: g(defaultFill, "#a8c179", "#85a54a"), stroke: {color: "#5b6d1f"}}, // green + {fill: g(defaultFill, "#eeea99", "#d6d456"), stroke: {color: "#918e38"}}, // yellow + {fill: g(defaultFill, "#ebcf81", "#e9c756"), stroke: {color: "#947b30"}}, // orange + {fill: g(defaultFill, "#c99999", "#a05a5a"), stroke: {color: "#572828"}}, // red + {fill: g(defaultFill, "#c28b69", "#7d5437"), stroke: {color: "#74482e"}}, // brown + {fill: g(defaultFill, "#bebebe", "#8c8c8c"), stroke: {color: "#535353"}}, // grey + + {fill: g(defaultFill, "#c7e0e9", "#92baca"), stroke: {color: "#22627d"}}, // blue + {fill: g(defaultFill, "#c9c6e4", "#ada9d6"), stroke: {color: "#8a84c5"}}, // purple + {fill: g(defaultFill, "#c0d0a0", "#98ab74"), stroke: {color: "#5b6d1f"}}, // green + {fill: g(defaultFill, "#f0eebb", "#dcd87c"), stroke: {color: "#918e38"}}, // yellow + {fill: g(defaultFill, "#efdeb0", "#ebcf81"), stroke: {color: "#947b30"}}, // orange + {fill: g(defaultFill, "#ddc0c0", "#c99999"), stroke: {color: "#572828"}}, // red + {fill: g(defaultFill, "#cfb09b", "#c28b69"), stroke: {color: "#74482e"}}, // brown + {fill: g(defaultFill, "#d8d8d8", "#bebebe"), stroke: {color: "#535353"}}, // grey + + {fill: g(defaultFill, "#ddeff5", "#a5c4cd"), stroke: {color: "#22627d"}}, // blue + {fill: g(defaultFill, "#dedcf0", "#b3afd3"), stroke: {color: "#8a84c5"}}, // purple + {fill: g(defaultFill, "#dfe9ca", "#c0d0a0"), stroke: {color: "#5b6d1f"}}, // green + {fill: g(defaultFill, "#f8f7db", "#e5e28f"), stroke: {color: "#918e38"}}, // yellow + {fill: g(defaultFill, "#f7f0d8", "#cfbd88"), stroke: {color: "#947b30"}}, // orange + {fill: g(defaultFill, "#eedede", "#caafaf"), stroke: {color: "#572828"}}, // red + {fill: g(defaultFill, "#e3cdbf", "#cfb09b"), stroke: {color: "#74482e"}}, // brown + {fill: g(defaultFill, "#efefef", "#cacaca"), stroke: {color: "#535353"}} // grey + ] + }); + + themes.Julie.next = function(elementType, mixin, doPost){ + if(elementType == "line" || elementType == "area"){ + var s = this.seriesThemes[this._current % this.seriesThemes.length]; + s.fill.space = "plot"; + var theme = Theme.prototype.next.apply(this, arguments); + s.fill.space = "shape"; + return theme; + } + return Theme.prototype.next.apply(this, arguments); + }; + + themes.Julie.post = function(theme, elementType){ + theme = Theme.prototype.post.apply(this, arguments); + if(elementType == "slice" && theme.series.fill && theme.series.fill.type == "radial"){ + theme.series.fill = gradutils.reverse(theme.series.fill); + } + return theme; + }; + + return themes.Julie; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/MiamiNice.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/MiamiNice.js new file mode 100644 index 00000000..e6dfb3a4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/MiamiNice.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/MiamiNice",["../SimpleTheme","./common"],function(_1,_2){ +_2.MiamiNice=new _1({colors:["#7f9599","#45b8cc","#8ecfb0","#f8acac","#cc4482"]}); +return _2.MiamiNice; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/MiamiNice.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/MiamiNice.js.uncompressed.js new file mode 100644 index 00000000..68651d59 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/MiamiNice.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/themes/MiamiNice", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.MiamiNice = new SimpleTheme({ + colors: [ + "#7f9599", + "#45b8cc", + "#8ecfb0", + "#f8acac", + "#cc4482" + ] + }); + return themes.MiamiNice; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Midwest.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Midwest.js new file mode 100644 index 00000000..e1e500a5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Midwest.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Midwest",["../SimpleTheme","./common"],function(_1,_2){ +_2.Midwest=new _1({colors:["#927b51","#a89166","#80c31c","#bcdd5a","#aebc21"]}); +return _2.Midwest; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Midwest.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Midwest.js.uncompressed.js new file mode 100644 index 00000000..5e6b6ff1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Midwest.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/themes/Midwest", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.Midwest=new SimpleTheme({ + colors: [ + "#927b51", + "#a89166", + "#80c31c", + "#bcdd5a", + "#aebc21" + ] + }); + return themes.Midwest; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Minty.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Minty.js new file mode 100644 index 00000000..5f52eab2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Minty.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Minty",["../SimpleTheme","./common"],function(_1,_2){ +_2.Minty=new _1({colors:["#80ccbb","#539e8b","#335f54","#8dd1c2","#68c5ad"]}); +return _2.Minty; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Minty.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Minty.js.uncompressed.js new file mode 100644 index 00000000..e092a19d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Minty.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/themes/Minty", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.Minty = new SimpleTheme({ + colors: [ + "#80ccbb", + "#539e8b", + "#335f54", + "#8dd1c2", + "#68c5ad" + ] + }); + return themes.Minty; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/README new file mode 100644 index 00000000..dbf4c81f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/README @@ -0,0 +1,11 @@ +This directory contains a set of themes for the DojoX Charting +engine that are based on the visual stylings of the PlotKit +chart kit, created by Alastair Tse: + +http://www.liquidx.net/plotkit/ + +...whose work we admire. Consider these themes to not be a +ripoff of his fine work, but instead a true homage: his charts +are beautiful, and we stand in awe. + +--trt, 2007-06-08 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/base.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/base.js new file mode 100644 index 00000000..161d7a25 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/base.js @@ -0,0 +1,23 @@ +//>>built +define("dojox/charting/themes/PlotKit/base",["dojo/_base/lang","dojo/_base/Color","../../Theme","../common"],function(_1,_2,_3,_4){ +var pk=_1.getObject("PlotKit",true,_4); +pk.base=new _3({chart:{stroke:null,fill:"yellow"},plotarea:{stroke:null,fill:"yellow"},axis:{stroke:{color:"#fff",width:1},line:{color:"#fff",width:0.5},majorTick:{color:"#fff",width:0.5,length:6},minorTick:{color:"#fff",width:0.5,length:3},tick:{font:"normal normal normal 7pt Helvetica,Arial,sans-serif",fontColor:"#999"}},series:{stroke:{width:2.5,color:"#fff"},fill:"#666",font:"normal normal normal 7.5pt Helvetica,Arial,sans-serif",fontColor:"#666"},marker:{stroke:{width:2},fill:"#333",font:"normal normal normal 7pt Helvetica,Arial,sans-serif",fontColor:"#666"},colors:["red","green","blue"]}); +pk.base.next=function(_5,_6,_7){ +var _8=_3.prototype.next.apply(this,arguments); +if(_5=="line"){ +_8.marker.outline={width:2,color:"#fff"}; +_8.series.stroke.width=3.5; +_8.marker.stroke.width=2; +}else{ +if(_5=="candlestick"){ +_8.series.stroke.width=1; +}else{ +if(_8.series.stroke.color&&(_8.series.stroke.color.toString()==new _2(this.colors[(this._current-1)%this.colors.length]).toString())){ +_8.series.stroke.color="#fff"; +} +} +} +return _8; +}; +return pk; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/base.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/base.js.uncompressed.js new file mode 100644 index 00000000..d6189ab1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/base.js.uncompressed.js @@ -0,0 +1,55 @@ +define("dojox/charting/themes/PlotKit/base", ["dojo/_base/lang", "dojo/_base/Color", "../../Theme", "../common"], + function(lang, Color, Theme, themes){ + + // the baseline theme for all PlotKIt themes + var pk = lang.getObject("PlotKit", true, themes); + + pk.base = new Theme({ + chart:{ + stroke: null, + fill: "yellow" + }, + plotarea:{ + stroke: null, + fill: "yellow" + }, + axis:{ + stroke: {color:"#fff", width:1}, + line: {color:"#fff", width:.5}, + majorTick: {color: "#fff", width: .5, length: 6}, + minorTick: {color: "#fff", width: .5, length: 3}, + tick: {font: "normal normal normal 7pt Helvetica,Arial,sans-serif", fontColor: "#999"} + }, + series:{ + stroke: {width: 2.5, color:"#fff"}, + fill: "#666", + font: "normal normal normal 7.5pt Helvetica,Arial,sans-serif", // label + fontColor: "#666" + }, + marker:{ // any markers on a series. + stroke: {width: 2}, + fill: "#333", + font: "normal normal normal 7pt Helvetica,Arial,sans-serif", // label + fontColor: "#666" + }, + colors: ["red", "green", "blue"] + }); + + pk.base.next = function(elementType, mixin, doPost){ + var theme = Theme.prototype.next.apply(this, arguments); + if(elementType == "line"){ + theme.marker.outline = {width: 2, color: "#fff"}; + theme.series.stroke.width = 3.5; + theme.marker.stroke.width = 2; + }else if(elementType == "candlestick"){ + theme.series.stroke.width = 1; + }else if(theme.series.stroke.color && (theme.series.stroke.color.toString() == + new Color(this.colors[(this._current-1) % this.colors.length]).toString())){ + // if the user did not override the stroke, let's force blank + theme.series.stroke.color = "#fff"; + } + return theme; + }; + + return pk; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/blue.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/blue.js new file mode 100644 index 00000000..28c0cd2d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/blue.js @@ -0,0 +1,7 @@ +//>>built +define("dojox/charting/themes/PlotKit/blue",["./base","../../Theme"],function(pk,_1){ +pk.blue=pk.base.clone(); +pk.blue.chart.fill=pk.blue.plotarea.fill="#e7eef6"; +pk.blue.colors=_1.defineColors({hue:217,saturation:60,low:40,high:88}); +return pk.blue; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/blue.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/blue.js.uncompressed.js new file mode 100644 index 00000000..40c4b60c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/blue.js.uncompressed.js @@ -0,0 +1,7 @@ +define("dojox/charting/themes/PlotKit/blue", ["./base", "../../Theme"], function(pk, Theme){ + pk.blue = pk.base.clone(); + pk.blue.chart.fill = pk.blue.plotarea.fill = "#e7eef6"; + pk.blue.colors = Theme.defineColors({hue: 217, saturation: 60, low: 40, high: 88}); + + return pk.blue; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/cyan.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/cyan.js new file mode 100644 index 00000000..eb2ab69b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/cyan.js @@ -0,0 +1,7 @@ +//>>built +define("dojox/charting/themes/PlotKit/cyan",["./base","../../Theme"],function(pk,_1){ +pk.cyan=pk.base.clone(); +pk.cyan.chart.fill=pk.cyan.plotarea.fill="#e6f1f5"; +pk.cyan.colors=_1.defineColors({hue:194,saturation:60,low:40,high:88}); +return pk.cyan; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/cyan.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/cyan.js.uncompressed.js new file mode 100644 index 00000000..8ed44886 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/cyan.js.uncompressed.js @@ -0,0 +1,7 @@ +define("dojox/charting/themes/PlotKit/cyan", ["./base", "../../Theme"], function(pk, Theme){ + pk.cyan = pk.base.clone(); + pk.cyan.chart.fill = pk.cyan.plotarea.fill = "#e6f1f5"; + pk.cyan.colors = Theme.defineColors({hue: 194, saturation: 60, low: 40, high: 88}); + + return pk.cyan; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/green.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/green.js new file mode 100644 index 00000000..479f1529 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/green.js @@ -0,0 +1,7 @@ +//>>built +define("dojox/charting/themes/PlotKit/green",["./base","../../Theme"],function(pk,_1){ +pk.green=pk.base.clone(); +pk.green.chart.fill=pk.green.plotarea.fill="#eff5e6"; +pk.green.colors=_1.defineColors({hue:82,saturation:60,low:40,high:88}); +return pk.green; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/green.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/green.js.uncompressed.js new file mode 100644 index 00000000..4f4678cc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/green.js.uncompressed.js @@ -0,0 +1,7 @@ +define("dojox/charting/themes/PlotKit/green", ["./base", "../../Theme"], function(pk, Theme){ + pk.green = pk.base.clone(); + pk.green.chart.fill = pk.green.plotarea.fill = "#eff5e6"; + pk.green.colors = Theme.defineColors({hue: 82, saturation: 60, low: 40, high: 88}); + + return pk.green; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/orange.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/orange.js new file mode 100644 index 00000000..032f22c1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/orange.js @@ -0,0 +1,7 @@ +//>>built +define("dojox/charting/themes/PlotKit/orange",["./base","../../Theme"],function(pk,_1){ +pk.orange=pk.base.clone(); +pk.orange.chart.fill=pk.orange.plotarea.fill="#f5eee6"; +pk.orange.colors=_1.defineColors({hue:31,saturation:60,low:40,high:88}); +return pk.orange; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/orange.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/orange.js.uncompressed.js new file mode 100644 index 00000000..883171e9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/orange.js.uncompressed.js @@ -0,0 +1,7 @@ +define("dojox/charting/themes/PlotKit/orange", ["./base", "../../Theme"], function(pk, Theme){ + pk.orange = pk.base.clone(); + pk.orange.chart.fill = pk.orange.plotarea.fill = "#f5eee6"; + pk.orange.colors = Theme.defineColors({hue: 31, saturation: 60, low: 40, high: 88}); + + return pk.orange; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/purple.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/purple.js new file mode 100644 index 00000000..a5a8d7ed --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/purple.js @@ -0,0 +1,7 @@ +//>>built +define("dojox/charting/themes/PlotKit/purple",["./base","../../Theme"],function(pk,_1){ +pk.purple=pk.base.clone(); +pk.purple.chart.fill=pk.purple.plotarea.fill="#eee6f5"; +pk.purple.colors=_1.defineColors({hue:271,saturation:60,low:40,high:88}); +return pk.purple; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/purple.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/purple.js.uncompressed.js new file mode 100644 index 00000000..cf996bde --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/purple.js.uncompressed.js @@ -0,0 +1,7 @@ +define("dojox/charting/themes/PlotKit/purple", ["./base", "../../Theme"], function(pk, Theme){ + pk.purple = pk.base.clone(); + pk.purple.chart.fill = pk.purple.plotarea.fill = "#eee6f5"; + pk.purple.colors = Theme.defineColors({hue: 271, saturation: 60, low: 40, high: 88}); + + return pk.purple; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/red.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/red.js new file mode 100644 index 00000000..79198890 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/red.js @@ -0,0 +1,7 @@ +//>>built +define("dojox/charting/themes/PlotKit/red",["./base","../../Theme"],function(pk,_1){ +pk.red=pk.base.clone(); +pk.red.chart.fill=pk.red.plotarea.fill="#f5e6e6"; +pk.red.colors=_1.defineColors({hue:1,saturation:60,low:40,high:88}); +return pk.red; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/red.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/red.js.uncompressed.js new file mode 100644 index 00000000..edbc1a15 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PlotKit/red.js.uncompressed.js @@ -0,0 +1,7 @@ +define("dojox/charting/themes/PlotKit/red", ["./base", "../../Theme"], function(pk, Theme){ + pk.red = pk.base.clone(); + pk.red.chart.fill = pk.red.plotarea.fill = "#f5e6e6"; + pk.red.colors = Theme.defineColors({hue: 1, saturation: 60, low: 40, high: 88}); + + return pk.red; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PrimaryColors.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PrimaryColors.js new file mode 100644 index 00000000..c74542cb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PrimaryColors.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/charting/themes/PrimaryColors",["../Theme","./gradientGenerator","./common"],function(_1,_2,_3){ +var _4=["#f00","#0f0","#00f","#ff0","#0ff","#f0f","./common"],_5={type:"linear",space:"plot",x1:0,y1:0,x2:0,y2:100}; +_3.PrimaryColors=new _1({seriesThemes:_2.generateMiniTheme(_4,_5,90,40,25)}); +return _3.PrimaryColors; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PrimaryColors.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PrimaryColors.js.uncompressed.js new file mode 100644 index 00000000..74afa6c3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PrimaryColors.js.uncompressed.js @@ -0,0 +1,11 @@ +define("dojox/charting/themes/PrimaryColors", ["../Theme", "./gradientGenerator", "./common"], function(Theme, gradientGenerator, themes){ + + var colors = ["#f00", "#0f0", "#00f", "#ff0", "#0ff", "#f0f", "./common"], + defaultFill = {type: "linear", space: "plot", x1: 0, y1: 0, x2: 0, y2: 100}; + + themes.PrimaryColors = new Theme({ + seriesThemes: gradientGenerator.generateMiniTheme(colors, defaultFill, 90, 40, 25) + }); + + return themes.PrimaryColors; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PurpleRain.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PurpleRain.js new file mode 100644 index 00000000..29373c44 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PurpleRain.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/PurpleRain",["../SimpleTheme","./common"],function(_1,_2){ +_2.PurpleRain=new _1({colors:["#4879bc","#ef446f","#3f58a7","#8254a2","#4956a6"]}); +return _2.PurpleRain; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PurpleRain.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PurpleRain.js.uncompressed.js new file mode 100644 index 00000000..c4410fe9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/PurpleRain.js.uncompressed.js @@ -0,0 +1,14 @@ +define("dojox/charting/themes/PurpleRain", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + // notes: colors generated by moving in 30 degree increments around the hue circle, + // at 90% saturation, using a B value of 75 (HSB model). + themes.PurpleRain = new SimpleTheme({ + colors: [ + "#4879bc", + "#ef446f", + "#3f58a7", + "#8254a2", + "#4956a6" + ] + }); + return themes.PurpleRain; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/README new file mode 100644 index 00000000..9a3725d7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/README @@ -0,0 +1,5 @@ +Theme authors: + +GreySkies, Shrooms, PlotKit (all): Tom Trenka (ttrenka AT gmail.com) +ET (all): Alex Russell (alex AT dojotoolkit.org) +Ireland, SageToLime, Minty: Damon Dimmick (SitePen, Inc.) diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Renkoo.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Renkoo.js new file mode 100644 index 00000000..54e5d507 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Renkoo.js @@ -0,0 +1,28 @@ +//>>built +define("dojox/charting/themes/Renkoo",["../Theme","dojox/gfx/gradutils","./common"],function(_1,_2,_3){ +var g=_1.generateGradient,_4={type:"linear",space:"shape",x1:0,y1:0,x2:0,y2:150}; +_3.Renkoo=new _1({chart:{fill:"#123666",pageStyle:{backgroundColor:"#123666",backgroundImage:"none",color:"#95afdb"}},plotarea:{fill:"#123666"},axis:{stroke:{color:"#95afdb",width:1},tick:{color:"#95afdb",position:"center",font:"normal normal normal 7pt Lucida Grande, Helvetica, Arial, sans-serif",fontColor:"#95afdb"}},series:{stroke:{width:2.5,color:"#123666"},outline:null,font:"normal normal normal 8pt Lucida Grande, Helvetica, Arial, sans-serif",fontColor:"#95afdb"},marker:{stroke:{width:2.5,color:"#ccc"},outline:null,font:"normal normal normal 8pt Lucida Grande, Helvetica, Arial, sans-serif",fontColor:"#95afdb"},seriesThemes:[{fill:g(_4,"#e7e391","#f8f7de")},{fill:g(_4,"#ffb6b6","#ffe8e8")},{fill:g(_4,"#bcda7d","#eef7da")},{fill:g(_4,"#d5d5d5","#f4f4f4")},{fill:g(_4,"#c1e3fd","#e4f3ff")}],markerThemes:[{fill:"#fcfcf3",stroke:{color:"#e7e391"}},{fill:"#fff1f1",stroke:{color:"#ffb6b6"}},{fill:"#fafdf4",stroke:{color:"#bcda7d"}},{fill:"#fbfbfb",stroke:{color:"#d5d5d5"}},{fill:"#f3faff",stroke:{color:"#c1e3fd"}}]}); +_3.Renkoo.next=function(_5,_6,_7){ +if("slice,column,bar".indexOf(_5)==-1){ +var s=this.seriesThemes[this._current%this.seriesThemes.length]; +s.fill.space="plot"; +s.stroke={width:2,color:s.fill.colors[0].color}; +if(_5=="line"||_5=="area"){ +s.stroke.width=4; +} +var _8=_1.prototype.next.apply(this,arguments); +delete s.stroke; +s.fill.space="shape"; +return _8; +} +return _1.prototype.next.apply(this,arguments); +}; +_3.Renkoo.post=function(_9,_a){ +_9=_1.prototype.post.apply(this,arguments); +if((_a=="slice"||_a=="circle")&&_9.series.fill&&_9.series.fill.type=="radial"){ +_9.series.fill=_2.reverse(_9.series.fill); +} +return _9; +}; +return _3.Renkoo; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Renkoo.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Renkoo.js.uncompressed.js new file mode 100644 index 00000000..18636ab1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Renkoo.js.uncompressed.js @@ -0,0 +1,83 @@ +define("dojox/charting/themes/Renkoo", ["../Theme", "dojox/gfx/gradutils", "./common"], function(Theme, gradutils, themes){ + + // created by Tom Trenka + + var g = Theme.generateGradient, + defaultFill = {type: "linear", space: "shape", x1: 0, y1: 0, x2: 0, y2: 150}; + + themes.Renkoo = new Theme({ + chart: { + fill: "#123666", + pageStyle: {backgroundColor: "#123666", backgroundImage: "none", color: "#95afdb"} + }, + plotarea: { + fill: "#123666" + }, + axis:{ + stroke: { // the axis itself + color: "#95afdb", + width: 1 + }, + tick: { // used as a foundation for all ticks + color: "#95afdb", + position: "center", + font: "normal normal normal 7pt Lucida Grande, Helvetica, Arial, sans-serif", // labels on axis + fontColor: "#95afdb" // color of labels + } + }, + series: { + stroke: {width: 2.5, color: "#123666"}, + outline: null, + font: "normal normal normal 8pt Lucida Grande, Helvetica, Arial, sans-serif", // labels on axis + fontColor: "#95afdb" + }, + marker: { + stroke: {width: 2.5, color: "#ccc"}, + outline: null, + font: "normal normal normal 8pt Lucida Grande, Helvetica, Arial, sans-serif", // labels on axis + fontColor: "#95afdb" + }, + seriesThemes: [ + {fill: g(defaultFill, "#e7e391", "#f8f7de")}, + {fill: g(defaultFill, "#ffb6b6", "#ffe8e8")}, + {fill: g(defaultFill, "#bcda7d", "#eef7da")}, + {fill: g(defaultFill, "#d5d5d5", "#f4f4f4")}, + {fill: g(defaultFill, "#c1e3fd", "#e4f3ff")} + ], + markerThemes: [ + {fill: "#fcfcf3", stroke: {color: "#e7e391"}}, + {fill: "#fff1f1", stroke: {color: "#ffb6b6"}}, + {fill: "#fafdf4", stroke: {color: "#bcda7d"}}, + {fill: "#fbfbfb", stroke: {color: "#d5d5d5"}}, + {fill: "#f3faff", stroke: {color: "#c1e3fd"}} + ] + }); + + themes.Renkoo.next = function(elementType, mixin, doPost){ + if("slice,column,bar".indexOf(elementType) == -1){ + // custom processing to substitute colors + var s = this.seriesThemes[this._current % this.seriesThemes.length]; + s.fill.space = "plot"; + s.stroke = { width: 2, color: s.fill.colors[0].color}; + if(elementType == "line" || elementType == "area"){ + s.stroke.width = 4; + } + var theme = Theme.prototype.next.apply(this, arguments); + // cleanup + delete s.stroke; + s.fill.space = "shape"; + return theme; + } + return Theme.prototype.next.apply(this, arguments); + }; + + themes.Renkoo.post = function(theme, elementType){ + theme = Theme.prototype.post.apply(this, arguments); + if((elementType == "slice" || elementType == "circle") && theme.series.fill && theme.series.fill.type == "radial"){ + theme.series.fill = gradutils.reverse(theme.series.fill); + } + return theme; + }; + + return themes.Renkoo; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/RoyalPurples.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/RoyalPurples.js new file mode 100644 index 00000000..709b7f66 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/RoyalPurples.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/RoyalPurples",["../SimpleTheme","./common"],function(_1,_2){ +_2.RoyalPurples=new _1({colors:["#473980","#685aa7","#7970b3","#231c3f","#7267ae"]}); +return _2.RoyalPurples; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/RoyalPurples.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/RoyalPurples.js.uncompressed.js new file mode 100644 index 00000000..c3b47dfb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/RoyalPurples.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/themes/RoyalPurples", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.RoyalPurples = new SimpleTheme({ + colors: [ + "#473980", + "#685aa7", + "#7970b3", + "#231c3f", + "#7267ae" + ] + }); + return themes.RoyalPurples; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/SageToLime.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/SageToLime.js new file mode 100644 index 00000000..1f8fb7db --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/SageToLime.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/SageToLime",["../SimpleTheme","./common"],function(_1,_2){ +_2.SageToLime=new _1({colors:["#abdbcb","#435a51","#70998b","#5f8074","#80ccbb","#539e8b","#78a596","#335f54","#8dd1c2","#68c5ad"]}); +return _2.SageToLime; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/SageToLime.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/SageToLime.js.uncompressed.js new file mode 100644 index 00000000..77432a2d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/SageToLime.js.uncompressed.js @@ -0,0 +1,17 @@ +define("dojox/charting/themes/SageToLime", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.SageToLime = new SimpleTheme({ + colors: [ + "#abdbcb", + "#435a51", + "#70998b", + "#5f8074", + "#80ccbb", + "#539e8b", + "#78a596", + "#335f54", + "#8dd1c2", + "#68c5ad" + ] + }); + return themes.SageToLime; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Shrooms.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Shrooms.js new file mode 100644 index 00000000..a372b810 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Shrooms.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Shrooms",["../SimpleTheme","./common"],function(_1,_2){ +_2.Shrooms=new _1({colors:["#bf1313","#69bf13","#13bfbf","#6913bf","#bf6913","#13bf13","#1369bf","#bf13bf","#bfbf13","#13bf69","#1313bf","#bf1369"]}); +return _2.Shrooms; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Shrooms.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Shrooms.js.uncompressed.js new file mode 100644 index 00000000..3c7f8b9d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Shrooms.js.uncompressed.js @@ -0,0 +1,21 @@ +define("dojox/charting/themes/Shrooms", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + // notes: colors generated by moving in 30 degree increments around the hue circle, + // at 90% saturation, using a B value of 75 (HSB model). + themes.Shrooms = new SimpleTheme({ + colors: [ + "#bf1313", // 0 + "#69bf13", // 90 + "#13bfbf", // 180 + "#6913bf", // 270 + "#bf6913", // 30 + "#13bf13", // 120 + "#1369bf", // 210 + "#bf13bf", // 300 + "#bfbf13", // 60 + "#13bf69", // 150 + "#1313bf", // 240 + "#bf1369" // 330 + ] + }); + return themes.Shrooms; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/ThreeD.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/ThreeD.js new file mode 100644 index 00000000..8744567c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/ThreeD.js @@ -0,0 +1,24 @@ +//>>built +define("dojox/charting/themes/ThreeD",["dojo/_base/lang","dojo/_base/array","../Theme","./gradientGenerator","./PrimaryColors","dojo/colors","./common"],function(_1,_2,_3,_4,_5,_6){ +var _7=["#f00","#0f0","#00f","#ff0","#0ff","#f0f","./common"],_8={type:"linear",space:"shape",x1:0,y1:0,x2:100,y2:0},_9=[{o:0,i:174},{o:0.08,i:231},{o:0.18,i:237},{o:0.3,i:231},{o:0.39,i:221},{o:0.49,i:206},{o:0.58,i:187},{o:0.68,i:165},{o:0.8,i:128},{o:0.9,i:102},{o:1,i:174}],_a=2,_b=100,_c=_2.map(_7,function(c){ +var _d=_1.delegate(_8),_7=_d.colors=_4.generateGradientByIntensity(c,_9),_e=_7[_a].color; +_e.r+=_b; +_e.g+=_b; +_e.b+=_b; +_e.sanitize(); +return _d; +}); +_6.ThreeD=_5.clone(); +_6.ThreeD.series.shadow={dx:1,dy:1,width:3,color:[0,0,0,0.15]}; +_6.ThreeD.next=function(_f,_10,_11){ +if(_f=="bar"||_f=="column"){ +var _12=this._current%this.seriesThemes.length,s=this.seriesThemes[_12],old=s.fill; +s.fill=_c[_12]; +var _13=_3.prototype.next.apply(this,arguments); +s.fill=old; +return _13; +} +return _3.prototype.next.apply(this,arguments); +}; +return _6.ThreeD; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/ThreeD.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/ThreeD.js.uncompressed.js new file mode 100644 index 00000000..efcde167 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/ThreeD.js.uncompressed.js @@ -0,0 +1,43 @@ +define("dojox/charting/themes/ThreeD", ["dojo/_base/lang", "dojo/_base/array", "../Theme", "./gradientGenerator", "./PrimaryColors", "dojo/colors" /* for sanitize */, "./common"], + function(lang, ArrayUtil, Theme, gradientGenerator, PrimaryColors, themes){ + + var colors = ["#f00", "#0f0", "#00f", "#ff0", "#0ff", "#f0f", "./common"], // the same is in PrimaryColors + defaultFill = {type: "linear", space: "shape", x1: 0, y1: 0, x2: 100, y2: 0}, + // 3D cylinder map is calculated using dojox.gfx3d + cyl3dMap = [ + {o: 0.00, i: 174}, {o: 0.08, i: 231}, {o: 0.18, i: 237}, {o: 0.30, i: 231}, + {o: 0.39, i: 221}, {o: 0.49, i: 206}, {o: 0.58, i: 187}, {o: 0.68, i: 165}, + {o: 0.80, i: 128}, {o: 0.90, i: 102}, {o: 1.00, i: 174} + ], + hiliteIndex = 2, hiliteIntensity = 100, + cyl3dFills = ArrayUtil.map(colors, function(c){ + var fill = lang.delegate(defaultFill), + colors = fill.colors = gradientGenerator.generateGradientByIntensity(c, cyl3dMap), + hilite = colors[hiliteIndex].color; + // add highlight + hilite.r += hiliteIntensity; + hilite.g += hiliteIntensity; + hilite.b += hiliteIntensity; + hilite.sanitize(); + return fill; + }); + + themes.ThreeD = PrimaryColors.clone(); + themes.ThreeD.series.shadow = {dx: 1, dy: 1, width: 3, color: [0, 0, 0, 0.15]}; + + themes.ThreeD.next = function(elementType, mixin, doPost){ + if(elementType == "bar" || elementType == "column"){ + // custom processing for bars and columns: substitute fills + var index = this._current % this.seriesThemes.length, + s = this.seriesThemes[index], old = s.fill; + s.fill = cyl3dFills[index]; + var theme = Theme.prototype.next.apply(this, arguments); + // cleanup + s.fill = old; + return theme; + } + return Theme.prototype.next.apply(this, arguments); + }; + + return themes.ThreeD; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tom.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tom.js new file mode 100644 index 00000000..8926cdd7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tom.js @@ -0,0 +1,29 @@ +//>>built +define("dojox/charting/themes/Tom",["../Theme","dojox/gfx/gradutils","./common"],function(_1,_2,_3){ +var g=_1.generateGradient,_4={type:"linear",space:"shape",x1:0,y1:0,x2:0,y2:100}; +_3.Tom=new _1({chart:{fill:"#181818",stroke:{color:"#181818"},pageStyle:{backgroundColor:"#181818",backgroundImage:"none",color:"#eaf2cb"}},plotarea:{fill:"#181818"},axis:{stroke:{color:"#a0a68b",width:1},tick:{color:"#888c76",position:"center",font:"normal normal normal 7pt Helvetica, Arial, sans-serif",fontColor:"#888c76"}},series:{stroke:{width:2.5,color:"#eaf2cb"},outline:null,font:"normal normal normal 8pt Helvetica, Arial, sans-serif",fontColor:"#eaf2cb"},marker:{stroke:{width:1.25,color:"#eaf2cb"},outline:{width:1.25,color:"#eaf2cb"},font:"normal normal normal 8pt Helvetica, Arial, sans-serif",fontColor:"#eaf2cb"},seriesThemes:[{fill:g(_4,"#bf9e0a","#ecc20c")},{fill:g(_4,"#73b086","#95e5af")},{fill:g(_4,"#c7212d","#ed2835")},{fill:g(_4,"#87ab41","#b6e557")},{fill:g(_4,"#b86c25","#d37d2a")}],markerThemes:[{fill:"#bf9e0a",stroke:{color:"#ecc20c"}},{fill:"#73b086",stroke:{color:"#95e5af"}},{fill:"#c7212d",stroke:{color:"#ed2835"}},{fill:"#87ab41",stroke:{color:"#b6e557"}},{fill:"#b86c25",stroke:{color:"#d37d2a"}}]}); +_3.Tom.next=function(_5,_6,_7){ +var _8=_5=="line"; +if(_8||_5=="area"){ +var s=this.seriesThemes[this._current%this.seriesThemes.length]; +s.fill.space="plot"; +if(_8){ +s.stroke={width:4,color:s.fill.colors[0].color}; +} +var _9=_1.prototype.next.apply(this,arguments); +delete s.outline; +delete s.stroke; +s.fill.space="shape"; +return _9; +} +return _1.prototype.next.apply(this,arguments); +}; +_3.Tom.post=function(_a,_b){ +_a=_1.prototype.post.apply(this,arguments); +if((_b=="slice"||_b=="circle")&&_a.series.fill&&_a.series.fill.type=="radial"){ +_a.series.fill=_2.reverse(_a.series.fill); +} +return _a; +}; +return _3.Tom; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tom.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tom.js.uncompressed.js new file mode 100644 index 00000000..ec9b7af7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tom.js.uncompressed.js @@ -0,0 +1,85 @@ +define("dojox/charting/themes/Tom", ["../Theme", "dojox/gfx/gradutils", "./common"], function(Theme, gradutils, themes){ + + // created by Tom Trenka + + var g = Theme.generateGradient, + defaultFill = {type: "linear", space: "shape", x1: 0, y1: 0, x2: 0, y2: 100}; + + themes.Tom = new Theme({ + chart: { + fill: "#181818", + stroke: {color: "#181818"}, + pageStyle: {backgroundColor: "#181818", backgroundImage: "none", color: "#eaf2cb"} + }, + plotarea: { + fill: "#181818" + }, + axis:{ + stroke: { // the axis itself + color: "#a0a68b", + width: 1 + }, + tick: { // used as a foundation for all ticks + color: "#888c76", + position: "center", + font: "normal normal normal 7pt Helvetica, Arial, sans-serif", // labels on axis + fontColor: "#888c76" // color of labels + } + }, + series: { + stroke: {width: 2.5, color: "#eaf2cb"}, + outline: null, + font: "normal normal normal 8pt Helvetica, Arial, sans-serif", + fontColor: "#eaf2cb" + }, + marker: { + stroke: {width: 1.25, color: "#eaf2cb"}, + outline: {width: 1.25, color: "#eaf2cb"}, + font: "normal normal normal 8pt Helvetica, Arial, sans-serif", + fontColor: "#eaf2cb" + }, + seriesThemes: [ + {fill: g(defaultFill, "#bf9e0a", "#ecc20c")}, + {fill: g(defaultFill, "#73b086", "#95e5af")}, + {fill: g(defaultFill, "#c7212d", "#ed2835")}, + {fill: g(defaultFill, "#87ab41", "#b6e557")}, + {fill: g(defaultFill, "#b86c25", "#d37d2a")} + ], + markerThemes: [ + {fill: "#bf9e0a", stroke: {color: "#ecc20c"}}, + {fill: "#73b086", stroke: {color: "#95e5af"}}, + {fill: "#c7212d", stroke: {color: "#ed2835"}}, + {fill: "#87ab41", stroke: {color: "#b6e557"}}, + {fill: "#b86c25", stroke: {color: "#d37d2a"}} + ] + }); + + themes.Tom.next = function(elementType, mixin, doPost){ + var isLine = elementType == "line"; + if(isLine || elementType == "area"){ + // custom processing for lines: substitute colors + var s = this.seriesThemes[this._current % this.seriesThemes.length]; + s.fill.space = "plot"; + if(isLine){ + s.stroke = { width: 4, color: s.fill.colors[0].color}; + } + var theme = Theme.prototype.next.apply(this, arguments); + // cleanup + delete s.outline; + delete s.stroke; + s.fill.space = "shape"; + return theme; + } + return Theme.prototype.next.apply(this, arguments); + }; + + themes.Tom.post = function(theme, elementType){ + theme = Theme.prototype.post.apply(this, arguments); + if((elementType == "slice" || elementType == "circle") && theme.series.fill && theme.series.fill.type == "radial"){ + theme.series.fill = gradutils.reverse(theme.series.fill); + } + return theme; + }; + + return themes.Tom; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tufte.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tufte.js new file mode 100644 index 00000000..5cafce36 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tufte.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Tufte",["../SimpleTheme","dojo/_base/Color","./common"],function(_1,_2,_3){ +_3.Tufte=new _1({chart:{stroke:null,fill:"inherit"},plotarea:{stroke:null,fill:"transparent"},axis:{stroke:{width:1,color:"#ccc"},majorTick:{color:"black",width:1,length:5},minorTick:{color:"#666",width:1,length:2},font:"normal normal normal 8pt Tahoma",fontColor:"#999"},series:{outline:null,stroke:{width:1,color:"black"},fill:new _2([59,68,75,0.85]),font:"normal normal normal 7pt Tahoma",fontColor:"#717171"},marker:{stroke:{width:1,color:"black"},fill:"#333",font:"normal normal normal 7pt Tahoma",fontColor:"black"},colors:[_2.fromHex("#8a8c8f"),_2.fromHex("#4b4b4b"),_2.fromHex("#3b444b"),_2.fromHex("#2e2d30"),_2.fromHex("#000000")]}); +return _3.Tufte; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tufte.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tufte.js.uncompressed.js new file mode 100644 index 00000000..769ce941 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Tufte.js.uncompressed.js @@ -0,0 +1,54 @@ +define("dojox/charting/themes/Tufte", ["../SimpleTheme", "dojo/_base/Color", "./common"], function(SimpleTheme, Color, themes){ + /* + A charting theme based on the principles championed by + Edward Tufte. By Alex Russell, Dojo Project Lead. + */ + themes.Tufte = new SimpleTheme({ + chart: { + stroke: null, + fill: "inherit" + }, + plotarea: { + // stroke: { width: 0.2, color: "#666666" }, + stroke: null, + fill: "transparent" + }, + axis: { + stroke: {width: 1, color: "#ccc"}, + majorTick:{ + color: "black", + width: 1, + length: 5 + }, + minorTick: { + color: "#666", + width: 1, + length: 2 + }, + font: "normal normal normal 8pt Tahoma", + fontColor: "#999" + }, + series: { + outline: null, + stroke: {width: 1, color: "black"}, + // fill: "#3b444b", + fill: new Color([0x3b, 0x44, 0x4b, 0.85]), + font: "normal normal normal 7pt Tahoma", + fontColor: "#717171" + }, + marker: { + stroke: {width: 1, color: "black"}, + fill: "#333", + font: "normal normal normal 7pt Tahoma", + fontColor: "black" + }, + colors:[ + Color.fromHex("#8a8c8f"), + Color.fromHex("#4b4b4b"), + Color.fromHex("#3b444b"), + Color.fromHex("#2e2d30"), + Color.fromHex("#000000") + ] + }); + return themes.Tufte; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/WatersEdge.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/WatersEdge.js new file mode 100644 index 00000000..fa437a54 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/WatersEdge.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/WatersEdge",["../SimpleTheme","./common"],function(_1,_2){ +_2.WatersEdge=new _1({colors:["#437cc0","#6256a5","#4552a3","#43c4f2","#4b66b0"]}); +return _2.WatersEdge; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/WatersEdge.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/WatersEdge.js.uncompressed.js new file mode 100644 index 00000000..7dbe7252 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/WatersEdge.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/themes/WatersEdge", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.WatersEdge = new SimpleTheme({ + colors: [ + "#437cc0", + "#6256a5", + "#4552a3", + "#43c4f2", + "#4b66b0" + ] + }); + return themes.WatersEdge; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Wetland.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Wetland.js new file mode 100644 index 00000000..75a23bf6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Wetland.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/charting/themes/Wetland",["../SimpleTheme","./common"],function(_1,_2){ +_2.Wetland=new _1({colors:["#bfbc64","#737130","#73373b","#7dafca","#8d3c42"]}); +return _2.Wetland; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Wetland.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Wetland.js.uncompressed.js new file mode 100644 index 00000000..e355720c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/Wetland.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/charting/themes/Wetland", ["../SimpleTheme", "./common"], function(SimpleTheme, themes){ + themes.Wetland = new SimpleTheme({ + colors: [ + "#bfbc64", + "#737130", + "#73373b", + "#7dafca", + "#8d3c42" + ] + }); + return themes.Wetland; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/common.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/common.js new file mode 100644 index 00000000..bdae92c6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/common.js @@ -0,0 +1,4 @@ +//>>built +define("dojox/charting/themes/common",["dojo/_base/lang"],function(_1){ +return _1.getObject("dojox.charting.themes",true); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/common.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/common.js.uncompressed.js new file mode 100644 index 00000000..4b18687d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/common.js.uncompressed.js @@ -0,0 +1,3 @@ +define("dojox/charting/themes/common", ["dojo/_base/lang"], function(lang){ + return lang.getObject("dojox.charting.themes", true); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/gradientGenerator.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/gradientGenerator.js new file mode 100644 index 00000000..ae141db6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/gradientGenerator.js @@ -0,0 +1,30 @@ +//>>built +define("dojox/charting/themes/gradientGenerator",["dojo/_base/lang","dojo/_base/array","dojo/_base/Color","../Theme","dojox/color/_base","./common"],function(_1,_2,_3,_4,_5,_6){ +var gg=_1.getObject("gradientGenerator",true,_6); +gg.generateFills=function(_7,_8,_9,_a){ +return _2.map(_7,function(c){ +return _4.generateHslGradient(c,_8,_9,_a); +}); +}; +gg.updateFills=function(_b,_c,_d,_e){ +_2.forEach(_b,function(t){ +if(t.fill&&!t.fill.type){ +t.fill=_4.generateHslGradient(t.fill,_c,_d,_e); +} +}); +}; +gg.generateMiniTheme=function(_f,_10,_11,_12,_13){ +return _2.map(_f,function(c){ +c=new _5.Color(c); +return {fill:_4.generateHslGradient(c,_10,_11,_12),stroke:{color:_4.generateHslColor(c,_13)}}; +}); +}; +gg.generateGradientByIntensity=function(_14,_15){ +_14=new _3(_14); +return _2.map(_15,function(_16){ +var s=_16.i/255; +return {offset:_16.o,color:new _3([_14.r*s,_14.g*s,_14.b*s,_14.a])}; +}); +}; +return gg; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/gradientGenerator.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/gradientGenerator.js.uncompressed.js new file mode 100644 index 00000000..d1af589c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/themes/gradientGenerator.js.uncompressed.js @@ -0,0 +1,81 @@ +define("dojox/charting/themes/gradientGenerator", ["dojo/_base/lang", "dojo/_base/array", "dojo/_base/Color", "../Theme", "dojox/color/_base", "./common"], + function(lang, arr, Color, Theme, dxcolor, themes){ + + var gg = lang.getObject("gradientGenerator", true, themes); + + gg.generateFills = function(colors, fillPattern, lumFrom, lumTo){ + // summary: + // generates 2-color gradients using pure colors, a fill pattern, and two luminance values + // colors: Array + // Array of colors to generate gradients for each. + // fillPattern: Object + // Gradient fill descriptor which colors list will be generated. + // lumFrom: Number + // Initial luminance value (0-100). + // lumTo: Number + // Final luminance value (0-100). + return arr.map(colors, function(c){ // Array + return Theme.generateHslGradient(c, fillPattern, lumFrom, lumTo); + }); + }; + + gg.updateFills = function(themes, fillPattern, lumFrom, lumTo){ + // summary: + // transforms solid color fills into 2-color gradients using a fill pattern, and two luminance values + // themes: Array + // Array of mini-themes (usually series themes or marker themes), which fill will be transformed. + // fillPattern: Object + // Gradient fill descriptor which colors list will be generated. + // lumFrom: Number + // Initial luminance value (0-100). + // lumTo: Number + // Final luminance value (0-100). + arr.forEach(themes, function(t){ + if(t.fill && !t.fill.type){ + t.fill = Theme.generateHslGradient(t.fill, fillPattern, lumFrom, lumTo); + } + }); + }; + + gg.generateMiniTheme = function(colors, fillPattern, lumFrom, lumTo, lumStroke){ + // summary: + // generates mini-themes with 2-color gradients using colors, a fill pattern, and three luminance values + // colors: Array + // Array of colors to generate gradients for each. + // fillPattern: Object + // Gradient fill descriptor which colors list will be generated. + // lumFrom: Number + // Initial luminance value (0-100). + // lumTo: Number + // Final luminance value (0-100). + // lumStroke: Number + // Stroke luminance value (0-100). + return arr.map(colors, function(c){ // Array + c = new dxcolor.Color(c); + return { + fill: Theme.generateHslGradient(c, fillPattern, lumFrom, lumTo), + stroke: {color: Theme.generateHslColor(c, lumStroke)} + }; + }); + }; + + gg.generateGradientByIntensity = function(color, intensityMap){ + // summary: + // generates gradient colors using an intensity map + // color: dojo.Color + // Color to use to generate gradients. + // intensityMap: Array + // Array of tuples {o, i}, where o is a gradient offset (0-1), + // and i is an intensity (0-255). + color = new Color(color); + return arr.map(intensityMap, function(stop){ // Array + var s = stop.i / 255; + return { + offset: stop.o, + color: new Color([color.r * s, color.g * s, color.b * s, color.a]) + }; + }); + }; + + return gg; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/BidiSupport.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/BidiSupport.js new file mode 100644 index 00000000..9b9599d4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/BidiSupport.js @@ -0,0 +1,4 @@ +//>>built +define("dojox/charting/widget/BidiSupport",["dojo/_base/kernel"],function(_1){ +_1.deprecated("dojox.charting.widget.BidiSupport is deprecated,","set \"has: {'dojo-bidi': true }\" in data-dojo-config to enable bidi support"); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/BidiSupport.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/BidiSupport.js.uncompressed.js new file mode 100644 index 00000000..20ffb338 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/BidiSupport.js.uncompressed.js @@ -0,0 +1,4 @@ +define("dojox/charting/widget/BidiSupport", ["dojo/_base/kernel"], + function(kernel){ + kernel.deprecated('dojox.charting.widget.BidiSupport is deprecated,', 'set "has: {\'dojo-bidi\': true }" in data-dojo-config to enable bidi support'); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart.js new file mode 100644 index 00000000..d5c2d1a9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart.js @@ -0,0 +1,254 @@ +//>>built +define("dojox/charting/widget/Chart",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/array","dojo/dom-attr","dojo/_base/declare","dojo/query","dijit/_WidgetBase","../Chart","dojo/has","dojo/has!dojo-bidi?../bidi/widget/Chart","dojox/lang/utils","dojox/lang/functional","dojox/lang/functional/lambda"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,du,df,_b){ +var _c,_d,_e,_f,_10,_11=function(o){ +return o; +},dc=_2.getObject("dojox.charting"); +_c=function(_12,_13,kw){ +var dp=eval("("+_13+".prototype.defaultParams)"); +var x,_14; +for(x in dp){ +if(x in kw){ +continue; +} +_14=_12.getAttribute(x); +kw[x]=du.coerceType(dp[x],_14==null||typeof _14=="undefined"?dp[x]:_14); +} +var op=eval("("+_13+".prototype.optionalParams)"); +for(x in op){ +if(x in kw){ +continue; +} +_14=_12.getAttribute(x); +if(_14!=null){ +kw[x]=du.coerceType(op[x],_14); +} +} +}; +_d=function(_15){ +var _16=_15.getAttribute("name"),_17=_15.getAttribute("type"); +if(!_16){ +return null; +} +var o={name:_16,kwArgs:{}},kw=o.kwArgs; +if(_17){ +if(dc.axis2d[_17]){ +_17=_1._scopeName+"x.charting.axis2d."+_17; +} +var _18=eval("("+_17+")"); +if(_18){ +kw.type=_18; +} +}else{ +_17=_1._scopeName+"x.charting.axis2d.Default"; +} +_c(_15,_17,kw); +if(kw.font||kw.fontColor){ +if(!kw.tick){ +kw.tick={}; +} +if(kw.font){ +kw.tick.font=kw.font; +} +if(kw.fontColor){ +kw.tick.fontColor=kw.fontColor; +} +} +return o; +}; +_e=function(_19){ +var _1a=_19.getAttribute("name"),_1b=_19.getAttribute("type"); +if(!_1a){ +return null; +} +var o={name:_1a,kwArgs:{}},kw=o.kwArgs; +if(_1b){ +if(dc.plot2d&&dc.plot2d[_1b]){ +_1b=_1._scopeName+"x.charting.plot2d."+_1b; +} +var _1c=eval("("+_1b+")"); +if(_1c){ +kw.type=_1c; +} +}else{ +_1b=_1._scopeName+"x.charting.plot2d.Default"; +} +_c(_19,_1b,kw); +var dp=eval("("+_1b+".prototype.baseParams)"); +var x,_1d; +for(x in dp){ +if(x in kw){ +continue; +} +_1d=_19.getAttribute(x); +kw[x]=du.coerceType(dp[x],_1d==null||typeof _1d=="undefined"?dp[x]:_1d); +} +return o; +}; +_f=function(_1e){ +var _1f=_1e.getAttribute("plot"),_20=_1e.getAttribute("type"); +if(!_1f){ +_1f="default"; +} +var o={plot:_1f,kwArgs:{}},kw=o.kwArgs; +if(_20){ +if(dc.action2d[_20]){ +_20=_1._scopeName+"x.charting.action2d."+_20; +} +var _21=eval("("+_20+")"); +if(!_21){ +return null; +} +o.action=_21; +}else{ +return null; +} +_c(_1e,_20,kw); +return o; +}; +_10=function(_22){ +var ga=_2.partial(_4.get,_22); +var _23=ga("name"); +if(!_23){ +return null; +} +var o={name:_23,kwArgs:{}},kw=o.kwArgs,t; +t=ga("plot"); +if(t!=null){ +kw.plot=t; +} +t=ga("marker"); +if(t!=null){ +kw.marker=t; +} +t=ga("stroke"); +if(t!=null){ +kw.stroke=eval("("+t+")"); +} +t=ga("outline"); +if(t!=null){ +kw.outline=eval("("+t+")"); +} +t=ga("shadow"); +if(t!=null){ +kw.shadow=eval("("+t+")"); +} +t=ga("fill"); +if(t!=null){ +kw.fill=eval("("+t+")"); +} +t=ga("font"); +if(t!=null){ +kw.font=t; +} +t=ga("fontColor"); +if(t!=null){ +kw.fontColor=eval("("+t+")"); +} +t=ga("legend"); +if(t!=null){ +kw.legend=t; +} +t=ga("data"); +if(t!=null){ +o.type="data"; +o.data=t?_3.map(String(t).split(","),Number):[]; +return o; +} +t=ga("array"); +if(t!=null){ +o.type="data"; +o.data=eval("("+t+")"); +return o; +} +t=ga("store"); +if(t!=null){ +o.type="store"; +o.data=eval("("+t+")"); +t=ga("field"); +o.field=t!=null?t:"value"; +t=ga("query"); +if(!!t){ +kw.query=t; +} +t=ga("queryOptions"); +if(!!t){ +kw.queryOptions=eval("("+t+")"); +} +t=ga("start"); +if(!!t){ +kw.start=Number(t); +} +t=ga("count"); +if(!!t){ +kw.count=Number(t); +} +t=ga("sort"); +if(!!t){ +kw.sort=eval("("+t+")"); +} +t=ga("valueFn"); +if(!!t){ +kw.valueFn=_b.lambda(t); +} +return o; +} +return null; +}; +var _24=_5(_9("dojo-bidi")?"dojox.charting.widget.NonBidiChart":"dojox.charting.widget.Chart",_7,{theme:null,margins:null,stroke:undefined,fill:undefined,buildRendering:function(){ +this.inherited(arguments); +var n=this.domNode; +var _25=_6("> .axis",n).map(_d).filter(_11),_26=_6("> .plot",n).map(_e).filter(_11),_27=_6("> .action",n).map(_f).filter(_11),_28=_6("> .series",n).map(_10).filter(_11); +n.innerHTML=""; +var c=this.chart=new _8(n,{margins:this.margins,stroke:this.stroke,fill:this.fill,textDir:this.textDir}); +if(this.theme){ +c.setTheme(this.theme); +} +_25.forEach(function(_29){ +c.addAxis(_29.name,_29.kwArgs); +}); +_26.forEach(function(_2a){ +c.addPlot(_2a.name,_2a.kwArgs); +}); +this.actions=_27.map(function(_2b){ +return new _2b.action(c,_2b.plot,_2b.kwArgs); +}); +var _2c=df.foldl(_28,function(_2d,_2e){ +if(_2e.type=="data"){ +c.addSeries(_2e.name,_2e.data,_2e.kwArgs); +_2d=true; +}else{ +c.addSeries(_2e.name,[0],_2e.kwArgs); +var kw={}; +du.updateWithPattern(kw,_2e.kwArgs,{"query":"","queryOptions":null,"start":0,"count":1},true); +if(_2e.kwArgs.sort){ +kw.sort=_2.clone(_2e.kwArgs.sort); +} +_2.mixin(kw,{onComplete:function(_2f){ +var _30; +if("valueFn" in _2e.kwArgs){ +var fn=_2e.kwArgs.valueFn; +_30=_3.map(_2f,function(x){ +return fn(_2e.data.getValue(x,_2e.field,0)); +}); +}else{ +_30=_3.map(_2f,function(x){ +return _2e.data.getValue(x,_2e.field,0); +}); +} +c.addSeries(_2e.name,_30,_2e.kwArgs).render(); +}}); +_2e.data.fetch(kw); +} +return _2d; +},false); +if(_2c){ +c.render(); +} +},destroy:function(){ +this.chart.destroy(); +this.inherited(arguments); +},resize:function(box){ +this.chart.resize.apply(this.chart,arguments); +}}); +return _9("dojo-bidi")?_5("dojox.charting.widget.Chart",[_24,_a]):_24; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart.js.uncompressed.js new file mode 100644 index 00000000..49b76880 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart.js.uncompressed.js @@ -0,0 +1,291 @@ +define("dojox/charting/widget/Chart", ["dojo/_base/kernel", "dojo/_base/lang", "dojo/_base/array","dojo/dom-attr","dojo/_base/declare", "dojo/query", + "dijit/_WidgetBase", "../Chart", "dojo/has", "dojo/has!dojo-bidi?../bidi/widget/Chart", + "dojox/lang/utils", "dojox/lang/functional","dojox/lang/functional/lambda"], + function(kernel, lang, arr, domAttr, declare, query, _WidgetBase, ChartBase, has, BidiChart, du, df, dfl){ + + var collectParams, collectAxisParams, collectPlotParams, + collectActionParams, collectDataParams, + notNull = function(o){ return o; }, + dc = lang.getObject("dojox.charting"); + + + collectParams = function(node, type, kw){ + var dp = eval("(" + type + ".prototype.defaultParams)"); + var x, attr; + for(x in dp){ + if(x in kw){ continue; } + attr = node.getAttribute(x); + kw[x] = du.coerceType(dp[x], attr == null || typeof attr == "undefined" ? dp[x] : attr); + } + var op = eval("(" + type + ".prototype.optionalParams)"); + for(x in op){ + if(x in kw){ continue; } + attr = node.getAttribute(x); + if(attr != null){ + kw[x] = du.coerceType(op[x], attr); + } + } + }; + + collectAxisParams = function(node){ + var name = node.getAttribute("name"), type = node.getAttribute("type"); + if(!name){ return null; } + var o = {name: name, kwArgs: {}}, kw = o.kwArgs; + if(type){ + if(dc.axis2d[type]){ + type = kernel._scopeName + "x.charting.axis2d." + type; + } + var axis = eval("(" + type + ")"); + if(axis){ kw.type = axis; } + }else{ + type = kernel._scopeName + "x.charting.axis2d.Default"; + } + collectParams(node, type, kw); + // compatibility conversions + if(kw.font || kw.fontColor){ + if(!kw.tick){ + kw.tick = {}; + } + if(kw.font){ + kw.tick.font = kw.font; + } + if(kw.fontColor){ + kw.tick.fontColor = kw.fontColor; + } + } + return o; + }; + + collectPlotParams = function(node){ + // var name = d.attr(node, "name"), type = d.attr(node, "type"); + var name = node.getAttribute("name"), type = node.getAttribute("type"); + if(!name){ return null; } + var o = {name: name, kwArgs: {}}, kw = o.kwArgs; + if(type){ + if(dc.plot2d && dc.plot2d[type]){ + type = kernel._scopeName + "x.charting.plot2d." + type; + } + var plot = eval("(" + type + ")"); + if(plot){ kw.type = plot; } + }else{ + type = kernel._scopeName + "x.charting.plot2d.Default"; + } + collectParams(node, type, kw); + // TODO + // we have factorized axis & label management in CartesianBase and thus is is not anymore + // accessible to the default collect mechanism. Longer term we must get rid of that + // and leverage dojo/parser + var dp = eval("(" + type + ".prototype.baseParams)"); + var x, attr; + for(x in dp){ + if(x in kw){ continue; } + attr = node.getAttribute(x); + kw[x] = du.coerceType(dp[x], attr == null || typeof attr == "undefined" ? dp[x] : attr); + } + return o; + }; + + collectActionParams = function(node){ + // var plot = d.attr(node, "plot"), type = d.attr(node, "type"); + var plot = node.getAttribute("plot"), type = node.getAttribute("type"); + if(!plot){ plot = "default"; } + var o = {plot: plot, kwArgs: {}}, kw = o.kwArgs; + if(type){ + if(dc.action2d[type]){ + type = kernel._scopeName + "x.charting.action2d." + type; + } + var action = eval("(" + type + ")"); + if(!action){ return null; } + o.action = action; + }else{ + return null; + } + collectParams(node, type, kw); + return o; + }; + + collectDataParams = function(node){ + var ga = lang.partial(domAttr.get, node); + var name = ga("name"); + if(!name){ return null; } + var o = { name: name, kwArgs: {} }, kw = o.kwArgs, t; + t = ga("plot"); + if(t != null){ kw.plot = t; } + t = ga("marker"); + if(t != null){ kw.marker = t; } + t = ga("stroke"); + if(t != null){ kw.stroke = eval("(" + t + ")"); } + t = ga("outline"); + if(t != null){ kw.outline = eval("(" + t + ")"); } + t = ga("shadow"); + if(t != null){ kw.shadow = eval("(" + t + ")"); } + t = ga("fill"); + if(t != null){ kw.fill = eval("(" + t + ")"); } + t = ga("font"); + if(t != null){ kw.font = t; } + t = ga("fontColor"); + if(t != null){ kw.fontColor = eval("(" + t + ")"); } + t = ga("legend"); + if(t != null){ kw.legend = t; } + t = ga("data"); + if(t != null){ + o.type = "data"; + o.data = t ? arr.map(String(t).split(','), Number) : []; + return o; + } + t = ga("array"); + if(t != null){ + o.type = "data"; + o.data = eval("(" + t + ")"); + return o; + } + t = ga("store"); + if(t != null){ + o.type = "store"; + o.data = eval("(" + t + ")"); + t = ga("field"); + o.field = t != null ? t : "value"; + t = ga("query"); + if(!!t){ kw.query = t; } + t = ga("queryOptions"); + if(!!t){ kw.queryOptions = eval("(" + t + ")"); } + t = ga("start"); + if(!!t){ kw.start = Number(t); } + t = ga("count"); + if(!!t){ kw.count = Number(t); } + t = ga("sort"); + if(!!t){ kw.sort = eval("("+t+")"); } + t = ga("valueFn"); + if(!!t){ kw.valueFn = dfl.lambda(t); } + return o; + } + return null; + }; + + var Chart = declare(has("dojo-bidi")? "dojox.charting.widget.NonBidiChart" : "dojox.charting.widget.Chart", _WidgetBase, { + // summary: + // A chart widget. This is leveraging dojox/charting/Chart as a Dijit widget. + + // parameters for the markup + + // theme: dojox/charting/SimpleTheme? + // An optional theme to use for styling the chart. + theme: null, + + // margins: Object? + // The margins around the chart. Default is { l:10, t:10, r:10, b:10 }. + margins: null, + + // chart area, define them as undefined to: + // allow the parser to take them into account + // but make sure they have no defined value to not override theme + + // stroke: dojox.gfx.Stroke? + // The outline of the chart (stroke in vector graphics terms). + stroke: undefined, + // fill: dojox.gfx.Fill? + // The color for the chart. + fill: undefined, + + // methods + + buildRendering: function(){ + this.inherited(arguments); + + var n = this.domNode; + + // collect chart parameters + var axes = query("> .axis", n).map(collectAxisParams).filter(notNull), + plots = query("> .plot", n).map(collectPlotParams).filter(notNull), + actions = query("> .action", n).map(collectActionParams).filter(notNull), + series = query("> .series", n).map(collectDataParams).filter(notNull); + + // build the chart + n.innerHTML = ""; + var c = this.chart = new ChartBase(n, { + margins: this.margins, + stroke: this.stroke, + fill: this.fill, + textDir: this.textDir + }); + + // add collected parameters + if(this.theme){ + c.setTheme(this.theme); + } + axes.forEach(function(axis){ + c.addAxis(axis.name, axis.kwArgs); + }); + plots.forEach(function(plot){ + c.addPlot(plot.name, plot.kwArgs); + }); + + this.actions = actions.map(function(action){ + return new action.action(c, action.plot, action.kwArgs); + }); + + var render = df.foldl(series, function(render, series){ + if(series.type == "data"){ + c.addSeries(series.name, series.data, series.kwArgs); + render = true; + }else{ + c.addSeries(series.name, [0], series.kwArgs); + var kw = {}; + du.updateWithPattern( + kw, + series.kwArgs, + { + "query": "", + "queryOptions": null, + "start": 0, + "count": 1 //, + // "sort": [] + }, + true + ); + if(series.kwArgs.sort){ + // sort is a complex object type and doesn't survive coercian + kw.sort = lang.clone(series.kwArgs.sort); + } + lang.mixin(kw, { + onComplete: function(data){ + var values; + if("valueFn" in series.kwArgs){ + var fn = series.kwArgs.valueFn; + values = arr.map(data, function(x){ + return fn(series.data.getValue(x, series.field, 0)); + }); + }else{ + values = arr.map(data, function(x){ + return series.data.getValue(x, series.field, 0); + }); + } + c.addSeries(series.name, values, series.kwArgs).render(); + } + }); + series.data.fetch(kw); + } + return render; + }, false); + if(render){ c.render(); } + }, + destroy: function(){ + // summary: + // properly destroy the widget + this.chart.destroy(); + this.inherited(arguments); + }, + resize: function(box){ + // summary: + // Resize the widget. + // description: + // Resize the domNode and the widget surface to the dimensions of a box of the following form: + // `{ l: 50, t: 200, w: 300: h: 150 }` + // If no box is provided, resize the surface to the marginBox of the domNode. + // box: + // If passed, denotes the new size of the widget. + this.chart.resize.apply(this.chart, arguments); + } + }); + return has("dojo-bidi")? declare("dojox.charting.widget.Chart", [Chart, BidiChart]) : Chart; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart2D.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart2D.js new file mode 100644 index 00000000..dff7b485 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/charting/widget/Chart2D.js @@ -0,0 +1,15 @@ +/* + Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + +/* + This is an optimized version of Dojo, built for deployment and not for + development. To get sources and documentation, please visit: + + http://dojotoolkit.org +*/ + +//>>built +require({cache:{"dojox/charting/plot2d/_PlotEvents":function(){define(["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/_base/connect"],function(_1,_2,_3,_4){return _3("dojox.charting.plot2d._PlotEvents",null,{constructor:function(){this._shapeEvents=[];this._eventSeries={};},destroy:function(){this.resetEvents();this.inherited(arguments);},plotEvent:function(o){},raiseEvent:function(o){this.plotEvent(o);var t=_1.delegate(o);t.originalEvent=o.type;t.originalPlot=o.plot;t.type="onindirect";_2.forEach(this.chart.stack,function(_5){if(_5!==this&&_5.plotEvent){t.plot=_5;_5.plotEvent(t);}},this);},connect:function(_6,_7){this.dirty=true;return _4.connect(this,"plotEvent",_6,_7);},events:function(){return !!this.plotEvent.after;},resetEvents:function(){if(this._shapeEvents.length){_2.forEach(this._shapeEvents,function(_8){_8.shape.disconnect(_8.handle);});this._shapeEvents=[];}this.raiseEvent({type:"onplotreset",plot:this});},_connectSingleEvent:function(o,_9){this._shapeEvents.push({shape:o.eventMask,handle:o.eventMask.connect(_9,this,function(e){o.type=_9;o.event=e;this.raiseEvent(o);o.event=null;})});},_connectEvents:function(o){if(o){o.chart=this.chart;o.plot=this;o.hAxis=this.hAxis||null;o.vAxis=this.vAxis||null;o.eventMask=o.eventMask||o.shape;this._connectSingleEvent(o,"onmouseover");this._connectSingleEvent(o,"onmouseout");this._connectSingleEvent(o,"onclick");}},_reconnectEvents:function(_a){var a=this._eventSeries[_a];if(a){_2.forEach(a,this._connectEvents,this);}},fireEvent:function(_b,_c,_d,_e){var s=this._eventSeries[_b];if(s&&s.length&&_d=tsb.upper-tsb.lower){delete o.from;delete o.to;delete this.scale;delete this.offset;}else{if(o.fromtsb.upper){o.from+=tsb.upper-o.to;o.to=tsb.upper;}}this.offset=o.from-tsb.lower;}this.scaler=lin.buildScaler(min,max,_20,o);tsb=this.scaler.bounds;if(this.scale==1&&this.offset==0){delete this.scale;delete this.offset;}}return this;},getScaler:function(){return this.scaler;},getTicks:function(){return this.ticks;}});});},"dojox/lang/utils":function(){define(["..","dojo/_base/lang"],function(_21,_22){var du=_22.getObject("lang.utils",true,_21);var _23={},_24=Object.prototype.toString;var _25=function(o){if(o){switch(_24.call(o)){case "[object Array]":return o.slice(0);case "[object Object]":return _22.delegate(o);}}return o;};_22.mixin(du,{coerceType:function(_26,_27){switch(typeof _26){case "number":return Number(eval("("+_27+")"));case "string":return String(_27);case "boolean":return Boolean(eval("("+_27+")"));}return eval("("+_27+")");},updateWithObject:function(_28,_29,_2a){if(!_29){return _28;}for(var x in _28){if(x in _29&&!(x in _23)){var t=_28[x];if(t&&typeof t=="object"){du.updateWithObject(t,_29[x],_2a);}else{_28[x]=_2a?du.coerceType(t,_29[x]):_25(_29[x]);}}}return _28;},updateWithPattern:function(_2b,_2c,_2d,_2e){if(!_2c||!_2d){return _2b;}for(var x in _2d){if(x in _2c&&!(x in _23)){_2b[x]=_2e?du.coerceType(_2d[x],_2c[x]):_25(_2c[x]);}}return _2b;},merge:function(_2f,_30){if(_30){var _31=_24.call(_2f),_32=_24.call(_30),t,i,l,m;switch(_32){case "[object Array]":if(_32==_31){t=new Array(Math.max(_2f.length,_30.length));for(i=0,l=t.length;i0?this._getLabel(x*100)+"%":"";},this);}}}else{_40=df.map(run,"x ? Math.max(x.y, 0) : 0");if(df.every(_40,"<= 0")){s.createCircle(_48).setStroke(t.series.stroke);this.dyn=arr.map(_40,function(){return {};});return this;}else{_41=df.map(_40,"/this",df.foldl(_40,"+",0));if(this.opt.labels){_42=arr.map(_41,function(x,i){if(x<0){return "";}var v=run[i];return "text" in v?v.text:this._getLabel(x*100)+"%";},this);}}}var _4b=df.map(run,function(v,i){var _4c=[this.opt,this.run];if(v!==null&&typeof v!="number"){_4c.push(v);}if(this.opt.styleFunc){_4c.push(this.opt.styleFunc(v));}return t.next("slice",_4c,true);},this);if(this.opt.labels){_3d=_3c?g.normalizedLength(g.splitFontString(_3c).size):0;_43=df.foldl1(df.map(_42,function(_4d,i){var _4e=_4b[i].series.font;return g._base._getTextBox(_4d,{font:_4e}).w;},this),"Math.max(a, b)")/2;if(this.opt.labelOffset<0){r=Math.min(rx-2*_43,ry-_3d)+this.opt.labelOffset;}_44=r-this.opt.labelOffset;}var _4f=new Array(_41.length);arr.some(_41,function(_50,i){if(_50<0){return false;}var v=run[i],_51=_4b[i],_52,o;if(_50==0){this.dyn.push({fill:_51.series.fill,stroke:_51.series.stroke});return false;}if(_50>=1){_52=this._plotFill(_51.series.fill,dim,_3b);_52=this._shapeFill(_52,{x:_48.cx-_48.r,y:_48.cy-_48.r,width:2*_48.r,height:2*_48.r});_52=this._pseudoRadialFill(_52,{x:_48.cx,y:_48.cy},_48.r);var _53=s.createCircle(_48).setFill(_52).setStroke(_51.series.stroke);this.dyn.push({fill:_52,stroke:_51.series.stroke});if(_45){o={element:"slice",index:i,run:this.run,shape:_53,x:i,y:typeof v=="number"?v:v.y,cx:_48.cx,cy:_48.cy,cr:r};this._connectEvents(o);_4f[i]=o;}return false;}var end=_3f+_50*2*Math.PI;if(i+1==_41.length){end=_3e+2*Math.PI;}var _54=end-_3f,x1=_48.cx+r*Math.cos(_3f),y1=_48.cy+r*Math.sin(_3f),x2=_48.cx+r*Math.cos(end),y2=_48.cy+r*Math.sin(end);var _55=m._degToRad(this.opt.fanSize);if(_51.series.fill&&_51.series.fill.type==="radial"&&this.opt.radGrad==="fan"&&_54>_55){var _56=s.createGroup(),_57=Math.ceil(_54/_55),_58=_54/_57;_52=this._shapeFill(_51.series.fill,{x:_48.cx-_48.r,y:_48.cy-_48.r,width:2*_48.r,height:2*_48.r});for(var j=0;j<_57;++j){var _59=j==0?x1:_48.cx+r*Math.cos(_3f+(j-_37)*_58),_5a=j==0?y1:_48.cy+r*Math.sin(_3f+(j-_37)*_58),_5b=j==_57-1?x2:_48.cx+r*Math.cos(_3f+(j+1+_37)*_58),_5c=j==_57-1?y2:_48.cy+r*Math.sin(_3f+(j+1+_37)*_58);_56.createPath().moveTo(_48.cx,_48.cy).lineTo(_59,_5a).arcTo(r,r,0,_58>Math.PI,true,_5b,_5c).lineTo(_48.cx,_48.cy).closePath().setFill(this._pseudoRadialFill(_52,{x:_48.cx,y:_48.cy},r,_3f+(j+0.5)*_58,_3f+(j+0.5)*_58));}_56.createPath().moveTo(_48.cx,_48.cy).lineTo(x1,y1).arcTo(r,r,0,_54>Math.PI,true,x2,y2).lineTo(_48.cx,_48.cy).closePath().setStroke(_51.series.stroke);_53=_56;}else{_53=s.createPath().moveTo(_48.cx,_48.cy).lineTo(x1,y1).arcTo(r,r,0,_54>Math.PI,true,x2,y2).lineTo(_48.cx,_48.cy).closePath().setStroke(_51.series.stroke);_52=_51.series.fill;if(_52&&_52.type==="radial"){_52=this._shapeFill(_52,{x:_48.cx-_48.r,y:_48.cy-_48.r,width:2*_48.r,height:2*_48.r});if(this.opt.radGrad==="linear"){_52=this._pseudoRadialFill(_52,{x:_48.cx,y:_48.cy},r,_3f,end);}}else{if(_52&&_52.type==="linear"){_52=this._plotFill(_52,dim,_3b);_52=this._shapeFill(_52,_53.getBoundingBox());}}_53.setFill(_52);}this.dyn.push({fill:_52,stroke:_51.series.stroke});if(_45){o={element:"slice",index:i,run:this.run,shape:_53,x:i,y:typeof v=="number"?v:v.y,cx:_48.cx,cy:_48.cy,cr:r};this._connectEvents(o);_4f[i]=o;}_3f=end;return false;},this);if(this.opt.labels){var _5d=has("dojo-bidi")&&this.chart.isRightToLeft();if(this.opt.labelStyle=="default"){_3f=_3e;arr.some(_41,function(_5e,i){if(_5e<=0){return false;}var _5f=_4b[i];if(_5e>=1){this.renderLabel(s,_48.cx,_48.cy+_3d/2,_42[i],_5f,this.opt.labelOffset>0);return true;}var end=_3f+_5e*2*Math.PI;if(i+1==_41.length){end=_3e+2*Math.PI;}if(this.opt.omitLabels&&end-_3f<0.001){return false;}var _60=(_3f+end)/2,x=_48.cx+_44*Math.cos(_60),y=_48.cy+_44*Math.sin(_60)+_3d/2;this.renderLabel(s,_5d?dim.width-x:x,y,_42[i],_5f,this.opt.labelOffset>0);_3f=end;return false;},this);}else{if(this.opt.labelStyle=="columns"){_3f=_3e;var _61=this.opt.omitLabels;var _62=[];arr.forEach(_41,function(_63,i){var end=_3f+_63*2*Math.PI;if(i+1==_41.length){end=_3e+2*Math.PI;}var _64=(_3f+end)/2;_62.push({angle:_64,left:Math.cos(_64)<0,theme:_4b[i],index:i,omit:_61?end-_3f<0.001:false});_3f=end;});var _65=g._base._getTextBox("a",{font:_3c}).h;this._getProperLabelRadius(_62,_65,_48.r*1.1);arr.forEach(_62,function(_66,i){if(!_66.omit){var _67=_48.cx-_48.r*2,_68=_48.cx+_48.r*2,_69=g._base._getTextBox(_42[i],{font:_66.theme.series.font}).w,x=_48.cx+_66.labelR*Math.cos(_66.angle),y=_48.cy+_66.labelR*Math.sin(_66.angle),_6a=(_66.left)?(_67+_69):(_68-_69),_6b=(_66.left)?_67:_6a;var _6c=s.createPath().moveTo(_48.cx+_48.r*Math.cos(_66.angle),_48.cy+_48.r*Math.sin(_66.angle));if(Math.abs(_66.labelR*Math.cos(_66.angle))<_48.r*2-_69){_6c.lineTo(x,y);}_6c.lineTo(_6a,y).setStroke(_66.theme.series.labelWiring);this.renderLabel(s,_5d?dim.width-_69-_6b:_6b,y,_42[i],_66.theme,false,"left");}},this);}}}var esi=0;this._eventSeries[this.run.name]=df.map(run,function(v){return v<=0?null:_4f[esi++];});if(has("dojo-bidi")){this._checkOrientation(this.group,dim,_3b);}return this;},_getProperLabelRadius:function(_6d,_6e,_6f){var _70,_71,_72=1,_73=1;if(_6d.length==1){_6d[0].labelR=_6f;return;}for(var i=0;i<_6d.length;i++){var _74=Math.abs(Math.sin(_6d[i].angle));if(_6d[i].left){if(_72>=_74){_72=_74;_70=_6d[i];}}else{if(_73>=_74){_73=_74;_71=_6d[i];}}}_70.labelR=_71.labelR=_6f;this._calculateLabelR(_70,_6d,_6e);this._calculateLabelR(_71,_6d,_6e);},_calculateLabelR:function(_75,_76,_77){var i=_75.index,_78=_76.length,_79=_75.labelR,_7a;while(!(_76[i%_78].left^_76[(i+1)%_78].left)){if(!_76[(i+1)%_78].omit){_7a=(Math.sin(_76[i%_78].angle)*_79+((_76[i%_78].left)?(-_77):_77))/Math.sin(_76[(i+1)%_78].angle);_79=(_7a<_75.labelR)?_75.labelR:_7a;_76[(i+1)%_78].labelR=_79;}i++;}i=_75.index;var j=(i==0)?_78-1:i-1;while(!(_76[i].left^_76[j].left)){if(!_76[j].omit){_7a=(Math.sin(_76[i].angle)*_79+((_76[i].left)?_77:(-_77)))/Math.sin(_76[j].angle);_79=(_7a<_75.labelR)?_75.labelR:_7a;_76[j].labelR=_79;}i--;j--;i=(i<0)?i+_76.length:i;j=(j<0)?j+_76.length:j;}}});});},"dijit/hccss":function(){define(["dojo/dom-class","dojo/hccss","dojo/domReady","dojo/_base/window"],function(_7b,has,_7c,win){_7c(function(){if(has("highcontrast")){_7b.add(win.body(),"dijit_a11y");}});return has;});},"dojox/charting/action2d/Shake":function(){define(["dojo/_base/connect","dojo/_base/declare","./PlotAction","dojo/fx","dojo/fx/easing","dojox/gfx/matrix","dojox/gfx/fx"],function(hub,_7d,_7e,df,dfe,m,gf){var _7f=3;return _7d("dojox.charting.action2d.Shake",_7e,{defaultParams:{duration:400,easing:dfe.backOut,shiftX:_7f,shiftY:_7f},optionalParams:{},constructor:function(_80,_81,_82){if(!_82){_82={};}this.shiftX=typeof _82.shiftX=="number"?_82.shiftX:_7f;this.shiftY=typeof _82.shiftY=="number"?_82.shiftY:_7f;this.connect();},process:function(o){if(!o.shape||!(o.type in this.overOutEvents)){return;}var _83=o.run.name,_84=o.index,_85=[],_86;if(_83 in this.anim){_86=this.anim[_83][_84];}else{this.anim[_83]={};}if(_86){_86.action.stop(true);}else{this.anim[_83][_84]=_86={};}var _87={shape:o.shape,duration:this.duration,easing:this.easing,transform:[{name:"translate",start:[this.shiftX,this.shiftY],end:[0,0]},m.identity]};if(o.shape){_85.push(gf.animateTransform(_87));}if(o.oultine){_87.shape=o.outline;_85.push(gf.animateTransform(_87));}if(o.shadow){_87.shape=o.shadow;_85.push(gf.animateTransform(_87));}if(!_85.length){delete this.anim[_83][_84];return;}_86.action=df.combine(_85);if(o.type=="onmouseout"){hub.connect(_86.action,"onEnd",this,function(){if(this.anim[_83]){delete this.anim[_83][_84];}});}_86.action.play();}});});},"dojox/lang/functional/lambda":function(){define(["../..","dojo/_base/lang","dojo/_base/array"],function(_88,_89,arr){var df=_89.getObject("lang.functional",true,_88);var _8a={};var _8b="ab".split(/a*/).length>1?String.prototype.split:function(sep){var r=this.split.call(this,sep),m=sep.exec(this);if(m&&m.index==0){r.unshift("");}return r;};var _8c=function(s){var _8d=[],_8e=_8b.call(s,/\s*->\s*/m);if(_8e.length>1){while(_8e.length){s=_8e.pop();_8d=_8e.pop().split(/\s*,\s*|\s+/m);if(_8e.length){_8e.push("(function("+_8d.join(", ")+"){ return ("+s+"); })");}}}else{if(s.match(/\b_\b/)){_8d=["_"];}else{var l=s.match(/^\s*(?:[+*\/%&|\^\.=<>]|!=)/m),r=s.match(/[+\-*\/%&|\^\.=<>!]\s*$/m);if(l||r){if(l){_8d.push("$1");s="$1"+s;}if(r){_8d.push("$2");s=s+"$2";}}else{var _8f=s.replace(/(?:\b[A-Z]|\.[a-zA-Z_$])[a-zA-Z_$\d]*|[a-zA-Z_$][a-zA-Z_$\d]*:|this|true|false|null|undefined|typeof|instanceof|in|delete|new|void|arguments|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|escape|eval|isFinite|isNaN|parseFloat|parseInt|unescape|dojo|dijit|dojox|window|document|'(?:[^'\\]|\\.)*'|"(?:[^"\\]|\\.)*"/g,"").match(/([a-z_$][a-z_$\d]*)/gi)||[],t={};arr.forEach(_8f,function(v){if(!t.hasOwnProperty(v)){_8d.push(v);t[v]=1;}});}}}return {args:_8d,body:s};};var _90=function(a){return a.length?function(){var i=a.length-1,x=df.lambda(a[i]).apply(this,arguments);for(--i;i>=0;--i){x=df.lambda(a[i]).call(this,x);}return x;}:function(x){return x;};};_89.mixin(df,{rawLambda:function(s){return _8c(s);},buildLambda:function(s){var l=_8c(s);return "function("+l.args.join(",")+"){return ("+l.body+");}";},lambda:function(s){if(typeof s=="function"){return s;}if(s instanceof Array){return _90(s);}if(_8a.hasOwnProperty(s)){return _8a[s];}var l=_8c(s);return _8a[s]=new Function(l.args,"return ("+l.body+");");},clearLambdaCache:function(){_8a={};}});return df;});},"dojox/charting/plot2d/Candlesticks":function(){define(["dojo/_base/lang","dojo/_base/declare","dojo/_base/array","dojo/has","./CartesianBase","./_PlotEvents","./common","dojox/lang/functional","dojox/lang/functional/reversed","dojox/lang/utils","dojox/gfx/fx"],function(_91,_92,arr,has,_93,_94,dc,df,dfr,du,fx){var _95=dfr.lambda("item.purgeGroup()");return _92("dojox.charting.plot2d.Candlesticks",[_93,_94],{defaultParams:{gap:2,animate:null},optionalParams:{minBarSize:1,maxBarSize:1,stroke:{},outline:{},shadow:{},fill:{},font:"",fontColor:""},constructor:function(_96,_97){this.opt=_91.clone(this.defaultParams);du.updateWithObject(this.opt,_97);du.updateWithPattern(this.opt,_97,this.optionalParams);this.animate=this.opt.animate;},collectStats:function(_98){var _99=_91.delegate(dc.defaultStats);for(var i=0;i<_98.length;i++){var run=_98[i];if(!run.data.length){continue;}var _9a=_99.vmin,_9b=_99.vmax;if(!("ymin" in run)||!("ymax" in run)){arr.forEach(run.data,function(val,idx){if(val!==null){var x=val.x||idx+1;_99.hmin=Math.min(_99.hmin,x);_99.hmax=Math.max(_99.hmax,x);_99.vmin=Math.min(_99.vmin,val.open,val.close,val.high,val.low);_99.vmax=Math.max(_99.vmax,val.open,val.close,val.high,val.low);}});}if("ymin" in run){_99.vmin=Math.min(_9a,run.ymin);}if("ymax" in run){_99.vmax=Math.max(_9b,run.ymax);}}return _99;},getSeriesStats:function(){var _9c=this.collectStats(this.series);_9c.hmin-=0.5;_9c.hmax+=0.5;return _9c;},render:function(dim,_9d){if(this.zoom&&!this.isDataDirty()){return this.performZoom(dim,_9d);}this.resetEvents();this.dirty=this.isDirty();var s;if(this.dirty){arr.forEach(this.series,_95);this._eventSeries={};this.cleanGroup();s=this.getGroup();df.forEachRev(this.series,function(_9e){_9e.cleanGroup(s);});}var t=this.chart.theme,f,gap,_9f,ht=this._hScaler.scaler.getTransformerFromModel(this._hScaler),vt=this._vScaler.scaler.getTransformerFromModel(this._vScaler),_a0=this.events();f=dc.calculateBarSize(this._hScaler.bounds.scale,this.opt);gap=f.gap;_9f=f.size;for(var i=this.series.length-1;i>=0;--i){var run=this.series[i];if(!this.dirty&&!run.dirty){t.skip();this._reconnectEvents(run.name);continue;}run.cleanGroup();var _a1=t.next("candlestick",[this.opt,run]),_a2=new Array(run.data.length);if(run.hidden){run.dyn.fill=_a1.series.fill;run.dyn.stroke=_a1.series.stroke;continue;}s=run.group;for(var j=0;j_a6){var tmp=_a6;_a6=low;low=tmp;}if(_9f>=1){var _a7=_a4>_a5;var _a8={x1:_9f/2,x2:_9f/2,y1:y-_a6,y2:y-low},_a9={x:0,y:y-Math.max(_a4,_a5),width:_9f,height:Math.max(_a7?_a4-_a5:_a5-_a4,1)};var _aa=s.createGroup();_aa.setTransform({dx:x,dy:0});var _ab=_aa.createGroup();_ab.createLine(_a8).setStroke(_a3.series.stroke);_ab.createRect(_a9).setStroke(_a3.series.stroke).setFill(_a7?_a3.series.fill:"white");if("mid" in v){_ab.createLine({x1:(_a3.series.stroke.width||1),x2:_9f-(_a3.series.stroke.width||1),y1:y-mid,y2:y-mid}).setStroke(_a7?"white":_a3.series.stroke);}run.dyn.fill=_a3.series.fill;run.dyn.stroke=_a3.series.stroke;if(_a0){var o={element:"candlestick",index:j,run:run,shape:_ab,x:x,y:y-Math.max(_a4,_a5),cx:_9f/2,cy:(y-Math.max(_a4,_a5))+(Math.max(_a7?_a4-_a5:_a5-_a4,1)/2),width:_9f,height:Math.max(_a7?_a4-_a5:_a5-_a4,1),data:v};this._connectEvents(o);_a2[j]=o;}}if(this.animate){this._animateCandlesticks(_aa,y-low,_a6-low);}}}this._eventSeries[run.name]=_a2;run.dirty=false;}this.dirty=false;if(has("dojo-bidi")){this._checkOrientation(this.group,dim,_9d);}return this;},tooltipFunc:function(o){return ""+""+""+""+""+(o.data.mid!==undefined?"":"")+"
    Open:"+o.data.open+"
    High:"+o.data.high+"
    Low:"+o.data.low+"
    Close:"+o.data.close+"
    Mid:"+o.data.mid+"
    ";},_animateCandlesticks:function(_ac,_ad,_ae){fx.animateTransform(_91.delegate({shape:_ac,duration:1200,transform:[{name:"translate",start:[0,_ad-(_ad/_ae)],end:[0,0]},{name:"scale",start:[1,1/_ae],end:[1,1]},{name:"original"}]},this.animate)).play();}});});},"dojox/lang/functional/reversed":function(){define(["dojo/_base/lang","dojo/_base/kernel","./lambda"],function(_af,_b0,df){_af.mixin(df,{filterRev:function(a,f,o){if(typeof a=="string"){a=a.split("");}o=o||_b0.global;f=df.lambda(f);var t=[],v,i=a.length-1;for(;i>=0;--i){v=a[i];if(f.call(o,v,i,a)){t.push(v);}}return t;},forEachRev:function(a,f,o){if(typeof a=="string"){a=a.split("");}o=o||_b0.global;f=df.lambda(f);for(var i=a.length-1;i>=0;f.call(o,a[i],i,a),--i){}},mapRev:function(a,f,o){if(typeof a=="string"){a=a.split("");}o=o||_b0.global;f=df.lambda(f);var n=a.length,t=new Array(n),i=n-1,j=0;for(;i>=0;t[j++]=f.call(o,a[i],i,a),--i){}return t;},everyRev:function(a,f,o){if(typeof a=="string"){a=a.split("");}o=o||_b0.global;f=df.lambda(f);for(var i=a.length-1;i>=0;--i){if(!f.call(o,a[i],i,a)){return false;}}return true;},someRev:function(a,f,o){if(typeof a=="string"){a=a.split("");}o=o||_b0.global;f=df.lambda(f);for(var i=a.length-1;i>=0;--i){if(f.call(o,a[i],i,a)){return true;}}return false;}});return df;});},"dojox/charting/scaler/primitive":function(){define(["dojo/_base/lang"],function(_b1){var _b2=_b1.getObject("dojox.charting.scaler.primitive",true);return _b1.mixin(_b2,{buildScaler:function(min,max,_b3,_b4){if(min==max){min-=0.5;max+=0.5;}return {bounds:{lower:min,upper:max,from:min,to:max,scale:_b3/(max-min),span:_b3},scaler:_b2};},buildTicks:function(_b5,_b6){return {major:[],minor:[],micro:[]};},getTransformerFromModel:function(_b7){var _b8=_b7.bounds.from,_b9=_b7.bounds.scale;return function(x){return (x-_b8)*_b9;};},getTransformerFromPlot:function(_ba){var _bb=_ba.bounds.from,_bc=_ba.bounds.scale;return function(x){return x/_bc+_bb;};}});});},"dojox/charting/widget/Sparkline":function(){define(["dojo/_base/array","dojo/_base/declare","dojo/query","./Chart","../themes/GreySkies","../plot2d/Lines","dojo/dom-prop"],function(_bd,_be,_bf,_c0,_c1,_c2,_c3){_be("dojox.charting.widget.Sparkline",_c0,{theme:_c1,margins:{l:0,r:0,t:0,b:0},type:"Lines",valueFn:"Number(x)",store:"",field:"",query:"",queryOptions:"",start:"0",count:"Infinity",sort:"",data:"",name:"default",buildRendering:function(){var n=this.srcNodeRef;if(!n.childNodes.length||!_bf("> .axis, > .plot, > .action, > .series",n).length){var _c4=document.createElement("div");_c3.set(_c4,{"class":"plot","name":"default","type":this.type});n.appendChild(_c4);var _c5=document.createElement("div");_c3.set(_c5,{"class":"series",plot:"default",name:this.name,start:this.start,count:this.count,valueFn:this.valueFn});_bd.forEach(["store","field","query","queryOptions","sort","data"],function(i){if(this[i].length){_c3.set(_c5,i,this[i]);}},this);n.appendChild(_c5);}this.inherited(arguments);}});});},"dojox/gfx/matrix":function(){define(["./_base","dojo/_base/lang"],function(g,_c6){var m=g.matrix={};var _c7={};m._degToRad=function(_c8){return _c7[_c8]||(_c7[_c8]=(Math.PI*_c8/180));};m._radToDeg=function(_c9){return _c9/Math.PI*180;};m.Matrix2D=function(arg){if(arg){if(typeof arg=="number"){this.xx=this.yy=arg;}else{if(arg instanceof Array){if(arg.length>0){var _ca=m.normalize(arg[0]);for(var i=1;i1){return new m.Matrix2D({dx:a,dy:b});}return new m.Matrix2D({dx:a.x,dy:a.y});},scale:function(a,b){if(arguments.length>1){return new m.Matrix2D({xx:a,yy:b});}if(typeof a=="number"){return new m.Matrix2D({xx:a,yy:a});}return new m.Matrix2D({xx:a.x,yy:a.y});},rotate:function(_cb){var c=Math.cos(_cb);var s=Math.sin(_cb);return new m.Matrix2D({xx:c,xy:-s,yx:s,yy:c});},rotateg:function(_cc){return m.rotate(m._degToRad(_cc));},skewX:function(_cd){return new m.Matrix2D({xy:Math.tan(_cd)});},skewXg:function(_ce){return m.skewX(m._degToRad(_ce));},skewY:function(_cf){return new m.Matrix2D({yx:Math.tan(_cf)});},skewYg:function(_d0){return m.skewY(m._degToRad(_d0));},reflect:function(a,b){if(arguments.length==1){b=a.y;a=a.x;}var a2=a*a,b2=b*b,n2=a2+b2,xy=2*a*b/n2;return new m.Matrix2D({xx:2*a2/n2-1,xy:xy,yx:xy,yy:2*b2/n2-1});},project:function(a,b){if(arguments.length==1){b=a.y;a=a.x;}var a2=a*a,b2=b*b,n2=a2+b2,xy=a*b/n2;return new m.Matrix2D({xx:a2/n2,xy:xy,yx:xy,yy:b2/n2});},normalize:function(_d1){return (_d1 instanceof m.Matrix2D)?_d1:new m.Matrix2D(_d1);},isIdentity:function(_d2){return _d2.xx==1&&_d2.xy==0&&_d2.yx==0&&_d2.yy==1&&_d2.dx==0&&_d2.dy==0;},clone:function(_d3){var obj=new m.Matrix2D();for(var i in _d3){if(typeof (_d3[i])=="number"&&typeof (obj[i])=="number"&&obj[i]!=_d3[i]){obj[i]=_d3[i];}}return obj;},invert:function(_d4){var M=m.normalize(_d4),D=M.xx*M.yy-M.xy*M.yx;M=new m.Matrix2D({xx:M.yy/D,xy:-M.xy/D,yx:-M.yx/D,yy:M.xx/D,dx:(M.xy*M.dy-M.yy*M.dx)/D,dy:(M.yx*M.dx-M.xx*M.dy)/D});return M;},_multiplyPoint:function(_d5,x,y){return {x:_d5.xx*x+_d5.xy*y+_d5.dx,y:_d5.yx*x+_d5.yy*y+_d5.dy};},multiplyPoint:function(_d6,a,b){var M=m.normalize(_d6);if(typeof a=="number"&&typeof b=="number"){return m._multiplyPoint(M,a,b);}return m._multiplyPoint(M,a.x,a.y);},multiplyRectangle:function(_d7,_d8){var M=m.normalize(_d7);_d8=_d8||{x:0,y:0,width:0,height:0};if(m.isIdentity(M)){return {x:_d8.x,y:_d8.y,width:_d8.width,height:_d8.height};}var p0=m.multiplyPoint(M,_d8.x,_d8.y),p1=m.multiplyPoint(M,_d8.x,_d8.y+_d8.height),p2=m.multiplyPoint(M,_d8.x+_d8.width,_d8.y),p3=m.multiplyPoint(M,_d8.x+_d8.width,_d8.y+_d8.height),_d9=Math.min(p0.x,p1.x,p2.x,p3.x),_da=Math.min(p0.y,p1.y,p2.y,p3.y),_db=Math.max(p0.x,p1.x,p2.x,p3.x),_dc=Math.max(p0.y,p1.y,p2.y,p3.y);return {x:_d9,y:_da,width:_db-_d9,height:_dc-_da};},multiply:function(_dd){var M=m.normalize(_dd);for(var i=1;i2){return m._sandwich(m.rotate(_df),a,b);}return m._sandwich(m.rotate(_df),a.x,a.y);},rotategAt:function(_e0,a,b){if(arguments.length>2){return m._sandwich(m.rotateg(_e0),a,b);}return m._sandwich(m.rotateg(_e0),a.x,a.y);},skewXAt:function(_e1,a,b){if(arguments.length>2){return m._sandwich(m.skewX(_e1),a,b);}return m._sandwich(m.skewX(_e1),a.x,a.y);},skewXgAt:function(_e2,a,b){if(arguments.length>2){return m._sandwich(m.skewXg(_e2),a,b);}return m._sandwich(m.skewXg(_e2),a.x,a.y);},skewYAt:function(_e3,a,b){if(arguments.length>2){return m._sandwich(m.skewY(_e3),a,b);}return m._sandwich(m.skewY(_e3),a.x,a.y);},skewYgAt:function(_e4,a,b){if(arguments.length>2){return m._sandwich(m.skewYg(_e4),a,b);}return m._sandwich(m.skewYg(_e4),a.x,a.y);}});g.Matrix2D=m.Matrix2D;return m;});},"dojox/charting/plot2d/Scatter":function(){define(["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/has","./CartesianBase","./_PlotEvents","./common","dojox/lang/functional","dojox/lang/functional/reversed","dojox/lang/utils","dojox/gfx/fx","dojox/gfx/gradutils"],function(_e5,arr,_e6,has,_e7,_e8,dc,df,dfr,du,fx,_e9){var _ea=dfr.lambda("item.purgeGroup()");return _e6("dojox.charting.plot2d.Scatter",[_e7,_e8],{defaultParams:{shadows:null,animate:null},optionalParams:{markerStroke:{},markerOutline:{},markerShadow:{},markerFill:{},markerFont:"",markerFontColor:"",styleFunc:null},constructor:function(_eb,_ec){this.opt=_e5.clone(_e5.mixin(this.opt,this.defaultParams));du.updateWithObject(this.opt,_ec);du.updateWithPattern(this.opt,_ec,this.optionalParams);this.animate=this.opt.animate;},render:function(dim,_ed){if(this.zoom&&!this.isDataDirty()){return this.performZoom(dim,_ed);}this.resetEvents();this.dirty=this.isDirty();var s;if(this.dirty){arr.forEach(this.series,_ea);this._eventSeries={};this.cleanGroup();s=this.getGroup();df.forEachRev(this.series,function(_ee){_ee.cleanGroup(s);});}var t=this.chart.theme,_ef=this.events();for(var i=this.series.length-1;i>=0;--i){var run=this.series[i];if(!this.dirty&&!run.dirty){t.skip();this._reconnectEvents(run.name);continue;}run.cleanGroup();if(!run.data.length){run.dirty=false;t.skip();continue;}var _f0=t.next("marker",[this.opt,run]),_f1,ht=this._hScaler.scaler.getTransformerFromModel(this._hScaler),vt=this._vScaler.scaler.getTransformerFromModel(this._vScaler);if(run.hidden){run.dyn.marker=_f0.symbol;run.dyn.markerFill=_f0.marker.fill;run.dyn.markerStroke=_f0.marker.stroke;continue;}s=run.group;if(typeof run.data[0]=="number"){_f1=arr.map(run.data,function(v,i){return {x:ht(i+1)+_ed.l,y:dim.height-_ed.b-vt(v)};},this);}else{_f1=arr.map(run.data,function(v,i){return {x:ht(v.x)+_ed.l,y:dim.height-_ed.b-vt(v.y)};},this);}var _f2=new Array(_f1.length),_f3=new Array(_f1.length),_f4=new Array(_f1.length);arr.forEach(_f1,function(c,i){var _f5=run.data[i],_f6;if(this.opt.styleFunc||typeof _f5!="number"){var _f7=typeof _f5!="number"?[_f5]:[];if(this.opt.styleFunc){_f7.push(this.opt.styleFunc(_f5));}_f6=t.addMixin(_f0,"marker",_f7,true);}else{_f6=t.post(_f0,"marker");}var _f8="M"+c.x+" "+c.y+" "+_f6.symbol;if(_f6.marker.shadow){_f2[i]=s.createPath("M"+(c.x+_f6.marker.shadow.dx)+" "+(c.y+_f6.marker.shadow.dy)+" "+_f6.symbol).setStroke(_f6.marker.shadow).setFill(_f6.marker.shadow.color);if(this.animate){this._animateScatter(_f2[i],dim.height-_ed.b);}}if(_f6.marker.outline){var _f9=dc.makeStroke(_f6.marker.outline);_f9.width=2*_f9.width+_f6.marker.stroke.width;_f4[i]=s.createPath(_f8).setStroke(_f9);if(this.animate){this._animateScatter(_f4[i],dim.height-_ed.b);}}var _fa=dc.makeStroke(_f6.marker.stroke),_fb=this._plotFill(_f6.marker.fill,dim,_ed);if(_fb&&(_fb.type==="linear"||_fb.type=="radial")){var _fc=_e9.getColor(_fb,{x:c.x,y:c.y});if(_fa){_fa.color=_fc;}_f3[i]=s.createPath(_f8).setStroke(_fa).setFill(_fc);}else{_f3[i]=s.createPath(_f8).setStroke(_fa).setFill(_fb);}if(this.opt.labels){var _fd=_f3[i].getBoundingBox();this.createLabel(s,_f5,_fd,_f6);}if(this.animate){this._animateScatter(_f3[i],dim.height-_ed.b);}},this);if(_f3.length){run.dyn.marker=_f0.symbol;run.dyn.markerStroke=_f3[_f3.length-1].getStroke();run.dyn.markerFill=_f3[_f3.length-1].getFill();}if(_ef){var _fe=new Array(_f3.length);arr.forEach(_f3,function(s,i){var o={element:"marker",index:i,run:run,shape:s,outline:_f4&&_f4[i]||null,shadow:_f2&&_f2[i]||null,cx:_f1[i].x,cy:_f1[i].y};if(typeof run.data[0]=="number"){o.x=i+1;o.y=run.data[i];}else{o.x=run.data[i].x;o.y=run.data[i].y;}this._connectEvents(o);_fe[i]=o;},this);this._eventSeries[run.name]=_fe;}else{delete this._eventSeries[run.name];}run.dirty=false;}this.dirty=false;if(has("dojo-bidi")){this._checkOrientation(this.group,dim,_ed);}return this;},_animateScatter:function(_ff,_100){fx.animateTransform(_e5.delegate({shape:_ff,duration:1200,transform:[{name:"translate",start:[0,_100],end:[0,0]},{name:"scale",start:[0,0],end:[1,1]},{name:"original"}]},this.animate)).play();}});});},"dojox/lang/functional/scan":function(){define(["dojo/_base/kernel","dojo/_base/lang","./lambda"],function(_101,lang,df){var _102={};lang.mixin(df,{scanl:function(a,f,z,o){if(typeof a=="string"){a=a.split("");}o=o||_101.global;f=df.lambda(f);var t,n,i;if(lang.isArray(a)){t=new Array((n=a.length)+1);t[0]=z;for(i=0;i0;--i,z=f.call(o,z,a[i],i,a),t[i]=z){}return t;},scanr1:function(a,f,o){if(typeof a=="string"){a=a.split("");}o=o||_101.global;f=df.lambda(f);var n=a.length,t=new Array(n),z=a[n-1],i=n-1;t[i]=z;for(;i>0;--i,z=f.call(o,z,a[i],i,a),t[i]=z){}return t;}});});},"dijit/Viewport":function(){define(["dojo/Evented","dojo/on","dojo/domReady","dojo/sniff","dojo/window"],function(_104,on,_105,has,_106){var _107=new _104();var _108;_105(function(){var _109=_106.getBox();_107._rlh=on(window,"resize",function(){var _10a=_106.getBox();if(_109.h==_10a.h&&_109.w==_10a.w){return;}_109=_10a;_107.emit("resize");});if(has("ie")==8){var _10b=screen.deviceXDPI;setInterval(function(){if(screen.deviceXDPI!=_10b){_10b=screen.deviceXDPI;_107.emit("resize");}},500);}if(has("ios")){on(document,"focusin",function(evt){_108=evt.target;});on(document,"focusout",function(evt){_108=null;});}});_107.getEffectiveBox=function(doc){var box=_106.getBox(doc);var tag=_108&&_108.tagName&&_108.tagName.toLowerCase();if(has("ios")&&_108&&!_108.readOnly&&(tag=="textarea"||(tag=="input"&&/^(color|email|number|password|search|tel|text|url)$/.test(_108.type)))){box.h*=(orientation==0||orientation==180?0.66:0.4);var rect=_108.getBoundingClientRect();box.h=Math.max(box.h,rect.top+rect.height);}return box;};return _107;});},"dojox/color/_base":function(){define(["../main","dojo/_base/lang","dojo/_base/Color","dojo/colors"],function(_10c,lang,_10d,_10e){var cx=lang.getObject("color",true,_10c);cx.Color=_10d;cx.blend=_10d.blendColors;cx.fromRgb=_10d.fromRgb;cx.fromHex=_10d.fromHex;cx.fromArray=_10d.fromArray;cx.fromString=_10d.fromString;cx.greyscale=_10e.makeGrey;lang.mixin(cx,{fromCmy:function(cyan,_10f,_110){if(lang.isArray(cyan)){_10f=cyan[1],_110=cyan[2],cyan=cyan[0];}else{if(lang.isObject(cyan)){_10f=cyan.m,_110=cyan.y,cyan=cyan.c;}}cyan/=100,_10f/=100,_110/=100;var r=1-cyan,g=1-_10f,b=1-_110;return new _10d({r:Math.round(r*255),g:Math.round(g*255),b:Math.round(b*255)});},fromCmyk:function(cyan,_111,_112,_113){if(lang.isArray(cyan)){_111=cyan[1],_112=cyan[2],_113=cyan[3],cyan=cyan[0];}else{if(lang.isObject(cyan)){_111=cyan.m,_112=cyan.y,_113=cyan.b,cyan=cyan.c;}}cyan/=100,_111/=100,_112/=100,_113/=100;var r,g,b;r=1-Math.min(1,cyan*(1-_113)+_113);g=1-Math.min(1,_111*(1-_113)+_113);b=1-Math.min(1,_112*(1-_113)+_113);return new _10d({r:Math.round(r*255),g:Math.round(g*255),b:Math.round(b*255)});},fromHsl:function(hue,_114,_115){if(lang.isArray(hue)){_114=hue[1],_115=hue[2],hue=hue[0];}else{if(lang.isObject(hue)){_114=hue.s,_115=hue.l,hue=hue.h;}}_114/=100;_115/=100;while(hue<0){hue+=360;}while(hue>=360){hue-=360;}var r,g,b;if(hue<120){r=(120-hue)/60,g=hue/60,b=0;}else{if(hue<240){r=0,g=(240-hue)/60,b=(hue-120)/60;}else{r=(hue-240)/60,g=0,b=(360-hue)/60;}}r=2*_114*Math.min(r,1)+(1-_114);g=2*_114*Math.min(g,1)+(1-_114);b=2*_114*Math.min(b,1)+(1-_114);if(_115<0.5){r*=_115,g*=_115,b*=_115;}else{r=(1-_115)*r+2*_115-1;g=(1-_115)*g+2*_115-1;b=(1-_115)*b+2*_115-1;}return new _10d({r:Math.round(r*255),g:Math.round(g*255),b:Math.round(b*255)});}});cx.fromHsv=function(hue,_116,_117){if(lang.isArray(hue)){_116=hue[1],_117=hue[2],hue=hue[0];}else{if(lang.isObject(hue)){_116=hue.s,_117=hue.v,hue=hue.h;}}if(hue==360){hue=0;}_116/=100;_117/=100;var r,g,b;if(_116==0){r=_117,b=_117,g=_117;}else{var _118=hue/60,i=Math.floor(_118),f=_118-i;var p=_117*(1-_116);var q=_117*(1-(_116*f));var t=_117*(1-(_116*(1-f)));switch(i){case 0:r=_117,g=t,b=p;break;case 1:r=q,g=_117,b=p;break;case 2:r=p,g=_117,b=t;break;case 3:r=p,g=q,b=_117;break;case 4:r=t,g=p,b=_117;break;case 5:r=_117,g=p,b=q;break;}}return new _10d({r:Math.round(r*255),g:Math.round(g*255),b:Math.round(b*255)});};lang.extend(_10d,{toCmy:function(){var cyan=1-(this.r/255),_119=1-(this.g/255),_11a=1-(this.b/255);return {c:Math.round(cyan*100),m:Math.round(_119*100),y:Math.round(_11a*100)};},toCmyk:function(){var cyan,_11b,_11c,_11d;var r=this.r/255,g=this.g/255,b=this.b/255;_11d=Math.min(1-r,1-g,1-b);cyan=(1-r-_11d)/(1-_11d);_11b=(1-g-_11d)/(1-_11d);_11c=(1-b-_11d)/(1-_11d);return {c:Math.round(cyan*100),m:Math.round(_11b*100),y:Math.round(_11c*100),b:Math.round(_11d*100)};},toHsl:function(){var r=this.r/255,g=this.g/255,b=this.b/255;var min=Math.min(r,b,g),max=Math.max(r,g,b);var _11e=max-min;var h=0,s=0,l=(min+max)/2;if(l>0&&l<1){s=_11e/((l<0.5)?(2*l):(2-2*l));}if(_11e>0){if(max==r&&max!=g){h+=(g-b)/_11e;}if(max==g&&max!=b){h+=(2+(b-r)/_11e);}if(max==b&&max!=r){h+=(4+(r-g)/_11e);}h*=60;}return {h:h,s:Math.round(s*100),l:Math.round(l*100)};},toHsv:function(){var r=this.r/255,g=this.g/255,b=this.b/255;var min=Math.min(r,b,g),max=Math.max(r,g,b);var _11f=max-min;var h=null,s=(max==0)?0:(_11f/max);if(s==0){h=0;}else{if(r==max){h=60*(g-b)/_11f;}else{if(g==max){h=120+60*(b-r)/_11f;}else{h=240+60*(r-g)/_11f;}}if(h<0){h+=360;}}return {h:h,s:Math.round(s*100),v:Math.round(max*100)};}});return cx;});},"dojox/charting/plot2d/OHLC":function(){define(["dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/has","./CartesianBase","./_PlotEvents","./common","dojox/lang/functional","dojox/lang/functional/reversed","dojox/lang/utils","dojox/gfx/fx"],function(lang,arr,_120,has,_121,_122,dc,df,dfr,du,fx){var _123=dfr.lambda("item.purgeGroup()");return _120("dojox.charting.plot2d.OHLC",[_121,_122],{defaultParams:{gap:2,animate:null},optionalParams:{minBarSize:1,maxBarSize:1,stroke:{},outline:{},shadow:{},fill:{},font:"",fontColor:""},constructor:function(_124,_125){this.opt=lang.clone(this.defaultParams);du.updateWithObject(this.opt,_125);du.updateWithPattern(this.opt,_125,this.optionalParams);this.animate=this.opt.animate;},collectStats:function(_126){var _127=lang.delegate(dc.defaultStats);for(var i=0;i<_126.length;i++){var run=_126[i];if(!run.data.length){continue;}var _128=_127.vmin,_129=_127.vmax;if(!("ymin" in run)||!("ymax" in run)){arr.forEach(run.data,function(val,idx){if(val!==null){var x=val.x||idx+1;_127.hmin=Math.min(_127.hmin,x);_127.hmax=Math.max(_127.hmax,x);_127.vmin=Math.min(_127.vmin,val.open,val.close,val.high,val.low);_127.vmax=Math.max(_127.vmax,val.open,val.close,val.high,val.low);}});}if("ymin" in run){_127.vmin=Math.min(_128,run.ymin);}if("ymax" in run){_127.vmax=Math.max(_129,run.ymax);}}return _127;},getSeriesStats:function(){var _12a=this.collectStats(this.series);_12a.hmin-=0.5;_12a.hmax+=0.5;return _12a;},render:function(dim,_12b){if(this.zoom&&!this.isDataDirty()){return this.performZoom(dim,_12b);}this.resetEvents();this.dirty=this.isDirty();if(this.dirty){arr.forEach(this.series,_123);this._eventSeries={};this.cleanGroup();var s=this.getGroup();df.forEachRev(this.series,function(item){item.cleanGroup(s);});}var t=this.chart.theme,f,gap,_12c,ht=this._hScaler.scaler.getTransformerFromModel(this._hScaler),vt=this._vScaler.scaler.getTransformerFromModel(this._vScaler),_12d=this.events();f=dc.calculateBarSize(this._hScaler.bounds.scale,this.opt);gap=f.gap;_12c=f.size;for(var i=this.series.length-1;i>=0;--i){var run=this.series[i];if(!this.dirty&&!run.dirty){t.skip();this._reconnectEvents(run.name);continue;}run.cleanGroup();var _12e=t.next("candlestick",[this.opt,run]),s=run.group,_12f=new Array(run.data.length);for(var j=0;jhigh){var tmp=high;high=low;low=tmp;}if(_12c>=1){var hl={x1:_12c/2,x2:_12c/2,y1:y-high,y2:y-low},op={x1:0,x2:((_12c/2)+((_130.series.stroke.width||1)/2)),y1:y-open,y2:y-open},cl={x1:((_12c/2)-((_130.series.stroke.width||1)/2)),x2:_12c,y1:y-_131,y2:y-_131};var _132=s.createGroup();_132.setTransform({dx:x,dy:0});var _133=_132.createGroup();_133.createLine(hl).setStroke(_130.series.stroke);_133.createLine(op).setStroke(_130.series.stroke);_133.createLine(cl).setStroke(_130.series.stroke);run.dyn.stroke=_130.series.stroke;if(_12d){var o={element:"candlestick",index:j,run:run,shape:_133,x:x,y:y-Math.max(open,_131),cx:_12c/2,cy:(y-Math.max(open,_131))+(Math.max(open>_131?open-_131:_131-open,1)/2),width:_12c,height:Math.max(open>_131?open-_131:_131-open,1),data:v};this._connectEvents(o);_12f[j]=o;}}if(this.animate){this._animateOHLC(_132,y-low,high-low);}}}this._eventSeries[run.name]=_12f;run.dirty=false;}this.dirty=false;if(has("dojo-bidi")){this._checkOrientation(this.group,dim,_12b);}return this;},_animateOHLC:function(_134,_135,_136){fx.animateTransform(lang.delegate({shape:_134,duration:1200,transform:[{name:"translate",start:[0,_135-(_135/_136)],end:[0,0]},{name:"scale",start:[1,1/_136],end:[1,1]},{name:"original"}]},this.animate)).play();}});});},"dijit/a11yclick":function(){define(["dojo/keys","dojo/mouse","dojo/on","dojo/touch"],function(keys,_137,on,_138){function _139(e){if((e.keyCode===keys.ENTER||e.keyCode===keys.SPACE)&&!/input|button|textarea/i.test(e.target.nodeName)){for(var node=e.target;node;node=node.parentNode){if(node.dojoClick){return true;}}}};var _13a;on(document,"keydown",function(e){if(_139(e)){_13a=e.target;e.preventDefault();}else{_13a=null;}});on(document,"keyup",function(e){if(_139(e)&&e.target==_13a){_13a=null;on.emit(e.target,"click",{cancelable:true,bubbles:true,ctrlKey:e.ctrlKey,shiftKey:e.shiftKey,metaKey:e.metaKey,altKey:e.altKey,_origType:e.type});}});var _13b=function(node,_13c){node.dojoClick=true;return on(node,"click",_13c);};_13b.click=_13b;_13b.press=function(node,_13d){var _13e=on(node,_138.press,function(evt){if(evt.type=="mousedown"&&!_137.isLeft(evt)){return;}_13d(evt);}),_13f=on(node,"keydown",function(evt){if(evt.keyCode===keys.ENTER||evt.keyCode===keys.SPACE){_13d(evt);}});return {remove:function(){_13e.remove();_13f.remove();}};};_13b.release=function(node,_140){var _141=on(node,_138.release,function(evt){if(evt.type=="mouseup"&&!_137.isLeft(evt)){return;}_140(evt);}),_142=on(node,"keyup",function(evt){if(evt.keyCode===keys.ENTER||evt.keyCode===keys.SPACE){_140(evt);}});return {remove:function(){_141.remove();_142.remove();}};};_13b.move=_138.move;return _13b;});},"dojox/charting/plot2d/ClusteredColumns":function(){define(["dojo/_base/declare","dojo/_base/array","./Columns","./common"],function(_143,_144,_145,dc){return _143("dojox.charting.plot2d.ClusteredColumns",_145,{getBarProperties:function(){var _146=this.series.length;_144.forEach(this.series,function(_147){if(_147.hidden){_146--;}});var f=dc.calculateBarSize(this._hScaler.bounds.scale,this.opt,_146);return {gap:f.gap,width:f.size,thickness:f.size,clusterSize:_146};}});});},"dojox/charting/Chart":function(){define(["../main","dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/dom-style","dojo/dom","dojo/dom-geometry","dojo/dom-construct","dojo/_base/Color","dojo/sniff","./Element","./SimpleTheme","./Series","./axis2d/common","dojox/gfx/shape","dojox/gfx","dojo/has!dojo-bidi?./bidi/Chart","dojox/lang/functional","dojox/lang/functional/fold","dojox/lang/functional/reversed"],function(_148,lang,arr,_149,_14a,dom,_14b,_14c,_14d,has,_14e,_14f,_150,_151,_152,g,_153,func){var dc=lang.getObject("charting",true,_148),_154=func.lambda("item.clear()"),_155=func.lambda("item.purgeGroup()"),_156=func.lambda("item.destroy()"),_157=func.lambda("item.dirty = false"),_158=func.lambda("item.dirty = true"),_159=func.lambda("item.name");var _15a=_149(has("dojo-bidi")?"dojox.charting.NonBidiChart":"dojox.charting.Chart",null,{constructor:function(node,_15b){if(!_15b){_15b={};}this.margins=_15b.margins?_15b.margins:{l:10,t:10,r:10,b:10};this.stroke=_15b.stroke;this.fill=_15b.fill;this.delayInMs=_15b.delayInMs||200;this.title=_15b.title;this.titleGap=_15b.titleGap;this.titlePos=_15b.titlePos;this.titleFont=_15b.titleFont;this.titleFontColor=_15b.titleFontColor;this.chartTitle=null;this.htmlLabels=true;if("htmlLabels" in _15b){this.htmlLabels=_15b.htmlLabels;}this.theme=null;this.axes={};this.stack=[];this.plots={};this.series=[];this.runs={};this.dirty=true;this.node=dom.byId(node);var box=_14b.getMarginBox(node);this.surface=g.createSurface(this.node,box.w||400,box.h||300);if(this.surface.declaredClass.indexOf("vml")==-1){this._nativeClip=true;}},destroy:function(){arr.forEach(this.series,_156);arr.forEach(this.stack,_156);func.forIn(this.axes,_156);this.surface.destroy();if(this.chartTitle&&this.chartTitle.tagName){_14c.destroy(this.chartTitle);}},getCoords:function(){var node=this.node;var s=_14a.getComputedStyle(node),_15c=_14b.getMarginBox(node,s);var abs=_14b.position(node,true);_15c.x=abs.x;_15c.y=abs.y;return _15c;},setTheme:function(_15d){this.theme=_15d.clone();this.dirty=true;return this;},addAxis:function(name,_15e){var axis,_15f=_15e&&_15e.type||"Default";if(typeof _15f=="string"){if(!dc.axis2d||!dc.axis2d[_15f]){throw Error("Can't find axis: "+_15f+" - Check "+"require() dependencies.");}axis=new dc.axis2d[_15f](this,_15e);}else{axis=new _15f(this,_15e);}axis.name=name;axis.dirty=true;if(name in this.axes){this.axes[name].destroy();}this.axes[name]=axis;this.dirty=true;return this;},getAxis:function(name){return this.axes[name];},removeAxis:function(name){if(name in this.axes){this.axes[name].destroy();delete this.axes[name];this.dirty=true;}return this;},addPlot:function(name,_160){var plot,_161=_160&&_160.type||"Default";if(typeof _161=="string"){if(!dc.plot2d||!dc.plot2d[_161]){throw Error("Can't find plot: "+_161+" - didn't you forget to dojo"+".require() it?");}plot=new dc.plot2d[_161](this,_160);}else{plot=new _161(this,_160);}plot.name=name;plot.dirty=true;if(name in this.plots){this.stack[this.plots[name]].destroy();this.stack[this.plots[name]]=plot;}else{this.plots[name]=this.stack.length;this.stack.push(plot);}this.dirty=true;return this;},getPlot:function(name){return this.stack[this.plots[name]];},removePlot:function(name){if(name in this.plots){var _162=this.plots[name];delete this.plots[name];this.stack[_162].destroy();this.stack.splice(_162,1);func.forIn(this.plots,function(idx,name,_163){if(idx>_162){_163[name]=idx-1;}});var ns=arr.filter(this.series,function(run){return run.plot!=name;});if(ns.length_16e){runs[name]=idx-1;}});this.dirty=true;}return this;},updateSeries:function(name,data,_16f){if(name in this.runs){var run=this.series[this.runs[name]];run.update(data);if(_16f){this.dirty=true;}else{this._invalidateDependentPlots(run.plot,false);this._invalidateDependentPlots(run.plot,true);}}return this;},getSeriesOrder:function(_170){return func.map(func.filter(this.series,function(run){return run.plot==_170;}),_159);},setSeriesOrder:function(_171){var _172,_173={},_174=func.filter(_171,function(name){if(!(name in this.runs)||(name in _173)){return false;}var run=this.series[this.runs[name]];if(_172){if(run.plot!=_172){return false;}}else{_172=run.plot;}_173[name]=1;return true;},this);func.forEach(this.series,function(run){var name=run.name;if(!(name in _173)&&run.plot==_172){_174.push(name);}});var _175=func.map(_174,function(name){return this.series[this.runs[name]];},this);this.series=_175.concat(func.filter(this.series,function(run){return run.plot!=_172;}));func.forEach(this.series,function(run,i){this.runs[run.name]=i;},this);this.dirty=true;return this;},moveSeriesToFront:function(name){if(name in this.runs){var _176=this.runs[name],_177=this.getSeriesOrder(this.series[_176].plot);if(name!=_177[0]){_177.splice(_176,1);_177.unshift(name);return this.setSeriesOrder(_177);}}return this;},moveSeriesToBack:function(name){if(name in this.runs){var _178=this.runs[name],_179=this.getSeriesOrder(this.series[_178].plot);if(name!=_179[_179.length-1]){_179.splice(_178,1);_179.push(name);return this.setSeriesOrder(_179);}}return this;},resize:function(_17a,_17b){switch(arguments.length){case 1:_14b.setMarginBox(this.node,_17a);break;case 2:_14b.setMarginBox(this.node,{w:_17a,h:_17b});break;}var box=_14b.getMarginBox(this.node);var d=this.surface.getDimensions();if(d.width!=box.w||d.height!=box.h){this.surface.setDimensions(box.w,box.h);this.dirty=true;return this.render();}else{return this;}},getGeometry:function(){var ret={};func.forIn(this.axes,function(axis){if(axis.initialized()){ret[axis.name]={name:axis.name,vertical:axis.vertical,scaler:axis.scaler,ticks:axis.ticks};}});return ret;},setAxisWindow:function(name,_17c,_17d,zoom){var axis=this.axes[name];if(axis){axis.setWindow(_17c,_17d);arr.forEach(this.stack,function(plot){if(plot.hAxis==name||plot.vAxis==name){plot.zoom=zoom;}});}return this;},setWindow:function(sx,sy,dx,dy,zoom){if(!("plotArea" in this)){this.calculateGeometry();}func.forIn(this.axes,function(axis){var _17e,_17f,_180=axis.getScaler().bounds,s=_180.span/(_180.upper-_180.lower);if(axis.vertical){_17e=sy;_17f=dy/s/_17e;}else{_17e=sx;_17f=dx/s/_17e;}axis.setWindow(_17e,_17f);});arr.forEach(this.stack,function(plot){plot.zoom=zoom;});return this;},zoomIn:function(name,_181,_182){var axis=this.axes[name];if(axis){var _183,_184,_185=axis.getScaler().bounds;var _186=Math.min(_181[0],_181[1]);var _187=Math.max(_181[0],_181[1]);_186=_181[0]<_185.lower?_185.lower:_186;_187=_181[1]>_185.upper?_185.upper:_187;_183=(_185.upper-_185.lower)/(_187-_186);_184=_186-_185.lower;this.setAxisWindow(name,_183,_184);if(_182){this.delayedRender();}else{this.render();}}},calculateGeometry:function(){if(this.dirty){return this.fullGeometry();}var _188=arr.filter(this.stack,function(plot){return plot.dirty||(plot.hAxis&&this.axes[plot.hAxis].dirty)||(plot.vAxis&&this.axes[plot.vAxis].dirty);},this);_189(_188,this.plotArea);return this;},fullGeometry:function(){this._makeDirty();arr.forEach(this.stack,_154);if(!this.theme){this.setTheme(new _14f());}arr.forEach(this.series,function(run){if(!(run.plot in this.plots)){if(!dc.plot2d||!dc.plot2d.Default){throw Error("Can't find plot: Default - didn't you forget to dojo"+".require() it?");}var plot=new dc.plot2d.Default(this,{});plot.name=run.plot;this.plots[run.plot]=this.stack.length;this.stack.push(plot);}this.stack[this.plots[run.plot]].addSeries(run);},this);arr.forEach(this.stack,function(plot){if(plot.assignAxes){plot.assignAxes(this.axes);}},this);var dim=this.dim=this.surface.getDimensions();dim.width=g.normalizedLength(dim.width);dim.height=g.normalizedLength(dim.height);func.forIn(this.axes,_154);_189(this.stack,dim);var _18a=this.offsets={l:0,r:0,t:0,b:0};var self=this;func.forIn(this.axes,function(axis){if(has("dojo-bidi")){self._resetLeftBottom(axis);}func.forIn(axis.getOffsets(),function(o,i){_18a[i]=Math.max(o,_18a[i]);});});if(this.title){this.titleGap=(this.titleGap==0)?0:this.titleGap||this.theme.chart.titleGap||20;this.titlePos=this.titlePos||this.theme.chart.titlePos||"top";this.titleFont=this.titleFont||this.theme.chart.titleFont;this.titleFontColor=this.titleFontColor||this.theme.chart.titleFontColor||"black";var _18b=g.normalizedLength(g.splitFontString(this.titleFont).size);_18a[this.titlePos=="top"?"t":"b"]+=(_18b+this.titleGap);}func.forIn(this.margins,function(o,i){_18a[i]+=o;});this.plotArea={width:dim.width-_18a.l-_18a.r,height:dim.height-_18a.t-_18a.b};func.forIn(this.axes,_154);_189(this.stack,this.plotArea);return this;},render:function(){if(this._delayedRenderHandle){clearTimeout(this._delayedRenderHandle);this._delayedRenderHandle=null;}if(this.theme){this.theme.clear();}if(this.dirty){return this.fullRender();}this.calculateGeometry();func.forEachRev(this.stack,function(plot){plot.render(this.dim,this.offsets);},this);func.forIn(this.axes,function(axis){axis.render(this.dim,this.offsets);},this);this._makeClean();return this;},fullRender:function(){this.fullGeometry();var _18c=this.offsets,dim=this.dim;var w=Math.max(0,dim.width-_18c.l-_18c.r),h=Math.max(0,dim.height-_18c.t-_18c.b);arr.forEach(this.series,_155);func.forIn(this.axes,_155);arr.forEach(this.stack,_155);var _18d=this.surface.children;if(_152.dispose){for(var i=0;i<_18d.length;++i){_152.dispose(_18d[i]);}}if(this.chartTitle&&this.chartTitle.tagName){_14c.destroy(this.chartTitle);}this.surface.clear();this.chartTitle=null;this._renderChartBackground(dim,_18c);if(this._nativeClip){this._renderPlotBackground(dim,_18c,w,h);}else{this._renderPlotBackground(dim,_18c,w,h);}func.foldr(this.stack,function(z,plot){return plot.render(dim,_18c),0;},0);if(!this._nativeClip){this._renderChartBackground(dim,_18c);}if(this.title){var _18e=(g.renderer=="canvas")&&this.htmlLabels,_18f=_18e||!has("ie")&&!has("opera")&&this.htmlLabels?"html":"gfx",_190=g.normalizedLength(g.splitFontString(this.titleFont).size);this.chartTitle=_151.createText[_18f](this,this.surface,dim.width/2,this.titlePos=="top"?_190+this.margins.t:dim.height-this.margins.b,"middle",this.title,this.titleFont,this.titleFontColor);}func.forIn(this.axes,function(axis){axis.render(dim,_18c);});this._makeClean();return this;},_renderChartBackground:function(dim,_191){var t=this.theme,rect;var fill=this.fill!==undefined?this.fill:(t.chart&&t.chart.fill);var _192=this.stroke!==undefined?this.stroke:(t.chart&&t.chart.stroke);if(fill=="inherit"){var node=this.node;fill=new _14d(_14a.get(node,"backgroundColor"));while(fill.a==0&&node!=document.documentElement){fill=new _14d(_14a.get(node,"backgroundColor"));node=node.parentNode;}}if(fill){if(this._nativeClip){fill=_14e.prototype._shapeFill(_14e.prototype._plotFill(fill,dim),{x:0,y:0,width:dim.width+1,height:dim.height+1});this.surface.createRect({width:dim.width+1,height:dim.height+1}).setFill(fill);}else{fill=_14e.prototype._plotFill(fill,dim,_191);if(_191.l){rect={x:0,y:0,width:_191.l,height:dim.height+1};this.surface.createRect(rect).setFill(_14e.prototype._shapeFill(fill,rect));}if(_191.r){rect={x:dim.width-_191.r,y:0,width:_191.r+1,height:dim.height+2};this.surface.createRect(rect).setFill(_14e.prototype._shapeFill(fill,rect));}if(_191.t){rect={x:0,y:0,width:dim.width+1,height:_191.t};this.surface.createRect(rect).setFill(_14e.prototype._shapeFill(fill,rect));}if(_191.b){rect={x:0,y:dim.height-_191.b,width:dim.width+1,height:_191.b+2};this.surface.createRect(rect).setFill(_14e.prototype._shapeFill(fill,rect));}}}if(_192){this.surface.createRect({width:dim.width-1,height:dim.height-1}).setStroke(_192);}},_renderPlotBackground:function(dim,_193,w,h){var t=this.theme;var fill=t.plotarea&&t.plotarea.fill;var _194=t.plotarea&&t.plotarea.stroke;var rect={x:_193.l-1,y:_193.t-1,width:w+2,height:h+2};if(fill){fill=_14e.prototype._shapeFill(_14e.prototype._plotFill(fill,dim,_193),rect);this.surface.createRect(rect).setFill(fill);}if(_194){this.surface.createRect({x:_193.l,y:_193.t,width:w+1,height:h+1}).setStroke(_194);}},delayedRender:function(){if(!this._delayedRenderHandle){this._delayedRenderHandle=setTimeout(lang.hitch(this,function(){this.render();}),this.delayInMs);}return this;},connectToPlot:function(name,_195,_196){return name in this.plots?this.stack[this.plots[name]].connect(_195,_196):null;},fireEvent:function(_197,_198,_199){if(_197 in this.runs){var _19a=this.series[this.runs[_197]].plot;if(_19a in this.plots){var plot=this.stack[this.plots[_19a]];if(plot){plot.fireEvent(_197,_198,_199);}}}return this;},_makeClean:function(){arr.forEach(this.axes,_157);arr.forEach(this.stack,_157);arr.forEach(this.series,_157);this.dirty=false;},_makeDirty:function(){arr.forEach(this.axes,_158);arr.forEach(this.stack,_158);arr.forEach(this.series,_158);this.dirty=true;},_invalidateDependentPlots:function(_19b,_19c){if(_19b in this.plots){var plot=this.stack[this.plots[_19b]],axis,_19d=_19c?"vAxis":"hAxis";if(plot[_19d]){axis=this.axes[plot[_19d]];if(axis&&axis.dependOnData()){axis.dirty=true;arr.forEach(this.stack,function(p){if(p[_19d]&&p[_19d]==plot[_19d]){p.dirty=true;}});}}else{plot.dirty=true;}}},setDir:function(dir){return this;},_resetLeftBottom:function(axis){},formatTruncatedLabel:function(_19e,_19f,_1a0){}});function _1a1(_1a2){return {min:_1a2.hmin,max:_1a2.hmax};};function _1a3(_1a4){return {min:_1a4.vmin,max:_1a4.vmax};};function _1a5(_1a6,h){_1a6.hmin=h.min;_1a6.hmax=h.max;};function _1a7(_1a8,v){_1a8.vmin=v.min;_1a8.vmax=v.max;};function _1a9(_1aa,_1ab){if(_1aa&&_1ab){_1aa.min=Math.min(_1aa.min,_1ab.min);_1aa.max=Math.max(_1aa.max,_1ab.max);}return _1aa||_1ab;};function _189(_1ac,_1ad){var _1ae={},axes={};arr.forEach(_1ac,function(plot){var _1af=_1ae[plot.name]=plot.getSeriesStats();if(plot.hAxis){axes[plot.hAxis]=_1a9(axes[plot.hAxis],_1a1(_1af));}if(plot.vAxis){axes[plot.vAxis]=_1a9(axes[plot.vAxis],_1a3(_1af));}});arr.forEach(_1ac,function(plot){var _1b0=_1ae[plot.name];if(plot.hAxis){_1a5(_1b0,axes[plot.hAxis]);}if(plot.vAxis){_1a7(_1b0,axes[plot.vAxis]);}plot.initializeScalers(_1ad,_1b0);});};return has("dojo-bidi")?_149("dojox.charting.Chart",[_15a,_153]):_15a;});},"dojox/charting/plot2d/MarkersOnly":function(){define(["dojo/_base/declare","./Default"],function(_1b1,_1b2){return _1b1("dojox.charting.plot2d.MarkersOnly",_1b2,{constructor:function(){this.opt.lines=false;this.opt.markers=true;}});});},"dojox/charting/plot2d/Areas":function(){define(["dojo/_base/declare","./Default"],function(_1b3,_1b4){return _1b3("dojox.charting.plot2d.Areas",_1b4,{constructor:function(){this.opt.lines=true;this.opt.areas=true;}});});},"dojox/charting/action2d/Base":function(){define(["dojo/_base/lang","dojo/_base/declare","dojo/Evented"],function(lang,_1b5,_1b6){return _1b5("dojox.charting.action2d.Base",_1b6,{constructor:function(_1b7,plot){this.chart=_1b7;this.plot=plot?(lang.isString(plot)?this.chart.getPlot(plot):plot):this.chart.getPlot("default");},connect:function(){},disconnect:function(){},destroy:function(){this.disconnect();}});});},"dojo/fx":function(){define(["./_base/lang","./Evented","./_base/kernel","./_base/array","./aspect","./_base/fx","./dom","./dom-style","./dom-geometry","./ready","require"],function(lang,_1b8,dojo,_1b9,_1ba,_1bb,dom,_1bc,geom,_1bd,_1be){if(!dojo.isAsync){_1bd(0,function(){var _1bf=["./fx/Toggler"];_1be(_1bf);});}var _1c0=dojo.fx={};var _1c1={_fire:function(evt,args){if(this[evt]){this[evt].apply(this,args||[]);}return this;}};var _1c2=function(_1c3){this._index=-1;this._animations=_1c3||[];this._current=this._onAnimateCtx=this._onEndCtx=null;this.duration=0;_1b9.forEach(this._animations,function(a){this.duration+=a.duration;if(a.delay){this.duration+=a.delay;}},this);};_1c2.prototype=new _1b8();lang.extend(_1c2,{_onAnimate:function(){this._fire("onAnimate",arguments);},_onEnd:function(){this._onAnimateCtx.remove();this._onEndCtx.remove();this._onAnimateCtx=this._onEndCtx=null;if(this._index+1==this._animations.length){this._fire("onEnd");}else{this._current=this._animations[++this._index];this._onAnimateCtx=_1ba.after(this._current,"onAnimate",lang.hitch(this,"_onAnimate"),true);this._onEndCtx=_1ba.after(this._current,"onEnd",lang.hitch(this,"_onEnd"),true);this._current.play(0,true);}},play:function(_1c4,_1c5){if(!this._current){this._current=this._animations[this._index=0];}if(!_1c5&&this._current.status()=="playing"){return this;}var _1c6=_1ba.after(this._current,"beforeBegin",lang.hitch(this,function(){this._fire("beforeBegin");}),true),_1c7=_1ba.after(this._current,"onBegin",lang.hitch(this,function(arg){this._fire("onBegin",arguments);}),true),_1c8=_1ba.after(this._current,"onPlay",lang.hitch(this,function(arg){this._fire("onPlay",arguments);_1c6.remove();_1c7.remove();_1c8.remove();}));if(this._onAnimateCtx){this._onAnimateCtx.remove();}this._onAnimateCtx=_1ba.after(this._current,"onAnimate",lang.hitch(this,"_onAnimate"),true);if(this._onEndCtx){this._onEndCtx.remove();}this._onEndCtx=_1ba.after(this._current,"onEnd",lang.hitch(this,"_onEnd"),true);this._current.play.apply(this._current,arguments);return this;},pause:function(){if(this._current){var e=_1ba.after(this._current,"onPause",lang.hitch(this,function(arg){this._fire("onPause",arguments);e.remove();}),true);this._current.pause();}return this;},gotoPercent:function(_1c9,_1ca){this.pause();var _1cb=this.duration*_1c9;this._current=null;_1b9.some(this._animations,function(a,_1cc){if(_1cb<=a.duration){this._current=a;this._index=_1cc;return true;}_1cb-=a.duration;return false;},this);if(this._current){this._current.gotoPercent(_1cb/this._current.duration);}if(_1ca){this.play();}return this;},stop:function(_1cd){if(this._current){if(_1cd){for(;this._index+1this._animations.length){this._fire("onEnd");}},_call:function(_1d3,args){var t=this._pseudoAnimation;t[_1d3].apply(t,args);},play:function(_1d4,_1d5){this._finished=0;this._doAction("play",arguments);this._call("play",arguments);return this;},pause:function(){this._doAction("pause",arguments);this._call("pause",arguments);return this;},gotoPercent:function(_1d6,_1d7){var ms=this.duration*_1d6;_1b9.forEach(this._animations,function(a){a.gotoPercent(a.durationx){break;}}}}}return [_1ea,_1eb];}});});},"dojox/gfx/fx":function(){define(["dojo/_base/lang","./_base","./matrix","dojo/_base/Color","dojo/_base/array","dojo/_base/fx","dojo/_base/connect","dojo/sniff"],function(lang,g,m,_1ec,arr,fx,Hub,has){var fxg=g.fx={};function _1ed(_1ee,end){this.start=_1ee,this.end=end;};_1ed.prototype.getValue=function(r){return (this.end-this.start)*r+this.start;};function _1ef(_1f0,end,_1f1){this.start=_1f0,this.end=end;this.units=_1f1;};_1ef.prototype.getValue=function(r){return (this.end-this.start)*r+this.start+this.units;};function _1f2(_1f3,end){this.start=_1f3,this.end=end;this.temp=new _1ec();};_1f2.prototype.getValue=function(r){return _1ec.blendColors(this.start,this.end,r,this.temp);};function _1f4(_1f5){this.values=_1f5;this.length=_1f5.length;};_1f4.prototype.getValue=function(r){return this.values[Math.min(Math.floor(r*this.length),this.length-1)];};function _1f6(_1f7,def){this.values=_1f7;this.def=def?def:{};};_1f6.prototype.getValue=function(r){var ret=lang.clone(this.def);for(var i in this.values){ret[i]=this.values[i].getValue(r);}return ret;};function _1f8(_1f9,_1fa){this.stack=_1f9;this.original=_1fa;};_1f8.prototype.getValue=function(r){var ret=[];arr.forEach(this.stack,function(t){if(t instanceof m.Matrix2D){ret.push(t);return;}if(t.name=="original"&&this.original){ret.push(this.original);return;}if(t.name=="matrix"){if((t.start instanceof m.Matrix2D)&&(t.end instanceof m.Matrix2D)){var _1fb=new m.Matrix2D();for(var p in t.start){_1fb[p]=(t.end[p]-t.start[p])*r+t.start[p];}ret.push(_1fb);}return;}if(!(t.name in m)){return;}var f=m[t.name];if(typeof f!="function"){ret.push(f);return;}var val=arr.map(t.start,function(v,i){return (t.end[i]-v)*r+v;}),_1fc=f.apply(m,val);if(_1fc instanceof m.Matrix2D){ret.push(_1fc);}},this);return ret;};var _1fd=new _1ec(0,0,0,0);function _1fe(prop,obj,name,def){if(prop.values){return new _1f4(prop.values);}var _1ff,_200,end;if(prop.start){_200=g.normalizeColor(prop.start);}else{_200=_1ff=obj?(name?obj[name]:obj):def;}if(prop.end){end=g.normalizeColor(prop.end);}else{if(!_1ff){_1ff=obj?(name?obj[name]:obj):def;}end=_1ff;}return new _1f2(_200,end);};function _201(prop,obj,name,def){if(prop.values){return new _1f4(prop.values);}var _202,_203,end;if(prop.start){_203=prop.start;}else{_203=_202=obj?obj[name]:def;}if(prop.end){end=prop.end;}else{if(typeof _202!="number"){_202=obj?obj[name]:def;}end=_202;}return new _1ed(_203,end);};fxg.animateStroke=function(args){if(!args.easing){args.easing=fx._defaultEasing;}var anim=new fx.Animation(args),_204=args.shape,_205;Hub.connect(anim,"beforeBegin",anim,function(){_205=_204.getStroke();var prop=args.color,_206={},_207,_208,end;if(prop){_206.color=_1fe(prop,_205,"color",_1fd);}prop=args.style;if(prop&&prop.values){_206.style=new _1f4(prop.values);}prop=args.width;if(prop){_206.width=_201(prop,_205,"width",1);}prop=args.cap;if(prop&&prop.values){_206.cap=new _1f4(prop.values);}prop=args.join;if(prop){if(prop.values){_206.join=new _1f4(prop.values);}else{_208=prop.start?prop.start:(_205&&_205.join||0);end=prop.end?prop.end:(_205&&_205.join||0);if(typeof _208=="number"&&typeof end=="number"){_206.join=new _1ed(_208,end);}}}this.curve=new _1f6(_206,_205);});Hub.connect(anim,"onAnimate",_204,"setStroke");return anim;};fxg.animateFill=function(args){if(!args.easing){args.easing=fx._defaultEasing;}var anim=new fx.Animation(args),_209=args.shape,fill;Hub.connect(anim,"beforeBegin",anim,function(){fill=_209.getFill();var prop=args.color,_20a={};if(prop){this.curve=_1fe(prop,fill,"",_1fd);}});Hub.connect(anim,"onAnimate",_209,"setFill");return anim;};fxg.animateFont=function(args){if(!args.easing){args.easing=fx._defaultEasing;}var anim=new fx.Animation(args),_20b=args.shape,font;Hub.connect(anim,"beforeBegin",anim,function(){font=_20b.getFont();var prop=args.style,_20c={},_20d,_20e,end;if(prop&&prop.values){_20c.style=new _1f4(prop.values);}prop=args.variant;if(prop&&prop.values){_20c.variant=new _1f4(prop.values);}prop=args.weight;if(prop&&prop.values){_20c.weight=new _1f4(prop.values);}prop=args.family;if(prop&&prop.values){_20c.family=new _1f4(prop.values);}prop=args.size;if(prop&&prop.units){_20e=parseFloat(prop.start?prop.start:(_20b.font&&_20b.font.size||"0"));end=parseFloat(prop.end?prop.end:(_20b.font&&_20b.font.size||"0"));_20c.size=new _1ef(_20e,end,prop.units);}this.curve=new _1f6(_20c,font);});Hub.connect(anim,"onAnimate",_20b,"setFont");return anim;};fxg.animateTransform=function(args){if(!args.easing){args.easing=fx._defaultEasing;}var anim=new fx.Animation(args),_20f=args.shape,_210;Hub.connect(anim,"beforeBegin",anim,function(){_210=_20f.getTransform();this.curve=new _1f8(args.transform,_210);});Hub.connect(anim,"onAnimate",_20f,"setTransform");if(g.renderer==="svg"&&has("ie")>=10){var _211=[Hub.connect(anim,"onBegin",anim,function(){var _212=_20f.getParent();while(_212&&_212.getParent){_212=_212.getParent();}if(_212){_20f.__svgContainer=_212.rawNode.parentNode;}}),Hub.connect(anim,"onAnimate",anim,function(){try{if(_20f.__svgContainer){var ov=_20f.__svgContainer.style.visibility;_20f.__svgContainer.style.visibility="visible";var _213=_20f.__svgContainer.offsetHeight;_20f.__svgContainer.style.visibility=ov;}}catch(e){}}),Hub.connect(anim,"onEnd",anim,function(){arr.forEach(_211,Hub.disconnect);if(_20f.__svgContainer){var ov=_20f.__svgContainer.style.visibility;var sn=_20f.__svgContainer;_20f.__svgContainer.style.visibility="visible";setTimeout(function(){try{sn.style.visibility=ov;sn=null;}catch(e){}},100);}delete _20f.__svgContainer;})];}return anim;};return fxg;});},"dijit/BackgroundIframe":function(){define(["require","./main","dojo/_base/config","dojo/dom-construct","dojo/dom-style","dojo/_base/lang","dojo/on","dojo/sniff"],function(_214,_215,_216,_217,_218,lang,on,has){has.add("config-bgIframe",(has("ie")&&!/IEMobile\/10\.0/.test(navigator.userAgent))||(has("trident")&&/Windows NT 6.[01]/.test(navigator.userAgent)));var _219=new function(){var _21a=[];this.pop=function(){var _21b;if(_21a.length){_21b=_21a.pop();_21b.style.display="";}else{if(has("ie")<9){var burl=_216["dojoBlankHtmlUrl"]||_214.toUrl("dojo/resources/blank.html")||"javascript:\"\"";var html="'; + xipClientWindow = document.getElementsByTagName("iframe")[0]; + xipClientWindow.src = makeClientUrl("init", 'id=' + xipStateId + "&callback=" + encodeURIComponent(config.callback)); + if(xipClientWindow.contentWindow){ + xipClientWindow = xipClientWindow.contentWindow; + } + } + + if(typeof(window.addEventListener) == "undefined"){ + window.attachEvent("onload", onServerLoad); + }else{ + window.addEventListener('load', onServerLoad, false); + } + // --> + + + +

    The Dojo Toolkit -- xip_server.html

    + +

    This file is used for Dojo's XMLHttpRequest Iframe Proxy. This is the the file + that should go on the server that will actually be doing the XHR request.

    +
    + + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/scriptFrame.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/scriptFrame.js new file mode 100644 index 00000000..377f2673 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/scriptFrame.js @@ -0,0 +1,42 @@ +//>>built +define("dojox/io/scriptFrame",["dojo/main","dojo/io/script","dojo/io/iframe"],function(_1,_2,_3){ +_1.deprecated("dojox.io.scriptFrame","dojo.io.script now supports parallel requests without dojox.io.scriptFrame","2.0"); +_1.getObject("io.scriptFrame",true,dojox); +dojox.io.scriptFrame={_waiters:{},_loadedIds:{},_getWaiters:function(_4){ +return this._waiters[_4]||(this._waiters[_4]=[]); +},_fixAttachUrl:function(_5){ +},_loaded:function(_6){ +var _7=this._getWaiters(_6); +this._loadedIds[_6]=true; +this._waiters[_6]=null; +for(var i=0;i<_7.length;i++){ +var _8=_7[i]; +_8.frameDoc=_3.doc(_1.byId(_6)); +_2.attach(_8.id,_8.url,_8.frameDoc); +} +}}; +var _9=_2._canAttach; +var _a=dojox.io.scriptFrame; +_2._canAttach=function(_b){ +var _c=_b.args.frameDoc; +if(_c&&_1.isString(_c)){ +var _d=_1.byId(_c); +var _e=_a._getWaiters(_c); +if(!_d){ +_e.push(_b); +_3.create(_c,dojox._scopeName+".io.scriptFrame._loaded('"+_c+"');"); +}else{ +if(_a._loadedIds[_c]){ +_b.frameDoc=_3.doc(_d); +this.attach(_b.id,_b.url,_b.frameDoc); +}else{ +_e.push(_b); +} +} +return false; +}else{ +return _9.apply(this,arguments); +} +}; +return dojox.io.scriptFrame; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/scriptFrame.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/scriptFrame.js.uncompressed.js new file mode 100644 index 00000000..cc0b97de --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/scriptFrame.js.uncompressed.js @@ -0,0 +1,87 @@ +define("dojox/io/scriptFrame", ["dojo/main", "dojo/io/script", "dojo/io/iframe"], function(dojo, ioScript, iframe){ + dojo.deprecated("dojox.io.scriptFrame", "dojo.io.script now supports parallel requests without dojox.io.scriptFrame", "2.0"); + dojo.getObject("io.scriptFrame", true, dojox); + +//This module extends dojo.io.script to use an iframe for the dojo.io.script.attach calls +//if the frameDoc argument is passed to dojo.io.script.get(), and if frameDoc is a string (representing +//the DOM ID of an iframe that should be used for the connection. If frameDoc is not a string, then +//it is probably a document object, and dojox.io.scriptFrame should not get involved with the request. +//This is useful in some long-polling comet situations in Firefox and Opera. Those browsers execute scripts +//in DOM order, not network-receive order, so a long-polling script will block other +//dynamically appended scripts from running until it completes. By using an iframe +//for the dojo.io.script requests, this issue can be avoided. + +//WARNING: the url argument to dojo.io.script MUST BE relative to the iframe document's location, +//NOT the parent page location. This iframe document's URL will be (dojo.moduleUrl("dojo", "resources/blank.html") +//or djConfig.dojoBlankHtmlUrl (for xdomain loading). + + dojox.io.scriptFrame = { + _waiters: {}, + _loadedIds: {}, + + _getWaiters: function(/*String*/frameId){ + return this._waiters[frameId] || (this._waiters[frameId] = []); + }, + + _fixAttachUrl: function(/*String*/url){ + // summary: + // fixes the URL so that + }, + + _loaded: function(/*String*/frameId){ + // summary: + // callback used when waiting for a frame to load (related to the usage of + // the frameId argument to dojo.io.script.get(). + var waiters = this._getWaiters(frameId); + this._loadedIds[frameId] = true; + this._waiters[frameId] = null; + + for(var i = 0; i < waiters.length; i++){ + var ioArgs = waiters[i]; + ioArgs.frameDoc = iframe.doc(dojo.byId(frameId)); + ioScript.attach(ioArgs.id, ioArgs.url, ioArgs.frameDoc); + } + } + }; + + //Hold on to the old _canAttach function. + var oldCanAttach = ioScript._canAttach; + var scriptFrame = dojox.io.scriptFrame; + + //Define frame-aware _canAttach method on dojo.io.script + ioScript._canAttach = function(/*Object*/ioArgs){ + // summary: + // provides an override of dojo.io.script._canAttach to check for + // the existence of a the args.frameDoc property. If it is there, and it is a string, + // not a document, then create the iframe with an ID of frameDoc, and use that for the calls. + // If frameDoc is a document, then dojox.io.scriptFrame should not get involved. + var fId = ioArgs.args.frameDoc; + + if(fId && dojo.isString(fId)){ + var frame = dojo.byId(fId); + var waiters = scriptFrame._getWaiters(fId); + if(!frame){ + //Need to create frame, but the frame document, which *must* be + //on the same domain as the page (set djConfig.dojoBlankHtmlUrl + //if using xdomain loading). Loading of the frame document is asynchronous, + //so we need to do callback stuff. + waiters.push(ioArgs); + iframe.create(fId, dojox._scopeName + ".io.scriptFrame._loaded('" + fId + "');"); + }else{ + //Frame loading could still be happening. Only call attach if the frame has loaded. + if(scriptFrame._loadedIds[fId]){ + ioArgs.frameDoc = iframe.doc(frame); + this.attach(ioArgs.id, ioArgs.url, ioArgs.frameDoc); + }else{ + waiters.push(ioArgs); + } + } + return false; + }else{ + return oldCanAttach.apply(this, arguments); + } + }; + + return dojox.io.scriptFrame; +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/windowName.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/windowName.js new file mode 100644 index 00000000..d8c59543 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/io/windowName.js @@ -0,0 +1,151 @@ +//>>built +define("dojox/io/windowName",["dojo/_base/kernel","dojo/_base/window","dojo/_base/xhr","dojo/_base/sniff","dojo/_base/url","dojo/domReady!"],function(_1){ +_1.getObject("io.windowName",true,dojox); +dojox.io.windowName={send:function(_2,_3){ +_3.url+=(_3.url.match(/\?/)?"&":"?")+"windowname="+(_3.authElement?"auth":true); +var _4=_3.authElement; +var _5=function(_6){ +try{ +var _7=_8.ioArgs.frame.contentWindow.document; +_7.write(" "); +_7.close(); +} +catch(e){ +} +(_4||_1.body()).removeChild(_8.ioArgs.outerFrame); +return _6; +}; +var _8=_1._ioSetArgs(_3,_5,_5,_5); +if(_3.timeout){ +setTimeout(function(){ +if(_8.fired==-1){ +_8.callback(new Error("Timeout")); +} +},_3.timeout); +} +dojox.io.windowName._send(_8,_2,_4,_3.onAuthLoad); +return _8; +},_send:function(_9,_a,_b,_c){ +var _d=_9.ioArgs; +var _e=dojox.io.windowName._frameNum++; +var _f=(_1.config.dojoBlankHtmlUrl||_1.config.dojoCallbackUrl||_1.moduleUrl("dojo","resources/blank.html"))+"#"+_e; +var _10=new _1._Url(window.location,_f); +var doc=_1.doc; +var _11=_b||_1.body(); +function _12(_13){ +_13.style.width="100%"; +_13.style.height="100%"; +_13.style.border="0px"; +}; +if(_1.isMoz&&![].reduce){ +var _14=doc.createElement("iframe"); +_12(_14); +if(!_b){ +_14.style.display="none"; +} +_11.appendChild(_14); +var _15=_14.contentWindow; +doc=_15.document; +doc.write(""); +doc.close(); +var _16=_15[0]; +_15.__defineGetter__(0,function(){ +}); +_15.__defineGetter__("protectedFrame",function(){ +}); +doc=_16.document; +doc.write(""); +doc.close(); +_11=doc.body; +} +var _17; +if(_1.isIE){ +var div=doc.createElement("div"); +div.innerHTML=""); + doc.close(); + var secondWindow = firstWindow[0]; + firstWindow.__defineGetter__(0,function(){}); + firstWindow.__defineGetter__("protectedFrame",function(){}); + doc = secondWindow.document; + doc.write(""); + doc.close(); + frameContainer = doc.body; + } + var frame; + if(dojo.isIE){ + var div = doc.createElement("div"); + div.innerHTML = '"); +_25=document.getElementById("dj_vb_eval_frame"); +} +_25.style.display="none"; +var doc=_25.contentWindow.document; +_3.lang.lettableWin=_25.contentWindow; +doc.write(""+""+"vb-eval"); +doc.close(); +}else{ +throw new Error("This browser does not support getters and setters"); +} +} +_3.lang.ReadOnlyProxy=_3.lang.makeObservable(function(obj,i){ +return obj[i]; +},function(obj,i,_26){ +}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/observable.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/observable.js.uncompressed.js new file mode 100644 index 00000000..e2373dbe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/observable.js.uncompressed.js @@ -0,0 +1,262 @@ +// wrapped by build app +define("dojox/lang/observable", ["dijit","dojo","dojox"], function(dijit,dojo,dojox){ +dojo.provide("dojox.lang.observable"); +// Used to create a wrapper object with monitored reads and writes +// +dojo.experimental("dojox.lang.observable"); +// IMPORTANT DISCLAIMER: +// This is experimental and based on hideous hacks. +// There are severe limitations on the ability of wrapper objects: +// Only properties that have vbscript-legal names are accessible (similar to JavaScript, but they can't start with an underscore). +// The wrapper objects are not expando in IE, because they are built +// from VBScript objects. This means you can't add new properties after an object is created. +// The wrapper objects can not be used a prototype for other objects. +// Only properties with primitive values can be wrapped. +// This has performance implications as well. +dojox.lang.observable = function(/*Object*/wrapped,/*function*/onRead,/*function*/onWrite,/*function*/onInvoke){ + // summary: + // Creates a wrapper object, which can be observed. The wrapper object + // is a proxy to the wrapped object. If you will be making multiple wrapper + // objects with the same set of listeners, it is recommended that you + // use makeObservable, as it is more memory efficient. + // wrapped: + // The object to be wrapped and monitored for property access and modification + // onRead: + // See dojox.lang.makeObservable.onRead + // onWrite: + // See dojox.lang.makeObservable.onWrite + // onInvoke: + // See dojox.lang.makeObservable.onInvoke + + return dojox.lang.makeObservable(onRead,onWrite,onInvoke)(wrapped); +}; +dojox.lang.makeObservable = function(/*function*/onRead,/*function*/onWrite,/*function*/onInvoke,/*Object*/hiddenFunctions){ + + // summary: + // Creates and returns an observable creator function. All the objects that + // are created with the returned constructor will use the provided onRead and + // onWrite listeners. + // The created constructor should be called with a single argument, + // the object that will be wrapped to be observed. The constructor will + // return the wrapper object. + // onRead: + // This is called whenever one of the wrapper objects created + // from the constructor has a property that is accessed. onRead + // will be called with two arguments, the first being the wrapped object, + // and the second is the name of property that is being accessed. + // The value that onRead returns will be used as the value returned + // by the property access + // onWrite: + // This is called whenever one of the wrapper objects created + // from the constructor has a property that is modified. onWrite + // will be called with three arguments, the first being the wrapped object, + // the second is the name of property that is being modified, and the + // third is the value that is being set on the property. + // onInvoke: + // This is called when a method on the object is invoked. The first + // argument is the wrapper object, the second is the original wrapped object, + // the third is the method name, and the fourth is the arguments. + // + // hiddenFunctions: + // allows you to define functions that should be delegated + // but may not be enumerable on the wrapped objects, so they must be + // explicitly included + // example: + // The following could be used to create a wrapper that would + // prevent functions from being accessed on an object: + // | function onRead(obj,prop){ + // | return typeof obj[prop] == 'function' ? null : obj[prop]; + // | } + // | var observable = dojox.lang.makeObservable(onRead,onWrite); + // | var obj = {foo:1,bar:function(){}}; + // | obj = observable(obj); + // | obj.foo -> 1 + // | obj.bar -> null + + hiddenFunctions = hiddenFunctions || {}; + onInvoke = onInvoke || function(scope,obj,method,args){ + // default implementation for onInvoke, just passes the call through + return obj[method].apply(scope,args); + }; + function makeInvoker(scope,wrapped,i){ + return function(){ + // this is function used for all methods in the wrapper object + return onInvoke(scope,wrapped,i,arguments); + }; + } + + if(dojox.lang.lettableWin){ // create the vb class + var factory = dojox.lang.makeObservable; + factory.inc = (factory.inc || 0) + 1; + // create globals for the getters and setters so they can be accessed from the vbscript + var getName = "gettable_"+factory.inc; + dojox.lang.lettableWin[getName] = onRead; + var setName = "settable_"+factory.inc; + dojox.lang.lettableWin[setName] = onWrite; + var cache = {}; + return function(wrapped){ + if(wrapped.__observable){ // if it already has an observable, use that + return wrapped.__observable; + } + if(wrapped.data__){ + throw new Error("Can wrap an object that is already wrapped"); + } + // create the class + var props = [], i, l; + for(i in hiddenFunctions){ + props.push(i); + } + var vbReservedWords = {type:1,event:1}; + // find the unique signature for the class so we can reuse it if possible + for(i in wrapped){ + if(i.match(/^[a-zA-Z][\w\$_]*$/) && !(i in hiddenFunctions) && !(i in vbReservedWords)){ //can only do properties with valid vb names/tokens and primitive values + props.push(i); + } + } + var signature = props.join(","); + var prop,clazz = cache[signature]; + if(!clazz){ + var tname = "dj_lettable_"+(factory.inc++); + var gtname = tname+"_dj_getter"; + var cParts = [ + "Class "+tname, + " Public data__" // this our reference to the original object + ]; + for(i=0, l=props.length; i"); + frame = document.getElementById("dj_vb_eval_frame"); + } + frame.style.display="none"; + var doc = frame.contentWindow.document; + dojox.lang.lettableWin = frame.contentWindow; + doc.write('' + + '' + + 'vb-eval'); + doc.close(); + }else{ + throw new Error("This browser does not support getters and setters"); + } +} + +dojox.lang.ReadOnlyProxy = +// summary: +// Provides a read only proxy to another object, this can be +// very useful in object-capability systems +// example: +// | var obj = {foo:"bar"}; +// | var readonlyObj = dojox.lang.ReadOnlyProxy(obj); +// | readonlyObj.foo = "test" // throws an error +// | obj.foo = "new bar"; +// | readonlyObj.foo -> returns "new bar", always reflects the current value of the original (it is not just a copy) +dojox.lang.makeObservable(function(obj,i){ + return obj[i]; + },function(obj,i,value){ + // just ignore, exceptions don't seem to propagate through the VB stack. +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Decorator.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Decorator.js new file mode 100644 index 00000000..28320e92 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Decorator.js @@ -0,0 +1,17 @@ +//>>built +define("dojox/lang/oo/Decorator",["dijit","dojo","dojox"],function(_1,_2,_3){ +_2.provide("dojox.lang.oo.Decorator"); +(function(){ +var oo=_3.lang.oo,D=oo.Decorator=function(_4,_5){ +this.value=_4; +this.decorator=typeof _5=="object"?function(){ +return _5.exec.apply(_5,arguments); +}:_5; +}; +oo.makeDecorator=function(_6){ +return function(_7){ +return new D(_7,_6); +}; +}; +})(); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Decorator.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Decorator.js.uncompressed.js new file mode 100644 index 00000000..61ee9715 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Decorator.js.uncompressed.js @@ -0,0 +1,40 @@ +// wrapped by build app +define("dojox/lang/oo/Decorator", ["dijit","dojo","dojox"], function(dijit,dojo,dojox){ +dojo.provide("dojox.lang.oo.Decorator"); + +(function(){ + var oo = dojox.lang.oo, + + D = oo.Decorator = function(value, decorator){ + // summary: + // The base class for all decorators. + // description: + // This object holds an original function or another decorator + // object, and implements a special mixin algorithm to be used + // by dojox.lang.oo.mixin. + // value: Object + // a payload to be processed by the decorator. + // decorator: Function|Object + // a function to handle the custom assignment, or an object with exec() + // method. The signature is: + // decorator(/*String*/ name, /*Function*/ newValue, /*Function*/ oldValue). + this.value = value; + this.decorator = typeof decorator == "object" ? + function(){ return decorator.exec.apply(decorator, arguments); } : decorator; + }; + + oo.makeDecorator = function(decorator){ + // summary: + // creates new custom decorator creator + // decorator: Function|Object + // a function to handle the custom assignment, + // or an object with exec() method + // returns: Function + // new decorator constructor + return function(value){ + return new D(value, decorator); + }; + }; +})(); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Filter.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Filter.js new file mode 100644 index 00000000..619f3fe2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Filter.js @@ -0,0 +1,20 @@ +//>>built +define("dojox/lang/oo/Filter",["dijit","dojo","dojox"],function(_1,_2,_3){ +_2.provide("dojox.lang.oo.Filter"); +(function(){ +var oo=_3.lang.oo,F=oo.Filter=function(_4,_5){ +this.bag=_4; +this.filter=typeof _5=="object"?function(){ +return _5.exec.apply(_5,arguments); +}:_5; +},_6=function(_7){ +this.map=_7; +}; +_6.prototype.exec=function(_8){ +return this.map.hasOwnProperty(_8)?this.map[_8]:_8; +}; +oo.filter=function(_9,_a){ +return new F(_9,new _6(_a)); +}; +})(); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Filter.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Filter.js.uncompressed.js new file mode 100644 index 00000000..a1566098 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/Filter.js.uncompressed.js @@ -0,0 +1,48 @@ +// wrapped by build app +define("dojox/lang/oo/Filter", ["dijit","dojo","dojox"], function(dijit,dojo,dojox){ +dojo.provide("dojox.lang.oo.Filter"); + +(function(){ + var oo = dojox.lang.oo, + + F = oo.Filter = function(bag, filter){ + // summary: + // Filter to control mixing in objects by skipping + // properties and renaming them. + // description: + // This object is used as a holder of an original object + // (whose properties are to be copied), and a filter + // function used while copying by dojox.lang.oo.mixin. + // bag: Object + // object to be filtered + // filter: Function|Object + // a function to handle the name filtering, + // or an object with exec() method + this.bag = bag; + this.filter = typeof filter == "object" ? + function(){ return filter.exec.apply(filter, arguments); } : filter; + }, + + // the default map-based filter object + MapFilter = function(map){ + this.map = map; + }; + + MapFilter.prototype.exec = function(name){ + return this.map.hasOwnProperty(name) ? this.map[name] : name; + }; + + oo.filter = function(bag, map){ + // summary: + // creates a simple filter object + // bag: Object + // object to be filtered + // map: Object + // the dictionary for renaming/removing while copying + // returns: + // new dojox.lang.oo.Filter object + return new F(bag, new MapFilter(map)); + }; +})(); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/aop.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/aop.js new file mode 100644 index 00000000..249bec0a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/aop.js @@ -0,0 +1,47 @@ +//>>built +define("dojox/lang/oo/aop",["dijit","dojo","dojox","dojo/require!dojox/lang/oo/Decorator,dojox/lang/oo/general"],function(_1,_2,_3){ +_2.provide("dojox.lang.oo.aop"); +_2.require("dojox.lang.oo.Decorator"); +_2.require("dojox.lang.oo.general"); +(function(){ +var oo=_3.lang.oo,md=oo.makeDecorator,_4=oo.general,_5=oo.aop,_6=_2.isFunction; +_5.before=_4.before; +_5.around=_4.wrap; +_5.afterReturning=md(function(_7,_8,_9){ +return _6(_9)?function(){ +var _a=_9.apply(this,arguments); +_8.call(this,_a); +return _a; +}:function(){ +_8.call(this); +}; +}); +_5.afterThrowing=md(function(_b,_c,_d){ +return _6(_d)?function(){ +var _e; +try{ +_e=_d.apply(this,arguments); +} +catch(e){ +_c.call(this,e); +throw e; +} +return _e; +}:_d; +}); +_5.after=md(function(_f,_10,_11){ +return _6(_11)?function(){ +var ret; +try{ +ret=_11.apply(this,arguments); +} +finally{ +_10.call(this); +} +return ret; +}:function(){ +_10.call(this); +}; +}); +})(); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/aop.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/aop.js.uncompressed.js new file mode 100644 index 00000000..8da3d677 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/aop.js.uncompressed.js @@ -0,0 +1,84 @@ +// wrapped by build app +define("dojox/lang/oo/aop", ["dijit","dojo","dojox","dojo/require!dojox/lang/oo/Decorator,dojox/lang/oo/general"], function(dijit,dojo,dojox){ +dojo.provide("dojox.lang.oo.aop"); + +dojo.require("dojox.lang.oo.Decorator"); +dojo.require("dojox.lang.oo.general"); + +(function(){ + var oo = dojox.lang.oo, md = oo.makeDecorator, oog = oo.general, ooa = oo.aop, + isF = dojo.isFunction; + + // five decorators implementing light-weight AOP weaving + + // reuse existing decorators + ooa.before = oog.before; + ooa.around = oog.wrap; + + /*===== + ooa.before = md(function(name, newValue, oldValue){ + // summary: + // creates a "before" advise, by calling new function + // before the old one + + // dummy body + }); + + ooa.around = md(function(name, newValue, oldValue){ + // summary: + // creates an "around" advise, + // the previous value is passed as a first argument and can be null, + // arguments are passed as a second argument + + // dummy body + }); + =====*/ + + + ooa.afterReturning = md(function(name, newValue, oldValue){ + // summary: + // creates an "afterReturning" advise, + // the returned value is passed as the only argument + return isF(oldValue) ? + function(){ + var ret = oldValue.apply(this, arguments); + newValue.call(this, ret); + return ret; + } : function(){ newValue.call(this); }; + }); + + ooa.afterThrowing = md(function(name, newValue, oldValue){ + // summary: + // creates an "afterThrowing" advise, + // the exception is passed as the only argument + return isF(oldValue) ? + function(){ + var ret; + try{ + ret = oldValue.apply(this, arguments); + }catch(e){ + newValue.call(this, e); + throw e; + } + return ret; + } : oldValue; + }); + + ooa.after = md(function(name, newValue, oldValue){ + // summary: + // creates an "after" advise, + // it takes no arguments + return isF(oldValue) ? + function(){ + var ret; + try{ + ret = oldValue.apply(this, arguments); + }finally{ + newValue.call(this); + } + return ret; + } : function(){ newValue.call(this); } + }); +})(); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/general.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/general.js new file mode 100644 index 00000000..9362a3b2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/general.js @@ -0,0 +1,42 @@ +//>>built +define("dojox/lang/oo/general",["dijit","dojo","dojox","dojo/require!dojox/lang/oo/Decorator"],function(_1,_2,_3){ +_2.provide("dojox.lang.oo.general"); +_2.require("dojox.lang.oo.Decorator"); +(function(){ +var oo=_3.lang.oo,md=oo.makeDecorator,_4=oo.general,_5=_2.isFunction; +_4.augment=md(function(_6,_7,_8){ +return typeof _8=="undefined"?_7:_8; +}); +_4.override=md(function(_9,_a,_b){ +return typeof _b!="undefined"?_a:_b; +}); +_4.shuffle=md(function(_c,_d,_e){ +return _5(_e)?function(){ +return _e.apply(this,_d.apply(this,arguments)); +}:_e; +}); +_4.wrap=md(function(_f,_10,_11){ +return function(){ +return _10.call(this,_11,arguments); +}; +}); +_4.tap=md(function(_12,_13,_14){ +return function(){ +_13.apply(this,arguments); +return this; +}; +}); +_4.before=md(function(_15,_16,_17){ +return _5(_17)?function(){ +_16.apply(this,arguments); +return _17.apply(this,arguments); +}:_16; +}); +_4.after=md(function(_18,_19,_1a){ +return _5(_1a)?function(){ +_1a.apply(this,arguments); +return _19.apply(this,arguments); +}:_19; +}); +})(); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/general.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/general.js.uncompressed.js new file mode 100644 index 00000000..8eef7165 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/general.js.uncompressed.js @@ -0,0 +1,69 @@ +// wrapped by build app +define("dojox/lang/oo/general", ["dijit","dojo","dojox","dojo/require!dojox/lang/oo/Decorator"], function(dijit,dojo,dojox){ +dojo.provide("dojox.lang.oo.general"); + +dojo.require("dojox.lang.oo.Decorator"); + +(function(){ + var oo = dojox.lang.oo, md = oo.makeDecorator, oog = oo.general, + isF = dojo.isFunction; + + // generally useful decorators + + oog.augment = md(function(name, newValue, oldValue){ + // summary: + // add property, if it was not defined before + return typeof oldValue == "undefined" ? newValue : oldValue; + }); + + oog.override = md(function(name, newValue, oldValue){ + // summary: + // override property only if it was already present + return typeof oldValue != "undefined" ? newValue : oldValue; + }); + + oog.shuffle = md(function(name, newValue, oldValue){ + // summary: + // replaces arguments for an old method + return isF(oldValue) ? + function(){ + return oldValue.apply(this, newValue.apply(this, arguments)); + } : oldValue; + }); + + oog.wrap = md(function(name, newValue, oldValue){ + // summary: + // wraps the old values with a supplied function + return function(){ return newValue.call(this, oldValue, arguments); }; + }); + + oog.tap = md(function(name, newValue, oldValue){ + // summary: + // always returns "this" ignoring the actual return + return function(){ newValue.apply(this, arguments); return this; }; + }); + + oog.before = md(function(name, newValue, oldValue){ + // summary: + // creates a chain of calls where the new method is called + // before the old method + return isF(oldValue) ? + function(){ + newValue.apply(this, arguments); + return oldValue.apply(this, arguments); + } : newValue; + }); + + oog.after = md(function(name, newValue, oldValue){ + // summary: + // creates a chain of calls where the new method is called + // after the old method + return isF(oldValue) ? + function(){ + oldValue.apply(this, arguments); + return newValue.apply(this, arguments); + } : newValue; + }); +})(); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/mixin.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/mixin.js new file mode 100644 index 00000000..a345caf4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/mixin.js @@ -0,0 +1,76 @@ +//>>built +define("dojox/lang/oo/mixin",["dijit","dojo","dojox","dojo/require!dojox/lang/oo/Filter,dojox/lang/oo/Decorator"],function(_1,_2,_3){ +_2.provide("dojox.lang.oo.mixin"); +_2.experimental("dojox.lang.oo.mixin"); +_2.require("dojox.lang.oo.Filter"); +_2.require("dojox.lang.oo.Decorator"); +(function(){ +var oo=_3.lang.oo,_4=oo.Filter,_5=oo.Decorator,_6={},_7=function(_8){ +return _8; +},_9=function(_a,_b,_c){ +return _b; +},_d=function(_e,_f,_10,_11){ +_e[_f]=_10; +},_12={},_13=_2._extraNames,_14=_13.length,_15=oo.applyDecorator=function(_16,_17,_18,_19){ +if(_18 instanceof _5){ +var d=_18.decorator; +_18=_15(_16,_17,_18.value,_19); +return d(_17,_18,_19); +} +return _16(_17,_18,_19); +}; +oo.__mixin=function(_1a,_1b,_1c,_1d,_1e){ +var _1f,_20,_21,_22,_23,i; +for(_1f in _1b){ +_21=_1b[_1f]; +if(!(_1f in _6)||_6[_1f]!==_21){ +_20=_1d(_1f,_1a,_1b,_21); +if(_20&&(!(_20 in _1a)||!(_20 in _6)||_6[_20]!==_21)){ +_23=_1a[_20]; +_22=_15(_1c,_20,_21,_23); +if(_23!==_22){ +_1e(_1a,_20,_22,_23); +} +} +} +} +if(_14){ +for(i=0;i<_14;++i){ +_1f=_13[i]; +_21=_1b[_1f]; +if(!(_1f in _6)||_6[_1f]!==_21){ +_20=_1d(_1f,_1a,_1b,_21); +if(_20&&(!(_20 in _1a)||!(_20 in _6)||_6[_20]!==_21)){ +_23=_1a[_20]; +_22=_15(_1c,_20,_21,_23); +if(_23!==_22){ +_1e(_1a,_20,_22,_23); +} +} +} +} +} +return _1a; +}; +oo.mixin=function(_24,_25){ +var _26,_27,i=1,l=arguments.length; +for(;i>built +define("dojox/lang/oo/rearrange",["dijit","dojo","dojox"],function(_1,_2,_3){ +_2.provide("dojox.lang.oo.rearrange"); +(function(){ +var _4=_2._extraNames,_5=_4.length,_6=Object.prototype.toString,_7={}; +_3.lang.oo.rearrange=function(_8,_9){ +var _a,_b,_c,i,t; +for(_a in _9){ +_b=_9[_a]; +if(!_b||_6.call(_b)=="[object String]"){ +_c=_8[_a]; +if(!(_a in _7)||_7[_a]!==_c){ +if(!(delete _8[_a])){ +_8[_a]=undefined; +} +if(_b){ +_8[_b]=_c; +} +} +} +} +if(_5){ +for(i=0;i<_5;++i){ +_a=_4[i]; +_b=_9[_a]; +if(!_b||_6.call(_b)=="[object String]"){ +_c=_8[_a]; +if(!(_a in _7)||_7[_a]!==_c){ +if(!(delete _8[_a])){ +_8[_a]=undefined; +} +if(_b){ +_8[_b]=_c; +} +} +} +} +} +return _8; +}; +})(); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/rearrange.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/rearrange.js.uncompressed.js new file mode 100644 index 00000000..c4fd728c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/oo/rearrange.js.uncompressed.js @@ -0,0 +1,68 @@ +// wrapped by build app +define("dojox/lang/oo/rearrange", ["dijit","dojo","dojox"], function(dijit,dojo,dojox){ +dojo.provide("dojox.lang.oo.rearrange"); + +(function(){ + var extraNames = dojo._extraNames, extraLen = extraNames.length, + opts = Object.prototype.toString, empty = {}; + + dojox.lang.oo.rearrange = function(bag, map){ + // summary: + // Process properties in place by removing and renaming them. + // description: + // Properties of an object are to be renamed or removed specified + // by "map" argument. Only own properties of "map" are processed. + // example: + // | oo.rearrange(bag, { + // | abc: "def", // rename "abc" attribute to "def" + // | ghi: null // remove/hide "ghi" attribute + // | }); + // bag: Object + // the object to be processed + // map: Object + // the dictionary for renaming (false value indicates removal of the named property) + // returns: Object + // the original object + + var name, newName, prop, i, t; + + for(name in map){ + newName = map[name]; + if(!newName || opts.call(newName) == "[object String]"){ + prop = bag[name]; + if(!(name in empty) || empty[name] !== prop){ + if(!(delete bag[name])){ + // can't delete => hide it + bag[name] = undefined; + } + if(newName){ + bag[newName] = prop; + } + } + } + } + if(extraLen){ + for(i = 0; i < extraLen; ++i){ + name = extraNames[i]; + // repeating the body above + newName = map[name]; + if(!newName || opts.call(newName) == "[object String]"){ + prop = bag[name]; + if(!(name in empty) || empty[name] !== prop){ + if(!(delete bag[name])){ + // can't delete => hide it + bag[name] = undefined; + } + if(newName){ + bag[newName] = prop; + } + } + } + } + } + + return bag; // Object + }; +})(); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/typed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/typed.js new file mode 100644 index 00000000..1b6db6e0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/lang/typed.js @@ -0,0 +1,139 @@ +//>>built +define("dojox/lang/typed",["dijit","dojo","dojox","dojo/require!dojox/json/schema"],function(_1,_2,_3){ +(function(){ +var _4,_5=typeof _2!="undefined"; +if(_5){ +_2.provide("dojox.lang.typed"); +_2.require("dojox.json.schema"); +_4=_3.json.schema; +}else{ +if(typeof JSONSchema=="undefined"){ +throw new Error("Dojo or JSON Schema library must be present"); +} +_4=JSONSchema; +} +function _6(_7,_8){ +var _9=function(){ +var _a=_8(); +if(_a&&_a.parameters){ +var _b=_a.parameters; +for(var j=0;j<_b.length;j++){ +arguments[j]=_c(arguments[j],_b[j],j.toString()); +} +if(_a.additionalParameters){ +for(;j>built +define("dojox/lang/utils",["..","dojo/_base/lang"],function(_1,_2){ +var du=_2.getObject("lang.utils",true,_1); +var _3={},_4=Object.prototype.toString; +var _5=function(o){ +if(o){ +switch(_4.call(o)){ +case "[object Array]": +return o.slice(0); +case "[object Object]": +return _2.delegate(o); +} +} +return o; +}; +_2.mixin(du,{coerceType:function(_6,_7){ +switch(typeof _6){ +case "number": +return Number(eval("("+_7+")")); +case "string": +return String(_7); +case "boolean": +return Boolean(eval("("+_7+")")); +} +return eval("("+_7+")"); +},updateWithObject:function(_8,_9,_a){ +if(!_9){ +return _8; +} +for(var x in _8){ +if(x in _9&&!(x in _3)){ +var t=_8[x]; +if(t&&typeof t=="object"){ +du.updateWithObject(t,_9[x],_a); +}else{ +_8[x]=_a?du.coerceType(t,_9[x]):_5(_9[x]); +} +} +} +return _8; +},updateWithPattern:function(_b,_c,_d,_e){ +if(!_c||!_d){ +return _b; +} +for(var x in _d){ +if(x in _c&&!(x in _3)){ +_b[x]=_e?du.coerceType(_d[x],_c[x]):_5(_c[x]); +} +} +return _b; +},merge:function(_f,_10){ +if(_10){ +var _11=_4.call(_f),_12=_4.call(_10),t,i,l,m; +switch(_12){ +case "[object Array]": +if(_12==_11){ +t=new Array(Math.max(_f.length,_10.length)); +for(i=0,l=t.length;i>built +define("dojox/layout/BorderContainer",["dijit","dojo","dojox"],function(_1,_2,_3){ +_2.provide("dojox.layout.BorderContainer"); +console.error("dojox.layout.BorderContainer moved to dijit.layout.BorderContainer"); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/BorderContainer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/BorderContainer.js.uncompressed.js new file mode 100644 index 00000000..8f6c628e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/BorderContainer.js.uncompressed.js @@ -0,0 +1,6 @@ +// wrapped by build app +define("dojox/layout/BorderContainer", ["dijit","dojo","dojox"], function(dijit,dojo,dojox){ +dojo.provide("dojox.layout.BorderContainer"); + +console.error("dojox.layout.BorderContainer moved to dijit.layout.BorderContainer"); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ContentPane.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ContentPane.js new file mode 100644 index 00000000..5d4a8b63 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ContentPane.js @@ -0,0 +1,26 @@ +//>>built +define("dojox/layout/ContentPane",["dojo/_base/lang","dojo/_base/xhr","dijit/layout/ContentPane","dojox/html/_base","dojo/_base/declare"],function(_1,_2,_3,_4,_5){ +return _5("dojox.layout.ContentPane",_3,{adjustPaths:false,cleanContent:false,renderStyles:false,executeScripts:true,scriptHasHooks:false,ioMethod:_2.get,ioArgs:{},onExecError:function(e){ +},_setContent:function(_6){ +var _7=this._contentSetter; +if(!(_7&&_7 instanceof _4._ContentSetter)){ +_7=this._contentSetter=new _4._ContentSetter({node:this.containerNode,_onError:_1.hitch(this,this._onError),onContentError:_1.hitch(this,function(e){ +var _8=this.onContentError(e); +try{ +this.containerNode.innerHTML=_8; +} +catch(e){ +console.error("Fatal "+this.id+" could not change content due to "+e.message,e); +} +})}); +} +this._contentSetterParams={adjustPaths:Boolean(this.adjustPaths&&(this.href||this.referencePath)),referencePath:this.href||this.referencePath,renderStyles:this.renderStyles,executeScripts:this.executeScripts,scriptHasHooks:this.scriptHasHooks,scriptHookReplacement:"dijit.byId('"+this.id+"')"}; +return this.inherited("_setContent",arguments); +},destroy:function(){ +var _9=this._contentSetter; +if(_9){ +_9.tearDown(); +} +this.inherited(arguments); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ContentPane.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ContentPane.js.uncompressed.js new file mode 100644 index 00000000..de1ec2ab --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/layout/ContentPane.js.uncompressed.js @@ -0,0 +1,102 @@ +define("dojox/layout/ContentPane", [ + "dojo/_base/lang", + "dojo/_base/xhr", + "dijit/layout/ContentPane", + "dojox/html/_base", + "dojo/_base/declare" +], function (lang, xhrUtil, ContentPane, htmlUtil, declare) { + +return declare("dojox.layout.ContentPane", ContentPane, { + // summary: + // An extended version of dijit.layout.ContentPane. + // Supports infile scripts and external ones declared by ` + // | + // + // Using the script tag as above is the recommended way to load the + // deviceTheme. Trying to load it using the AMD loader can lead to styles + // being applied too late, because the loading of the theme files would + // be performed asynchronously by the browser, so you could not assume + // that the loading has been completed when your widgets are initialized. + // However, loading deviceTheme using the script tag has the drawback that + // deviceTheme.js cannot be included in a build. + // + // You can also pass an additional query parameter string: + // theme={theme id} to force a specific theme through the browser + // URL input. The available theme ids are Android, Holodark (theme introduced in Android 3.0), + // BlackBerry, Custom, iPhone, and iPad. The theme names are case-sensitive. If the given + // id does not match, the iPhone theme is used. + // + // | http://your.server.com/yourapp.html // automatic detection + // | http://your.server.com/yourapp.html?theme=Android // forces Android theme + // | http://your.server.com/yourapp.html?theme=Holodark // forces Holodark theme + // | http://your.server.com/yourapp.html?theme=BlackBerry // forces Blackberry theme + // | http://your.server.com/yourapp.html?theme=Custom // forces Custom theme + // | http://your.server.com/yourapp.html?theme=iPhone // forces iPhone theme + // | http://your.server.com/yourapp.html?theme=iPad // forces iPad theme + // | http://your.server.com/yourapp.html?theme=ios7 // forces iOS 7 theme + // + // To simulate a particular device from the application code, the user agent + // can be forced by setting dojoConfig.mblUserAgent as follows: + // + // | + // | + // + // By default, an all-in-one theme file (e.g. themes/iphone/iphone.css) is + // loaded. The all-in-one theme files contain style sheets for all the + // dojox/mobile widgets regardless of whether they are used in your + // application or not. + // + // If you want to choose what theme files to load, you can specify them + // via dojoConfig or data-dojo-config as shown in the following example: + // + // | + // | + // + // In the case of this example, if iphone is detected, for example, the + // following files will be loaded: + // + // | dojox/mobile/themes/iphone/base.css + // | dojox/mobile/themes/iphone/Button.css + // + // If you want to load style sheets for your own custom widgets, you can + // specify a package name along with a theme file name in an array. + // + // | ['base',['com.acme','MyWidget']] + // + // In this case, the following files will be loaded. + // + // | dojox/mobile/themes/iphone/base.css + // | com/acme/themes/iphone/MyWidget.css + // + // If you specify '@theme' as a theme file name, it will be replaced with + // the theme folder name (e.g. 'iphone'). For example, + // + // | ['@theme',['com.acme','MyWidget']] + // + // will load the following files: + // + // | dojox/mobile/themes/iphone/iphone.css + // | com/acme/themes/iphone/MyWidget.css + + if(!win){ + win = window; + win.doc = document; + win._no_dojo_dm = dm; + } + config = config || win.mblConfig || {}; + var scripts = win.doc.getElementsByTagName("script"); + for(var i = 0; i < scripts.length; i++){ + var n = scripts[i]; + var src = n.getAttribute("src") || ""; + if(src.match(/\/deviceTheme\.js/i)){ + config.baseUrl = src.replace("deviceTheme\.js", "../../dojo/"); + var conf = (n.getAttribute("data-dojo-config") || n.getAttribute("djConfig")); + if(conf){ + var obj = eval("({ " + conf + " })"); + for(var key in obj){ + config[key] = obj[key]; + } + } + break; + }else if(src.match(/\/dojo\.js/i)){ + config.baseUrl = src.replace("dojo\.js", ""); + break; + } + } + + this.loadCssFile = function(/*String*/file){ + // summary: + // Loads the given CSS file programmatically. + var link = win.doc.createElement("link"); + link.href = file; + link.type = "text/css"; + link.rel = "stylesheet"; + var head = win.doc.getElementsByTagName('head')[0]; + head.insertBefore(link, head.firstChild); + dm.loadedCssFiles.push(link); + }; + + this.toUrl = function(/*String*/path){ + // summary: + // A wrapper for require.toUrl to support non-dojo usage. + return require ? require.toUrl(path) : config.baseUrl + "../" + path; + }; + + this.setDm = function(/*Object*/_dm){ + // summary: + // Replaces the dojox/mobile object. + // description: + // When this module is loaded from a script tag, dm is a plain + // local object defined at the beginning of this module. + // common.js will replace the local dm object with the + // real dojox/mobile object through this method. + dm = _dm; + }; + + this.themeMap = config.themeMap || [ + // summary: + // A map of user-agents to theme files. + // description: + // The first array element is a regexp pattern that matches the + // userAgent string. + // + // The second array element is a theme folder name. + // + // The third array element is an array of css file paths to load. + // + // The matching is performed in the array order, and stops after the + // first match. + [ + "Holodark", + "holodark", + [] + ], + [ + "Android 3", + "holodark", + [] + ], + [ + "Android 4", + "holodark", + [] + ], + [ + "Android", + "android", + [] + ], + [ + "BlackBerry", + "blackberry", + [] + ], + [ + "BB10", + "blackberry", + [] + ], + [ + "ios7", + "ios7", + [] + ], + [ + "iPhone;.*OS 7_", + "ios7", + [] + ], + [ + "iPhone;.*OS 8_", + "ios7", + [] + ], + [ + "iPad;.*OS 7_", + "ios7", + [] + ], + [ + "iPad;.*OS 8_", + "ios7", + [] + ], + [ + "iPhone", + "iphone", + [] + ], + [ + "iPad", + "iphone", + [this.toUrl("dojox/mobile/themes/iphone/ipad.css")] + ], + [ + "WindowsPhone", + "windows", + [] + ], + [ + "Windows Phone", + "windows", + [] + ], + [ + "Trident", + "iphone", + [] + ], + [ + "Custom", + "custom", + [] + ], + [ + ".*", + "iphone", + [] + ] + ]; + + dm.loadedCssFiles = []; + this.loadDeviceTheme = function(/*String?*/userAgent){ + // summary: + // Loads a device-specific theme according to the user-agent + // string. + // description: + // This function is automatically called when this module is + // evaluated. + var t = config.mblThemeFiles || dm.themeFiles || ["@theme"]; + var i, j; + var m = this.themeMap; + var ua = userAgent || config.mblUserAgent || (location.search.match(/theme=(\w+)/) ? RegExp.$1 : navigator.userAgent); + for(i = 0; i < m.length; i++){ + if(ua.match(new RegExp(m[i][0]))){ + var theme = m[i][1]; + if(theme == "windows" && config.mblDisableWindowsTheme){ + continue; + } + var cls = win.doc.documentElement.className; + cls = cls.replace(new RegExp(" *" + dm.currentTheme + "_theme"), "") + " " + theme + "_theme"; + win.doc.documentElement.className = cls; + dm.currentTheme = theme; + var files = [].concat(m[i][2]); + for(j = 0; j < t.length; j++){ + var isArray = (t[j] instanceof Array || typeof t[j] == "array"); + var path; + if(!isArray && t[j].indexOf('/') !== -1){ + path = t[j]; + }else{ + var pkg = isArray ? (t[j][0]||"").replace(/\./g, '/') : "dojox/mobile"; + var name = (isArray ? t[j][1] : t[j]).replace(/\./g, '/'); + var f = "themes/" + theme + "/" + + (name === "@theme" ? theme : name) + ".css"; + path = pkg + "/" + f; + } + files.unshift(this.toUrl(path)); + } + //remove old css files + for(var k = 0; k < dm.loadedCssFiles.length; k++){ + var n = dm.loadedCssFiles[k]; + n.parentNode.removeChild(n); + } + dm.loadedCssFiles = []; + for(j = 0; j < files.length; j++){ + // dojox.mobile mirroring support + var cssFilePath = files[j].toString(); + if(config["dojo-bidi"] == true && cssFilePath.indexOf("_rtl") == -1){ + var rtlCssList = "android.css blackberry.css custom.css iphone.css holodark.css base.css Carousel.css ComboBox.css IconContainer.css IconMenu.css ListItem.css RoundRectCategory.css SpinWheel.css Switch.css TabBar.css ToggleButton.css ToolBarButton.css ProgressIndicator.css Accordion.css GridLayout.css FormLayout.css"; + var cssName = cssFilePath.substr(cssFilePath.lastIndexOf('/') + 1); + if(rtlCssList.indexOf(cssName) != -1){ + this.loadCssFile(cssFilePath.replace(".css","_rtl.css")); + } + } + this.loadCssFile(files[j].toString()); + } + + if(userAgent && dm.loadCompatCssFiles){ + dm.loadCompatCssFiles(); + } + break; + } + } + }; + }; + + // Singleton. (TODO: can we replace DeviceTheme class and singleton w/a simple hash of functions?) + var deviceTheme = new DeviceTheme(); + + deviceTheme.loadDeviceTheme(); + window.deviceTheme = dm.deviceTheme = deviceTheme; + + return deviceTheme; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/ContentTypeMap.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/ContentTypeMap.js new file mode 100644 index 00000000..e0afbfc4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/ContentTypeMap.js @@ -0,0 +1,13 @@ +//>>built +define("dojox/mobile/dh/ContentTypeMap",["dojo/_base/lang"],function(_1){ +var o={}; +_1.setObject("dojox.mobile.dh.ContentTypeMap",o); +o.map={"html":"dojox/mobile/dh/HtmlContentHandler","json":"dojox/mobile/dh/JsonContentHandler"}; +o.add=function(_2,_3){ +this.map[_2]=_3; +}; +o.getHandlerClass=function(_4){ +return this.map[_4]; +}; +return o; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/ContentTypeMap.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/ContentTypeMap.js.uncompressed.js new file mode 100644 index 00000000..09f72e07 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/ContentTypeMap.js.uncompressed.js @@ -0,0 +1,33 @@ +define("dojox/mobile/dh/ContentTypeMap", [ + "dojo/_base/lang" +], function(lang){ + + // module: + // dojox/mobile/dh/ContentTypeMap + + var o = { + // summary: + // A component that provides a map for determining the content handler + // class from a content-type. + }; + lang.setObject("dojox.mobile.dh.ContentTypeMap", o); + + o.map = { + "html": "dojox/mobile/dh/HtmlContentHandler", + "json": "dojox/mobile/dh/JsonContentHandler" + }; + + o.add = function(/*String*/ contentType, /*String*/ handlerClass){ + // summary: + // Adds a handler class for the given content type. + this.map[contentType] = handlerClass; + }; + + o.getHandlerClass = function(/*String*/ contentType){ + // summary: + // Returns the handler class for the given content type. + return this.map[contentType]; + }; + + return o; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/DataHandler.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/DataHandler.js new file mode 100644 index 00000000..8b3204ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/DataHandler.js @@ -0,0 +1,17 @@ +//>>built +define("dojox/mobile/dh/DataHandler",["dojo/_base/declare","dojo/_base/lang","dojo/_base/Deferred","./ContentTypeMap"],function(_1,_2,_3,_4){ +return _1("dojox.mobile.dh.DataHandler",null,{ds:null,target:null,refNode:null,constructor:function(ds,_5,_6){ +this.ds=ds; +this.target=_5; +this.refNode=_6; +},processData:function(_7,_8){ +var ch=_4.getHandlerClass(_7); +require([ch],_2.hitch(this,function(_9){ +_3.when(this.ds.getData(),_2.hitch(this,function(){ +_3.when(new _9().parse(this.ds.text,this.target,this.refNode),function(id){ +_8(id); +}); +})); +})); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/DataHandler.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/DataHandler.js.uncompressed.js new file mode 100644 index 00000000..7b83a963 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/DataHandler.js.uncompressed.js @@ -0,0 +1,57 @@ +define("dojox/mobile/dh/DataHandler", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/_base/Deferred", + "./ContentTypeMap" +], function(declare, lang, Deferred, ContentTypeMap){ + + // module: + // dojox/mobile/dh/DataHandler + + return declare("dojox.mobile.dh.DataHandler", null, { + // summary: + // A component that provides an interface between data and handlers. + // description: + // This module fetches data through DataSource and calls a + // ContentHandler to parse the content data and create a new view. + + // ds: Object + // A DataSource instance. + ds: null, + + // target: DomNode + // A DOM node under which a new view is created. + target: null, + + // refNode: DomNode + // An optional reference DOM node before which a new view is created. + refNode: null, + + constructor: function(/*DataSource*/ ds, /*DomNode*/ target, /*DomNode?*/ refNode){ + // summary: + // Creates a new instance of the class. + this.ds = ds; + this.target = target; + this.refNode = refNode; + }, + + processData: function(/*String*/ contentType, /*Function*/ callback){ + // summary: + // Fetches data through DataSource and passes it to a content + // handler. + // contentType: + // The type of the content. (ex. "html") + // It is used to determine what content handler to use. + // callback: + // A function to be called after creating a new view. + var ch = ContentTypeMap.getHandlerClass(contentType); + require([ch], lang.hitch(this, function(ContentHandler){ + Deferred.when(this.ds.getData(), lang.hitch(this, function(){ + Deferred.when(new ContentHandler().parse(this.ds.text, this.target, this.refNode), function(id){ + callback(id); + }); + })) + })); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlContentHandler.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlContentHandler.js new file mode 100644 index 00000000..26f18a68 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlContentHandler.js @@ -0,0 +1,25 @@ +//>>built +define("dojox/mobile/dh/HtmlContentHandler",["dojo/_base/kernel","dojo/_base/array","dojo/_base/declare","dojo/_base/Deferred","dojo/dom-class","dojo/dom-construct","dijit/registry","../lazyLoadUtils"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +return _3("dojox.mobile.dh.HtmlContentHandler",null,{parse:function(_9,_a,_b){ +if(this.execScript){ +_9=this.execScript(_9); +} +var _c=_6.create("div",{innerHTML:_9,style:{visibility:"hidden"}}); +_a.insertBefore(_c,_b); +return _4.when(_8.instantiateLazyWidgets(_c),function(){ +var _d,i,_e; +for(i=0,_e=_c.childNodes.length;i<_e;i++){ +var n=_c.firstChild; +if(!_d&&n.nodeType===1){ +_d=_7.byNode(n); +} +_a.insertBefore(_c.firstChild,_b); +} +_a.removeChild(_c); +if(!_d||!_5.contains(_d.domNode,"mblView")){ +return null; +} +return _d.id; +}); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlContentHandler.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlContentHandler.js.uncompressed.js new file mode 100644 index 00000000..02541c2d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlContentHandler.js.uncompressed.js @@ -0,0 +1,61 @@ +define("dojox/mobile/dh/HtmlContentHandler", [ + "dojo/_base/kernel", + "dojo/_base/array", + "dojo/_base/declare", + "dojo/_base/Deferred", + "dojo/dom-class", + "dojo/dom-construct", + "dijit/registry", + "../lazyLoadUtils" +], function(dojo, array, declare, Deferred, domClass, domConstruct, registry, lazyLoadUtils){ + + // module: + // dojox/mobile/dh/HtmlContentHandler + + return declare("dojox.mobile.dh.HtmlContentHandler", null, { + // summary: + // A HTML content handler. + // description: + // This module is a content handler that creates a view from HTML + // data. If widgets used in the HTML data are not available, they + // are loaded automatically before instantiation. + + parse: function(/*String*/ content, /*DomNode*/ target, /*DomNode?*/ refNode){ + // summary: + // Parses the given data and creates a new view at the given position. + // content: + // Content data for a new view. + // target: + // A DOM node under which a new view is created. + // refNode: + // An optional reference DOM node before which a new view is created. + if(this.execScript){ + content = this.execScript(content); + } + var container = domConstruct.create("div", { + innerHTML: content, + style: {visibility: "hidden"} + }); + target.insertBefore(container, refNode); + + return Deferred.when(lazyLoadUtils.instantiateLazyWidgets(container), function(){ + // allows multiple root nodes in the fragment, + // but transition will be performed to the 1st view. + var view, i, len; + for(i = 0, len = container.childNodes.length; i < len; i++){ + var n = container.firstChild; + if(!view && n.nodeType === 1){ + view = registry.byNode(n); + } + target.insertBefore(container.firstChild, refNode); // reparent + } + target.removeChild(container); + if(!view || !domClass.contains(view.domNode, "mblView")){ + console.log("HtmlContentHandler.parse: invalid view content"); + return null; + } + return view.id; + }); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlScriptContentHandler.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlScriptContentHandler.js new file mode 100644 index 00000000..f82b47c6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlScriptContentHandler.js @@ -0,0 +1,4 @@ +//>>built +define("dojox/mobile/dh/HtmlScriptContentHandler",["dojo/_base/declare","./HtmlContentHandler","../_ExecScriptMixin"],function(_1,_2,_3){ +return _1("dojox.mobile.dh.HtmlScriptContentHandler",[_2,_3],{}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlScriptContentHandler.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlScriptContentHandler.js.uncompressed.js new file mode 100644 index 00000000..9a64d094 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/HtmlScriptContentHandler.js.uncompressed.js @@ -0,0 +1,14 @@ +define("dojox/mobile/dh/HtmlScriptContentHandler", [ + "dojo/_base/declare", + "./HtmlContentHandler", + "../_ExecScriptMixin" +], function(declare, HtmlContentHandler, _ExecScriptMixin){ + + // module: + // dojox/mobile/dh/HtmlScriptContentHandler + + return declare("dojox.mobile.dh.HtmlScriptContentHandler", [HtmlContentHandler, _ExecScriptMixin], { + // summary: + // An HTML content handler that has script execution capability. + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/JsonContentHandler.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/JsonContentHandler.js new file mode 100644 index 00000000..22b813ef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/JsonContentHandler.js @@ -0,0 +1,129 @@ +//>>built +define("dojox/mobile/dh/JsonContentHandler",["dojo/_base/kernel","dojo/_base/array","dojo/_base/declare","dojo/_base/lang","dojo/_base/Deferred","dojo/json","dojo/dom-construct"],function(_1,_2,_3,_4,_5,_6,_7){ +return _3("dojox.mobile.dh.JsonContentHandler",null,{parse:function(_8,_9,_a){ +var _b,_c=_7.create("DIV"); +_9.insertBefore(_c,_a); +this._ws=[]; +this._req=[]; +var _d=_6.parse(_8); +return _5.when(this._loadPrereqs(_d),_4.hitch(this,function(){ +_b=this._instantiate(_d,_c); +_b.style.visibility="hidden"; +_2.forEach(this._ws,function(w){ +if(!w._started&&w.startup){ +w.startup(); +} +}); +this._ws=null; +return _b.id; +})); +},_loadPrereqs:function(_e){ +var d=new _5(); +var _f=this._collectRequires(_e); +if(_f.length===0){ +return true; +} +if(_1.require){ +_2.forEach(_f,function(c){ +_1["require"](c); +}); +return true; +}else{ +_f=_2.map(_f,function(s){ +return s.replace(/\./g,"/"); +}); +require(_f,function(){ +d.resolve(true); +}); +} +return d; +},_collectRequires:function(obj){ +var _10=obj["class"]; +for(var key in obj){ +if(key.charAt(0)=="@"||key==="children"){ +continue; +} +var cls=_10||key.replace(/:.*/,""); +this._req.push(cls); +if(!cls){ +continue; +} +var _11=_10?[obj]:(_4.isArray(obj[key])?obj[key]:[obj[key]]); +for(var i=0;i<_11.length;i++){ +if(!_10){ +this._collectRequires(_11[i]); +}else{ +if(_11[i].children){ +for(var j=0;j<_11[i].children.length;j++){ +this._collectRequires(_11[i].children[j]); +} +} +} +} +} +return this._req; +},_instantiate:function(obj,_12,_13){ +var _14; +var _15=obj["class"]; +for(var key in obj){ +if(key.charAt(0)=="@"||key==="children"){ +continue; +} +var cls=_4.getObject(_15||key.replace(/:.*/,"")); +if(!cls){ +continue; +} +var _16=cls.prototype,_17=_15?[obj]:(_4.isArray(obj[key])?obj[key]:[obj[key]]); +for(var i=0;i<_17.length;i++){ +var _18={}; +for(var _19 in _17[i]){ +if(_19.charAt(0)=="@"){ +var v=_17[i][_19]; +_19=_19.substring(1); +var t=typeof _16[_19]; +if(_4.isArray(_16[_19])){ +_18[_19]=v.split(/\s*,\s*/); +}else{ +if(t==="string"){ +_18[_19]=v; +}else{ +if(t==="number"){ +_18[_19]=v-0; +}else{ +if(t==="boolean"){ +_18[_19]=(v!=="false"); +}else{ +if(t==="object"){ +_18[_19]=_6.parse(v); +}else{ +if(t==="function"){ +_18[_19]=_4.getObject(v,false)||new Function(v); +} +} +} +} +} +} +} +} +_14=new cls(_18,_12); +if(_12){ +this._ws.push(_14); +} +if(_13){ +_14.placeAt(_13.containerNode||_13.domNode); +} +if(!_15){ +this._instantiate(_17[i],null,_14); +}else{ +if(_17[i].children){ +for(var j=0;j<_17[i].children.length;j++){ +this._instantiate(_17[i].children[j],null,_14); +} +} +} +} +} +return _14&&_14.domNode; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/JsonContentHandler.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/JsonContentHandler.js.uncompressed.js new file mode 100644 index 00000000..4c95fcb8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/JsonContentHandler.js.uncompressed.js @@ -0,0 +1,239 @@ +define("dojox/mobile/dh/JsonContentHandler", [ + "dojo/_base/kernel", + "dojo/_base/array", + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/_base/Deferred", + "dojo/json", + "dojo/dom-construct" +], function(dojo, array, declare, lang, Deferred, json, domConstruct){ + + // module: + // dojox/mobile/dh/JsonContentHandler + + return declare("dojox.mobile.dh.JsonContentHandler", null, { + // summary: + // A JSON content handler. + // description: + // This module is a content handler that creates a view from JSON + // data. If widgets used in the JSON data are not available, they + // are loaded automatically before instantiation. + // + // There are two formats as shown in the examples below. You can + // choose either of them. The v1.7 format can be more compact, but + // if you want multiple widgets at the same level, they must be in + // an array. So, you can have, for example, two consecutive + // RoundRectLists, but you cannot have, for example, + // RoundRectCategory, RoundRectList, RoundRectCategory, and + // RoundRectList, because they are keys in one JS object, which + // causes conflict. The v1.8 format has no such limitation. + // + // example: + // | // v1.7 format + // | { + // | "dojox.mobile.View": { + // | "@id": "view1", + // | "dojox.mobile.Heading": { + // | "@back": "Home", + // | "@moveTo": "home", + // | "@label": "view1.json" + // | }, + // | "dojox.mobile.EdgeToEdgeList": { + // | "dojox.mobile.ListItem": [{ + // | "@label": "Jack Coleman" + // | }, { + // | "@label": "James Evans" + // | }, { + // | "@label": "Jason Griffin" + // | }] + // | } + // | } + // | } + // | + // example: + // | // v1.8 format + // | { + // | "class": "dojox.mobile.View", + // | "@id": "view1", + // | "children": [ + // | + // | { + // | "class": "dojox.mobile.Heading", + // | "@back": "Home", + // | "@moveTo": "home", + // | "@label": "view1.json" + // | }, + // | + // | { + // | "class": "dojox.mobile.EdgeToEdgeList", + // | "children": [ + // | { + // | "class": "dojox.mobile.ListItem", + // | "@label": "Jack Coleman" + // | }, + // | { + // | "class": "dojox.mobile.ListItem", + // | "@label": "James Evans" + // | }, + // | { + // | "class": "dojox.mobile.ListItem", + // | "@label": "Jason Griffin" + // | } + // | ] + // | } + // | + // | ] + // | } + // | + // example: + // | // SpinWheel in v1.8 format + // | { + // | "class": "dojox.mobile.View", + // | "@id": "view1", + // | "children": [ + // | { + // | "class": "dojox.mobile.SpinWheel", + // | "@id": "spin1", + // | "@style": {"margin":"10px auto","width":"304px"}, + // | "children": [ + // | { + // | "class": "dojox.mobile.SpinWheelSlot", + // | "@labels": "A,B,C,D,E", + // | "@style": {"textAlign":"center","width":"300px"} + // | } + // | ] + // | } + // | ] + // | } + + parse: function(/*Object*/ content, /*DomNode*/ target, /*DomNode?*/ refNode){ + // summary: + // Parses the given data and creates a new view at the given position. + // content: + // Content data for a new view. + // target: + // A DOM node under which a new view is created. + // refNode: + // An optional reference DOM node before which a new view is created. + var view, container = domConstruct.create("DIV"); + target.insertBefore(container, refNode); + this._ws = []; + this._req = []; + var root = json.parse(content); + return Deferred.when(this._loadPrereqs(root), lang.hitch(this, function(){ + view = this._instantiate(root, container); + view.style.visibility = "hidden"; + array.forEach(this._ws, function(w){ + if(!w._started && w.startup){ + w.startup(); + } + }); + this._ws = null; + return view.id; + })); + }, + + _loadPrereqs: function(root){ + // tags: + // private + var d = new Deferred(); + var req = this._collectRequires(root); + if(req.length === 0){ return true; } + + if(dojo.require){ + array.forEach(req, function(c){ + dojo["require"](c); + }); + return true; + }else{ + req = array.map(req, function(s){ return s.replace(/\./g, "/"); }); + require(req, function(){ + d.resolve(true); + }); + } + return d; + }, + + _collectRequires: function(obj){ + // tags: + // private + var className = obj["class"]; + for(var key in obj){ + if(key.charAt(0) == "@" || key === "children"){ continue; } + var cls = className || key.replace(/:.*/, ""); + this._req.push(cls); + if(!cls){ continue; } + var objs = className ? [obj] : + (lang.isArray(obj[key]) ? obj[key] : [obj[key]]); + for(var i = 0; i < objs.length; i++){ + // process child widgets + if(!className){ + this._collectRequires(objs[i]); + }else if(objs[i].children){ + for(var j = 0; j < objs[i].children.length; j++){ + this._collectRequires(objs[i].children[j]); + } + } + } + } + return this._req; + }, + + _instantiate: function(/*Object*/obj, /*DomNode*/node, /*Widget*/parent){ + // summary: + // Given the evaluated json data, does the same thing as what + // the parser does. + // tags: + // private + var widget; + var className = obj["class"]; + for(var key in obj){ + if(key.charAt(0) == "@" || key === "children"){ continue; } + var cls = lang.getObject(className || key.replace(/:.*/, "")); + if(!cls){ continue; } + var proto = cls.prototype, + objs = className ? [obj] : + (lang.isArray(obj[key]) ? obj[key] : [obj[key]]); + for(var i = 0; i < objs.length; i++){ + var params = {}; + for(var prop in objs[i]){ + if(prop.charAt(0) == "@"){ + var v = objs[i][prop]; + prop = prop.substring(1); + var t = typeof proto[prop]; + if(lang.isArray(proto[prop])){ + params[prop] = v.split(/\s*,\s*/); + }else if(t === "string"){ + params[prop] = v; + }else if(t === "number"){ + params[prop] = v - 0; + }else if(t === "boolean"){ + params[prop] = (v !== "false"); + }else if(t === "object"){ + params[prop] = json.parse(v); + }else if(t === "function"){ + params[prop] = lang.getObject(v, false) || new Function(v); + } + } + } + widget = new cls(params, node); + if(node){ // to call View's startup() + this._ws.push(widget); + } + if(parent){ + widget.placeAt(parent.containerNode || parent.domNode); + } + // process child widgets + if(!className){ + this._instantiate(objs[i], null, widget); + }else if(objs[i].children){ + for(var j = 0; j < objs[i].children.length; j++){ + this._instantiate(objs[i].children[j], null, widget); + } + } + } + } + return widget && widget.domNode; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/PatternFileTypeMap.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/PatternFileTypeMap.js new file mode 100644 index 00000000..9e5ac009 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/PatternFileTypeMap.js @@ -0,0 +1,18 @@ +//>>built +define("dojox/mobile/dh/PatternFileTypeMap",["dojo/_base/lang"],function(_1){ +var o={}; +_1.setObject("dojox.mobile.dh.PatternFileTypeMap",o); +o.map={".*.html":"html",".*.json":"json"}; +o.add=function(_2,_3){ +this.map[_2]=_3; +}; +o.getContentType=function(_4){ +for(var _5 in this.map){ +if((new RegExp(_5)).test(_4)){ +return this.map[_5]; +} +} +return null; +}; +return o; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/PatternFileTypeMap.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/PatternFileTypeMap.js.uncompressed.js new file mode 100644 index 00000000..85c12fd5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/PatternFileTypeMap.js.uncompressed.js @@ -0,0 +1,38 @@ +define("dojox/mobile/dh/PatternFileTypeMap", [ + "dojo/_base/lang" +], function(lang){ + + // module: + // dojox/mobile/dh/PatternFileTypeMap + + var o = { + // summary: + // A component that provides a map for determining content-type from + // the pattern of the URL. + }; + lang.setObject("dojox.mobile.dh.PatternFileTypeMap", o); + + o.map = { + ".*\.html": "html", + ".*\.json": "json" + }; + + o.add = function(/*String*/ key, /*String*/ contentType){ + // summary: + // Adds a handler class for the given content type. + this.map[key] = contentType; + }; + + o.getContentType = function(/*String*/ fileName){ + // summary: + // Returns the handler class for the given content type. + for(var key in this.map){ + if((new RegExp(key)).test(fileName)){ + return this.map[key]; + } + } + return null; + }; + + return o; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/StringDataSource.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/StringDataSource.js new file mode 100644 index 00000000..4f43bd7c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/StringDataSource.js @@ -0,0 +1,8 @@ +//>>built +define("dojox/mobile/dh/StringDataSource",["dojo/_base/declare"],function(_1){ +return _1("dojox.mobile.dh.StringDataSource",null,{text:"",constructor:function(_2){ +this.text=_2; +},getData:function(){ +return this.text; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/StringDataSource.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/StringDataSource.js.uncompressed.js new file mode 100644 index 00000000..79917320 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/StringDataSource.js.uncompressed.js @@ -0,0 +1,26 @@ +define("dojox/mobile/dh/StringDataSource", [ + "dojo/_base/declare" +], function(declare){ + + // module: + // dojox/mobile/dh/StringDataSource + + return declare("dojox.mobile.dh.StringDataSource", null, { + // summary: + // A component that simply returns the given text. + + text: "", + + constructor: function(/*String*/ text){ + // summary: + // Creates a new instance of the class. + this.text = text; + }, + + getData: function(){ + // summary: + // Returns the given text. + return this.text; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/SuffixFileTypeMap.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/SuffixFileTypeMap.js new file mode 100644 index 00000000..6fd349b6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/SuffixFileTypeMap.js @@ -0,0 +1,14 @@ +//>>built +define("dojox/mobile/dh/SuffixFileTypeMap",["dojo/_base/lang"],function(_1){ +var o={}; +_1.setObject("dojox.mobile.dh.SuffixFileTypeMap",o); +o.map={"html":"html","json":"json"}; +o.add=function(_2,_3){ +this.map[_2]=_3; +}; +o.getContentType=function(_4){ +var _5=(_4||"").replace(/.*\./,""); +return this.map[_5]; +}; +return o; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/SuffixFileTypeMap.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/SuffixFileTypeMap.js.uncompressed.js new file mode 100644 index 00000000..e43e3bfb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/SuffixFileTypeMap.js.uncompressed.js @@ -0,0 +1,34 @@ +define("dojox/mobile/dh/SuffixFileTypeMap", [ + "dojo/_base/lang" +], function(lang){ + + // module: + // dojox/mobile/dh/SuffixFileTypeMap + + var o = { + // summary: + // A component that provides a map for determining content-type from + // the suffix of the URL. + }; + lang.setObject("dojox.mobile.dh.SuffixFileTypeMap", o); + + o.map = { + "html": "html", + "json": "json" + }; + + o.add = function(/*String*/ key, /*String*/ contentType){ + // summary: + // Adds a handler class for the given content type. + this.map[key] = contentType; + }; + + o.getContentType = function(/*String*/ fileName){ + // summary: + // Returns the handler class for the given content type. + var fileType = (fileName || "").replace(/.*\./, ""); + return this.map[fileType]; + }; + + return o; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/UrlDataSource.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/UrlDataSource.js new file mode 100644 index 00000000..b54eabe9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/UrlDataSource.js @@ -0,0 +1,14 @@ +//>>built +define("dojox/mobile/dh/UrlDataSource",["dojo/_base/declare","dojo/_base/lang","dojo/_base/xhr"],function(_1,_2,_3){ +return _1("dojox.mobile.dh.UrlDataSource",null,{text:"",_url:"",constructor:function(_4){ +this._url=_4; +},getData:function(){ +var _5=_3.get({url:this._url,handleAs:"text"}); +_5.addCallback(_2.hitch(this,function(_6,_7){ +this.text=_6; +})); +_5.addErrback(function(_8){ +}); +return _5; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/UrlDataSource.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/UrlDataSource.js.uncompressed.js new file mode 100644 index 00000000..a40914fc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/dh/UrlDataSource.js.uncompressed.js @@ -0,0 +1,40 @@ +define("dojox/mobile/dh/UrlDataSource", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/_base/xhr" +], function(declare, lang, xhr){ + + // module: + // dojox/mobile/dh/UrlDataSource + + return declare("dojox.mobile.dh.UrlDataSource", null, { + // summary: + // A component that accesses the given URL and fetches the data as text. + + text: "", + + _url: "", + + constructor: function(/*String*/ url){ + // summary: + // Creates a new instance of the class. + this._url = url; + }, + + getData: function(){ + // summary: + // Returns a Deferred that accesses the given URL and fetches the data as text. + var obj = xhr.get({ + url: this._url, + handleAs: "text" + }); + obj.addCallback(lang.hitch(this, function(response, ioArgs){ + this.text = response; + })); + obj.addErrback(function(error){ + console.log("Failed to load "+this._url+"\n"+(error.description||error)); + }); + return obj; // Deferred + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/i18n.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/i18n.js new file mode 100644 index 00000000..8f9e9b6b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/i18n.js @@ -0,0 +1,23 @@ +//>>built +define("dojox/mobile/i18n",["dojo/_base/lang","dojo/i18n","dijit/_WidgetBase"],function(_1,_2,_3){ +var _4={}; +_1.setObject("dojox.mobile.i18n",_4); +_4.load=function(_5,_6,_7){ +return _4.registerBundle(_2.getLocalization(_5,_6,_7)); +}; +_4.registerBundle=function(_8){ +if(!_4.bundle){ +_4.bundle=[]; +} +return _1.mixin(_4.bundle,_8); +}; +_4.I18NProperties={mblNoConv:false}; +_1.extend(_3,_4.I18NProperties); +_1.extend(_3,{_cv:function(s){ +if(this.mblNoConv||!_4.bundle){ +return s; +} +return _4.bundle[_1.trim(s)]||s; +}}); +return _4; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/i18n.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/i18n.js.uncompressed.js new file mode 100644 index 00000000..79f8e653 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/i18n.js.uncompressed.js @@ -0,0 +1,54 @@ +define("dojox/mobile/i18n", [ + "dojo/_base/lang", + "dojo/i18n", + "dijit/_WidgetBase" +], function(lang, di18n, WidgetBase){ + + // module: + // dojox/mobile/i18n + + var i18n = { + // summary: + // An internationalization utility for applications based on dojox/mobile. + }; + lang.setObject("dojox.mobile.i18n", i18n); + + i18n.load = function(/*String*/packageName, /*String*/bundleName, /*String?*/locale){ + // summary: + // Loads an nls resource bundle and returns an array of localized + // resources. + return i18n.registerBundle(di18n.getLocalization(packageName, bundleName, locale)); + }; + + i18n.registerBundle = function(/*Array*/bundle){ + // summary: + // Accumulates the given localized resources in an array and returns + // it. + if(!i18n.bundle){ i18n.bundle = []; } + return lang.mixin(i18n.bundle, bundle); + }; + + i18n.I18NProperties = { + // summary: + // These properties can be specified for any widget once the dojox/mobile/i18n module is loaded. + + // mblNoConv: Boolean + // Disables localization by dojox/mobile/i18n for the widget on which the property is set. + mblNoConv: false + }; + + // Since any widget can have properties localized by dojox/mobile/i18n, mix I18NProperties + // into the base widget class. (This is a hack, but it's effective.) + // This is for the benefit of the parser. Remove for 2.0. Also, hide from doc viewer. + lang.extend(WidgetBase, /*===== {} || =====*/ i18n.I18NProperties); + + // Mixin the _cv method which is called by property setters. + lang.extend(WidgetBase, { + _cv: function(s){ + if(this.mblNoConv || !i18n.bundle){ return s; } + return i18n.bundle[lang.trim(s)] || s; + } + }); + + return i18n; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/iconUtils.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/iconUtils.js new file mode 100644 index 00000000..1271b30d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/iconUtils.js @@ -0,0 +1,162 @@ +//>>built +define("dojox/mobile/iconUtils",["dojo/_base/array","dojo/_base/config","dojo/_base/connect","dojo/_base/event","dojo/_base/lang","dojo/_base/window","dojo/dom-class","dojo/dom-construct","dojo/dom-style","./sniff"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a){ +var dm=_5.getObject("dojox.mobile",true); +var _b=function(){ +this.setupSpriteIcon=function(_c,_d){ +if(_c&&_d){ +var _e=_1.map(_d.split(/[ ,]/),function(_f){ +return _f-0; +}); +var t=_e[0]; +var r=_e[1]+_e[2]; +var b=_e[0]+_e[3]; +var l=_e[1]; +_9.set(_c,{position:"absolute",clip:"rect("+t+"px "+r+"px "+b+"px "+l+"px)",top:(_c.parentNode?_9.get(_c,"top"):0)-t+"px",left:-l+"px"}); +_7.add(_c,"mblSpriteIcon"); +} +}; +this.createDomButton=function(_10,_11,_12){ +if(!this._domButtons){ +if(_a("webkit")){ +var _13=function(_14,dic){ +var i,j; +if(!_14){ +var _15={}; +var ss=_6.doc.styleSheets; +for(i=0;i/).length-1; +if(sel.match(/(mblDomButton\w+)/)){ +var cls=RegExp.$1; +if(!dic[cls]||n>dic[cls]){ +dic[cls]=n; +} +} +} +} +} +} +return dic; +}; +this._domButtons=_13(); +}else{ +this._domButtons={}; +} +} +var s=_10.className; +var _19=_12||_10; +if(s.match(/(mblDomButton\w+)/)&&s.indexOf("/")===-1){ +var _1a=RegExp.$1; +var _1b=4; +if(s.match(/(mblDomButton\w+_(\d+))/)){ +_1b=RegExp.$2-0; +}else{ +if(this._domButtons[_1a]!==undefined){ +_1b=this._domButtons[_1a]; +} +} +var _1c=null; +if(_a("bb")&&_2.mblBBBoxShadowWorkaround!==false){ +_1c={style:"-webkit-box-shadow:none"}; +} +for(var i=0,p=_19;i<_1b;i++){ +p=p.firstChild||_8.create("div",_1c,p); +} +if(_12){ +setTimeout(function(){ +_7.remove(_10,_1a); +},0); +_7.add(_12,_1a); +} +}else{ +if(s.indexOf(".")!==-1){ +_8.create("img",{src:s},_19); +}else{ +return null; +} +} +_7.add(_19,"mblDomButton"); +!!_11&&_9.set(_19,_11); +return _19; +}; +this.createIcon=function(_1d,_1e,_1f,_20,_21,_22,pos){ +_20=_20||""; +if(_1d&&_1d.indexOf("mblDomButton")===0){ +if(!_1f){ +_1f=_8.create("div",null,_22||_21,pos); +}else{ +if(_1f.className.match(/(mblDomButton\w+)/)){ +_7.remove(_1f,RegExp.$1); +} +} +_1f.title=_20; +_7.add(_1f,_1d); +this.createDomButton(_1f); +}else{ +if(_1d&&_1d!=="none"){ +if(!_1f||_1f.nodeName!=="IMG"){ +_1f=_8.create("img",{alt:_20},_22||_21,pos); +} +_1f.src=(_1d||"").replace("${theme}",dm.currentTheme); +this.setupSpriteIcon(_1f,_1e); +if(_1e&&_21){ +var arr=_1e.split(/[ ,]/); +_9.set(_21,{position:"relative",width:arr[2]+"px",height:arr[3]+"px"}); +_7.add(_21,"mblSpriteIconParent"); +} +_3.connect(_1f,"ondragstart",_4,"stop"); +} +} +return _1f; +}; +this.iconWrapper=false; +this.setIcon=function(_23,_24,_25,alt,_26,_27,pos){ +if(!_26||!_23&&!_25){ +return null; +} +if(_23&&_23!=="none"){ +if(!this.iconWrapper&&_23.indexOf("mblDomButton")!==0&&!_24){ +if(_25&&_25.tagName==="DIV"){ +_8.destroy(_25); +_25=null; +} +_25=this.createIcon(_23,null,_25,alt,_26,_27,pos); +_7.add(_25,"mblImageIcon"); +}else{ +if(_25&&_25.tagName==="IMG"){ +_8.destroy(_25); +_25=null; +} +_25&&_8.empty(_25); +if(!_25){ +_25=_8.create("div",null,_27||_26,pos); +} +this.createIcon(_23,_24,null,null,_25); +if(alt){ +_25.title=alt; +} +} +_7.remove(_26,"mblNoIcon"); +return _25; +}else{ +_8.destroy(_25); +_7.add(_26,"mblNoIcon"); +return null; +} +}; +}; +return new _b(); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/iconUtils.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/iconUtils.js.uncompressed.js new file mode 100644 index 00000000..058ccc7a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/iconUtils.js.uncompressed.js @@ -0,0 +1,240 @@ +define("dojox/mobile/iconUtils", [ + "dojo/_base/array", + "dojo/_base/config", + "dojo/_base/connect", + "dojo/_base/event", + "dojo/_base/lang", + "dojo/_base/window", + "dojo/dom-class", + "dojo/dom-construct", + "dojo/dom-style", + "./sniff" +], function(array, config, connect, event, lang, win, domClass, domConstruct, domStyle, has){ + + var dm = lang.getObject("dojox.mobile", true); + + // module: + // dojox/mobile/iconUtils + + var IconUtils = function(){ + // summary: + // Utilities to create an icon (image, CSS sprite image, or DOM Button). + + this.setupSpriteIcon = function(/*DomNode*/iconNode, /*String*/iconPos){ + // summary: + // Sets up CSS sprite for a foreground image. + if(iconNode && iconPos){ + var arr = array.map(iconPos.split(/[ ,]/),function(item){return item-0}); + var t = arr[0]; // top + var r = arr[1] + arr[2]; // right + var b = arr[0] + arr[3]; // bottom + var l = arr[1]; // left + domStyle.set(iconNode, { + position: "absolute", + clip: "rect("+t+"px "+r+"px "+b+"px "+l+"px)", + top: (iconNode.parentNode ? domStyle.get(iconNode, "top") : 0) - t + "px", + left: -l + "px" + }); + domClass.add(iconNode, "mblSpriteIcon"); + } + }; + + this.createDomButton = function(/*DomNode*/refNode, /*Object?*/style, /*DomNode?*/toNode){ + // summary: + // Creates a DOM button. + // description: + // DOM button is a simple graphical object that consists of one or + // more nested DIV elements with some CSS styling. It can be used + // in place of an icon image on ListItem, IconItem, and so on. + // The kind of DOM button to create is given as a class name of + // refNode. The number of DIVs to create is searched from the style + // sheets in the page. However, if the class name has a suffix that + // starts with an underscore, like mblDomButtonGoldStar_5, then the + // suffixed number is used instead. A class name for DOM button + // must starts with 'mblDomButton'. + // refNode: + // A node that has a DOM button class name. + // style: + // A hash object to set styles to the node. + // toNode: + // A root node to create a DOM button. If omitted, refNode is used. + + if(!this._domButtons){ + if(has("webkit")){ + var findDomButtons = function(sheet, dic){ + // summary: + // Searches the style sheets for DOM buttons. + // description: + // Returns a key-value pair object whose keys are DOM + // button class names and values are the number of DOM + // elements they need. + var i, j; + if(!sheet){ + var _dic = {}; + var ss = win.doc.styleSheets; + for (i = 0; i < ss.length; i++){ + ss[i] && findDomButtons(ss[i], _dic); + } + return _dic; + } + var rules = sheet.cssRules || []; + for (i = 0; i < rules.length; i++){ + var rule = rules[i]; + if(rule.href && rule.styleSheet){ + findDomButtons(rule.styleSheet, dic); + }else if(rule.selectorText){ + var sels = rule.selectorText.split(/,/); + for (j = 0; j < sels.length; j++){ + var sel = sels[j]; + var n = sel.split(/>/).length - 1; + if(sel.match(/(mblDomButton\w+)/)){ + var cls = RegExp.$1; + if(!dic[cls] || n > dic[cls]){ + dic[cls] = n; + } + } + } + } + } + return dic; + }; + this._domButtons = findDomButtons(); + }else{ + this._domButtons = {}; + } + } + + var s = refNode.className; + var node = toNode || refNode; + if(s.match(/(mblDomButton\w+)/) && s.indexOf("/") === -1){ + var btnClass = RegExp.$1; + var nDiv = 4; + if(s.match(/(mblDomButton\w+_(\d+))/)){ + nDiv = RegExp.$2 - 0; + }else if(this._domButtons[btnClass] !== undefined){ + nDiv = this._domButtons[btnClass]; + } + var props = null; + if(has("bb") && config.mblBBBoxShadowWorkaround !== false){ + // Removes box-shadow because BlackBerry incorrectly renders it. + props = {style:"-webkit-box-shadow:none"}; + } + for(var i = 0, p = node; i < nDiv; i++){ + p = p.firstChild || domConstruct.create("div", props, p); + } + if(toNode){ + setTimeout(function(){ + domClass.remove(refNode, btnClass); + }, 0); + domClass.add(toNode, btnClass); + } + }else if(s.indexOf(".") !== -1){ // file name + domConstruct.create("img", {src:s}, node); + }else{ + return null; + } + domClass.add(node, "mblDomButton"); + !!style && domStyle.set(node, style); + return node; + }; + + this.createIcon = function(/*String*/icon, /*String?*/iconPos, /*DomNode?*/node, /*String?*/title, /*DomNode?*/parent, /*DomNode?*/refNode, /*String?*/pos){ + // summary: + // Creates or updates an icon node + // description: + // If node exists, updates the existing node. Otherwise, creates a new one. + // icon: + // Path for an image, or DOM button class name. + title = title || ""; + if(icon && icon.indexOf("mblDomButton") === 0){ + // DOM button + if(!node){ + node = domConstruct.create("div", null, refNode || parent, pos); + }else{ + if(node.className.match(/(mblDomButton\w+)/)){ + domClass.remove(node, RegExp.$1); + } + } + node.title = title; + domClass.add(node, icon); + this.createDomButton(node); + }else if(icon && icon !== "none"){ + // Image + if(!node || node.nodeName !== "IMG"){ + node = domConstruct.create("img", { + alt: title + }, refNode || parent, pos); + } + node.src = (icon || "").replace("${theme}", dm.currentTheme); + this.setupSpriteIcon(node, iconPos); + if(iconPos && parent){ + var arr = iconPos.split(/[ ,]/); + domStyle.set(parent, { + position: "relative", + width: arr[2] + "px", + height: arr[3] + "px" + }); + domClass.add(parent, "mblSpriteIconParent"); + } + connect.connect(node, "ondragstart", event, "stop"); + } + return node; + }; + + this.iconWrapper = false; + this.setIcon = function(/*String*/icon, /*String*/iconPos, /*DomNode*/iconNode, /*String?*/alt, /*DomNode*/parent, /*DomNode?*/refNode, /*String?*/pos){ + // summary: + // A setter function to set an icon. + // description: + // This function is intended to be used by icon setters (e.g. _setIconAttr) + // icon: + // An icon path or a DOM button class name. + // iconPos: + // The position of an aggregated icon. IconPos is comma separated + // values like top,left,width,height (ex. "0,0,29,29"). + // iconNode: + // An icon node. + // alt: + // An alt text for the icon image. + // parent: + // Parent node of the icon. + // refNode: + // A node reference to place the icon. + // pos: + // The position of the icon relative to refNode. + if(!parent || !icon && !iconNode){ return null; } + if(icon && icon !== "none"){ // create or update an icon + if(!this.iconWrapper && icon.indexOf("mblDomButton") !== 0 && !iconPos){ // image + if(iconNode && iconNode.tagName === "DIV"){ + domConstruct.destroy(iconNode); + iconNode = null; + } + iconNode = this.createIcon(icon, null, iconNode, alt, parent, refNode, pos); + domClass.add(iconNode, "mblImageIcon"); + }else{ // sprite or DOM button + if(iconNode && iconNode.tagName === "IMG"){ + domConstruct.destroy(iconNode); + iconNode = null; + } + iconNode && domConstruct.empty(iconNode); + if(!iconNode){ + iconNode = domConstruct.create("div", null, refNode || parent, pos); + } + this.createIcon(icon, iconPos, null, null, iconNode); + if(alt){ + iconNode.title = alt; + } + } + domClass.remove(parent, "mblNoIcon"); + return iconNode; + }else{ // clear the icon + domConstruct.destroy(iconNode); + domClass.add(parent, "mblNoIcon"); + return null; + } + }; + }; + + // Return singleton. (TODO: can we replace IconUtils class and singleton w/a simple hash of functions?) + return new IconUtils(); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/lazyLoadUtils.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/lazyLoadUtils.js new file mode 100644 index 00000000..ae6ad10d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/lazyLoadUtils.js @@ -0,0 +1,80 @@ +//>>built +define("dojox/mobile/lazyLoadUtils",["dojo/_base/kernel","dojo/_base/array","dojo/_base/config","dojo/_base/window","dojo/_base/Deferred","dojo/ready"],function(_1,_2,_3,_4,_5,_6){ +var _7=function(){ +this._lazyNodes=[]; +var _8=this; +if(_3.parseOnLoad){ +_6(90,function(){ +var _9=_2.filter(_4.body().getElementsByTagName("*"),function(n){ +return n.getAttribute("lazy")==="true"||(n.getAttribute("data-dojo-props")||"").match(/lazy\s*:\s*true/); +}); +var i,j,_a,s,n; +for(i=0;i<_9.length;i++){ +_2.forEach(["dojoType","data-dojo-type"],function(a){ +_a=_2.filter(_9[i].getElementsByTagName("*"),function(n){ +return n.getAttribute(a); +}); +for(j=0;j<_a.length;j++){ +n=_a[j]; +n.setAttribute("__"+a,n.getAttribute(a)); +n.removeAttribute(a); +_8._lazyNodes.push(n); +} +}); +} +}); +} +_6(function(){ +for(var i=0;i<_8._lazyNodes.length;i++){ +var n=_8._lazyNodes[i]; +_2.forEach(["dojoType","data-dojo-type"],function(a){ +if(n.getAttribute("__"+a)){ +n.setAttribute(a,n.getAttribute("__"+a)); +n.removeAttribute("__"+a); +} +}); +} +delete _8._lazyNodes; +}); +this.instantiateLazyWidgets=function(_b,_c,_d){ +var d=new _5(); +var _e=_c?_c.split(/,/):[]; +var _f=_b.getElementsByTagName("*"); +var len=_f.length; +for(var i=0;i>built +define("dojox/mobile/migrationAssist",["dojo/_base/declare","dojo/_base/lang","dojo/_base/window","dojo/dom-class","dojo/dom-construct","dojo/dom-style","dojo/ready","dijit/_Container","dijit/_WidgetBase","./_ItemBase","./common","./FixedSplitterPane","./Heading","./iconUtils","./ListItem","./RoundRect","./SpinWheel","./SpinWheelSlot","./SwapView","./TabBarButton","./ToolBarButton","./View"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e,_f,_10,_11,_12,_13,_14,_15,_16){ +var _17; +var _18=function(){ +var get=function(w,key){ +return w[key]||w.srcNodeRef&&w.srcNodeRef.getAttribute(key); +}; +this.dispatch=function(cls,w){ +var _19=cls.replace(/.*\./,""); +this["check"+_19]&&this["check"+_19](w); +}; +this.checkCarousel=function(w){ +}; +this.checkFixedSplitter=function(w){ +if(!this._fixedSplitter_css_checked){ +this._fixedSplitter_css_checked=true; +var _1a=_5.create("div",{className:"mblFixedSplitter"},_3.body()); +if(_6.get(_1a,"height")==0){ +_5.create("link",{href:"../themes/android/FixedSplitter.css",type:"text/css",rel:"stylesheet"},_3.doc.getElementsByTagName("head")[0]); +} +_3.body().removeChild(_1a); +setTimeout(function(){ +w.resize(); +},1000); +} +}; +this.checkFixedSplitterPane=function(w){ +}; +this.checkFixedSplitter=function(w){ +if(!this._fixedSplitter_css_checked){ +this._fixedSplitter_css_checked=true; +var _1b=_5.create("div",{className:"mblFixedSplitter"},_3.body()); +if(_6.get(_1b,"height")==0){ +_5.create("link",{href:"../themes/android/FixedSplitter.css",type:"text/css",rel:"stylesheet"},_3.doc.getElementsByTagName("head")[0]); +} +_3.body().removeChild(_1b); +setTimeout(function(){ +w.resize(); +},1000); +} +}; +this.checkListItem=function(w){ +if(w.sync!==undefined||w.srcNodeRef&&w.srcNodeRef.getAttribute("sync")){ +} +if(w.btnClass!==undefined||w.srcNodeRef&&w.srcNodeRef.getAttribute("btnClass")){ +w.rightIcon=w.btnClass||w.srcNodeRef&&w.srcNodeRef.getAttribute("btnClass"); +} +if(w.btnClass2!==undefined||w.srcNodeRef&&w.srcNodeRef.getAttribute("btnClass2")){ +w.rightIcon2=w.btnClass2||w.srcNodeRef&&w.srcNodeRef.getAttribute("btnClass2"); +} +}; +this.checkSpinWheelSlot=function(w){ +if(w.labels&&w.labels[0]&&w.labels[0].charAt(0)==="["){ +for(var i=0;i + dojo.require("dojox.mobile.migrationAssist"); + dojo.require("dojox.mobile"); // This is a mobile app. + .... + + + + +If your application uses deprecated or no longer available functions, +this module detects them and displays messages in the browser console. + +Also, it tries to dynamically fix them as much as possible so that +the target application can work somehow. + +Note, however, that the purpose of migrationAssist is not to +run the older applications as they are, but to assist migration. + + +Changes from 1.6/1.7 to 1.8 +=========================== + +Carousel +-------- + - Carousel has no backward compatibility, since it was experimental in 1.7. + There are two subclasses that support data stores. + Use DataCarousel if you want to use carousel with dojo/data. + Use StoreCarousel if you want to use carousel with dojo/store. + +FixedSplitter +------------- + - FixedSplitter.css is no longer in the themes/common folder. + It is in the device theme folder. (e.g. themes/iphone/FixedSplitter.css) + +FlippableView +------------- + - FlippableView was deprecated in 1.7, and removed in 1.8. Use SwapView instead. + +ListItem +-------- + - The sync property is no longer supported. It always behaves asynchronously. + - The btnClass property is no longer supported. Use rightIcon instead. + - The btnClass2 property is no longer supported. Use rightIcon2 instead. + +SpinWheel +--------- + - SpinWheel.css is no longer in the themes/common folder. + It is in the device theme folder. (e.g. themes/iphone/SpinWheel.css) + - getValue() is no longer supported. Use get("values") instead. + - setValue() is no longer supported. Use set("values", newValue) instead. + +SpinWheelSlot +------------- + - getValue() is no longer supported. Use get("value") instead. + - getKey() is no longer supported. Use get("key") instead. + - setValue() is no longer supported. Use set("value", newValue) instead. + +Switch +------ + - When you place it in a ListItem, class="mblItemSwitch" is no longer necessary. + +TabBar +------ +- In 1.7 or older, barType="segmentedControl" produced different UIs according to the + current theme. In the iphone theme, it was a segmented control, but in other themes, + it was tabs with or without icons. In 1.8, however, barType="segmentedControl" + always produces a segmented control UI regardless of the current theme. + If you still need the old behavior, + barType:{"iphone_theme":"segmentedControl","*":"tallTab"} + should produce a segmented control for the iphone theme, and a tall tab bar for + the other themes. You need to use deviceTheme.js to specify barType that way. + Also, if you want to hide the tab icons on the segmented control in the iphone theme, + you could apply a css like this: + + See test_ScrollableView-demo.html for an example usage. + +TabBarButton +------------- + - Specifying a DOM Button with the class attribute like class="mblDomButtonWhitePlus" + is no longer supported. Use icon="mblDomButtonWhitePlus" instead. + - select() and deselect() are no longer supported. Use set("selected", boolean) instead. + +ToolBarButton +------------- + - Specifying the button color style with the class attribute like class="mblColorBlue" + is no longer supported. Use defaultColor="mblColorBlue" instead. + - Specifying a DOM Button with the class attribute like class="mblDomButtonWhitePlus" + is no longer supported. Use icon="mblDomButtonWhitePlus" instead. + - select() and deselect() are no longer supported. Use set("selected", boolean) instead. + +dojox/mobile/parser +------------------- + - dojox/mobile/parser no longer accepts array-type attribute like + labels="['A','B','C','D','E']" + Instead, you should specify like labels="A,B,C,D,E", which is the format dojo/parser + accepts. + +bookmarkable +------------ + - To enable the bookmarkable feature, require dojox/mobile/bookmarkable + instead of dojo/hash + +*/ + +define("dojox/mobile/migrationAssist", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/_base/window", + "dojo/dom-class", + "dojo/dom-construct", + "dojo/dom-style", + "dojo/ready", + "dijit/_Container", + "dijit/_WidgetBase", + "./_ItemBase", + "./common", + "./FixedSplitterPane", + "./Heading", + "./iconUtils", + "./ListItem", + "./RoundRect", + "./SpinWheel", + "./SpinWheelSlot", + "./SwapView", + "./TabBarButton", + "./ToolBarButton", + "./View" +], function(declare, lang, win, domClass, domConstruct, domStyle, ready, Container, WidgetBase, _ItemBase, mobile, FixedSplitterPane, Heading, iconUtils, ListItem, RoundRect, SpinWheel, SpinWheelSlot, SwapView, TabBarButton, ToolBarButton, View){ + + // module: + // dojox/mobile/migrationAssist + + var currentTheme; + + var MigrationAssist = function(){ + // summary: + // Dojo Mobile 1.6/1.7 to 1.8 migration assistance. + + var get = function(w, key){ + return w[key] || w.srcNodeRef && w.srcNodeRef.getAttribute(key); + }; + + this.dispatch = function(/*String*/cls, /*Widget*/ w){ + var base = cls.replace(/.*\./, ""); + this["check" + base] && this["check" + base](w); + }; + + this.checkCarousel = function(/*Widget*/ w){ + console.log('[MIG:error] Carousel has no backward compatibility, since it was experimental in 1.7. The new Carousel supports dojo/store instead of dojo/data.'); + }; + + this.checkFixedSplitter = function(/*Widget*/ w){ + // FixedSplitter.css has been moved from the themes/common folder + // to the device theme folder such as themes/android. + if(!this._fixedSplitter_css_checked){ + this._fixedSplitter_css_checked = true; + var dummy = domConstruct.create("div", { + className: "mblFixedSplitter" + }, win.body()); + if(domStyle.get(dummy, "height") == 0){ + domConstruct.create("link", { + href: "../themes/android/FixedSplitter.css", + type: "text/css", + rel: "stylesheet" + }, win.doc.getElementsByTagName('head')[0]); + console.log('[MIG:fixed] FixedSplitter.css does not seem to be loaded. Loaded it for you just now. It is in the device theme folder.'); + } + win.body().removeChild(dummy); + setTimeout(function(){ + w.resize(); + }, 1000); + } + }; + + this.checkFixedSplitterPane = function(/*Widget*/ w){ + console.log('[MIG:fixed] FixedSplitterPane: Deprecated. Use dojox/mobile/Container instead.'); + }; + this.checkFixedSplitter = function(/*Widget*/ w){ + // FixedSplitter.css has been moved from the themes/common folder + // to the device theme folder such as themes/android. + if(!this._fixedSplitter_css_checked){ + this._fixedSplitter_css_checked = true; + var dummy = domConstruct.create("div", { + className: "mblFixedSplitter" + }, win.body()); + if(domStyle.get(dummy, "height") == 0){ + domConstruct.create("link", { + href: "../themes/android/FixedSplitter.css", + type: "text/css", + rel: "stylesheet" + }, win.doc.getElementsByTagName('head')[0]); + console.log('[MIG:fixed] FixedSplitter.css does not seem to be loaded. Loaded it for you just now. It is in the device theme folder.'); + } + win.body().removeChild(dummy); + setTimeout(function(){ + w.resize(); + }, 1000); + } + }; + + this.checkListItem = function(/*Widget*/ w){ + if(w.sync !== undefined || w.srcNodeRef && w.srcNodeRef.getAttribute("sync")){ + console.log('[MIG:fixed] ListItem: The sync property is no longer supported. (async always)'); + } + if(w.btnClass !== undefined || w.srcNodeRef && w.srcNodeRef.getAttribute("btnClass")){ + console.log('[MIG:fixed] ListItem: The btnClass property is no longer supported. Use rightIcon instead.'); + w.rightIcon = w.btnClass || w.srcNodeRef && w.srcNodeRef.getAttribute("btnClass"); + } + if(w.btnClass2 !== undefined || w.srcNodeRef && w.srcNodeRef.getAttribute("btnClass2")){ + console.log('[MIG:fixed] ListItem: The btnClass2 property is no longer supported. Use rightIcon2 instead.'); + w.rightIcon2 = w.btnClass2 || w.srcNodeRef && w.srcNodeRef.getAttribute("btnClass2"); + } + }; + + this.checkSpinWheelSlot = function(/*Widget*/ w){ + if(w.labels && w.labels[0] && w.labels[0].charAt(0) === '['){ + for(var i = 0; i < w.labels.length; i++){ + w.labels[i] = w.labels[i].replace(/^\[*[\'\"]*/, ''); + w.labels[i] = w.labels[i].replace(/[\'\"]*\]*$/, ''); + } + console.log('[MIG:fixed] SpinWheelSlot: dojox/mobile/parser no longer accepts array-type attribute like labels="[\'A\',\'B\',\'C\',\'D\',\'E\']". Specify as labels="A,B,C,D,E" instead.' ); + } + }; + + this.checkSwapView = function(/*Widget*/ w){ + var n = w.srcNodeRef; + if(n){ + var type = n.getAttribute("dojoType") || n.getAttribute("data-dojo-type"); + if(type === "dojox.mobile.FlippableView"){ + console.log('[MIG:fixed] FlippableView: FlippableView is no longer supported. Use SwapView instead.'); + } + } + }; + + this.checkSwitch = function(/*Widget*/ w){ + if(w["class"] === "mblItemSwitch"){ + console.log('[MIG:fixed] Switch: class="mblItemSwitch" is no longer necessary.'); + } + }; + + this.checkTabBar = function(/*Widget*/ w){ + if(get(w, "barType") === "segmentedControl"){ + console.log('[MIG:warning] TabBar: segmentedControl in 1.8 produces the same UI regardless of the current theme. See the inline doc in migrationAssist.js for details.'); + domConstruct.create("style", { + innerHTML: ".iphone_theme .mblTabBarSegmentedControl .mblTabBarButtonIconArea { display: none; }" + }, win.doc.getElementsByTagName('head')[0]); + } + }; + + this.checkTabBarButton = function(/*Widget*/ w){ + if((w["class"] || "").indexOf("mblDomButton") === 0){ + console.log('[MIG:fixed] TabBarButton: Use icon="' + w["class"] + '" instead of class="' + w["class"] + '".'); + w.icon = w["class"]; + w["class"] = ""; + if(w.srcNodeRef){ + w.srcNodeRef.className = ""; + } + } + }; + + this.checkToolBarButton = function(/*Widget*/ w){ + if((w["class"] || "").indexOf("mblColor") === 0){ + console.log('[MIG:fixed] ToolBarButton: Use defaultColor="' + w["class"] + '" instead of class="' + w["class"] + '".'); + w.defaultColor = w["class"]; + w["class"] = ""; + if(w.srcNodeRef){ + w.srcNodeRef.className = ""; + } + } + + if((w["class"] || "").indexOf("mblDomButton") === 0){ + console.log('[MIG:fixed] ToolBarButton: Use icon="' + w["class"] + '" instead of class="' + w["class"] + '".'); + w.icon = w["class"]; + w["class"] = ""; + if(w.srcNodeRef){ + w.srcNodeRef.className = ""; + } + } + }; + }; + + dojox.mobile.FlippableView = SwapView; + + var migrationAssist = new MigrationAssist(); + + // Hide from the API doc tool, we want to get the documentation for the normal WidgetBase.postMixInProperties() + WidgetBase.prototype.postMixInProperties = /*===== WidgetBase.prototype.postMixInProperties || =====*/ function(){ + migrationAssist.dispatch(this.declaredClass, this); + dojo.forEach([FixedSplitterPane, Heading, RoundRect, SpinWheel, TabBarButton, ToolBarButton, View], function(module){ + if(this.declaredClass !== module.prototype.declaredClass && this instanceof module){ + migrationAssist.dispatch(module.prototype.declaredClass, this); + } + }, this); + + }; + + + var extendSelectFunction = function(obj) { + lang.extend(obj, { + select: function(){ + console.log('[MIG:fixed] ' + this.declaredClass + '(id='+this.id+'): Use set("selected", boolean) instead of select/deselect.'); + obj.prototype.set.apply(this, ["selected", !arguments[0]]); + }, + deselect: function(){ + this.select(true); + } + }); + }; + + extendSelectFunction(ToolBarButton); + extendSelectFunction(TabBarButton); + + lang.extend(ListItem, { + set: function(key, value){ + if(key === "btnClass"){ + console.log('[MIG:fixed] ' + this.declaredClass + '(id='+this.id+'): Use set("rightIcon",x) instead of set("btnClass",x).'); + key = "rightIcon"; + }else if(key === "btnClass2"){ + console.log('[MIG:fixed] ' + this.declaredClass + '(id='+this.id+'): Use set("rightIcon2",x) instead of set("btnClass2",x).'); + key = "rightIcon2"; + } + WidgetBase.prototype.set.apply(this, [key, value]); + } + }); + + lang.extend(SpinWheel, { + getValue: function(){ + console.log('[MIG:fixed] SpinWheel: getValue() is no longer supported. Use get("values") instead.'); + return this.get("values"); + }, + setValue: function(newValue){ + console.log('[MIG:fixed] SpinWheel: setValue() is no longer supported. Use set("values",x) instead.'); + return this.set("values", newValue); + } + }); + + lang.extend(SpinWheelSlot, { + getValue: function(){ + console.log('[MIG:fixed] SpinWheelSlot: getValue() is no longer supported. Use get("value") instead.'); + return this.get("value"); + }, + getKey: function(){ + console.log('[MIG:fixed] SpinWheelSlot: getKey() is no longer supported. Use get("key") instead.'); + return this.get("key"); + }, + setValue: function(newValue){ + console.log('[MIG:fixed] SpinWheelSlot: setValue() is no longer supported. Use set("value",x) instead.'); + return this.set("value", newValue); + } + }); + + lang.mixin(mobile, { + createDomButton: function(){ + console.log('[MIG:fixed] dojox.mobile(id='+arguments[0].id+'): createDomButton was moved to iconUtils.'); + return iconUtils.createDomButton.apply(this, arguments); + } + }); + + // check css + var cssFiles = [], i, j; + + // collect @import + var s = win.doc.styleSheets; + for(i = 0; i < s.length; i++){ + if(s[i].href){ continue; } + var r = s[i].cssRules || s[i].imports; + if(!r){ continue; } + for(j = 0; j < r.length; j++){ + if(r[j].href){ + cssFiles.push(r[j].href); + } + } + } + + // collect + var elems = win.doc.getElementsByTagName("link"); + for(i = 0; i < elems.length; i++){ + cssFiles.push(elems[i].href); + } + + for(i = 0; i < cssFiles.length; i++){ + if(cssFiles[i].indexOf("/iphone/") !== -1){ + currentTheme = "iphone"; + }else if(cssFiles[i].indexOf("/android/") !== -1){ + currentTheme = "android"; + }else if(cssFiles[i].indexOf("/blackberry/") !== -1){ + currentTheme = "blackberry"; + }else if(cssFiles[i].indexOf("/custom/") !== -1){ + currentTheme = "custom"; + } + domClass.add(win.doc.documentElement, currentTheme + "_theme"); + + if(cssFiles[i].match(/themes\/common\/(FixedSplitter.css)|themes\/common\/(SpinWheel.css)/)){ + console.log('[MIG:error] ' + (RegExp.$1 || RegExp.$2) + ' is no longer in the themes/common folder. It is in the device theme folder.'); + } + } + + ready(function(){ + if(dojo.hash){ + console.log('[MIG:fixed] dojo/hash detected. If you would like to enable the bookmarkable feature, require dojox/mobile/bookmarkable instead of dojo/hash'); + if(dojo.require){ + dojo["require"]("dojox.mobile.bookmarkable"); + }else{ + require(["dojox/mobile/bookmarkable"]); + } + } + }); + + // Return singleton. (TODO: can we replace LazyLoadUtils class and singleton w/a simple hash of functions?) + return migrationAssist; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/mobile-all.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/mobile-all.js new file mode 100644 index 00000000..306de367 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/mobile-all.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/mobile/mobile-all",["./_base","./_EditableIconMixin","./_EditableListMixin","./_ExecScriptMixin","./_IconItemPane","./Accordion","./Audio","./Badge","./Button","./Carousel","./CarouselItem","./CheckBox","./ComboBox","./compat","./ContentPane","./DataCarousel","./DatePicker","./EdgeToEdgeDataList","./EdgeToEdgeStoreList","./ExpandingTextArea","./FixedSplitter","./FixedSplitterPane","./GridLayout","./Icon","./IconContainer","./IconItem","./IconMenu","./IconMenuItem","./Opener","./Overlay","./PageIndicator","./ProgressBar","./RadioButton","./Rating","./RoundRectDataList","./RoundRectStoreList","./ScreenSizeAware","./ScrollablePane","./ScrollableView","./SearchBox","./Slider","./SpinWheel","./SpinWheelDatePicker","./SpinWheelSlot","./SpinWheelTimePicker","./StoreCarousel","./SwapView","./TabBar","./TabBarButton","./TextArea","./TextBox","./TimePicker","./ToggleButton","./Tooltip","./transition","./TransitionEvent","./TreeView","./ValuePicker","./ValuePickerDatePicker","./ValuePickerSlot","./ValuePickerTimePicker","./Video","./ViewController","./dh/ContentTypeMap","./dh/DataHandler","./dh/HtmlContentHandler","./dh/HtmlScriptContentHandler","./dh/JsonContentHandler","./dh/PatternFileTypeMap","./dh/StringDataSource","./dh/SuffixFileTypeMap","./dh/UrlDataSource"],function(_1){ +console.warn("dojox/mobile/mobile-all may include much more code than your application actually requires. We strongly recommend that you use a custom build."); +return _1; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/mobile-all.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/mobile-all.js.uncompressed.js new file mode 100644 index 00000000..728c1436 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/mobile-all.js.uncompressed.js @@ -0,0 +1,88 @@ +define("dojox/mobile/mobile-all", [ + "./_base", + "./_EditableIconMixin", + "./_EditableListMixin", + "./_ExecScriptMixin", + "./_IconItemPane", + "./Accordion", + "./Audio", + "./Badge", + "./Button", + "./Carousel", + "./CarouselItem", + "./CheckBox", + "./ComboBox", + "./compat", + "./ContentPane", + "./DataCarousel", + "./DatePicker", + "./EdgeToEdgeDataList", + "./EdgeToEdgeStoreList", + "./ExpandingTextArea", + "./FixedSplitter", + "./FixedSplitterPane", + "./GridLayout", + "./Icon", + "./IconContainer", + "./IconItem", + "./IconMenu", + "./IconMenuItem", + "./Opener", + "./Overlay", + "./PageIndicator", + "./ProgressBar", + "./RadioButton", + "./Rating", + "./RoundRectDataList", + "./RoundRectStoreList", + "./ScreenSizeAware", + "./ScrollablePane", + "./ScrollableView", + "./SearchBox", + "./Slider", + "./SpinWheel", + "./SpinWheelDatePicker", + "./SpinWheelSlot", + "./SpinWheelTimePicker", + "./StoreCarousel", + "./SwapView", + "./TabBar", + "./TabBarButton", + "./TextArea", + "./TextBox", + "./TimePicker", + "./ToggleButton", + "./Tooltip", + "./transition", + "./TransitionEvent", + "./TreeView", + "./ValuePicker", + "./ValuePickerDatePicker", + "./ValuePickerSlot", + "./ValuePickerTimePicker", + "./Video", + "./ViewController", + "./dh/ContentTypeMap", + "./dh/DataHandler", + "./dh/HtmlContentHandler", + "./dh/HtmlScriptContentHandler", + "./dh/JsonContentHandler", + "./dh/PatternFileTypeMap", + "./dh/StringDataSource", + "./dh/SuffixFileTypeMap", + "./dh/UrlDataSource" +], function(common){ + // module: + // dojox/mobile/mobile-all + + console.warn("dojox/mobile/mobile-all may include much more code than your application actually requires. We strongly recommend that you use a custom build."); + + /*===== + return { + // summary: + // A roll-up that includes every mobile module. You probably don't need + // this. Demo purposes only. + }; + =====*/ + return common; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ar/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ar/messages.js new file mode 100644 index 00000000..8a8fda76 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ar/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/ar/messages",{"CarouselPrevious":"سابق","CarouselNext":"تالي","PageIndicatorLabel":"الصفحة $0 من $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ar/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ar/messages.js.uncompressed.js new file mode 100644 index 00000000..5a2d33eb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ar/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/ar/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "‏سابق‏", + // Title of the next button in Carousel + "CarouselNext": "تالي", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "الصفحة $0 من $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/bg/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/bg/messages.js new file mode 100644 index 00000000..f79f1196 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/bg/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/bg/messages",{"CarouselPrevious":"Предишен","CarouselNext":"Следващ","PageIndicatorLabel":"Страница $0 от $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/bg/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/bg/messages.js.uncompressed.js new file mode 100644 index 00000000..1262f970 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/bg/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/bg/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Предишен", + // Title of the next button in Carousel + "CarouselNext": "Следващ", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "Страница $0 от $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ca/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ca/messages.js new file mode 100644 index 00000000..d29fe0d9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ca/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/ca/messages",{"CarouselPrevious":"Anterior","CarouselNext":"Següent","PageIndicatorLabel":"pàgina $0 de $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ca/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ca/messages.js.uncompressed.js new file mode 100644 index 00000000..a62fd9c8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ca/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/ca/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Anterior", + // Title of the next button in Carousel + "CarouselNext": "Següent", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "pàgina $0 de $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/cs/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/cs/messages.js new file mode 100644 index 00000000..2142227f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/cs/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/cs/messages",{"CarouselPrevious":"Předchozí","CarouselNext":"Další","PageIndicatorLabel":"stránka $0 ze $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/cs/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/cs/messages.js.uncompressed.js new file mode 100644 index 00000000..aba1c80d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/cs/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/cs/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Předchozí", + // Title of the next button in Carousel + "CarouselNext": "Další", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "stránka $0 ze $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/da/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/da/messages.js new file mode 100644 index 00000000..f78f63ef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/da/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/da/messages",{"CarouselPrevious":"Forrige","CarouselNext":"Næste","PageIndicatorLabel":"side $0 af $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/da/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/da/messages.js.uncompressed.js new file mode 100644 index 00000000..11907ef8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/da/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/da/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Forrige", + // Title of the next button in Carousel + "CarouselNext": "Næste", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "side $0 af $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/de/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/de/messages.js new file mode 100644 index 00000000..af94928f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/de/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/de/messages",{"CarouselPrevious":"Zurück","CarouselNext":"Weiter","PageIndicatorLabel":"Seite $0 von $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/de/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/de/messages.js.uncompressed.js new file mode 100644 index 00000000..491720bc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/de/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/de/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Zurück", + // Title of the next button in Carousel + "CarouselNext": "Weiter", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "Seite $0 von $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/el/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/el/messages.js new file mode 100644 index 00000000..e58eb6b2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/el/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/el/messages",{"CarouselPrevious":"Προηγούμενο","CarouselNext":"Επόμενο","PageIndicatorLabel":"σελίδα $0 από $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/el/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/el/messages.js.uncompressed.js new file mode 100644 index 00000000..1716bbe0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/el/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/el/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Προηγούμενο", + // Title of the next button in Carousel + "CarouselNext": "Επόμενο", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "σελίδα $0 από $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/es/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/es/messages.js new file mode 100644 index 00000000..99d08b9a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/es/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/es/messages",{"CarouselPrevious":"Anterior","CarouselNext":"Siguiente","PageIndicatorLabel":"página $0 de $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/es/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/es/messages.js.uncompressed.js new file mode 100644 index 00000000..f827e38e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/es/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/es/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Anterior", + // Title of the next button in Carousel + "CarouselNext": "Siguiente", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "página $0 de $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fi/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fi/messages.js new file mode 100644 index 00000000..fadfa36b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fi/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/fi/messages",{"CarouselPrevious":"Edellinen","CarouselNext":"Seuraava","PageIndicatorLabel":"sivu $0 / $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fi/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fi/messages.js.uncompressed.js new file mode 100644 index 00000000..5cd621a8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fi/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/fi/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Edellinen", + // Title of the next button in Carousel + "CarouselNext": "Seuraava", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "sivu $0 / $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fr/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fr/messages.js new file mode 100644 index 00000000..f3e766fe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fr/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/fr/messages",{"CarouselPrevious":"Précédent","CarouselNext":"Suivant","PageIndicatorLabel":"page $0 sur $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fr/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fr/messages.js.uncompressed.js new file mode 100644 index 00000000..66d7d816 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/fr/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/fr/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Précédent", + // Title of the next button in Carousel + "CarouselNext": "Suivant", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "page $0 sur $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/he/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/he/messages.js new file mode 100644 index 00000000..93ca20c0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/he/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/he/messages",{"CarouselPrevious":"הקודם","CarouselNext":"הבא","PageIndicatorLabel":"דף $0 מתוך $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/he/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/he/messages.js.uncompressed.js new file mode 100644 index 00000000..3b777a17 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/he/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/he/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "הקודם", + // Title of the next button in Carousel + "CarouselNext": "הבא", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "דף $0 מתוך $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hr/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hr/messages.js new file mode 100644 index 00000000..bc8e9361 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hr/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/hr/messages",{"CarouselPrevious":"Prethodno","CarouselNext":"Sljedeće","PageIndicatorLabel":"stranica $0 od $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hr/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hr/messages.js.uncompressed.js new file mode 100644 index 00000000..5a67b72c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hr/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/hr/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Prethodno", + // Title of the next button in Carousel + "CarouselNext": "Sljedeće", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "stranica $0 od $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hu/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hu/messages.js new file mode 100644 index 00000000..61c88b89 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hu/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/hu/messages",{"CarouselPrevious":"Előző","CarouselNext":"Következő","PageIndicatorLabel":"$0 / $1 oldal"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hu/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hu/messages.js.uncompressed.js new file mode 100644 index 00000000..16732139 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/hu/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/hu/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Előző", + // Title of the next button in Carousel + "CarouselNext": "Következő", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "$0 / $1 oldal" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/id/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/id/messages.js new file mode 100644 index 00000000..3989b702 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/id/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/id/messages",{"CarouselPrevious":"Sebelumnya","CarouselNext":"Berikutnya","PageIndicatorLabel":"halaman $0 dari $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/id/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/id/messages.js.uncompressed.js new file mode 100644 index 00000000..e6f926b0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/id/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/id/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Sebelumnya", + // Title of the next button in Carousel + "CarouselNext": "Berikutnya", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "halaman $0 dari $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/it/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/it/messages.js new file mode 100644 index 00000000..2daf26a3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/it/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/it/messages",{"CarouselPrevious":"Precedente","CarouselNext":"Avanti","PageIndicatorLabel":"pagina $0 di $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/it/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/it/messages.js.uncompressed.js new file mode 100644 index 00000000..8613ee1e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/it/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/it/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Precedente", + // Title of the next button in Carousel + "CarouselNext": "Avanti", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "pagina $0 di $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ja/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ja/messages.js new file mode 100644 index 00000000..724b2c0e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ja/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/ja/messages",{"CarouselPrevious":"前へ","CarouselNext":"次へ","PageIndicatorLabel":"$1 ページ中の $0"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ja/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ja/messages.js.uncompressed.js new file mode 100644 index 00000000..7be2db07 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ja/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/ja/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "前へ", + // Title of the next button in Carousel + "CarouselNext": "次へ", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "$1 ページ中の $0" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/kk/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/kk/messages.js new file mode 100644 index 00000000..8fc0f4d2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/kk/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/kk/messages",{"CarouselPrevious":"Алдыңғы","CarouselNext":"Келесі","PageIndicatorLabel":"$1 беттің $0-беті"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/kk/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/kk/messages.js.uncompressed.js new file mode 100644 index 00000000..36d36a7c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/kk/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/kk/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Алдыңғы", + // Title of the next button in Carousel + "CarouselNext": "Келесі", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "$1 беттің $0-беті" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ko/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ko/messages.js new file mode 100644 index 00000000..9cbfd77a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ko/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/ko/messages",{"CarouselPrevious":"이전","CarouselNext":"다음","PageIndicatorLabel":"페이지 $0/$1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ko/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ko/messages.js.uncompressed.js new file mode 100644 index 00000000..115db99c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ko/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/ko/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "이전", + // Title of the next button in Carousel + "CarouselNext": "다음", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "페이지 $0/$1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/messages.js new file mode 100644 index 00000000..8095818b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/messages",{root:({"CarouselPrevious":"Previous","CarouselNext":"Next","PageIndicatorLabel":"page $0 of $1"}),"zh":true,"zh-tw":true,"uk":true,"tr":true,"th":true,"sv":true,"sl":true,"sk":true,"ru":true,"ro":true,"pt":true,"pt-pt":true,"pl":true,"nl":true,"nb":true,"ko":true,"kk":true,"ja":true,"it":true,"id":true,"hu":true,"hr":true,"he":true,"fr":true,"fi":true,"es":true,"el":true,"de":true,"da":true,"cs":true,"ca":true,"bg":true,"ar":true}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/messages.js.uncompressed.js new file mode 100644 index 00000000..4b01bb9e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/messages.js.uncompressed.js @@ -0,0 +1,48 @@ +define("dojox/mobile/nls/messages", { root: +//begin v1.x content +({ + // Title of the previous button in Carousel + "CarouselPrevious": "Previous", + // Title of the next button in Carousel + "CarouselNext": "Next", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "page $0 of $1" +}) +//end v1.x content +, +"zh": true, +"zh-tw": true, +"uk": true, +"tr": true, +"th": true, +"sv": true, +"sl": true, +"sk": true, +"ru": true, +"ro": true, +"pt": true, +"pt-pt": true, +"pl": true, +"nl": true, +"nb": true, +"ko": true, +"kk": true, +"ja": true, +"it": true, +"id": true, +"hu": true, +"hr": true, +"he": true, +"fr": true, +"fi": true, +"es": true, +"el": true, +"de": true, +"da": true, +"cs": true, +"ca": true, +"bg": true, +"ar": true +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nb/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nb/messages.js new file mode 100644 index 00000000..a1f256fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nb/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/nb/messages",{"CarouselPrevious":"Forrige","CarouselNext":"Neste","PageIndicatorLabel":"side $0 av $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nb/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nb/messages.js.uncompressed.js new file mode 100644 index 00000000..a0a4e20e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nb/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/nb/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Forrige", + // Title of the next button in Carousel + "CarouselNext": "Neste", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "side $0 av $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nl/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nl/messages.js new file mode 100644 index 00000000..371f39a0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nl/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/nl/messages",{"CarouselPrevious":"Vorige","CarouselNext":"Volgende","PageIndicatorLabel":"pagina $0 van $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nl/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nl/messages.js.uncompressed.js new file mode 100644 index 00000000..f79c5143 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/nl/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/nl/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Vorige", + // Title of the next button in Carousel + "CarouselNext": "Volgende", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "pagina $0 van $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pl/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pl/messages.js new file mode 100644 index 00000000..26f174e6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pl/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/pl/messages",{"CarouselPrevious":"Wstecz","CarouselNext":"Dalej","PageIndicatorLabel":"Strona $0 z $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pl/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pl/messages.js.uncompressed.js new file mode 100644 index 00000000..fb164bb3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pl/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/pl/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Wstecz", + // Title of the next button in Carousel + "CarouselNext": "Dalej", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "Strona $0 z $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt-pt/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt-pt/messages.js new file mode 100644 index 00000000..a86eced1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt-pt/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/pt-pt/messages",{"CarouselPrevious":"Anterior","CarouselNext":"Seguinte","PageIndicatorLabel":"página $0 de $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt-pt/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt-pt/messages.js.uncompressed.js new file mode 100644 index 00000000..6e7c55dc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt-pt/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/pt-pt/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Anterior", + // Title of the next button in Carousel + "CarouselNext": "Seguinte", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "página $0 de $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt/messages.js new file mode 100644 index 00000000..f49283a2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/pt/messages",{"CarouselPrevious":"Anterior","CarouselNext":"Próximo","PageIndicatorLabel":"página $0 de $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt/messages.js.uncompressed.js new file mode 100644 index 00000000..d73817ad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/pt/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/pt/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Anterior", + // Title of the next button in Carousel + "CarouselNext": "Próximo", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "página $0 de $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ro/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ro/messages.js new file mode 100644 index 00000000..ceb70c51 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ro/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/ro/messages",{"CarouselPrevious":"Anterioară","CarouselNext":"Următoare","PageIndicatorLabel":"pagina $0 din $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ro/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ro/messages.js.uncompressed.js new file mode 100644 index 00000000..c2236378 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ro/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/ro/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Anterioară", + // Title of the next button in Carousel + "CarouselNext": "Următoare", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "pagina $0 din $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ru/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ru/messages.js new file mode 100644 index 00000000..629c0fa0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ru/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/ru/messages",{"CarouselPrevious":"Назад","CarouselNext":"Далее","PageIndicatorLabel":"стр. $0 из $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ru/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ru/messages.js.uncompressed.js new file mode 100644 index 00000000..148ce76b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/ru/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/ru/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Назад", + // Title of the next button in Carousel + "CarouselNext": "Далее", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "стр. $0 из $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sk/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sk/messages.js new file mode 100644 index 00000000..08e6fc27 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sk/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/sk/messages",{"CarouselPrevious":"Predchádzajúci","CarouselNext":"Nasledujúci","PageIndicatorLabel":"stránka $0 z $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sk/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sk/messages.js.uncompressed.js new file mode 100644 index 00000000..161bb3b1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sk/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/sk/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Predchádzajúci", + // Title of the next button in Carousel + "CarouselNext": "Nasledujúci", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "stránka $0 z $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sl/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sl/messages.js new file mode 100644 index 00000000..8437e342 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sl/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/sl/messages",{"CarouselPrevious":"Prejšnji","CarouselNext":"Naprej","PageIndicatorLabel":"Stran $0 od $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sl/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sl/messages.js.uncompressed.js new file mode 100644 index 00000000..e8616c5f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sl/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/sl/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Prejšnji", + // Title of the next button in Carousel + "CarouselNext": "Naprej", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "Stran $0 od $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sv/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sv/messages.js new file mode 100644 index 00000000..3e21e43d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sv/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/sv/messages",{"CarouselPrevious":"Föregående","CarouselNext":"Nästa","PageIndicatorLabel":"sida $0 av $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sv/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sv/messages.js.uncompressed.js new file mode 100644 index 00000000..40ec32c7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/sv/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/sv/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Föregående", + // Title of the next button in Carousel + "CarouselNext": "Nästa", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "sida $0 av $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/th/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/th/messages.js new file mode 100644 index 00000000..3c2bf3f1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/th/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/th/messages",{"CarouselPrevious":"ก่อนหน้านี้","CarouselNext":"ถัดไป","PageIndicatorLabel":"หน้า $0 จาก $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/th/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/th/messages.js.uncompressed.js new file mode 100644 index 00000000..1c3b2f14 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/th/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/th/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "ก่อนหน้านี้", + // Title of the next button in Carousel + "CarouselNext": "ถัดไป", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "หน้า $0 จาก $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/tr/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/tr/messages.js new file mode 100644 index 00000000..73aac064 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/tr/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/tr/messages",{"CarouselPrevious":"Geri","CarouselNext":"İleri","PageIndicatorLabel":"sayfa $0 / $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/tr/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/tr/messages.js.uncompressed.js new file mode 100644 index 00000000..4fb39d7e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/tr/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/tr/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Geri", + // Title of the next button in Carousel + "CarouselNext": "İleri", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "sayfa $0 / $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/uk/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/uk/messages.js new file mode 100644 index 00000000..8f2547a0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/uk/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/uk/messages",{"CarouselPrevious":"Назад","CarouselNext":"Далі","PageIndicatorLabel":"стор. $0 з $1"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/uk/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/uk/messages.js.uncompressed.js new file mode 100644 index 00000000..62b7b12f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/uk/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/uk/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "Назад", + // Title of the next button in Carousel + "CarouselNext": "Далі", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "стор. $0 з $1" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh-tw/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh-tw/messages.js new file mode 100644 index 00000000..03cb7aad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh-tw/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/zh-tw/messages",{"CarouselPrevious":"上一步","CarouselNext":"下一步","PageIndicatorLabel":"第 $1 之 $0 頁"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh-tw/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh-tw/messages.js.uncompressed.js new file mode 100644 index 00000000..60e3ec73 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh-tw/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/zh-tw/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "上一步", + // Title of the next button in Carousel + "CarouselNext": "下一步", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "第 $1 之 $0 頁" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh/messages.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh/messages.js new file mode 100644 index 00000000..ac7248e4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh/messages.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/mobile/nls/zh/messages",{"CarouselPrevious":"上一步","CarouselNext":"下一步","PageIndicatorLabel":"第 $0 页(共 $1 页)"}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh/messages.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh/messages.js.uncompressed.js new file mode 100644 index 00000000..398bb2cb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/nls/zh/messages.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/mobile/nls/zh/messages", { +//begin v1.x content + // Title of the previous button in Carousel + "CarouselPrevious": "上一步", + // Title of the next button in Carousel + "CarouselNext": "下一步", + // PageIndicatorLabel: accessibility label for PageIndicator + // $0 replaced by the index of the current page + // $1 replaced by the total number of pages + "PageIndicatorLabel": "第 $0 页(共 $1 页)" +//end v1.x content +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/pageTurningUtils.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/pageTurningUtils.js new file mode 100644 index 00000000..8fec40de --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/pageTurningUtils.js @@ -0,0 +1,237 @@ +//>>built +define("dojox/mobile/pageTurningUtils",["dojo/_base/kernel","dojo/_base/array","dojo/_base/connect","dojo/_base/event","dojo/dom-class","dojo/dom-construct","dojo/dom-style","./_css3"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +_1.experimental("dojox.mobile.pageTurningUtils"); +return function(){ +this.w=0; +this.h=0; +this.turnfrom="top"; +this.page=1; +this.dogear=1; +this.duration=2; +this.alwaysDogeared=false; +this._styleParams={}; +this._catalogNode=null; +this._currentPageNode=null; +this._transitionEndHandle=null; +this.init=function(w,h,_9,_a,_b,_c,_d){ +this.w=w; +this.h=h; +this.turnfrom=_9?_9:this.turnfrom; +this.page=_a?_a:this.page; +this.dogear=typeof _b!=="undefined"?_b:this.dogear; +this.duration=typeof _c!=="undefined"?_c:this.duration; +this.alwaysDogeared=typeof _d!=="undefined"?_d:this.alwaysDogeared; +if(this.turnfrom==="bottom"){ +this.alwaysDogeared=true; +} +this._calcStyleParams(); +}; +this._calcStyleParams=function(){ +var _e=Math.tan(58*Math.PI/180),_f=Math.cos(32*Math.PI/180),_10=Math.sin(32*Math.PI/180),_11=Math.tan(32*Math.PI/180),w=this.w,h=this.h,_12=this.page,_13=this.turnfrom,_14=this._styleParams; +var _15=w*_e,Q=_15,fw=Q*_10+Q*_f*_e,fh=_15+w+w/_e,dw=w*0.11*this.dogear,pw=w-dw,_16=pw*_f,cx,cy,dx,dy,fy; +switch(this.turnfrom){ +case "top": +cx=fw-_16; +cy=_16*_e; +dx=fw-dw; +dy=cy+pw/_e-7; +fy=cy/_f; +_14.init={page:_8.add({top:-fy+"px",left:(-fw+(_12===2?w:0))+"px",width:fw+"px",height:fh+"px"},{transformOrigin:"100% 0%"}),front:_8.add({width:w+"px",height:h+"px"},{boxShadow:"0 0"}),back:_8.add({width:w+"px",height:h+"px"},{boxShadow:"0 0"}),shadow:{display:"",left:fw+"px",height:h*1.5+"px"}}; +_14.turnForward={page:_8.add({},{transform:"rotate(0deg)"}),front:_8.add({},{transform:"translate("+fw+"px,"+fy+"px) rotate(0deg)",transformOrigin:"-110px -18px"}),back:_8.add({},{transform:"translate("+(fw-w)+"px,"+fy+"px) rotate(0deg)",transformOrigin:"0px 0px"})}; +_14.turnBackward={page:_8.add({},{transform:"rotate(-32deg)"}),front:_8.add({},{transform:"translate("+cx+"px,"+cy+"px) rotate(32deg)",transformOrigin:"0px 0px"}),back:_8.add({},{transform:"translate("+dx+"px,"+dy+"px) rotate(-32deg)",transformOrigin:"0px 0px"})}; +break; +case "bottom": +cx=fw-(h*_10+w*_f)-2; +cy=fh-(h+w/_11)*_f; +dx=fw; +dy=fh-w/_10-h; +fy=fh-w/_11-h; +_14.init={page:_8.add({top:(-fy+50)+"px",left:(-fw+(_12===2?w:0))+"px",width:fw+"px",height:fh+"px"},{transformOrigin:"100% 100%"}),front:_8.add({width:w+"px",height:h+"px"},{boxShadow:"0 0"}),back:_8.add({width:w+"px",height:h+"px"},{boxShadow:"0 0"}),shadow:{display:"none"}}; +_14.turnForward={page:_8.add({},{transform:"rotate(0deg)"}),front:_8.add({},{transform:"translate("+fw+"px,"+fy+"px) rotate(0deg)",transformOrigin:"-220px 35px"}),back:_8.add({},{transform:"translate("+(w*2)+"px,"+fy+"px) rotate(0deg)",transformOrigin:"0px 0px"})}; +_14.turnBackward={page:_8.add({},{transform:"rotate(32deg)"}),front:_8.add({},{transform:"translate("+cx+"px,"+cy+"px) rotate(-32deg)",transformOrigin:"0px 0px"}),back:_8.add({},{transform:"translate("+dx+"px,"+dy+"px) rotate(0deg)",transformOrigin:"0px 0px"})}; +break; +case "left": +cx=-w; +cy=pw/_11-2; +dx=-pw; +dy=fy=pw/_10+dw*_10; +_14.init={page:_8.add({top:-cy+"px",left:w+"px",width:fw+"px",height:fh+"px"},{transformOrigin:"0% 0%"}),front:_8.add({width:w+"px",height:h+"px"},{boxShadow:"0 0"}),back:_8.add({width:w+"px",height:h+"px"},{boxShadow:"0 0"}),shadow:{display:"",left:"-4px",height:((_12===2?h*1.5:h)+50)+"px"}}; +_14.turnForward={page:_8.add({},{transform:"rotate(0deg)"}),front:_8.add({},{transform:"translate("+cx+"px,"+cy+"px) rotate(0deg)",transformOrigin:"160px 68px"}),back:_8.add({},{transform:"translate(0px,"+cy+"px) rotate(0deg)",transformOrigin:"0px 0px"})}; +_14.turnBackward={page:_8.add({},{transform:"rotate(32deg)"}),front:_8.add({},{transform:"translate("+(-dw)+"px,"+dy+"px) rotate(-32deg)",transformOrigin:"0px 0px"}),back:_8.add({},{transform:"translate("+dx+"px,"+dy+"px) rotate(32deg)",transformOrigin:"top right"})}; +break; +} +_14.init.catalog={width:(_12===2?w*2:w)+"px",height:((_12===2?h*1.5:h)+(_13=="top"?0:50))+"px"}; +}; +this.getChildren=function(_17){ +return _2.filter(_17.childNodes,function(n){ +return n.nodeType===1; +}); +}; +this.getPages=function(){ +return this._catalogNode?this.getChildren(this._catalogNode):null; +}; +this.getCurrentPage=function(){ +return this._currentPageNode; +}; +this.getIndexOfPage=function(_18,_19){ +if(!_19){ +_19=this.getPages(); +} +for(var i=0;i<_19.length;i++){ +if(_18===_19[i]){ +return i; +} +} +return -1; +}; +this.getNextPage=function(_1a){ +for(var n=_1a.nextSibling;n;n=n.nextSibling){ +if(n.nodeType===1){ +return n; +} +} +return null; +}; +this.getPreviousPage=function(_1b){ +for(var n=_1b.previousSibling;n;n=n.previousSibling){ +if(n.nodeType===1){ +return n; +} +} +return null; +}; +this.isPageTurned=function(_1c){ +return _1c.style[_8.name("transform")]=="rotate(0deg)"; +}; +this._onPageTurned=function(e){ +_4.stop(e); +if(_5.contains(e.target,"mblPageTurningPage")){ +this.onPageTurned(e.target); +} +}; +this.onPageTurned=function(){ +}; +this.initCatalog=function(_1d){ +if(this._catalogNode!=_1d){ +if(this._transitionEndHandle){ +_3.disconnect(this._transitionEndHandle); +} +this._transitionEndHandle=_3.connect(_1d,_8.name("transitionEnd"),this,"_onPageTurned"); +this._catalogNode=_1d; +} +_5.add(_1d,"mblPageTurningCatalog"); +_7.set(_1d,this._styleParams.init.catalog); +var _1e=this.getPages(); +_2.forEach(_1e,function(_1f){ +this.initPage(_1f); +},this); +this.resetCatalog(); +}; +this._getBaseZIndex=function(){ +return this._catalogNode.style.zIndex||0; +}; +this.resetCatalog=function(){ +var _20=this.getPages(),len=_20.length,_21=this._getBaseZIndex(); +for(var i=len-1;i>=0;i--){ +var _22=_20[i]; +this.showDogear(_22); +if(this.isPageTurned(_22)){ +_22.style.zIndex=_21+len+1; +}else{ +_22.style.zIndex=_21+len-i; +!this.alwaysDogeared&&this.hideDogear(_22); +this._currentPageNode=_22; +} +} +if(!this.alwaysDogeared&&this._currentPageNode!=_20[len-1]){ +this.showDogear(this._currentPageNode); +} +}; +this.initPage=function(_23,dir){ +var _24=this.getChildren(_23); +while(_24.length<3){ +_23.appendChild(_6.create("div",null)); +_24=this.getChildren(_23); +} +var _25=!_5.contains(_23,"mblPageTurningPage"); +_5.add(_23,"mblPageTurningPage"); +_5.add(_24[0],"mblPageTurningFront"); +_5.add(_24[1],"mblPageTurningBack"); +_5.add(_24[2],"mblPageTurningShadow"); +var p=this._styleParams.init; +_7.set(_23,p.page); +_7.set(_24[0],p.front); +_7.set(_24[1],p.back); +p.shadow&&_7.set(_24[2],p.shadow); +if(!dir){ +if(_25&&this._currentPageNode){ +var _26=this.getPages(); +dir=this.getIndexOfPage(_23) + // |
    + // |
    + // |
    + // |
    + // |
    + // |
    + // |
    + // |
    + // |
    + // |
    + // |
    + // |
    + // |
    + + this.w = 0; + this.h = 0; + this.turnfrom = "top"; + this.page = 1; + this.dogear = 1.0; + this.duration = 2; + this.alwaysDogeared = false; + + /* Internal properties */ + this._styleParams = {}; + this._catalogNode = null; + this._currentPageNode = null; + this._transitionEndHandle = null; + + this.init = function(/*int*/w, /*int*/h, /*String?*/turnfrom, + /*int?*/page, /*Number?*/dogear, /*Number?*/duration, + /*Boolean?*/alwaysDogeared){ + // summary: + // Sets property values necessary for calculating the style parameters + // for page positioning and page turning effects. + // w: int + // The width of each page by pixels. You cannot specify it by percentage. + // h: int + // The height of each page by pixels. You cannot specify it by percentage. + // turnfrom: String? + // Specifies from which side/corner the page turning starts. + // You can choose from "top", "bottom" or "left". Defaults to "top". + // If "top", each page is turned from top-right corner of the page. + // If "bottom", each page is turned from bottom-right corner of the page. + // And if "left", each page is turned from top-left corner of the page. + // The page is shown as dog-eared except the case of "bottom". + // page: int? + // The number of pages shown in the screen at a time. + // This parameter should be either of 1 or 2. Defaults to 1. + // If 1, the only one side of two facing pages are shown. + // If 2, the two facing pages are shown at a time. + // dogear: Number? + // The ratio of actual dog-ear width to the maximum dog-ear width which is + // 11 percent of the page width (= 0.11 * w). + // This parameter should be a float number between 0 and 1. Defaults to 1. + // The actual dog-ear width is calculated by the following formula: + // | 0.11 * w * dogear. + // This parameter is ignored if "bottom" is specified to turnfrom parameter. + // duration: Number? + // The duration of page turning animations by seconds. (ex. 1.5, 3, etc) + // Defaults to 2. + // alwaysDogeared: Boolean? + // Specifies whether all pages are always dog-eared or not. + // If true, all pages are always dog-eared. + // If false, only the current page is dog-eared while the others are not. + // This parameter is ignored if "bottom" is specified to turnfrom parameter. + + // Set property values + this.w = w; + this.h = h; + this.turnfrom = turnfrom ? turnfrom : this.turnfrom; + this.page = page ? page : this.page; + this.dogear = typeof dogear !== 'undefined' ? dogear : this.dogear; + this.duration = typeof duration !== 'undefined' ? duration : this.duration; + this.alwaysDogeared = typeof alwaysDogeared !== 'undefined' ? alwaysDogeared : this.alwaysDogeared; + + if(this.turnfrom === "bottom"){ // dog-ear is not supported if using "bottom" + this.alwaysDogeared = true; + } + // Calculate style parameters for page positioning and page turning effects + this._calcStyleParams(); + }; + + this._calcStyleParams = function(){ + // tags: + // private + var tan58 = Math.tan(58 * Math.PI/180), + cos32 = Math.cos(32 * Math.PI/180), + sin32 = Math.sin(32 * Math.PI/180), + tan32 = Math.tan(32 * Math.PI/180), + w = this.w, + h = this.h, + page = this.page, + turnfrom = this.turnfrom, + params = this._styleParams; + + // Calculate each div size and position based on the page turning algorithm + // fw: frontWidth, fh: frontHeight, dw: dogear, cx: posX, cy: posY, + // dx: dogearX, dy: dogearY, fy:actualPagePos + var fold = w * tan58, + Q = fold, + fw = Q * sin32 + Q * cos32 * tan58, + fh = fold + w + w/tan58, + dw = w * 0.11 * this.dogear, + pw = w - dw, + base = pw * cos32, + cx, cy, dx, dy, fy; // These params depend on the types of "turnfrom" parameter + + switch(this.turnfrom){ // TODO Should separate each case as a plugin? + case "top": + cx = fw - base; + cy = base * tan58; + dx = fw - dw; + dy = cy + pw/tan58 - 7; + fy = cy/cos32; + + params.init = { + page: css3.add({ + top: -fy + "px", + left: (-fw + (page === 2 ? w : 0)) + "px", + width: fw + "px", + height: fh + "px" + }, { + transformOrigin: "100% 0%" + }), + front: css3.add({ + width: w + "px", + height: h + "px" + }, { + boxShadow: "0 0" + }), + back: css3.add({ + width: w + "px", + height: h + "px" + }, { + boxShadow: "0 0" + }), + shadow: { + display: "", + left: fw + "px", + height: h * 1.5 + "px" + } + }; + params.turnForward = { + page: css3.add({}, { + transform: "rotate(0deg)" + }), + front: css3.add({}, { + transform: "translate("+ fw + "px," + fy +"px) rotate(0deg)", + transformOrigin: "-110px -18px" + }), + back: css3.add({}, { + transform: "translate("+ (fw - w) + "px," + fy +"px) rotate(0deg)", + transformOrigin: "0px 0px" + }) + }; + params.turnBackward = { + page: css3.add({}, { + transform: "rotate(-32deg)" + }), + front: css3.add({}, { + transform: "translate("+ cx + "px," + cy +"px) rotate(32deg)", + transformOrigin: "0px 0px" + }), + back: css3.add({}, { + transform: "translate("+ dx + "px," + dy +"px) rotate(-32deg)", + transformOrigin: "0px 0px" + }) + }; + break; + + case "bottom": + cx = fw - (h * sin32 + w * cos32) - 2; + cy = fh - (h + w/tan32) * cos32; + dx = fw; + dy = fh - w/sin32 - h; + fy = fh - w/tan32 - h; + + params.init = { + page: css3.add({ + top: (-fy + 50) + "px", + left: (-fw + (page === 2 ? w : 0)) + "px", + width: fw + "px", + height: fh + "px" + }, { + transformOrigin: "100% 100%" + }), + front: css3.add({ + width: w + "px", + height: h + "px" + }, { + boxShadow: "0 0" + }), + back: css3.add({ + width: w + "px", + height: h + "px" + }, { + boxShadow: "0 0" + }), + shadow: { + display: "none" + } + }; + params.turnForward = { + page: css3.add({}, { + transform: "rotate(0deg)" + }), + front: css3.add({}, { + transform: "translate("+ fw + "px," + fy +"px) rotate(0deg)", + transformOrigin: "-220px 35px" + }), + back: css3.add({}, { + transform: "translate("+ (w * 2) + "px," + fy +"px) rotate(0deg)", + transformOrigin: "0px 0px" + }) + }; + params.turnBackward = { + page: css3.add({}, { + transform: "rotate(32deg)" + }), + front: css3.add({}, { + transform: "translate("+ cx + "px," + cy +"px) rotate(-32deg)", + transformOrigin: "0px 0px" + }), + back: css3.add({}, { + transform: "translate("+ dx + "px," + dy +"px) rotate(0deg)", + transformOrigin: "0px 0px" + }) + }; + break; + + case "left": + cx = -w; + cy = pw/tan32 - 2; + dx = -pw; + dy = fy = pw/sin32 + dw * sin32; + + params.init = { + page: css3.add({ + top: -cy + "px", + left: w + "px", + width: fw + "px", + height: fh + "px" + }, { + transformOrigin: "0% 0%" + }), + front: css3.add({ + width: w + "px", + height: h + "px" + }, { + boxShadow: "0 0" + }), + back: css3.add({ + width: w + "px", + height: h + "px" + }, { + boxShadow: "0 0" + }), + shadow: { + display: "", + left: "-4px", + height: ((page === 2 ? h * 1.5 : h) + 50) + "px" + } + }; + params.turnForward = { + page: css3.add({}, { + transform: "rotate(0deg)" + }), + front: css3.add({}, { + transform: "translate("+ cx + "px," + cy +"px) rotate(0deg)", + transformOrigin: "160px 68px" + }), + back: css3.add({}, { + transform: "translate(0px," + cy +"px) rotate(0deg)", + transformOrigin: "0px 0px" + }) + }; + params.turnBackward = { + page: css3.add({}, { + transform: "rotate(32deg)" + }), + front: css3.add({}, { + transform: "translate("+ (-dw) + "px," + dy +"px) rotate(-32deg)", + transformOrigin: "0px 0px" + }), + back: css3.add({}, { + transform: "translate("+ dx + "px," + dy +"px) rotate(32deg)", + transformOrigin: "top right" + }) + }; + break; + } + + params.init.catalog = { // catalogNode + width: (page === 2 ? w * 2 : w) + "px", + height: ((page === 2 ? h * 1.5 : h) + (turnfrom == "top" ? 0 : 50)) + "px" + }; + }; + + this.getChildren = function(/*DomNode*/node){ + return array.filter(node.childNodes, function(n){ return n.nodeType === 1; }); + }; + + this.getPages = function(){ + // summary: + // Get the array of all page nodes. + return this._catalogNode ? this.getChildren(this._catalogNode) : null; + }; + + this.getCurrentPage = function(){ + // summary: + // Get the current page node. + return this._currentPageNode; + }; + + this.getIndexOfPage = function(/*DomNode*/pageNode, /*DomNode[]?*/pages){ + if(!pages){ + pages = this.getPages(); + } + for(var i=0; i=0; i--){ + var pageNode = pages[i]; + this.showDogear(pageNode); + if(this.isPageTurned(pageNode)){ + pageNode.style.zIndex = base + len + 1; + }else{ + pageNode.style.zIndex = base + len - i; + !this.alwaysDogeared && this.hideDogear(pageNode); + this._currentPageNode = pageNode; + } + } + if(!this.alwaysDogeared && this._currentPageNode != pages[len - 1]){ + this.showDogear(this._currentPageNode); + } + }; + + this.initPage = function(/*DomNode*/pageNode, /*int?*/dir){ + // summary: + // Initializes the specified page. + // description: + // Apply style class and other various styles to the specified page node + // for initialization. + // This function must be called when you add a new page after initialization. + // pageNode: DOMNode + // The page node to be initialized. + // dir: int? + // Specified whether the page is turned or not at initialization. + // This parameter should be either of 1 or -1. + // If 1, the page is turned at initialization. If -1, it is not turned. + + // Create shadow node if not exist + var childNodes = this.getChildren(pageNode); + while(childNodes.length < 3){ + pageNode.appendChild(domConstruct.create("div", null)); + childNodes = this.getChildren(pageNode); + } + + // Check if it is the first time to initialize this page node or not + var isFirst = !domClass.contains(pageNode, "mblPageTurningPage"); + + // Apply style class + domClass.add(pageNode, "mblPageTurningPage"); + domClass.add(childNodes[0], "mblPageTurningFront"); // frontNode + domClass.add(childNodes[1], "mblPageTurningBack"); // backNode + domClass.add(childNodes[2], "mblPageTurningShadow"); // shadowNode + + // Apply styles + var p = this._styleParams.init; + domStyle.set(pageNode, p.page); + domStyle.set(childNodes[0], p.front); // frontNode + domStyle.set(childNodes[1], p.back); // backNode + p.shadow && domStyle.set(childNodes[2], p.shadow); // shadowNode + + if(!dir){ + // Determine whether to turn this page or not + if(isFirst && this._currentPageNode){ + var pages = this.getPages(); + dir = this.getIndexOfPage(pageNode) < this.getIndexOfPage(this._currentPageNode) ? 1 : -1; + }else{ + dir = this.isPageTurned(pageNode) ? 1 : -1; + } + } + this._turnPage(pageNode, dir, 0); + }; + + this.turnToNext = function(/*Number?*/duration){ + // summary: + // Turns a page forward. + // description: + // The current page is turned forward if it is not the last page of the book. + // duration: Number? + // The duration of page turning animations by seconds. (ex. 1.5, 3, etc) + // If this parameter is omitted, this.duration property value is used. + var nextPage = this.getNextPage(this._currentPageNode); + if(nextPage){ + this._turnPage(this._currentPageNode, 1, duration); + this._currentPageNode = nextPage; + } + }; + + this.turnToPrev = function(/*Number?*/duration){ + // summary: + // Turns a page backward. + // description: + // The current page is turned backward if it is not the first page of the book. + // duration: Number? + // The duration of page turning animations by seconds. (ex. 1.5, 3, etc) + // If this parameter is omitted, this.duration property value is used. + var prevPage = this.getPreviousPage(this._currentPageNode); + if(prevPage){ + this._turnPage(prevPage, -1, duration); + this._currentPageNode = prevPage; + } + }; + + this.goTo = function(/*int*/index){ + // summary: + // Jumps to the specified page without page turning animations. + // index: int + // The index of the page you want to jump to. + var pages = this.getPages(); + if(this._currentPageNode === pages[index] || pages.length <= index) { return; } + + var goBackward = index < this.getIndexOfPage(this._currentPageNode, pages); + while(this._currentPageNode !== pages[index]) { + goBackward ? this.turnToPrev(0) : this.turnToNext(0); + } + }; + + this._turnPage = function(/*DomNode*/pageNode, /*int*/dir, /*Number?*/duration){ + // tags: + // private + var childNodes = this.getChildren(pageNode), + d = ((typeof duration !== 'undefined') ? duration : this.duration) + "s", + p = (dir === 1) ? this._styleParams.turnForward : this._styleParams.turnBackward; + + // Apply styles for page turning animations + p.page[css3.name("transitionDuration")] = d; + domStyle.set(pageNode, p.page); + + p.front[css3.name("transitionDuration")] = d; + domStyle.set(childNodes[0], p.front); // frontNode + + p.back[css3.name("transitionDuration")] = d; + domStyle.set(childNodes[1], p.back); // backNode + + // Adjust z-index and dog-ear + var pages = this.getPages(), + nextPage = this.getNextPage(pageNode), + len = pages.length, + base = this._getBaseZIndex(); + if(dir === 1){ + pageNode.style.zIndex = base + len + 1; + if(!this.alwaysDogeared && nextPage && this.getNextPage(nextPage)){ + this.showDogear(nextPage); + } + }else{ + if(nextPage){ + nextPage.style.zIndex = base + len - this.getIndexOfPage(nextPage, pages); + !this.alwaysDogeared && this.hideDogear(nextPage); + } + } + }; + + this.showDogear = function(/*DomNode*/pageNode){ + // summary: + // Shows the dog-ear. + var childNodes = this.getChildren(pageNode);; + domStyle.set(pageNode, "overflow", ""); + childNodes[1] && domStyle.set(childNodes[1], "display", ""); // backNode + childNodes[2] && domStyle.set(childNodes[2], "display", this.turnfrom === "bottom" ? "none" : ""); // shadowNode + }; + + this.hideDogear = function(/*DomNode*/pageNode){ + // summary: + // Hides the dog-ear. + if(this.turnfrom === "bottom"){ return; } + + var childNodes = this.getChildren(pageNode); + domStyle.set(pageNode, "overflow", "visible"); + childNodes[1] && domStyle.set(childNodes[1], "display", "none"); // backNode + childNodes[2] && domStyle.set(childNodes[2], "display", "none"); // shadowNode + }; + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/parser.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/parser.js new file mode 100644 index 00000000..7ae35283 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/parser.js @@ -0,0 +1,131 @@ +//>>built +define("dojox/mobile/parser",["dojo/_base/kernel","dojo/_base/array","dojo/_base/config","dojo/_base/lang","dojo/_base/window","dojo/ready"],function(_1,_2,_3,_4,_5,_6){ +var dm=_4.getObject("dojox.mobile",true); +var _7=function(){ +var _8={}; +var _9=function(_a,_b){ +if(typeof (_b)==="string"){ +var t=_a+":"+_b.replace(/ /g,""); +return _8[t]||(_8[t]=_9(_a).createSubclass(_2.map(_b.split(/, */),_9))); +} +return _8[_a]||(_8[_a]=_4.getObject(_a)||require(_a)); +}; +var _c=function(js){ +return eval(js); +}; +this.instantiate=function(_d,_e,_f){ +_e=_e||{}; +_f=_f||{}; +var i,ws=[]; +if(_d){ +for(i=0;i<_d.length;i++){ +var n=_d[i],_10=n._type,_11=_9(_10,n.getAttribute("data-dojo-mixins")),_12=_11.prototype,_13={},_14,v,t; +_4.mixin(_13,_c.call(_f.propsThis,"({"+(n.getAttribute("data-dojo-props")||"")+"})")); +_4.mixin(_13,_f.defaults); +_4.mixin(_13,_e); +for(_14 in _12){ +v=n.getAttributeNode(_14); +v=v&&v.nodeValue; +t=typeof _12[_14]; +if(!v&&(t!=="boolean"||v!=="")){ +continue; +} +if(_4.isArray(_12[_14])){ +_13[_14]=v.split(/\s*,\s*/); +}else{ +if(t==="string"){ +_13[_14]=v; +}else{ +if(t==="number"){ +_13[_14]=v-0; +}else{ +if(t==="boolean"){ +_13[_14]=(v!=="false"); +}else{ +if(t==="object"){ +_13[_14]=eval("("+v+")"); +}else{ +if(t==="function"){ +_13[_14]=_4.getObject(v,false)||new Function(v); +n.removeAttribute(_14); +} +} +} +} +} +} +} +_13["class"]=n.className; +if(!_13.style){ +_13.style=n.style.cssText; +} +v=n.getAttribute("data-dojo-attach-point"); +if(v){ +_13.dojoAttachPoint=v; +} +v=n.getAttribute("data-dojo-attach-event"); +if(v){ +_13.dojoAttachEvent=v; +} +var _15=new _11(_13,n); +ws.push(_15); +var _16=n.getAttribute("jsId")||n.getAttribute("data-dojo-id"); +if(_16){ +_4.setObject(_16,_15); +} +} +for(i=0;i>built +define("dojox/mobile/scrollable",["dojo/_base/kernel","dojo/_base/connect","dojo/_base/event","dojo/_base/lang","dojo/_base/window","dojo/dom-class","dojo/dom-construct","dojo/dom-style","dojo/dom-geometry","dojo/touch","dijit/registry","dijit/form/_TextBoxMixin","./sniff","./_css3","./_maskUtils","dojo/_base/declare","dojo/has!dojo-bidi?dojox/mobile/bidi/Scrollable"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e,_f,_10,_11){ +var dm=_4.getObject("dojox.mobile",true); +_d.add("translate3d",function(){ +if(_d("css3-animations")){ +var _12=_5.doc.createElement("div"); +_12.style[_e.name("transform")]="translate3d(0px,1px,0px)"; +_5.doc.documentElement.appendChild(_12); +var v=_5.doc.defaultView.getComputedStyle(_12,"")[_e.name("transform",true)]; +var _13=v&&v.indexOf("matrix")===0; +_5.doc.documentElement.removeChild(_12); +return _13; +} +}); +var _14=function(){ +}; +_4.extend(_14,{fixedHeaderHeight:0,fixedFooterHeight:0,isLocalFooter:false,scrollBar:true,scrollDir:"v",weight:0.6,fadeScrollBar:true,disableFlashScrollBar:false,threshold:4,constraint:true,touchNode:null,propagatable:true,dirLock:false,height:"",scrollType:0,_parentPadBorderExtentsBottom:0,_moved:false,init:function(_15){ +if(_15){ +for(var p in _15){ +if(_15.hasOwnProperty(p)){ +this[p]=((p=="domNode"||p=="containerNode")&&typeof _15[p]=="string")?_5.doc.getElementById(_15[p]):_15[p]; +} +} +} +if(typeof this.domNode.style.msTouchAction!="undefined"){ +this.domNode.style.msTouchAction="none"; +} +this.touchNode=this.touchNode||this.containerNode; +this._v=(this.scrollDir.indexOf("v")!=-1); +this._h=(this.scrollDir.indexOf("h")!=-1); +this._f=(this.scrollDir=="f"); +this._ch=[]; +this._ch.push(_2.connect(this.touchNode,_a.press,this,"onTouchStart")); +if(_d("css3-animations")){ +this._useTopLeft=this.scrollType?this.scrollType===2:false; +if(!this._useTopLeft){ +this._useTransformTransition=this.scrollType?this.scrollType===3:_d("ios")>=6||_d("android")||_d("bb"); +} +if(!this._useTopLeft){ +if(this._useTransformTransition){ +this._ch.push(_2.connect(this.containerNode,_e.name("transitionEnd"),this,"onFlickAnimationEnd")); +}else{ +this._ch.push(_2.connect(this.containerNode,_e.name("animationEnd"),this,"onFlickAnimationEnd")); +this._ch.push(_2.connect(this.containerNode,_e.name("animationStart"),this,"onFlickAnimationStart")); +for(var i=0;i<3;i++){ +this.setKeyframes(null,null,i); +} +} +if(_d("translate3d")){ +_8.set(this.containerNode,_e.name("transform"),"translate3d(0,0,0)"); +} +}else{ +this._ch.push(_2.connect(this.containerNode,_e.name("transitionEnd"),this,"onFlickAnimationEnd")); +} +} +this._speed={x:0,y:0}; +this._appFooterHeight=0; +if(this.isTopLevel()&&!this.noResize){ +this.resize(); +} +var _16=this; +setTimeout(function(){ +_16.flashScrollBar(); +},600); +if(_5.global.addEventListener){ +this._onScroll=function(e){ +if(!_16.domNode||_16.domNode.style.display==="none"){ +return; +} +var _17=_16.domNode.scrollTop; +var _18=_16.domNode.scrollLeft; +var pos; +if(_17>0||_18>0){ +pos=_16.getPos(); +_16.domNode.scrollLeft=0; +_16.domNode.scrollTop=0; +_16.scrollTo({x:pos.x-_18,y:pos.y-_17}); +} +}; +_5.global.addEventListener("scroll",this._onScroll,true); +} +if(!this.disableTouchScroll&&this.domNode.addEventListener){ +this._onFocusScroll=function(e){ +if(!_16.domNode||_16.domNode.style.display==="none"){ +return; +} +var _19=_5.doc.activeElement; +var _1a,_1b; +if(_19){ +_1a=_19.getBoundingClientRect(); +_1b=_16.domNode.getBoundingClientRect(); +if(_1a.height<_16.getDim().d.h){ +if(_1a.top<(_1b.top+_16.fixedHeaderHeight)){ +_16.scrollIntoView(_19,true); +}else{ +if((_1a.top+_1a.height)>(_1b.top+_1b.height-_16.fixedFooterHeight)){ +_16.scrollIntoView(_19,false); +} +} +} +} +}; +this.domNode.addEventListener("focus",this._onFocusScroll,true); +} +},isTopLevel:function(){ +return true; +},cleanup:function(){ +if(this._ch){ +for(var i=0;i=_22){ +dh=_1e-(_21.top-_20.top)-this._appFooterHeight-this._parentPadBorderExtentsBottom; +}else{ +dh=_22-_21.bottom; +} +} +var _23=Math.max(this.domNode.scrollHeight,this.containerNode.scrollHeight); +h=(_23?Math.min(_23,dh):dh)+"px"; +}else{ +if(this.height){ +h=this.height; +} +} +} +if(!h){ +h=dh+"px"; +} +if(h.charAt(0)!=="-"&&h!=="default"){ +this.domNode.style.height=h; +} +if(!this._conn){ +this.onTouchEnd(); +} +},onFlickAnimationStart:function(e){ +if(e){ +_3.stop(e); +} +},onFlickAnimationEnd:function(e){ +if(_d("ios")){ +this._keepInputCaretInActiveElement(); +} +if(e){ +var an=e.animationName; +if(an&&an.indexOf("scrollableViewScroll2")===-1){ +if(an.indexOf("scrollableViewScroll0")!==-1){ +if(this._scrollBarNodeV){ +_6.remove(this._scrollBarNodeV,"mblScrollableScrollTo0"); +} +}else{ +if(an.indexOf("scrollableViewScroll1")!==-1){ +if(this._scrollBarNodeH){ +_6.remove(this._scrollBarNodeH,"mblScrollableScrollTo1"); +} +}else{ +if(this._scrollBarNodeV){ +this._scrollBarNodeV.className=""; +} +if(this._scrollBarNodeH){ +this._scrollBarNodeH.className=""; +} +} +} +return; +} +if(this._useTransformTransition||this._useTopLeft){ +var n=e.target; +if(n===this._scrollBarV||n===this._scrollBarH){ +var cls="mblScrollableScrollTo"+(n===this._scrollBarV?"0":"1"); +if(_6.contains(n,cls)){ +_6.remove(n,cls); +}else{ +n.className=""; +} +return; +} +} +if(e.srcElement){ +_3.stop(e); +} +} +this.stopAnimation(); +if(this._bounce){ +var _24=this; +var _25=_24._bounce; +setTimeout(function(){ +_24.slideTo(_25,0.3,"ease-out"); +},0); +_24._bounce=undefined; +}else{ +this.hideScrollBar(); +this.removeCover(); +} +},isFormElement:function(_26){ +if(_26&&_26.nodeType!==1){ +_26=_26.parentNode; +} +if(!_26||_26.nodeType!==1){ +return false; +} +var t=_26.tagName; +return (t==="SELECT"||t==="INPUT"||t==="TEXTAREA"||t==="BUTTON"); +},onTouchStart:function(e){ +if(this.disableTouchScroll){ +return; +} +if(this._conn&&(new Date()).getTime()-this.startTime<500){ +return; +} +if(!this._conn){ +this._conn=[]; +this._conn.push(_2.connect(_5.doc,_a.move,this,"onTouchMove")); +this._conn.push(_2.connect(_5.doc,_a.release,this,"onTouchEnd")); +} +this._aborted=false; +if(_6.contains(this.containerNode,"mblScrollableScrollTo2")){ +this.abort(); +}else{ +if(this._scrollBarNodeV){ +this._scrollBarNodeV.className=""; +} +if(this._scrollBarNodeH){ +this._scrollBarNodeH.className=""; +} +} +this.touchStartX=e.touches?e.touches[0].pageX:e.clientX; +this.touchStartY=e.touches?e.touches[0].pageY:e.clientY; +this.startTime=(new Date()).getTime(); +this.startPos=this.getPos(); +this._dim=this.getDim(); +this._time=[0]; +this._posX=[this.touchStartX]; +this._posY=[this.touchStartY]; +this._locked=false; +this._moved=false; +this._preventDefaultInNextTouchMove=true; +if(!this.isFormElement(e.target)){ +this.propagatable?e.preventDefault():_3.stop(e); +this._preventDefaultInNextTouchMove=false; +} +},onTouchMove:function(e){ +if(this._locked){ +return; +} +if(this._preventDefaultInNextTouchMove){ +this._preventDefaultInNextTouchMove=false; +var _27=_b.getEnclosingWidget(((e.targetTouches&&e.targetTouches.length===1)?e.targetTouches[0]:e).target); +if(_27&&_27.isInstanceOf(_c)){ +this.propagatable?e.preventDefault():_3.stop(e); +} +} +var x=e.touches?e.touches[0].pageX:e.clientX; +var y=e.touches?e.touches[0].pageY:e.clientY; +var dx=x-this.touchStartX; +var dy=y-this.touchStartY; +var to={x:this.startPos.x+dx,y:this.startPos.y+dy}; +var dim=this._dim; +dx=Math.abs(dx); +dy=Math.abs(dy); +if(this._time.length==1){ +if(this.dirLock){ +if(this._v&&!this._h&&dx>=this.threshold&&dx>=dy||(this._h||this._f)&&!this._v&&dy>=this.threshold&&dy>=dx){ +this._locked=true; +return; +} +} +if(this._v&&this._h){ +if(dy0){ +to.y=Math.round(to.y*_28); +}else{ +if(to.y<-dim.o.h){ +if(dim.c.h0){ +to.x=Math.round(to.x*_28); +}else{ +if(to.x<-dim.o.w){ +if(dim.c.w=2){ +this._moved=true; +var d0,d1; +if(this._v&&!this._h){ +d0=this._posY[n-1]-this._posY[n-2]; +d1=y-this._posY[n-1]; +}else{ +if(!this._v&&this._h){ +d0=this._posX[n-1]-this._posX[n-2]; +d1=x-this._posX[n-1]; +} +} +if(d0*d1<0){ +this._time=[this._time[n-1]]; +this._posX=[this._posX[n-1]]; +this._posY=[this._posY[n-1]]; +n=1; +} +} +if(n==max){ +this._time.shift(); +this._posX.shift(); +this._posY.shift(); +} +this._time.push((new Date()).getTime()-this.startTime); +this._posX.push(x); +this._posY.push(y); +},_keepInputCaretInActiveElement:function(){ +var _29=_5.doc.activeElement; +var _2a; +if(_29&&(_29.tagName=="INPUT"||_29.tagName=="TEXTAREA")){ +_2a=_29.value; +if(_29.type=="number"||_29.type=="week"){ +if(_2a){ +_29.value=_29.value+1; +}else{ +_29.value=(_29.type=="week")?"2013-W10":1; +} +_29.value=_2a; +}else{ +_29.value=_29.value+" "; +_29.value=_2a; +} +} +},onTouchEnd:function(e){ +if(this._locked){ +return; +} +var _2b=this._speed={x:0,y:0}; +var dim=this._dim; +var pos=this.getPos(); +var to={}; +if(e){ +if(!this._conn){ +return; +} +for(var i=0;i0){ +if(pos.y>0){ +_2e=0.3; +to.y=0; +}else{ +to.y=Math.min(to.y,20); +_2f="linear"; +_30.y=0; +} +}else{ +if(-_2b.y>dim.o.h-(-pos.y)){ +if(pos.y<-dim.o.h){ +_2e=0.3; +to.y=dim.c.h<=dim.d.h?0:-dim.o.h; +}else{ +to.y=Math.max(to.y,-dim.o.h-20); +_2f="linear"; +_30.y=-dim.o.h; +} +} +} +} +if((this._h||this._f)&&this.constraint){ +if(to.x>0){ +if(pos.x>0){ +_2e=0.3; +to.x=0; +}else{ +to.x=Math.min(to.x,20); +_2f="linear"; +_30.x=0; +} +}else{ +if(-_2b.x>dim.o.w-(-pos.x)){ +if(pos.x<-dim.o.w){ +_2e=0.3; +to.x=dim.c.w<=dim.d.w?0:-dim.o.w; +}else{ +to.x=Math.max(to.x,-dim.o.w-20); +_2f="linear"; +_30.x=-dim.o.w; +} +} +} +} +this._bounce=(_30.x!==undefined||_30.y!==undefined)?_30:undefined; +if(_2e===undefined){ +var _31,_32; +if(this._v&&this._h){ +_32=Math.sqrt(_2b.x*_2b.x+_2b.y*_2b.y); +_31=Math.sqrt(Math.pow(to.y-pos.y,2)+Math.pow(to.x-pos.x,2)); +}else{ +if(this._v){ +_32=_2b.y; +_31=to.y-pos.y; +}else{ +if(this._h){ +_32=_2b.x; +_31=to.x-pos.x; +} +} +} +if(_31===0&&!e){ +return; +} +_2e=_32!==0?Math.abs(_31/_32):0.01; +} +this.slideTo(to,_2e,_2f); +},adjustDestination:function(to,pos,dim){ +return true; +},abort:function(){ +this._aborted=true; +this.scrollTo(this.getPos()); +this.stopAnimation(); +},stopAnimation:function(){ +_6.remove(this.containerNode,"mblScrollableScrollTo2"); +if(this._scrollBarV){ +this._scrollBarV.className=""; +} +if(this._scrollBarH){ +this._scrollBarH.className=""; +} +if(this._useTransformTransition||this._useTopLeft){ +this.containerNode.style[_e.name("transition")]=""; +if(this._scrollBarV){ +this._scrollBarV.style[_e.name("transition")]=""; +} +if(this._scrollBarH){ +this._scrollBarH.style[_e.name("transition")]=""; +} +} +},scrollIntoView:function(_33,_34,_35){ +if(!this._v){ +return; +} +var c=this.containerNode,h=this.getDim().d.h,top=0; +for(var n=_33;n!==c;n=n.offsetParent){ +if(!n||n.tagName==="BODY"){ +return; +} +top+=n.offsetTop; +} +var y=_34?Math.max(h-c.offsetHeight,-top):Math.min(0,h-top-_33.offsetHeight); +(_35&&typeof _35==="number")?this.slideTo({y:y},_35,"ease-out"):this.scrollTo({y:y}); +},getSpeed:function(){ +var x=0,y=0,n=this._time.length; +if(n>=2&&(new Date()).getTime()-this.startTime-this._time[n-1]<500){ +var dy=this._posY[n-(n>3?2:1)]-this._posY[(n-6)>=0?n-6:0]; +var dx=this._posX[n-(n>3?2:1)]-this._posX[(n-6)>=0?n-6:0]; +var dt=this._time[n-(n>3?2:1)]-this._time[(n-6)>=0?n-6:0]; +y=this.calcSpeed(dy,dt); +x=this.calcSpeed(dx,dt); +} +return {x:x,y:y}; +},calcSpeed:function(_36,_37){ +return Math.round(_36/_37*100)*4; +},scrollTo:function(to,_38,_39){ +var _3a,_3b,_3c; +var _3d=true; +if(!this._aborted&&this._conn){ +if(!this._dim){ +this._dim=this.getDim(); +} +_3b=(to.y>0)?to.y:0; +_3c=(this._dim.o.h+to.y<0)?-1*(this._dim.o.h+to.y):0; +_3a={bubbles:false,cancelable:false,x:to.x,y:to.y,beforeTop:_3b>0,beforeTopHeight:_3b,afterBottom:_3c>0,afterBottomHeight:_3c}; +_3d=this.onBeforeScroll(_3a); +} +if(_3d){ +var s=(_39||this.containerNode).style; +if(_d("css3-animations")){ +if(!this._useTopLeft){ +if(this._useTransformTransition){ +s[_e.name("transition")]=""; +} +s[_e.name("transform")]=this.makeTranslateStr(to); +}else{ +s[_e.name("transition")]=""; +if(this._v){ +s.top=to.y+"px"; +} +if(this._h||this._f){ +s.left=to.x+"px"; +} +} +}else{ +if(this._v){ +s.top=to.y+"px"; +} +if(this._h||this._f){ +s.left=to.x+"px"; +} +} +if(_d("ios")){ +this._keepInputCaretInActiveElement(); +} +if(!_38){ +this.scrollScrollBarTo(this.calcScrollBarPos(to)); +} +if(_3a){ +this.onAfterScroll(_3a); +} +} +},onBeforeScroll:function(e){ +return true; +},onAfterScroll:function(e){ +},slideTo:function(to,_3e,_3f){ +this._runSlideAnimation(this.getPos(),to,_3e,_3f,this.containerNode,2); +this.slideScrollBarTo(to,_3e,_3f); +},makeTranslateStr:function(to){ +var y=this._v&&typeof to.y=="number"?to.y+"px":"0px"; +var x=(this._h||this._f)&&typeof to.x=="number"?to.x+"px":"0px"; +return _d("translate3d")?"translate3d("+x+","+y+",0px)":"translate("+x+","+y+")"; +},getPos:function(){ +if(_d("css3-animations")){ +var s=_5.doc.defaultView.getComputedStyle(this.containerNode,""); +if(!this._useTopLeft){ +var m=s[_e.name("transform")]; +if(m&&m.indexOf("matrix")===0){ +var arr=m.split(/[,\s\)]+/); +var i=m.indexOf("matrix3d")===0?12:4; +return {y:arr[i+1]-0,x:arr[i]-0}; +} +return {x:0,y:0}; +}else{ +return {x:parseInt(s.left)||0,y:parseInt(s.top)||0}; +} +}else{ +var y=parseInt(this.containerNode.style.top)||0; +return {y:y,x:this.containerNode.offsetLeft}; +} +},getDim:function(){ +var d={}; +d.c={h:this.containerNode.offsetHeight,w:this.containerNode.offsetWidth}; +d.v={h:this.domNode.offsetHeight+this._appFooterHeight,w:this.domNode.offsetWidth}; +d.d={h:d.v.h-this.fixedHeaderHeight-this.fixedFooterHeight-this._appFooterHeight,w:d.v.w}; +d.o={h:d.c.h-d.v.h+this.fixedHeaderHeight+this.fixedFooterHeight+this._appFooterHeight,w:d.c.w-d.v.w}; +return d; +},showScrollBar:function(){ +if(!this.scrollBar){ +return; +} +var dim=this._dim; +if(this.scrollDir=="v"&&dim.c.h<=dim.d.h){ +return; +} +if(this.scrollDir=="h"&&dim.c.w<=dim.d.w){ +return; +} +if(this._v&&this._h&&dim.c.h<=dim.d.h&&dim.c.w<=dim.d.w){ +return; +} +var _40=function(_41,dir){ +var bar=_41["_scrollBarNode"+dir]; +if(!bar){ +var _42=_7.create("div",null,_41.domNode); +var _43={position:"absolute",overflow:"hidden"}; +if(dir=="V"){ +_43.right="2px"; +_43.width="5px"; +}else{ +_43.bottom=(_41.isLocalFooter?_41.fixedFooterHeight:0)+2+"px"; +_43.height="5px"; +} +_8.set(_42,_43); +_42.className="mblScrollBarWrapper"; +_41["_scrollBarWrapper"+dir]=_42; +bar=_7.create("div",null,_42); +_8.set(bar,_e.add({opacity:0.6,position:"absolute",backgroundColor:"#606060",fontSize:"1px",MozBorderRadius:"2px",zIndex:2147483647},{borderRadius:"2px",transformOrigin:"0 0"})); +_8.set(bar,dir=="V"?{width:"5px"}:{height:"5px"}); +_41["_scrollBarNode"+dir]=bar; +} +return bar; +}; +if(this._v&&!this._scrollBarV){ +this._scrollBarV=_40(this,"V"); +} +if(this._h&&!this._scrollBarH){ +this._scrollBarH=_40(this,"H"); +} +this.resetScrollBar(); +},hideScrollBar:function(){ +if(this.fadeScrollBar&&_d("css3-animations")){ +if(!dm._fadeRule){ +var _44=_7.create("style",null,_5.doc.getElementsByTagName("head")[0]); +_44.textContent=".mblScrollableFadeScrollBar{"+" "+_e.name("animation-duration",true)+": 1s;"+" "+_e.name("animation-name",true)+": scrollableViewFadeScrollBar;}"+"@"+_e.name("keyframes",true)+" scrollableViewFadeScrollBar{"+" from { opacity: 0.6; }"+" to { opacity: 0; }}"; +dm._fadeRule=_44.sheet.cssRules[1]; +} +} +if(!this.scrollBar){ +return; +} +var f=function(bar,_45){ +_8.set(bar,_e.add({opacity:0},{animationDuration:""})); +if(!(_45._useTopLeft&&_d("android"))){ +bar.className="mblScrollableFadeScrollBar"; +} +}; +if(this._scrollBarV){ +f(this._scrollBarV,this); +this._scrollBarV=null; +} +if(this._scrollBarH){ +f(this._scrollBarH,this); +this._scrollBarH=null; +} +},calcScrollBarPos:function(to){ +var pos={}; +var dim=this._dim; +var f=function(_46,_47,t,d,c){ +var y=Math.round((d-_47-8)/(d-c)*t); +if(y<-_47+5){ +y=-_47+5; +} +if(y>_46-5){ +y=_46-5; +} +return y; +}; +if(typeof to.y=="number"&&this._scrollBarV){ +pos.y=f(this._scrollBarWrapperV.offsetHeight,this._scrollBarV.offsetHeight,to.y,dim.d.h,dim.c.h); +} +if(typeof to.x=="number"&&this._scrollBarH){ +pos.x=f(this._scrollBarWrapperH.offsetWidth,this._scrollBarH.offsetWidth,to.x,dim.d.w,dim.c.w); +} +return pos; +},scrollScrollBarTo:function(to){ +if(!this.scrollBar){ +return; +} +if(this._v&&this._scrollBarV&&typeof to.y=="number"){ +if(_d("css3-animations")){ +if(!this._useTopLeft){ +if(this._useTransformTransition){ +this._scrollBarV.style[_e.name("transition")]=""; +} +this._scrollBarV.style[_e.name("transform")]=this.makeTranslateStr({y:to.y}); +}else{ +_8.set(this._scrollBarV,_e.add({top:to.y+"px"},{transition:""})); +} +}else{ +this._scrollBarV.style.top=to.y+"px"; +} +} +if(this._h&&this._scrollBarH&&typeof to.x=="number"){ +if(_d("css3-animations")){ +if(!this._useTopLeft){ +if(this._useTransformTransition){ +this._scrollBarH.style[_e.name("transition")]=""; +} +this._scrollBarH.style[_e.name("transform")]=this.makeTranslateStr({x:to.x}); +}else{ +_8.set(this._scrollBarH,_e.add({left:to.x+"px"},{transition:""})); +} +}else{ +this._scrollBarH.style.left=to.x+"px"; +} +} +},slideScrollBarTo:function(to,_48,_49){ +if(!this.scrollBar){ +return; +} +var _4a=this.calcScrollBarPos(this.getPos()); +var _4b=this.calcScrollBarPos(to); +if(this._v&&this._scrollBarV){ +this._runSlideAnimation({y:_4a.y},{y:_4b.y},_48,_49,this._scrollBarV,0); +} +if(this._h&&this._scrollBarH){ +this._runSlideAnimation({x:_4a.x},{x:_4b.x},_48,_49,this._scrollBarH,1); +} +},_runSlideAnimation:function(_4c,to,_4d,_4e,_4f,idx){ +if(_d("css3-animations")){ +if(!this._useTopLeft){ +if(this._useTransformTransition){ +if(to.x===undefined){ +to.x=_4c.x; +} +if(to.y===undefined){ +to.y=_4c.y; +} +if(to.x!==_4c.x||to.y!==_4c.y){ +this.onFlickAnimationStart(); +_8.set(_4f,_e.add({},{transitionProperty:_e.name("transform"),transitionDuration:_4d+"s",transitionTimingFunction:_4e})); +var t=this.makeTranslateStr(to); +setTimeout(function(){ +_8.set(_4f,_e.add({},{transform:t})); +},0); +_6.add(_4f,"mblScrollableScrollTo"+idx); +}else{ +this.hideScrollBar(); +this.removeCover(); +} +}else{ +this.setKeyframes(_4c,to,idx); +_8.set(_4f,_e.add({},{animationDuration:_4d+"s",animationTimingFunction:_4e})); +_6.add(_4f,"mblScrollableScrollTo"+idx); +if(idx==2){ +this.scrollTo(to,true,_4f); +}else{ +this.scrollScrollBarTo(to); +} +} +}else{ +if(to.x!==undefined||to.y!==undefined){ +this.onFlickAnimationStart(); +_8.set(_4f,_e.add({},{transitionProperty:(to.x!==undefined&&to.y!==undefined)?"top, left":to.y!==undefined?"top":"left",transitionDuration:_4d+"s",transitionTimingFunction:_4e})); +setTimeout(function(){ +var _50={}; +if(to.x!==undefined){ +_50.left=to.x+"px"; +} +if(to.y!==undefined){ +_50.top=to.y+"px"; +} +_8.set(_4f,_50); +},0); +_6.add(_4f,"mblScrollableScrollTo"+idx); +} +} +}else{ +if(_1.fx&&_1.fx.easing&&_4d){ +var _51=this; +var s=_1.fx.slideTo({node:_4f,duration:_4d*1000,left:to.x,top:to.y,easing:(_4e=="ease-out")?_1.fx.easing.quadOut:_1.fx.easing.linear,onBegin:function(){ +if(idx==2){ +_51.onFlickAnimationStart(); +} +},onEnd:function(){ +if(idx==2){ +_51.onFlickAnimationEnd(); +} +}}).play(); +}else{ +if(idx==2){ +this.onFlickAnimationStart(); +this.scrollTo(to,false,_4f); +this.onFlickAnimationEnd(); +}else{ +this.scrollScrollBarTo(to); +} +} +} +},resetScrollBar:function(){ +var f=function(_52,bar,d,c,hd,v){ +if(!bar){ +return; +} +var _53={}; +_53[v?"top":"left"]=hd+4+"px"; +var t=(d-8)<=0?1:d-8; +_53[v?"height":"width"]=t+"px"; +_8.set(_52,_53); +var l=Math.round(d*d/c); +l=Math.min(Math.max(l-8,5),t); +bar.style[v?"height":"width"]=l+"px"; +_8.set(bar,{"opacity":0.6}); +}; +var dim=this.getDim(); +f(this._scrollBarWrapperV,this._scrollBarV,dim.d.h,dim.c.h,this.fixedHeaderHeight,true); +f(this._scrollBarWrapperH,this._scrollBarH,dim.d.w,dim.c.w,0); +this.createMask(); +},createMask:function(){ +if(!(_d("mask-image"))){ +return; +} +if(this._scrollBarWrapperV){ +var h=this._scrollBarWrapperV.offsetHeight; +_f.createRoundMask(this._scrollBarWrapperV,0,0,0,0,5,h,2,2,0.5); +} +if(this._scrollBarWrapperH){ +var w=this._scrollBarWrapperH.offsetWidth; +_f.createRoundMask(this._scrollBarWrapperH,0,0,0,0,w,5,2,2,0.5); +} +},flashScrollBar:function(){ +if(this.disableFlashScrollBar||!this.domNode){ +return; +} +this._dim=this.getDim(); +if(this._dim.d.h<=0){ +return; +} +this.showScrollBar(); +var _54=this; +setTimeout(function(){ +_54.hideScrollBar(); +},300); +},addCover:function(){ +if(!_d("touch")&&!this.noCover){ +if(!dm._cover){ +dm._cover=_7.create("div",null,_5.doc.body); +dm._cover.className="mblScrollableCover"; +_8.set(dm._cover,{backgroundColor:"#ffff00",opacity:0,position:"absolute",top:"0px",left:"0px",width:"100%",height:"100%",zIndex:2147483647}); +this._ch.push(_2.connect(dm._cover,_a.press,this,"onTouchEnd")); +}else{ +dm._cover.style.display=""; +} +this.setSelectable(dm._cover,false); +this.setSelectable(this.domNode,false); +} +},removeCover:function(){ +if(!_d("touch")&&dm._cover){ +dm._cover.style.display="none"; +this.setSelectable(dm._cover,true); +this.setSelectable(this.domNode,true); +} +},setKeyframes:function(_55,to,idx){ +if(!dm._rule){ +dm._rule=[]; +} +if(!dm._rule[idx]){ +var _56=_7.create("style",null,_5.doc.getElementsByTagName("head")[0]); +_56.textContent=".mblScrollableScrollTo"+idx+"{"+_e.name("animation-name",true)+": scrollableViewScroll"+idx+";}"+"@"+_e.name("keyframes",true)+" scrollableViewScroll"+idx+"{}"; +dm._rule[idx]=_56.sheet.cssRules[1]; +} +var _57=dm._rule[idx]; +if(_57){ +if(_55){ +_57.deleteRule(_d("webkit")?"from":0); +(_57.insertRule||_57.appendRule).call(_57,"from { "+_e.name("transform",true)+": "+this.makeTranslateStr(_55)+"; }"); +} +if(to){ +if(to.x===undefined){ +to.x=_55.x; +} +if(to.y===undefined){ +to.y=_55.y; +} +_57.deleteRule(_d("webkit")?"to":1); +(_57.insertRule||_57.appendRule).call(_57,"to { "+_e.name("transform",true)+": "+this.makeTranslateStr(to)+"; }"); +} +} +},setSelectable:function(_58,_59){ +_58.style.KhtmlUserSelect=_59?"auto":"none"; +_58.style.MozUserSelect=_59?"":"none"; +_58.onselectstart=_59?null:function(){ +return false; +}; +if(_d("ie")){ +_58.unselectable=_59?"":"on"; +var _5a=_58.getElementsByTagName("*"); +for(var i=0;i<_5a.length;i++){ +_5a[i].unselectable=_59?"":"on"; +} +} +}}); +_14=_d("dojo-bidi")?_10("dojox.mobile.Scrollable",[_14,_11]):_14; +_4.setObject("dojox.mobile.scrollable",_14); +return _14; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/scrollable.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/scrollable.js.uncompressed.js new file mode 100644 index 00000000..2d7ae724 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/scrollable.js.uncompressed.js @@ -0,0 +1,1493 @@ +define("dojox/mobile/scrollable", [ + "dojo/_base/kernel", + "dojo/_base/connect", + "dojo/_base/event", + "dojo/_base/lang", + "dojo/_base/window", + "dojo/dom-class", + "dojo/dom-construct", + "dojo/dom-style", + "dojo/dom-geometry", + "dojo/touch", + "dijit/registry", + "dijit/form/_TextBoxMixin", + "./sniff", + "./_css3", + "./_maskUtils", + "dojo/_base/declare", + "dojo/has!dojo-bidi?dojox/mobile/bidi/Scrollable" +], function(dojo, connect, event, lang, win, domClass, domConstruct, domStyle, + domGeom, touch, registry, TextBoxMixin, has, css3, maskUtils, declare, BidiScrollable){ + + // module: + // dojox/mobile/scrollable + + // TODO: rename to Scrollable.js (capital S) for 2.0 + + // TODO: shouldn't be referencing this dojox/mobile variable, would be better to require the mobile.js module + var dm = lang.getObject("dojox.mobile", true); + + // feature detection + has.add("translate3d", function(){ + if(has("css3-animations")){ + var elem = win.doc.createElement("div"); + elem.style[css3.name("transform")] = "translate3d(0px,1px,0px)"; + win.doc.documentElement.appendChild(elem); + var v = win.doc.defaultView.getComputedStyle(elem, '')[css3.name("transform", true)]; + var hasTranslate3d = v && v.indexOf("matrix") === 0; + win.doc.documentElement.removeChild(elem); + return hasTranslate3d; + } + }); + + var Scrollable = function(){ + // summary: + // Mixin for enabling touch scrolling capability. + // description: + // Mixin for enabling touch scrolling capability. + // Mobile WebKit browsers do not allow scrolling inner DIVs. (For instance, + // on iOS you need the two-finger operation to scroll them.) + // That means you cannot have fixed-positioned header/footer bars. + // To solve this issue, this module disables the browsers default scrolling + // behavior, and rebuilds its own scrolling machinery by handling touch + // events. In this module, this.domNode has height "100%" and is fixed to + // the window, and this.containerNode scrolls. If you place a bar outside + // of this.containerNode, then it will be fixed-positioned while + // this.containerNode is scrollable. + // + // This module has the following features: + // + // - Scrolls inner DIVs vertically, horizontally, or both. + // - Vertical and horizontal scroll bars. + // - Flashes the scroll bars when a view is shown. + // - Simulates the flick operation using animation. + // - Respects header/footer bars if any. + }; + + lang.extend(Scrollable, { + // fixedHeaderHeight: Number + // height of a fixed header + fixedHeaderHeight: 0, + + // fixedFooterHeight: Number + // height of a fixed footer + fixedFooterHeight: 0, + + // isLocalFooter: Boolean + // footer is view-local (as opposed to application-wide) + isLocalFooter: false, + + // scrollBar: Boolean + // show scroll bar or not + scrollBar: true, + + // scrollDir: String + // v: vertical, h: horizontal, vh: both, f: flip + scrollDir: "v", + + // weight: Number + // frictional drag + weight: 0.6, + + // fadeScrollBar: Boolean + fadeScrollBar: true, + + // disableFlashScrollBar: Boolean + disableFlashScrollBar: false, + + // threshold: Number + // drag threshold value in pixels + threshold: 4, + + // constraint: Boolean + // bounce back to the content area + constraint: true, + + // touchNode: DOMNode + // a node that will have touch event handlers + touchNode: null, + + // propagatable: Boolean + // let touchstart event propagate up + propagatable: true, + + // dirLock: Boolean + // disable the move handler if scroll starts in the unexpected direction + dirLock: false, + + // height: String + // explicitly specified height of this widget (ex. "300px") + height: "", + + // scrollType: Number + // - 1: use (-webkit-)transform:translate3d(x,y,z) style, use (-webkit-)animation for slide animation + // - 2: use top/left style, + // - 3: use (-webkit-)transform:translate3d(x,y,z) style, use (-webkit-)transition for slide animation + // - 0: use default value (3 for Android, iOS6+, and BlackBerry; otherwise 1) + scrollType: 0, + + // _parentPadBorderExtentsBottom: [private] Number + // For Tooltip.js. + _parentPadBorderExtentsBottom: 0, + + // _moved: [private] Boolean + // Flag that signals if the user have moved in (one of) the scroll + // direction(s) since touch start (a move under the threshold is ignored). + _moved: false, + + init: function(/*Object?*/params){ + // summary: + // Initialize according to the given params. + // description: + // Mixes in the given params into this instance. At least domNode + // and containerNode have to be given. + // Starts listening to the touchstart events. + // Calls resize(), if this widget is a top level widget. + if(params){ + for(var p in params){ + if(params.hasOwnProperty(p)){ + this[p] = ((p == "domNode" || p == "containerNode") && typeof params[p] == "string") ? + win.doc.getElementById(params[p]) : params[p]; // mix-in params + } + } + } + // prevent browser scrolling on IE10 (evt.preventDefault() is not enough) + if(typeof this.domNode.style.msTouchAction != "undefined"){ + this.domNode.style.msTouchAction = "none"; + } + this.touchNode = this.touchNode || this.containerNode; + this._v = (this.scrollDir.indexOf("v") != -1); // vertical scrolling + this._h = (this.scrollDir.indexOf("h") != -1); // horizontal scrolling + this._f = (this.scrollDir == "f"); // flipping views + + this._ch = []; // connect handlers + this._ch.push(connect.connect(this.touchNode, touch.press, this, "onTouchStart")); + if(has("css3-animations")){ + // flag for whether to use -webkit-transform:translate3d(x,y,z) or top/left style. + // top/left style works fine as a workaround for input fields auto-scrolling issue, + // so use top/left in case of Android by default. + this._useTopLeft = this.scrollType ? this.scrollType === 2 : false; + // Flag for using webkit transition on transform, instead of animation + keyframes. + // (keyframes create a slight delay before the slide animation...) + if(!this._useTopLeft){ + this._useTransformTransition = + this.scrollType ? this.scrollType === 3 : has("ios") >= 6 || has("android") || has("bb"); + } + if(!this._useTopLeft){ + if(this._useTransformTransition){ + this._ch.push(connect.connect(this.containerNode, css3.name("transitionEnd"), this, "onFlickAnimationEnd")); + // Note that there is no transitionstart event (#17822). + }else{ + this._ch.push(connect.connect(this.containerNode, css3.name("animationEnd"), this, "onFlickAnimationEnd")); + this._ch.push(connect.connect(this.containerNode, css3.name("animationStart"), this, "onFlickAnimationStart")); + + // Creation of keyframes takes a little time. If they are created + // in a lazy manner, a slight delay is noticeable when you start + // scrolling for the first time. This is to create keyframes up front. + for(var i = 0; i < 3; i++){ + this.setKeyframes(null, null, i); + } + } + if(has("translate3d")){ // workaround for flicker issue on iPhone and Android 3.x/4.0 + domStyle.set(this.containerNode, css3.name("transform"), "translate3d(0,0,0)"); + } + }else{ + this._ch.push(connect.connect(this.containerNode, css3.name("transitionEnd"), this, "onFlickAnimationEnd")); + // Note that there is no transitionstart event (#17822). + } + } + + this._speed = {x:0, y:0}; + this._appFooterHeight = 0; + if(this.isTopLevel() && !this.noResize){ + this.resize(); + } + var _this = this; + setTimeout(function(){ + // Why not using widget.defer() instead of setTimeout()? Because this module + // is not always mixed into a widget (ex. dojox/mobile/_ComboBoxMenu), and adding + // a check to call either defer or setTimeout has been considered overkill. + _this.flashScrollBar(); + }, 600); + + // #16363: while navigating among input field using TAB (desktop keyboard) or + // NEXT (mobile soft keyboard), domNode.scrollTop gets modified (this holds even + // if the text widget has selectOnFocus at false, that is even if dijit's _FormWidgetMixin._onFocus + // does not trigger a global scrollIntoView). This messes up ScrollableView's own + // scrolling machinery. To avoid this misbehavior: + if(win.global.addEventListener){ // all supported browsers but IE8 + // (for IE8, using attachEvent is not a solution, because it only works in bubbling phase) + this._onScroll = function(e){ + if(!_this.domNode || _this.domNode.style.display === 'none'){ return; } + var scrollTop = _this.domNode.scrollTop; + var scrollLeft = _this.domNode.scrollLeft; + var pos; + if(scrollTop > 0 || scrollLeft > 0){ + pos = _this.getPos(); + // Reset to zero while compensating using our own scroll: + _this.domNode.scrollLeft = 0; + _this.domNode.scrollTop = 0; + _this.scrollTo({x: pos.x - scrollLeft, y: pos.y - scrollTop}); // no animation + } + }; + win.global.addEventListener("scroll", this._onScroll, true); + } + // #17062: Ensure auto-scroll when navigating focusable fields + if(!this.disableTouchScroll && this.domNode.addEventListener){ + this._onFocusScroll = function(e){ + if(!_this.domNode || _this.domNode.style.display === 'none'){ return; } + var node = win.doc.activeElement; + var nodeRect, scrollableRect; + if(node){ + nodeRect = node.getBoundingClientRect(); + scrollableRect = _this.domNode.getBoundingClientRect(); + if(nodeRect.height < _this.getDim().d.h){ + // do not call scrollIntoView for elements with a height + // larger than the height of scrollable's content display + // area (it would be ergonomically harmful). + + if(nodeRect.top < (scrollableRect.top + _this.fixedHeaderHeight)){ + // scrolling towards top (to bring into the visible area an element + // located above it). + _this.scrollIntoView(node, true); + }else if((nodeRect.top + nodeRect.height) > + (scrollableRect.top + scrollableRect.height - _this.fixedFooterHeight)){ + // scrolling towards bottom (to bring into the visible area an element + // located below it). + _this.scrollIntoView(node, false); + } // else do nothing (the focused node is already visible) + } + } + }; + this.domNode.addEventListener("focus", this._onFocusScroll, true); + } + }, + + isTopLevel: function(){ + // summary: + // Returns true if this is a top-level widget. + // description: + // Subclass may want to override. + return true; + }, + + cleanup: function(){ + // summary: + // Uninitialize the module. + if(this._ch){ + for(var i = 0; i < this._ch.length; i++){ + connect.disconnect(this._ch[i]); + } + this._ch = null; + } + if(this._onScroll && win.global.removeEventListener){ // all supported browsers but IE8 + win.global.removeEventListener("scroll", this._onScroll, true); + this._onScroll = null; + } + + if(this._onFocusScroll && this.domNode.removeEventListener){ + this.domNode.removeEventListener("focus", this._onFocusScroll, true); + this._onFocusScroll = null; + } + }, + + findDisp: function(/*DomNode*/node){ + // summary: + // Finds the currently displayed view node from my sibling nodes. + if(!node.parentNode){ return null; } + + // the given node is the first candidate + if(node.nodeType === 1 && domClass.contains(node, "mblSwapView") && node.style.display !== "none"){ + return node; + } + + var nodes = node.parentNode.childNodes; + for(var i = 0; i < nodes.length; i++){ + var n = nodes[i]; + if(n.nodeType === 1 && domClass.contains(n, "mblView") && n.style.display !== "none"){ + return n; + } + } + return node; + }, + + getScreenSize: function(){ + // summary: + // Returns the dimensions of the browser window. + return { + h: win.global.innerHeight||win.doc.documentElement.clientHeight||win.doc.documentElement.offsetHeight, + w: win.global.innerWidth||win.doc.documentElement.clientWidth||win.doc.documentElement.offsetWidth + }; + }, + + resize: function(e){ + // summary: + // Adjusts the height of the widget. + // description: + // If the height property is 'inherit', the height is inherited + // from its offset parent. If 'auto', the content height, which + // could be smaller than the entire screen height, is used. If an + // explicit height value (ex. "300px"), it is used as the new + // height. If nothing is specified as the height property, from the + // current top position of the widget to the bottom of the screen + // will be the new height. + + // moved from init() to support dynamically added fixed bars + this._appFooterHeight = (this._fixedAppFooter) ? this._fixedAppFooter.offsetHeight : 0; + if(this.isLocalHeader){ + this.containerNode.style.marginTop = this.fixedHeaderHeight + "px"; + } + + // Get the top position. Same as dojo.position(node, true).y + var top = 0; + for(var n = this.domNode; n && n.tagName != "BODY"; n = n.offsetParent){ + n = this.findDisp(n); // find the first displayed view node + if(!n){ break; } + top += n.offsetTop + domGeom.getBorderExtents(n).h; + } + + // adjust the height of this view + var h, + screenHeight = this.getScreenSize().h, + dh = screenHeight - top - this._appFooterHeight; // default height + if(this.height === "inherit"){ + if(this.domNode.offsetParent){ + h = domGeom.getContentBox(this.domNode.offsetParent).h - domGeom.getBorderExtents(this.domNode).h + "px"; + } + }else if(this.height === "auto"){ + var parent = this.domNode.offsetParent; + if(parent){ + this.domNode.style.height = "0px"; + var parentRect = parent.getBoundingClientRect(), + scrollableRect = this.domNode.getBoundingClientRect(), + contentBottom = parentRect.bottom - this._appFooterHeight - this._parentPadBorderExtentsBottom; + if(scrollableRect.bottom >= contentBottom){ // use entire screen + dh = screenHeight - (scrollableRect.top - parentRect.top) - this._appFooterHeight - this._parentPadBorderExtentsBottom; + }else{ // stretch to fill predefined area + dh = contentBottom - scrollableRect.bottom; + } + } + // content could be smaller than entire screen height + var contentHeight = Math.max(this.domNode.scrollHeight, this.containerNode.scrollHeight); + h = (contentHeight ? Math.min(contentHeight, dh) : dh) + "px"; + }else if(this.height){ + h = this.height; + } + if(!h){ + h = dh + "px"; + } + if(h.charAt(0) !== "-" && // to ensure that h is not negative (e.g. "-10px") + h !== "default"){ + this.domNode.style.height = h; + } + + if(!this._conn){ + // to ensure that the view is within a scrolling area when resized. + this.onTouchEnd(); + } + }, + + onFlickAnimationStart: function(e){ + if(e){ + event.stop(e); + } + }, + + onFlickAnimationEnd: function(e){ + if(has("ios")){ + this._keepInputCaretInActiveElement(); + } + if(e){ + var an = e.animationName; + if(an && an.indexOf("scrollableViewScroll2") === -1){ + if(an.indexOf("scrollableViewScroll0") !== -1){ // scrollBarV + if(this._scrollBarNodeV){ domClass.remove(this._scrollBarNodeV, "mblScrollableScrollTo0"); } + }else if(an.indexOf("scrollableViewScroll1") !== -1){ // scrollBarH + if(this._scrollBarNodeH){ domClass.remove(this._scrollBarNodeH, "mblScrollableScrollTo1"); } + }else{ // fade or others + if(this._scrollBarNodeV){ this._scrollBarNodeV.className = ""; } + if(this._scrollBarNodeH){ this._scrollBarNodeH.className = ""; } + } + return; + } + if(this._useTransformTransition || this._useTopLeft){ + var n = e.target; + if(n === this._scrollBarV || n === this._scrollBarH){ + var cls = "mblScrollableScrollTo" + (n === this._scrollBarV ? "0" : "1"); + if(domClass.contains(n, cls)){ + domClass.remove(n, cls); + }else{ + n.className = ""; + } + return; + } + } + if(e.srcElement){ + event.stop(e); + } + } + this.stopAnimation(); + if(this._bounce){ + var _this = this; + var bounce = _this._bounce; + setTimeout(function(){ + _this.slideTo(bounce, 0.3, "ease-out"); + }, 0); + _this._bounce = undefined; + }else{ + this.hideScrollBar(); + this.removeCover(); + } + }, + + isFormElement: function(/*DOMNode*/node){ + // summary: + // Returns true if the given node is a form control. + if(node && node.nodeType !== 1){ node = node.parentNode; } + if(!node || node.nodeType !== 1){ return false; } + var t = node.tagName; + return (t === "SELECT" || t === "INPUT" || t === "TEXTAREA" || t === "BUTTON"); + }, + + onTouchStart: function(e){ + // summary: + // User-defined function to handle touchStart events. + if(this.disableTouchScroll){ return; } + if(this._conn && (new Date()).getTime() - this.startTime < 500){ + return; // ignore successive onTouchStart calls + } + if(!this._conn){ + this._conn = []; + this._conn.push(connect.connect(win.doc, touch.move, this, "onTouchMove")); + this._conn.push(connect.connect(win.doc, touch.release, this, "onTouchEnd")); + } + + this._aborted = false; + if(domClass.contains(this.containerNode, "mblScrollableScrollTo2")){ + this.abort(); + }else{ // reset scrollbar class especially for reseting fade-out animation + if(this._scrollBarNodeV){ this._scrollBarNodeV.className = ""; } + if(this._scrollBarNodeH){ this._scrollBarNodeH.className = ""; } + } + this.touchStartX = e.touches ? e.touches[0].pageX : e.clientX; + this.touchStartY = e.touches ? e.touches[0].pageY : e.clientY; + this.startTime = (new Date()).getTime(); + this.startPos = this.getPos(); + this._dim = this.getDim(); + this._time = [0]; + this._posX = [this.touchStartX]; + this._posY = [this.touchStartY]; + this._locked = false; + this._moved = false; + + this._preventDefaultInNextTouchMove = true; // #17502 + if(!this.isFormElement(e.target)){ + // Call preventDefault to avoid browser scroll, except for form elements + // for which doing it in touch.press would forbid the virtual keyboard + // from showing up (for form elements which are text widgets, preventDefault + // is called in touch.move). + this.propagatable ? e.preventDefault() : event.stop(e); + this._preventDefaultInNextTouchMove = false; + } + }, + + onTouchMove: function(e){ + // summary: + // User-defined function to handle touchMove events. + if(this._locked){ return; } + + if(this._preventDefaultInNextTouchMove){ // #17502 + this._preventDefaultInNextTouchMove = false; // only in the first touch.move + var enclosingWidget = registry.getEnclosingWidget( + // On touch-enabled devices, e.target can be different in touch.move than in + // touch.start. Hence: + ((e.targetTouches && e.targetTouches.length === 1) ? e.targetTouches[0] : e).target); + if(enclosingWidget && enclosingWidget.isInstanceOf(TextBoxMixin)){ + // For touches on text widgets for which e.preventDefault() has not been + // called in onTouchStart, call it in onTouchMove() to avoid browser scroll. + // Not done on other elements such that for instance a native slider + // can still handle touchmove events. + this.propagatable ? e.preventDefault() : event.stop(e); + } + } + + var x = e.touches ? e.touches[0].pageX : e.clientX; + var y = e.touches ? e.touches[0].pageY : e.clientY; + var dx = x - this.touchStartX; + var dy = y - this.touchStartY; + var to = {x:this.startPos.x + dx, y:this.startPos.y + dy}; + var dim = this._dim; + + dx = Math.abs(dx); + dy = Math.abs(dy); + if(this._time.length == 1){ // the first TouchMove after TouchStart + if(this.dirLock){ + if(this._v && !this._h && dx >= this.threshold && dx >= dy || + (this._h || this._f) && !this._v && dy >= this.threshold && dy >= dx){ + this._locked = true; + return; + } + } + if(this._v && this._h){ // scrollDir="hv" + if(dy < this.threshold && + dx < this.threshold){ + return; + } + }else{ + if(this._v && dy < this.threshold || + (this._h || this._f) && dx < this.threshold){ + return; + } + } + this._moved = true; + this.addCover(); + this.showScrollBar(); + } + + var weight = this.weight; + if(this._v && this.constraint){ + if(to.y > 0){ // content is below the screen area + to.y = Math.round(to.y * weight); + }else if(to.y < -dim.o.h){ // content is above the screen area + if(dim.c.h < dim.d.h){ // content is shorter than display + to.y = Math.round(to.y * weight); + }else{ + to.y = -dim.o.h - Math.round((-dim.o.h - to.y) * weight); + } + } + } + if((this._h || this._f) && this.constraint){ + if(to.x > 0){ + to.x = Math.round(to.x * weight); + }else if(to.x < -dim.o.w){ + if(dim.c.w < dim.d.w){ + to.x = Math.round(to.x * weight); + }else{ + to.x = -dim.o.w - Math.round((-dim.o.w - to.x) * weight); + } + } + } + this.scrollTo(to); + + var max = 10; + var n = this._time.length; // # of samples + if(n >= 2){ + this._moved = true; + // Check the direction of the finger move. + // If the direction has been changed, discard the old data. + var d0, d1; + if(this._v && !this._h){ + d0 = this._posY[n - 1] - this._posY[n - 2]; + d1 = y - this._posY[n - 1]; + }else if(!this._v && this._h){ + d0 = this._posX[n - 1] - this._posX[n - 2]; + d1 = x - this._posX[n - 1]; + } + if(d0 * d1 < 0){ // direction changed + // leave only the latest data + this._time = [this._time[n - 1]]; + this._posX = [this._posX[n - 1]]; + this._posY = [this._posY[n - 1]]; + n = 1; + } + } + if(n == max){ + this._time.shift(); + this._posX.shift(); + this._posY.shift(); + } + this._time.push((new Date()).getTime() - this.startTime); + this._posX.push(x); + this._posY.push(y); + }, + + _keepInputCaretInActiveElement: function(){ + var activeElement = win.doc.activeElement; + var initialValue; + if(activeElement && (activeElement.tagName == "INPUT" || activeElement.tagName == "TEXTAREA")){ + initialValue = activeElement.value; + if(activeElement.type == "number" || activeElement.type == "week"){ + if(initialValue){ + activeElement.value = activeElement.value + 1; + }else{ + activeElement.value = (activeElement.type == "week") ? "2013-W10" : 1; + } + activeElement.value = initialValue; + }else{ + activeElement.value = activeElement.value + " "; + activeElement.value = initialValue; + } + } + }, + + onTouchEnd: function(/*Event*/e){ + // summary: + // User-defined function to handle touchEnd events. + if(this._locked){ return; } + var speed = this._speed = {x:0, y:0}; + var dim = this._dim; + var pos = this.getPos(); + var to = {}; // destination + if(e){ + if(!this._conn){ return; } // if we get onTouchEnd without onTouchStart, ignore it. + for(var i = 0; i < this._conn.length; i++){ + connect.disconnect(this._conn[i]); + } + this._conn = null; + + var clicked = false; + if(!this._aborted && !this._moved){ + clicked = true; + } + if(clicked){ // clicked, not dragged or flicked + this.hideScrollBar(); + this.removeCover(); + // need to send a synthetic click? + if(has("touch") && has("clicks-prevented") && !this.isFormElement(e.target)){ + var elem = e.target; + if(elem.nodeType != 1){ + elem = elem.parentNode; + } + setTimeout(function(){ + dm._sendClick(elem, e); + }); + } + return; + } + speed = this._speed = this.getSpeed(); + }else{ + if(pos.x == 0 && pos.y == 0){ return; } // initializing + dim = this.getDim(); + } + + if(this._v){ + to.y = pos.y + speed.y; + } + if(this._h || this._f){ + to.x = pos.x + speed.x; + } + + if(this.adjustDestination(to, pos, dim) === false){ return; } + if(this.constraint){ + if(this.scrollDir == "v" && dim.c.h < dim.d.h){ // content is shorter than display + this.slideTo({y:0}, 0.3, "ease-out"); // go back to the top + return; + }else if(this.scrollDir == "h" && dim.c.w < dim.d.w){ // content is narrower than display + this.slideTo({x:0}, 0.3, "ease-out"); // go back to the left + return; + }else if(this._v && this._h && dim.c.h < dim.d.h && dim.c.w < dim.d.w){ + this.slideTo({x:0, y:0}, 0.3, "ease-out"); // go back to the top-left + return; + } + } + + var duration, easing = "ease-out"; + var bounce = {}; + if(this._v && this.constraint){ + if(to.y > 0){ // going down. bounce back to the top. + if(pos.y > 0){ // started from below the screen area. return quickly. + duration = 0.3; + to.y = 0; + }else{ + to.y = Math.min(to.y, 20); + easing = "linear"; + bounce.y = 0; + } + }else if(-speed.y > dim.o.h - (-pos.y)){ // going up. bounce back to the bottom. + if(pos.y < -dim.o.h){ // started from above the screen top. return quickly. + duration = 0.3; + to.y = dim.c.h <= dim.d.h ? 0 : -dim.o.h; // if shorter, move to 0 + }else{ + to.y = Math.max(to.y, -dim.o.h - 20); + easing = "linear"; + bounce.y = -dim.o.h; + } + } + } + if((this._h || this._f) && this.constraint){ + if(to.x > 0){ // going right. bounce back to the left. + if(pos.x > 0){ // started from right of the screen area. return quickly. + duration = 0.3; + to.x = 0; + }else{ + to.x = Math.min(to.x, 20); + easing = "linear"; + bounce.x = 0; + } + }else if(-speed.x > dim.o.w - (-pos.x)){ // going left. bounce back to the right. + if(pos.x < -dim.o.w){ // started from left of the screen top. return quickly. + duration = 0.3; + to.x = dim.c.w <= dim.d.w ? 0 : -dim.o.w; // if narrower, move to 0 + }else{ + to.x = Math.max(to.x, -dim.o.w - 20); + easing = "linear"; + bounce.x = -dim.o.w; + } + } + } + this._bounce = (bounce.x !== undefined || bounce.y !== undefined) ? bounce : undefined; + + if(duration === undefined){ + var distance, velocity; + if(this._v && this._h){ + velocity = Math.sqrt(speed.x*speed.x + speed.y*speed.y); + distance = Math.sqrt(Math.pow(to.y - pos.y, 2) + Math.pow(to.x - pos.x, 2)); + }else if(this._v){ + velocity = speed.y; + distance = to.y - pos.y; + }else if(this._h){ + velocity = speed.x; + distance = to.x - pos.x; + } + if(distance === 0 && !e){ return; } // #13154 + duration = velocity !== 0 ? Math.abs(distance / velocity) : 0.01; // time = distance / velocity + } + this.slideTo(to, duration, easing); + }, + + adjustDestination: function(/*Object*/to, /*Object*/pos, /*Object*/dim){ + // summary: + // A stub function to be overridden by subclasses. + // description: + // This function is called from onTouchEnd(). The purpose is to give its + // subclasses a chance to adjust the destination position. If this + // function returns false, onTouchEnd() returns immediately without + // performing scroll. + // to: + // The destination position. An object with x and y. + // pos: + // The current position. An object with x and y. + // dim: + // Dimension information returned by getDim(). + + // subclass may want to implement + return true; // Boolean + }, + + abort: function(){ + // summary: + // Aborts scrolling. + // description: + // This function stops the scrolling animation that is currently + // running. It is called when the user touches the screen while + // scrolling. + this._aborted = true; + this.scrollTo(this.getPos()); + this.stopAnimation(); + }, + + stopAnimation: function(){ + // summary: + // Stops the currently running animation. + domClass.remove(this.containerNode, "mblScrollableScrollTo2"); + if(this._scrollBarV){ + this._scrollBarV.className = ""; + } + if(this._scrollBarH){ + this._scrollBarH.className = ""; + } + if(this._useTransformTransition || this._useTopLeft){ + this.containerNode.style[css3.name("transition")] = ""; + if(this._scrollBarV) { this._scrollBarV.style[css3.name("transition")] = ""; } + if(this._scrollBarH) { this._scrollBarH.style[css3.name("transition")] = ""; } + } + }, + + scrollIntoView: function(/*DOMNode*/node, /*Boolean?*/alignWithTop, /*Number?*/duration){ + // summary: + // Scrolls the pane until the searching node is in the view. + // node: + // A DOM node to be searched for view. + // alignWithTop: + // If true, aligns the node at the top of the pane. + // If false, aligns the node at the bottom of the pane. + // duration: + // Duration of scrolling in seconds. (ex. 0.3) + // If not specified, scrolls without animation. + // description: + // Just like the scrollIntoView method of DOM elements, this + // function causes the given node to scroll into view, aligning it + // either at the top or bottom of the pane. + + if(!this._v){ return; } // cannot scroll vertically + + var c = this.containerNode, + h = this.getDim().d.h, // the height of ScrollableView's content display area + top = 0; + + // Get the top position of node relative to containerNode + for(var n = node; n !== c; n = n.offsetParent){ + if(!n || n.tagName === "BODY"){ return; } // exit if node is not a child of scrollableView + top += n.offsetTop; + } + // Calculate scroll destination position + var y = alignWithTop ? Math.max(h - c.offsetHeight, -top) : Math.min(0, h - top - node.offsetHeight); + + // Scroll to destination position + (duration && typeof duration === "number") ? + this.slideTo({y: y}, duration, "ease-out") : this.scrollTo({y: y}); + }, + + getSpeed: function(){ + // summary: + // Returns an object that indicates the scrolling speed. + // description: + // From the position and elapsed time information, calculates the + // scrolling speed, and returns an object with x and y. + var x = 0, y = 0, n = this._time.length; + // if the user holds the mouse or finger more than 0.5 sec, do not move. + if(n >= 2 && (new Date()).getTime() - this.startTime - this._time[n - 1] < 500){ + var dy = this._posY[n - (n > 3 ? 2 : 1)] - this._posY[(n - 6) >= 0 ? n - 6 : 0]; + var dx = this._posX[n - (n > 3 ? 2 : 1)] - this._posX[(n - 6) >= 0 ? n - 6 : 0]; + var dt = this._time[n - (n > 3 ? 2 : 1)] - this._time[(n - 6) >= 0 ? n - 6 : 0]; + y = this.calcSpeed(dy, dt); + x = this.calcSpeed(dx, dt); + } + return {x:x, y:y}; + }, + + calcSpeed: function(/*Number*/distance, /*Number*/time){ + // summary: + // Calculate the speed given the distance and time. + return Math.round(distance / time * 100) * 4; + }, + + scrollTo: function(/*Object*/to, /*Boolean?*/doNotMoveScrollBar, /*DomNode?*/node){ + // summary: + // Scrolls to the given position immediately without animation. + // to: + // The destination position. An object with x and y. + // ex. {x:0, y:-5} + // doNotMoveScrollBar: + // If true, the scroll bar will not be updated. If not specified, + // it will be updated. + // node: + // A DOM node to scroll. If not specified, defaults to + // this.containerNode. + + // scroll events + var scrollEvent, beforeTopHeight, afterBottomHeight; + var doScroll = true; + if(!this._aborted && this._conn){ // No scroll event if the call to scrollTo comes from abort or onTouchEnd + if(!this._dim){ + this._dim = this.getDim(); + } + beforeTopHeight = (to.y > 0)?to.y:0; + afterBottomHeight = (this._dim.o.h + to.y < 0)?-1 * (this._dim.o.h + to.y):0; + scrollEvent = {bubbles: false, + cancelable: false, + x: to.x, + y: to.y, + beforeTop: beforeTopHeight > 0, + beforeTopHeight: beforeTopHeight, + afterBottom: afterBottomHeight > 0, + afterBottomHeight: afterBottomHeight}; + // before scroll event + doScroll = this.onBeforeScroll(scrollEvent); + } + + if(doScroll){ + var s = (node || this.containerNode).style; + if(has("css3-animations")){ + if(!this._useTopLeft){ + if(this._useTransformTransition){ + s[css3.name("transition")] = ""; + } + s[css3.name("transform")] = this.makeTranslateStr(to); + }else{ + s[css3.name("transition")] = ""; + if(this._v){ + s.top = to.y + "px"; + } + if(this._h || this._f){ + s.left = to.x + "px"; + } + } + }else{ + if(this._v){ + s.top = to.y + "px"; + } + if(this._h || this._f){ + s.left = to.x + "px"; + } + } + if(has("ios")){ + this._keepInputCaretInActiveElement(); + } + if(!doNotMoveScrollBar){ + this.scrollScrollBarTo(this.calcScrollBarPos(to)); + } + if(scrollEvent){ + // After scroll event + this.onAfterScroll(scrollEvent); + } + } + }, + + onBeforeScroll: function(/*Event*/e){ + // e: Event + // the scroll event, that contains the following attributes: + // x (x coordinate of the scroll destination), + // y (y coordinate of the scroll destination), + // beforeTop (a boolean that is true if the scroll detination is before the top of the scrollable), + // beforeTopHeight (the number of pixels before the top of the scrollable for the scroll destination), + // afterBottom (a boolean that is true if the scroll destination is after the bottom of the scrollable), + // afterBottomHeight (the number of pixels after the bottom of the scrollable for the scroll destination) + // summary: + // called before a scroll is initiated. If this method returns false, + // the scroll is canceled. + // tags: + // callback + return true; + }, + + onAfterScroll: function(/*Event*/e){ + // e: Event + // the scroll event, that contains the following attributes: + // x (x coordinate of the scroll destination), + // y (y coordinate of the scroll destination), + // beforeTop (a boolean that is true if the scroll detination is before the top of the scrollable), + // beforeTopHeight (the number of pixels before the top of the scrollable for the scroll destination), + // afterBottom (a boolean that is true if the scroll destination is after the bottom of the scrollable), + // afterBottomHeight (the number of pixels after the bottom of the scrollable for the scroll destination) + // summary: + // called after a scroll has been performed. + // tags: + // callback + }, + + slideTo: function(/*Object*/to, /*Number*/duration, /*String*/easing){ + // summary: + // Scrolls to the given position with the slide animation. + // to: + // The scroll destination position. An object with x and/or y. + // ex. {x:0, y:-5}, {y:-29}, etc. + // duration: + // Duration of scrolling in seconds. (ex. 0.3) + // easing: + // The name of easing effect which webkit supports. + // "ease", "linear", "ease-in", "ease-out", etc. + + this._runSlideAnimation(this.getPos(), to, duration, easing, this.containerNode, 2); + this.slideScrollBarTo(to, duration, easing); + }, + + makeTranslateStr: function(/*Object*/to){ + // summary: + // Constructs a string value that is passed to the -webkit-transform property. + // to: + // The destination position. An object with x and/or y. + // description: + // Return value example: "translate3d(0px,-8px,0px)" + + var y = this._v && typeof to.y == "number" ? to.y+"px" : "0px"; + var x = (this._h||this._f) && typeof to.x == "number" ? to.x+"px" : "0px"; + return has("translate3d") ? + "translate3d("+x+","+y+",0px)" : "translate("+x+","+y+")"; + }, + + getPos: function(){ + // summary: + // Gets the top position in the midst of animation. + if(has("css3-animations")){ + var s = win.doc.defaultView.getComputedStyle(this.containerNode, ''); + if(!this._useTopLeft){ + var m = s[css3.name("transform")]; + if(m && m.indexOf("matrix") === 0){ + var arr = m.split(/[,\s\)]+/); + // IE10 returns a matrix3d + var i = m.indexOf("matrix3d") === 0 ? 12 : 4; + return {y:arr[i+1] - 0, x:arr[i] - 0}; + } + return {x:0, y:0}; + }else{ + return {x:parseInt(s.left) || 0, y:parseInt(s.top) || 0}; + } + }else{ + // this.containerNode.offsetTop does not work here, + // because it adds the height of the top margin. + var y = parseInt(this.containerNode.style.top) || 0; + return {y:y, x:this.containerNode.offsetLeft}; + } + }, + + getDim: function(){ + // summary: + // Returns various internal dimensional information needed for calculation. + + var d = {}; + // content width/height + d.c = {h:this.containerNode.offsetHeight, w:this.containerNode.offsetWidth}; + + // view width/height + d.v = {h:this.domNode.offsetHeight + this._appFooterHeight, w:this.domNode.offsetWidth}; + + // display width/height + d.d = {h:d.v.h - this.fixedHeaderHeight - this.fixedFooterHeight - this._appFooterHeight, w:d.v.w}; + + // overflowed width/height + d.o = {h:d.c.h - d.v.h + this.fixedHeaderHeight + this.fixedFooterHeight + this._appFooterHeight, w:d.c.w - d.v.w}; + return d; + }, + + showScrollBar: function(){ + // summary: + // Shows the scroll bar. + // description: + // This function creates the scroll bar instance if it does not + // exist yet, and calls resetScrollBar() to reset its length and + // position. + + if(!this.scrollBar){ return; } + + var dim = this._dim; + if(this.scrollDir == "v" && dim.c.h <= dim.d.h){ return; } + if(this.scrollDir == "h" && dim.c.w <= dim.d.w){ return; } + if(this._v && this._h && dim.c.h <= dim.d.h && dim.c.w <= dim.d.w){ return; } + + var createBar = function(self, dir){ + var bar = self["_scrollBarNode" + dir]; + if(!bar){ + var wrapper = domConstruct.create("div", null, self.domNode); + var props = { position: "absolute", overflow: "hidden" }; + if(dir == "V"){ + props.right = "2px"; + props.width = "5px"; + }else{ + props.bottom = (self.isLocalFooter ? self.fixedFooterHeight : 0) + 2 + "px"; + props.height = "5px"; + } + domStyle.set(wrapper, props); + wrapper.className = "mblScrollBarWrapper"; + self["_scrollBarWrapper"+dir] = wrapper; + + bar = domConstruct.create("div", null, wrapper); + domStyle.set(bar, css3.add({ + opacity: 0.6, + position: "absolute", + backgroundColor: "#606060", + fontSize: "1px", + MozBorderRadius: "2px", + zIndex: 2147483647 // max of signed 32-bit integer + }, { + borderRadius: "2px", + transformOrigin: "0 0" + })); + domStyle.set(bar, dir == "V" ? {width: "5px"} : {height: "5px"}); + self["_scrollBarNode" + dir] = bar; + } + return bar; + }; + if(this._v && !this._scrollBarV){ + this._scrollBarV = createBar(this, "V"); + } + if(this._h && !this._scrollBarH){ + this._scrollBarH = createBar(this, "H"); + } + this.resetScrollBar(); + }, + + hideScrollBar: function(){ + // summary: + // Hides the scroll bar. + // description: + // If the fadeScrollBar property is true, hides the scroll bar with + // the fade animation. + + if(this.fadeScrollBar && has("css3-animations")){ + if(!dm._fadeRule){ + var node = domConstruct.create("style", null, win.doc.getElementsByTagName("head")[0]); + node.textContent = + ".mblScrollableFadeScrollBar{"+ + " " + css3.name("animation-duration", true) + ": 1s;"+ + " " + css3.name("animation-name", true) + ": scrollableViewFadeScrollBar;}"+ + "@" + css3.name("keyframes", true) + " scrollableViewFadeScrollBar{"+ + " from { opacity: 0.6; }"+ + " to { opacity: 0; }}"; + dm._fadeRule = node.sheet.cssRules[1]; + } + } + if(!this.scrollBar){ return; } + var f = function(bar, self){ + domStyle.set(bar, css3.add({ + opacity: 0 + }, { + animationDuration: "" + })); + // do not use fade animation in case of using top/left on Android + // since it causes screen flicker during adress bar's fading out + if(!(self._useTopLeft && has('android'))){ + bar.className = "mblScrollableFadeScrollBar"; + } + }; + if(this._scrollBarV){ + f(this._scrollBarV, this); + this._scrollBarV = null; + } + if(this._scrollBarH){ + f(this._scrollBarH, this); + this._scrollBarH = null; + } + }, + + calcScrollBarPos: function(/*Object*/to){ + // summary: + // Calculates the scroll bar position. + // description: + // Given the scroll destination position, calculates the top and/or + // the left of the scroll bar(s). Returns an object with x and y. + // to: + // The scroll destination position. An object with x and y. + // ex. {x:0, y:-5} + + var pos = {}; + var dim = this._dim; + var f = function(wrapperH, barH, t, d, c){ + var y = Math.round((d - barH - 8) / (d - c) * t); + if(y < -barH + 5){ + y = -barH + 5; + } + if(y > wrapperH - 5){ + y = wrapperH - 5; + } + return y; + }; + if(typeof to.y == "number" && this._scrollBarV){ + pos.y = f(this._scrollBarWrapperV.offsetHeight, this._scrollBarV.offsetHeight, to.y, dim.d.h, dim.c.h); + } + if(typeof to.x == "number" && this._scrollBarH){ + pos.x = f(this._scrollBarWrapperH.offsetWidth, this._scrollBarH.offsetWidth, to.x, dim.d.w, dim.c.w); + } + return pos; + }, + + scrollScrollBarTo: function(/*Object*/to){ + // summary: + // Moves the scroll bar(s) to the given position without animation. + // to: + // The destination position. An object with x and/or y. + // ex. {x:2, y:5}, {y:20}, etc. + + if(!this.scrollBar){ return; } + if(this._v && this._scrollBarV && typeof to.y == "number"){ + if(has("css3-animations")){ + if(!this._useTopLeft){ + if(this._useTransformTransition){ + this._scrollBarV.style[css3.name("transition")] = ""; + } + this._scrollBarV.style[css3.name("transform")] = this.makeTranslateStr({y:to.y}); + }else{ + domStyle.set(this._scrollBarV, css3.add({ + top: to.y + "px" + }, { + transition: "" + })); + } + }else{ + this._scrollBarV.style.top = to.y + "px"; + } + } + if(this._h && this._scrollBarH && typeof to.x == "number"){ + if(has("css3-animations")){ + if(!this._useTopLeft){ + if(this._useTransformTransition){ + this._scrollBarH.style[css3.name("transition")] = ""; + } + this._scrollBarH.style[css3.name("transform")] = this.makeTranslateStr({x:to.x}); + }else{ + domStyle.set(this._scrollBarH, css3.add({ + left: to.x + "px" + }, { + transition: "" + })); + } + }else{ + this._scrollBarH.style.left = to.x + "px"; + } + } + }, + + slideScrollBarTo: function(/*Object*/to, /*Number*/duration, /*String*/easing){ + // summary: + // Moves the scroll bar(s) to the given position with the slide animation. + // to: + // The destination position. An object with x and y. + // ex. {x:0, y:-5} + // duration: + // Duration of the animation in seconds. (ex. 0.3) + // easing: + // The name of easing effect which webkit supports. + // "ease", "linear", "ease-in", "ease-out", etc. + + if(!this.scrollBar){ return; } + var fromPos = this.calcScrollBarPos(this.getPos()); + var toPos = this.calcScrollBarPos(to); + if(this._v && this._scrollBarV){ + this._runSlideAnimation({y:fromPos.y}, {y:toPos.y}, duration, easing, this._scrollBarV, 0); + } + if(this._h && this._scrollBarH){ + this._runSlideAnimation({x:fromPos.x}, {x:toPos.x}, duration, easing, this._scrollBarH, 1); + } + }, + + _runSlideAnimation: function(/*Object*/from, /*Object*/to, /*Number*/duration, /*String*/easing, /*DomNode*/node, /*Number*/idx){ + // tags: + // private + + // idx: 0:scrollbarV, 1:scrollbarH, 2:content + if(has("css3-animations")){ + if(!this._useTopLeft){ + if(this._useTransformTransition){ + // for iOS6 (maybe others?): use -webkit-transform + -webkit-transition + if(to.x === undefined){ to.x = from.x; } + if(to.y === undefined){ to.y = from.y; } + // make sure we actually change the transform, otherwise no webkitTransitionEnd is fired. + if(to.x !== from.x || to.y !== from.y){ + this.onFlickAnimationStart(); // needed because there is no transitionstart event. + domStyle.set(node, css3.add({}, { + transitionProperty: css3.name("transform"), + transitionDuration: duration + "s", + transitionTimingFunction: easing + })); + var t = this.makeTranslateStr(to); + setTimeout(function(){ // setTimeout is needed to prevent webkitTransitionEnd not fired + domStyle.set(node, css3.add({}, { + transform: t + })); + }, 0); + domClass.add(node, "mblScrollableScrollTo"+idx); + } else { + // transform not changed, just hide the scrollbar + this.hideScrollBar(); + this.removeCover(); + } + }else{ + // use -webkit-transform + -webkit-animation + this.setKeyframes(from, to, idx); + domStyle.set(node, css3.add({}, { + animationDuration: duration + "s", + animationTimingFunction: easing + })); + domClass.add(node, "mblScrollableScrollTo"+idx); + if(idx == 2){ + this.scrollTo(to, true, node); + }else{ + this.scrollScrollBarTo(to); + } + } + }else if(to.x !== undefined || to.y !== undefined){ + this.onFlickAnimationStart(); // #17822: needed because there is no transitionstart event. + domStyle.set(node, css3.add({}, { + // #17822 when scrolling on one direction, avoid unnecessarily animating + // both top and left, because this leads to two transitionend events fired + // instead of one in some browsers (Safari/iOS7 at least). + transitionProperty: (to.x !== undefined && to.y !== undefined) ? + "top, left" : + to.y !== undefined ? "top" : "left", + transitionDuration: duration + "s", + transitionTimingFunction: easing + })); + setTimeout(function(){ // setTimeout is needed to prevent webkitTransitionEnd not fired + var style = {}; + if(to.x !== undefined){ + style.left = to.x + "px"; + } + if(to.y !== undefined){ + style.top = to.y + "px"; + } + domStyle.set(node, style); + }, 0); + domClass.add(node, "mblScrollableScrollTo"+idx); + } + }else if(dojo.fx && dojo.fx.easing && duration){ + // If you want to support non-webkit browsers, + // your application needs to load necessary modules as follows: + // + // | dojo.require("dojo.fx"); + // | dojo.require("dojo.fx.easing"); + // + // This module itself does not make dependency on them. + // TODO: for 2.0 the dojo global is going away. Use require("dojo/fx") and require("dojo/fx/easing") instead. + + var self = this; + var s = dojo.fx.slideTo({ + node: node, + duration: duration*1000, + left: to.x, + top: to.y, + easing: (easing == "ease-out") ? dojo.fx.easing.quadOut : dojo.fx.easing.linear, + onBegin: function(){ // #17822 + if(idx == 2){ + self.onFlickAnimationStart(); + } + }, + onEnd: function(){ + if(idx == 2){ + self.onFlickAnimationEnd(); + } + } + }).play(); + }else{ + // directly jump to the destination without animation + if(idx == 2){ + this.onFlickAnimationStart(); // #17822 + this.scrollTo(to, false, node); + this.onFlickAnimationEnd(); + }else{ + this.scrollScrollBarTo(to); + } + } + }, + + resetScrollBar: function(){ + // summary: + // Resets the scroll bar length, position, etc. + var f = function(wrapper, bar, d, c, hd, v){ + if(!bar){ return; } + var props = {}; + props[v ? "top" : "left"] = hd + 4 + "px"; // +4 is for top or left margin + var t = (d - 8) <= 0 ? 1 : d - 8; + props[v ? "height" : "width"] = t + "px"; + domStyle.set(wrapper, props); + var l = Math.round(d * d / c); // scroll bar length + l = Math.min(Math.max(l - 8, 5), t); // -8 is for margin for both ends + bar.style[v ? "height" : "width"] = l + "px"; + domStyle.set(bar, {"opacity": 0.6}); + }; + var dim = this.getDim(); + f(this._scrollBarWrapperV, this._scrollBarV, dim.d.h, dim.c.h, this.fixedHeaderHeight, true); + f(this._scrollBarWrapperH, this._scrollBarH, dim.d.w, dim.c.w, 0); + this.createMask(); + }, + + createMask: function(){ + // summary: + // Creates a mask for a scroll bar edge. + // description: + // This function creates a mask that hides corners of one scroll + // bar edge to make it round edge. The other side of the edge is + // always visible and round shaped with the border-radius style. + if(!(has("mask-image"))){ return; } + if(this._scrollBarWrapperV){ + var h = this._scrollBarWrapperV.offsetHeight; + maskUtils.createRoundMask(this._scrollBarWrapperV, 0, 0, 0, 0, 5, h, 2, 2, 0.5); + } + if(this._scrollBarWrapperH){ + var w = this._scrollBarWrapperH.offsetWidth; + maskUtils.createRoundMask(this._scrollBarWrapperH, 0, 0, 0, 0, w, 5, 2, 2, 0.5); + } + }, + + flashScrollBar: function(){ + // summary: + // Shows the scroll bar instantly. + // description: + // This function shows the scroll bar, and then hides it 300ms + // later. This is used to show the scroll bar to the user for a + // short period of time when a hidden view is revealed. + if(this.disableFlashScrollBar || !this.domNode){ return; } + this._dim = this.getDim(); + if(this._dim.d.h <= 0){ return; } // dom is not ready + this.showScrollBar(); + var _this = this; + setTimeout(function(){ + _this.hideScrollBar(); + }, 300); + }, + + addCover: function(){ + // summary: + // Adds the transparent DIV cover. + // description: + // The cover is to prevent DOM events from affecting the child + // widgets such as a list widget. Without the cover, for example, + // child widgets may receive a click event and respond to it + // unexpectedly when the user flicks the screen to scroll. + // Note that only the desktop browsers need the cover. + + if(!has("touch") && !this.noCover){ + if(!dm._cover){ + dm._cover = domConstruct.create("div", null, win.doc.body); + dm._cover.className = "mblScrollableCover"; + domStyle.set(dm._cover, { + backgroundColor: "#ffff00", + opacity: 0, + position: "absolute", + top: "0px", + left: "0px", + width: "100%", + height: "100%", + zIndex: 2147483647 // max of signed 32-bit integer + }); + this._ch.push(connect.connect(dm._cover, touch.press, this, "onTouchEnd")); + }else{ + dm._cover.style.display = ""; + } + this.setSelectable(dm._cover, false); + this.setSelectable(this.domNode, false); + } + }, + + removeCover: function(){ + // summary: + // Removes the transparent DIV cover. + + if(!has("touch") && dm._cover){ + dm._cover.style.display = "none"; + this.setSelectable(dm._cover, true); + this.setSelectable(this.domNode, true); + } + }, + + setKeyframes: function(/*Object*/from, /*Object*/to, /*Number*/idx){ + // summary: + // Programmatically sets key frames for the scroll animation. + + if(!dm._rule){ + dm._rule = []; + } + // idx: 0:scrollbarV, 1:scrollbarH, 2:content + if(!dm._rule[idx]){ + var node = domConstruct.create("style", null, win.doc.getElementsByTagName("head")[0]); + node.textContent = + ".mblScrollableScrollTo"+idx+"{" + css3.name("animation-name", true) + ": scrollableViewScroll"+idx+";}"+ + "@" + css3.name("keyframes", true) + " scrollableViewScroll"+idx+"{}"; + dm._rule[idx] = node.sheet.cssRules[1]; + } + var rule = dm._rule[idx]; + if(rule){ + if(from){ + rule.deleteRule(has("webkit")?"from":0); + (rule.insertRule||rule.appendRule).call(rule, "from { " + css3.name("transform", true) + ": "+this.makeTranslateStr(from)+"; }"); + } + if(to){ + if(to.x === undefined){ to.x = from.x; } + if(to.y === undefined){ to.y = from.y; } + rule.deleteRule(has("webkit")?"to":1); + (rule.insertRule||rule.appendRule).call(rule, "to { " + css3.name("transform", true) + ": "+this.makeTranslateStr(to)+"; }"); + } + } + }, + + setSelectable: function(/*DomNode*/node, /*Boolean*/selectable){ + // summary: + // Sets the given node as selectable or unselectable. + + // dojo.setSelectable has dependency on dojo.query. Redefine our own. + node.style.KhtmlUserSelect = selectable ? "auto" : "none"; + node.style.MozUserSelect = selectable ? "" : "none"; + node.onselectstart = selectable ? null : function(){return false;}; + if(has("ie")){ + node.unselectable = selectable ? "" : "on"; + var nodes = node.getElementsByTagName("*"); + for(var i = 0; i < nodes.length; i++){ + nodes[i].unselectable = selectable ? "" : "on"; + } + } + } + }); + Scrollable = has("dojo-bidi") ? declare("dojox.mobile.Scrollable", [Scrollable, BidiScrollable]) : Scrollable; + lang.setObject("dojox.mobile.scrollable", Scrollable); + + return Scrollable; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/sniff.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/sniff.js new file mode 100644 index 00000000..df8f454a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/sniff.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/mobile/sniff",["dojo/_base/kernel","dojo/sniff"],function(_1,_2){ +_1.deprecated("dojox/mobile/sniff","Use dojo/sniff instead","2.0"); +_2.add("iphone",_2("ios")); +return _2; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/sniff.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/sniff.js.uncompressed.js new file mode 100644 index 00000000..9e19a467 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/sniff.js.uncompressed.js @@ -0,0 +1,21 @@ +define("dojox/mobile/sniff", [ + "dojo/_base/kernel", + "dojo/sniff" +], function(kernel, has){ + + kernel.deprecated("dojox/mobile/sniff", "Use dojo/sniff instead", "2.0"); + + // TODO: remove this in 2.0 + has.add("iphone", has("ios")); + + /*===== + return { + // summary: + // Deprecated: use dojo/sniff instead. + // On iOS, dojox/mobile/sniff sets "iphone" to the same value as "ios" + // for compatibility with earlier versions, but this should be considered deprecated. + // In future versions, "iphone" will be set only when running on an iPhone (not iPad on iPod). + }; + =====*/ + return has; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Accordion-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Accordion-compat.css new file mode 100644 index 00000000..c2f4a379 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Accordion-compat.css @@ -0,0 +1,25 @@ + +.mblAccordionTitle { + background-color: #f8f8f8; +} +.mblAccordionTitleSelected { + background-color: #00ba00; +} +.dj_gecko .mblAccordionTitle { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblAccordionTitleSelected { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Accordion.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Accordion.css new file mode 100644 index 00000000..e3425e0c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Accordion.css @@ -0,0 +1,73 @@ + +.mblAccordion { + border-style: outset; + border-width: 1px; + border-color: #8c8f91; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + border-top: 1px solid #8c8f91; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: black; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + border-bottom: 1px solid #8c8f91; + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); + color: white; +} +.mblAccordionTitleSelected .mblAccordionTitleAnchor { + color: white; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Accordion_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Accordion_rtl.css new file mode 100644 index 00000000..5b9612f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Accordion_rtl.css @@ -0,0 +1,6 @@ + +.mblAccordionIconParentRtl { + float: right; + -webkit-transform: scaleX(-1); + transform: scaleX(-1); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Button-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Button-compat.css new file mode 100644 index 00000000..bdc93fd5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Button-compat.css @@ -0,0 +1,41 @@ + +.mblButton { + background-image: url(compat/button-bg.png); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblBlueButton { + background-image: url(compat/blue-button-bg.png); +} +.mblBlueButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.mblRedButton { + background-image: url(compat/red-button-bg.png); +} +.mblRedButtonSelected { + background-image: url(compat/red-button-sel-bg.png); +} +.dj_gecko .mblButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblBlueButton { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblBlueButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblRedButton { + background-image: -moz-linear-gradient(top, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); +} +.dj_gecko .mblRedButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblButton { + -moz-border-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Button.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Button.css new file mode 100644 index 00000000..9a7fffd7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Button.css @@ -0,0 +1,47 @@ + +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 3px; + color: black; + font-size: 13px; +} +.mblButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + color: white; +} +.mblBlueButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115), color-stop(0.5, #ff4d25), color-stop(0.5, #ed4d15)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); + color: white; +} +.mblRedButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Carousel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Carousel.css new file mode 100644 index 00000000..57e43929 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Carousel.css @@ -0,0 +1,77 @@ + +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Carousel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Carousel_rtl.css new file mode 100644 index 00000000..acab0d8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Carousel_rtl.css @@ -0,0 +1,13 @@ + +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/CheckBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/CheckBox-compat.css new file mode 100644 index 00000000..d9ccd391 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/CheckBox-compat.css @@ -0,0 +1,38 @@ + +.mblCheckBox { + background-image: url(compat/button-bg.png); +} +.mblCheckBoxSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblCheckBox { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/CheckBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/CheckBox.css new file mode 100644 index 00000000..342ccd78 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/CheckBox.css @@ -0,0 +1,49 @@ + +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; + border-radius: 3px; +} +.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ComboBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ComboBox-compat.css new file mode 100644 index 00000000..7abf2f65 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ComboBox-compat.css @@ -0,0 +1,7 @@ + +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: 0 0 50px #000000; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ComboBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ComboBox.css new file mode 100644 index 00000000..849f4442 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ComboBox.css @@ -0,0 +1,58 @@ + +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: 0 0 50px #000000; + box-shadow: 0 0 50px #000000; + border-radius: 0; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-radius: 0; + background-color: white; + color: black; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: #ffffff; + color: inherit; +} +.mblComboBoxMenuItemSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ComboBox_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ComboBox_rtl.css new file mode 100644 index 00000000..10932a96 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ComboBox_rtl.css @@ -0,0 +1,4 @@ + +.mblComboBoxMenuItemRtl { + text-align: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/DatePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/DatePicker.css new file mode 100644 index 00000000..6c461e7e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/DatePicker.css @@ -0,0 +1,178 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#d6d7d6), color-stop(0.5, #d6d3d6), color-stop(0.9, #bdbebd)); + background-image: linear-gradient(to bottom, #f7f7f7 0%, #d6d3d6 50%, #bdbebd 90%, #d6d7d6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#adaead), to(#e7e3e7), color-stop(0.1, #d6d7d6), color-stop(0.5, #f7f7f7), color-stop(0.9, #f7f3f7)); + background-image: linear-gradient(to bottom, #adaead 0%, #d6d7d6 10%, #f7f7f7 50%, #f7f3f7 90%, #e7e3e7 100%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/EdgeToEdgeCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/EdgeToEdgeCategory.css new file mode 100644 index 00000000..4c59ae77 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/EdgeToEdgeCategory.css @@ -0,0 +1,18 @@ + +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 22px; + border-bottom: 1px solid #393439; + background-color: #212021; + color: white; + line-height: 22px; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/EdgeToEdgeList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/EdgeToEdgeList.css new file mode 100644 index 00000000..557c4116 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/EdgeToEdgeList.css @@ -0,0 +1,9 @@ + +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: black; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #313431; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/FixedSplitter.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/FixedSplitter.css new file mode 100644 index 00000000..3c88bebb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/FixedSplitter.css @@ -0,0 +1,21 @@ + +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/FormLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/FormLayout.css new file mode 100644 index 00000000..19a22b9b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/FormLayout.css @@ -0,0 +1,160 @@ + +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/FormLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/FormLayout_rtl.css new file mode 100644 index 00000000..44ebb14d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/FormLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/GridLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/GridLayout.css new file mode 100644 index 00000000..ebdc391f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/GridLayout.css @@ -0,0 +1,24 @@ + +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/GridLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/GridLayout_rtl.css new file mode 100644 index 00000000..3f5bdd0d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/GridLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblGridLayoutRtl > div { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Heading-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Heading-compat.css new file mode 100644 index 00000000..572e6505 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Heading-compat.css @@ -0,0 +1,10 @@ + +.mblHeading { + background-image: url(compat/heading-bg.png); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #9c9e9c 0%, #848284 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Heading.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Heading.css new file mode 100644 index 00000000..3a57725d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Heading.css @@ -0,0 +1,39 @@ + +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer-compat.css new file mode 100644 index 00000000..8a99f941 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer-compat.css @@ -0,0 +1,59 @@ + +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url(compat/icon-content-heading-bg.png); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer-compat.less new file mode 100644 index 00000000..e2df9856 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons-compat.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross-compat.css"); + +@import "variables.less"; +@import "../common/IconContainer-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer.css new file mode 100644 index 00000000..bec6b80f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer.css @@ -0,0 +1,381 @@ + +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; + color: black; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: white; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer.less new file mode 100644 index 00000000..729745a1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross.css"); + +@import "variables.less"; +@import "../common/IconContainer.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer_rtl.css new file mode 100644 index 00000000..0aa248fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconContainer_rtl.css @@ -0,0 +1,13 @@ + +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: -2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu-compat.css new file mode 100644 index 00000000..927b8ad6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu-compat.css @@ -0,0 +1,34 @@ + +.mblIconMenu { + background-color: #404040; +} +.mblIconMenuItemSel { + background-color: #3578b1; +} +.dj_gecko .mblIconMenu { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 6px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu.css new file mode 100644 index 00000000..fbd52c33 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu.css @@ -0,0 +1,63 @@ + +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 6px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid rgba(96, 96, 96, 0.85); + border-bottom: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 6px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 6px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 13px; + color: white; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu_rtl-compat.css new file mode 100644 index 00000000..3b1f8262 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu_rtl-compat.css @@ -0,0 +1,17 @@ + +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 6px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 6px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 6px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 6px; + -moz-border-bottom-right-radius: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu_rtl.css new file mode 100644 index 00000000..0675ffc8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/IconMenu_rtl.css @@ -0,0 +1,23 @@ +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-right-radius: 6px; + border-top-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0px; + border-top-left-radius: 6px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-right-radius: 6px; + border-bottom-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem-compat.css new file mode 100644 index 00000000..e59db2f6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem-compat.css @@ -0,0 +1,24 @@ + +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonWhiteCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #3578b1; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem-compat.less new file mode 100644 index 00000000..a15be6be --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayArrow-compat.css"); +@import url("../common/domButtons/DomButtonWhiteCheck-compat.css"); + +@import "variables.less"; +@import "../common/ListItem-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem.css new file mode 100644 index 00000000..556a165a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem.css @@ -0,0 +1,154 @@ + +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonWhiteCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: white; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 64px; + list-style-type: none; + line-height: 64px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #313431; + background-color: black; + font-size: 21px; + color: white; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 17.5px; + margin-bottom: -17.5px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 17.5px; + margin-bottom: -17.5px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 17.5px; + margin-bottom: -17.5px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: white; + margin-top: 20px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem.less new file mode 100644 index 00000000..45d43861 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayArrow.css"); +@import url("../common/domButtons/DomButtonWhiteCheck.css"); + +@import "variables.less"; +@import "../common/ListItem.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem_rtl-compat.css new file mode 100644 index 00000000..f3e90656 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem_rtl-compat.css @@ -0,0 +1,6 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem_rtl.css new file mode 100644 index 00000000..bf0a03c1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem_rtl.css @@ -0,0 +1,40 @@ + +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonWhiteCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem_rtl.less new file mode 100644 index 00000000..c21ef273 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ListItem_rtl.less @@ -0,0 +1,4 @@ +@import url("../common/domButtons/DomButtonGrayArrow_rtl.css"); +@import url("../common/domButtons/DomButtonWhiteCheck_rtl.css"); + +@import "../common/ListItem_rtl.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Opener-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Opener-compat.css new file mode 100644 index 00000000..130f6e15 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Opener-compat.css @@ -0,0 +1,53 @@ + +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #8c8a8c; + border-bottom: 1px solid #8c8a8c; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Opener.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Opener.css new file mode 100644 index 00000000..3634a88a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Opener.css @@ -0,0 +1,245 @@ + +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #333333; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 3px; + background-color: #8c8a8c; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #306ea1; + background-image: none; + color: white; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #306ea1; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #306ea1; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #848284; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #848284; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #9c9e9c; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #848284; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblOpenerUnderlay { + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Overlay-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Overlay-compat.css new file mode 100644 index 00000000..6a884395 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Overlay-compat.css @@ -0,0 +1,14 @@ + +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Overlay.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Overlay.css new file mode 100644 index 00000000..3c595256 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Overlay.css @@ -0,0 +1,90 @@ +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #333333; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Overlay.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Overlay.less new file mode 100644 index 00000000..e49ea9eb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Overlay.less @@ -0,0 +1,5 @@ +@import url("../common/transitions/coverv.css"); +@import url("../common/transitions/revealv.css"); + +@import "variables.less"; +@import "../common/Overlay.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/PageIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/PageIndicator-compat.css new file mode 100644 index 00000000..29d4f8ab --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/PageIndicator-compat.css @@ -0,0 +1,4 @@ + +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/PageIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/PageIndicator.css new file mode 100644 index 00000000..0b40e78d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/PageIndicator.css @@ -0,0 +1,23 @@ + +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressBar-compat.css new file mode 100644 index 00000000..715c18f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressBar-compat.css @@ -0,0 +1,15 @@ + +.mblProgressBar { + background-color: #293031; +} +.mblProgressBarProgress { + background-color: #7bc708; +} +.dj_gecko .mblProgressBar { + background-image: -moz-linear-gradient(top, #545454 0%, #313031 30%, #293031 85%, #414141 100%); +} +.dj_gecko .mblProgressBarProgress { + -moz-transition-property: width; + -moz-transition-duration: 0.25s; + background-image: -moz-linear-gradient(top, #adf708 0%, #7bbe08 50%, #63a600 90%, #5a8e00 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressBar.css new file mode 100644 index 00000000..fa5f96c9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressBar.css @@ -0,0 +1,35 @@ + +.mblProgressBar { + position: relative; + border-radius: 6px; + height: 22px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#545454), to(#414141), color-stop(0.3, #313031), color-stop(0.85, #293031)); + background-image: linear-gradient(to bottom, #545454 0%, #313031 30%, #293031 85%, #414141 100%); +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#adf708), to(#5a8e00), color-stop(0.5, #7bbe08), color-stop(0.9, #63a600)); + background-image: linear-gradient(to bottom, #adf708 0%, #7bbe08 50%, #63a600 90%, #5a8e00 100%); + height: 22px; +} +.mblProgressBarComplete { + border-radius: 6px; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressIndicator-compat.css new file mode 100644 index 00000000..091d2c35 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressIndicator-compat.css @@ -0,0 +1,83 @@ + +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressIndicator.css new file mode 100644 index 00000000..24420021 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressIndicator.css @@ -0,0 +1,157 @@ + +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressIndicator_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressIndicator_rtl.css new file mode 100644 index 00000000..ea681121 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ProgressIndicator_rtl.css @@ -0,0 +1,14 @@ + +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 50%; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: -50%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RadioButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RadioButton-compat.css new file mode 100644 index 00000000..269174e1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RadioButton-compat.css @@ -0,0 +1,32 @@ + +.mblRadioButton { + background-image: url(compat/button-bg.png); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.dj_gecko .mblRadioButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RadioButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RadioButton.css new file mode 100644 index 00000000..e4a22aa3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RadioButton.css @@ -0,0 +1,49 @@ + +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRect-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRect-compat.css new file mode 100644 index 00000000..574c4b8c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRect-compat.css @@ -0,0 +1,72 @@ + +.mblRoundRect.mblShadow { + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ie .mblRoundCorner { + background-color: #000000; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #000000; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRect.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRect.css new file mode 100644 index 00000000..08a972d4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRect.css @@ -0,0 +1,13 @@ + +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #000000; + color: white; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectCategory.css new file mode 100644 index 00000000..7b58f5de --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectCategory.css @@ -0,0 +1,11 @@ + +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectCategory_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectCategory_rtl.css new file mode 100644 index 00000000..8e8a8e88 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectCategory_rtl.css @@ -0,0 +1,4 @@ + +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectList-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectList-compat.css new file mode 100644 index 00000000..529cf2d6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectList-compat.css @@ -0,0 +1,77 @@ + +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #000000; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #000000; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectList.css new file mode 100644 index 00000000..5025000d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/RoundRectList.css @@ -0,0 +1,19 @@ + +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #000000; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ScrollablePane.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ScrollablePane.css new file mode 100644 index 00000000..425b9209 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ScrollablePane.css @@ -0,0 +1,12 @@ + +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SearchBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SearchBox-compat.css new file mode 100644 index 00000000..a979d01d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SearchBox-compat.css @@ -0,0 +1,22 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 3px; +} +.mblSearchBox { + height: auto; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SearchBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SearchBox.css new file mode 100644 index 00000000..af55b359 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SearchBox.css @@ -0,0 +1,63 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 3px; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: transparent; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid transparent; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 0; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #000000), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #000000), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SimpleDialog-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SimpleDialog-compat.css new file mode 100644 index 00000000..2f26468b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SimpleDialog-compat.css @@ -0,0 +1,10 @@ + +.mblSimpleDialogDecoration { + background-color: #404040; +} +.dj_gecko .mblSimpleDialogDecoration { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SimpleDialog.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SimpleDialog.css new file mode 100644 index 00000000..ccc1982c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SimpleDialog.css @@ -0,0 +1,48 @@ + +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration { + border-radius: 6px; + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; + color: white; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 14px 0 7px -5px; + padding: 0 14px 14px; + width: 244px; + border-bottom: 1px solid rgba(96, 96, 96, 0.85); + font-size: 21px; + text-align: left; +} +.mblSimpleDialogText { + margin: 14px 9px; + width: 244px; + font-size: 18px; + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Slider-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Slider-compat.css new file mode 100644 index 00000000..b930f764 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Slider-compat.css @@ -0,0 +1,40 @@ + +.mblSlider { + background-image: url(compat/slider-h-bg.png); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url(compat/slider-h-bar-bg.png); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url(compat/slider-handle-bg.png); +} +.mblSliderV { + background-color: #bdbebd; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #00a200; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -moz-linear-gradient(top, #bdbebd 0%, #f7f3f7 100%); + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblSliderHandle { + background-image: -moz-linear-gradient(top, #9c9a9c 0%, #848284 100%); +} +.dj_ff3 .mblSlider { + -moz-border-radius: 2px; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 2px; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Slider.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Slider.css new file mode 100644 index 00000000..0040d939 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Slider.css @@ -0,0 +1,65 @@ + +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border-color: #b0b0b0; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + border-color: #9d9d9d; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel-compat.css new file mode 100644 index 00000000..4d605d58 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel-compat.css @@ -0,0 +1,36 @@ +.mblSpinWheel { + background-image: url(../common/compat/spinwheel-bg.png); +} +.mblSpinWheelBar { + background-image: url(../common/compat/spinwheel-bar.png); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel.css new file mode 100644 index 00000000..ba26bc8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel.css @@ -0,0 +1,77 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel_rtl-compat.css new file mode 100644 index 00000000..98aab55f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel_rtl-compat.css @@ -0,0 +1,4 @@ +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel_rtl.css new file mode 100644 index 00000000..2f94024c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/SpinWheel_rtl.css @@ -0,0 +1,5 @@ + +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch-compat.css new file mode 100644 index 00000000..2229bcd0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch-compat.css @@ -0,0 +1,109 @@ + +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #bdbebd 0%, #f7f3f7 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #9c9a9c 0%, #848284 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url(compat/switch-square-k.gif); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round1-k.gif); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round2-k.gif); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc1-k.gif); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc2-k.gif); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url(compat/switch-square-k.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch-compat.less new file mode 100644 index 00000000..f15894c8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch-compat.less @@ -0,0 +1,7 @@ +@import "variables.less"; +@import "../common/Switch-compat.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwSquareShape-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch.css new file mode 100644 index 00000000..1f79ac29 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch.css @@ -0,0 +1,221 @@ + +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 18.5px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(157, 157, 157, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch.less new file mode 100644 index 00000000..51d10adc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch.less @@ -0,0 +1,7 @@ +@import "variables.less"; +@import "../common/Switch.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwSquareShape-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch_rtl-compat.css new file mode 100644 index 00000000..a3346662 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch_rtl-compat.css @@ -0,0 +1,37 @@ + +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch_rtl.css new file mode 100644 index 00000000..51bc7180 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Switch_rtl.css @@ -0,0 +1,110 @@ + +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar-compat.css new file mode 100644 index 00000000..af81377c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar-compat.css @@ -0,0 +1,60 @@ + +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-image: none; + background-color: #000000; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url(compat/heading-bg.png); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url(compat/tab-seg-button-bg.png); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url(compat/tab-seg-sel-button-bg.png); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url(compat/tab-slim-bar-bg.png); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url(compat/tab-tall-bar-bg.png); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar-compat.less new file mode 100644 index 00000000..c0476f34 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar-compat.less @@ -0,0 +1,3 @@ +@import "variables.less"; +@import "../common/TabBar-compat.less"; +@import "../common/domButtons/DomButtonWhiteCross-compat.css"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar.css new file mode 100644 index 00000000..851df273 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar.css @@ -0,0 +1,278 @@ + +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + text-shadow: none; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #000000 100%); +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + color: white; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#484848), to(#242424)); + background-image: linear-gradient(to bottom, #484848 0%, #242424 100%); +} +.mblTabBarTabBar .mblTabBarButtonSelected .mblTabBarButtonLabel { + color: white; +} +.mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-style: solid; + border-color: #555555; + color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: #000000; + background-color: #c6c6c6; + + background-image: -webkit-gradient(linear, left top, left bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + color: #ffffff; + background-color: #3578b1; + + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #2d3642; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #000000 100%); +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar.less new file mode 100644 index 00000000..4066ecc1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar.less @@ -0,0 +1,3 @@ +@import "variables.less"; +@import "../common/TabBar.less"; +@import "../common/domButtons/DomButtonWhiteCross.css"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar_rtl-compat.css new file mode 100644 index 00000000..9d501c64 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar_rtl-compat.css @@ -0,0 +1,19 @@ + +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 5px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 5px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar_rtl.css new file mode 100644 index 00000000..e0527eb1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TabBar_rtl.css @@ -0,0 +1,83 @@ + +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 5px; + border-top-left-radius: 0px; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 5px; + border-top-right-radius: 0px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextArea-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextArea-compat.css new file mode 100644 index 00000000..613e986b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextArea-compat.css @@ -0,0 +1,7 @@ + +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextArea.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextArea.css new file mode 100644 index 00000000..d8128985 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextArea.css @@ -0,0 +1,13 @@ + +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 3px; +} +.mblExpandingTextArea { + margin: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextBox-compat.css new file mode 100644 index 00000000..e2164ddc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextBox-compat.css @@ -0,0 +1,4 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextBox.css new file mode 100644 index 00000000..9742fc02 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TextBox.css @@ -0,0 +1,10 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TimePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TimePicker.css new file mode 100644 index 00000000..6c461e7e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/TimePicker.css @@ -0,0 +1,178 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#d6d7d6), color-stop(0.5, #d6d3d6), color-stop(0.9, #bdbebd)); + background-image: linear-gradient(to bottom, #f7f7f7 0%, #d6d3d6 50%, #bdbebd 90%, #d6d7d6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#adaead), to(#e7e3e7), color-stop(0.1, #d6d7d6), color-stop(0.5, #f7f7f7), color-stop(0.9, #f7f3f7)); + background-image: linear-gradient(to bottom, #adaead 0%, #d6d7d6 10%, #f7f7f7 50%, #f7f3f7 90%, #e7e3e7 100%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToggleButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToggleButton-compat.css new file mode 100644 index 00000000..a5ef144f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToggleButton-compat.css @@ -0,0 +1,42 @@ + +.mblToggleButton { + background-image: url(compat/button-bg.png); +} +.mblToggleButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblToggleButtonChecked { + background-image: url(compat/button-chk-bg.png); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblToggleButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblToggleButtonChecked { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 3px; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url(compat/togglebutton-chk-mark-bg.png); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToggleButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToggleButton.css new file mode 100644 index 00000000..4d001220 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToggleButton.css @@ -0,0 +1,54 @@ + +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 3px; + font-size: 13px; + color: black; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblToggleButtonChecked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); + color: white; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToggleButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToggleButton_rtl.css new file mode 100644 index 00000000..f6145188 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToggleButton_rtl.css @@ -0,0 +1,7 @@ + +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToolBarButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToolBarButton-compat.css new file mode 100644 index 00000000..e74d47b4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToolBarButton-compat.css @@ -0,0 +1,63 @@ + +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url(compat/arrow-button-head-sel.png); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-right-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url(compat/arrow-button-right-head-sel.png); +} +.dj_ie .mblToolBarButtonBody { + background-image: url(compat/arrow-button-bg.png); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url(compat/arrow-button-bg-sel.png); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToolBarButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToolBarButton.css new file mode 100644 index 00000000..72225203 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToolBarButton.css @@ -0,0 +1,90 @@ + +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + text-shadow: none; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1.05) rotate(45deg); + transform: scale(0.7, 1.05) rotate(45deg); + border: 1px solid #3a4655; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: 1px solid #555555; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToolBarButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToolBarButton_rtl.css new file mode 100644 index 00000000..4273045f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ToolBarButton_rtl.css @@ -0,0 +1,18 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Tooltip-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Tooltip-compat.css new file mode 100644 index 00000000..94f3c594 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Tooltip-compat.css @@ -0,0 +1,40 @@ + +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #8c8a8c; + border-bottom: 1px solid #8c8a8c; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Tooltip.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Tooltip.css new file mode 100644 index 00000000..102a24f4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/Tooltip.css @@ -0,0 +1,152 @@ + +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 3px; + background-color: #8c8a8c; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #306ea1; + background-image: none; + color: white; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #306ea1; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #306ea1; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #848284; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #848284; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #9c9e9c; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #848284; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ValuePicker-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ValuePicker-compat.css new file mode 100644 index 00000000..77295da8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ValuePicker-compat.css @@ -0,0 +1,19 @@ + +.mblValuePickerSlotButton { + background-image: url(compat/valuepicker-button-bg.png); +} +.mblValuePickerSlotButtonSelected { + background-color: #3578b1; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: -moz-linear-gradient(top, #f7f7f7 0%, #d6d3d6 50%, #bdbebd 90%, #d6d7d6 100%); +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: -moz-linear-gradient(top, #adaead 0%, #d6d7d6 10%, #f7f7f7 50%, #f7f3f7 90%, #e7e3e7 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ValuePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ValuePicker.css new file mode 100644 index 00000000..5f25df92 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ValuePicker.css @@ -0,0 +1,102 @@ + +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#d6d7d6), color-stop(0.5, #d6d3d6), color-stop(0.9, #bdbebd)); + background-image: linear-gradient(to bottom, #f7f7f7 0%, #d6d3d6 50%, #bdbebd 90%, #d6d7d6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#adaead), to(#e7e3e7), color-stop(0.1, #d6d7d6), color-stop(0.5, #f7f7f7), color-stop(0.9, #f7f3f7)); + background-image: linear-gradient(to bottom, #adaead 0%, #d6d7d6 10%, #f7f7f7 50%, #f7f3f7 90%, #e7e3e7 100%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ValuePicker.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ValuePicker.less new file mode 100644 index 00000000..1561b85c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/ValuePicker.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayPlus.css"); +@import url("../common/domButtons/DomButtonGrayMinus.css"); + +@import "variables.less"; +@import "../common/ValuePicker.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/View.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/View.css new file mode 100644 index 00000000..9f200c9b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/View.css @@ -0,0 +1,123 @@ +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: white; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/View.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/View.less new file mode 100644 index 00000000..910651f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/View.less @@ -0,0 +1,6 @@ +@import url("../common/transitions/slide.css"); +@import url("../common/transitions/flip.css"); +@import url("../common/transitions/fade.css"); + +@import "variables.less"; +@import "../common/View.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android-app-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android-app-compat.css new file mode 100644 index 00000000..4384b8c0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android-app-compat.css @@ -0,0 +1,1278 @@ + +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #dfdfdf 0%, #a6a6a6 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #dfdfdf 0%, #a6a6a6 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #9c9e9c 0%, #848284 100%); +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ie .mblRoundCorner { + background-color: #000000; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #000000; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #000000; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #000000; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonWhiteCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #3578b1; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #bdbebd 0%, #f7f3f7 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #9c9a9c 0%, #848284 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url("compat/switch-square-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} +.mblDomButtonWhitePlus { + background-image: url("../common/domButtons/compat/mblDomButtonWhitePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhitePlus div { + display: none; +} +.mblDomButtonWhiteMinus { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteMinus div { + display: none; +} +.mblDomButtonWhiteUpArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteUpArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteUpArrow div { + display: none; +} +.mblDomButtonWhiteDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteDownArrow div { + display: none; +} +.mblDomButtonWhiteSearch { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteSearch.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteSearch div { + display: none; +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonCheckboxOn { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOn.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOn div { + display: none; +} +.mblDomButtonCheckboxOff { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOff.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOff div { + display: none; +} +.mblDomButtonBlueCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleMinus > div { + display: none; +} +.mblDomButtonBlueCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCirclePlus > div { + display: none; +} +.mblDomButtonBlueCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleArrow > div { + display: none; +} +.mblDomButtonRedCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleMinus > div { + display: none; +} +.mblDomButtonRedCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCirclePlus > div { + display: none; +} +.mblDomButtonRedCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleArrow > div { + display: none; +} +.mblDomButtonGreenCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleMinus > div { + display: none; +} +.mblDomButtonGreenCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCirclePlus > div { + display: none; +} +.mblDomButtonGreenCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleArrow > div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblDomButtonGrayRoundRect > div { + -moz-border-radius: 4px; +} +.mblDomButtonSilverCircleDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleDownArrow > div { + display: none; +} +.mblDomButtonSilverCircleGreenButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenButton > div { + display: none; +} +.mblDomButtonSilverCircleGrayButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGrayButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGrayButton > div { + display: none; +} +.mblDomButtonSilverCircleOrangeButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleOrangeButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleOrangeButton > div { + display: none; +} +.mblDomButtonSilverCircleGreenPlus { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenPlus > div { + display: none; +} +.mblDomButtonSilverCircleRedCross { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleRedCross > div { + display: none; +} +.mblDomButtonBlueBall { + background-image: url("../common/domButtons/compat/mblDomButtonBlueBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueBall > div { + display: none; +} +.mblDomButtonGreenBall { + background-image: url("../common/domButtons/compat/mblDomButtonGreenBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenBall > div { + display: none; +} +.mblDomButtonOrangeBall { + background-image: url("../common/domButtons/compat/mblDomButtonOrangeBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonOrangeBall > div { + display: none; +} +.mblDomButtonRedBall { + background-image: url("../common/domButtons/compat/mblDomButtonRedBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedBall > div { + display: none; +} +.mblDomButtonYellowStar { + background-image: url("../common/domButtons/compat/mblDomButtonYellowStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonYellowStar > div { + display: none; +} +.mblDomButtonGrayStar { + background-image: url("../common/domButtons/compat/mblDomButtonGrayStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayStar > div { + display: none; +} +.mblDomButtonGrayCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonGrayCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonRedCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonGrayKnob { + background-image: url("../common/domButtons/compat/mblDomButtonGrayKnob.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayKnob > div { + display: none; +} +.mblDomButtonGrayPlus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayPlus div { + display: none; +} +.mblDomButtonGrayMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayMinus div { + display: none; +} +.mblAccordionTitle { + background-color: #f8f8f8; +} +.mblAccordionTitleSelected { + background-color: #00ba00; +} +.dj_gecko .mblAccordionTitle { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblAccordionTitleSelected { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.mblButton { + background-image: url("compat/button-bg.png"); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblBlueButton { + background-image: url("compat/blue-button-bg.png"); +} +.mblBlueButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.mblRedButton { + background-image: url("compat/red-button-bg.png"); +} +.mblRedButtonSelected { + background-image: url("compat/red-button-sel-bg.png"); +} +.dj_gecko .mblButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblBlueButton { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblBlueButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblRedButton { + background-image: -moz-linear-gradient(top, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); +} +.dj_gecko .mblRedButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblButton { + -moz-border-radius: 3px; +} +.mblCheckBox { + background-image: url("compat/button-bg.png"); +} +.mblCheckBoxSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblCheckBox { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 3px; +} +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: 0 0 50px #000000; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url("compat/icon-content-heading-bg.png"); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} +.mblIconMenu { + background-color: #404040; +} +.mblIconMenuItemSel { + background-color: #3578b1; +} +.dj_gecko .mblIconMenu { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 6px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 6px; +} +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #8c8a8c; + border-bottom: 1px solid #8c8a8c; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} +.mblRadioButton { + background-image: url("compat/button-bg.png"); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.dj_gecko .mblRadioButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 3px; +} +.mblSearchBox { + height: auto; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblSimpleDialogDecoration { + background-color: #404040; +} +.dj_gecko .mblSimpleDialogDecoration { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 6px; +} +.mblSlider { + background-image: url("compat/slider-h-bg.png"); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url("compat/slider-h-bar-bg.png"); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url("compat/slider-handle-bg.png"); +} +.mblSliderV { + background-color: #bdbebd; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #00a200; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -moz-linear-gradient(top, #bdbebd 0%, #f7f3f7 100%); + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblSliderHandle { + background-image: -moz-linear-gradient(top, #9c9a9c 0%, #848284 100%); +} +.dj_ff3 .mblSlider { + -moz-border-radius: 2px; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 2px; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 2px; +} +.mblSpinWheel { + background-image: url("../common/compat/spinwheel-bg.png"); +} +.mblSpinWheelBar { + background-image: url("../common/compat/spinwheel-bar.png"); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-image: none; + background-color: #000000; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url("compat/heading-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url("compat/tab-seg-button-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url("compat/tab-seg-sel-button-bg.png"); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url("compat/tab-slim-bar-bg.png"); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url("compat/tab-tall-bar-bg.png"); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 3px; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 3px; +} +.mblToggleButton { + background-image: url("compat/button-bg.png"); +} +.mblToggleButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblToggleButtonChecked { + background-image: url("compat/button-chk-bg.png"); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblToggleButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblToggleButtonChecked { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 3px; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url("compat/togglebutton-chk-mark-bg.png"); +} +.mblValuePickerSlotButton { + background-image: url("compat/valuepicker-button-bg.png"); +} +.mblValuePickerSlotButtonSelected { + background-color: #3578b1; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: -moz-linear-gradient(top, #f7f7f7 0%, #d6d3d6 50%, #bdbebd 90%, #d6d7d6 100%); +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: -moz-linear-gradient(top, #adaead 0%, #d6d7d6 10%, #f7f7f7 50%, #f7f3f7 90%, #e7e3e7 100%); +} +.alertDialogBody { + -moz-border-radius: 10px; +} +.alertTitle { + background-image: url(compat/heading-bg.png); +} +.mblImageThumbView .mblThumb { + -moz-transition: all 0.5s ease-in-out; + -o-transition: all 0.5s ease-in-out; +} +.mblImageThumbView .mblThumb:hover { + -moz-transform: scale(1.2); + -moz-transition: all 0.3s ease-in-out; + -o-transform: scale(1.2); + -o-transition: all 0.3s ease-in-out; +} +.mblImageThumbView .mblThumbInner .mblThumbMask .mblThumbSrc { + -moz-background-size: 100% 100%; + -moz-border-radius: 5px; + -o-background-size: 100% 100%; + -o-border-radius: 5px; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android-app.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android-app.css new file mode 100644 index 00000000..4d1afa68 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android-app.css @@ -0,0 +1,5747 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; + color: white; +} +.mblBackground { + background-color: black; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorDefault { + color: #000000; + background-color: #c6c6c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to right bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #3578b1; + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to right bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: white; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + text-shadow: none; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1.05) rotate(45deg); + transform: scale(0.7, 1.05) rotate(45deg); + border: 1px solid #3a4655; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: 1px solid #555555; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #000000; + color: white; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 22px; + border-bottom: 1px solid #393439; + background-color: #212021; + color: white; + line-height: 22px; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: white; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #000000; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: black; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #313431; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonWhiteCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: white; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 64px; + list-style-type: none; + line-height: 64px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #313431; + background-color: black; + font-size: 21px; + color: white; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 17.5px; + margin-bottom: -17.5px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 17.5px; + margin-bottom: -17.5px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 17.5px; + margin-bottom: -17.5px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: white; + margin-top: 20px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 18.5px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(157, 157, 157, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} +.mblDomButtonWhitePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhitePlus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhitePlus > div > div { + + position: absolute; + top: -6px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteMinus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteUpArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteUpArrow div { + position: absolute; + left: 0px; + clip: rect(0px 30px 20px 0px); +} +.mblDomButtonWhiteUpArrow > div > div { + top: 9px; + left: 4px; + width: 20px; + height: 20px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteDownArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteDownArrow div { + position: absolute; + left: 0px; + clip: rect(7px 50px 40px 0px); +} +.mblDomButtonWhiteDownArrow > div > div { + top: -10px; + left: 2px; + width: 25px; + height: 25px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteSearch { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteSearch > div { + position: absolute; + top: 5px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + border: 2px solid white; + border-radius: 6px; +} +.mblDomButtonWhiteSearch > div > div { + position: absolute; + top: 10px; + left: 7px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border: none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 0px; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonCheckboxOn { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOn > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOn > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: none; + border-bottom: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonCheckboxOff { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOff > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOff > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: none; + border-top: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonBlueCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlueCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonBlueCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonRedCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonGreenCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblDomButtonGrayRoundRect { + position: relative; + width: 29px; + height: 29px; + text-align: right; +} +.mblDomButtonGrayRoundRect > div { + position: absolute; + right: 0px; + display: inline; + padding: 0px 5px; + top: 7px; + color: white; + font-family: Helvetica; + font-size: 12px; + border-radius: 4px; + background-color: #949ba5; + text-align: center; +} +.mblDomButtonGrayRoundRect > div > div { + display: none; +} +.mblDomButtonSilverCircleDownArrow { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleDownArrow > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div { + position: relative; + top: 3px; + left: 3px; + width: 20px; + height: 20px; + border-radius: 10px; + background: -webkit-gradient(linear, left top, left bottom, from(#979797), to(#616161)); + background: linear-gradient(to bottom, #979797 0%, #616161 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div > div { + position: absolute; + left: 0px; + clip: rect(6px 50px 40px 0px); +} +.mblDomButtonSilverCircleDownArrow > div > div > div > div { + position: absolute; + top: -5px; + left: 1px; + width: 18px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #d1d1d1; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.7) rotate(45deg); + transform: scaleX(0.7) rotate(45deg); +} +.mblDomButtonSilverCircleGreenButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #1b991c; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#17df25), to(#1ba51c)); + background: radial-gradient(6px at center, #17df25 0%, #1ba51c 100%); +} +.mblDomButtonSilverCircleGrayButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGrayButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGrayButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #aeaeae; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#d4d4d4), to(#bababa)); + background: linear-gradient(to bottom, #d4d4d4 0%, #bababa 100%); +} +.mblDomButtonSilverCircleOrangeButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleOrangeButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleOrangeButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #ca701a; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#ff7a07), to(#e66b03)); + background: radial-gradient(6px at center, #ff7a07 0%, #e66b03 100%); +} +.mblDomButtonSilverCircleGreenPlus { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenPlus > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenPlus > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleGreenPlus > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleRedCross { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleRedCross > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleRedCross > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonSilverCircleRedCross > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; +} +.mblDomButtonBlueBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonBlueBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#84aff4), to(#2758b3)); + background: linear-gradient(to bottom, #84aff4 0%, #2758b3 100%); +} +.mblDomButtonGreenBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonGreenBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#59e738), to(#0aa908)); + background: linear-gradient(to bottom, #59e738 0%, #0aa908 100%); +} +.mblDomButtonOrangeBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonOrangeBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#f9e20a), to(#ff6b0a)); + background: linear-gradient(to bottom, #f9e20a 0%, #ff6b0a 100%); +} +.mblDomButtonRedBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonRedBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#ec9b9d), to(#d73c3f)); + background: linear-gradient(to bottom, #ec9b9d 0%, #d73c3f 100%); +} +.mblDomButtonTransparent19 { + position: relative; + width: 19px; + height: 19px; +} +.mblDomButtonTransparent29 { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonTransparent30 { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonYellowStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonYellowStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonYellowStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #cd853f; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonYellowStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonYellowStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonGrayStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #8c8e8c; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonGrayStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonGrayStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonGrayCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + border-radius: 2px; +} +.mblDomButtonRedCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonRedCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + border-radius: 2px; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblDomButtonGrayKnob { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayKnob > div { + + position: absolute; + top: 6px; + left: 2px; + width: 23px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDissolve.mblOut { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveOut; + animation-name: mblDissolveOut; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +.mblDissolve.mblIn { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveIn; + animation-name: mblDissolveIn; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +@-webkit-keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-webkit-keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +.mblCover { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCover.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCover.mblOut { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblCover.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblCover.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblCover.mblOut.mblTransition, +.mblCover.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblCover.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCube { + -webkit-animation-duration: 0.8s; + animation-duration: 0.8s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblCube.mblOut { + -webkit-animation-name: mblCubeOut; + animation-name: mblCubeOut; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +.mblCube.mblIn { + -webkit-animation-name: mblCubeIn; + animation-name: mblCubeIn; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +@-webkit-keyframes mblCubeOut { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOut { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeIn { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeIn { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse; + animation-name: mblCubeOutReverse; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +.mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse; + animation-name: mblCubeInReverse; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOutReverse { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeInReverse { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeInReverse { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.dj_ios .mblCube { + -webkit-transform-style: preserve-3d !important; +} +.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone; + animation-name: mblCubeOut_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone; + animation-name: mblCubeIn_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@keyframes mblCubeOut_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeIn_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeIn_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone_l; + animation-name: mblCubeOut_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone_l; + animation-name: mblCubeIn_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@keyframes mblCubeOut_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeIn_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeIn_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone; + animation-name: mblCubeOutReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone; + animation-name: mblCubeInReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@keyframes mblCubeOutReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeInReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone_l; + animation-name: mblCubeOutReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone_l; + animation-name: mblCubeInReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@keyframes mblCubeOutReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeInReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad; + animation-name: mblCubeOut_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad; + animation-name: mblCubeIn_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@keyframes mblCubeOut_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeIn_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeIn_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad_l; + animation-name: mblCubeOut_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad_l; + animation-name: mblCubeIn_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@keyframes mblCubeOut_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeIn_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeIn_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad; + animation-name: mblCubeOutReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad; + animation-name: mblCubeInReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@keyframes mblCubeOutReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeInReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad_l; + animation-name: mblCubeOutReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad_l; + animation-name: mblCubeInReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@keyframes mblCubeOutReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeInReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.mblReveal { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblReveal.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblReveal.mblOut { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblTransition { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblReveal.mblIn { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblReveal.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblReveal.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSlidev { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlidev.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlidev.mblOut.mblReverse.mblTransition, +.mblSlidev.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblSlidev.mblOut.mblTransition, +.mblSlidev.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblSlidev.mblOut, +.mblSlidev.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblSlidev.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSwirl.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlOut; + animation-name: mblSwirlOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlIn; + animation-name: mblSwirlIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblOut.mblReverse { + -webkit-animation-name: mblSwirlOutReverse; + animation-name: mblSwirlOutReverse; +} +@-webkit-keyframes mblSwirlOut { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(-360deg) scale(0); + } +} +@keyframes mblSwirlOut { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(-360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlOutReverse { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(360deg) scale(0); + } +} +@keyframes mblSwirlOutReverse { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblSwirlIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutOut; + animation-name: mblScaleOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblScaleOut.mblOut { + -webkit-animation-name: mblScaleOutOutAndroid; + animation-name: mblScaleOutOutAndroid; +} +.mblScaleOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutIn; + animation-name: mblScaleOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblScaleOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblScaleOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblScaleOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblScaleOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblScaleOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInOut; + animation-name: mblScaleInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblScaleIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInIn; + animation-name: mblScaleInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblScaleIn.mblIn { + -webkit-animation-name: mblScaleInInAndroid; + animation-name: mblScaleInInAndroid; +} +@-webkit-keyframes mblScaleInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblScaleInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblScaleInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblScaleInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblSwap { + -webkit-animation-duration: 0.6s; + animation-duration: 0.6s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblSwap.mblOut { + -webkit-animation-name: mblSwapOut; + animation-name: mblSwapOut; +} +.mblSwap.mblIn { + -webkit-animation-name: mblSwapIn; + animation-name: mblSwapIn; +} +.mblSwap.mblOut.mblReverse { + -webkit-animation-name: mblSwapOutReverse; + animation-name: mblSwapOutReverse; +} +.mblSwap.mblIn.mblReverse { + -webkit-animation-name: mblSwapInReverse; + animation-name: mblSwapInReverse; +} +@-webkit-keyframes mblSwapOut { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOut { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapIn { + 0% { + z-index: -100; + -webkit-transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapIn { + 0% { + z-index: -100; + transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblSwapOutReverse { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOutReverse { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapInReverse { + 0% { + z-index: -100; + -webkit-transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapInReverse { + 0% { + z-index: -100; + transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +.mblZoomOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutOut; + animation-name: mblZoomOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblZoomOut.mblOut { + -webkit-animation-name: mblZoomOutOutAndroid; + animation-name: mblZoomOutOutAndroid; +} +.mblZoomOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutIn; + animation-name: mblZoomOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblZoomOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblZoomOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblZoomOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblZoomOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblZoomOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblZoomIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInOut; + animation-name: mblZoomInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblZoomIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInIn; + animation-name: mblZoomInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblZoomIn.mblIn { + -webkit-animation-name: mblZoomInInAndroid; + animation-name: mblZoomInInAndroid; +} +@-webkit-keyframes mblZoomInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblZoomInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblZoomInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblZoomInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblAccordion { + border-style: outset; + border-width: 1px; + border-color: #8c8f91; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + border-top: 1px solid #8c8f91; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: black; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + border-bottom: 1px solid #8c8f91; + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); + color: white; +} +.mblAccordionTitleSelected .mblAccordionTitleAnchor { + color: white; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 3px; + color: black; + font-size: 13px; +} +.mblButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + color: white; +} +.mblBlueButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115), color-stop(0.5, #ff4d25), color-stop(0.5, #ed4d15)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); + color: white; +} +.mblRedButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; + border-radius: 3px; +} +.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: 0 0 50px #000000; + box-shadow: 0 0 50px #000000; + border-radius: 0; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-radius: 0; + background-color: white; + color: black; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: #ffffff; + color: inherit; +} +.mblComboBoxMenuItemSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; + color: black; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: white; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 6px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid rgba(96, 96, 96, 0.85); + border-bottom: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 6px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 6px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 13px; + color: white; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #333333; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 3px; + background-color: #8c8a8c; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #306ea1; + background-image: none; + color: white; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #306ea1; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #306ea1; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #848284; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #848284; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #9c9e9c; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #848284; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblOpenerUnderlay { + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} +.mblProgressBar { + position: relative; + border-radius: 6px; + height: 22px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#545454), to(#414141), color-stop(0.3, #313031), color-stop(0.85, #293031)); + background-image: linear-gradient(to bottom, #545454 0%, #313031 30%, #293031 85%, #414141 100%); +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#adf708), to(#5a8e00), color-stop(0.5, #7bbe08), color-stop(0.9, #63a600)); + background-image: linear-gradient(to bottom, #adf708 0%, #7bbe08 50%, #63a600 90%, #5a8e00 100%); + height: 22px; +} +.mblProgressBarComplete { + border-radius: 6px; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: 3px; +} +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: white; +} +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 3px; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: transparent; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid transparent; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 0; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #000000), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #000000), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration { + border-radius: 6px; + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; + color: white; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 14px 0 7px -5px; + padding: 0 14px 14px; + width: 244px; + border-bottom: 1px solid rgba(96, 96, 96, 0.85); + font-size: 21px; + text-align: left; +} +.mblSimpleDialogText { + margin: 14px 9px; + width: 244px; + font-size: 18px; + text-align: left; +} +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border-color: #b0b0b0; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + border-color: #9d9d9d; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + text-shadow: none; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #000000 100%); +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + color: white; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#484848), to(#242424)); + background-image: linear-gradient(to bottom, #484848 0%, #242424 100%); +} +.mblTabBarTabBar .mblTabBarButtonSelected .mblTabBarButtonLabel { + color: white; +} +.mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-style: solid; + border-color: #555555; + color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: #000000; + background-color: #c6c6c6; + + background-image: -webkit-gradient(linear, left top, left bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + color: #ffffff; + background-color: #3578b1; + + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #2d3642; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #000000 100%); +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); +} +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 3px; +} +.mblExpandingTextArea { + margin: 2px; +} +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 3px; + font-size: 13px; + color: black; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblToggleButtonChecked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); + color: white; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#d6d7d6), color-stop(0.5, #d6d3d6), color-stop(0.9, #bdbebd)); + background-image: linear-gradient(to bottom, #f7f7f7 0%, #d6d3d6 50%, #bdbebd 90%, #d6d7d6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#adaead), to(#e7e3e7), color-stop(0.1, #d6d7d6), color-stop(0.5, #f7f7f7), color-stop(0.9, #f7f3f7)); + background-image: linear-gradient(to bottom, #adaead 0%, #d6d7d6 10%, #f7f7f7 50%, #f7f3f7 90%, #e7e3e7 100%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} +.alertDialog { + width: 100%; + padding-left: 2px; + padding-right: 2px; + z-index: 1000; +} +.alertDialogBody { + border: 1px solid #adaaad; + border-radius: 10px; + + background-color: white; + margin-left: 2px; + margin-right: 4px; +} +.alertTitle { + height: 42px; + margin: 0px; + padding: 0px; + background-color: #889bb3; + background: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + font-family: Helvetica; + font-size: 20px; + color: white; + text-align: center; + line-height: 44px; + text-shadow: rgba(0,0,0,0.6) 0px -1px 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + text-align: center; +} +.alertText { + text-align: center; +} +.alertBtns { + padding: 5px; + text-align: center; +} +.alertBtns .mblButton { + width: 100%; + margin-top: 5px; +} +.alertDialog.mblOut { + position: absolute; +} +.alertDialog.mblIn { + position: absolute; +} +.mblSlidev.mblOut { + -webkit-animation-duration: .4s; + -webkit-animation-name: mblSlideOut; + -webkit-animation-timing-function: linear; + -webkit-transform: translateY(-100%); +} +.mblSlidev.mblIn { + -webkit-animation-duration: .4s; + -webkit-animation-name: mblSlideIn; + -webkit-animation-timing-function: linear; + -webkit-transform: translateY(0px); +} +.mblSlidev.mblOut.mblReverse { + -webkit-animation-name: mblSlideOutReverse; +} +.mblSlidev.mblIn.mblReverse { + -webkit-animation-name: mblSlideInReverse; +} +.dialogUnderlayWrapper { + position: absolute; + left: 0; + top: 0; + z-index: 998; + background: transparent !important; + visibility: visible; + height: 100%; + width: 100%; +} +.dialogUnderlay { + background-color: #eee; + opacity: 0.5; + width: 100%; + height: 100%; +} +.list .row { + padding: 10px; + border-bottom: 1px solid #444; + position: relative; + background-color: black; + z-index: 6; +} +.list .row.mblListItem { + padding: 0px; +} +.list .row.last { + border-bottom: none; +} +.list .row.hold { + background-color: #444; +} +.list .buttons { + position: absolute; + text-align: center; + padding-top: 10px; + width: 100%; + height: 100%; + z-index: 5; +} +.list .buttons .mblButton { +} +.list .buttons .deleteBtn { + background-color: red; +} +.list .buttons .cancelBtn { + margin-left: 10px; + background-color: blue; +} +.row.collapsed { + -webkit-animation-name: collapse-vert; + -webkit-animation-duration: 0.5s; + -webkit-animation-timing-function: linear; +} +@-webkit-keyframes collapse-vert { + from { + height: 100%; + padding: 10px; + } + to { + height: 0px; + padding: 0px; + } +} +.listSelector { + position: absolute; + border-radius: 10px; + -moz-border-radius: 10px; + border: 1px solid #666; + background-color: #ccc; + color: #333; + z-index: 1000; +} +.listSelectorRow { + padding: 10px; + border-bottom: 1px solid #666; + white-space: nowrap; +} +.listSelectorRow-selected { + background-color: #666; + color: #ccc; +} +.listSelectorRow.last { + border-bottom: none; +} +.mblImageView, .mblImageView canvas { + width: 100%; + height: 100%; +} +.mblPillar { + display: none; +} +input { + -webkit-text-size-adjust: 140%; +} +.mblImageThumbView { + position: relative; + -webkit-transition-property: height; + -webkit-transition-duration: 0.8s; + -webkit-transition-delay: 0; +} +.mblImageThumbView .mblThumb { + width: 100px; + min-height: 100px; + display: inline-block; + z-index: 2; + position: absolute; +} +.mblImageThumbView.animated .mblThumb { + -webkit-transition-property: -webkit-transform, opacity; + -webkit-transition-duration: 1.3s, 1s; + -webkit-transition-delay: 0, 0; +} +.mblImageThumbView .mblThumb.hidden { + z-index: 1; + opacity: 0; +} +.mblImageThumbView .mblThumbInner { + width: 102px; + height: 102px; + position: relative; +} +.mblImageThumbView .mblThumbOverlay { + width: 102px; + height: 102px; + background: url(images/thumb-overlay.png) center top no-repeat; + position: absolute; + z-index: 20; + overflow: hidden; +} +.mblImageThumbView .mblThumb.selected .mblThumbOverlay { + background-position: center bottom; +} +.mblImageThumbView .mblThumbInner .mblThumbMask { + width: 90px; + height: 90px; + overflow: hidden; + padding-left: 6px; + padding-top: 5px; + z-index: 10; +} +.mblImageThumbView .mblThumbInner .mblThumbMask img { + left: 0px; + top: 0px; + width: 90px; + height: 90px; +} +.mblImageThumbView .mblThumbInner .mblThumbMask .mblThumbSrc { + left: 6px; + top: 5px; + background-position: center center; + background-repeat: no-repeat; + overflow: hidden; + position: absolute; + -webkit-background-size: 100% 100%; + border-radius: 5px; + width: 90px; + height: 90px; + z-index: 5; +} +.mblImageThumbView .mblThumbMask div { + left: 0px; + top: 0px; + width: 90px; + height: 90px; + background-repeat: no-repeat; +} +.mblImageThumbView .mblThumb:hover, +.mblImageThumbView .mblThumb.selected { + -webkit-transform: scale(1.2); + transform: scale(1.2); +} +.mblImageThumbView.large .mblThumb { + width: 150px; + min-height: 150px; +} +.mblImageThumbView.large .mblThumbInner{ + width: 152px; + height: 152px; +} +.mblImageThumbView.large .mblThumbOverlay { + background: url(images/thumb-overlay-large.png) center top no-repeat; + width: 152px; + height: 152px; +} +.mblImageThumbView.large .mblThumbInner .mblThumbMask, +.mblImageThumbView.large .mblThumbInner .mblThumbMask img, +.mblImageThumbView.large .mblThumbInner .mblThumbMask .mblThumbSrc, +.mblImageThumbView.large .mblThumbMask div { + width: 133px; + height: 133px; +} +.mblImageThumbView.large .mblThumbInner .mblThumbMask .mblThumbSrc { + left: 9px; + top: 7px; +} +.mblImageThumbView.small .mblThumb { + width: 75px; + min-height: 75px; +} +.mblImageThumbView.small .mblThumbInner{ + width: 77px; + height: 77px; +} +.mblImageThumbView.small .mblThumbOverlay { + background: url(images/thumb-overlay-small.png) center top no-repeat; + width: 77px; + height: 77px; +} +.mblImageThumbView.small .mblThumbInner .mblThumbMask, +.mblImageThumbView.small .mblThumbInner .mblThumbMask img, +.mblImageThumbView.small .mblThumbInner .mblThumbMask .mblThumbSrc, +.mblImageThumbView.small .mblThumbMask div { + width: 70px; + height: 70px; +} +.mblImageThumbView.small .mblThumbInner .mblThumbMask .mblThumbSrc { + left: 4px; + top: 3px; +} +.mblImageThumbView .mblThumbLabel { + font-size: smaller; + overflow: hidden; + white-space: nowrap; + text-align: center; +} +.mblNativeBack .mblBackButtonHead, +.mblNativeBack .mblBackButtonBody, +.mblNativeBack .mblBackButtonNeck { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android-compat.css new file mode 100644 index 00000000..e4af0fc5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android-compat.css @@ -0,0 +1,1255 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #dfdfdf 0%, #a6a6a6 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #dfdfdf 0%, #a6a6a6 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #9c9e9c 0%, #848284 100%); +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ie .mblRoundCorner { + background-color: #000000; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #000000; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #000000; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #000000; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonWhiteCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #3578b1; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #bdbebd 0%, #f7f3f7 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #9c9a9c 0%, #848284 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url("compat/switch-square-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} +.mblDomButtonWhitePlus { + background-image: url("../common/domButtons/compat/mblDomButtonWhitePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhitePlus div { + display: none; +} +.mblDomButtonWhiteMinus { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteMinus div { + display: none; +} +.mblDomButtonWhiteUpArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteUpArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteUpArrow div { + display: none; +} +.mblDomButtonWhiteDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteDownArrow div { + display: none; +} +.mblDomButtonWhiteSearch { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteSearch.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteSearch div { + display: none; +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonCheckboxOn { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOn.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOn div { + display: none; +} +.mblDomButtonCheckboxOff { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOff.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOff div { + display: none; +} +.mblDomButtonBlueCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleMinus > div { + display: none; +} +.mblDomButtonBlueCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCirclePlus > div { + display: none; +} +.mblDomButtonBlueCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleArrow > div { + display: none; +} +.mblDomButtonRedCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleMinus > div { + display: none; +} +.mblDomButtonRedCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCirclePlus > div { + display: none; +} +.mblDomButtonRedCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleArrow > div { + display: none; +} +.mblDomButtonGreenCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleMinus > div { + display: none; +} +.mblDomButtonGreenCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCirclePlus > div { + display: none; +} +.mblDomButtonGreenCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleArrow > div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblDomButtonGrayRoundRect > div { + -moz-border-radius: 4px; +} +.mblDomButtonSilverCircleDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleDownArrow > div { + display: none; +} +.mblDomButtonSilverCircleGreenButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenButton > div { + display: none; +} +.mblDomButtonSilverCircleGrayButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGrayButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGrayButton > div { + display: none; +} +.mblDomButtonSilverCircleOrangeButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleOrangeButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleOrangeButton > div { + display: none; +} +.mblDomButtonSilverCircleGreenPlus { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenPlus > div { + display: none; +} +.mblDomButtonSilverCircleRedCross { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleRedCross > div { + display: none; +} +.mblDomButtonBlueBall { + background-image: url("../common/domButtons/compat/mblDomButtonBlueBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueBall > div { + display: none; +} +.mblDomButtonGreenBall { + background-image: url("../common/domButtons/compat/mblDomButtonGreenBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenBall > div { + display: none; +} +.mblDomButtonOrangeBall { + background-image: url("../common/domButtons/compat/mblDomButtonOrangeBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonOrangeBall > div { + display: none; +} +.mblDomButtonRedBall { + background-image: url("../common/domButtons/compat/mblDomButtonRedBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedBall > div { + display: none; +} +.mblDomButtonYellowStar { + background-image: url("../common/domButtons/compat/mblDomButtonYellowStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonYellowStar > div { + display: none; +} +.mblDomButtonGrayStar { + background-image: url("../common/domButtons/compat/mblDomButtonGrayStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayStar > div { + display: none; +} +.mblDomButtonGrayCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonGrayCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonRedCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonGrayKnob { + background-image: url("../common/domButtons/compat/mblDomButtonGrayKnob.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayKnob > div { + display: none; +} +.mblDomButtonGrayPlus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayPlus div { + display: none; +} +.mblDomButtonGrayMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayMinus div { + display: none; +} +.mblAccordionTitle { + background-color: #f8f8f8; +} +.mblAccordionTitleSelected { + background-color: #00ba00; +} +.dj_gecko .mblAccordionTitle { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblAccordionTitleSelected { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.mblButton { + background-image: url("compat/button-bg.png"); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblBlueButton { + background-image: url("compat/blue-button-bg.png"); +} +.mblBlueButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.mblRedButton { + background-image: url("compat/red-button-bg.png"); +} +.mblRedButtonSelected { + background-image: url("compat/red-button-sel-bg.png"); +} +.dj_gecko .mblButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblBlueButton { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblBlueButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblRedButton { + background-image: -moz-linear-gradient(top, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); +} +.dj_gecko .mblRedButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblButton { + -moz-border-radius: 3px; +} +.mblCheckBox { + background-image: url("compat/button-bg.png"); +} +.mblCheckBoxSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblCheckBox { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 3px; +} +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: 0 0 50px #000000; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url("compat/icon-content-heading-bg.png"); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} +.mblIconMenu { + background-color: #404040; +} +.mblIconMenuItemSel { + background-color: #3578b1; +} +.dj_gecko .mblIconMenu { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 6px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 6px; +} +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #8c8a8c; + border-bottom: 1px solid #8c8a8c; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} +.mblRadioButton { + background-image: url("compat/button-bg.png"); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.dj_gecko .mblRadioButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 3px; +} +.mblSearchBox { + height: auto; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblSimpleDialogDecoration { + background-color: #404040; +} +.dj_gecko .mblSimpleDialogDecoration { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 6px; +} +.mblSlider { + background-image: url("compat/slider-h-bg.png"); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url("compat/slider-h-bar-bg.png"); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url("compat/slider-handle-bg.png"); +} +.mblSliderV { + background-color: #bdbebd; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #00a200; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -moz-linear-gradient(top, #bdbebd 0%, #f7f3f7 100%); + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblSliderHandle { + background-image: -moz-linear-gradient(top, #9c9a9c 0%, #848284 100%); +} +.dj_ff3 .mblSlider { + -moz-border-radius: 2px; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 2px; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 2px; +} +.mblSpinWheel { + background-image: url("../common/compat/spinwheel-bg.png"); +} +.mblSpinWheelBar { + background-image: url("../common/compat/spinwheel-bar.png"); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-image: none; + background-color: #000000; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url("compat/heading-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url("compat/tab-seg-button-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url("compat/tab-seg-sel-button-bg.png"); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url("compat/tab-slim-bar-bg.png"); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url("compat/tab-tall-bar-bg.png"); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 3px; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 3px; +} +.mblToggleButton { + background-image: url("compat/button-bg.png"); +} +.mblToggleButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblToggleButtonChecked { + background-image: url("compat/button-chk-bg.png"); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblToggleButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblToggleButtonChecked { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 3px; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url("compat/togglebutton-chk-mark-bg.png"); +} +.mblValuePickerSlotButton { + background-image: url("compat/valuepicker-button-bg.png"); +} +.mblValuePickerSlotButtonSelected { + background-color: #3578b1; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: -moz-linear-gradient(top, #f7f7f7 0%, #d6d3d6 50%, #bdbebd 90%, #d6d7d6 100%); +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: -moz-linear-gradient(top, #adaead 0%, #d6d7d6 10%, #f7f7f7 50%, #f7f3f7 90%, #e7e3e7 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android.css new file mode 100644 index 00000000..f207ffda --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android.css @@ -0,0 +1,5448 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; + color: white; +} +.mblBackground { + background-color: black; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorDefault { + color: #000000; + background-color: #c6c6c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to right bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #3578b1; + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to right bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: white; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + text-shadow: none; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1.05) rotate(45deg); + transform: scale(0.7, 1.05) rotate(45deg); + border: 1px solid #3a4655; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: 1px solid #555555; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #000000; + color: white; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 22px; + border-bottom: 1px solid #393439; + background-color: #212021; + color: white; + line-height: 22px; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: white; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #000000; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: black; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #313431; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonWhiteCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: white; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 64px; + list-style-type: none; + line-height: 64px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #313431; + background-color: black; + font-size: 21px; + color: white; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 17.5px; + margin-bottom: -17.5px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 17.5px; + margin-bottom: -17.5px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 17.5px; + margin-bottom: -17.5px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: white; + margin-top: 20px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 18.5px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(157, 157, 157, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} +.mblDomButtonWhitePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhitePlus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhitePlus > div > div { + + position: absolute; + top: -6px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteMinus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteUpArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteUpArrow div { + position: absolute; + left: 0px; + clip: rect(0px 30px 20px 0px); +} +.mblDomButtonWhiteUpArrow > div > div { + top: 9px; + left: 4px; + width: 20px; + height: 20px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteDownArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteDownArrow div { + position: absolute; + left: 0px; + clip: rect(7px 50px 40px 0px); +} +.mblDomButtonWhiteDownArrow > div > div { + top: -10px; + left: 2px; + width: 25px; + height: 25px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteSearch { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteSearch > div { + position: absolute; + top: 5px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + border: 2px solid white; + border-radius: 6px; +} +.mblDomButtonWhiteSearch > div > div { + position: absolute; + top: 10px; + left: 7px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border: none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 0px; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonCheckboxOn { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOn > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOn > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: none; + border-bottom: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonCheckboxOff { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOff > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOff > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: none; + border-top: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonBlueCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlueCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonBlueCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonRedCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonGreenCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblDomButtonGrayRoundRect { + position: relative; + width: 29px; + height: 29px; + text-align: right; +} +.mblDomButtonGrayRoundRect > div { + position: absolute; + right: 0px; + display: inline; + padding: 0px 5px; + top: 7px; + color: white; + font-family: Helvetica; + font-size: 12px; + border-radius: 4px; + background-color: #949ba5; + text-align: center; +} +.mblDomButtonGrayRoundRect > div > div { + display: none; +} +.mblDomButtonSilverCircleDownArrow { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleDownArrow > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div { + position: relative; + top: 3px; + left: 3px; + width: 20px; + height: 20px; + border-radius: 10px; + background: -webkit-gradient(linear, left top, left bottom, from(#979797), to(#616161)); + background: linear-gradient(to bottom, #979797 0%, #616161 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div > div { + position: absolute; + left: 0px; + clip: rect(6px 50px 40px 0px); +} +.mblDomButtonSilverCircleDownArrow > div > div > div > div { + position: absolute; + top: -5px; + left: 1px; + width: 18px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #d1d1d1; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.7) rotate(45deg); + transform: scaleX(0.7) rotate(45deg); +} +.mblDomButtonSilverCircleGreenButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #1b991c; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#17df25), to(#1ba51c)); + background: radial-gradient(6px at center, #17df25 0%, #1ba51c 100%); +} +.mblDomButtonSilverCircleGrayButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGrayButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGrayButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #aeaeae; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#d4d4d4), to(#bababa)); + background: linear-gradient(to bottom, #d4d4d4 0%, #bababa 100%); +} +.mblDomButtonSilverCircleOrangeButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleOrangeButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleOrangeButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #ca701a; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#ff7a07), to(#e66b03)); + background: radial-gradient(6px at center, #ff7a07 0%, #e66b03 100%); +} +.mblDomButtonSilverCircleGreenPlus { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenPlus > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenPlus > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleGreenPlus > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleRedCross { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleRedCross > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleRedCross > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonSilverCircleRedCross > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; +} +.mblDomButtonBlueBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonBlueBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#84aff4), to(#2758b3)); + background: linear-gradient(to bottom, #84aff4 0%, #2758b3 100%); +} +.mblDomButtonGreenBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonGreenBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#59e738), to(#0aa908)); + background: linear-gradient(to bottom, #59e738 0%, #0aa908 100%); +} +.mblDomButtonOrangeBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonOrangeBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#f9e20a), to(#ff6b0a)); + background: linear-gradient(to bottom, #f9e20a 0%, #ff6b0a 100%); +} +.mblDomButtonRedBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonRedBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#ec9b9d), to(#d73c3f)); + background: linear-gradient(to bottom, #ec9b9d 0%, #d73c3f 100%); +} +.mblDomButtonTransparent19 { + position: relative; + width: 19px; + height: 19px; +} +.mblDomButtonTransparent29 { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonTransparent30 { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonYellowStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonYellowStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonYellowStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #cd853f; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonYellowStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonYellowStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonGrayStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #8c8e8c; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonGrayStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonGrayStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonGrayCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + border-radius: 2px; +} +.mblDomButtonRedCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonRedCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + border-radius: 2px; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblDomButtonGrayKnob { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayKnob > div { + + position: absolute; + top: 6px; + left: 2px; + width: 23px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDissolve.mblOut { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveOut; + animation-name: mblDissolveOut; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +.mblDissolve.mblIn { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveIn; + animation-name: mblDissolveIn; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +@-webkit-keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-webkit-keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +.mblCover { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCover.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCover.mblOut { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblCover.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblCover.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblCover.mblOut.mblTransition, +.mblCover.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblCover.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCube { + -webkit-animation-duration: 0.8s; + animation-duration: 0.8s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblCube.mblOut { + -webkit-animation-name: mblCubeOut; + animation-name: mblCubeOut; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +.mblCube.mblIn { + -webkit-animation-name: mblCubeIn; + animation-name: mblCubeIn; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +@-webkit-keyframes mblCubeOut { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOut { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeIn { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeIn { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse; + animation-name: mblCubeOutReverse; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +.mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse; + animation-name: mblCubeInReverse; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOutReverse { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeInReverse { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeInReverse { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.dj_ios .mblCube { + -webkit-transform-style: preserve-3d !important; +} +.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone; + animation-name: mblCubeOut_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone; + animation-name: mblCubeIn_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@keyframes mblCubeOut_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeIn_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeIn_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone_l; + animation-name: mblCubeOut_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone_l; + animation-name: mblCubeIn_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@keyframes mblCubeOut_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeIn_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeIn_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone; + animation-name: mblCubeOutReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone; + animation-name: mblCubeInReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@keyframes mblCubeOutReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeInReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone_l; + animation-name: mblCubeOutReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone_l; + animation-name: mblCubeInReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@keyframes mblCubeOutReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeInReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad; + animation-name: mblCubeOut_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad; + animation-name: mblCubeIn_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@keyframes mblCubeOut_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeIn_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeIn_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad_l; + animation-name: mblCubeOut_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad_l; + animation-name: mblCubeIn_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@keyframes mblCubeOut_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeIn_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeIn_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad; + animation-name: mblCubeOutReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad; + animation-name: mblCubeInReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@keyframes mblCubeOutReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeInReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad_l; + animation-name: mblCubeOutReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad_l; + animation-name: mblCubeInReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@keyframes mblCubeOutReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeInReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.mblReveal { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblReveal.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblReveal.mblOut { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblTransition { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblReveal.mblIn { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblReveal.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblReveal.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSlidev { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlidev.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlidev.mblOut.mblReverse.mblTransition, +.mblSlidev.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblSlidev.mblOut.mblTransition, +.mblSlidev.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblSlidev.mblOut, +.mblSlidev.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblSlidev.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSwirl.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlOut; + animation-name: mblSwirlOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlIn; + animation-name: mblSwirlIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblOut.mblReverse { + -webkit-animation-name: mblSwirlOutReverse; + animation-name: mblSwirlOutReverse; +} +@-webkit-keyframes mblSwirlOut { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(-360deg) scale(0); + } +} +@keyframes mblSwirlOut { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(-360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlOutReverse { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(360deg) scale(0); + } +} +@keyframes mblSwirlOutReverse { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblSwirlIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutOut; + animation-name: mblScaleOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblScaleOut.mblOut { + -webkit-animation-name: mblScaleOutOutAndroid; + animation-name: mblScaleOutOutAndroid; +} +.mblScaleOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutIn; + animation-name: mblScaleOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblScaleOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblScaleOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblScaleOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblScaleOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblScaleOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInOut; + animation-name: mblScaleInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblScaleIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInIn; + animation-name: mblScaleInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblScaleIn.mblIn { + -webkit-animation-name: mblScaleInInAndroid; + animation-name: mblScaleInInAndroid; +} +@-webkit-keyframes mblScaleInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblScaleInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblScaleInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblScaleInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblSwap { + -webkit-animation-duration: 0.6s; + animation-duration: 0.6s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblSwap.mblOut { + -webkit-animation-name: mblSwapOut; + animation-name: mblSwapOut; +} +.mblSwap.mblIn { + -webkit-animation-name: mblSwapIn; + animation-name: mblSwapIn; +} +.mblSwap.mblOut.mblReverse { + -webkit-animation-name: mblSwapOutReverse; + animation-name: mblSwapOutReverse; +} +.mblSwap.mblIn.mblReverse { + -webkit-animation-name: mblSwapInReverse; + animation-name: mblSwapInReverse; +} +@-webkit-keyframes mblSwapOut { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOut { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapIn { + 0% { + z-index: -100; + -webkit-transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapIn { + 0% { + z-index: -100; + transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblSwapOutReverse { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOutReverse { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapInReverse { + 0% { + z-index: -100; + -webkit-transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapInReverse { + 0% { + z-index: -100; + transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +.mblZoomOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutOut; + animation-name: mblZoomOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblZoomOut.mblOut { + -webkit-animation-name: mblZoomOutOutAndroid; + animation-name: mblZoomOutOutAndroid; +} +.mblZoomOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutIn; + animation-name: mblZoomOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblZoomOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblZoomOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblZoomOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblZoomOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblZoomOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblZoomIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInOut; + animation-name: mblZoomInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblZoomIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInIn; + animation-name: mblZoomInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblZoomIn.mblIn { + -webkit-animation-name: mblZoomInInAndroid; + animation-name: mblZoomInInAndroid; +} +@-webkit-keyframes mblZoomInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblZoomInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblZoomInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblZoomInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblAccordion { + border-style: outset; + border-width: 1px; + border-color: #8c8f91; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + border-top: 1px solid #8c8f91; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: black; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + border-bottom: 1px solid #8c8f91; + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); + color: white; +} +.mblAccordionTitleSelected .mblAccordionTitleAnchor { + color: white; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 3px; + color: black; + font-size: 13px; +} +.mblButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + color: white; +} +.mblBlueButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115), color-stop(0.5, #ff4d25), color-stop(0.5, #ed4d15)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); + color: white; +} +.mblRedButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; + border-radius: 3px; +} +.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: 0 0 50px #000000; + box-shadow: 0 0 50px #000000; + border-radius: 0; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-radius: 0; + background-color: white; + color: black; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: #ffffff; + color: inherit; +} +.mblComboBoxMenuItemSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; + color: black; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: white; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 6px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid rgba(96, 96, 96, 0.85); + border-bottom: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 6px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 6px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 13px; + color: white; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #333333; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 3px; + background-color: #8c8a8c; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #306ea1; + background-image: none; + color: white; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #306ea1; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #306ea1; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #848284; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #848284; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #9c9e9c; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #848284; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblOpenerUnderlay { + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} +.mblProgressBar { + position: relative; + border-radius: 6px; + height: 22px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#545454), to(#414141), color-stop(0.3, #313031), color-stop(0.85, #293031)); + background-image: linear-gradient(to bottom, #545454 0%, #313031 30%, #293031 85%, #414141 100%); +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#adf708), to(#5a8e00), color-stop(0.5, #7bbe08), color-stop(0.9, #63a600)); + background-image: linear-gradient(to bottom, #adf708 0%, #7bbe08 50%, #63a600 90%, #5a8e00 100%); + height: 22px; +} +.mblProgressBarComplete { + border-radius: 6px; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: 3px; +} +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: white; +} +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 3px; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: transparent; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid transparent; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 0; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #000000), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #000000), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration { + border-radius: 6px; + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; + color: white; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 14px 0 7px -5px; + padding: 0 14px 14px; + width: 244px; + border-bottom: 1px solid rgba(96, 96, 96, 0.85); + font-size: 21px; + text-align: left; +} +.mblSimpleDialogText { + margin: 14px 9px; + width: 244px; + font-size: 18px; + text-align: left; +} +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border-color: #b0b0b0; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + border-color: #9d9d9d; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + text-shadow: none; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #000000 100%); +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + color: white; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#484848), to(#242424)); + background-image: linear-gradient(to bottom, #484848 0%, #242424 100%); +} +.mblTabBarTabBar .mblTabBarButtonSelected .mblTabBarButtonLabel { + color: white; +} +.mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-style: solid; + border-color: #555555; + color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: #000000; + background-color: #c6c6c6; + + background-image: -webkit-gradient(linear, left top, left bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + color: #ffffff; + background-color: #3578b1; + + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #2d3642; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #000000 100%); +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); +} +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 3px; +} +.mblExpandingTextArea { + margin: 2px; +} +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 3px; + font-size: 13px; + color: black; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblToggleButtonChecked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); + color: white; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + color: white; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#d6d7d6), color-stop(0.5, #d6d3d6), color-stop(0.9, #bdbebd)); + background-image: linear-gradient(to bottom, #f7f7f7 0%, #d6d3d6 50%, #bdbebd 90%, #d6d7d6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#adaead), to(#e7e3e7), color-stop(0.1, #d6d7d6), color-stop(0.5, #f7f7f7), color-stop(0.9, #f7f3f7)); + background-image: linear-gradient(to bottom, #adaead 0%, #d6d7d6 10%, #f7f7f7 50%, #f7f3f7 90%, #e7e3e7 100%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android_rtl-compat.css new file mode 100644 index 00000000..d43cf584 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android_rtl-compat.css @@ -0,0 +1,80 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 6px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 6px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 6px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 6px; + -moz-border-bottom-right-radius: 0px; +} +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 5px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 5px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android_rtl.css new file mode 100644 index 00000000..93916b96 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/android_rtl.css @@ -0,0 +1,327 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -2px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonWhiteCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 50%; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: -50%; +} +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} +.mblComboBoxMenuItemRtl { + text-align: right; +} +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: -2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-right-radius: 6px; + border-top-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0px; + border-top-left-radius: 6px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-right-radius: 6px; + border-bottom-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 6px; +} +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 5px; + border-top-left-radius: 0px; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 5px; + border-top-right-radius: 0px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base-compat.css new file mode 100644 index 00000000..fa1c8d98 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base-compat.css @@ -0,0 +1,449 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #dfdfdf 0%, #a6a6a6 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #dfdfdf 0%, #a6a6a6 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #9c9e9c 0%, #848284 100%); +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ie .mblRoundCorner { + background-color: #000000; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #000000; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #000000; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #000000; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonWhiteCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #3578b1; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #bdbebd 0%, #f7f3f7 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #9c9a9c 0%, #848284 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url("compat/switch-square-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base.css new file mode 100644 index 00000000..f8020fb8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base.css @@ -0,0 +1,905 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; + color: white; +} +.mblBackground { + background-color: black; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorDefault { + color: #000000; + background-color: #c6c6c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to right bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #3578b1; + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to right bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: white; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + text-shadow: none; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1.05) rotate(45deg); + transform: scale(0.7, 1.05) rotate(45deg); + border: 1px solid #3a4655; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: 1px solid #555555; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #000000; + color: white; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 22px; + border-bottom: 1px solid #393439; + background-color: #212021; + color: white; + line-height: 22px; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: white; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #000000; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: black; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #313431; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonWhiteCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: white; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 64px; + list-style-type: none; + line-height: 64px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #313431; + background-color: black; + font-size: 21px; + color: white; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 17.5px; + margin-bottom: -17.5px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 17.5px; + margin-bottom: -17.5px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 17.5px; + margin-bottom: -17.5px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: white; + margin-top: 20px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 18.5px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#00a200), to(#00d300), color-stop(0.2, #00ba00), color-stop(0.2, #00ba00)); + background-image: linear-gradient(to bottom, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(157, 157, 157, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base_rtl-compat.css new file mode 100644 index 00000000..37224447 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base_rtl-compat.css @@ -0,0 +1,42 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base_rtl.css new file mode 100644 index 00000000..6f05dfdd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/base_rtl.css @@ -0,0 +1,182 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -2px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonWhiteCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 50%; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: -50%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/common-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/common-compat.css new file mode 100644 index 00000000..4f4c9273 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/common-compat.css @@ -0,0 +1,18 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #dfdfdf 0%, #a6a6a6 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #dfdfdf 0%, #a6a6a6 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/common.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/common.css new file mode 100644 index 00000000..1b30d1fa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/common.css @@ -0,0 +1,61 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; + color: white; +} +.mblBackground { + background-color: black; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorDefault { + color: #000000; + background-color: #c6c6c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#dfdfdf), to(#a6a6a6)); + background-image: linear-gradient(to right bottom, #dfdfdf 0%, #a6a6a6 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #3578b1; + background-image: -webkit-gradient(linear, left top, left bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#306ea1), to(#266093), color-stop(0.06, #4090d3), color-stop(0.5, #306ea1)); + background-image: linear-gradient(to right bottom, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/arrow-button-bg-sel.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/arrow-button-bg-sel.png new file mode 100644 index 0000000000000000000000000000000000000000..5b85b727191f818ce022963ae35ac867a44748b1 GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!2~3ezCWG-q(nX+O>#`7pEbC3~C2gnx`e?W-6sd;DNG h`p-V+FY`h+hL?$gfsgk~#{-RF@O1TaS?83{1OQ*9Jqi;2}E-=Gv^p4_82BkG0dD}nK?x>bEzQ^6#~&(!^*Xml|XW< zB?#?}Dr`vxqRJ`Rl~bxKTP)l5TDBdt>^o=KcdfXsr@C*-e+Gt@ww|889-#9_!DtB3 zC_ocAwR>!AXXPUU5@6Gd6y|hV7<^P|oU@m^w z+o31*LV}wAs7#i6`&n>lc`NZ>@sDtYeaw10ZFh0=Ku|Dxy85}S Ib4q9e0Qb`4AOHXW literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/arrow-button-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/arrow-button-head.png new file mode 100644 index 0000000000000000000000000000000000000000..ac78b9ea6d8cb644411e863fc59dc77cc4c61caa GIT binary patch literal 1068 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&q9v{oCC){ui6xo&c?uz!xv327 zx0u8jS*3%8s#Jgq*h@TpUD@w2@^W*t{(R|b0~F#c@Q5sCVBq=y!i-L9OlB}JFf#=B zgt!I;1_ebX2SsK_B?3`#RAzB(*}Fwsr5my?c)zJ9hlox%20)UB7nkKFHalU^D~61tRzsb$ zTQnnk6eFi-CiW;M0!bj6qnSC!FtNulaf)H)9Lvlpnwd)tfv6CO)*4o>wX6h^TP;Co zZ*pNva^;lj$`;GEy_RjqEc?z`_Fb#)oARH5p{K70=-yE<8UpkQf#ZkIT>{!Un zr_Th|r)}P@+RL_a{fu7Cq_*_kW=G%fuwv7BS9iZRGp!1#eIBv;(oeVWRWdK<&-4T4 zwx;mq-JuU_1-tH)tr7fmMXW}EEycgYYuXEyOdSvYkQSfYTg4PN8c%qm=kYkPO!Miv tx2|2bw`YnZzE%0ddV5{RPuYKYUzk^~wQ>))J$48bpq{RNF6*2UngCj=-Rl4V literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/arrow-button-right-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/arrow-button-right-head.png new file mode 100644 index 0000000000000000000000000000000000000000..cc92700bfd768d28c162840ba1258ce3b94475c7 GIT binary patch literal 1073 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&q9v{oCC){ui6xo&c?uz!xv327 zx0u8jS*3%8s#Jgq*h@TpUD@w2@^bU)&SLX&019yyctjR6FmQbUVMeDlCNmfqm>B|m zLR^CagMuQHgCet|5`m~VDzi8_vp74mI=isC7>Fu?sHGZ&daB!c{xke*<*` zX9^I_n==Q5mM&ceL~GZsTf24J*1h}o?md3&*zsfM&Y!z>{o1|zAUBVK(GVD%A@C#g z;76d#1WJPZg8!oeh6l>Al0dn3PZ!6Kid&%24c&W7d?*F{Ce=`J})2B&iTz|!N dU5NKaQkmvv4FO#pk0t)&0} literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/blue-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/blue-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3bd558b4503a413941bda4308355b18cdb617848 GIT binary patch literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@lxT@-M2T}zYGO%dex5=|W^O72 z`zPN@TdM2G>1n-XrRPM_J3}8B%wKr<6YJ%DRlm~TUVpE| n;Ksr#+y16IkJ0#pJ*WKbpZZf5%J=>N8pz=3>gTe~DWM4fgQq@D literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/blue-button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/blue-button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d371d899b709aa0c1aec94fba6fd6678604e41f7 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rt!7sn8Z@MHtc_~Qxp%NaY)8{a6KpSIzp#kqvLRWlB5%Cv8G z{j10Jc~&mZvZ=Er9A5Q!hZ#wT>7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-arrow-head-bg.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-arrow-head-bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..77b6e9e92d83309330cddb54aab0029007a7f1a2 GIT binary patch literal 316 zcmZ?wbhEHbRAG>1Xl7stPsllc{`{LaZ*JedJ!j2<%ay@^) z`om$g1oRjH5Xir zTiRXvB5YmS*JZMI!e56RNPo(wb|-9+Q%}d^rdXM4hJno!S%br7fBtylOuVyp-K(2w z85d`HSKIX7TJ@^0;^C=jf1=W!+>Fbf-_yIhA#WNxGl#t1AM?}g43o6|>t-f8FjxZs Dm5_!W literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..0d378fafe6e0810b460e00217f8d1313bb592a49 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&Kp|gG7sn8ZaNEPD*&Gx_94`L-Z!hkt((WRZd1vySgSi_mo^SYG zcRlLQ^EoxgCGy|Ty(YCa%uDmh98XQbWR;eNjt6^>Tefc%OXi8no)RP;R^hezy}_|p QK!X`PUHx3vIVCg!0Np1z5&!@I literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-chk-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-chk-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..4bfad0604fc6f28fe5a7a8ac905ee36624740be2 GIT binary patch literal 154 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&Kp{I%7sn8ZaNfg~d=3l(3IJGb!xPD++%E)qBgTbMJdR* ynA=-BTRPghn%!MJT|C^poZnwRUp{{S4@ONrkv#3!&({M@V(@hJb6Mw<&;$U)&L*h< literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d371d899b709aa0c1aec94fba6fd6678604e41f7 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rt!7sn8Z@MHtc_~Qxp%NaY)8{a6KpSIzp#kqvLRWlB5%Cv8G z{j10Jc~&mZvZ=Er9A5Q!hZ#wT>7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-unsel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/button-unsel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d371d899b709aa0c1aec94fba6fd6678604e41f7 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rt!7sn8Z@MHtc_~Qxp%NaY)8{a6KpSIzp#kqvLRWlB5%Cv8G z{j10Jc~&mZvZ=Er9A5Q!hZ#wT>7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/gray-arrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/gray-arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..c93d17f5e8826e4caaa59410f44992f587e9965c GIT binary patch literal 920 zcmeAS@N?(olHy`uVBq!ia0vp^oFFy_Gm!MTx5WfVv6p!Iy0YJ56626i(p>F!9;Bwg zBeIx*fm;ZK886+f`@_J%%n;xc;`*QAe?vn9P{}A54S^9D0^$4K$pF30SQ6wH%;50s zMjDVK=jq}YQgJIeAt50prGdfCO=9vy7qwLqa%_`i4XPRW)-hPVNm+Rm6k49HelF{r G5}E)#zA2Ib literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..8c3999b481570684cfd214c69b9ad3b8f0b33600 GIT binary patch literal 181 zcmeAS@N?(olHy`uVBq!ia0vp^j6kf#!2~4#$}H0cQlcfU5hcz=sfi_-`FRQURVm;4~`xQ`#v%n*=n1O-o0|+xZtudJa6g2j9 zaSW-rl{~{Zn@^aTnOWxlkI&49{xv@+HYhOooA85C{O~fqw*CMAojY>!RHu{j>B*gp YPX#27B`pZs3DnNu>FVdQ&MBb@080-zM*si- literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/icon-content-heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/icon-content-heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3daa1a81de8d9b80d652d39251724d4732b181f0 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{O!2~4hKV8-UQlcfU5hcz=sfi_-`FRQ3GDm;4Z)FMKwe@P7LeL$-D$|SkfJR9T^xl z_H+M9WCijSl0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=dY0 z)7O>#7Lyp8F|(vj+b5tEKU0n z{O-Vq?HAe}=5J#?ygx*^t^Q*h&wr&-$$#wGMti=BrdGUWK620D4eQZ)4!4}AJe+GS pu$ytCw!m(Njm84jj2jngFxaoukU#0P!VqX3gQu&X%Q~loCIH@wQK7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/slider-h-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/slider-h-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..970c7ff222533db100e1946ba372482f18e797e9 GIT binary patch literal 124 zcmeAS@N?(olHy`uVBq!ia0vp^j6lr6!2~3?S1^eIDVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfIAl&ht@uQ=H9oG@{#veKY@hJ=pv1i!$ U9d7gM0M#;hy85}Sb4q9e03$mdJ^%m! literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/slider-h-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/slider-h-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..0a08c5762e4e3a9350045171a8d3623c3a00b8e1 GIT binary patch literal 135 zcmeAS@N?(olHy`uVBq!ia0vp^j6lr6!2~3?S1^eIDVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfI`}yE{-7*;fx9l_y02-Ja~}d#EBCO=g*&KxOVj#!@WEA7@j_U h%JAmp8-_0*zF2G&$*8z8vlpn1!PC{xWt~$(69ANgD^dUe literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/slider-handle-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/slider-handle-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..1988f0402cfc0a8ef1e0ceeac8e4ef90ef809a62 GIT binary patch literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{J!2~2lO_g5*DVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfI<$QE{-7*;j9N4nHmHH7!LlemQ`%I@bPBaja`xVot7K@PTA9Z z&uXp7t6o7}O2*2J zngum=OY0iy8X6lKTbf$hTG~3=I=VW#db)c0diolsH1y8wozOR7(u7Ge+;f1ZzeD{A8h6j zmO7)bVIc>%f?dN5kBy6tcJaB^+&Hmu@$r6n2`(3gO)4jtdF?AAPHtLydb*r}i@=XW z<}7I6@f43Lxzk(8{JRP?%dU_M|^rq|CcG#NCG11+j%W#l^;TQwMNd|_q44g+e z87?pg9u*WnCN6kJQ0%Oj%rP0=qq^qD%xw^>tq19JDqlVpT-Mu89Bt z|1%6Sp!k!8k%7UVK?me6P@FJu{9~BU5u$Lo?O-#9uvW~84GRyqo26(7cwB5~FEZ^r&3NfDlrPk7rnZ3a`W=@^BtPGo~~qS zJiwteNh|i$mX(*62Q2m~t#W+OCK$0f>+Y$otFNz5I9zu0qlyF9#*E9WVrQGSH?Syr zoS5sqecj#N6`x<-trll%W>@>cCFir_LyWkn(iDR;I|?6*N$9+o;j?qo)6+AIv+tdW zG!{BJ*STBHcUO^+)Y9P9aci4Bd9Q6q&Mpf|Zhw1wNAc@>XLoOZe}C`XGYo!vc6@xi zb7q9Yxjj2S%X%uzdEmHr*VorKHfP^Ix3{`XK~kY{!3V#6dwzbt+MJSMAh-AT_jjE> z78@3||NZ^r^XvQP_wWDz|F`Hy24IL~JZR)ltGF-7U?bSvB;Y3TP>9L$!C`)hv=tBA zWXfJVY*%R8u~0yS!{h+B(y|qgx^(^}xG;*`HE`)RxwhkxfcXrS1|i=sFCOngrKY8+r>U*2t+BGPwzjsnxVN~rxVpKzzQ4Y~!NJAD#l^+N$H>RZ z%F4~m&C$-$($Uh?(bUz{)!5b8+S%IN+uYvV-r?WjFw$5@9gjK?(y{S z^#A|=A^8LW002J#EC2ui08IcJ000R70DlNnkRgP@g9sBUT*$DY!-pXFKnyIRN}Wozs@1Dlvud>p;zs}xEy9W&OSY`pvuM+*HJd`fffFv`%AHHM zuHCzM^Xj#`A^`&wdjks|OjvFU2M|`kSj@Pwfrjtjz=I1PPQ1ABe2W~kwY9Cqm8hahrjLjwk=5aNj_ zrl=x@G#~)L2|L6no7}O2*2J zngum=OY0iy8X6lKTbf$hTG~3=I=VW#db)c0diolsH1y8wozOR7(u7Ge+;f1ZzeD{A8h6j z){2>7(0rg>NvC0k$HqlRyCsa98Z;g?AMaOi?vnAmwAi_k!)sNH=cfaQ`Q?&M&GFp4 z?CfkqLl*%K;pOM&n{##qJVERF2ikU4e10anp>g5;{SEw|czt$kILIKar4e^# z$HvFUCrB&z`Rpu8Wsug$xOZmf=I7@ZSo%v8EOdHtd4;q6go4IHE!Q_BpPuKt+w2Xy zgha@Ov%9yyWl|Cgnc%Qz$H&JfCTr{4IViL}y|7rHU!kD6h2zHN?EB~T?*7ifr)I{H z7I6@f43Lxzk(8{JRP?%dU_M|^rq|CcG#NCG11+j%W#l^;TQwMNd|_q44g+e z87?pg9u*WnCN6kJQ0%Oj%rP0=qq^qD%xw^>tq19JDqlVpT-Mu89Bt z|1%6Sp!k!8k%7UVK?me6P@FJu{9~BU5u$Lo?O-#9uvW~84GRyq3y7WyP}s1Dkyq9z z>&}Udi;wp!ICshX3~X-f@>i*dIJs%*>FEZ^r{;KWe&)j`%GvPaz~<%W=Q}iW$$D*B z5x7W8fTKrY(aOuq0~UMD_1e1X>gsTPjynd6R$pJAaJWm>d)u0uo6`$zI43Zzy}iBQ z@xHT)3XU8?6`x<-J-vPX{rwHh++sY<2bqPNg|*|(L~QKl67({e=d*Lu12GAm7dOuA z-2D9f0_Scy-(6cWWj##h$DQ4^HT#lh#-4e;yT4_qndZE{XM5YTSN1?Nx4hq;9UmW` zn5-SY@9;^UXBQTG&tEsEll9e&&DrkrSPpT@JvcnGTi$=)o}ZszTwWc{ufohC^7`@V z`Tp^B6L@$ZT)%&Qe|?pbu*?Q0eipHe2aOzRD;_lQn7vrg>0hpiG(6)X(? zM|jK#0lm!C`)lWh)+a>1=!PsN3L}hH{TnfWid^{WB{b_t|{2SS-jIQgT?p pPAv1uL_NMjW-lgngrKY8+r>U*2t+BGPwzjsnxVN~rxVpKzzQ4Y~!NJAD#l^+N$H>RZ z%F4~m&C$-$($Uh?(bUz{)!5b8+S%IN+uYvV-r?WjFw$5@9gjK?(y{S z^#A|=A^8LW002J#EC2ui0A2ta000R70DlNnkRgP@g9sBUT*$DY!-o(RW>6roqJa@8 zGHTq&v7^V2AVZ2A`Ei7Sia#!-Sjn=b%a<@?%A85F=FAQi3!JdYv!~CWJP!zru%f8Z zqezn~UCOkn)2B}>2*kjms@1DlvufSSwX4^!UqSo`AfkoYvuM+*UCXwu+qZDxrVw!8 zgp0d)^XlEpx3Ay7fCC3!k$?dT!H5$pUYxjv0|+Z%NS;i&vgON|Gi%<=nX?NC6grC@ zO}cbx3>9RkUd_6->({Vj%brcUwhRm%X6W9{ySMM(z=I1PPQ3UG5*=tLU(UR_^XJf` zOP@}?I*k<`YG~iiy}S4C;KTNdA5Xq~jTIVfs9(>%z5Dm@+*pMVA`=%9oaYAB&L5Kz$uI~?lhqmV{g=nfm86u<{1WUA?=oObHzr=W%^>ZqT7 K5P(1d0RTJ8MQ*eJ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round1-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round1-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..1bc8a14a5f13420a610e8120baac85612fbbdf81 GIT binary patch literal 511 zcmZ?wbhEHblxC1-Xk}o?%*f2i&dJTmEyyn@Dl94~E~zN1sH&){uC1=AuBof3%bk*2 z+)!N7P*T%WQ$D@CYD!i0%<8JSRhf%2vzBF5FQ{&)Z)j?4YH4a|Yia9f>*(s}>gnp~ z>*?#8($_nqcS7HUNfRbboIY{Nq$$&;Oq(%n#;h5$=FFNiZ_d1h^A|2&w0OzlB|xxd z)tdkR|1*#d6o0ZXGBD^d=zz3>{KUZVk0F*r#^OU`yMTgFpF(5Pg2U~4c5^He4;^vo z67yfv@WR09XupEGvl_oA( zuaXxXOw9Hov8SfEw9V4<>Y3rSb=B3?!JIp0I54daU(Xd*BO$nG&CSgjm#5WgIjz0D zU0P>?hsXAHcXyYuo;iAYdp?7ZEEBh!&yEid7?gOl0Vv=UrMG&MsSv(>~vY#S+WdE7#LPEFsx%>*u=oFlYwC`1KVyk&h4E1 z8~FLR@pJCx6kI7NwMa^8rIg@SLBaikl3OKZ_R1)=DQPro=uObmo33X&$<}VRo!wkJ zg=Gp#yOb(TTXp%54a!gP>!p^Ve)FtD& zY01gS8va#31P(DV^-8dYNE9wwc6PQ!@vA#0H>aNy6lFN@B#7Y%r-;X7t=LmrR$g8n zFn1n9phGgFkmjbWyQj9UzP>);aF_4LWJe!CtxKz7Pj6d$dwap-Q=!r>3>Q>iY(cE;k+zP-P{e|UU)zW@HZ8cpUM4>p|N zzyJULw~2}qm`oTl9yBsIF&=b~kZC;9Ea0Z`utg*+<6*0W(+n4W7RCUlHib5gMIFvJ zTqiJ^^{jZ*rR-PO;Kn1c@Q9GfwT#ET7SC2Z?z4Hdf<=&r$F+e!@Jq&%i5}l1TKU!Z zj+UslM=qko-C3%@eCS>8!87b2;pUuozw({A`&;kR;$&#!r4AuZp C;S}`% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round1-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round1-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..f62342acf36b03962824e06603533dcb69d2e68c GIT binary patch literal 936 zcmZ?wbhEHb^ktA{Xk%dD;^N}r=HcVx6BHB_6BCn`mX?#1Q&v`1S6A26)YR3{H8nN0 zvb3_ZvvYKCbaQj__45r13W|=3j*E>;OG_&#EGQ{1DK9IpuC8uqXlQF|>um4r?(CjC zY4VgwQ>IRvI&0RfxpU_(TD)lK(xoewuUNZ!?b>x~H>}^VY4fHno3?D(x@G&0?R$6c z-M4?=f&B*#9y)mR=+WaRj-Nb!5(v(oItv6BFI>EO`RdgxS8rUqaqGsdJGbxLzkC1T z{fCbqK7RV>>GLPgUp{;J_T}66Z{B}=_wmbzFaQ7lXBav_@h1x-1A`lb4#>%%IAP%U z$I#0mV^MH`nM>9~Bj&`0g@@Y(l&$VKJZxlWk}#HXoZ#5PDXQz#CF8ki$;rtY{;LcW zm6(}&C0Jt&J}z2zcD6RG2WEI}U3GPJ z#OAEKr$pPjm<{cZNO*5sb8~aX-Q5+RU)?>ueSNF|v+#-) zjypCyJlr9y9d~BO$3zKkmaGDwotvJXZgrQCEI8Em{QLsvZaLpwTV7sXoXV5&fNAUN z>l>2m*D*RC;*r@={QBP6-P_;aKhXSrTcV?L-{TXLwd2q2+4=eTg}Lnv3m5PD`ufJ^ z?EB~T?k<04VDj&cg#W%hKR>^?ygL4TTx|!ZS;dL@{`>d+{r%(f>-+Wb$648pzbHIt zU=hoB(8!^-;z1MpGl7E)IzJR1wuppfJZzOnTk)_>{GLIBpxhsYM;$8DG9GnmEL-uY zOMRKb1SS&}#m7A+*D@aWT0C3vxX<+6fddXQe-1pJ;35{OBA_B5;=t)-^76^#05{F2 zQ$oTrmrgc1U^;=(gy-SY=?QI`&t{}d%X~J|`9(s58^;9&7QupJn$PEyT+4hux8jy2 z3$Ok`7Y9xU5yck^TEwzmEbLHQwPK;elm$-%cs5*c7I4DJ10*>a h99iYpB)nR=V%e%!tJZ8=^@^Qc)Zv4M8zUowH2^W3coYBt literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round2-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round2-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..7885243d63fc35fcb2840bbdad85612a06edd445 GIT binary patch literal 566 zcmZ?wbhEHb)Mk)oXk}o?%*f2i&dJTmEyyn@Dl94~E~zN5sH&){uC1=AuBof3%bk*2 z+)!N7P*T%WQ$D@CYD!i0%<8JSRhf%2vzBF5FQ{&)Z)j?4YH4a|Yia9f>*(s}>gnp~ z>*?#8($_nqcS7HUNfRbboIY{Nq$$&;Oq(%n#;h5$=FFNiZ_d1h^A|2&w0OzlB|xxd z)tdkR|1*#d6o0ZXGBD^d=zz3>{KUZVk0F*r#^OU`yMTg_R?LZlha5s09A0x?JUZMd ztmYGQ=fuY3<2~Zx0aGLt7oVK05xmOgW>U)0sRqf*QXD@vcM4e)zq)gB^Ye3jk}6(1 zUT$7-aUQ3KfQjRxm6w+XEcTjfwdlYB{@~47cV{WC=oV5w)Ftb^ZOzTiNt`=oI54ff zy*)#8%?|^mmb<$vKEJwq`g>luU@bE@-=2d^ooyY$+HpKi2NI7>P}b*hSk(OV^bF(d zduJ?*83gA#ck|7Cc&MFECTMls* z4)Du#Xvgc>G`2M=nt06j+q>)Q>l?-_3K0vLzrBC3F+|uy@ndt_x)+yM$DgmWZR8b^ z=Gk#!-@d==#Mx}*cQQ0E@-VPzJZNAM%3xs7+F>HV%pg$Ez{KjNv4DwPfPtZg%ZsIv XnM2^g!*+!>jzvu3GadvvFjxZs$9&|# literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round2-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round2-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..04177379283d27dc5ac95d3148e248648db660e3 GIT binary patch literal 883 zcmZ?wbhEHbjAM{yXk%bt=458(VP@rJWffrM6yfBMv=UrMG&MsSv(>~vY#S+WdE7#LPEFsx%>*u=oFlYwC`1KVyk&h4E1 z8~FLR@pJCx6kI7NwMa^8rIg@SLBaikl3OKZ_R1)=DQPro=uObmo33X&$<}VRo!wkJ zg=Gp#yOb04 zrX?pQYXq-~Ik{;`JHMii!h;oo4y}UfMX&Ch+`Rn!e1~Q(S*t}%46|am8Y~(Yt-QQE zV6oR+udS=DuJ-kB&^WM>p;IK`aF?w2wlz05XIx&T`a9XtS5WKGskz?U*WKM+@%h!= zYV!_;Ch;F!ay~mg#EIFksda2zwDIxr3CiB{e0FYndU|T3jX($E=I7@ZIM?qx$>o z*Q-6vrhH>__Wg5vcYlBX;PAz6`TQeZED}#HuZ}-2XET|PFK)|x|NZ;Q)kWCOSRC5F z9~e7q8V?#+#4;8%2JswVw>_;R*5tZ1rY(BmV<&GEgFwHRHkJ- z>eN`a;!&5n+C^qZhA9Ug^_X1CSls3O$8`du*_{`U`yHlP9A%U-bZ8OsR$2LEl8@QT zCzAu*G@nlK)N*8D_7HsFED}=o^6B&hEy-4XE2X2XERg{pU4#?2y;Pg(YvbrDCOa$g jGK);e!lUzQzP)@tzkyBb#e$Z1k*w^(Q+5VAFjxZsR#zX| literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round2-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-round2-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..2cf12605fe9019ff998e8e3d499b59f87bb71478 GIT binary patch literal 974 zcmZ?wbhEHbjAM{yXk%dD;^N}r=HcVx6BHB_6BCn`mX?#1Q&v`1S6A26)YR3{H8nN0 zvb3_ZvvYKCbaQj__45r13W|=3j*E>;OG_&#EGQ{1DK9IpuC8uqXlQF|>um4r?(CjC zY4VgwQ>IRvI&0RfxpU_(TD)lK(xoewuUNZ!?b>x~H>}^VY4fHno3?D(x@G&0?R$6c z-M4?=f&B*#9y)mR=+WaRj-Nb!5(v(oItv6BFI>EO`RdgxS8rUqaqGsdJGbxLzkC1T z{fCbqK7RV>>GLPgUp{;J_T}66Z{B}=_wmbzFaQ7lXBav_@h1x-1A`lb4#>%%IAP%U z$I#0mV^MH`nM>9~Bj&`0g@@Y(l)dJxC}3`7XX41ZlfmN1Ca4y&MZ$B_l9Q7)f>*_y z+_Z#CSjkA?!HU2Gtit+5ukM`Oy!`xphh{F>tVc`?v)s5!G7Pt@yu3W1dE1MChU7*; zgH2g?Pi0F7?FEld&Gi=7>*`@PJTT+n_VxGoH!yR{ z`Rv&6@Sp;lT0r39jgOB{Q1+hZvvbqa(^C_51XeI^etv#|bG=+*$^lO46~U|H&hFa! z`uc|C)6;a59hk*87r(xDHoBabLn!Tmgx{VWA0MBXtQ~)DPi3*Rn8}kFetUO)eSKqd z_Wg5vcYl{rbolo|!hheMpPye`ULAja-`;9j1Cuv1{P*ws`}@b|*Z0rw-~V4$(Ik?^QfW7&#F zT{_!dJnA+$RB@QWt>VMsUW;cd9{1UNd-1s6flV@ni%HYLS-?YW<&#N1W-p&i4sg>{ zonmcZAi!?#v-0V*m@-LK0Tlre2TrFcna^fsEL-_(R?fDU&t_+zYPjyecERAt+=^!_ zpU=^*m( zTCY|tnU?ixr~QwFep6&^KYygh^8-O_?@j+Vq*zXH1(hYsRcOv*!H&|DORHQ2fcl$iN`M zpaYTw*~!51kHOHT!C}LKgUuYmS}g*M%&gqvN?vn3HZD5aEv}`oBVpm<O;XiB5flW(KPd7+Dm9w*G+1c4f+z~SlY+inTzC$zD+m*#DE-rTFjF@m>%gW2k z0~UMbdM!9~Wp%{zu-*e(S6^SBaJcKOSHhtin=_72i#@UJ?V+uCkB`Y3JZ!wXyW;b! zyQjbF-QCx~{9V-GVB^EX9m3jiXMSv8;OtfQ&ik{Y@#*Oq#@YAI{M^*QG1s~K-Jh9_ zFE6hMULAM#SINt382@ItH$VTnw8S7}Aks(a>ww z(`(by>(bNf)zh1(r#DTH;UELUF$RW{3=C%(I8JdeTwoA9FX-Oo?$PbxG1ntvRYb(P zh=`355!)gnc1A?(jfgl9@&EsS2HF6{pDc_F3`z_-Amc%PV&M44;L6hAuwlW$W)5Mk zm=hZoI=3^rFbEhdSah^o!Z_>BiH(bo_sjDpL^v#1a&odp@T!=To0guQZopZP5U^m` z+1VDwukM`Oy!`xp2ktXA4qH}ST;0>{r?>0h-BZWREhiJ6({i{&SUc{_ zj*X9xPf+&m`*85!lhZSdv-@HyH$OkWK)$|0VAqz+^NUqi#GT!>_4V})$*1S}?%vjN zWn1yTcZ_m%qFD|c+KfiD9@9!eV4$t@Bzwht2Pw!vfKObMq!6C+?@t}c4EaO2VhuVq< zO*~N_;+qBBG#<8aw=HmB6-it1u#G)#K_iD`j>4l3m1!A|IyIK9c+{n{X+|RlBO`+~ E00*Mt)Bpeg literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-square-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/switch-square-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..0c67709cd98d140ddebda9d6bc80de8c17ad6a7b GIT binary patch literal 686 zcmZ?wbhEHbjAM{yXk}n1DlY2k=<4h5n>caelu1*jPMtbq`ixmKXU&~EcftGxixw_g zx_IfbCCgSUTd`)$PAF57&!hhgtKHgY*=uxnL}7B=ER1D&h3n03>69s7ai@E zFwVMjV&mfD{qo8p0tO40oSdu?yej78rlqH+8>qWT2y9+9j;>w6Py>0F7 z?FEld&Gp{CE|xd*{j0mDx98v8BE!Tj=d)wO!^0iI+Hq%Q9A;teRra3eQ~9xlS=K1~ z-kF`7pPygg+%4z3>u@Unis038XLoIVeSJgn>3MG(4>j`dD1LqK?C$OF?;mL9mjAbq ziAmtZWbOEKdv<<)eqpiqe7-{!9j|X}&c1(c@9yvK9~?f@&0oma*zx(r<<;@$_wD`t z{lnwa;*E+2JAVK8{QCa+{riCd&ZhBzLqfyhP$P%hiU&2QMbV{jmJGE*D@aWT0E<0V&hrx;BmhL zo92@VE@GKaCVHrK9%AEJ^5Dtj05{F2Q$oTrpH7WPn|X+hcg2IJ(-Yb>pUp^_micUE x#?|`DJeyr`Omq264T}v(qKA%_f?d9|N4QyI37Bq`(aB^U<1^|$$Q~&?~ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..548ef738d7f98d2439e31febb5015881d3e17ed9 GIT binary patch literal 277 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bU0U})u`hX;ZXo+h?iE~kEVo7Fxo?NMQt`H&hB8B1!Kq1ZokH}&M25un`X1sK_?hjCKvZsq{csW`)BpDi0rbra>d&xmzFeEwzFK8GmO)i zF8X86X6F97)#bB!_CK@H^f%qCKX*>0q}emE9M-2BC`?)& Q40IlYr>mdKI;Vst0B_@FYXATM literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-orange-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-orange-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..56f555bbe2585be929b0330faf82e029dbaf519c GIT binary patch literal 197 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bU0U})u`hX;ZXo+h?iE~kEVo7Fxo?NMQu3#ZiPSbDK-GM@!1s;*b3=G^tAk28_ZrvZCptGloV@SoV zV!Z literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-seg-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-seg-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..7871ed1f4cd895931d2d412164a2eb93f55ef487 GIT binary patch literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!2~3ezCWG-q(nSx_+5YN znW(g5%ePL8Je~e#TX%^d2wZgCzw@z;+@#1wOFoC3yySCId}ojj_fj3NrCQpmA&x7Z z*P5($%e=n!Qm)m~``=Do;PtxWntG@Il!*G%1exB+g=TukuI`X5f1GI3JN=`X-LdOG aZpyPtx)wg#$h#Zp2nJ7AKbLh*2~7arfkvAE literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-sel-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-sel-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..c4540887f383575e8a29021189920b01cc70fe7e GIT binary patch literal 286 zcmeAS@N?(olHy`uVBq!ia0vp^%s_0Z4A6R$U)->^EbqO&e)CyQw1o2}kAFumdH38f cIQx-BX5P_?<+pEX0^P~r>FVdQ&MBb@0H}p-mjD0& literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-slim-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-slim-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..f982afb761ae3b230544c11e5b042862523e7cf6 GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^Oh7Eh0U|pOL`()!MxHK?Ar*7>9%STV5M*FD__xJF z%`NF~<3G*LEl>%>?RZ@O1TaS?83{ F1OV6dAQb=r literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-tall-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/tab-tall-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..50a237196fd797e2c2ee32fc032f38555c20780c GIT binary patch literal 161 zcmeAS@N?(olHy`uVBq!ia0vp^OhD|w0V4Oi7>WR?3{Mxwkcv5`M_u`t7#Ua&9-Djg zZtVa6wv*I?r$5rRd$jh8kpIVkUEQ-Ug~l9-e5ums#lA88R_EFq8f%YwWon8gtuql0 zUfL<4-FqZ}XA0NF@K>GdUTAD}^IJGb!xPD++%E)qBgTbMJdR* ynA=-BTRPghn%!MJT|C^poZnwRUp{{S4@ONrkv#3!&({M@V(@hJb6Mw<&;$U)&L*h< literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/togglebutton-chk-mark-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/togglebutton-chk-mark-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..2262424c3d3f2697db4434de34b06db63eae08fe GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CF!3HE7boT!OQk(@Ik;On70_G;E839=yo-U3d z6?3KrIPx(la5Vk8` qe{1rSOUteOu222(^7Q6UD>$Y5O85k?&7OV~WV)xTpUXO@geCyFl`csD literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/valuepicker-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/compat/valuepicker-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..965db4bc4f83b730611ddf532a51bb8c1185705c GIT binary patch literal 246 zcmeAS@N?(olHy`uVBq!ia0vp^!a%Ib!3HE36knzV5rDrop7CM);{ zD@15Aq%b#u)U%g(`ns~;VdLlJ;61SW+Y_KrsHcl#NX4ADQx0-67;rH2irlS_oWIPN zqmttlgZrM26F##t;zCzOe2dtW@F=A?@d;OYxm4{9v2>gC+!>u#$0gQ8^BYH)zD?hdapQ18-1g>!YpS@L zGoQM#P2RMX=a}khiJq=$h7!;8(+o~TpI9(|cY~vTx?OYJHygIQYj*PNnprGSVw7f_ zvHUz!^4cvkd1kFNmM{rkW}KnopB&&n>(qjI7OjrDiAD@!JeueI->Uxsx{1Nl)z4*} HQ$iB}-q=fn literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/compat/calendar-datelabel-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/compat/calendar-datelabel-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..bd89c1d921530bdcef4fae63ff6aa1052cc8f8e3 GIT binary patch literal 144 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfw!2~2@+FN~r6id3JuOkD)#(wTUiL5}ryQhm| zh(tK=VN1Ry1_6cxfB#!+c<5+oc!W4iaQ1VxJK|#`=;^ZL-kCGHdwze&%uIcI`q;JY rbN4ncmRC;~4>vF0|Ig-6^)c2PwGvjn+NS0}BN;qh{an^LB{Ts5hc+$R literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/compat/calendar-month-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/compat/calendar-month-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..cfc5a647321e3d033300e8480a8008f083473234 GIT binary patch literal 186 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{I!2~4r?VV-=DVB6cUq=Rpjs4tz5?O)#LQfaR z5Q%WsgS_lah71i4%Xc z!!J*j-M^UEXR=!MbK2RIZA;|zC3=>H{GAnNs`A{&t5ZTbHB!jwK(&9Mh{f{_*OGc1 hvwMTMG*z8C>}NEIHfsq4=>sii@O1TaS?83{1OPVyLJR-^ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/compat/calendar-year-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/dijit/compat/calendar-year-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3e279013e768de27e82d3ec323c54203ee22a1e2 GIT binary patch literal 177 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{O!2~4hKV8-UQY`6?zK#qG8~eHcB(ehe8J;eV zArj%DM+4bg3>Xf4{C`@aS|XW0`AuR^?ZU@>i!{0x&Dk+W<+XrrL|IOw5nX^-hbde_uGAbAKv%(Jn!?ozYp(BwYR-}icf+M005k_FgF1o zSu6l>O!+tNBk!V|rRkA5i7>P=1OV7$BX&@YBQ73p3JrG*^$(BqLBauscS3#P7c4@2 z5O6Tu=T3B34_pTT5IkXFV(1h#vHD^mQ^th<)scXL_!iV$Xqnj>``k9@6%98 zfiV~-B@(fBi*f6Y4w;@TTQL?d^(Eke|I&%IpPye`<)m+v$ZrB#?#8tr|2O7c9#xqs z&+g*(VQ2o{ZJu}T*cByx|I(No*wKZ4qj>Q0#>6@RrP#*dKFmmmlO6UAHd@&g?r%0W z8EOT;OGs>9#an9%7$>|Flr3P!7R2wk`W+tpnxXi0nOT(%1%@0{%uAzJ%F%W5eq12~ zp7yI*QEKTK8A9vhwM%MM^qq;O35dfT_dHQ;xi9h(I5jVruBN6Y^6Q6p`6qY;b@bHL z2dmb!M0s$MhY!RVd&Frvot{)b6B9hUKHa20azLU!w3!5oz9bKHOkB3o`4K~xdP)jy z`LXz|s(G`QNnIO7&&sPRvyQS$>_{utS(3d((>i4KJhGi?-LRhQOMVd#IyLmsS&E@H z`xDe)ef#JsD2dfc&QeIIA9=TCIoJJINDmsf(E&W%>6XcOZZ0J6FX~+5JbFcvdHhc8 zxE+6zk*V)5Fv$+o-dHjkB!_*KtovT=KXo~mO0ZXPfHfO?uPbT-!okE(`pX6T>RChOe;SLyDQIG}6&max@lTZ(d# z3DIpP+fMJxDM3M1Ocdk=MW;Q{DXI5$S-^p1ZsbF*A;ZX76gEDS-=GC+^$^DQA90|C~(&5XV-Nj*FB6^Sg~gqk?Qe#TVIA| z=&_^Hx-qXm{1bQ=ul!D6b@t7}ZzCfkrz*UxqfSphgLcj-xm0?@F6Big#B46~RJeKB zFL<0()iAkjrqdFwHM6}kT9u*jZvUlQ1#D>Vc9?81$iCVHbyoW8AHHNK#b2v^_^V6X zKN{wbH9bxHtFxt+;bl~9{);6@HDfM+YvQH2LDXh*QM0?lu6+X3q0y4>ne(iTjg5mY zso2%G-QC^N4_3#*kV^x3*==oYpPoE@?;4rVVxlOe9Uk!c>s*^(P-?<{k6eLH#C&_I zc>JzXM}a37sS%#jJQobY7RX0l?>L*}y4PI%rmBk57BX4q`EU`B=oKdC_uOfYp%2)H zpEf*w4RQRk)7OKa9AL)zTbft2w06(OUnhO1`@Wff$+*KGDFe~OP$3GPVs=U`q;t*! zwD>}lx{s`w2>PMILFJ92=PphjP)H!ziQMo9;}-4i&B7>i%3%Du)iuuh=qI+hH#;Ia zxRSQVwLCya(w?tVal%T|!JkAjZLUYS5~Q{3y7)Y0iE<06p%X!>XQy^Lco^k{{ag~M zd*a%(#3$Yk^X=WNn_v)vCr+!A- zq0Mu;yHltcjFJnML&5s_`nKi=#G+6rn4O)Fei+cP+^M;xMUPX8gKe7KzD=*||EX)x zxjd9k^)S?ef=9i=r$Ikk_h}88=P4CdHCZj3LTwekEt+4zIyx zglB;}LT`u)PkyZD`&O=;49&}~$l7er2%FysZ3x+bYPqGyi@uisW8=i)iyC~t+O@Xb zUsSis-FtM_={J?R+fhO-!|i+`K0{+9br8)v^ty-RR1UwPZyykxXxfvGNl*=#cZ7jGiG|c|D10pCOqd{x#8q;XPr<@#Q3U+{0buDH;$y7Gk^MP~dU`XuMq!v@9RaQ$(_F+3h$S z^%mT6Z@N>tjxS+VE+K(p>eHcIffTZTZfY@sDHb`DV5-1M%cM1~$TExV zD1(~anKyqp)GrfQppHgQ!I0YsUsI2vr3k~*Iu)FQ@*5@Ha<&T~?0fuGZgH0bB09xs zuti^AUm9y!nzoqA4xWJ7$>m;%SP9r3vh?oPVE6y6rO#Pekv#YN?{VziUy^$XU`lUZ zneE~-dK1|2+~uyrYIE4fPG^*{MOkrK4?djjb{RYPmjU}Pyay%?sFsiQK9OWJ7sgxX zKC4guZXV_uHk>Cw(FQV{NMc?tIzB~rF*xATD*|C)cV`Du(dz1zf8Qq)>eFi9q(mkr z4=@J?Y#}6;NEW%lr!6@om`xtXFqe30##bXoQLG-_S`B&&AU1$zp#jqNwzL(kGZzFXRx!{*~KWLa>&UW$tc<}*`pCjLLZLsAPRCabYkeRO=Yl+Om0Edxp@2y%^N{7CTUE9)uV*+8mQVYl1&`mf5*vl=*0=W#+)C!^bv`Vm-6 zg}*bcQb9Fv^13rwd<`-Lby+aBX;D^utis`Qse(=0_qaF2Y!lUr`X;(#R9S4IM4kAW zYXw``nahQ3^->*@it%TJM_FKZR#F^(V27 zB_mggwrPa0iU2y12@1~aI~5I9r*Ly~8#z~3hjb!=d=>FS$NEDERh|ZEHJ7T=#ylXl z3PaX4PcUH?X%3CdtGG@rq!3mT`4-DBfebf_6{YdEnr{yKuyE_KE|wI&@-r?xH- z-8mKN^-{N{YT#CF8kn`J&2y>|x1xD8h9;Y%QI3KUhtE(;1E$*LrG#Ws)1s4^T>ocj z-%yh%EahCmPiY2JGhbK%tU>9Dh0t?VGJpRK6J9(wH)l_0)hzim0$OrKyMM+#g5IC~ dDt(L_u;)qmKAq<-d-O8`EKF@pDvi7o{{_Ck0iFN= literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/images/thumb-overlay-small.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/images/thumb-overlay-small.png new file mode 100644 index 0000000000000000000000000000000000000000..b6836d967b132a52b84783cccb5f7678201faa71 GIT binary patch literal 1549 zcmbW1`8(7J9LI-TjjNT#=vGKr8Q%;=j!>o<$GES?U^0{J#JG1IsTt8uDwLyKgF=lQ zVO+B^?lO+Sx_7BTBUck6*G~R}-5)-$_w#w)KYgC(^?VZTY%WWKmBAnoNZR^}1xk=e z!DLE^3Ag}lRTqSazZudD1RDB_ZR-jZ?2r&k*ANH7^^kB(FcxIyNASTOw+_VkV^LU) zUt~}x)(8X=&9SyHbBq{Wm|$J?b&(feUf0u2>h9o*?Mm~jV@>Z@4Uu}^X602` z%+=k`3s5B0%@zIq&dWt~A~oKi?m$6SlDpj1y!7Jq8^{Yt!2K)tQ{ymkI$Afe*{0iW zZhYx>_ivL%;*$x)C3?nfy%KI6cshp!26DGyI3#BaxCntjB6Z}!^R&AqXDn478Ngo* zpa+uC{ii2L*ZU)sC|2SMii(W>P-7iD6hAgL)+i|{DeLU)e6)|1GeuepGdLU*8xX*y zuB-(0)M_e2X=t0HL?W@$KR9^Rw{ADJ&2}=us-gReC5q7$Z9BDz;s zq2U`{lOzSf^}k_4L%#`4B%Hd|v^AMGF)=ZMP&?@NbW}E=(pquG%gO23g9i^5t*Cv} z@^al$S1ou-XbfYD((1$M??>(K?Cfx9+!(8Y@#$U#stjd`UU;HgrawJzB`H0nSm?+F zdHgBd?cG!m) zXL)KEp)@zr4V%<80-w1^QEU|&RyW1Q5pSGPkCo(mc@p#EpBMwkT#>`=c+IEX+hojp zT;|$iCMj;SVYYK7PPW=_Me_)s-VLln!y%M)?Uw2<`sX(o2vKjcn8}-yZ0y3T_npDX zZCQ>|JrV>`lg3t&XAP&iaT~6g29JsI)>4vM6-VDAh*jtt!I(n3m%WBf3jCrdwAm_Q z!-2y~%OwNi+Q4E>O$|En+_RJ|X0xd+4qpT&nVY=sSZev_Y}ua`;iJQ+MYpSRHqyu! z2jvpN*|%__WZdQ|IG^KWnWh$r*84dmf$?qFV!_-RJCyyQL>#t5fO?12KbBK!aZ2{$ z!{T3P6v8?`3V)fRxf}rPiPw8z&r2~tWY0?>X`wwYO)vfTx@uR|-D_&UMRYCf`NrqW zjOB(ecBgSB(VEY=FRLvFm=xc!u#9)+)f3>w7DpAJx|o;5W>Ny(oQqwxf|sg5YxSQ| zyaBM3BABG5D!)$tc#~L?VU@CRQ-6~`Jst01%b>E?@1zFunVXEXPQR!Ql83!wBSMdf zbaNW?IsZJSp|bK|R(d)=mrC{hgA;2{%Yt_eRiyPrv3hzY@3s0&af0bo8jTkJ6i;5y zrE!fSvk_{H3xhva{0*WcD_`)>LDrTw7BqA3_M2bcb1Or&;QZ#{p(i1`zP=ZSd5RIZHAW{+_p-EK; zW$7JU*L0sl;?(UD9-I=>T-uupcXWpB6e|)}=c-6s5TtqP-5$uY2)d+8Wuk_m=7)9Nt!qfK?!@du zU0K^Z>djYW>y@h}WQo?Bqz{?|>ynbQNJvjrP+$^EBe&~379Z;fYcioaj2P(I6u~58 zCt4y`a)C`oWG9xX-8)!Y0aBFAmsJ*&;+ehN$bub#X)VWDyqd5S(?J2_B>$UvJFUVy z%>yN|?IG;OM~->0ZB9>*`G8B*x%wMAtFKd4CF4~JHDlZ}CC-n8THn$FWRL?wGcz-6 zE|)twwph3g3sw*eQ^HsT#>aOSo!XmErf=?}fY}+(dvXWH-2r9>` z1<>nm@Fe1`h=>gxV)XTSM2GXJ8}y!poQ22uV52RpSWHQ^Z>kHA-+oty=vr)m5R$|5 zv`>@<&}T_iE;k!~{=p;r_|V33TKG|_2wb1Si)vY@opSSMJs^~nz~hTz%7W0l;Q!l`y8qv^f9YL6xK|dt{5x`B zH5@fUrBdMq!`~UN-V{HudV2I@1)BF0;7iJvI11Z(k$l#ofAZ0@Y2mdH2YPyXy5r}q zj-hDoB$%I?cG5IEFK_QtcY>(n603n;$V*mPi31~DAeKqtZkXa~{kH5^`5#Ml!2lWn5|APJ%i$`u!ADf5{eiv20pn*dit1L<;VbR7B1~<= zM#OAmu7TB01WL1B{hL${n^*fW11dUr4S4L~%?*}6M5WU+dalRoFB{i{juUmXK7IZD z5Z@`WjC`Ys-CYv$PB>!m8x zd2KnKB`cMWFZw$Ri+608F01F~-eH7!OCzqNsV$xGyB&g>bRxfIx7y`b zR|}1y2T1B>^kzA9&sOU_`Cq^Ca|kiG04;8-WS76f{0A?nPuyXH&K~Xl^KFBQXb&vn zqO#w80{B0S{fmja|FZ|V@J~edcl`s~{qXuXwtwRNmJIk3$Q5Q(3_yCjvunTWajOmv z6kCd*-skJv%g7|)zdOVe!D#LMTMedRugoabN}hRM=~yj|L3*EDdX{3LW)M4=`+ZJe zwt^~~K6OyFcyytD=G=;cP#h4kR{}8-HO61Kh9ED+2`eN^O>yhXql(`KFd*|f4JohX zWQ(ymqa-Y%df@a`4>1i!;yCdNd@{Pyx*{ZwO8U*}x!1E0YA>rX)fAlxi& VotbGLx&N#|HWm)%RhPU8e*m0swgLbE literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/variables.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/variables.less new file mode 100644 index 00000000..9d8062ff --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/variables.less @@ -0,0 +1,753 @@ +@import "../common/css3.less"; + +@default-blue-button-color: white; +@default-blue-button-background-color: #366edf; +.default-blue-button-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#7a9de9, #2362dd, 0.5, #366edf, 0.5, #215fdc); } +@default-blue-button-background-image-gecko: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + +.mbl-color-blue-45 () { .background-image-linear-gradient-top-left-bottom-right-2-stops(#7a9de9, #2362dd, 0.5, #366edf, 0.5, #215fdc); } +.mbl-color-default-45 () { .background-image-linear-gradient-top-left-bottom-right(#dfdfdf, #a6a6a6); } +.mbl-color-default-sel-45 () { .background-image-linear-gradient-top-left-bottom-right-2-stops(#306ea1, #266093, 0.06, #4090d3, 0.5, #306ea1); } + +@mbl-color-blue-45-gecko: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +@mbl-color-default-45-gecko: -moz-linear-gradient(top left, #dfdfdf 0%, #a6a6a6 100%); +@mbl-color-default-sel-45-gecko: -moz-linear-gradient(top left, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + +@default-button-color: black; +@default-button-background-color: #c6c6c6; +.default-button-background-image () { .background-image-linear-gradient-top-bottom(#dfdfdf, #a6a6a6); } +@default-button-background-image-gecko: -moz-linear-gradient(top, #dfdfdf 0%, #a6a6a6 100%); +@default-button-border-radius: 3px; + +@default-button-selected-color: white; +@default-button-selected-background-color: #3578b1; +.default-button-selected-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#306ea1, #266093, 0.06, #4090d3, 0.5, #306ea1); } +@default-button-selected-background-image-gecko: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + +@default-selected-color: white; +@default-selected-background-color: #3578b1; +.default-selected-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#306ea1, #266093, 0.06, #4090d3, 0.5, #306ea1); } +@default-selected-background-image-gecko: -moz-linear-gradient(top, #306ea1 0%, #4090d3 6%, #306ea1 50%, #266093 100%); + +@heading-background-color: #8c8a8c; +.heading-background-image () { .background-image-linear-gradient-top-bottom(#9c9e9c, #848284); } +@heading-background-image-gecko: -moz-linear-gradient(top, #9c9e9c 0%, #848284 100%); +@heading-border-top-color: #cdd5df; +@heading-border-bottom-color: #2d3642; + +.default-button-border-styles () { + border-color: #9cacc0; + border-radius: @default-button-border-radius; +} + +.mblToolBarButtonBodyInLeftArrow-styles () { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.mblToolBarButtonBodyInRightArrow-styles () { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +// background styles of form controls +.mbl-button-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#fdfdfd, #cecece, 0.5, #f8f8f8, 0.5, #eeeeee); } +.mbl-button-selected-background-image () { .default-button-selected-background-image(); } +.mbl-blue-button-background-image () { .default-blue-button-background-image(); } +.mbl-blue-button-selected-background-image () { .default-button-selected-background-image(); } +.mbl-red-button-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#fa9d58, #ee4115, 0.5, #ff4d25, 0.5, #ed4d15); } +.mbl-red-button-selected-background-image () { .default-button-selected-background-image(); } +.mbl-button-checked-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#00a200, #00d300, 0.2, #00ba00, 0.2, #00ba00); } + +// background styles of form controls (for gecko) +@mbl-button-background-image-gecko: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +@mbl-button-selected-background-image-gecko: @default-button-selected-background-image-gecko; +@mbl-blue-button-background-image-gecko: @default-blue-button-background-image-gecko; +@mbl-blue-button-selected-background-image-gecko: @default-button-selected-background-image-gecko; +@mbl-red-button-background-image-gecko: -moz-linear-gradient(top, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); +@mbl-red-button-selected-background-image-gecko: @default-button-selected-background-image-gecko; +@mbl-button-checked-background-image-gecko: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); + +// common.less +.mobile-body-styles () { + font-family: Helvetica; + font-size: 17px; + color: white; +} + +.mblBackground-styles () { + background-color: black; +} + +.mblView-styles () { + color: white; +} + +.mblColorBlue-styles () { + color: @default-blue-button-color; + background-color: @default-blue-button-background-color; + .default-blue-button-background-image(); +} +.mblColorDefault-styles () { + color: @default-button-color; + background-color: @default-button-background-color; + .default-button-background-image(); +} +.mblColorDefaultSel-styles () { + color: @default-button-selected-color; + background-color: @default-button-selected-background-color; + .default-button-selected-background-image(); +} + +// Heading.less +.mblHeading-styles () { + .heading-background-image(); + border-top: 1px solid @heading-border-top-color; + border-bottom: 1px solid @heading-border-bottom-color; + color: white; + text-shadow: rgba(0,0,0,0.6) 0 -1px 0; +} + +// ToolBarButton.less +@mbl-tool-bar-button-body-border-radius: 0; +// +.mblToolBarButton-styles () { + text-shadow: none; +} +.mblToolBarButtonArrow-styles () { + border-radius: 1px; + .transform(scale(0.7, 1.05) rotate(45deg)); + border: 1px solid #3a4655; +} +.mblToolBarButtonArrowInHeading-styles () { +} +.mblToolBarButtonHasLeftArrowInHeading-styles () { +} +.mblToolBarButtonHasLeftArrowInHeading-compat-gecko () { +} +.mblToolBarButtonHasRightArrowInHeading-styles () { +} +.mblToolBarButtonHasRightArrowInHeading-compat-gecko () { +} +.mblToolBarButtonArrowInLeftArrow-styles () { + left: -1px; +} +.mblToolBarButtonArrowInRightArrow-styles () { + right: -1px; +} +.mblToolBarButtonBody-styles () { + border: 1px solid #555555; +} +.mblToolBarButtonBodyInHeading-styles () { +} +.mblToolBarButtonBodyInHeading-compat-gecko () { +} + +// RoundRect.less & RoundRectList.less +@mbl-round-rect-border-color: #adaaad; +@mbl-round-rect-border-radius: 8px; +@mbl-round-rect-background-color: black; +@mbl-round-rect-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +// +.mblRoundRect-styles () { + color: white; +} + +// EdgeToEdgeCategory.less +.mblEdgeToEdgeCategory-styles () { + height: 22px; + border-bottom: 1px solid #393439; + background-color: #212021; + color: white; + line-height: 22px; + text-shadow: rgba(0,0,0,0.6) 0 -1px 0; +} + +// RoundRectCategory.less +@mbl-value-picker-slot-margin: 0 5px; +.mblRoundRectCategory-styles () { + color: white; +} + +// EdgeToEdgeList.less +.mblEdgeToEdgeList-styles () { + background-color: black; +} +.mblEdgeToEdgeList-LastListItem-styles () { + border-bottom-color: #313431; +} + +// ListItem.less +@mbl-list-item-height: 64px; +// +.mblListItem-styles () { + border-bottom: 1px solid #313431; + background-color: black; + font-size: 21px; + color: white; +} +.mblListItemSelected-styles () { + color: @default-selected-color; + .default-selected-background-image(); +} +.mblListItemLabelSelected-styles () { + background-color: #048bf4; +} +.mblListItemChecked-styles () { +} +.mblListItemRightText-styles () { + color: white; + margin-top: 20px; +} +.mblListItemSubText-styles () { + font-size: 14px; + color: gray; +} + +// Switch.less +@mbl-switch-bg-left-background-color: #00a200; +.mbl-switch-bg-left-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#00a200, #00d300, 0.2, #00ba00, 0.2, #00ba00); } +@mbl-switch-bg-right-background-color: #bdbebd; +.mbl-switch-bg-right-background-image () { .background-image-linear-gradient-top-bottom(#bdbebd, #f7f3f7); } +.mbl-switch-knob-background-image () { .background-image-linear-gradient-top-bottom(#9c9a9c, #848284); } +// +@mbl-switch-bg-left-background-image-gecko: -moz-linear-gradient(top, #00a200 0%, #00ba00 20%, #00ba00 20%, #00d300 100%); +@mbl-switch-bg-right-background-image-gecko: -moz-linear-gradient(top, #bdbebd 0%, #f7f3f7 100%); +@mbl-switch-knob-background-image-gecko: -moz-linear-gradient(top, #9c9a9c 0%, #848284 100%); +@mbl-switch-square-border-radius: 2px; +// +.mblSwitchBg-styles () { + border: rgba(176,176,176,0.5) 1px inset; +} +.mblSwitchKnob-styles () { + border: rgba(157,157,157,0.5) 1px outset; +} + +// Button.less +.mblButton-styles () { + .default-button-border-styles; + color: black; + font-size: 13px; +} +.mblButtonSelected-styles () { + color: white; +} +.mblButton-mblBlueButton-styles () { + color: white; +} +.mblButton-mblRedButton-styles () { + color: white; +} + +// CheckBox.less +.mblCheckBox-styles () { + .default-button-border-styles; +} +.mblCheckBoxChecked-after-styles () { + border-color: white; +} +.mblCheckBoxChecked-mblCheckBoxSelected-after-styles () { +} + +// ComboBox.less +@mbl-combo-box-popup-box-shadow: 0 0 50px black; +// +.dijitPopup-styles () { + border-radius: 0; +} +.mblComboBoxMenu-styles () { + border-radius: 0; + background-color: white; + color: black; +} +.mblComboBoxMenuItem-styles () { + border-color: #ffffff; + color: inherit; +} +.mblComboBoxMenuItemSelected-styles () { + .default-selected-background-image(); + color: white; +} + +// IconContainer.less +.mblIconItemSub-styles () { + background-color: white; + color: black; +} +.mblIconArea-styles () { + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: white; +} +.mblIconItemDeleteIcon-styles () { + top: -4px; + left: -2px; +} + +// RadioButton.less +.mblRadioButton-styles () { + border-color: #9cacc0; +} +.mblRadioButtonChecked-after-styles () { + border-color: white; +} +.mblRadioButtonChecked-Selected-after-styles () { + border-color: white; +} + +// Slider.less +@mbl-slider-bar-border-radius: 2px; +@mbl-slider-knob-border-radius: 2px; +// +.mblSlider-styles () { + border-color: #b0b0b0; +} +.mblSliderHandle-styles () { + border-color: #9d9d9d; +} + +// TabBar.less +.mblTabBar-styles () { + text-shadow: none; +} + +// barType="tabBar" +.mblTabBarTabBar-styles () { + .background-image-linear-gradient-top-bottom(#2d2d2d, #000000); +} +.mblTabBarTabBar-compat () { + background-color: #000000; +} +.mblTabBarTabBarButton-styles () { +} +.mblTabBarTabBarButtonIconArea-styles () { +} +.mblTabBarTabBarButtonLabel-styles () { + color: white; +} +.mblTabBarTabBarButtonSelected-styles () { + background-color: #404040; + .background-image-linear-gradient-top-bottom(#484848, #242424); +} +.mblTabBarTabBarButtonLabelSelected-styles () { + color: white; +} + +// barType="segmentedControl" +@mbl-tab-bar-segmented-control-border-radius: 5px; +// +.mblTabBarSegmentedControl-styles () { +} +.mblTabBarSegmentedControlButton-styles () { + border-style: solid; + border-color: #555555; + color: @default-button-color; + .default-button-background-image(); +} +.mblTabBarSegmentedControlButton-compat-gecko () { +} +.mblTabBarSegmentedControlButtonSelected-styles () { + color: @default-button-selected-color; + .background-image-linear-gradient-top-bottom-2-stops(#313031, #959595, 0.5, #5a555a, 0.5, #616161); +} + +// barType="standardTab" +.mblTabBarStandardTab-styles () { +} +.mblTabBarStandardTabButton-styles () { + color: @default-button-color; + background-color: @default-button-background-color; /* TODO: to compat */ + .default-button-background-image(); +} +.mblTabBarStandardTabButtonIconArea-styles () { +} +.mblTabBarStandardTabButtonLabel-styles () { +} +.mblTabBarStandardTabButtonSelected-styles () { + color: @default-button-selected-color; + background-color: @default-button-selected-background-color; /* TODO: to compat */ + .background-image-linear-gradient-top-bottom-2-stops(#313031, #959595, 0.5, #5a555a, 0.5, #616161); +} +.mblTabBarStandardTabButtonLabelSelected-styles () { +} + +// barType="tallTab" +.mblTabBarTallTab-styles () { + .background-image-linear-gradient-top-bottom(#2d2d2d, #000000); +} +.mblTabBarTallTabButton-styles () { +} +.mblTabBarTallTabButton-FirstChild-styles () { +} +.mblTabBarTallTabButton-LastChild-styles () { +} +.mblTabBarTallTabButtonIconArea-styles () { +} +.mblTabBarTallTabButtonLabel-styles () { +} +.mblTabBarTallTabButtonSelected-styles () { +} +.mblTabBarTallTabButtonLabelSelected-styles () { +} + +// TextArea.less +.mblTextArea-styles () { + .default-button-border-styles; +} + +// TextBox.less +.mblTextBox-styles () { + .default-button-border-styles; +} + +// ToggleButton.less +.mblToggleButton-styles () { + .default-button-border-styles; + font-size: 13px; + color: black; +} +.mblToggleButtonSelected-styles () { + color: white; +} +.mblToggleButtonChecked-styles () { + color: white; +} +.mblToggleButtonChecked-after-styles () { + border-color: white; +} +.mblToggleButtonCheckedSelected-styles () { + color: white; +} +.mblToggleButtonCheckedSelected-after-styles () { +} + +// Overlay.less +.mblOverlay-styles () { + background-color: #333333; + background-image: none; +} +.mblOverlay-compat () { +} +.mblOverlay-compat-gecko () { +} + +// Tooltip.less +@mbl-tooltip-border-radius: 3px; +// +.mblTooltip-styles () { + border-color: #adaaad; + border-radius: @mbl-tooltip-border-radius; + background-color: #8c8a8c; + .background-image-linear-gradient-top-bottom(#9c9e9c, #848284); +} +.mblTooltipBubble-styles () { + background-color: #306ea1; + background-image: none; + color: white; +} +.mblTooltipInnerArrow-Bubble-Above-styles () { + border-bottom-color: #306ea1; +} +.mblTooltipInnerArrow-Bubble-Below-styles () { + border-top-color: #306ea1; +} +.mblTooltipInnerArrow-Bubble-After-styles () { + border-left-color: #306ea1; +} +.mblTooltipInnerArrow-Bubble-Before-styles () { + border-right-color: #306ea1; +} +.mblTooltipArrow-Before-styles () { + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipArrow-After-styles () { + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipArrow-Above-styles () { + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipArrow-Below-styles () { + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow-Before-styles () { + border-left-width: 0; + border-right-color: #848284; +} +.mblTooltipInnerArrow-After-styles () { + border-right-width: 0; + border-left-color: #848284; +} +.mblTooltipInnerArrow-Above-styles () { + border-top-width: 0; + border-bottom-color: #9c9e9c; +} +.mblTooltipInnerArrow-Below-styles () { + border-bottom-width: 0; + border-top-color: #848284; +} +.mblTooltip-Heading-styles () { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblTooltip-Heading-compat () { +} +.mblTooltip-Heading-ToolbarButton-styles () { +} +.mblTooltip-Heading-ToolbarButton-compat () { +} + +// Accordion.less +.mblAccordion-styles () { + border-color: #8c8f91; +} +.mblAccordionTitle-styles () { + border-top: 1px solid #8c8f91; + .mbl-button-background-image(); +} +.mblAccordionTitle-compat () { + background-color: #f8f8f8; +} +.mblAccordionTitle-compat-gecko () { + background-image: @mbl-button-background-image-gecko; +} +.mblAccordionTitleSelected-styles () { + border-bottom: 1px solid #8c8f91; + .mbl-button-checked-background-image(); + color: white; +} +.mblAccordionTitleSelected-compat () { + background-color: #00ba00; +} +.mblAccordionTitleSelected-compat-gecko () { + background-image: @mbl-button-checked-background-image-gecko; +} +.mblAccordionTitleAnchor-styles () { + color: black; +} +.mblAccordionTitleAnchorSelected-styles () { + color: white; +} + +// SimpleDialog.less +@mbl-simple-dialog-border-radius: 6px; +// +.mblSimpleDialog-styles () { + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration-styles () { + background-color: rgba(64,64,64,0.85); + border: 2px solid #eeeeee; + color: white; +} +.mblSimpleDialogDecoration-compat () { + background-color: #404040; +} +.mblSimpleDialogDecoration-compat-gecko () { + background-color: rgba(64,64,64,0.85); +} +.mblSimpleDialogTitle-styles () { + margin: 14px 0 7px -5px; + padding: 0 14px 14px; + width: 244px; + border-bottom: 1px solid rgba(96,96,96,0.85); + font-size: 21px; + text-align: left; +} +.mblSimpleDialogText-styles () { + margin: 14px 9px; + width: 244px; + font-size: 18px; + text-align: left; +} + +// IconMenu.less +@mbl-icon-menu-border-radius: 6px; +@mbl-icon-menu-item-border-radius: 6px; +// +.mblIconMenu-styles () { + padding: 0; + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; +} +.mblIconMenu-compat () { + background-color: #404040; +} +.mblIconMenu-compat-gecko () { + background-color: rgba(64, 64, 64, 0.85); +} +.mblIconMenuItem-styles () { + border-left: 1px solid rgba(96, 96, 96, 0.85); + border-bottom: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemAnchor-styles () { + font-size: 13px; + color: white; +} +.mblIconMenuItemSel-styles () { + .default-selected-background-image(); + color: white; +} +.mblIconMenuItemSel-compat () { + background-color: @default-selected-background-color; +} +.mblIconMenuItemSel-compat-gecko () { + background-image: @default-selected-background-image-gecko; +} + +// dijit.Calendar +.dijitCalendar-styles () { + border: none 0 transparent; + background-color: white; +} +.dijitCalendar-thead-styles () { + .background-image-linear-gradient-top-bottom-2-stops(#84868c, #000000, 0.5, #52555a, 0.5, #292929); +} +.dijitCalendar-thead-compat () { + background-image: url(compat/calendar-month-bg.png); +} +.dijitCalendar-thead-compat-gecko () { + background-image: -moz-linear-gradient(top, #84868c 0%, #52555a 50%, #292929 50%, #000000 100%); +} +.dijitCalendarMonthLabel-styles () { + color: white; + font-size: 16px; +} +.dijitCalendarMonthMenu-styles () { +} +.dijitCalendarMonthMenu-compat-ff3 () { +} +.dijitCalendarMonthMenu-Label-styles () { + color: black; +} +.dijitCalendarDecrease-styles () { + border-right: 6px solid white !important; +} +.dijitCalendarIncrease-styles () { + border-left: 6px solid white !important; +} +.dijitCalendarDayLabelTemplate-styles () { + background-color: #292c31; + font-size: 12px; + color: white; +} +.dijitCalendarDateTemplate-styles () { + border-right: 1px solid lightGrey; + background-color: white; + color: black; +} +.dijitCalendarDateTemplate-LastChild-styles () { + border-right: none; +} +.dijitCalendarDateLabel-DateTemplate-styles () { + border: none; +} +.dijitCalendarDateLabel-PrevMonth-styles () { + color: lightGrey; +} +.dijitCalendarDateLabel-Hovered-styles () { + color: grey; +} +.dijitCalendarDateLabel-Selected-styles () { + .mbl-button-checked-background-image(); + color: white; + text-shadow: rgba(0,0,0,0.4) 0 1px 0; +} +.dijitCalendarDateLabel-Selected-compat () { + background-image: url(compat/calendar-datelabel-sel-bg.png); +} +.dijitCalendarDateLabel-Selected-compat-gecko () { + background-image: @mbl-button-checked-background-image-gecko; +} +.dijitCalendarDateLabel-Active-styles () { + .default-selected-background-image(); +} +.dijitCalendarDateLabel-Active-compat () { + background-image: url(compat/calendar-datelabel-act-bg.png); +} +.dijitCalendarDateLabel-Active-compat-gecko () { + background-image: @default-selected-background-image-gecko; +} +.dijitCalendarYearLabel-styles () { + padding: 0; + .background-image-linear-gradient-top-bottom-2-stops(#84868c, #000000, 0.5, #52555a, 0.5, #292929); +} +.dijitCalendarYearLabel-compat () { + background-image: url(compat/calendar-year-bg.png); +} +.dijitCalendarYearLabel-compat-gecko () { + background-image: -moz-linear-gradient(top, #84868c 0%, #52555a 50%, #292929 50%, #000000 100%); +} +.dijitCalendarSelectedYear-styles () { + color: white; + font-size: 16px; +} +.dijitCalendarNextYear-styles () { + padding: 1px 6px 3px 6px; + color: white; + font-size: 12px; +} + +// SearchBox.less +@mbl-searchbox-cancel-button-color: black; +@mbl-searchbox-cancel-button-bg-color: transparent; +.mblSearchBox-Cancel-Button-styles () { + border-radius: 0; +} +@mbl-searchbox-results-decoration-color: black; + +// ProgressBar.less +.mblProgressBar-styles () { + border-radius: 6px; + height: 22px; + .background-image-linear-gradient-top-bottom-2-stops(#545454, #414141, 0.3, #313031, 0.85, #293031); +} +.mblProgressBarProgress-styles () { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + .background-image-linear-gradient-top-bottom-2-stops(#adf708, #5a8e00, 0.5, #7bbe08, 0.9, #63a600); + height: 22px; +} +.mblProgressBarComplete-styles () { + border-radius: 6px; +} +.mblProgressBarNotStarted-styles () { +} +.mblProgressBarMsg-styles () { + top: 3px; +} +.mblProgressBar-compat () { + background-color: #293031; +} +.mblProgressBarProgress-compat () { + background-color: #7bc708; +} +.mblProgressBar-compat-gecko () { + background-image: -moz-linear-gradient(top, #545454 0%, #313031 30%, #293031 85%, #414141 100%); +} +.mblProgressBarProgress-compat-gecko () { + background-image: -moz-linear-gradient(top, #adf708 0%, #7bbe08 50%, #63a600 90%, #5a8e00 100%); +} + +// ValuePicker.less +.mbl-value-picker-slot-button-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#f7f7f7, #D6D7D6, 0.5, #d6d3d6, 0.9, #bdbebd); } +@mbl-value-picker-slot-button-background-image-gecko: -moz-linear-gradient(top, #f7f7f7 0%, #d6d3d6 50%, #bdbebd 90%, #d6d7d6 100%); +@mbl-value-picker-slot-button-radius: 5px; +.mbl-value-picker-slot-input-area-background-image () { .background-image-linear-gradient-top-bottom-3-stops(#adaead, #e7e3e7, 0.1, #d6d7d6, 0.5, #f7f7f7, 0.9, #f7f3f7); } +@mbl-value-picker-slot-input-area-background-image-gecko: -moz-linear-gradient(top, #adaead 0%, #d6d7d6 10%, #f7f7f7 50%, #f7f3f7 90%, #e7e3e7 100%); +.mblValuePickerSlot-style () { + margin: 0 5px; +} +.mblValuePickerSlot-input-style () { + font-size: 28px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/variables_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/variables_rtl.less new file mode 100644 index 00000000..7e755312 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/android/variables_rtl.less @@ -0,0 +1,35 @@ +// Carousel_rtl +@mbl-carousel-margin-rtl: ~"2px 0px 2px 4px"; + +// IconContainer_rtl +@mbl-icon-container-right-rtl: -2px; + +// IconMenu_rtl-compat +@mbl-border-radius-rtl: 6px; + +// TabBar_rtl-compat +@mbl-moz-border-radius-rtl: 5px; + +// TabBar_rtl +@mbl-border-width-rtl: ~"1px 0px 1px 1px !important"; +@mbl-tb-border-radius-rtl: 5px; + +// ThemeID +@theme-id: android; + +// Switch_rtl-compat +@mbl-bg-image-r-rtl: ~"url(compat/switch-square-r.gif)"; +@mbl-bg-image-l-rtl: ~"url(compat/switch-square-l.gif)"; + +// Switch_rtl +@mbl-switchOn-left-rtl: -53px; +@mbl-switchBg-left-rtl: 53px; +@mbl-switch-knob-rtl: 53px; +@mbl-switch-text-right-rtl: -40px; + +// ToolBarButton_rtl +@mbl-toolbar-right-arrow-rtl: -1px; +@mbl-toolbar-left-arrow-rtl: -2px; + +// ProgressIndicator_rtl +@mbl-progress-center-left-rtl: 50%; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Accordion-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Accordion-compat.css new file mode 100644 index 00000000..af45fc40 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Accordion-compat.css @@ -0,0 +1,19 @@ + +.mblAccordionTitleSelected { + background-color: #0869c6; +} +.dj_gecko .mblAccordionTitleSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Accordion.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Accordion.css new file mode 100644 index 00000000..6ba82d81 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Accordion.css @@ -0,0 +1,72 @@ + +.mblAccordion { + border-style: outset; + border-width: 1px; + border-color: #9cacc0; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #c6c7c6; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + border-top: 1px outset #9cacc0; + background-color: white; +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: #000000; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + border-bottom: 1px outset #9cacc0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; +} +.mblAccordionTitleSelected .mblAccordionTitleAnchor { + color: white; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Accordion_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Accordion_rtl.css new file mode 100644 index 00000000..5b9612f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Accordion_rtl.css @@ -0,0 +1,6 @@ + +.mblAccordionIconParentRtl { + float: right; + -webkit-transform: scaleX(-1); + transform: scaleX(-1); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Button-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Button-compat.css new file mode 100644 index 00000000..7adaf923 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Button-compat.css @@ -0,0 +1,41 @@ + +.mblButton { + background-image: url(compat/button-bg.png); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblBlueButton { + background-image: url(compat/blue-button-bg.png); +} +.mblBlueButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.mblRedButton { + background-image: url(compat/red-button-bg.png); +} +.mblRedButtonSelected { + background-image: url(compat/red-button-sel-bg.png); +} +.dj_gecko .mblButton { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblBlueButton { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblBlueButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblRedButton { + background-image: -moz-linear-gradient(top, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); +} +.dj_gecko .mblRedButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ff3 .mblButton { + -moz-border-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Button.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Button.css new file mode 100644 index 00000000..d1c5edf3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Button.css @@ -0,0 +1,47 @@ + +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 6px; + color: black; + font-size: 16px; +} +.mblButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + color: white; +} +.mblBlueButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115), color-stop(0.5, #ff4d25), color-stop(0.5, #ed4d15)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); + color: white; +} +.mblRedButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Carousel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Carousel.css new file mode 100644 index 00000000..57e43929 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Carousel.css @@ -0,0 +1,77 @@ + +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Carousel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Carousel_rtl.css new file mode 100644 index 00000000..acab0d8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Carousel_rtl.css @@ -0,0 +1,13 @@ + +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/CheckBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/CheckBox-compat.css new file mode 100644 index 00000000..2c16affc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/CheckBox-compat.css @@ -0,0 +1,38 @@ + +.mblCheckBox { + background-image: url(compat/button-bg.png); +} +.mblCheckBoxSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblCheckBox { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/CheckBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/CheckBox.css new file mode 100644 index 00000000..371a389d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/CheckBox.css @@ -0,0 +1,53 @@ + +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; + border-radius: 3px; +} +.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #0851ad; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblCheckBoxChecked.mblCheckBoxSelected::after, +.mblCheckBox:checked.mblCheckBoxSelected::after { + border-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox-compat.css new file mode 100644 index 00000000..07d3b5c9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox-compat.css @@ -0,0 +1,7 @@ + +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: none; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox-compat.less new file mode 100644 index 00000000..cb21fbb9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox-compat.less @@ -0,0 +1,2 @@ +@import "variables.less"; +@import "../common/ComboBox-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox.css new file mode 100644 index 00000000..71bbe5f6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox.css @@ -0,0 +1,57 @@ + +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; + border-radius: 12px; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-radius: 12px; + background-color: black; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: black; + color: white; +} +.mblComboBoxMenuItemSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox_rtl.css new file mode 100644 index 00000000..10932a96 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ComboBox_rtl.css @@ -0,0 +1,4 @@ + +.mblComboBoxMenuItemRtl { + text-align: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/DatePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/DatePicker.css new file mode 100644 index 00000000..bb811e54 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/DatePicker.css @@ -0,0 +1,178 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #fafafa), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #ffffff)); + background-image: linear-gradient(to bottom, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font: 24px/44px Helvetica, sans-serif; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/EdgeToEdgeCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/EdgeToEdgeCategory.css new file mode 100644 index 00000000..690d9ca3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/EdgeToEdgeCategory.css @@ -0,0 +1,18 @@ + +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 29px; + border-top: 1px solid #313439; + border-bottom: 1px solid #adaaad; + background-color: white; + color: #7b7d84; + line-height: 29px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/EdgeToEdgeList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/EdgeToEdgeList.css new file mode 100644 index 00000000..29dd3215 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/EdgeToEdgeList.css @@ -0,0 +1,9 @@ + +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: white; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-width: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/FixedSplitter.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/FixedSplitter.css new file mode 100644 index 00000000..3c88bebb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/FixedSplitter.css @@ -0,0 +1,21 @@ + +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/FormLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/FormLayout.css new file mode 100644 index 00000000..19a22b9b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/FormLayout.css @@ -0,0 +1,160 @@ + +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/FormLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/FormLayout_rtl.css new file mode 100644 index 00000000..44ebb14d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/FormLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/GridLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/GridLayout.css new file mode 100644 index 00000000..ebdc391f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/GridLayout.css @@ -0,0 +1,24 @@ + +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/GridLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/GridLayout_rtl.css new file mode 100644 index 00000000..3f5bdd0d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/GridLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblGridLayoutRtl > div { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Heading-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Heading-compat.css new file mode 100644 index 00000000..d1567591 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Heading-compat.css @@ -0,0 +1,10 @@ + +.mblHeading { + background-image: url(compat/heading-bg.png); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #4a4d52 0%, #292c31 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Heading.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Heading.css new file mode 100644 index 00000000..f3ff3eab --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Heading.css @@ -0,0 +1,38 @@ + +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#4a4d52), to(#292c31)); + background-image: linear-gradient(to bottom, #4a4d52 0%, #292c31 100%); + border-top: 1px solid #63696b; + border-bottom: 1px solid #292c31; + color: white; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer-compat.css new file mode 100644 index 00000000..8a99f941 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer-compat.css @@ -0,0 +1,59 @@ + +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url(compat/icon-content-heading-bg.png); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer-compat.less new file mode 100644 index 00000000..e2df9856 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons-compat.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross-compat.css"); + +@import "variables.less"; +@import "../common/IconContainer-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer.css new file mode 100644 index 00000000..b032fa04 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer.css @@ -0,0 +1,380 @@ + +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; + color: black; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 88px; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: 2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer.less new file mode 100644 index 00000000..729745a1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross.css"); + +@import "variables.less"; +@import "../common/IconContainer.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer_rtl.css new file mode 100644 index 00000000..885e8ee5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconContainer_rtl.css @@ -0,0 +1,13 @@ + +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: 2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu-compat.css new file mode 100644 index 00000000..fabac89a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu-compat.css @@ -0,0 +1,28 @@ + +.mblIconMenuItemSel { + background-color: #0869c6; +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 6px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 0; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 0; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 0; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu.css new file mode 100644 index 00000000..c76e2479 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu.css @@ -0,0 +1,63 @@ + +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 6px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 8px; + background-color: #000000; + border: none; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid #000000; + border-bottom: 1px solid #000000; +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 0; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 0; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 16px; + color: white; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu_rtl-compat.css new file mode 100644 index 00000000..16c3b556 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu_rtl-compat.css @@ -0,0 +1,17 @@ + +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 0px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 0px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 0px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 0px; + -moz-border-bottom-right-radius: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu_rtl.css new file mode 100644 index 00000000..85bb1e15 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/IconMenu_rtl.css @@ -0,0 +1,7 @@ +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid #000000; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem-compat.css new file mode 100644 index 00000000..34091ed2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem-compat.css @@ -0,0 +1,24 @@ + +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #0869c6; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem-compat.less new file mode 100644 index 00000000..332107ef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayArrow-compat.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck-compat.css"); + +@import "variables.less"; +@import "../common/ListItem-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem.css new file mode 100644 index 00000000..b32f0f4e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem.css @@ -0,0 +1,153 @@ + +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 59px; + list-style-type: none; + line-height: 59px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #dedfde; + font-size: 18px; + color: black; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #0869c6; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 15px; + margin-bottom: -15px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 15px; + margin-bottom: -15px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 15px; + margin-bottom: -15px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: black; + margin-top: 19px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: #7b7d48; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem.less new file mode 100644 index 00000000..f9f9d214 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayArrow.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck.css"); + +@import "variables.less"; +@import "../common/ListItem.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem_rtl-compat.css new file mode 100644 index 00000000..f3e90656 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem_rtl-compat.css @@ -0,0 +1,6 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem_rtl.css new file mode 100644 index 00000000..f1009b9f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem_rtl.css @@ -0,0 +1,40 @@ + +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonDarkBlueCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem_rtl.less new file mode 100644 index 00000000..3d3e9eb2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ListItem_rtl.less @@ -0,0 +1,4 @@ +@import url("../common/domButtons/DomButtonGrayArrow_rtl.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck_rtl.css"); + +@import "../common/ListItem_rtl.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Opener-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Opener-compat.css new file mode 100644 index 00000000..0ad9af9c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Opener-compat.css @@ -0,0 +1,53 @@ + +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 6px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #424142; + border-bottom: 1px solid #424142; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Opener.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Opener.css new file mode 100644 index 00000000..5306cdf3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Opener.css @@ -0,0 +1,241 @@ + +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #000000; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 6px; + background-color: #424142; + background-image: -webkit-gradient(linear, left top, left bottom, from(#4a4d52), to(#292c31)); + background-image: linear-gradient(to bottom, #4a4d52 0%, #292c31 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #000000; + background-image: none; + color: #ffffff; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #000000; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #000000; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #000000; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #000000; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #4a4d52; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #4a4d52; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #4a4d52; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #292c31; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Overlay-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Overlay-compat.css new file mode 100644 index 00000000..6a884395 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Overlay-compat.css @@ -0,0 +1,14 @@ + +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Overlay.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Overlay.css new file mode 100644 index 00000000..1e4ce0e2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Overlay.css @@ -0,0 +1,90 @@ +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #000000; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Overlay.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Overlay.less new file mode 100644 index 00000000..e49ea9eb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Overlay.less @@ -0,0 +1,5 @@ +@import url("../common/transitions/coverv.css"); +@import url("../common/transitions/revealv.css"); + +@import "variables.less"; +@import "../common/Overlay.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/PageIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/PageIndicator-compat.css new file mode 100644 index 00000000..29d4f8ab --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/PageIndicator-compat.css @@ -0,0 +1,4 @@ + +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/PageIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/PageIndicator.css new file mode 100644 index 00000000..0b40e78d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/PageIndicator.css @@ -0,0 +1,23 @@ + +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressBar-compat.css new file mode 100644 index 00000000..9fbf3a39 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressBar-compat.css @@ -0,0 +1,5 @@ + +.dj_gecko .mblProgressBarProgress { + -moz-transition-property: width; + -moz-transition-duration: 0.25s; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressBar.css new file mode 100644 index 00000000..2e86dc38 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressBar.css @@ -0,0 +1,29 @@ + +.mblProgressBar { + position: relative; + height: 22px; + background-color: white; + padding: 1px; +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + background-color: #298eff; + height: 22px; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: 2px; + font-size: 18px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressIndicator-compat.css new file mode 100644 index 00000000..091d2c35 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressIndicator-compat.css @@ -0,0 +1,83 @@ + +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressIndicator.css new file mode 100644 index 00000000..24420021 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressIndicator.css @@ -0,0 +1,157 @@ + +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressIndicator_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressIndicator_rtl.css new file mode 100644 index 00000000..e611fc4e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ProgressIndicator_rtl.css @@ -0,0 +1,14 @@ + +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 0px; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RadioButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RadioButton-compat.css new file mode 100644 index 00000000..8cbbb674 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RadioButton-compat.css @@ -0,0 +1,32 @@ + +.mblRadioButton { + background-image: url(compat/button-bg.png); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.dj_gecko .mblRadioButton { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RadioButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RadioButton.css new file mode 100644 index 00000000..4d23b801 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RadioButton.css @@ -0,0 +1,49 @@ + +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #0851ad; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRect-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRect-compat.css new file mode 100644 index 00000000..5f259cf1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRect-compat.css @@ -0,0 +1,72 @@ + +.mblRoundRect.mblShadow { + box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 6px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #c6c7c6; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #c6c7c6; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #c6c7c6; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #c6c7c6; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRect.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRect.css new file mode 100644 index 00000000..ee32e5e2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRect.css @@ -0,0 +1,13 @@ + +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #c6c7c6; + border-radius: 6px; + background-color: #ffffff; + color: black; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); + box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectCategory-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectCategory-compat.css new file mode 100644 index 00000000..776cc95b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectCategory-compat.css @@ -0,0 +1,5 @@ + +.mblRoundRectCategory { + -moz-border-radius-topleft: 6px; + -moz-border-radius-topright: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectCategory.css new file mode 100644 index 00000000..e0cd4e6b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectCategory.css @@ -0,0 +1,12 @@ + +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: black; + text-shadow: #ffffff 0 1px 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectCategory_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectCategory_rtl.css new file mode 100644 index 00000000..8e8a8e88 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectCategory_rtl.css @@ -0,0 +1,4 @@ + +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectList-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectList-compat.css new file mode 100644 index 00000000..e0c01718 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectList-compat.css @@ -0,0 +1,77 @@ + +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 6px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 6px; + -moz-border-radius-topright: 6px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 6px; + -moz-border-radius-bottomright: 6px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #c6c7c6; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #c6c7c6; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #c6c7c6; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #c6c7c6; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectList.css new file mode 100644 index 00000000..b1705c56 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/RoundRectList.css @@ -0,0 +1,19 @@ + +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #c6c7c6; + border-radius: 6px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ScrollablePane.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ScrollablePane.css new file mode 100644 index 00000000..425b9209 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ScrollablePane.css @@ -0,0 +1,12 @@ + +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SearchBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SearchBox-compat.css new file mode 100644 index 00000000..9a3d3bd2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SearchBox-compat.css @@ -0,0 +1,22 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 6px; +} +.mblSearchBox { + height: auto; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SearchBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SearchBox.css new file mode 100644 index 00000000..6c56738d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SearchBox.css @@ -0,0 +1,63 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 6px; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: #000000; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid #000000; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 1em; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #000000), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #000000), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SimpleDialog-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SimpleDialog-compat.css new file mode 100644 index 00000000..a121367d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SimpleDialog-compat.css @@ -0,0 +1,4 @@ + +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SimpleDialog.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SimpleDialog.css new file mode 100644 index 00000000..0a560ac3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SimpleDialog.css @@ -0,0 +1,42 @@ + +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 8px; + width: 262px; +} +.mblSimpleDialogDecoration { + border-radius: 6px; + background-color: #000000; + border: none; + color: white; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 7px 0 14px; + width: 262px; +} +.mblSimpleDialogText { + margin: 7px 0 14px; + width: 262px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Slider-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Slider-compat.css new file mode 100644 index 00000000..aea7282d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Slider-compat.css @@ -0,0 +1,40 @@ + +.mblSlider { + background-image: url(compat/slider-h-bg.png); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url(compat/slider-h-bar-bg.png); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url(compat/slider-handle-bg.png); +} +.mblSliderV { + background-color: #f7f3f7; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #088eef; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -moz-linear-gradient(top, #f7f3f7 0%, #ced3ce 50%, #cec5d6 100%); + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblSliderHandle { + background-image: -moz-linear-gradient(top, #fafafa 0%, #bbbbbb 50%, #999999 100%); +} +.dj_ff3 .mblSlider { + -moz-border-radius: 6px; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 6px; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Slider.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Slider.css new file mode 100644 index 00000000..49f5a3c4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Slider.css @@ -0,0 +1,65 @@ + +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 6px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f3f7), to(#cec5d6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7f3f7 0%, #ced3ce 50%, #cec5d6 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border-color: #b0b0b0; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 6px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 6px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fafafa), to(#999999), color-stop(0.5, #bbbbbb)); + background-image: linear-gradient(to bottom, #fafafa 0%, #bbbbbb 50%, #999999 100%); + border-color: #9d9d9d; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel-compat.css new file mode 100644 index 00000000..4d605d58 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel-compat.css @@ -0,0 +1,36 @@ +.mblSpinWheel { + background-image: url(../common/compat/spinwheel-bg.png); +} +.mblSpinWheelBar { + background-image: url(../common/compat/spinwheel-bar.png); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel.css new file mode 100644 index 00000000..ba26bc8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel.css @@ -0,0 +1,77 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel_rtl-compat.css new file mode 100644 index 00000000..98aab55f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel_rtl-compat.css @@ -0,0 +1,4 @@ +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel_rtl.css new file mode 100644 index 00000000..2f94024c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/SpinWheel_rtl.css @@ -0,0 +1,5 @@ + +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch-compat.css new file mode 100644 index 00000000..8a5e4503 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch-compat.css @@ -0,0 +1,109 @@ + +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #f7f3f7 0%, #ced3ce 50%, #cec5d6 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #fafafa 0%, #bbbbbb 50%, #999999 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 6px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 6px; + background-image: url(compat/switch-square-k.gif); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round1-k.gif); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round2-k.gif); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc1-k.gif); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc2-k.gif); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 6px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 6px; + background-image: url(compat/switch-square-k.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch-compat.less new file mode 100644 index 00000000..f15894c8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch-compat.less @@ -0,0 +1,7 @@ +@import "variables.less"; +@import "../common/Switch-compat.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwSquareShape-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch.css new file mode 100644 index 00000000..c7800cf3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch.css @@ -0,0 +1,221 @@ + +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 16px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f3f7), to(#cec5d6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7f3f7 0%, #ced3ce 50%, #cec5d6 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fafafa), to(#999999), color-stop(0.5, #bbbbbb)); + background-image: linear-gradient(to bottom, #fafafa 0%, #bbbbbb 50%, #999999 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(156, 172, 192, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 6px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 6px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 6px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 6px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch.less new file mode 100644 index 00000000..51d10adc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch.less @@ -0,0 +1,7 @@ +@import "variables.less"; +@import "../common/Switch.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwSquareShape-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch_rtl-compat.css new file mode 100644 index 00000000..a3346662 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch_rtl-compat.css @@ -0,0 +1,37 @@ + +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch_rtl.css new file mode 100644 index 00000000..51bc7180 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Switch_rtl.css @@ -0,0 +1,110 @@ + +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar-compat.css new file mode 100644 index 00000000..ba660dae --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar-compat.css @@ -0,0 +1,60 @@ + +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-image: none; + background-color: #212421; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url(compat/heading-bg.png); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url(compat/tab-seg-button-bg.png); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url(compat/tab-seg-sel-button-bg.png); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 6px; + -moz-border-radius-bottomleft: 6px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 6px; + -moz-border-radius-bottomright: 6px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url(compat/tab-slim-bar-bg.png); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url(compat/tab-tall-bar-bg.png); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar-compat.less new file mode 100644 index 00000000..c0476f34 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar-compat.less @@ -0,0 +1,3 @@ +@import "variables.less"; +@import "../common/TabBar-compat.less"; +@import "../common/domButtons/DomButtonWhiteCross-compat.css"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar.css new file mode 100644 index 00000000..a2be8e2b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar.css @@ -0,0 +1,281 @@ + +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #63696b; + border-bottom: 1px solid #292c31; + text-shadow: none; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10)); + background-image: linear-gradient(to bottom, #181818 0%, #100c10 100%); +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + color: #979797; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#484848), to(#242424), color-stop(0.5, #353535)); + background-image: linear-gradient(to bottom, #484848 0%, #353535 50%, #242424 100%); +} +.mblTabBarTabBar .mblTabBarButtonSelected .mblTabBarButtonLabel { + color: white; +} +.mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#4a4d52), to(#292c31)); + background-image: linear-gradient(to bottom, #4a4d52 0%, #292c31 100%); +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-style: solid; + border-color: #7b7d84 #182018 black #393c39; + color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#4a4d52), to(#292c31)); + background-image: linear-gradient(to bottom, #4a4d52 0%, #292c31 100%); +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: #000000; + background-color: #ced3ce; + + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + color: #ffffff; + background-color: #0869c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #292c31; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #000000 100%); +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; + background-color: #212421; + background-image: none; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); + background-color: #636363; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar.less new file mode 100644 index 00000000..4066ecc1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar.less @@ -0,0 +1,3 @@ +@import "variables.less"; +@import "../common/TabBar.less"; +@import "../common/domButtons/DomButtonWhiteCross.css"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar_rtl-compat.css new file mode 100644 index 00000000..800a4a13 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar_rtl-compat.css @@ -0,0 +1,19 @@ + +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 6px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 6px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 6px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 6px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar_rtl.css new file mode 100644 index 00000000..ef219097 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TabBar_rtl.css @@ -0,0 +1,83 @@ + +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 6px; + border-top-left-radius: 0px; + border-bottom-right-radius: 6px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 6px; + border-top-right-radius: 0px; + border-bottom-left-radius: 6px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextArea-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextArea-compat.css new file mode 100644 index 00000000..a7e93bfd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextArea-compat.css @@ -0,0 +1,7 @@ + +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextArea.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextArea.css new file mode 100644 index 00000000..3dcc1ed4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextArea.css @@ -0,0 +1,13 @@ + +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 6px; +} +.mblExpandingTextArea { + margin: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextBox-compat.css new file mode 100644 index 00000000..0ed5bca3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextBox-compat.css @@ -0,0 +1,4 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextBox.css new file mode 100644 index 00000000..47cfa023 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TextBox.css @@ -0,0 +1,10 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TimePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TimePicker.css new file mode 100644 index 00000000..bb811e54 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/TimePicker.css @@ -0,0 +1,178 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #fafafa), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #ffffff)); + background-image: linear-gradient(to bottom, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font: 24px/44px Helvetica, sans-serif; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToggleButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToggleButton-compat.css new file mode 100644 index 00000000..cc60c6c0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToggleButton-compat.css @@ -0,0 +1,42 @@ + +.mblToggleButton { + background-image: url(compat/button-bg.png); +} +.mblToggleButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblToggleButtonChecked { + background-image: url(compat/button-chk-bg.png); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblToggleButton { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblToggleButtonChecked { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 6px; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url(compat/togglebutton-chk-mark-bg.png); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToggleButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToggleButton.css new file mode 100644 index 00000000..aa875ef0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToggleButton.css @@ -0,0 +1,57 @@ + +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 6px; + font-size: 16px; + color: black; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; +} +.mblToggleButtonChecked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + color: black; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #0851ad; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected:after { + border-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToggleButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToggleButton_rtl.css new file mode 100644 index 00000000..f6145188 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToggleButton_rtl.css @@ -0,0 +1,7 @@ + +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToolBarButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToolBarButton-compat.css new file mode 100644 index 00000000..1e61daa9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToolBarButton-compat.css @@ -0,0 +1,63 @@ + +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 5px; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url(compat/arrow-button-head-sel.png); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-right-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url(compat/arrow-button-right-head-sel.png); +} +.dj_ie .mblToolBarButtonBody { + background-image: url(compat/arrow-button-bg.png); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url(compat/arrow-button-bg-sel.png); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToolBarButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToolBarButton.css new file mode 100644 index 00000000..d508f523 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToolBarButton.css @@ -0,0 +1,90 @@ + +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1) rotate(45deg); + transform: scale(0.7, 1) rotate(45deg); + border: 1px solid #9cacc0; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 1px; + border: 1px inset #9cacc0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 0px; + border: 1px inset #9cacc0; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 5px; + border: 1px outset #9cacc0; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblHeading .mblToolBarButtonBody { + border: 1px inset #9cacc0; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToolBarButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToolBarButton_rtl.css new file mode 100644 index 00000000..fd451779 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ToolBarButton_rtl.css @@ -0,0 +1,18 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Tooltip-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Tooltip-compat.css new file mode 100644 index 00000000..0825f8b5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Tooltip-compat.css @@ -0,0 +1,40 @@ + +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 6px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #424142; + border-bottom: 1px solid #424142; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Tooltip.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Tooltip.css new file mode 100644 index 00000000..80d1b728 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/Tooltip.css @@ -0,0 +1,151 @@ + +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 6px; + background-color: #424142; + background-image: -webkit-gradient(linear, left top, left bottom, from(#4a4d52), to(#292c31)); + background-image: linear-gradient(to bottom, #4a4d52 0%, #292c31 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #000000; + background-image: none; + color: #ffffff; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #000000; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #000000; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #000000; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #000000; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #4a4d52; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #4a4d52; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #4a4d52; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #292c31; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ValuePicker-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ValuePicker-compat.css new file mode 100644 index 00000000..893af262 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ValuePicker-compat.css @@ -0,0 +1,19 @@ + +.mblValuePickerSlotButton { + background-image: url(compat/valuepicker-button-bg.png); +} +.mblValuePickerSlotButtonSelected { + background-color: #0869c6; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: -moz-linear-gradient(top, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ValuePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ValuePicker.css new file mode 100644 index 00000000..1377cdf5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ValuePicker.css @@ -0,0 +1,102 @@ + +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #fafafa), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #ffffff)); + background-image: linear-gradient(to bottom, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font: 24px/44px Helvetica, sans-serif; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ValuePicker.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ValuePicker.less new file mode 100644 index 00000000..1561b85c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/ValuePicker.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayPlus.css"); +@import url("../common/domButtons/DomButtonGrayMinus.css"); + +@import "variables.less"; +@import "../common/ValuePicker.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/View.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/View.css new file mode 100644 index 00000000..0b4acef2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/View.css @@ -0,0 +1,123 @@ +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: black; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/View.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/View.less new file mode 100644 index 00000000..910651f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/View.less @@ -0,0 +1,6 @@ +@import url("../common/transitions/slide.css"); +@import url("../common/transitions/flip.css"); +@import url("../common/transitions/fade.css"); + +@import "variables.less"; +@import "../common/View.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base-compat.css new file mode 100644 index 00000000..15cd1242 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base-compat.css @@ -0,0 +1,453 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #4a4d52 0%, #292c31 100%); +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 5px; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 6px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #c6c7c6; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #c6c7c6; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #c6c7c6; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #c6c7c6; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 6px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 6px; + -moz-border-radius-topright: 6px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 6px; + -moz-border-radius-bottomright: 6px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #c6c7c6; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #c6c7c6; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #c6c7c6; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #c6c7c6; + margin: 0 5px; +} +.mblRoundRectCategory { + -moz-border-radius-topleft: 6px; + -moz-border-radius-topright: 6px; +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #0869c6; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #f7f3f7 0%, #ced3ce 50%, #cec5d6 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #fafafa 0%, #bbbbbb 50%, #999999 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 6px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 6px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 6px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 6px; + background-image: url("compat/switch-square-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base.css new file mode 100644 index 00000000..ce14012a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base.css @@ -0,0 +1,903 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 18px; +} +.mblBackground { + background-color: #dedfde; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorDefault { + color: #000000; + background-color: #ced3ce; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to right bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #0869c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to right bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#4a4d52), to(#292c31)); + background-image: linear-gradient(to bottom, #4a4d52 0%, #292c31 100%); + border-top: 1px solid #63696b; + border-bottom: 1px solid #292c31; + color: white; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: black; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1) rotate(45deg); + transform: scale(0.7, 1) rotate(45deg); + border: 1px solid #9cacc0; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 1px; + border: 1px inset #9cacc0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 0px; + border: 1px inset #9cacc0; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 5px; + border: 1px outset #9cacc0; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblHeading .mblToolBarButtonBody { + border: 1px inset #9cacc0; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #c6c7c6; + border-radius: 6px; + background-color: #ffffff; + color: black; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); + box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 29px; + border-top: 1px solid #313439; + border-bottom: 1px solid #adaaad; + background-color: white; + color: #7b7d84; + line-height: 29px; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: black; + text-shadow: #ffffff 0 1px 0; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #c6c7c6; + border-radius: 6px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: white; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-width: 0; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 59px; + list-style-type: none; + line-height: 59px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #dedfde; + font-size: 18px; + color: black; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #0869c6; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 15px; + margin-bottom: -15px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 15px; + margin-bottom: -15px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 15px; + margin-bottom: -15px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: black; + margin-top: 19px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: #7b7d48; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 16px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f3f7), to(#cec5d6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7f3f7 0%, #ced3ce 50%, #cec5d6 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fafafa), to(#999999), color-stop(0.5, #bbbbbb)); + background-image: linear-gradient(to bottom, #fafafa 0%, #bbbbbb 50%, #999999 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(156, 172, 192, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 6px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 6px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 6px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 6px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base_rtl-compat.css new file mode 100644 index 00000000..37224447 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base_rtl-compat.css @@ -0,0 +1,42 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base_rtl.css new file mode 100644 index 00000000..ef6f7886 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/base_rtl.css @@ -0,0 +1,182 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 0px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonDarkBlueCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 0px; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry-compat.css new file mode 100644 index 00000000..fce050d8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry-compat.css @@ -0,0 +1,1241 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #4a4d52 0%, #292c31 100%); +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 5px; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 6px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #c6c7c6; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #c6c7c6; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #c6c7c6; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #c6c7c6; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 6px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 6px; + -moz-border-radius-topright: 6px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 6px; + -moz-border-radius-bottomright: 6px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #c6c7c6; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #c6c7c6; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #c6c7c6; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #c6c7c6; + margin: 0 5px; +} +.mblRoundRectCategory { + -moz-border-radius-topleft: 6px; + -moz-border-radius-topright: 6px; +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #0869c6; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #f7f3f7 0%, #ced3ce 50%, #cec5d6 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #fafafa 0%, #bbbbbb 50%, #999999 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 6px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 6px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 6px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 6px; + background-image: url("compat/switch-square-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} +.mblDomButtonWhitePlus { + background-image: url("../common/domButtons/compat/mblDomButtonWhitePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhitePlus div { + display: none; +} +.mblDomButtonWhiteMinus { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteMinus div { + display: none; +} +.mblDomButtonWhiteUpArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteUpArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteUpArrow div { + display: none; +} +.mblDomButtonWhiteDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteDownArrow div { + display: none; +} +.mblDomButtonWhiteSearch { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteSearch.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteSearch div { + display: none; +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonCheckboxOn { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOn.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOn div { + display: none; +} +.mblDomButtonCheckboxOff { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOff.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOff div { + display: none; +} +.mblDomButtonBlueCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleMinus > div { + display: none; +} +.mblDomButtonBlueCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCirclePlus > div { + display: none; +} +.mblDomButtonBlueCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleArrow > div { + display: none; +} +.mblDomButtonRedCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleMinus > div { + display: none; +} +.mblDomButtonRedCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCirclePlus > div { + display: none; +} +.mblDomButtonRedCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleArrow > div { + display: none; +} +.mblDomButtonGreenCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleMinus > div { + display: none; +} +.mblDomButtonGreenCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCirclePlus > div { + display: none; +} +.mblDomButtonGreenCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleArrow > div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblDomButtonGrayRoundRect > div { + -moz-border-radius: 4px; +} +.mblDomButtonSilverCircleDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleDownArrow > div { + display: none; +} +.mblDomButtonSilverCircleGreenButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenButton > div { + display: none; +} +.mblDomButtonSilverCircleGrayButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGrayButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGrayButton > div { + display: none; +} +.mblDomButtonSilverCircleOrangeButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleOrangeButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleOrangeButton > div { + display: none; +} +.mblDomButtonSilverCircleGreenPlus { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenPlus > div { + display: none; +} +.mblDomButtonSilverCircleRedCross { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleRedCross > div { + display: none; +} +.mblDomButtonBlueBall { + background-image: url("../common/domButtons/compat/mblDomButtonBlueBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueBall > div { + display: none; +} +.mblDomButtonGreenBall { + background-image: url("../common/domButtons/compat/mblDomButtonGreenBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenBall > div { + display: none; +} +.mblDomButtonOrangeBall { + background-image: url("../common/domButtons/compat/mblDomButtonOrangeBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonOrangeBall > div { + display: none; +} +.mblDomButtonRedBall { + background-image: url("../common/domButtons/compat/mblDomButtonRedBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedBall > div { + display: none; +} +.mblDomButtonYellowStar { + background-image: url("../common/domButtons/compat/mblDomButtonYellowStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonYellowStar > div { + display: none; +} +.mblDomButtonGrayStar { + background-image: url("../common/domButtons/compat/mblDomButtonGrayStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayStar > div { + display: none; +} +.mblDomButtonGrayCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonGrayCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonRedCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonGrayKnob { + background-image: url("../common/domButtons/compat/mblDomButtonGrayKnob.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayKnob > div { + display: none; +} +.mblDomButtonGrayPlus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayPlus div { + display: none; +} +.mblDomButtonGrayMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayMinus div { + display: none; +} +.mblAccordionTitleSelected { + background-color: #0869c6; +} +.dj_gecko .mblAccordionTitleSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.mblButton { + background-image: url("compat/button-bg.png"); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblBlueButton { + background-image: url("compat/blue-button-bg.png"); +} +.mblBlueButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.mblRedButton { + background-image: url("compat/red-button-bg.png"); +} +.mblRedButtonSelected { + background-image: url("compat/red-button-sel-bg.png"); +} +.dj_gecko .mblButton { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblBlueButton { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblBlueButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblRedButton { + background-image: -moz-linear-gradient(top, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); +} +.dj_gecko .mblRedButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ff3 .mblButton { + -moz-border-radius: 6px; +} +.mblCheckBox { + background-image: url("compat/button-bg.png"); +} +.mblCheckBoxSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblCheckBox { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 6px; +} +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: none; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url("compat/icon-content-heading-bg.png"); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} +.mblIconMenuItemSel { + background-color: #0869c6; +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 6px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 0; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 0; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 0; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 0; +} +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 6px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #424142; + border-bottom: 1px solid #424142; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} +.mblRadioButton { + background-image: url("compat/button-bg.png"); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.dj_gecko .mblRadioButton { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 6px; +} +.mblSearchBox { + height: auto; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 6px; +} +.mblSlider { + background-image: url("compat/slider-h-bg.png"); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url("compat/slider-h-bar-bg.png"); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url("compat/slider-handle-bg.png"); +} +.mblSliderV { + background-color: #f7f3f7; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #088eef; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -moz-linear-gradient(top, #f7f3f7 0%, #ced3ce 50%, #cec5d6 100%); + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblSliderHandle { + background-image: -moz-linear-gradient(top, #fafafa 0%, #bbbbbb 50%, #999999 100%); +} +.dj_ff3 .mblSlider { + -moz-border-radius: 6px; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 6px; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 6px; +} +.mblSpinWheel { + background-image: url("../common/compat/spinwheel-bg.png"); +} +.mblSpinWheelBar { + background-image: url("../common/compat/spinwheel-bar.png"); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-image: none; + background-color: #212421; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url("compat/heading-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url("compat/tab-seg-button-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url("compat/tab-seg-sel-button-bg.png"); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 6px; + -moz-border-radius-bottomleft: 6px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 6px; + -moz-border-radius-bottomright: 6px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url("compat/tab-slim-bar-bg.png"); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url("compat/tab-tall-bar-bg.png"); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 6px; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 6px; +} +.mblToggleButton { + background-image: url("compat/button-bg.png"); +} +.mblToggleButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblToggleButtonChecked { + background-image: url("compat/button-chk-bg.png"); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblToggleButton { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblToggleButtonChecked { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 6px; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url("compat/togglebutton-chk-mark-bg.png"); +} +.mblValuePickerSlotButton { + background-image: url("compat/valuepicker-button-bg.png"); +} +.mblValuePickerSlotButtonSelected { + background-color: #0869c6; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: -moz-linear-gradient(top, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry.css new file mode 100644 index 00000000..177410e2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry.css @@ -0,0 +1,5437 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 18px; +} +.mblBackground { + background-color: #dedfde; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorDefault { + color: #000000; + background-color: #ced3ce; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to right bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #0869c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to right bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#4a4d52), to(#292c31)); + background-image: linear-gradient(to bottom, #4a4d52 0%, #292c31 100%); + border-top: 1px solid #63696b; + border-bottom: 1px solid #292c31; + color: white; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: black; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1) rotate(45deg); + transform: scale(0.7, 1) rotate(45deg); + border: 1px solid #9cacc0; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 1px; + border: 1px inset #9cacc0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 0px; + border: 1px inset #9cacc0; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 5px; + border: 1px outset #9cacc0; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblHeading .mblToolBarButtonBody { + border: 1px inset #9cacc0; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #c6c7c6; + border-radius: 6px; + background-color: #ffffff; + color: black; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); + box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 29px; + border-top: 1px solid #313439; + border-bottom: 1px solid #adaaad; + background-color: white; + color: #7b7d84; + line-height: 29px; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: black; + text-shadow: #ffffff 0 1px 0; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #c6c7c6; + border-radius: 6px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 6px; + border-top-right-radius: 6px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: white; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-width: 0; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 59px; + list-style-type: none; + line-height: 59px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #dedfde; + font-size: 18px; + color: black; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #0869c6; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 15px; + margin-bottom: -15px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 15px; + margin-bottom: -15px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 15px; + margin-bottom: -15px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: black; + margin-top: 19px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: #7b7d48; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 16px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f3f7), to(#cec5d6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7f3f7 0%, #ced3ce 50%, #cec5d6 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fafafa), to(#999999), color-stop(0.5, #bbbbbb)); + background-image: linear-gradient(to bottom, #fafafa 0%, #bbbbbb 50%, #999999 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(156, 172, 192, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 6px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 6px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 6px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 6px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} +.mblDomButtonWhitePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhitePlus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhitePlus > div > div { + + position: absolute; + top: -6px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteMinus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteUpArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteUpArrow div { + position: absolute; + left: 0px; + clip: rect(0px 30px 20px 0px); +} +.mblDomButtonWhiteUpArrow > div > div { + top: 9px; + left: 4px; + width: 20px; + height: 20px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteDownArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteDownArrow div { + position: absolute; + left: 0px; + clip: rect(7px 50px 40px 0px); +} +.mblDomButtonWhiteDownArrow > div > div { + top: -10px; + left: 2px; + width: 25px; + height: 25px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteSearch { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteSearch > div { + position: absolute; + top: 5px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + border: 2px solid white; + border-radius: 6px; +} +.mblDomButtonWhiteSearch > div > div { + position: absolute; + top: 10px; + left: 7px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border: none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 0px; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonCheckboxOn { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOn > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOn > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: none; + border-bottom: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonCheckboxOff { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOff > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOff > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: none; + border-top: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonBlueCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlueCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonBlueCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonRedCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonGreenCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblDomButtonGrayRoundRect { + position: relative; + width: 29px; + height: 29px; + text-align: right; +} +.mblDomButtonGrayRoundRect > div { + position: absolute; + right: 0px; + display: inline; + padding: 0px 5px; + top: 7px; + color: white; + font-family: Helvetica; + font-size: 12px; + border-radius: 4px; + background-color: #949ba5; + text-align: center; +} +.mblDomButtonGrayRoundRect > div > div { + display: none; +} +.mblDomButtonSilverCircleDownArrow { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleDownArrow > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div { + position: relative; + top: 3px; + left: 3px; + width: 20px; + height: 20px; + border-radius: 10px; + background: -webkit-gradient(linear, left top, left bottom, from(#979797), to(#616161)); + background: linear-gradient(to bottom, #979797 0%, #616161 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div > div { + position: absolute; + left: 0px; + clip: rect(6px 50px 40px 0px); +} +.mblDomButtonSilverCircleDownArrow > div > div > div > div { + position: absolute; + top: -5px; + left: 1px; + width: 18px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #d1d1d1; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.7) rotate(45deg); + transform: scaleX(0.7) rotate(45deg); +} +.mblDomButtonSilverCircleGreenButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #1b991c; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#17df25), to(#1ba51c)); + background: radial-gradient(6px at center, #17df25 0%, #1ba51c 100%); +} +.mblDomButtonSilverCircleGrayButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGrayButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGrayButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #aeaeae; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#d4d4d4), to(#bababa)); + background: linear-gradient(to bottom, #d4d4d4 0%, #bababa 100%); +} +.mblDomButtonSilverCircleOrangeButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleOrangeButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleOrangeButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #ca701a; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#ff7a07), to(#e66b03)); + background: radial-gradient(6px at center, #ff7a07 0%, #e66b03 100%); +} +.mblDomButtonSilverCircleGreenPlus { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenPlus > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenPlus > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleGreenPlus > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleRedCross { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleRedCross > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleRedCross > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonSilverCircleRedCross > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; +} +.mblDomButtonBlueBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonBlueBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#84aff4), to(#2758b3)); + background: linear-gradient(to bottom, #84aff4 0%, #2758b3 100%); +} +.mblDomButtonGreenBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonGreenBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#59e738), to(#0aa908)); + background: linear-gradient(to bottom, #59e738 0%, #0aa908 100%); +} +.mblDomButtonOrangeBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonOrangeBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#f9e20a), to(#ff6b0a)); + background: linear-gradient(to bottom, #f9e20a 0%, #ff6b0a 100%); +} +.mblDomButtonRedBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonRedBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#ec9b9d), to(#d73c3f)); + background: linear-gradient(to bottom, #ec9b9d 0%, #d73c3f 100%); +} +.mblDomButtonTransparent19 { + position: relative; + width: 19px; + height: 19px; +} +.mblDomButtonTransparent29 { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonTransparent30 { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonYellowStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonYellowStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonYellowStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #cd853f; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonYellowStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonYellowStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonGrayStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #8c8e8c; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonGrayStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonGrayStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonGrayCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + border-radius: 2px; +} +.mblDomButtonRedCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonRedCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + border-radius: 2px; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblDomButtonGrayKnob { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayKnob > div { + + position: absolute; + top: 6px; + left: 2px; + width: 23px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDissolve.mblOut { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveOut; + animation-name: mblDissolveOut; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +.mblDissolve.mblIn { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveIn; + animation-name: mblDissolveIn; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +@-webkit-keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-webkit-keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +.mblCover { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCover.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCover.mblOut { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblCover.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblCover.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblCover.mblOut.mblTransition, +.mblCover.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblCover.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCube { + -webkit-animation-duration: 0.8s; + animation-duration: 0.8s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblCube.mblOut { + -webkit-animation-name: mblCubeOut; + animation-name: mblCubeOut; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +.mblCube.mblIn { + -webkit-animation-name: mblCubeIn; + animation-name: mblCubeIn; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +@-webkit-keyframes mblCubeOut { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOut { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeIn { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeIn { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse; + animation-name: mblCubeOutReverse; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +.mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse; + animation-name: mblCubeInReverse; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOutReverse { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeInReverse { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeInReverse { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.dj_ios .mblCube { + -webkit-transform-style: preserve-3d !important; +} +.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone; + animation-name: mblCubeOut_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone; + animation-name: mblCubeIn_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@keyframes mblCubeOut_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeIn_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeIn_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone_l; + animation-name: mblCubeOut_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone_l; + animation-name: mblCubeIn_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@keyframes mblCubeOut_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeIn_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeIn_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone; + animation-name: mblCubeOutReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone; + animation-name: mblCubeInReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@keyframes mblCubeOutReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeInReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone_l; + animation-name: mblCubeOutReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone_l; + animation-name: mblCubeInReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@keyframes mblCubeOutReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeInReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad; + animation-name: mblCubeOut_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad; + animation-name: mblCubeIn_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@keyframes mblCubeOut_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeIn_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeIn_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad_l; + animation-name: mblCubeOut_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad_l; + animation-name: mblCubeIn_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@keyframes mblCubeOut_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeIn_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeIn_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad; + animation-name: mblCubeOutReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad; + animation-name: mblCubeInReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@keyframes mblCubeOutReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeInReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad_l; + animation-name: mblCubeOutReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad_l; + animation-name: mblCubeInReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@keyframes mblCubeOutReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeInReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.mblReveal { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblReveal.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblReveal.mblOut { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblTransition { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblReveal.mblIn { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblReveal.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblReveal.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSlidev { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlidev.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlidev.mblOut.mblReverse.mblTransition, +.mblSlidev.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblSlidev.mblOut.mblTransition, +.mblSlidev.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblSlidev.mblOut, +.mblSlidev.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblSlidev.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSwirl.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlOut; + animation-name: mblSwirlOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlIn; + animation-name: mblSwirlIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblOut.mblReverse { + -webkit-animation-name: mblSwirlOutReverse; + animation-name: mblSwirlOutReverse; +} +@-webkit-keyframes mblSwirlOut { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(-360deg) scale(0); + } +} +@keyframes mblSwirlOut { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(-360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlOutReverse { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(360deg) scale(0); + } +} +@keyframes mblSwirlOutReverse { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblSwirlIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutOut; + animation-name: mblScaleOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblScaleOut.mblOut { + -webkit-animation-name: mblScaleOutOutAndroid; + animation-name: mblScaleOutOutAndroid; +} +.mblScaleOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutIn; + animation-name: mblScaleOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblScaleOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblScaleOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblScaleOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblScaleOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblScaleOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInOut; + animation-name: mblScaleInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblScaleIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInIn; + animation-name: mblScaleInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblScaleIn.mblIn { + -webkit-animation-name: mblScaleInInAndroid; + animation-name: mblScaleInInAndroid; +} +@-webkit-keyframes mblScaleInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblScaleInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblScaleInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblScaleInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblSwap { + -webkit-animation-duration: 0.6s; + animation-duration: 0.6s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblSwap.mblOut { + -webkit-animation-name: mblSwapOut; + animation-name: mblSwapOut; +} +.mblSwap.mblIn { + -webkit-animation-name: mblSwapIn; + animation-name: mblSwapIn; +} +.mblSwap.mblOut.mblReverse { + -webkit-animation-name: mblSwapOutReverse; + animation-name: mblSwapOutReverse; +} +.mblSwap.mblIn.mblReverse { + -webkit-animation-name: mblSwapInReverse; + animation-name: mblSwapInReverse; +} +@-webkit-keyframes mblSwapOut { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOut { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapIn { + 0% { + z-index: -100; + -webkit-transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapIn { + 0% { + z-index: -100; + transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblSwapOutReverse { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOutReverse { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapInReverse { + 0% { + z-index: -100; + -webkit-transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapInReverse { + 0% { + z-index: -100; + transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +.mblZoomOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutOut; + animation-name: mblZoomOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblZoomOut.mblOut { + -webkit-animation-name: mblZoomOutOutAndroid; + animation-name: mblZoomOutOutAndroid; +} +.mblZoomOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutIn; + animation-name: mblZoomOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblZoomOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblZoomOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblZoomOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblZoomOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblZoomOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblZoomIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInOut; + animation-name: mblZoomInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblZoomIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInIn; + animation-name: mblZoomInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblZoomIn.mblIn { + -webkit-animation-name: mblZoomInInAndroid; + animation-name: mblZoomInInAndroid; +} +@-webkit-keyframes mblZoomInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblZoomInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblZoomInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblZoomInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblAccordion { + border-style: outset; + border-width: 1px; + border-color: #9cacc0; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #c6c7c6; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + border-top: 1px outset #9cacc0; + background-color: white; +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: #000000; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + border-bottom: 1px outset #9cacc0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; +} +.mblAccordionTitleSelected .mblAccordionTitleAnchor { + color: white; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 6px; + color: black; + font-size: 16px; +} +.mblButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + color: white; +} +.mblBlueButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115), color-stop(0.5, #ff4d25), color-stop(0.5, #ed4d15)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); + color: white; +} +.mblRedButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; + border-radius: 3px; +} +.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #0851ad; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblCheckBoxChecked.mblCheckBoxSelected::after, +.mblCheckBox:checked.mblCheckBoxSelected::after { + border-color: white; +} +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; + border-radius: 12px; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-radius: 12px; + background-color: black; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: black; + color: white; +} +.mblComboBoxMenuItemSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; + color: black; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 88px; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: 2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 6px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 8px; + background-color: #000000; + border: none; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid #000000; + border-bottom: 1px solid #000000; +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 0; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 0; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 16px; + color: white; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #000000; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 6px; + background-color: #424142; + background-image: -webkit-gradient(linear, left top, left bottom, from(#4a4d52), to(#292c31)); + background-image: linear-gradient(to bottom, #4a4d52 0%, #292c31 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #000000; + background-image: none; + color: #ffffff; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #000000; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #000000; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #000000; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #000000; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #4a4d52; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #4a4d52; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #4a4d52; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #292c31; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} +.mblProgressBar { + position: relative; + height: 22px; + background-color: white; + padding: 1px; +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + background-color: #298eff; + height: 22px; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: 2px; + font-size: 18px; +} +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #0851ad; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: white; +} +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 6px; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: #000000; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid #000000; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 1em; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #000000), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #000000), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 8px; + width: 262px; +} +.mblSimpleDialogDecoration { + border-radius: 6px; + background-color: #000000; + border: none; + color: white; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 7px 0 14px; + width: 262px; +} +.mblSimpleDialogText { + margin: 7px 0 14px; + width: 262px; +} +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 6px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f3f7), to(#cec5d6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7f3f7 0%, #ced3ce 50%, #cec5d6 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border-color: #b0b0b0; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 6px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 6px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fafafa), to(#999999), color-stop(0.5, #bbbbbb)); + background-image: linear-gradient(to bottom, #fafafa 0%, #bbbbbb 50%, #999999 100%); + border-color: #9d9d9d; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #63696b; + border-bottom: 1px solid #292c31; + text-shadow: none; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10)); + background-image: linear-gradient(to bottom, #181818 0%, #100c10 100%); +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + color: #979797; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#484848), to(#242424), color-stop(0.5, #353535)); + background-image: linear-gradient(to bottom, #484848 0%, #353535 50%, #242424 100%); +} +.mblTabBarTabBar .mblTabBarButtonSelected .mblTabBarButtonLabel { + color: white; +} +.mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#4a4d52), to(#292c31)); + background-image: linear-gradient(to bottom, #4a4d52 0%, #292c31 100%); +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-style: solid; + border-color: #7b7d84 #182018 black #393c39; + color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#4a4d52), to(#292c31)); + background-image: linear-gradient(to bottom, #4a4d52 0%, #292c31 100%); +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: #000000; + background-color: #ced3ce; + + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + color: #ffffff; + background-color: #0869c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #292c31; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #000000 100%); +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; + background-color: #212421; + background-image: none; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); + background-color: #636363; + background-image: none; +} +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 6px; +} +.mblExpandingTextArea { + margin: 2px; +} +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 6px; + font-size: 16px; + color: black; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; +} +.mblToggleButtonChecked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); + color: black; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #0851ad; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected:after { + border-color: white; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #fafafa), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #ffffff)); + background-image: linear-gradient(to bottom, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font: 24px/44px Helvetica, sans-serif; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry_rtl-compat.css new file mode 100644 index 00000000..f5fde3c3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry_rtl-compat.css @@ -0,0 +1,80 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 0px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 0px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 0px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 0px; + -moz-border-bottom-right-radius: 0px; +} +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 6px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 6px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 6px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 6px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry_rtl.css new file mode 100644 index 00000000..32c98776 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/blackberry_rtl.css @@ -0,0 +1,311 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 0px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonDarkBlueCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 0px; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: 0px; +} +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} +.mblComboBoxMenuItemRtl { + text-align: right; +} +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: 2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid #000000; +} +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 6px; + border-top-left-radius: 0px; + border-bottom-right-radius: 6px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 6px; + border-top-right-radius: 0px; + border-bottom-left-radius: 6px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/common-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/common-compat.css new file mode 100644 index 00000000..0f33c5e1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/common-compat.css @@ -0,0 +1,18 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #088eef 0%, #0869c6 50%, #0851ad 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/common.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/common.css new file mode 100644 index 00000000..6b2805f4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/common.css @@ -0,0 +1,60 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 18px; +} +.mblBackground { + background-color: #dedfde; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorDefault { + color: #000000; + background-color: #ced3ce; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#f7fbf7), to(#cecfd6), color-stop(0.5, #ced3ce)); + background-image: linear-gradient(to right bottom, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #0869c6; + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to right bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-bg-sel.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-bg-sel.png new file mode 100644 index 0000000000000000000000000000000000000000..5b85b727191f818ce022963ae35ac867a44748b1 GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!2~3ezCWG-q(nX+O>#`7pEbC3~C2gnx`e?W-6sd;DNG h`p-V+FY`h+hL?$gfsgk~#{-RF@O1TaS?83{1OQ*9Jqi;2}E-=Gv^p4_82BkG0dD}nK?x>bEzQ^6#~&(!^*Xml|XW< zB?#?}Dr`vxqRJ`Rl~bxKTP)l5TDBdt>^o=KcdfXsr@C*-e+Gt@ww|889-#9_!DtB3 zC_ocAwR>!AXXPUU5@6Gd6y|hV7<^P|oU@m^w z+o31*LV}wAs7#i6`&n>lc`NZ>@sDtYeaw10ZFh0=Ku|Dxy85}S Ib4q9e0Qb`4AOHXW literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-head.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-head.gif new file mode 100644 index 0000000000000000000000000000000000000000..3572fbf1483d14edc392a4499c90cde5d8e74cd6 GIT binary patch literal 430 zcmZ?wbhEHbZu7WjItbyH8c+D-dVxLss^hf literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-head.png new file mode 100644 index 0000000000000000000000000000000000000000..ac78b9ea6d8cb644411e863fc59dc77cc4c61caa GIT binary patch literal 1068 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&q9v{oCC){ui6xo&c?uz!xv327 zx0u8jS*3%8s#Jgq*h@TpUD@w2@^W*t{(R|b0~F#c@Q5sCVBq=y!i-L9OlB}JFf#=B zgt!I;1_ebX2SsK_B?3`#RAzB(*}Fwsr5my?c)zJ9hlox%20)UB7nkKFHalU^D~61tRzsb$ zTQnnk6eFi-CiW;M0!bj6qnSC!FtNulaf)H)9Lvlpnwd)tfv6CO)*4o>wX6h^TP;Co zZ*pNva^;lj$`;GEy_RjqEc?z`_Fb#)oARH5p{K70=-yE<8UpkQf#ZkIT>{!Un zr_Th|r)}P@+RL_a{fu7Cq_*_kW=G%fuwv7BS9iZRGp!1#eIBv;(oeVWRWdK<&-4T4 zwx;mq-JuU_1-tH)tr7fmMXW}EEycgYYuXEyOdSvYkQSfYTg4PN8c%qm=kYkPO!Miv tx2|2bw`YnZzE%0ddV5{RPuYKYUzk^~wQ>))J$48bpq{RNF6*2UngCj=-Rl4V literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-right-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/arrow-button-right-head.png new file mode 100644 index 0000000000000000000000000000000000000000..cc92700bfd768d28c162840ba1258ce3b94475c7 GIT binary patch literal 1073 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&q9v{oCC){ui6xo&c?uz!xv327 zx0u8jS*3%8s#Jgq*h@TpUD@w2@^bU)&SLX&019yyctjR6FmQbUVMeDlCNmfqm>B|m zLR^CagMuQHgCet|5`m~VDzi8_vp74mI=isC7>Fu?sHGZ&daB!c{xke*<*` zX9^I_n==Q5mM&ceL~GZsTf24J*1h}o?md3&*zsfM&Y!z>{o1|zAUBVK(GVD%A@C#g z;76d#1WJPZg8!oeh6l>Al0dn3PZ!6Kid&%24c&W7d?*F{Ce=`J})2B&iTz|!N dU5NKaQkmvv4FO#pk0t)&0} literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/blue-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/blue-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3bd558b4503a413941bda4308355b18cdb617848 GIT binary patch literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@lxT@-M2T}zYGO%dex5=|W^O72 z`zPN@TdM2G>1n-XrRPM_J3}8B%wKr<6YJ%DRlm~TUVpE| n;Ksr#+y16IkJ0#pJ*WKbpZZf5%J=>N8pz=3>gTe~DWM4fgQq@D literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/blue-button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/blue-button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..4e7384acc5accacfeb86e12f2aa9c669db3983f8 GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rbu7sn8ZaMptt*$y!Kp}n^Y!G zQBhKIbK!rfxG4XH%$&akzm9%sJ}IrPFJoW$<-kK(cGhF&Z{iJiCA{ysD_quh!!BXR x@oRjuqjPdL%uC*I>=xH*?=>kAaS56K*eg2~C+Tl2_yDw+!PC{xWt~$(698}qMg{-? literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-arrow-head-bg.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-arrow-head-bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..77b6e9e92d83309330cddb54aab0029007a7f1a2 GIT binary patch literal 316 zcmZ?wbhEHbRAG>1Xl7stPsllc{`{LaZ*JedJ!j2<%ay@^) z`om$g1oRjH5Xir zTiRXvB5YmS*JZMI!e56RNPo(wb|-9+Q%}d^rdXM4hJno!S%br7fBtylOuVyp-K(2w z85d`HSKIX7TJ@^0;^C=jf1=W!+>Fbf-_yIhA#WNxGl#t1AM?}g43o6|>t-f8FjxZs Dm5_!W literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..ba69969d0017a83795a194312f027e7492ef5c64 GIT binary patch literal 177 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%r1i7sn8ZaNQFZxf~268ZN&7EB`Lt%w?LZipnC*@NKt_?zH@I zzIea+^WshM)~`1j_sN8g!;R-Lss3soGMK+x4yIhnjQ<{WME_%hz X6y(Zl5#pHxw1C0W)z4*}Q$iB}BOx}< literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-chk-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-chk-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..ba69969d0017a83795a194312f027e7492ef5c64 GIT binary patch literal 177 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%r1i7sn8ZaNQFZxf~268ZN&7EB`Lt%w?LZipnC*@NKt_?zH@I zzIea+^WshM)~`1j_sN8g!;R-Lss3soGMK+x4yIhnjQ<{WME_%hz X6y(Zl5#pHxw1C0W)z4*}Q$iB}BOx}< literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..4e7384acc5accacfeb86e12f2aa9c669db3983f8 GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rbu7sn8ZaMptt*$y!Kp}n^Y!G zQBhKIbK!rfxG4XH%$&akzm9%sJ}IrPFJoW$<-kK(cGhF&Z{iJiCA{ysD_quh!!BXR x@oRjuqjPdL%uC*I>=xH*?=>kAaS56K*eg2~C+Tl2_yDw+!PC{xWt~$(698}qMg{-? literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-unsel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/button-unsel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..4e7384acc5accacfeb86e12f2aa9c669db3983f8 GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rbu7sn8ZaMptt*$y!Kp}n^Y!G zQBhKIbK!rfxG4XH%$&akzm9%sJ}IrPFJoW$<-kK(cGhF&Z{iJiCA{ysD_quh!!BXR x@oRjuqjPdL%uC*I>=xH*?=>kAaS56K*eg2~C+Tl2_yDw+!PC{xWt~$(698}qMg{-? literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/gray-arrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/gray-arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..c93d17f5e8826e4caaa59410f44992f587e9965c GIT binary patch literal 920 zcmeAS@N?(olHy`uVBq!ia0vp^oFFy_Gm!MTx5WfVv6p!Iy0YJ56626i(p>F!9;Bwg zBeIx*fm;ZK886+f`@_J%%n;xc;`*QAe?vn9P{}A54S^9D0^$4K$pF30SQ6wH%;50s zMjDVK=jq}YQgJIeAt50prGdfCO=9vy7qwLqa%_`i4XPRW)-hPVNm+Rm6k49HelF{r G5}E)#zA2Ib literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..847e1b3cf4d6fb89a8c34383378269ac39568643 GIT binary patch literal 204 zcmeAS@N?(olHy`uVBq!ia0vp^OhBx~0V2h;Wi^1*WKS2zkcv5`r;hV71u`%P%4e`e zOgn4&+~v)F2{)(vRp$NMj*Cb2^KW^RpK&kF;^qF#TBpaK8rps~{K{rnz`a)1f6TO*3GDm;4Z)FMKwe@P7LeL$-D$|SkfJR9T^xl z_H+M9WCijSl0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=dY0 z)7O>#7Lyp8F|(vj+b5tEKU0n z{O-Vq?HAe}=5J#?ygx*^t^Q*h&wr&-$$#wGMti=BrdGUWK620D4eQZ)4!4}AJe+GS pu$ytCw!m(Njm84jj2jngFxaoukU#0P!VqX3gQu&X%Q~loCIH@wQKKp}n^Y!G zQBhKIbK!rfxG4XH%$&akzm9%sJ}IrPFJoW$<-kK(cGhF&Z{iJiCA{ysD_quh!!BXR x@oRjuqjPdL%uC*I>=xH*?=>kAaS56K*eg2~C+Tl2_yDw+!PC{xWt~$(698}qMg{-? literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/slider-h-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/slider-h-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..e130b9c70d5eecb30e19476f07d1121ed1419d7f GIT binary patch literal 133 zcmeAS@N?(olHy`uVBq!ia0vp^j6lr6!2~3?S1^eIDVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfI^y{E{-7*;mHqP)Eqr<@k2x7;y+rRYCv{Vr<6Dk~(dlfI^y{E{-7*;mJR~{1ZOh{ajz--M#&%3x57eZ7UW(Z#>7keB#49 dnhL*vgfjU3772W`awEt>22WQ%mvv4FO#oUVr<6Dk~(dlfI^<0E{-7*;j9NI3Na`MI2`=`f4_i9ae)Afd9lFU)W~T-wC!|t zf3^N|nQ!;jY@JbTbZo(QKbH$phwmC1XRVzQ6cFmtGRIhRDZj%TO^!2*YAyo}W$<+M Kb6Mw<&;$TtTQkl8 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc1-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc1-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..e764aeee8e3045e66305c4c0b35bb69464a9f3f9 GIT binary patch literal 721 zcmZ?wbhEHblxC1-Xk%cgZ|-Pn?`iLu)YUt&vu{ez#A#EePMb7+?$qhCX3m^BYxbPE zbLY-pymtPQRSSV&(UK)gmo8bke&x!QtJbVvyLRou6&shY-mrYlrseCluUflt?fOmY zH*8qHdHc$ZyH{=6vu4Y_jT<*^-MVe#)?FL7@87v`o0)pFj?%lh0@%n?yw;ln(!$(hEzI^%i?YqyP zKY#rE<;Ra7|NsAI7?eQqCkrD3gD-;)$aSDNVc_`3FqR|^Ye0FSjc({eXM&sa)jgOB{kQM&m zptR}fX(p?d8)tTIetv!~cMXH%t}QPwukg-4@xjUY)%Ep?D+&x7o8I2uQT%$_-vvuq zIS({*%lpY#Ff|HxX@}c6B(QQ^SnNIDPqvDoQCZI7#<{(_zrW`)(&x$fuy@bTXUxhf t5eN3|{r&x&u*eCH0}f5Ue|&zuKcB(Dtx+jP;Xwn7n8tztW>yvkYXIwNLFfPg literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc1-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc1-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..0766ac7c68c15f6e8fb456550debdca06b9dc671 GIT binary patch literal 867 zcmZ?wbhEHb^ktA{Xk%cIkC?|1w2mWmBS+*`j+mVs@p}ZqRtm+f7mZyl6TLt-cAZ4r zMvlaN0ts6rGWN)3?vg3ptr9ieD7@7uae`6GWV@_sN?ALM3b)x5Y~V;fz>#{0BmD?R z<}r?(QylqcIf^cDlwRhjxXw|1i=*zYK+$oblH;Of$0VxG%hq3V&ztR&GsUrdi$K#& zp|)EbjSo0lpK^4);^=)V(e+TN`Lcb_QKRmQj%|Blx_8C&>`w1oo!+-Gy>Cz2#Jx__ zugAlQb)y?=1{V7I*gzCAxbzc~B(#KeVre}Dh*`1E}L{rhTvxwM!h z9N51f7_Dp?4;om+Bo;8cs}wpg@|eAN&@AAl@vucCOyVIklcK|cHkq;)58D;mG#+)R zG-Wh8a86nAs7q(tiHEFAt_BBsOs-`-?zMQf;&GqNqa95SnqM@YOmGqNe9Xrzsc>MD zkJ-y7lLOo|pH2y}+Ihf*A!Oy#X)$G*3~b7p0taTKOv`*WGh^AxXR~r9tvukt^i$#a WoRVvq&*xS=Tlsumv7d+lgEatEHdOTh literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc1-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc1-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..923321d27d6cf677cf4400b2a028c75a2d53e541 GIT binary patch literal 644 zcmV-~0(<>ONk%w1VNC!V0EGYmm6w*4k(rj5mYbcNqMxRwq^hW=<<=;-L|>g@0B@AB{R_44)q|Nj60000000000000000000000000000000 z00000A^8LW001=rEC2ui08IcJ000R70BZ=WK_Gy^g9sBUT*$DY!-oL~44lY3Xf9VTIqnfCCF2Ot`S&!-Kt62!W!p({Vj%bp#3ga8t_bL-yCySMM(z=Qv;ARvVCu`Sa-0t6$Gv{Rj#ZK**m@zrOwZ`19-Ee?LQt z8V&F#;D7`cI9~<=F<{_=3^I6uKnHjr;e-@cXyJtzW~kwY7g``t0UU-X;)os01OPjb)lTUbF5#EbaW*48#Qe)#?VE&p~P5ZK?}2mWL6JD4B< zzyYZTjR#Kv>>fbJ77(hc^wrpi;th#1oTx%~#1-$XJ;3jr%OY#$VI4M6IRfb{Q9uYW% z4`unjILUOQxM-3bi<751kKtasoO-!vQGrL`vRxE0EIMQB+mcBk_Grr==)iEc#5-9Z zky2O@sI8AkJB#bNqmueetr;D7y-N1g+LzU^SFwyH*?9Mbg=Y20Gt}ts`$Bd=vrmeU5)Y=Vr)6#p|NU%eY5NoB8_0cgg9l-J(jW2Ki`kMc=?D1j%#-O zt2SX;BUn`PdlM0#iIbpeb_4!(k5zkp4?s~jE76$arOQ>=1YRFHq$K?wIy5`6n6Mod zc>@(%!t>U}yj^7x4@b_11HtEuR!E5-c`M|klK_~5BH{Ivi=RsoYUTpg0R{yDm;VBC Cxnj`( literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc2-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc2-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..fc41078ab50e8ccc3490963bc9c5d77c42308450 GIT binary patch literal 905 zcmZ?wbhEHbjAM{yXk%cIkC?|1w2mWmBS+*`j+mVs@p}ZqRtm+f7mZyl6TLt-cAZ4r zMvlaN0ts6rGWN)3?vg3ptr9ieD7@7uae`6GWV@_sN?ALM3b)x5Y~V;fz>#{0BmD?R z<}r?(QylqcIf^cDlwRhjxXw|1i=*zYK+$oblH;Of$0VxG%hq3V&ztR&GsUrdi$K#& zp|)EbjSo0lpK^4);^=)V(e+TN`Lcb_QKRmQj%|Blx_8C&>`w1oo!+-Gy>Cz2#Jx__ zugAWIx*cXxelci>Py)Ftb^ZOzTi8JAbZ?%vksAguK0)LifF>+bHZ`26bb z?(((+LW)e>ay~mYJUrYXtR1&U!gZ3Oii5{IpPieYo}OWxeecZ7&zve&b{%rQySBW% zydrpY+*zQ}N>(-}=K1d4_V)IU;@9`i?%v+6Bx1!O@3&{i$HyloYsa74Q^~F%Y~eBA zZ||9 zKbxFoio$~i7O{*6jT~w#9yIZo&0rLCGC6RdMIsBFse+; zc+{z}Y{jE4ooz1`b@OwyFff{2%Xr*t@odH8KAUeZ7Wa#BOgYf+B9{4NqHCN&01LCp z%O{fq+%%s~2?@)5IyHQqLI77p*~_QX6RLI|c3|U3cs4U**~(|La<;vEHoIWgP6k(o zBbm?VRy>nbXH(S_I559~P3y&i7O|`s3p>=JRxqh@J~_O2f}7UMB~!w(UM`)H7NzOR I$jD#~0K2SQzyJUM literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc2-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-arc2-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..33276eca59eac84e5d4c84ea62eb5c7e2c361b2f GIT binary patch literal 683 zcmV;c0#yA+Nk%w1VO{_m0EGYmm6w*4k(rj5mYbcNqMxRwq^hW(bUq_(%0A5)!5b8*4WtE*xTLP+uYpT z+T7pZ-{9Wh;^X4w<>lz+=;-L^?CR|A?eFsM^7Zod|Ns9000000000000000000000 z00000A^8LW001}uEC2ui0A2ta000R70C5P!K_Gy^g9sBUT*$DY!-o(R5*SGF#f^&? zGiuz(v7^V2AVYS1K@kTA8z@t%T*({Vj%T{4R0gBtWbL-yCySMM(z=I1%K|+9u+*pMVD1Cq)4P06QD5d|m(m literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-round1-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-round1-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..a8eda43ce7085e9b556db547c424a91ecd4bb76f GIT binary patch literal 730 zcmc)HTTha40D$p74h>sQ%np`VXxd7<^CFtn@SL*?v(0&tR(9jkHJ7W_Y?fL~F%8|T zg!Xx@gc>sH?lHhu#~~KR~C`dl}5W0apJ2o5AGt4GV^bhFEMi^E;2p z8Rd-p2pQoC`2xW(SIpsy*nA0hRKyiZ_(HKzB;krw{0Y_g__%mN8X}e|WHPx-u9V1C z3WZ`+ib$1+RP}RmN~3^hVHi;%(@I3A(i-8Jc_c(L9ipDrt7nV`gTZVzt94er(W0MU zGFfbM3r>^GZL`^|cK3o~-Q{w*-EPY=y6E&QIZ^wn*S_joK{waDTN_@l$LHVj`vZY( z|Mt$Y-TnQ8gJ3XtbaVv%pTs{{3;-qI#&N>&6M*{*1USOInp_+XpM?^2V;*u!-nX2d zV)h1f?LI`R-oiG=rV_KMtc_%SUPJyza)(C5p6h-T6(3!F((tQ!*vfQiuM{Q9&K}M+TGiUIn-I&l|lyLEx^S>=~eY;1-8XJnB98m z@IsR{I;ogfZc@H_9vPM)XWWTzK%(Ma2G&fIZ(gjFR6H6ZtK@rL-C4Y`2&1U=osPqA zXJ$734miZmZdz!cnsBI=)OtC(9GQv0oTEL42a$rb6o4-!!&8Uh*blHw1IQrkL^2V@ WV6o_0eUy5vG2$X0(bi)yAmbl!j8X{z literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-round1-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-round1-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..6ea1c7afdd5ab27517b2657567eac8b522f10774 GIT binary patch literal 901 zcmZ?wbhEHb^ktA{Xk%dD2wKMxx{)JtD_6``o`{V+aoag!c5=k;5sz6e9<@$BdZB#$ zB96p;qDdPBQg(>u?Um2lXcXRRlr+&WWsYLPTJ_WoO8I*=a(5_|?=;I~Z+hTflhfdg&*1fZ6>VCf&mt*FiPoH!k zW8T@KnTKl@9#fDa8DH%6w-=0v0>rib^+;Q3xYN*a@BQ-dUJwt$>QVv3eH_J zo<%8rvbr5HYdTzx_fI!SJ~hX4^RlzEjY}0GH9xrV%R4l4$$D*BadELn@3$Qrg`6)f z4_NHQDs|)$n_R@^th=YSuD-rL;c!}P(1jD6A{m!g#h%`__V)II$IFf?wm#qzuK4`w z?&^7Ql!w9N+Z_mH0v*8SfBjMh9+#2M?MB+%z7xh=gT4Y!%K@n83qc^5S8;LYu~; z4wY#ci#mLHS{fL2w!L`NZE#HEagWKhACFjBZW=W7+I)MlxS!P~@B#~yNamA?9%?I} zO!6^%xn!bi#F7J(L&7pur^>7eVP<43dHHmDLYwBZ87b2&)fi1bENK-Io$>P7?1EX5 zjY3&`Q(V|YR2UA-tNHfw`TPbpt&9bn0TUdBN~5M674b27^yq^6{)rL3r^s;j83uC1`Kv9YzW zxwo~tx45^uy1Kl(yuQ7@y}Q7_!oR@2z`?@7!o|bH#>B+H%ErXX$H>RX!p_OY%E-md z$;!#f&CAQp%+1Tr&Ckut#L~>h($2=!&C1fw$kfiw(azG&&d|`((bCe^($&+|*Vot8 z*wxtD*xTIO+}hmV;NRim;pOAy<>lq*=;-X~?C27#bX0tSDgxj+ZcF%A85Frp=o(S4dbX@Ij3mK!XY$O0=la zqezX`c(C$;ji*qfN}Wozs@1DlZKSZ+poZ74V8e({Vj%brae_SOj;TIk-*ySMM(z=I1P{yW7B0xFU#U(UR_^XJf` zONS03z=`YFvuoeZy}S4C;Jw917!ba^`Sa+tdze5Wz5Dm?J1BmDqQ3q6`19-E&%eKa z{Tv8{fC&T^XyAbeCaBHE*A_te7lz^CE0sT>WZaTY@)W7+zW3blLj;L- zbUKfYj==vUXdj6HfCz3JM;$)_&>>(!7xCys2!hUDPpuEf>5I{yMJ(cKddavHmYc!m&A%ta}2oHBF~%^J|FvATt>c`H_S{@iETZ3>p5ur z0Cl;qz}?fI;FO%|z2y`7Vq7hShf0&Nu?Um2lXcXRRlr+&WWsYLPTJ_WoO8I*=a(5_|?=;I~Z+hTflhfdg&*1fZ6>VCf&mt*FiPoH!k zW8T@KnTKl@9#fDa8DH%6w-=0v0>rib^&ECABkqKgWVEa1u{1(vrp((aPE@v z+_dE6WDVzMH!e1L9P9Qd`7^_F^RlzEEs9^=Ik|Z`pNc-~y%!G`uei9_W3pE4sVyrn zFL$lJQ_;z|>gwu<%|^UUh0Oiy6ApLDdT(2Eb92V!X|X{UPH>78JU%tod;7Y(yDL7w z+S={Rbx>4|iCfNR$A*W8JA}34=0u!ukWy9hp69c3)6>&4jI;0Ux!LK!q2kmn=eujm z%gZZ*SI6zG>NvozoOF7g@9u4HZ|^96eQ)pWRxxc&7Y=#9Jv%-=J~3H4{@ff(ZXIJM zkNJLkcYS?*V{`WXb9<{hG=v=fb;$eg+w=4Di_5Fy&+oJCP&TkTG2egxzQ4bJe13iZ z{Qm#!8le^s4mPleWjtu)P+Re!iO1~50C(Ltb9JN=G)8X^BdT-UM#2-3UCgH(g-;9NE@EV4um%9> C$cW1T literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-round2-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-round2-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..b27caeb559a7ff2a6f5d28831c95d0714b2b0edc GIT binary patch literal 716 zcmV;-0yF(bNk%w1VO{_m0EGYmm64g1n3bZRrlO>yq^6{)rL3r^s;j83uC1`Kv9YzW zxwo~tx45^uy1Kl(yuQ7@y}Q7_!oR@2z`?@7!o|bH#>B+H%ErXX$H>RX!p_OY%E-md z$;!#f&CAQp%+1Tr&Ckut#L~>h($2=!&C1fw$kfiw(azG&&d|`((bCe^($&+|*Vot8 z*wxtD*xTIO+}hmV;NRim;pOAy<>lq*=;-X~?Ce*r0~lvuM+*UCXwu+qZDpvMAU< z293LT^XlEpx3Ay7fCKlHF?S#a8Hf`rUd*_$({Vj%a(mYU7i-S7= literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-square-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/switch-square-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..5168fe06f375833a6b2c46749c851f993ee77a94 GIT binary patch literal 768 zcmd7PTTfB}0KoA>;$+H$cAHyXW^+r;nVZ#Wu8nN-ZYx(?4{D}cqg-oitM$-IIfz`8 zk&q&Sf`Ec}kedgNh#oUcE(*g)#DVD1rL$0@2bwF>Z_)1){I`EeS@E^&kFtSt01W`% zQJKwDdJC-`q_e5?_EsjRt-X`g!C|m@EKV1j+w-2w<9rZwb@y=jeFA|%BocM?N_vD6 zLBG6L3iZoWk|WYVxm+$)KuV<&f*^@fH!y4%8qvu{;6b%XHL8QOV+zgqux@Fn2&dOb@)?^mDS?+*rpp5-;~3g!=le1VN%2n%A{7>2EHZXXGU!{5XEkw_#O zjUFBz0{@eY-*_AV+yQcrqmG{dguj4}ZK;OMdcGHeh8X7d$oi zsDw^>xsaYxrjyyY7g!sKQIO&2&Tq5}%eajAtQ+jyWt)D;)lUNRa4#B5I;ExDoLajf z+e0j%mWs;9hP|o>L$^6eGS$*({R}g8=YA0}oxC_)>wuvZLsI<~zrv^vm|sUcFGDBV zR;QX{64EN8m%y`EPF}2YnzYzw<{6FnCZgMP@C%yMLh&c2OMHu!RyBT^jL)o8)jjj0 zgwvWvM_-j0{^5%)=KJQ&#@$sEjN}1DrhV*V+#4S{fkeK!r4`TfLLhC&r*B$auoS++ zrB2kb(sxsVIO5i#>Y;1Wa_}p*x<*5qn*4JRjqDiRAv`bsAU3Q1EuL_Xf=|p;geb(T vTVgPdo}UFw3qqM0;nKO-Y=h~%CP)gmbQoc>SYP(AHF5{ey_7zJwk`HjC z9^yzp!jXB5Bj*%H{#lNq3mm1FIV!GmRNvyLyDL<8$-Q*Fd&NfahI2w~w`4o-ax^~R zXno4j^@^kStwQIun6|Ak9ou8NcE@$8(<=jU#{IQz)MxrZOjJ@WAX|Njg_0Vw`tVPs(NV9)_M z78EB89RC<5a=2VN+}PC2A*>a1V#C72?E=bbB^Qz(9FUg?*>mH>#>L0`6`Z?dJU2aY z7ZtDL;hA)(_4IUu?>bSfj zcy-*_U0YvY-;jKoFHoxG?d=`KukW4Rz5V_D1I^7V7#}u&e0*ZEcKo?LJ3l|au(*E3 z#{^?ygL5;zP-P{e|TIz<6=Ye-`_tzzrKHd z|9)W1vYj}{!;_Qnppipu#e*guvlkDV1>ANpHgbeyJZzOnTk)_>rtHPTb_FE`W@eTt z8IL+OmaTZyrL*nDqizEsfx}G9S27;=T0C3vxXi^u&Ad<{($v@0+SSlq*=;-X~?C)%AHHM zuHCzM^XjGH0fCIafCCF2Ot`S&!-x|rmf_(5jK`28OP)-*vgON|Gi!#?*oEiMphJru zO}ez{)2LIs*ifK_>({Vj%brcUw(Z-vbGO(qV1@7Bz=I1PPQ1AB#SX^XJf` zOP@}?y7lYWv!lQupoI7D;KR_1A5Xr#`Sa-0mzV%Rz5Dm@d1ORv_;)o+*pMVA`=%9oa+Gh$gSQHQdJ1|mw+W-In literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..548ef738d7f98d2439e31febb5015881d3e17ed9 GIT binary patch literal 277 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bU0U})u`hX;ZXo+h?iE~kEVo7Fxo?NMQt`H&hB8B1!Kq1ZokH}&M25un`X1sK_?hjCKvZsq{csW`)BpDi0rbra>d&xmzFeEwzFK8GmO)i zF8X86X6F97)#bB!_CK@H^f%qCKX*>0q}emE9M-2BC`?)& Q40IlYr>mdKI;Vst0B_@FYXATM literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-orange-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-orange-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..56f555bbe2585be929b0330faf82e029dbaf519c GIT binary patch literal 197 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bU0U})u`hX;ZXo+h?iE~kEVo7Fxo?NMQu3#ZiPSbDK-GM@!1s;*b3=G^tAk28_ZrvZCptGloV@SoV zV!Z literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-seg-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-seg-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..ac946ceb22a0043d1087b82cda965a396f37fe7e GIT binary patch literal 178 zcmeAS@N?(olHy`uVBq!ia0vp^OhBx_0V20=u=4{_m7Xq+Ar*6MPu*oZ>>%R$u=e8j z`Yk`#ODHNCN-0Yvo2&|t-BMJurn|PJ&Tqwj>nm}*R=*hE=C;4u>~wpd<5IDV+BFwq z(lVmdGUm8z_)AJ1WAw6gOyrp0D`s@DA>srJ_oIT#?|nW@_$a6HV1KN>ozpSb2`$;h bZ_`1YHE6Vo{~EAvg6)$*YA%PeJ;CLw==^w)?Y^_W`^_=ew6{uoizY_x^3aP>d8YTs vSbXEk?iWW~Q{E`q6bVZ0;^2#6`Sp+4Mj{}aOI)}d=q?6NS3j3^P6Z4A6R$U)->^EbqO&e)CyQw1o2}kAFumdH38f cIQx-BX5P_?<+pEX0^P~r>FVdQ&MBb@0H}p-mjD0& literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-slim-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-slim-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..f982afb761ae3b230544c11e5b042862523e7cf6 GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^Oh7Eh0U|pOL`()!MxHK?Ar*7>9%STV5M*FD__xJF z%`NF~<3G*LEl>%>?RZ@O1TaS?83{ F1OV6dAQb=r literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-tall-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/compat/tab-tall-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..50a237196fd797e2c2ee32fc032f38555c20780c GIT binary patch literal 161 zcmeAS@N?(olHy`uVBq!ia0vp^OhD|w0V4Oi7>WR?3{Mxwkcv5`M_u`t7#Ua&9-Djg zZtVa6wv*I?r$5rRd$jh8kpIVkUEQ-Ug~l9-e5ums#lA88R_EFq8f%YwWon8gtuql0 zUfL<4-FqZ}XA0NF@K>GdUTAD}^%qRRS+CS&B4(%_RN1&_ZwTX$`A<_9tiGBgC!F?j ztr+u%yp(`vmFoNTdadPpD+=e_J-~D7%a0(RZd-;)aa(1V8^sHWPdVwwEN-*!EXYPr LS3j3^P6lAXxX(;~~&$22WQ% Jmvv4FO#ot&TxtLS literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar-compat.css new file mode 100644 index 00000000..1ffffb74 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar-compat.css @@ -0,0 +1,38 @@ + +.dijitCalendar thead { + background-repeat: repeat-x; + background-image: url(compat/calendar-month-bg.png); +} +.dijitCalendarSelectedDate .dijitCalendarDateLabel { + background-repeat: repeat-x; + background-image: url(compat/calendar-datelabel-sel-bg.png); +} +.dijitCalendarActiveDate .dijitCalendarDateLabel { + background-repeat: repeat-x; + background-image: url(compat/calendar-datelabel-sel-bg.png); +} +.dijitCalendarYearLabel { + background-repeat: repeat-x; + background-image: url(compat/calendar-year-bg.png); +} +.dj_gecko .dijitCalendar .dijitDropDownButton .dijitButtonNode { + -moz-box-shadow: 0 0 0 transparent; +} +.dj_gecko .dijitCalendar thead { + background-image: -moz-linear-gradient(top, #63696b 0%, #182021 100%); +} +.dj_gecko .dijitCalendarSelectedDate .dijitCalendarDateLabel { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .dijitCalendarActiveDate .dijitCalendarDateLabel { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dj_gecko .dijitCalendarYearLabel { + background-image: -moz-linear-gradient(top, #63696b 0%, #182021 100%); +} +.dj_ff3 .dijitCalendar { + -moz-border-radius: 0; +} +.dj_ff3 .dijitCalendarMonthMenu { + -moz-border-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar-compat.less new file mode 100644 index 00000000..88cd6f0d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar-compat.less @@ -0,0 +1,2 @@ +@import "../variables.less"; +@import "../../common/dijit/Calendar-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar.css new file mode 100644 index 00000000..fdc2ee30 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar.css @@ -0,0 +1,124 @@ + +.dijitCalendar { + padding: 0; + width: 320px; + border-radius: 0; + text-align: center; + border: none 0 transparent; + background-color: white; +} +.dijitCalendar thead { + border-color: inherit; + vertical-align: middle; + background-image: -webkit-gradient(linear, left top, left bottom, from(#63696b), to(#182021)); + background-image: linear-gradient(to bottom, #63696b 0%, #182021 100%); +} +.dijitCalendarMonthLabel { + padding: 0 4px; + font-family: Helvetica; + text-shadow: rgba(247, 247, 247, 0.6) 0 1px 0px; + color: white; + font-size: 18px; +} +.dijitCalendarMonthMenu { + border: 1px solid black; + border-radius: 6px; + background-color: white; +} +.dijitCalendarMonthMenu .dijitCalendarMonthLabel { + color: black; +} +.dijitCalendar .dijitDropDownButton .dijitButtonNode { + padding: 0 3px 0 2px; + border: none; + background-color: transparent; + background-image: none; + -webkit-box-shadow: 0 0 0 transparent; + box-shadow: 0 0 0 transparent; +} +.dijitArrowButtonInner { + display: none; +} +.dijitCalendarMonthContainer th { + border-right: 1px solid transparent; +} +.dijitCalendarIncrementControl { + width: 0; + height: 0; + border: 6px solid transparent !important; +} +.dijitCalendarDecrease { + border-left-width: 0 !important; + border-right: 6px solid white !important; +} +.dijitCalendarIncrease { + border-right-width: 0 !important; + border-left: 6px solid white !important; +} +.dijitA11ySideArrow { + display: none; +} +.dijitCalendarDayLabelTemplate { + border-right: 1px solid transparent; + text-align: center; + text-shadow: rgba(247, 247, 247, 0.6) 0px 1px 0px; + background-color: #6b7173; + font-size: 14px; + color: white; +} +.dijitCalendarDateTemplate { + border-bottom: 1px solid lightGrey; + font-family: Helvetica; + font-size: 22px; + font-weight: normal; + text-align: center; + border-right: 1px solid lightGrey; + background-color: white; + color: black; +} +.dijitCalendarDateTemplate:last-child { + border-right: none; +} +.dijitCalendarDateTemplate .dijitCalendarDateLabel { + padding: 3px 5px 3px 4px; + display: block; + text-decoration: none; + border: none; +} +.dijitCalendarPreviousMonth .dijitCalendarDateLabel, +.dijitCalendarNextMonth .dijitCalendarDateLabel { + background-color: #cecbce; + color: #adaeb5; +} +.dijitCalendarHoveredDate .dijitCalendarDateLabel { + color: grey; +} +.dijitCalendarSelectedDate .dijitCalendarDateLabel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); + color: white; + text-shadow: rgba(0, 0, 0, 0.4) 0 1px 0; +} +.dijitCalendarActiveDate .dijitCalendarDateLabel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#088eef), to(#0851ad), color-stop(0.5, #0869c6)); + background-image: linear-gradient(to bottom, #088eef 0%, #0869c6 50%, #0851ad 100%); +} +.dijitCalendarYearLabel { + margin: 0; + padding: 0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#63696b), to(#182021)); + background-image: linear-gradient(to bottom, #63696b 0%, #182021 100%); +} +.dijitCalendarSelectedYear { + font-family: Helvetica; + text-shadow: rgba(247, 247, 247, 0.6) 0px 1px 0px; + color: white; + font-size: 16px; +} +.dijitCalendarNextYear, +.dijitCalendarPreviousYear { + text-shadow: rgba(247, 247, 247, 0.6) 0px 1px 0px; + padding: 1px 6px 3px 6px; + color: white; + font-size: 12px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar.less new file mode 100644 index 00000000..a5909033 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/Calendar.less @@ -0,0 +1,2 @@ +@import "../variables.less"; +@import "../../common/dijit/Calendar.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/compat/calendar-datelabel-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/compat/calendar-datelabel-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..8c0a35adb54cb78a11044f34b24bec60073b5cd0 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfw!2~2@+FN~r6id3JuOkD)#(wTUiL5|=g{O;S zh(tK+!N4w{T8D$*f1Y!9ad9!z^z`%!nlx$kgkBdHCDo-%fMCiL;~597{d3X&i4mkX0Z+@eG+@kWT3(yS=p00i_>zopr04KIbN&o-= literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/compat/calendar-month-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/compat/calendar-month-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..7ab7049cbd6ff4d89af102b770589a5a9765a885 GIT binary patch literal 195 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!2~3ezCWG-q*&4&eH|GXHuiJ>Nn{1`t2|vC zLnOjk4|ei3GB7ke{BN3*wpu50Q%a`b$%)GDPc+;Elh6LPZ+Ne)U!QV+Qu@b--}E{z zi$8bwnsSG8z2WZ5tq&wNa`FGTZM!+4d3(&`U)*zE&e>;vP^#B(u40?5!}c7L&Fxtw tfnWGGU2_YH=J1+4>&^nLt1CGk$u~!d7ib>}oeOjYgQu&X%Q~loCIHeJN>u;= literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/compat/calendar-year-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/dijit/compat/calendar-year-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..aed24d456b62e7d800bb64db4e1712be62b0bfdb GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{O!2~4hKV8-UQY`6?zK#qG8~eHcB(ehe*`6+r zArj%N2YI=i85kNazL#2kbyk|o@R^Nu$2V-}sP)Vuj0&hrG{=j()1?+1#CGy+U31=Zekt85~`w+$Kf7 dcL|Gr$lvx(xJ!;nsuE}|gQu&X%Q~loCIFh5Lv8>7 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/images/thumb-overlay-large.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/images/thumb-overlay-large.png new file mode 100644 index 0000000000000000000000000000000000000000..dfac3707a7c710ba5bea5d9ef6091c88069c4d83 GIT binary patch literal 3697 zcmdT{=Q|sU8czp~QCg!ZPHC&LM`=r|_NqOCh!v|5qpA{WYmXKcdK@E3XrrL|IOw5nX^-hbde_uGAbAKv%(Jn!?ozYp(BwYR-}icf+M005k_FgF1o zSu6l>O!+tNBk!V|rRkA5i7>P=1OV7$BX&@YBQ73p3JrG*^$(BqLBauscS3#P7c4@2 z5O6Tu=T3B34_pTT5IkXFV(1h#vHD^mQ^th<)scXL_!iV$Xqnj>``k9@6%98 zfiV~-B@(fBi*f6Y4w;@TTQL?d^(Eke|I&%IpPye`<)m+v$ZrB#?#8tr|2O7c9#xqs z&+g*(VQ2o{ZJu}T*cByx|I(No*wKZ4qj>Q0#>6@RrP#*dKFmmmlO6UAHd@&g?r%0W z8EOT;OGs>9#an9%7$>|Flr3P!7R2wk`W+tpnxXi0nOT(%1%@0{%uAzJ%F%W5eq12~ zp7yI*QEKTK8A9vhwM%MM^qq;O35dfT_dHQ;xi9h(I5jVruBN6Y^6Q6p`6qY;b@bHL z2dmb!M0s$MhY!RVd&Frvot{)b6B9hUKHa20azLU!w3!5oz9bKHOkB3o`4K~xdP)jy z`LXz|s(G`QNnIO7&&sPRvyQS$>_{utS(3d((>i4KJhGi?-LRhQOMVd#IyLmsS&E@H z`xDe)ef#JsD2dfc&QeIIA9=TCIoJJINDmsf(E&W%>6XcOZZ0J6FX~+5JbFcvdHhc8 zxE+6zk*V)5Fv$+o-dHjkB!_*KtovT=KXo~mO0ZXPfHfO?uPbT-!okE(`pX6T>RChOe;SLyDQIG}6&max@lTZ(d# z3DIpP+fMJxDM3M1Ocdk=MW;Q{DXI5$S-^p1ZsbF*A;ZX76gEDS-=GC+^$^DQA90|C~(&5XV-Nj*FB6^Sg~gqk?Qe#TVIA| z=&_^Hx-qXm{1bQ=ul!D6b@t7}ZzCfkrz*UxqfSphgLcj-xm0?@F6Big#B46~RJeKB zFL<0()iAkjrqdFwHM6}kT9u*jZvUlQ1#D>Vc9?81$iCVHbyoW8AHHNK#b2v^_^V6X zKN{wbH9bxHtFxt+;bl~9{);6@HDfM+YvQH2LDXh*QM0?lu6+X3q0y4>ne(iTjg5mY zso2%G-QC^N4_3#*kV^x3*==oYpPoE@?;4rVVxlOe9Uk!c>s*^(P-?<{k6eLH#C&_I zc>JzXM}a37sS%#jJQobY7RX0l?>L*}y4PI%rmBk57BX4q`EU`B=oKdC_uOfYp%2)H zpEf*w4RQRk)7OKa9AL)zTbft2w06(OUnhO1`@Wff$+*KGDFe~OP$3GPVs=U`q;t*! zwD>}lx{s`w2>PMILFJ92=PphjP)H!ziQMo9;}-4i&B7>i%3%Du)iuuh=qI+hH#;Ia zxRSQVwLCya(w?tVal%T|!JkAjZLUYS5~Q{3y7)Y0iE<06p%X!>XQy^Lco^k{{ag~M zd*a%(#3$Yk^X=WNn_v)vCr+!A- zq0Mu;yHltcjFJnML&5s_`nKi=#G+6rn4O)Fei+cP+^M;xMUPX8gKe7KzD=*||EX)x zxjd9k^)S?ef=9i=r$Ikk_h}88=P4CdHCZj3LTwekEt+4zIyx zglB;}LT`u)PkyZD`&O=;49&}~$l7er2%FysZ3x+bYPqGyi@uisW8=i)iyC~t+O@Xb zUsSis-FtM_={J?R+fhO-!|i+`K0{+9br8)v^ty-RR1UwPZyykxXxfvGNl*=#cZ7jGiG|c|D10pCOqd{x#8q;XPr<@#Q3U+{0buDH;$y7Gk^MP~dU`XuMq!v@9RaQ$(_F+3h$S z^%mT6Z@N>tjxS+VE+K(p>eHcIffTZTZfY@sDHb`DV5-1M%cM1~$TExV zD1(~anKyqp)GrfQppHgQ!I0YsUsI2vr3k~*Iu)FQ@*5@Ha<&T~?0fuGZgH0bB09xs zuti^AUm9y!nzoqA4xWJ7$>m;%SP9r3vh?oPVE6y6rO#Pekv#YN?{VziUy^$XU`lUZ zneE~-dK1|2+~uyrYIE4fPG^*{MOkrK4?djjb{RYPmjU}Pyay%?sFsiQK9OWJ7sgxX zKC4guZXV_uHk>Cw(FQV{NMc?tIzB~rF*xATD*|C)cV`Du(dz1zf8Qq)>eFi9q(mkr z4=@J?Y#}6;NEW%lr!6@om`xtXFqe30##bXoQLG-_S`B&&AU1$zp#jqNwzL(kGZzFXRx!{*~KWLa>&UW$tc<}*`pCjLLZLsAPRCabYkeRO=Yl+Om0Edxp@2y%^N{7CTUE9)uV*+8mQVYl1&`mf5*vl=*0=W#+)C!^bv`Vm-6 zg}*bcQb9Fv^13rwd<`-Lby+aBX;D^utis`Qse(=0_qaF2Y!lUr`X;(#R9S4IM4kAW zYXw``nahQ3^->*@it%TJM_FKZR#F^(V27 zB_mggwrPa0iU2y12@1~aI~5I9r*Ly~8#z~3hjb!=d=>FS$NEDERh|ZEHJ7T=#ylXl z3PaX4PcUH?X%3CdtGG@rq!3mT`4-DBfebf_6{YdEnr{yKuyE_KE|wI&@-r?xH- z-8mKN^-{N{YT#CF8kn`J&2y>|x1xD8h9;Y%QI3KUhtE(;1E$*LrG#Ws)1s4^T>ocj z-%yh%EahCmPiY2JGhbK%tU>9Dh0t?VGJpRK6J9(wH)l_0)hzim0$OrKyMM+#g5IC~ dDt(L_u;)qmKAq<-d-O8`EKF@pDvi7o{{_Ck0iFN= literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/images/thumb-overlay-small.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/images/thumb-overlay-small.png new file mode 100644 index 0000000000000000000000000000000000000000..b6836d967b132a52b84783cccb5f7678201faa71 GIT binary patch literal 1549 zcmbW1`8(7J9LI-TjjNT#=vGKr8Q%;=j!>o<$GES?U^0{J#JG1IsTt8uDwLyKgF=lQ zVO+B^?lO+Sx_7BTBUck6*G~R}-5)-$_w#w)KYgC(^?VZTY%WWKmBAnoNZR^}1xk=e z!DLE^3Ag}lRTqSazZudD1RDB_ZR-jZ?2r&k*ANH7^^kB(FcxIyNASTOw+_VkV^LU) zUt~}x)(8X=&9SyHbBq{Wm|$J?b&(feUf0u2>h9o*?Mm~jV@>Z@4Uu}^X602` z%+=k`3s5B0%@zIq&dWt~A~oKi?m$6SlDpj1y!7Jq8^{Yt!2K)tQ{ymkI$Afe*{0iW zZhYx>_ivL%;*$x)C3?nfy%KI6cshp!26DGyI3#BaxCntjB6Z}!^R&AqXDn478Ngo* zpa+uC{ii2L*ZU)sC|2SMii(W>P-7iD6hAgL)+i|{DeLU)e6)|1GeuepGdLU*8xX*y zuB-(0)M_e2X=t0HL?W@$KR9^Rw{ADJ&2}=us-gReC5q7$Z9BDz;s zq2U`{lOzSf^}k_4L%#`4B%Hd|v^AMGF)=ZMP&?@NbW}E=(pquG%gO23g9i^5t*Cv} z@^al$S1ou-XbfYD((1$M??>(K?Cfx9+!(8Y@#$U#stjd`UU;HgrawJzB`H0nSm?+F zdHgBd?cG!m) zXL)KEp)@zr4V%<80-w1^QEU|&RyW1Q5pSGPkCo(mc@p#EpBMwkT#>`=c+IEX+hojp zT;|$iCMj;SVYYK7PPW=_Me_)s-VLln!y%M)?Uw2<`sX(o2vKjcn8}-yZ0y3T_npDX zZCQ>|JrV>`lg3t&XAP&iaT~6g29JsI)>4vM6-VDAh*jtt!I(n3m%WBf3jCrdwAm_Q z!-2y~%OwNi+Q4E>O$|En+_RJ|X0xd+4qpT&nVY=sSZev_Y}ua`;iJQ+MYpSRHqyu! z2jvpN*|%__WZdQ|IG^KWnWh$r*84dmf$?qFV!_-RJCyyQL>#t5fO?12KbBK!aZ2{$ z!{T3P6v8?`3V)fRxf}rPiPw8z&r2~tWY0?>X`wwYO)vfTx@uR|-D_&UMRYCf`NrqW zjOB(ecBgSB(VEY=FRLvFm=xc!u#9)+)f3>w7DpAJx|o;5W>Ny(oQqwxf|sg5YxSQ| zyaBM3BABG5D!)$tc#~L?VU@CRQ-6~`Jst01%b>E?@1zFunVXEXPQR!Ql83!wBSMdf zbaNW?IsZJSp|bK|R(d)=mrC{hgA;2{%Yt_eRiyPrv3hzY@3s0&af0bo8jTkJ6i;5y zrE!fSvk_{H3xhva{0*WcD_`)>LDrTw7BqA3_M2bcb1Or&;QZ#{p(i1`zP=ZSd5RIZHAW{+_p-EK; zW$7JU*L0sl;?(UD9-I=>T-uupcXWpB6e|)}=c-6s5TtqP-5$uY2)d+8Wuk_m=7)9Nt!qfK?!@du zU0K^Z>djYW>y@h}WQo?Bqz{?|>ynbQNJvjrP+$^EBe&~379Z;fYcioaj2P(I6u~58 zCt4y`a)C`oWG9xX-8)!Y0aBFAmsJ*&;+ehN$bub#X)VWDyqd5S(?J2_B>$UvJFUVy z%>yN|?IG;OM~->0ZB9>*`G8B*x%wMAtFKd4CF4~JHDlZ}CC-n8THn$FWRL?wGcz-6 zE|)twwph3g3sw*eQ^HsT#>aOSo!XmErf=?}fY}+(dvXWH-2r9>` z1<>nm@Fe1`h=>gxV)XTSM2GXJ8}y!poQ22uV52RpSWHQ^Z>kHA-+oty=vr)m5R$|5 zv`>@<&}T_iE;k!~{=p;r_|V33TKG|_2wb1Si)vY@opSSMJs^~nz~hTz%7W0l;Q!l`y8qv^f9YL6xK|dt{5x`B zH5@fUrBdMq!`~UN-V{HudV2I@1)BF0;7iJvI11Z(k$l#ofAZ0@Y2mdH2YPyXy5r}q zj-hDoB$%I?cG5IEFK_QtcY>(n603n;$V*mPi31~DAeKqtZkXa~{kH5^`5#Ml!2lWn5|APJ%i$`u!ADf5{eiv20pn*dit1L<;VbR7B1~<= zM#OAmu7TB01WL1B{hL${n^*fW11dUr4S4L~%?*}6M5WU+dalRoFB{i{juUmXK7IZD z5Z@`WjC`Ys-CYv$PB>!m8x zd2KnKB`cMWFZw$Ri+608F01F~-eH7!OCzqNsV$xGyB&g>bRxfIx7y`b zR|}1y2T1B>^kzA9&sOU_`Cq^Ca|kiG04;8-WS76f{0A?nPuyXH&K~Xl^KFBQXb&vn zqO#w80{B0S{fmja|FZ|V@J~edcl`s~{qXuXwtwRNmJIk3$Q5Q(3_yCjvunTWajOmv z6kCd*-skJv%g7|)zdOVe!D#LMTMedRugoabN}hRM=~yj|L3*EDdX{3LW)M4=`+ZJe zwt^~~K6OyFcyytD=G=;cP#h4kR{}8-HO61Kh9ED+2`eN^O>yhXql(`KFd*|f4JohX zWQ(ymqa-Y%df@a`4>1i!;yCdNd@{Pyx*{ZwO8U*}x!1E0YA>rX)fAlxi& VotbGLx&N#|HWm)%RhPU8e*m0swgLbE literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/variables.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/variables.less new file mode 100644 index 00000000..b07f65e6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/variables.less @@ -0,0 +1,740 @@ +@import "../common/css3.less"; + +@default-blue-button-color: white; +@default-blue-button-background-color: #366edf; +.default-blue-button-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#7a9de9, #2362dd, 0.5, #366edf, 0.5, #215fdc); } +@default-blue-button-background-image-gecko: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + +.mbl-color-blue-45 () { .background-image-linear-gradient-top-left-bottom-right-2-stops(#7a9de9, #2362dd, 0.5, #366edf, 0.5, #215fdc); } +.mbl-color-default-45 () { .background-image-linear-gradient-top-left-bottom-right-1-stop(#f7fbf7, #cecfd6, 0.5, #ced3ce); } +.mbl-color-default-sel-45 () { .background-image-linear-gradient-top-left-bottom-right-1-stop(#088eef, #0851ad, 0.5, #0869c6); } + +@mbl-color-blue-45-gecko: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +@mbl-color-default-45-gecko: -moz-linear-gradient(top left, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +@mbl-color-default-sel-45-gecko: -moz-linear-gradient(top left, #088eef 0%, #0869c6 50%, #0851ad 100%); + +@default-button-color: black; +@default-button-background-color: #ced3ce; +.default-button-background-image () { .background-image-linear-gradient-top-bottom-1-stop(#f7fbf7, #cecfd6, 0.5, #ced3ce); } +@default-button-background-image-gecko: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +@default-button-border-radius: 6px; + +@default-button-selected-color: white; +@default-button-selected-background-color: #0869c6; +.default-button-selected-background-image () { .background-image-linear-gradient-top-bottom-1-stop(#088eef, #0851ad, 0.5, #0869c6); } +@default-button-selected-background-image-gecko: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); + +@default-selected-color: white; +@default-selected-background-color: #0869c6; +.default-selected-background-image () { .background-image-linear-gradient-top-bottom-1-stop(#088eef, #0851ad, 0.5, #0869c6); } +@default-selected-background-image-gecko: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); + +@heading-background-color: #424142; +.heading-background-image () { .background-image-linear-gradient-top-bottom(#4a4d52, #292c31); } +@heading-background-image-gecko: -moz-linear-gradient(top, #4a4d52 0%, #292c31 100%); +@heading-border-top-color: #63696b; +@heading-border-bottom-color: #292c31; + +.default-button-border-styles () { + border-color: #9cacc0; + border-radius: @default-button-border-radius; +} + +.mblToolBarButtonBodyInLeftArrow-styles () { + border-left-width: 0; +} + +.mblToolBarButtonBodyInRightArrow-styles () { + border-right-width: 0; +} + +// background styles of form controls +.mbl-button-background-image () { .default-button-background-image(); } +.mbl-button-selected-background-image () { .default-button-selected-background-image(); } +.mbl-blue-button-background-image () { .default-blue-button-background-image(); } +.mbl-blue-button-selected-background-image () { .default-button-selected-background-image(); } +.mbl-red-button-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#fa9d58, #ee4115, 0.5, #ff4d25, 0.5, #ed4d15); } +.mbl-red-button-selected-background-image () { .default-button-selected-background-image(); } +.mbl-button-checked-background-image () { .default-button-background-image(); } + +// background styles of form controls (for gecko) +@mbl-button-background-image-gecko: @default-button-background-image-gecko; +@mbl-button-selected-background-image-gecko: @default-button-selected-background-image-gecko; +@mbl-blue-button-background-image-gecko: @default-blue-button-background-image-gecko; +@mbl-blue-button-selected-background-image-gecko: @default-button-selected-background-image-gecko; +@mbl-red-button-background-image-gecko: -moz-linear-gradient(top, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); +@mbl-red-button-selected-background-image-gecko: @default-button-selected-background-image-gecko; +@mbl-button-checked-background-image-gecko: @default-button-background-image-gecko; + +// common.less +.mobile-body-styles () { + font-family: Helvetica; + font-size: 18px; +} + +.mblBackground-styles () { + background-color: #dedfde; +} + +.mblView-styles () { + color: black; +} + +.mblColorBlue-styles () { + color: @default-blue-button-color; + background-color: @default-blue-button-background-color; + .default-blue-button-background-image(); +} +.mblColorDefault-styles () { + color: @default-button-color; + background-color: @default-button-background-color; + .default-button-background-image(); +} +.mblColorDefaultSel-styles () { + color: @default-button-selected-color; + background-color: @default-button-selected-background-color; + .default-button-selected-background-image(); +} + +// Heading.less +.mblHeading-styles () { + .heading-background-image(); + border-top: 1px solid @heading-border-top-color; + border-bottom: 1px solid @heading-border-bottom-color; + color: white; +} + +// ToolBarButton.less +@mbl-tool-bar-button-body-border-radius: 5px; +// +.mblToolBarButton-styles () { +} +.mblToolBarButtonArrow-styles () { + border-radius: 1px; + .transform(scale(0.7, 1.0) rotate(45deg)); + border: 1px solid #9cacc0; +} +.mblToolBarButtonArrowInHeading-styles () { +} +.mblToolBarButtonHasLeftArrowInHeading-styles () { +} +.mblToolBarButtonHasLeftArrowInHeading-compat-gecko () { +} +.mblToolBarButtonHasRightArrowInHeading-styles () { +} +.mblToolBarButtonHasRightArrowInHeading-compat-gecko () { +} +.mblToolBarButtonArrowInLeftArrow-styles () { + left: 1px; + border: 1px inset #9cacc0; +} +.mblToolBarButtonArrowInRightArrow-styles () { + right: 0px; + border: 1px inset #9cacc0; +} +.mblToolBarButtonBody-styles () { + border: 1px outset #9cacc0; +} +.mblToolBarButtonBodyInHeading-styles () { + border: 1px inset #9cacc0; +} +.mblToolBarButtonBodyInHeading-compat-gecko () { +} + +// RoundRect.less & RoundRectList.less +@mbl-round-rect-border-color: #c6c7c6; +@mbl-round-rect-border-radius: 6px; +@mbl-round-rect-background-color: white; +@mbl-round-rect-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.35); +// +.mblRoundRect-styles () { + color: black; +} + +// EdgeToEdgeCategory.less +.mblEdgeToEdgeCategory-styles () { + height: 29px; + border-top: 1px solid #313439; + border-bottom: 1px solid #adaaad; + background-color: white; + color: #7b7d84; + line-height: 29px; +} + +// RoundRectCategory.less +.mblRoundRectCategory-styles () { + color: black; + text-shadow: rgba(255, 255, 255, 1) 0 1px 0; +} + +// EdgeToEdgeList.less +.mblEdgeToEdgeList-styles () { + background-color: white; +} +.mblEdgeToEdgeList-LastListItem-styles () { + border-bottom-width: 0; +} + +// ListItem.less +@mbl-list-item-height: 59px; +// +.mblListItem-styles () { + border-bottom: 1px solid #dedfde; + font-size: 18px; + color: black; +} +.mblListItemSelected-styles () { + color: @default-selected-color; + .default-selected-background-image(); +} +.mblListItemLabelSelected-styles () { + background-color: #0869c6; +} +.mblListItemChecked-styles () { +} +.mblListItemRightText-styles () { + color: black; + margin-top: 19px; +} +.mblListItemSubText-styles () { + font-size: 14px; + color: #7b7d48; +} + +// Switch.less +@mbl-switch-bg-left-background-color: #088eef; +.mbl-switch-bg-left-background-image () { .background-image-linear-gradient-top-bottom-1-stop(#088eef, #0851ad, 0.5, #0869c6); } +@mbl-switch-bg-right-background-color: #f7f3f7; +.mbl-switch-bg-right-background-image () { .background-image-linear-gradient-top-bottom-1-stop(#f7f3f7, #cec5d6, 0.5, #ced3ce); } +.mbl-switch-knob-background-image () { .background-image-linear-gradient-top-bottom-1-stop(#fafafa, #999999, 0.5, #bbbbbb); } +// +@mbl-switch-bg-left-background-image-gecko: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +@mbl-switch-bg-right-background-image-gecko: -moz-linear-gradient(top, #f7f3f7 0%, #ced3ce 50%, #cec5d6 100%); +@mbl-switch-knob-background-image-gecko: -moz-linear-gradient(top, #fafafa 0%, #bbbbbb 50%, #999999 100%); +@mbl-switch-square-border-radius: 6px; +// +.mblSwitchBg-styles () { + border: rgba(176,176,176,0.5) 1px inset; +} +.mblSwitchKnob-styles () { + border: rgba(156,172,192,0.5) 1px outset; +} + +// Button.less +.mblButton-styles () { + .default-button-border-styles; + color: black; + font-size: 16px; +} +.mblButtonSelected-styles () { + color: white; +} +.mblButton-mblBlueButton-styles () { + color: white; +} +.mblButton-mblRedButton-styles () { + color: white; +} + +// CheckBox.less +.mblCheckBox-styles () { + border-color: #9cacc0; + border-radius: 3px; +} +.mblCheckBoxChecked-after-styles () { + border-color: #0851ad; +} +.mblCheckBoxChecked-mblCheckBoxSelected-after-styles () { + border-color: white; +} + +// ComboBox.less +@mbl-combo-box-popup-box-shadow: none; +// +.dijitPopup-styles () { + border-radius: 12px; +} +.mblComboBoxMenu-styles () { + border-radius: 12px; + background-color: black; +} +.mblComboBoxMenuItem-styles () { + border-color: black; + color: white; +} +.mblComboBoxMenuItemSelected-styles () { + .default-selected-background-image(); + color: white; +} + +// IconContainer.less +.mblIconItemSub-styles () { + background-color: white; + color: black; +} +.mblIconArea-styles () { + margin-top: 5px; + margin-bottom: 5px; + width: 88px; +} +.mblIconItemDeleteIcon-styles () { + top: -4px; + left: 2px; +} + +// RadioButton.less +.mblRadioButton-styles () { + border-color: #9cacc0; +} +.mblRadioButtonChecked-after-styles () { + border-color: #0851ad; +} +.mblRadioButtonChecked-Selected-after-styles () { + border-color: white; +} + +// Slider.less +@mbl-slider-bar-border-radius: @default-button-border-radius; +@mbl-slider-knob-border-radius: @default-button-border-radius; +// +.mblSlider-styles () { + border-color: #b0b0b0; +} +.mblSliderHandle-styles () { + border-color: #9d9d9d; +} + +// TabBar.less +.mblTabBar-styles () { + text-shadow: none; +} + +// barType="tabBar" +.mblTabBarTabBar-styles () { + .background-image-linear-gradient-top-bottom(#181818, #100c10); +} +.mblTabBarTabBar-compat () { + background-color: #212421; +} +.mblTabBarTabBarButton-styles () { +} +.mblTabBarTabBarButtonIconArea-styles () { +} +.mblTabBarTabBarButtonLabel-styles () { + color: #979797; +} +.mblTabBarTabBarButtonSelected-styles () { + background-color: #404040; + .background-image-linear-gradient-top-bottom-1-stop(#484848, #242424, 0.5, #353535); +} +.mblTabBarTabBarButtonLabelSelected-styles () { + color: white; +} + +// barType="segmentedControl" +@mbl-tab-bar-segmented-control-border-radius: @default-button-border-radius; +// +.mblTabBarSegmentedControl-styles () { +} +.mblTabBarSegmentedControlButton-styles () { + border-style: solid; + border-color: #7b7d84 #182018 black #393c39; + color: @default-button-color; + .default-button-background-image(); +} +.mblTabBarSegmentedControlButton-compat-gecko () { +} +.mblTabBarSegmentedControlButtonSelected-styles () { + color: @default-button-selected-color; + .default-button-selected-background-image(); +} + +// barType="standardTab" +.mblTabBarStandardTab-styles () { +} +.mblTabBarStandardTabButton-styles () { + color: @default-button-color; + background-color: @default-button-background-color; /* TODO: to compat */ + .default-button-background-image(); +} +.mblTabBarStandardTabButtonIconArea-styles () { +} +.mblTabBarStandardTabButtonLabel-styles () { +} +.mblTabBarStandardTabButtonSelected-styles () { + color: @default-button-selected-color; + background-color: @default-button-selected-background-color; + .default-button-selected-background-image(); +} +.mblTabBarStandardTabButtonLabelSelected-styles () { +} + +// barType="tallTab" +.mblTabBarTallTab-styles () { + .background-image-linear-gradient-top-bottom(#2d2d2d, #000000); +} +.mblTabBarTallTabButton-styles () { + background-color: #212421; + background-image: none; +} +.mblTabBarTallTabButton-FirstChild-styles () { +} +.mblTabBarTallTabButton-LastChild-styles () { +} +.mblTabBarTallTabButtonIconArea-styles () { +} +.mblTabBarTallTabButtonLabel-styles () { +} +.mblTabBarTallTabButtonSelected-styles () { + background-color: #636363; + background-image: none; +} +.mblTabBarTallTabButtonLabelSelected-styles () { +} + +// TextArea.less +.mblTextArea-styles () { + .default-button-border-styles; +} + +// TextBox.less +.mblTextBox-styles () { + .default-button-border-styles; +} + +// ToggleButton.less +.mblToggleButton-styles () { + .default-button-border-styles; + font-size: 16px; + color: black; +} +.mblToggleButtonSelected-styles () { + color: white; +} +.mblToggleButtonChecked-styles () { + color: black; +} +.mblToggleButtonChecked-after-styles () { + border-color: #0851ad; +} +.mblToggleButtonCheckedSelected-styles () { + color: white; +} +.mblToggleButtonCheckedSelected-after-styles () { + border-color: white; +} + +// Overlay.less +.mblOverlay-styles () { + background-color: #000000; + background-image: none; +} +.mblOverlay-compat () { +} +.mblOverlay-compat-gecko () { +} + +// Tooltip.less +@mbl-tooltip-border-radius: 6px; +// +.mblTooltip-styles () { + border-color: #adaaad; + border-radius: @mbl-tooltip-border-radius; + background-color: #424142; + .background-image-linear-gradient-top-bottom(#4a4d52, #292c31); +} +.mblTooltipBubble-styles () { + background-color: #000000; + background-image: none; + color: #ffffff; +} +.mblTooltipInnerArrow-Bubble-Above-styles () { + border-bottom-color: #000000; +} +.mblTooltipInnerArrow-Bubble-Below-styles () { + border-top-color: #000000; +} +.mblTooltipInnerArrow-Bubble-After-styles () { + border-left-color: #000000; +} +.mblTooltipInnerArrow-Bubble-Before-styles () { + border-right-color: #000000; +} +.mblTooltipArrow-Before-styles () { + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipArrow-After-styles () { + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipArrow-Above-styles () { + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipArrow-Below-styles () { + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow-Before-styles () { + border-left-width: 0; + border-right-color: #4a4d52; +} +.mblTooltipInnerArrow-After-styles () { + border-right-width: 0; + border-left-color: #4a4d52; +} +.mblTooltipInnerArrow-Above-styles () { + border-top-width: 0; + border-bottom-color: #4a4d52; +} +.mblTooltipInnerArrow-Below-styles () { + border-bottom-width: 0; + border-top-color: #292c31; +} +.mblTooltip-Heading-styles () { + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblTooltip-Heading-compat () { +} +.mblTooltip-Heading-ToolbarButton-styles () { +} +.mblTooltip-Heading-ToolbarButton-compat () { +} + +// Accordion.less +.mblAccordion-styles () { + border-color: #9cacc0; +} +.mblAccordionTitle-styles () { + border-top: 1px outset #9cacc0; + background-color: white; +} +.mblAccordionTitle-compat () { +} +.mblAccordionTitle-compat-gecko () { +} +.mblAccordionTitleSelected-styles () { + border-bottom: 1px outset #9cacc0; + .default-selected-background-image(); + color: white; +} +.mblAccordionTitleSelected-compat () { + background-color: #0869c6; +} +.mblAccordionTitleSelected-compat-gecko () { + background-image: @default-selected-background-image-gecko; +} +.mblAccordionTitleAnchor-styles () { + color: #000000; +} +.mblAccordionTitleAnchorSelected-styles () { + color: white; +} + +// SimpleDialog.less +@mbl-simple-dialog-border-radius: 6px; +// +.mblSimpleDialog-styles () { + padding: 8px; + width: 262px; +} +.mblSimpleDialogDecoration-styles () { + background-color: #000000; + border: none; + color: white; +} +.mblSimpleDialogDecoration-compat () { +} +.mblSimpleDialogDecoration-compat-gecko () { +} +.mblSimpleDialogTitle-styles () { + margin: 7px 0 14px; + width: 262px; +} +.mblSimpleDialogText-styles () { + margin: 7px 0 14px; + width: 262px; +} + +// IconMenu.less +@mbl-icon-menu-border-radius: 6px; +@mbl-icon-menu-item-border-radius: 0; +// +.mblIconMenu-styles () { + padding: 8px; + background-color: #000000; + border: none; +} +.mblIconMenu-compat () { +} +.mblIconMenu-compat-gecko () { +} +.mblIconMenuItem-styles () { + border-left: 1px solid #000000; + border-bottom: 1px solid #000000; +} +.mblIconMenuItemAnchor-styles () { + font-size: 16px; + color: white; +} +.mblIconMenuItemSel-styles () { + .background-image-linear-gradient-top-bottom-1-stop(#088eef, #0851ad, 0.5, #0869c6); + color: white; +} +.mblIconMenuItemSel-compat () { + background-color: #0869c6; +} +.mblIconMenuItemSel-compat-gecko () { + background-image: -moz-linear-gradient(top, #088eef 0%, #0869c6 50%, #0851ad 100%); +} + +// dijit.Calendar +.dijitCalendar-styles () { + border: none 0 transparent; + background-color: white; +} +.dijitCalendar-thead-styles () { + .background-image-linear-gradient-top-bottom(#63696b, #182021); +} +.dijitCalendar-thead-compat () { + background-image: url(compat/calendar-month-bg.png); +} +.dijitCalendar-thead-compat-gecko () { + background-image: -moz-linear-gradient(top, #63696b 0%, #182021 100%); +} +.dijitCalendarMonthLabel-styles () { + color: white; + font-size: 18px; +} +.dijitCalendarMonthMenu-styles () { + border: 1px solid black; + border-radius: 6px; + background-color: white; +} +.dijitCalendarMonthMenu-compat-ff3 () { + -moz-border-radius: 6px; +} +.dijitCalendarMonthMenu-Label-styles () { + color: black; +} +.dijitCalendarDecrease-styles () { + border-right: 6px solid white !important; +} +.dijitCalendarIncrease-styles () { + border-left: 6px solid white !important; +} +.dijitCalendarDayLabelTemplate-styles () { + background-color: #6b7173; + font-size: 14px; + color: white; +} +.dijitCalendarDateTemplate-styles () { + border-right: 1px solid lightGrey; + background-color: white; + color: black; +} +.dijitCalendarDateTemplate-LastChild-styles () { + border-right: none; +} +.dijitCalendarDateLabel-DateTemplate-styles () { + border: none; +} +.dijitCalendarDateLabel-PrevMonth-styles () { + background-color: #cecbce; + color: #adaeb5; +} +.dijitCalendarDateLabel-Hovered-styles () { + color: grey; +} +.dijitCalendarDateLabel-Selected-styles () { + .default-selected-background-image(); + color: white; + text-shadow: rgba(0,0,0,0.4) 0 1px 0; +} +.dijitCalendarDateLabel-Selected-compat () { + background-image: url(compat/calendar-datelabel-sel-bg.png); +} +.dijitCalendarDateLabel-Selected-compat-gecko () { + background-image: @default-selected-background-image-gecko; +} +.dijitCalendarDateLabel-Active-styles () { + .default-selected-background-image(); +} +.dijitCalendarDateLabel-Active-compat () { + background-image: url(compat/calendar-datelabel-sel-bg.png); +} +.dijitCalendarDateLabel-Active-compat-gecko () { + background-image: @default-selected-background-image-gecko; +} +.dijitCalendarYearLabel-styles () { + padding: 0; + .background-image-linear-gradient-top-bottom(#63696b, #182021); +} +.dijitCalendarYearLabel-compat () { + background-image: url(compat/calendar-year-bg.png); +} +.dijitCalendarYearLabel-compat-gecko () { + background-image: -moz-linear-gradient(top, #63696b 0%, #182021 100%); +} +.dijitCalendarSelectedYear-styles () { + color: white; + font-size: 16px; +} +.dijitCalendarNextYear-styles () { + padding: 1px 6px 3px 6px; + color: white; + font-size: 12px; +} + +// SearchBox.less +@mbl-searchbox-cancel-button-color: white; +@mbl-searchbox-cancel-button-bg-color: black; +.mblSearchBox-Cancel-Button-styles () { + border-radius: 1em; +} +@mbl-searchbox-results-decoration-color: black; + +// ProgressBar.less +.mblProgressBar-styles () { + height: 22px; + background-color: white; + padding: 1px; +} +.mblProgressBarProgress-styles () { + background-color: #298eff; + height: 22px; +} +.mblProgressBarComplete-styles () { +} +.mblProgressBarNotStarted-styles () { +} +.mblProgressBarMsg-styles () { + top: 2px; + font-size: 18px; +} +.mblProgressBar-compat () { +} +.mblProgressBarProgress-compat () { +} +.mblProgressBar-compat-gecko () { +} +.mblProgressBarProgress-compat-gecko () { +} + +// ValuePicker.less +.mbl-value-picker-slot-button-background-image () { .background-image-linear-gradient-top-bottom-1-stop(#f7fbf7, #cecfd6, 0.5, #ced3ce); } +@mbl-value-picker-slot-button-background-image-gecko: -moz-linear-gradient(top, #f7fbf7 0%, #ced3ce 50%, #cecfd6 100%); +@mbl-value-picker-slot-button-radius: 3px; +.mbl-value-picker-slot-input-area-background-image () { .background-image-linear-gradient-top-bottom-4-stops-no-from-to(0.1, #fafafa, 0.2, #fafafa, 0.5, #ffffff, 0.9, #ffffff); } +@mbl-value-picker-slot-input-area-background-image-gecko: -moz-linear-gradient(top, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); + +.mblValuePickerSlot-style () { + margin: 0 5px; +} +.mblValuePickerSlot-input-style () { + font: 24px/44px Helvetica, sans-serif; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/variables_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/variables_rtl.less new file mode 100644 index 00000000..0f75d9dc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/blackberry/variables_rtl.less @@ -0,0 +1,35 @@ +// Carousel_rtl +@mbl-carousel-margin-rtl: ~"2px 0px 2px 4px"; + +// IconContainer_rtl +@mbl-icon-container-right-rtl: 2px; + +// IconMenu_rtl-compat +@mbl-border-radius-rtl: 0px; + +// TabBar_rtl-compat +@mbl-moz-border-radius-rtl: 6px; + +// TabBar_rtl +@mbl-border-width-rtl: ~"1px 0px 1px 1px !important"; +@mbl-tb-border-radius-rtl: 6px; + +// ThemeID +@theme-id: blackberry; + +// Switch_rtl-compat +@mbl-bg-image-r-rtl: ~"url(compat/switch-square-r.gif)"; +@mbl-bg-image-l-rtl: ~"url(compat/switch-square-l.gif)"; + +// Switch_rtl +@mbl-switchOn-left-rtl: -53px; +@mbl-switchBg-left-rtl: 53px; +@mbl-switch-knob-rtl: 53px; +@mbl-switch-text-right-rtl: -40px; + +// ToolBarButton_rtl +@mbl-toolbar-right-arrow-rtl: 1px; +@mbl-toolbar-left-arrow-rtl: 0px; + +// ProgressIndicator_rtl +@mbl-progress-center-left-rtl: 0px; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Accordion-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Accordion-compat.less new file mode 100644 index 00000000..08221d48 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Accordion-compat.less @@ -0,0 +1,30 @@ +/* dojox.mobile.Accordion */ +.mblAccordionTitle { + .mblAccordionTitle-compat; +} +.mblAccordionTitleSelected { + .mblAccordionTitleSelected-compat; +} + +.dj_gecko { + .mblAccordionTitle { + .mblAccordionTitle-compat-gecko; + } + .mblAccordionTitleSelected { + .mblAccordionTitleSelected-compat-gecko; + } +} + +.dj_ff3 { + .mblAccordionRoundRect { + -moz-border-radius: 8px; + .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; + } + .mblAccordionTitleLast, .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Accordion.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Accordion.less new file mode 100644 index 00000000..08b035fb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Accordion.less @@ -0,0 +1,67 @@ +/* dojox.mobile.Accordion */ +.mblAccordion { + border-style: outset; + border-width: 1px; + .mblAccordion-styles; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid @mbl-round-rect-border-color; + border-radius: 8px; + .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; + } + .mblAccordionTitleLast, .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; + } +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + .mblAccordionTitle-styles; + &:first-child { + border-top: none; + } +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + .mblAccordionTitleAnchor-styles; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + .mblAccordionTitleSelected-styles; + .mblAccordionTitleAnchor { + .mblAccordionTitleAnchorSelected-styles; + } + .mblAccordionIconParent1 { + display: none; + } + .mblAccordionIconParent2 { + display: block; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Accordion_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Accordion_rtl.less new file mode 100644 index 00000000..71e65323 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Accordion_rtl.less @@ -0,0 +1,6 @@ +/* dojox.mobile.Accordion Rtl */ +@import "css3.less"; +.mblAccordionIconParentRtl { + float: right; + .transform(scaleX(-1)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Button-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Button-compat.less new file mode 100644 index 00000000..0fb4de81 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Button-compat.less @@ -0,0 +1,46 @@ +/* dojox.mobile.Button */ +.mblButton { + background-image: url(compat/button-bg.png); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblBlueButton { + background-image: url(compat/blue-button-bg.png); +} +.mblBlueButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.mblRedButton { + background-image: url(compat/red-button-bg.png); +} +.mblRedButtonSelected { + background-image: url(compat/red-button-sel-bg.png); +} + +.dj_gecko { + .mblButton { + background-image: @mbl-button-background-image-gecko; + } + .mblButtonSelected { + background-image: @mbl-button-selected-background-image-gecko; + } + .mblBlueButton { + background-image: @mbl-blue-button-background-image-gecko; + } + .mblBlueButtonSelected { + background-image: @mbl-blue-button-selected-background-image-gecko; + } + .mblRedButton { + background-image: @mbl-red-button-background-image-gecko; + } + .mblRedButtonSelected { + background-image: @mbl-red-button-selected-background-image-gecko; + } +} +.dj_ff3 { + .mblButton { + -moz-border-radius: @default-button-border-radius; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Button.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Button.less new file mode 100644 index 00000000..2a787734 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Button.less @@ -0,0 +1,38 @@ +/* dojox.mobile.Button */ +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + .mbl-button-background-image(); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + .tap-highlight-color(rgba(255,255,255,0)); + .mblButton-styles; +} +.mblButtonSelected { + .mbl-button-selected-background-image(); + .mblButtonSelected-styles; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + .mbl-blue-button-background-image(); + .mblButton-mblBlueButton-styles; +} +.mblBlueButtonSelected { + .mbl-blue-button-selected-background-image(); +} +.mblRedButton { + .mbl-red-button-background-image(); + .mblButton-mblRedButton-styles; +} +.mblRedButtonSelected { + .mbl-red-button-selected-background-image(); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Carousel.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Carousel.less new file mode 100644 index 00000000..e7d99c81 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Carousel.less @@ -0,0 +1,78 @@ +/* dojox.mobile.Carousel */ +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselSlotSelected { +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial,helvetica,clean,sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial,helvetica,clean,sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; /* workaround for android problem */ +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} + +/* dojox.mobile._CarouselItem */ +.mblCarouselItem { + text-align: center; + .tap-highlight-color(rgba(255, 255, 255, 0)); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial,helvetica,clean,sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial,helvetica,clean,sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + .box-shadow(5px 5px 5px rgba(0, 0, 0, 0.5)); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + .box-shadow(none); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Carousel_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Carousel_rtl.less new file mode 100644 index 00000000..214a8be3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Carousel_rtl.less @@ -0,0 +1,13 @@ +/* dojox.mobile.Carousel Rtl */ +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle{ + margin: @mbl-carousel-margin-rtl; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/CheckBox-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/CheckBox-compat.less new file mode 100644 index 00000000..6a0dfec8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/CheckBox-compat.less @@ -0,0 +1,40 @@ +/* dojox.mobile.CheckBox */ +.mblCheckBox { + background-image: url(compat/button-bg.png); +} +.mblCheckBoxSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url(compat/button-chk-bg.png); + &.mblCheckBoxSelected { + background-image: url(compat/button-unsel-bg.png); + } +} + +.dj_gecko { + .mblCheckBox { + background-image: @mbl-button-background-image-gecko; + -moz-appearance: none; + } + .mblCheckBoxSelected { + background-image: @mbl-button-selected-background-image-gecko; + } + .mblCheckBoxChecked, + .mblCheckBox:checked { + background-image: @mbl-button-checked-background-image-gecko; + &::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; + } + &.mblCheckBoxSelected { + background-image: @mbl-blue-button-selected-background-image-gecko; + } + } +} +.dj_ff3 { + .mblCheckBox { + -moz-border-radius: @default-button-border-radius; + } +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/CheckBox.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/CheckBox.less new file mode 100644 index 00000000..abed7aca --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/CheckBox.less @@ -0,0 +1,42 @@ +/* dojox.mobile.CheckBox */ +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + .mbl-button-background-image(); + font: inherit; + cursor: pointer; + .appearance(none); + .tap-highlight-color(rgba(255,255,255,0)); + .transform(translateY(0.45em)); + .mblCheckBox-styles; +} +.mblCheckBoxSelected { + .mbl-button-selected-background-image(); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + .mbl-button-checked-background-image(); + &::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + .transform(rotate(45deg)); + .transform-origin(50% 50%); + .mblCheckBoxChecked-after-styles; + } + &.mblCheckBoxSelected { + .mbl-blue-button-selected-background-image(); + &::after { + .mblCheckBoxChecked-mblCheckBoxSelected-after-styles; + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ComboBox-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ComboBox-compat.less new file mode 100644 index 00000000..24df2071 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ComboBox-compat.less @@ -0,0 +1,11 @@ +/* dojox.mobile.ComboBox */ +.dj_gecko { + .dijitPopup { + &.mblComboBoxMenuPopup { + -moz-box-shadow: @mbl-combo-box-popup-box-shadow; + } + } + .mblComboBoxMenuItemSelected { + background-image: @default-selected-background-image-gecko; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ComboBox.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ComboBox.less new file mode 100644 index 00000000..140880c5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ComboBox.less @@ -0,0 +1,62 @@ +/* dojox.mobile.ComboBox */ +.dijitPopup { + &.mblComboBoxMenuPopup { + // Popup items have a wrapper div (dijitPopup) + // with the real popup inside, and maybe an iframe too + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + .box-shadow(@mbl-combo-box-popup-box-shadow); + .dijitPopup-styles; + } +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + // Style of the iframe descendant of the wrapper div of the popup. + // (similar to dijit's style for it). + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + .mblComboBoxMenu-styles; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + .mblComboBoxMenuItem-styles; +} +.mblComboBoxMenuItemSelected { + // dijitMenuItemHover refers to actual mouse over + // dijitMenuItemSelected is used after a menu has been "activated" by + // clicking it, tabbing into it, or being opened from a parent menu, + // and denotes that the menu item has focus or that focus is on a child menu + .mblComboBoxMenuItemSelected-styles; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ComboBox_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ComboBox_rtl.less new file mode 100644 index 00000000..01b95271 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ComboBox_rtl.less @@ -0,0 +1,4 @@ +/* dojox.mobile.ComboBox Rtl*/ +.mblComboBoxMenuItemRtl { + text-align: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/EdgeToEdgeCategory.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/EdgeToEdgeCategory.less new file mode 100644 index 00000000..06253192 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/EdgeToEdgeCategory.less @@ -0,0 +1,13 @@ +/* dojox.mobile.EdgeToEdgeCategory */ +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + .mblEdgeToEdgeCategory-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/EdgeToEdgeList.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/EdgeToEdgeList.less new file mode 100644 index 00000000..d199da9b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/EdgeToEdgeList.less @@ -0,0 +1,10 @@ +/* dojox.mobile.EdgeToEdgeList */ +.mblEdgeToEdgeList { +//cmp position: relative; // IE needs this + margin: 0; + padding: 0; + .mblEdgeToEdgeList-styles; + .mblListItem:last-child { + .mblEdgeToEdgeList-LastListItem-styles; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/FixedSplitter.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/FixedSplitter.less new file mode 100644 index 00000000..1b436a8c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/FixedSplitter.less @@ -0,0 +1,26 @@ +/* dojox.mobile.FixedSplitter */ +.mblFixedSplitter { + width: 100%; + height: 100%; +} + +/* For FixedSplitter's child panes */ +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} + +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} + +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} + +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/FormLayout.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/FormLayout.less new file mode 100644 index 00000000..552985d3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/FormLayout.less @@ -0,0 +1,210 @@ +/* Single Column Layout */ +/**********************************************************************************************************************/ + +/*** columns == 'auto' ***/ +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + /* A gap between rows */ + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + /* Text widgets */ + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox{ + width: 100%; + box-sizing: border-box; + } +} + +/*** columns == 'single' ***/ +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} + +/* A gap between rows */ +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} + +/* Text widgets */ +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox{ + width: 100%; + box-sizing: border-box; +} + + +/* Two Columns Layout */ +/**********************************************************************************************************************/ + +/*** columns == 'auto' ***/ +@media all and (min-width: 500px) { + /* Form layout selector*/ + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + /* Form rows */ + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + /* Form cells */ + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + /* Left cells */ + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width:20%; + padding-right: 0.5em; + } + + /* mblFormLayoutRightAlign optional selector definition */ + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + /* Force right margin of last elements of the right column, no way to select elements followed by a
    */ + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + /* The Slider sticks to its bounds when margin=10px */ + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + /* Text widgets */ + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox{ + width: 50%; + box-sizing: border-box; + } +} + +/*** columns == 'two' ***/ + +/* Form layout selector*/ +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} + +/* Form rows */ +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +/* Form cells */ +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} + +/* Left cells */ +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width:20%; + padding-right: 0.5em; +} + +/* mblFormLayoutRightAlign optional selector definition */ +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} + +/* Force right margin of last elements of the right column, no way to select elements followed by a
    */ +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} + +/* The Slider sticks to its bounds when margin=10px */ +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} + +/* Text widgets */ +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox{ + width: 50%; + box-sizing: border-box; +} + +/* Common Rules*/ +/**********************************************************************************************************************/ + +.mblFormLayout fieldset { + border: none; + margin: 0; +} + +/* Bold widget labels */ +.mblFormLayout > * > *:first-child { + font-weight: bold; +} + +/* Whatever the screen width, force left margin of first elements and elements following a
    */ +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} + +/* The Slider sticks to its bounds when margin=10px */ +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/FormLayout_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/FormLayout_rtl.less new file mode 100644 index 00000000..d43ae138 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/FormLayout_rtl.less @@ -0,0 +1,4 @@ +/* dojox.mobile.FormLayout Rtl */ +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/GridLayout.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/GridLayout.less new file mode 100644 index 00000000..ca407982 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/GridLayout.less @@ -0,0 +1,28 @@ +/* dojox.mobile.GridLayout */ +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} + +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height:1px; +} + +.mblGridItemFirstColumn { + clear:left; +} + +.mblGridItemTerminator { + clear:both; +} + +.mblGridItemLastItem:after { + content: ""; + display: block; + clear:both; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/GridLayout_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/GridLayout_rtl.less new file mode 100644 index 00000000..47b69515 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/GridLayout_rtl.less @@ -0,0 +1,4 @@ +/* dojox.mobile.GridLayout Rtl */ +.mblGridLayoutRtl > div { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Heading-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Heading-compat.less new file mode 100644 index 00000000..65438ff4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Heading-compat.less @@ -0,0 +1,13 @@ +/* dojox.mobile.Heading */ +.mblHeading { + background-image: url(compat/heading-bg.png); +} +.mblHeadingSpanTitle { + white-space: normal; +} + +.dj_gecko { + .mblHeading { + background-image: @heading-background-image-gecko; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Heading.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Heading.less new file mode 100644 index 00000000..9e0d9477 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Heading.less @@ -0,0 +1,34 @@ +/* dojox.mobile.Heading */ +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + .mblHeading-styles; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer-compat.less new file mode 100644 index 00000000..40d7bd8e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer-compat.less @@ -0,0 +1,16 @@ +/* dojox.mobile.IconContainer */ +.mblIconItemPaneHeading { + background-image: url(compat/icon-content-heading-bg.png); +} + +.dj_gecko { + .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + } +} + +.dj_ie7 { + .mblIconAreaInner { + font-size: 60px; + } +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer.less new file mode 100644 index 00000000..a3268f21 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer.less @@ -0,0 +1,118 @@ +/* dojox.mobile.IconContainer */ +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} + +/* dojox.mobile.IconItem */ +.mblIconItem { + position: relative; + overflow: hidden; /* for focus frame */ + list-style-type: none; + float: left; + .tap-highlight-color(rgba(255, 255, 255, 0)); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + .mblIconItemSub-styles; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + .mblIconArea-styles; + img { + vertical-align: middle; + } +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + .mblIconItemDeleteIcon-styles; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate{ + position: relative; + .animation-duration(.5s); + .animation-timing-function(ease-in-out); + .animation-iteration-count(infinite); + .animation-name(mblVibrate); + .transform(rotate(0deg)); +} +.mblCloseContent{ + .animation-duration(.3s); + .animation-timing-function(ease-in-out); + .animation-name(mblShrink); + .transform(scale(0.01)); + &.mblShrink0{ + .animation-name(mblShrink0); + } + &.mblShrink1{ + .animation-name(mblShrink1); + } + &.mblShrink2{ + .animation-name(mblShrink2); + } + &.mblShrink3{ + .animation-name(mblShrink3); + } +} + +/* dojox.mobile._IconItemPane */ +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + .background-image-linear-gradient-top-bottom-2-stops(#e0e4e7, #b4bec6, 0.5, #c4ccd2, 0.5, #bfc8ce); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0,0,0,0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} + +@-webkit-keyframes mblVibrate { .keyframes-vibrate-webkit(); } +@keyframes mblVibrate { .keyframes-vibrate (); } +@-webkit-keyframes mblShrink { .keyframes-transform-from-to-webkit(scale(1), scale(0.01)); } +@keyframes mblShrink { .keyframes-transform-from-to (scale(1), scale(0.01)); } +@-webkit-keyframes mblShrink0 { .keyframes-transform-from-to-webkit(scale(1), translate(-40%,-70%) scale(0.01)); } +@keyframes mblShrink0 { .keyframes-transform-from-to (scale(1), translate(-40%,-70%) scale(0.01)); } +@-webkit-keyframes mblShrink1 { .keyframes-transform-from-to-webkit(scale(1), translate(-14%,-70%) scale(0.01)); } +@keyframes mblShrink1 { .keyframes-transform-from-to (scale(1), translate(-14%,-70%) scale(0.01)); } +@-webkit-keyframes mblShrink2 { .keyframes-transform-from-to-webkit(scale(1), translate(14%,-70%) scale(0.01)); } +@keyframes mblShrink2 { .keyframes-transform-from-to (scale(1), translate(14%,-70%) scale(0.01)); } +@-webkit-keyframes mblShrink3 { .keyframes-transform-from-to-webkit(scale(1), translate(40%,-70%) scale(0.01)); } +@keyframes mblShrink3 { .keyframes-transform-from-to (scale(1), translate(40%,-70%) scale(0.01)); } diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer_keyframes.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer_keyframes.css new file mode 100644 index 00000000..f092c11b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer_keyframes.css @@ -0,0 +1,48 @@ + +@-webkit-keyframes mblVibrate{ + 0%{ + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: scale(0.01); } +} +@-webkit-keyframes mblShrink0{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: translate(-40%,-70%) scale(0.01); } +} +@-webkit-keyframes mblShrink1{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: translate(-14%,-70%) scale(0.01); } +} +@-webkit-keyframes mblShrink2{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: translate(14%,-70%) scale(0.01); } +} +@-webkit-keyframes mblShrink3{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: translate(40%,-70%) scale(0.01); } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer_rtl.less new file mode 100644 index 00000000..fa7e8394 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconContainer_rtl.less @@ -0,0 +1,14 @@ +/* dojox.mobile.IconItem Rtl */ +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: @mbl-icon-container-right-rtl; +} +/* dojox.mobile._IconItemPane Rtl*/ +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu-compat.less new file mode 100644 index 00000000..aeb80eb9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu-compat.less @@ -0,0 +1,44 @@ +/* dojox.mobile.IconMenu */ +.mblIconMenu { + .mblIconMenu-compat; +} +.mblIconMenuItemSel { + .mblIconMenuItemSel-compat; +} + +.dj_gecko { + .mblIconMenu { + .mblIconMenu-compat-gecko; + } + .mblIconMenuItem { + -moz-box-sizing: border-box; + } + .mblIconMenuItemSel { + .mblIconMenuItemSel-compat-gecko; + } +} + +.dj_ff3 { + .mblIconMenu { + -moz-border-radius: @mbl-icon-menu-border-radius; + } + .mblIconMenuItemIcon img { + border: 1px solid red; + } + .mblIconMenuItemFirstRow { + &.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: @mbl-icon-menu-item-border-radius; + } + &.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: @mbl-icon-menu-item-border-radius; + } + } + .mblIconMenuItemLastRow { + &.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: @mbl-icon-menu-item-border-radius; + } + &.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: @mbl-icon-menu-item-border-radius; + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu.less new file mode 100644 index 00000000..4fa2e34b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu.less @@ -0,0 +1,62 @@ +/* dojox.mobile.IconMenu */ +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: @mbl-icon-menu-border-radius; + text-align: center; + .tap-highlight-color(rgba(255, 255, 255, 0)); + .mblIconMenu-styles; +} + +/* dojox.mobile.IconMenuItem */ +.mblIconMenuItem { + float: left; + list-style-type: none; + .box-sizing(border-box); + .mblIconMenuItem-styles; +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow { + &.mblIconMenuItemFirstColumn { + border-top-left-radius: @mbl-icon-menu-item-border-radius; + } + &.mblIconMenuItemLastColumn { + border-top-right-radius: @mbl-icon-menu-item-border-radius; + } +} +.mblIconMenuItemLastRow { + &.mblIconMenuItemFirstColumn { + border-bottom-left-radius: @mbl-icon-menu-item-border-radius; + } + &.mblIconMenuItemLastColumn { + border-bottom-right-radius: @mbl-icon-menu-item-border-radius; + } +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + .mblIconMenuItemAnchor-styles; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; + img { + border: none; + } +} +.mblIconMenuItemSel { + .mblIconMenuItemSel-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu_rtl-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu_rtl-compat.less new file mode 100644 index 00000000..7c05eaea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu_rtl-compat.less @@ -0,0 +1,19 @@ +/* dojox.mobile.IconMenu Rtl */ + +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: @mbl-border-radius-rtl; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: @mbl-border-radius-rtl; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: @mbl-border-radius-rtl; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: @mbl-border-radius-rtl; + -moz-border-bottom-right-radius: 0px; +} + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu_rtl.less new file mode 100644 index 00000000..5750526a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/IconMenu_rtl.less @@ -0,0 +1,95 @@ +.mblIconMenuItemRtl { + float: right; +} +.first-column(@v){ +&.mblIconMenuItemFirstColumn{ + border-right: none; + border-left: @v; +} +} + +.menu-item-first-column(@v){ +.mblIconMenuItemRtl{ + .first-column (@v); + } +} + +.top-radius(@r, @l){ + border-top-right-radius: @r; + border-top-left-radius: @l; + } + +.bottom-radius(@r, @l){ + border-bottom-right-radius: @r; + border-bottom-left-radius: @l; + } + +.first-row-first-column(@r, @l: 0px){ +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + .top-radius(@r, @l); +} +} + +.first-row-last-column(@r: 0px, @l){ +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + .top-radius(@r, @l); +} +} + +.last-row-first-column(@r, @l: 0px){ +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + .bottom-radius(@r, @l); +} +} + +.last-row-last-column(@r: 0px, @l){ +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + .bottom-radius(@r, @l); +} +} +.mixin(android, @r:6px, @l: 0px, @v:~"1px solid rgba(96, 96, 96, 0.85)"){ + .menu-item-first-column(@v); + .first-row-first-column(@r, @l); + .first-row-last-column(@l, @r); + .last-row-first-column(@r, @l); + .last-row-last-column(@l ,@r); + +} + +.mixin(iphone, @r:10px, @l: 0px, @v:~"1px solid #6b6c6f"){ + .menu-item-first-column(@v); + .first-row-first-column(@r, @l); + .first-row-last-column(@l, @r); + .last-row-first-column(@r, @l); + .last-row-last-column(@l ,@r); + +} + +.mixin(custom, @r:3px, @l: 0px, @v:~"1px solid rgba(192, 192, 192, 0.85)"){ + .menu-item-first-column(@v); + .first-row-first-column(@r, @l); + .first-row-last-column(@l, @r); + .last-row-first-column(@r, @l); + .last-row-last-column(@l ,@r); + +} +.mixin(blackberry, @v:~"1px solid #000000"){ + .first-column(@v); +} +.mixin(holoDark, @r:6px, @l: 0px, @v:~"1px solid rgba(96, 96, 96, 0.85)"){ + .menu-item-first-column(@v); + .first-row-first-column(@r, @l); + .first-row-last-column(@l, @r); + .last-row-first-column(@r, @l); + .last-row-last-column(@l ,@r); + +} +.mixin(ios7, @r:6px, @l: 0px, @v:~"1px solid rgba(96, 96, 96, 0.85)"){ + .menu-item-first-column(@v); + .first-row-first-column(@r, @l); + .first-row-last-column(@l, @r); + .last-row-first-column(@r, @l); + .last-row-last-column(@l ,@r); + +} +.mixin(@theme-id); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ListItem-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ListItem-compat.less new file mode 100644 index 00000000..12b1c169 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ListItem-compat.less @@ -0,0 +1,16 @@ +/* dojox.mobile.ListItem */ +.mblListItemSelected { + background-color: @default-selected-background-color; +} + +.dj_gecko { + .mblListItemSelected { + background-image: @default-selected-background-image-gecko; + } +} + +.dj_ie6 { + .mblListItem { + vertical-align: bottom; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ListItem.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ListItem.less new file mode 100644 index 00000000..ab113420 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ListItem.less @@ -0,0 +1,117 @@ +/* dojox.mobile.ListItem */ +.mblListItem { + position: relative; + overflow: hidden; /* for focus frame */ + padding: 0 8px; + height: @mbl-list-item-height; + list-style-type: none; + line-height: @mbl-list-item-height; + .tap-highlight-color(rgba(255,255,255,0)); + .mblListItem-styles; + &.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; + } +} +.mblListItemSelected { + .mblListItemSelected-styles; + .mblDomButton { + div { + border-color: white; + } + } +} +.mblListItemLabelSelected { + .mblListItemLabelSelected-styles; +} +.mblListItemChecked { + .mblListItemChecked-styles; +} + +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} + +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} + +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: (@mbl-list-item-height - 29) / 2; // '29': Icon's height. + margin-bottom: -(@mbl-list-item-height - 29) / 2; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: (@mbl-list-item-height - 29) / 2; + margin-bottom: -(@mbl-list-item-height - 29) / 2; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: (@mbl-list-item-height - 29) / 2; + margin-bottom: -(@mbl-list-item-height - 29) / 2; +} + +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + .mblListItemRightText-styles; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + .mblListItemSubText-styles; +} + +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} + +/* dojox.mobile._EditableListMixin */ +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + .box-shadow(5px 5px 5px rgba(0, 0, 0, 0.5)); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ListItem_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ListItem_rtl.less new file mode 100644 index 00000000..a755b9b2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ListItem_rtl.less @@ -0,0 +1,27 @@ +/* dojox.mobile.ListItem Rtl*/ +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Overlay-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Overlay-compat.less new file mode 100644 index 00000000..5d3bb6f1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Overlay-compat.less @@ -0,0 +1,22 @@ +/* dojox.mobile.Overlay */ +.mblOverlay { + text-align: center; + .mblOverlay-compat; +} +.dj_gecko { + .mblOverlay { + text-align: -moz-center; + .mblOverlay-compat-gecko; + } +} +.dj_ie9, .dj_ie8 { + .mblOverlay > * + { + margin: 0 auto; + } +} +.dj_ie6 { + .mblOverlay { + *position: absolute; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Overlay.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Overlay.less new file mode 100644 index 00000000..076928c9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Overlay.less @@ -0,0 +1,15 @@ +/* dojox.mobile.Overlay */ +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + .mblOverlay-styles; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/PageIndicator.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/PageIndicator.less new file mode 100644 index 00000000..06f41765 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/PageIndicator.less @@ -0,0 +1,23 @@ +/* dojox.mobile.PageIndicator */ +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + .tap-highlight-color(rgba(255,255,255,0)); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/PageTurning.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/PageTurning.css new file mode 100644 index 00000000..7d38a11f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/PageTurning.css @@ -0,0 +1,34 @@ +.mblPageTurningCatalog { + position: absolute; + overflow: hidden; +} +.mblPageTurningPage { + position: absolute; + overflow: hidden; + -webkit-transform-origin: 100% 0%; + -webkit-transition-property: -webkit-transform; + -webkit-transition-duration: 0s; +} +.mblPageTurningFront { + position: absolute; + overflow: hidden; + -webkit-box-shadow: 0 0 11px rgba(0, 0, 0, .7); + -webkit-transform-origin: 0px 0px; + -webkit-transition-property: -webkit-transform, -webkit-transform-origin; + -webkit-transition-duration: 0s; +} +.mblPageTurningBack { + position: absolute; + background: white; + overflow: hidden; + -webkit-box-shadow: 0 0 11px rgba(0, 0, 0, .7); + -webkit-transform-origin: 0px 0px; + -webkit-transition-property: -webkit-transform, -webkit-transform-origin; + -webkit-transition-duration: 0s; +} +.mblPageTurningShadow { + position: absolute; + top: 0px; + width: 4px; + -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, .7); +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressBar-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressBar-compat.less new file mode 100644 index 00000000..003f91af --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressBar-compat.less @@ -0,0 +1,17 @@ +/* Progress Bar */ +.mblProgressBar { + .mblProgressBar-compat; +} +.mblProgressBarProgress { + .mblProgressBarProgress-compat; +} +.dj_gecko { + .mblProgressBar { + .mblProgressBar-compat-gecko; + } + .mblProgressBarProgress { + -moz-transition-property: width; + -moz-transition-duration: 0.25s; + .mblProgressBarProgress-compat-gecko; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressBar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressBar.less new file mode 100644 index 00000000..5d99006d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressBar.less @@ -0,0 +1,27 @@ +/* dojox.mobile.ProgressBar */ +.mblProgressBar { + position: relative; + .mblProgressBar-styles; +} +.mblProgressBarProgress { + .transition-property(width); + .transition-duration(0.25s); + .mblProgressBarProgress-styles; +} +.mblProgressBarComplete { + .mblProgressBarComplete-styles; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; + .mblProgressBarNotStarted-styles; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + .mblProgressBarMsg-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressIndicator-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressIndicator-compat.less new file mode 100644 index 00000000..d1de0b4c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressIndicator-compat.less @@ -0,0 +1,89 @@ +/* Progress Indicator */ + +.dj_ie { + .mblProg { + width: 4px; + height: 36px; + } + .mblProg0 { + left: 0px; + } + .mblProg1 { + left: 8px; + } + .mblProg2 { + left: 16px; + } + .mblProg3 { + left: 24px; + } + .mblProg4 { + left: 32px; + } + .mblProg5 { + left: 40px; + } + .mblProg6 { + left: 48px; + } + .mblProg7 { + left: 56px; + } + .mblProg8 { + left: 64px; + } + .mblProg9 { + left: 72px; + } + .mblProg10 { + left: 80px; + } + .mblProg11 { + left: 80px; + } +} + +.dj_gecko { + .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; + } + .mblProg { + -moz-transform-origin: 0 2px; + } + .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); + } + .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); + } + .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); + } + .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); + } + .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); + } + .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); + } + .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); + } + .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); + } + .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); + } + .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); + } + .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); + } + .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressIndicator.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressIndicator.less new file mode 100644 index 00000000..e33386a0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressIndicator.less @@ -0,0 +1,146 @@ +/* Progress Indicator */ +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + .transform-origin(50% 0); +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + .transform-origin(0 2px); + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + .transform(translate(18px,10px) rotate(-90.1deg)); +} +.mblProg1 { + .transform(translate(22px,11px) rotate(-60deg)); +} +.mblProg2 { + .transform(translate(25px,14px) rotate(-30deg)); +} +.mblProg3 { + .transform(translate(26px,18px) rotate(0deg)); +} +.mblProg4 { + .transform(translate(25px,22px) rotate(30deg)); +} +.mblProg5 { + .transform(translate(22px,25px) rotate(60deg)); +} +.mblProg6 { + .transform(translate(18px,26px) rotate(90.1deg)); +} +.mblProg7 { + .transform(translate(14px,25px) rotate(120deg)); +} +.mblProg8 { + .transform(translate(11px,22px) rotate(150deg)); +} +.mblProg9 { + .transform(translate(10px,18px) rotate(180deg)); +} +.mblProg10 { + .transform(translate(11px,14px) rotate(210deg)); +} +.mblProg11 { + .transform(translate(14px,11px) rotate(240deg)); +} + +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} + + +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressIndicator_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressIndicator_rtl.less new file mode 100644 index 00000000..36cb5673 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ProgressIndicator_rtl.less @@ -0,0 +1,14 @@ +/* dojox.mobile.ProgressIndicator Rtl */ +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: @mbl-progress-center-left-rtl; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: -@mbl-progress-center-left-rtl; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RadioButton-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RadioButton-compat.less new file mode 100644 index 00000000..8dd46f2e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RadioButton-compat.less @@ -0,0 +1,34 @@ +/* dojox.mobile.RadioButton */ +.mblRadioButton { + background-image: url(compat/button-bg.png); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url(compat/button-chk-bg.png); + &.mblRadioButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); + } +} + +.dj_gecko { + .mblRadioButton { + background-image: @mbl-button-background-image-gecko; + -moz-appearance: none; + } + .mblRadioButtonChecked, + .mblRadioButton:checked { + background-image: @mbl-button-checked-background-image-gecko; + &::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; + } + &.mblRadioButtonSelected { + background-image: @mbl-blue-button-selected-background-image-gecko; + } + } +} +.dj_ff3 { + .mblRadioButton { + -moz-border-radius: 0.5em; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RadioButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RadioButton.less new file mode 100644 index 00000000..7d390b5f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RadioButton.less @@ -0,0 +1,40 @@ +/* dojox.mobile.RadioButton */ +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + .mbl-button-background-image(); + font: inherit; + cursor: pointer; + .appearance(none); + .tap-highlight-color(rgba(255,255,255,0)); + .transform(translateY(0.45em)); + .mblRadioButton-styles; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + .mbl-button-checked-background-image(); + &::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + .transform(rotate(45deg)); + .transform-origin(50% 50%); + .mblRadioButtonChecked-after-styles; + } + &.mblRadioButtonSelected { + .mbl-blue-button-selected-background-image(); + &::after { + .mblRadioButtonChecked-Selected-after-styles; + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRect-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRect-compat.less new file mode 100644 index 00000000..e570ea4c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRect-compat.less @@ -0,0 +1,80 @@ +/* dojox.mobile.RoundRect */ +.mblRoundRect.mblShadow { + box-shadow: @mbl-round-rect-box-shadow; +} + +.dj_ff3 { + .mblRoundRect { + -moz-border-radius: @mbl-round-rect-border-radius; + } + .mblRoundRect.mblShadow { + -moz-box-shadow: @mbl-round-rect-box-shadow; + } +} + +/* Round Corner */ +.dj_ie { + .mblRoundCorner { + background-color: @mbl-round-rect-background-color; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: @mbl-round-rect-border-color; + border-width: 0 1px; + } + .mblRoundRectContainer { + padding: 3px 8px; + background-color: @mbl-round-rect-background-color; + border-style: solid; + border-color: @mbl-round-rect-border-color; + border-width: 0 1px; + } + .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; + } + .mblRoundCorner0T { + height: 0; + } + .mblRoundCorner1T { + background-color: @mbl-round-rect-border-color; + margin: 0 5px; + } + .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; + } + .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; + } + .mblRoundCorner4T { + margin: 0 1px; + } + .mblRoundCorner5T { + margin: 0 1px; + } + + .mblRoundCorner0B { + height: 0; + } + .mblRoundCorner1B { + margin: 0 1px; + } + .mblRoundCorner2B { + margin: 0 1px; + } + .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; + } + .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; + } + .mblRoundCorner5B { + background-color: @mbl-round-rect-border-color; + margin: 0 5px; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRect.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRect.less new file mode 100644 index 00000000..7866e2d3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRect.less @@ -0,0 +1,12 @@ +/* dojox.mobile.RoundRect */ +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid @mbl-round-rect-border-color; + border-radius: @mbl-round-rect-border-radius; + background-color: @mbl-round-rect-background-color; + .mblRoundRect-styles; + &.mblShadow { + .box-shadow(@mbl-round-rect-box-shadow); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectCategory.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectCategory.less new file mode 100644 index 00000000..5794ed5f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectCategory.less @@ -0,0 +1,11 @@ +/* dojox.mobile.RoundRectCategory */ +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + .mblRoundRectCategory-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectCategory_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectCategory_rtl.less new file mode 100644 index 00000000..2a7ffc31 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectCategory_rtl.less @@ -0,0 +1,4 @@ +/* dojox.mobile.RoundRectCategory Rtl */ +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectList-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectList-compat.less new file mode 100644 index 00000000..3155f7f4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectList-compat.less @@ -0,0 +1,84 @@ +/* dojox.mobile.RoundRectList */ +.dj_ff3 { + .mblRoundRectList { + -moz-border-radius: @mbl-round-rect-border-radius; + } + .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: @mbl-round-rect-border-radius; + -moz-border-radius-topright: @mbl-round-rect-border-radius; + } + .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: @mbl-round-rect-border-radius; + -moz-border-radius-bottomright: @mbl-round-rect-border-radius; + } +} + +/* Round Corner */ +.dj_ie { + .mblRoundRectList { + position: relative; + } + .mblRoundCorner { + background-color: @mbl-round-rect-background-color; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: @mbl-round-rect-border-color; + border-width: 0 1px; + } + .mblRoundRectContainer { + padding: 3px 8px; + background-color: @mbl-round-rect-background-color; + border-style: solid; + border-color: @mbl-round-rect-border-color; + border-width: 0 1px; + } + .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; + } + .mblRoundCorner0T { + height: 0; + } + .mblRoundCorner1T { + background-color: @mbl-round-rect-border-color; + margin: 0 5px; + } + .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; + } + .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; + } + .mblRoundCorner4T { + margin: 0 1px; + } + .mblRoundCorner5T { + margin: 0 1px; + } + + .mblRoundCorner0B { + height: 0; + } + .mblRoundCorner1B { + margin: 0 1px; + } + .mblRoundCorner2B { + margin: 0 1px; + } + .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; + } + .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; + } + .mblRoundCorner5B { + background-color: @mbl-round-rect-border-color; + margin: 0 5px; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectList.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectList.less new file mode 100644 index 00000000..6c47d5e8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/RoundRectList.less @@ -0,0 +1,19 @@ +/* dojox.mobile.RoundRectList */ +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid @mbl-round-rect-border-color; + border-radius: @mbl-round-rect-border-radius; + background-color: @mbl-round-rect-background-color; + .mblListItem:first-child, + .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: @mbl-round-rect-border-radius; + border-top-right-radius: @mbl-round-rect-border-radius; + } + .mblListItem:last-child, + .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: @mbl-round-rect-border-radius; + border-bottom-right-radius: @mbl-round-rect-border-radius; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ScrollablePane.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ScrollablePane.less new file mode 100644 index 00000000..ed715a4d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ScrollablePane.less @@ -0,0 +1,12 @@ +/* dojox.mobile.mblScrollablePane */ +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SearchBox-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SearchBox-compat.less new file mode 100644 index 00000000..bbf9a190 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SearchBox-compat.less @@ -0,0 +1,31 @@ +/* dojox.mobile.SearchBox */ +@import url("TextBox-compat.css"); + +.mblSearchBox { + height: auto; +} + +/* CSS class for the parent DIV of the dojox/mobile/SearchBox used for filtering a + dojox/mobile/RoundRectList or subclass. This class is set by dojox/mobile/FilteredListMixin + only if the mixin creates the SearchBox by itself. */ +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} + +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} + +/* CSS class for the parent DIV of the dojox/mobile/SearchBox used for filtering a + dojox/mobile/EdgeToEdgeList or subclass. This class is set by dojox/mobile/FilteredListMixin + only if the mixin creates the SearchBox by itself. */ +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} + +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SearchBox.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SearchBox.less new file mode 100644 index 00000000..caf75424 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SearchBox.less @@ -0,0 +1,110 @@ +/* dojox.mobile.SearchBox */ +@import url("TextBox.css"); + +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button +{ // cannot touch cancel button even if visible + background: none !important; + border-color: transparent !important; +} + +.mblSearchBox::-webkit-search-cancel-button +{ + .appearance(none); + background-color: @mbl-searchbox-cancel-button-bg-color; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: + -webkit-gradient(linear, + left top, + right bottom, + from(transparent), + color-stop(0.46, transparent), + color-stop(0.46, @mbl-searchbox-cancel-button-color), + color-stop(0.54, @mbl-searchbox-cancel-button-color), + color-stop(0.54, transparent), + to(transparent) + ), + -webkit-gradient(linear, + right top, + left bottom, + from(transparent), + color-stop(0.46, transparent), + color-stop(0.46, @mbl-searchbox-cancel-button-color), + color-stop(0.54, @mbl-searchbox-cancel-button-color), + color-stop(0.54, transparent), + to(transparent) + ) + !important; + border: 2px solid @mbl-searchbox-cancel-button-bg-color; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + .mblSearchBox-Cancel-Button-styles; +} + +.mblSearchBox::-webkit-search-results-decoration { + .appearance(none); + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: + -webkit-gradient(radial, + 50% 50%, 0, + 50% 50%, 6, + from(transparent), + color-stop(0.65, transparent), + color-stop(0.8, @mbl-searchbox-results-decoration-color), + color-stop(0.95, transparent), + to(transparent) + ), + -webkit-gradient(linear, + right top, + left bottom, + from(transparent), + color-stop(0.425, transparent), + color-stop(0.5, @mbl-searchbox-results-decoration-color), + color-stop(0.575, transparent), + to(transparent) + ) + !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} + +/* CSS class for the parent DIV of the dojox/mobile/SearchBox used for filtering a + dojox/mobile/RoundRectList or subclass. This class is set by dojox/mobile/FilteredListMixin + only if the mixin creates the SearchBox by itself. */ +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} + +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} + +/* CSS class for the parent DIV of the dojox/mobile/SearchBox used for filtering a + dojox/mobile/EdgeToEdgeList or subclass. This class is set by dojox/mobile/FilteredListMixin + only if the mixin creates the SearchBox by itself. */ +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} + +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SimpleDialog-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SimpleDialog-compat.less new file mode 100644 index 00000000..20786be8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SimpleDialog-compat.less @@ -0,0 +1,16 @@ +/* dojox.mobile.SimpleDialog */ +.mblSimpleDialogDecoration { + .mblSimpleDialogDecoration-compat; +} + +.dj_gecko { + .mblSimpleDialogDecoration { + .mblSimpleDialogDecoration-compat-gecko; + } +} + +.dj_ff3 { + .mblSimpleDialogDecoration { + -moz-border-radius: @mbl-simple-dialog-border-radius; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SimpleDialog.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SimpleDialog.less new file mode 100644 index 00000000..9d923374 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SimpleDialog.less @@ -0,0 +1,37 @@ +/* dojox.mobile.SimpleDialog */ +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + .mblSimpleDialog-styles; +} +.mblSimpleDialogDecoration { + border-radius: @mbl-simple-dialog-border-radius; + .mblSimpleDialogDecoration-styles; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + .mblSimpleDialogTitle-styles; +} +.mblSimpleDialogText { + .mblSimpleDialogText-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Slider-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Slider-compat.less new file mode 100644 index 00000000..e8633439 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Slider-compat.less @@ -0,0 +1,45 @@ +/* dojox.mobile.Slider */ +.mblSlider { + background-image: url(compat/slider-h-bg.png); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url(compat/slider-h-bar-bg.png); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url(compat/slider-handle-bg.png); +} +.mblSliderV { + background-color: @mbl-switch-bg-right-background-color; + background-image: none; + .mblSliderProgressBar { + background-color: @mbl-switch-bg-left-background-color; + background-image: none; + } +} + +.dj_gecko { + .mblSlider { + background-image: @mbl-switch-bg-right-background-image-gecko; + -moz-user-select: none; // prevent selection + -moz-box-sizing: content-box; // make width and height consistent with a DIV + } + .mblSliderProgressBar { + background-image: @mbl-switch-bg-left-background-image-gecko; + } + .mblSliderHandle { + background-image: @mbl-switch-knob-background-image-gecko; + } +} +.dj_ff3 { + .mblSlider { + -moz-border-radius: @mbl-slider-bar-border-radius; + } + .mblSliderProgressBar { + -moz-border-radius: @mbl-slider-bar-border-radius; + } + .mblSliderHandle { + -moz-border-radius: @mbl-slider-knob-border-radius; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Slider.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Slider.less new file mode 100644 index 00000000..fe8977f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Slider.less @@ -0,0 +1,59 @@ +/* dojox.mobile.Slider */ +.mblSlider { + margin: 15px; // 1/2 handle width for hanging off the ends of the bar + border-style: inset; + border-width: 1px; + border-radius: @mbl-slider-bar-border-radius; + .mbl-switch-bg-right-background-image(); + .user-select(none); // prevent selection + .box-sizing(content-box); // make width and height consistent with a DIV + .mblSlider-styles; +} +.mblSliderH { + width: 200px; + height: 8px; + .mblSliderProgressBar { + height: 100%; + } + .mblSliderHandle { + top: 50%; + } +} +.mblSliderV { + height: 200px; + width: 8px; + .mblSliderProgressBar { + width: 100%; + } + .mblSliderHandle { + left: 50%; + } +} +.mblSliderProgressBar { + border-radius: @mbl-slider-bar-border-radius; + .mbl-switch-bg-left-background-image(); +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: @mbl-slider-knob-border-radius; + .mbl-switch-knob-background-image(); + .mblSliderHandle-styles; +} +.mblSliderTransition { + .transition-duration(400ms); +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + .tap-highlight-color(rgba(255,255,255,0)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel-compat.less new file mode 100644 index 00000000..e8b480f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel-compat.less @@ -0,0 +1,48 @@ +.mblSpinWheel { + background-image: url(../common/compat/spinwheel-bg.png); +} +.mblSpinWheelBar { + background-image: url(../common/compat/spinwheel-bar.png); +} +.mblSpinWheelSlotTouch, .mblSpinWheelSlotPanel { + left: 0; +} + +.dj_gecko { + .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + } + .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); + } +} +.dj_ff3 { + .mblSpinWheel { + -moz-border-radius: 3px; + } +} + +.dj_ie { + .mblSpinWheelBar { + filter: ~"progid:DXImageTransform.Microsoft.alpha(opacity=60)"; + } +} +.dj_ie6, .dj_ie7 { + .mblSpinWheelBar { + z-index: -1; + } +} +.dj_ie7 { + .mblSpinWheelSlotTouch { + background: white; + filter: ~"alpha(opacity=0)"; + height: 200px; + } +} +.dj_ie6 { + .mblSpinWheelSlotTouch { + background: white; + filter: ~"alpha(opacity=0)"; + height: 200px; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel.less new file mode 100644 index 00000000..7419dd94 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel.less @@ -0,0 +1,92 @@ +/* dojox.mobile.SpinWheel */ +.mblSpinWheel { + position: relative; + overflow: hidden; + .background-spinwheel(); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} + +.mblSpinWheelBar { + position: absolute; + top: 79px; + .background-spinwheelbar(); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} + +.mblSpinWheelDatePicker { + width: 312px; +} + +.mblSpinWheelTimePicker { + width: 98px; +} + +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + .tap-highlight-color(rgba(255,255,255,0)); +} + +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica,sans-serif; +} + +.mblSpinWheelSlotLabel img{ + vertical-align: middle; + opacity: 0.7; +} + +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} + +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} + +.mblSpinWheelSlotContainer { + position: relative; +} + +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} + +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} + +.dj_ie { + .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); + } +} + +.dj_ie8 { + .mblSpinWheelSlotTouch { + background: white; + filter: ~"alpha(opacity=0)"; + } +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel_rtl-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel_rtl-compat.less new file mode 100644 index 00000000..4791511c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel_rtl-compat.less @@ -0,0 +1,4 @@ +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel_rtl.less new file mode 100644 index 00000000..c3efc85b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/SpinWheel_rtl.less @@ -0,0 +1,5 @@ +/* dojox.mobile.SpinWheel Rtl */ +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch-compat.less new file mode 100644 index 00000000..311526f4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch-compat.less @@ -0,0 +1,139 @@ +/* dojox.mobile.Switch */ +/* Switch - common */ +.dj_gecko { + .mblSwitchBg { + -moz-box-sizing: border-box; + } + .mblSwitchKnob { + -moz-box-sizing: border-box; + } + .mblSwitch { + .mblSwitchBgLeft { + background-image: @mbl-switch-bg-left-background-image-gecko; + } + .mblSwitchBgRight { + background-image: @mbl-switch-bg-right-background-image-gecko; + } + .mblSwitchKnob { + background-image: @mbl-switch-knob-background-image-gecko; + } + } +} + +.dj_ie { + .mblSwitchBg { + border: none; + background: none; + } + .mblSwitchBgLeft { + background-repeat: no-repeat; + } + .mblSwitchBgRight { + background-repeat: no-repeat; + } + .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; + } +} + +/* Square Shape */ +.mblSwSquareShape-styles () { + .mblSwitchBg { + -moz-border-radius: @mbl-switch-square-border-radius; + } + .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); + } + .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); + } + .mblSwitchKnob { + -moz-border-radius: @mbl-switch-square-border-radius; + background-image: url(compat/switch-square-k.gif); + } +} +.mblSwSquareShape { + .mblSwSquareShape-styles; +} + +/* Round Shape1 */ +.mblSwRoundShape1-styles () { + .mblSwitchBg { + -moz-border-radius: 14px; + } + .mblSwitchBgLeft { + background-image: url(compat/switch-round1-l.gif); + } + .mblSwitchBgRight { + background-image: url(compat/switch-round1-r.gif); + } + .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round1-k.gif); + } +} +.mblSwRoundShape1 { + .mblSwRoundShape1-styles; +} + +/* Round Shape2 */ +.mblSwRoundShape2-styles () { + .mblSwitchBg { + -moz-border-radius: 14px; + } + .mblSwitchBgLeft { + background-image: url(compat/switch-round2-l.gif); + } + .mblSwitchBgRight { + background-image: url(compat/switch-round2-r.gif); + } + .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round2-k.gif); + } +} +.mblSwRoundShape2 { + .mblSwRoundShape2-styles; +} + +/* Arc Shape1 */ +.mblSwArcShape1-styles () { + .mblSwitchBg { + -moz-border-radius: ~"5px/14px"; + } + .mblSwitchBgLeft { + background-image: url(compat/switch-arc1-l.gif); + } + .mblSwitchBgRight { + background-image: url(compat/switch-arc1-r.gif); + } + .mblSwitchKnob { + -moz-border-radius: ~"5px/13px"; + background-image: url(compat/switch-arc1-k.gif); + } +} +.mblSwArcShape1 { + .mblSwArcShape1-styles; +} + +/* Switch - Arc Shape2 */ +.mblSwArcShape2-styles () { + .mblSwitchBg { + -moz-border-radius: ~"5px/14px"; + } + .mblSwitchBgLeft { + background-image: url(compat/switch-arc2-l.gif); + } + .mblSwitchBgRight { + background-image: url(compat/switch-arc2-r.gif); + } + .mblSwitchKnob { + -moz-border-radius: ~"5px/13px"; + background-image: url(compat/switch-arc2-k.gif); + } +} +.mblSwArcShape2 { + .mblSwArcShape2-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch.less new file mode 100644 index 00000000..77320227 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch.less @@ -0,0 +1,219 @@ +/* dojox.mobile.Switch */ +/* Switch - common */ +@mbl-switch-height: 27px; +// +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: @mbl-switch-height; + line-height: @mbl-switch-height + 2; + overflow: hidden; + text-align: left; + .tap-highlight-color(rgba(255,255,255,0)); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: (@mbl-list-item-height - @mbl-switch-height) / 2; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: @mbl-switch-height; +} +.mblSwitchAnimation .mblSwitchInner { + .transition-property(left); + .transition-duration(.1s); +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: @mbl-switch-height; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: @mbl-switch-height + 2; + .box-sizing(border-box); + .mblSwitchBg-styles; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + .mbl-switch-bg-left-background-image(); +} +.mblSwitchBgRight { + color: #7f7f7f; + .mbl-switch-bg-right-background-image(); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: @mbl-switch-height; + .mbl-switch-knob-background-image(); + font-size: 1px; + .box-sizing(border-box); + .mblSwitchKnob-styles; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: @mbl-switch-height; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} + +/* Square Shape */ +.mblSwSquareShape-styles () { + width: 94px; + &.mblSwitchOff .mblSwitchInner { + left: -53px; + } + .mblSwitchBg { + border-radius: @mbl-switch-square-border-radius; + } + .mblSwitchBgRight { + left: 53px; + } + .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: @mbl-switch-square-border-radius; + } + .mblSwitchText { + width: 53px; + } + .mblSwitchTextRight { + left: 40px; + } +} +.mblSwSquareShape { + .mblSwSquareShape-styles; +} + +/* Round Shape1 */ +.mblSwRoundShape1-styles () { + width: 77px; + &.mblSwitchOff .mblSwitchInner { + left: -50px; + } + .mblSwitchBg { + width: 77px; + border-radius: 14px; + } + .mblSwitchBgRight { + left: 50px; + } + .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; + } + .mblSwitchText { + width: 50px; + } + .mblSwitchTextRight { + left: 26px; + } +} +.mblSwRoundShape1 { + .mblSwRoundShape1-styles; +} + +/* Round Shape2 */ +.mblSwRoundShape2-styles () { + width: 94px; + &.mblSwitchOff .mblSwitchInner { + left: -51px; + } + .mblSwitchBg { + border-radius: 14px; + } + .mblSwitchBgRight { + left: 51px; + } + .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; + } + .mblSwitchText { + width: 51px; + } + .mblSwitchTextRight { + left: 42px; + } +} +.mblSwRoundShape2 { + .mblSwRoundShape2-styles; +} + +/* Arc Shape1 */ +.mblSwArcShape1-styles () { + width: 77px; + &.mblSwitchOff .mblSwitchInner { + left: -50px; + } + .mblSwitchBg { + width: 77px; + border-radius: ~"5px/14px"; + } + .mblSwitchBgRight { + left: 50px; + } + .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: ~"5px/13px"; + } + .mblSwitchText { + width: 50px; + } + .mblSwitchTextRight { + left: 26px; + } +} +.mblSwArcShape1 { + .mblSwArcShape1-styles; +} + +/* Arc Shape2 */ +.mblSwArcShape2-styles () { + width: 94px; + &.mblSwitchOff .mblSwitchInner { + left: -51px; + } + .mblSwitchBg { + border-radius: ~"5px/14px"; + } + .mblSwitchBgRight { + left: 51px; + } + .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: ~"5px/13px"; + } + .mblSwitchText { + width: 51px; + } + .mblSwitchTextRight { + left: 42px; + } +} +.mblSwArcShape2 { + .mblSwArcShape2-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch_rtl-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch_rtl-compat.less new file mode 100644 index 00000000..df6b532a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch_rtl-compat.less @@ -0,0 +1,43 @@ +/* dojox.mobile.Switch Rtl */ +/* Square Shape Rtl */ +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} +/* Round Shape1 Rtl */ +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round1-l.gif); +} +/* Round Shape2 Rtl */ +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round2-l.gif); +} +/* Arc Shape1 Rtl */ +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc1-l.gif); +} +/* Switch - Arc Shape2 Rtl */ +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc2-l.gif); +} +/* Default Shape Rtl */ +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: @mbl-bg-image-r-rtl; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: @mbl-bg-image-l-rtl; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch_rtl.less new file mode 100644 index 00000000..9bfbe2c6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Switch_rtl.less @@ -0,0 +1,117 @@ +/* dojox.mobile.Switch Rtl */ +/* Switch - common Rtl */ +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +/* Square Shape Rtl*/ +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +/* Round Shape1 Rtl */ +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +/* Round Shape2 Rtl */ +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +/* Arc Shape1 Rtl */ +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +/* Arc Shape2 Rtl */ +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +/* Default Shape Rtl */ +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: @mbl-switchOn-left-rtl; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: @mbl-switchBg-left-rtl; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: @mbl-switch-knob-rtl; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: @mbl-switch-text-right-rtl; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar-compat.less new file mode 100644 index 00000000..54221b1c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar-compat.less @@ -0,0 +1,81 @@ +/* dojox.mobile.TabBar */ +.mblTabBar { +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; // IE bug +} + +/* barType="tabBar" */ +.mblTabBarTabBar { + background-image: none; + .mblTabBarTabBar-compat; +} +.dj_ff3 { + .mblTabBarTabBar { + .mblTabBarButtonSelected { + -moz-border-radius: 3px; + } + } +} + +/* barType="segmentedControl" | "standardTab" */ +.mblTabBarSegmentedControl, .mblTabBarStandardTab { + background-image: url(compat/heading-bg.png); + .mblTabBarButton { + background-image: url(compat/tab-seg-button-bg.png); + } + .mblTabBarButtonSelected { + background-image: url(compat/tab-seg-sel-button-bg.png); + } +} +.dj_gecko .mblTabBarSegmentedControl { + .mblTabBarButton { + .mblTabBarSegmentedControlButton-compat-gecko; + } +} +.dj_ff3 { + .mblTabBarSegmentedControl { + .mblTabBarButton { + &:first-child { + -moz-border-radius-topleft: @mbl-tab-bar-segmented-control-border-radius; + -moz-border-radius-bottomleft: @mbl-tab-bar-segmented-control-border-radius; + } + &:last-child { + -moz-border-radius-topright: @mbl-tab-bar-segmented-control-border-radius; + -moz-border-radius-bottomright: @mbl-tab-bar-segmented-control-border-radius; + } + } + } + .mblTabBarStandardTab { + .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + } + } +} + +/* barType="slimTab" */ +.mblTabBarSlimTab { + background-image: url(compat/tab-slim-bar-bg.png); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + } + .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); + } +} + +/* barType="flatTab" */ +.mblTabBarFlatTab { +} + +/* barType="tallTab" */ +.mblTabBarTallTab { + background-image: url(compat/tab-tall-bar-bg.png); + .mblTabBarButtonSelected { + background-color: #8c8e8c; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar.less new file mode 100644 index 00000000..b8400296 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar.less @@ -0,0 +1,273 @@ +/* dojox.mobile.TabBar */ +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid @heading-border-top-color; + border-bottom: 1px solid @heading-border-bottom-color; + .mblTabBar-styles; +} + +/* dojox.mobile.TabBarButton */ +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} + +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + .tap-highlight-color(rgba(255,255,255,0)); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} + +/* barType="tabBar" */ +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + .mblTabBarTabBar-styles; + + .mblTabBarButton { + .mblTabBarTabBarButton-styles; + } + .mblTabBarButtonIconArea { + padding-top: 4px; + .mblTabBarTabBarButtonIconArea-styles; + } + .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + .mblTabBarTabBarButtonLabel-styles; + } + .mblTabBarButtonSelected { + border-radius: 3px; + .mblTabBarTabBarButtonSelected-styles; + } + .mblTabBarButtonSelected .mblTabBarButtonLabel { + .mblTabBarTabBarButtonLabelSelected-styles; + } +} +/* barType="segmentedControl" */ +.mblTabBarSegmentedControl { + .heading-background-image(); + .mblTabBarSegmentedControl-styles; + + &.mblTabBarNoText { + .mblTabBarButton { + width: auto; + padding: 0 3px; + } + .mblTabBarButtonIconArea { + position: relative; + } + } + .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + .mblTabBarSegmentedControlButton-styles; + &:first-child { + border-left-width: 1px; + border-top-left-radius: @mbl-tab-bar-segmented-control-border-radius; + border-bottom-left-radius: @mbl-tab-bar-segmented-control-border-radius; + } + &:last-child { + border-top-right-radius: @mbl-tab-bar-segmented-control-border-radius; + border-bottom-right-radius: @mbl-tab-bar-segmented-control-border-radius; + } + } + .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; + } + .mblTabBarButtonSelected { + .mblTabBarSegmentedControlButtonSelected-styles; + } +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} + +/* barType="standardTab" */ +.mblTabBarStandardTab { + .heading-background-image(); + .mblTabBarStandardTab-styles; + + .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + .mblTabBarStandardTabButton-styles; + } + .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; + .mblTabBarStandardTabButtonIconArea-styles; + } + .mblTabBarButtonLabel { + .mblTabBarStandardTabButtonLabel-styles; + } + .mblTabBarButtonSelected { + .mblTabBarStandardTabButtonSelected-styles; + } + .mblTabBarButtonSelected .mblTabBarButtonLabel { + .mblTabBarStandardTabButtonLabelSelected-styles; + } + .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; + } +} + +/* barType="slimTab" */ +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid @heading-border-bottom-color; + background-color: #000000; + .background-image-linear-gradient-top-bottom-2-stops(#2d2d2d, #000000, 0.5, #141414, 0.5, #000000); + + .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + .background-image-linear-gradient-top-bottom-2-stops(#2d2d2d, #000000, 0.5, #141414, 0.5, #000000); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; + &:first-child { + border-left: 1px solid #4e4e4e; + } + &:last-child { + } + } + .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; + } + .mblTabBarButtonSelected { + background-color: #404040; + .background-image-linear-gradient-top-bottom-2-stops(#313031, #959595, 0.5, #5a555a, 0.5, #616161); + } + .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; + } +} + +/* barType="flatTab" */ +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; + + .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; + } + .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; + } + .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; + } +} + +/* barType="tallTab" */ +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + .mblTabBarTallTab-styles; + + .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + .background-image-linear-gradient-top-bottom-1-stop(#181818, #100c10, 0.1, #313031); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; + .mblTabBarTallTabButton-styles; + &:first-child { + .mblTabBarTallTabButton-FirstChild-styles; + } + &:last-child { + .mblTabBarTallTabButton-LastChild-styles; + } + } + .mblTabBarButtonIconArea { + margin-top: 8px; + .mblTabBarTallTabButtonIconArea-styles; + } + .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + .mblTabBarTallTabButtonLabel-styles; + } + .mblTabBarButtonSelected { + .background-image-linear-gradient-top-bottom(#a59ea5, #848284); + .mblTabBarTallTabButtonSelected-styles; + } + .mblTabBarButtonSelected .mblTabBarButtonLabel { + .mblTabBarTallTabButtonLabelSelected-styles; + } + .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar_rtl-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar_rtl-compat.less new file mode 100644 index 00000000..edb1b972 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar_rtl-compat.less @@ -0,0 +1,20 @@ +/* barType="segmentedControl" | "standardTab" Rtl */ + +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: @mbl-moz-border-radius-rtl; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: @mbl-moz-border-radius-rtl; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: @mbl-moz-border-radius-rtl; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: @mbl-moz-border-radius-rtl; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar_rtl.less new file mode 100644 index 00000000..9063cb64 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TabBar_rtl.less @@ -0,0 +1,89 @@ +/* dojox.mobile.TabBarButton Rtl */ +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +/* barType="tabBar" Rtl */ +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +/* barType="segmentedControl" Rtl */ +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: @mbl-border-width-rtl; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: @mbl-tb-border-radius-rtl; + border-top-left-radius: 0px; + border-bottom-right-radius: @mbl-tb-border-radius-rtl; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: @mbl-tb-border-radius-rtl; + border-top-right-radius: 0px; + border-bottom-left-radius: @mbl-tb-border-radius-rtl; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +/* barType="standardTab" Rtl */ +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +/* barType="slimTab" Rtl */ +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +/* barType="flatTab" Rtl*/ +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +/* barType="tallTab" */ +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextArea-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextArea-compat.less new file mode 100644 index 00000000..81831a75 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextArea-compat.less @@ -0,0 +1,10 @@ +/* dojox.mobile.TextArea */ +.mblTextArea { + overflow: auto; +} + +.dj_ff3 { + .mblTextArea { + -moz-border-radius: @default-button-border-radius; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextArea.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextArea.less new file mode 100644 index 00000000..25a4eb58 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextArea.less @@ -0,0 +1,14 @@ +/* dojox.mobile.TextArea */ +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + .mblTextArea-styles; +} + +/* dojox.mobile.ExpandingTextArea */ +.mblExpandingTextArea { + margin: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextBox-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextBox-compat.less new file mode 100644 index 00000000..bb84a003 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextBox-compat.less @@ -0,0 +1,6 @@ +/* dojox.mobile.TextBox */ +.dj_ff3 { + .mblTextBox { + -moz-border-radius: @default-button-border-radius; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextBox.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextBox.less new file mode 100644 index 00000000..36427d11 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/TextBox.less @@ -0,0 +1,9 @@ +/* dojox.mobile.TextBox */ +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + .mblTextBox-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToggleButton-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToggleButton-compat.less new file mode 100644 index 00000000..223f56e6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToggleButton-compat.less @@ -0,0 +1,50 @@ +/* dojox.mobile.ToggleButton */ +.mblToggleButton { + background-image: url(compat/button-bg.png); +} +.mblToggleButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblToggleButtonChecked { + background-image: url(compat/button-chk-bg.png); + &.mblToggleButtonSelected { + background-image: url(compat/button-unsel-bg.png); + } +} +.dj_gecko { + .mblToggleButton { + background-image: @mbl-button-background-image-gecko; + } + .mblToggleButtonSelected { + background-image: @mbl-button-selected-background-image-gecko; + } + .mblToggleButtonChecked { + background-image: @mbl-button-checked-background-image-gecko; + &:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; + } + &.mblToggleButtonSelected { + background-image: @mbl-blue-button-selected-background-image-gecko; + } + } +} +.dj_ff3 { + .mblToggleButton { + -moz-border-radius: @default-button-border-radius; + } + .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px,-6px) rotate(45deg) skew(10deg); + } +} +.dj_ie { + .mblToggleButtonChecked { + &:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url(compat/togglebutton-chk-mark-bg.png); + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToggleButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToggleButton.less new file mode 100644 index 00000000..e35a753b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToggleButton.less @@ -0,0 +1,48 @@ +/* dojox.mobile.ToggleButton */ +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + .mbl-button-background-image(); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + .tap-highlight-color(rgba(255,255,255,0)); + .mblToggleButton-styles; + &:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; + } +} +.mblToggleButtonSelected { + .mbl-button-selected-background-image(); + .mblToggleButtonSelected-styles; +} +.mblToggleButtonChecked { + .mbl-button-checked-background-image(); + .mblToggleButtonChecked-styles; + &:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + .transform(rotate(45deg) skew(10deg)); + .transform-origin(50% 50%); + .mblToggleButtonChecked-after-styles; + } + &.mblToggleButtonSelected { + .mbl-blue-button-selected-background-image(); + .mblToggleButtonCheckedSelected-styles; + &:after { + .mblToggleButtonCheckedSelected-after-styles; + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToggleButton_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToggleButton_rtl.less new file mode 100644 index 00000000..16d136f4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToggleButton_rtl.less @@ -0,0 +1,7 @@ +/* dojox.mobile.ToggleButton Rtl */ +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToolBarButton-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToolBarButton-compat.less new file mode 100644 index 00000000..8e042eea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToolBarButton-compat.less @@ -0,0 +1,84 @@ +/* dojox.mobile.ToolBarButton */ +.dj_gecko { + .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); + } + .mblHeading { + .mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + .mblToolBarButtonHasLeftArrowInHeading-compat-gecko; + } + .mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + .mblToolBarButtonHasRightArrowInHeading-compat-gecko; + } + .mblToolBarButtonBody { + .mblToolBarButtonBodyInHeading-compat-gecko; + } + } +} +.dj_ff3 { + .mblToolBarButtonArrow { + -moz-border-radius: 1px; + } + .mblToolBarButtonBody { + -moz-border-radius: @mbl-tool-bar-button-body-border-radius; + } + .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; + } + .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; + } +} +.dj_ie { + .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-head.png); + } + .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url(compat/arrow-button-head-sel.png); + } + + .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-right-head.png); + } + .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url(compat/arrow-button-right-head-sel.png); + } + + .mblToolBarButtonBody { + background-image: url(compat/arrow-button-bg.png); + background-position: left bottom; + } + .mblToolBarButtonBodySelected { + background-image: url(compat/arrow-button-bg-sel.png); + } + .mblToolBarButtonBody table { + margin: 0; + } + .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } +} +.dj_ie6 { + .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToolBarButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToolBarButton.less new file mode 100644 index 00000000..401292e6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToolBarButton.less @@ -0,0 +1,100 @@ +/* dojox.mobile.ToolBarButton */ +.mblToolBarButton { + display:inline-block; + position: relative; + cursor: pointer; + .tap-highlight-color(rgba(255,255,255,0)); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + .mblToolBarButton-styles; +} +.mblToolBarButtonHasIcon, .mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading { + .mblToolBarButton { + float: left; + } + span.mblToolBarButtonLightIcon { + padding: 0; + } +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + .mblToolBarButtonArrow-styles; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + .mblToolBarButtonArrowInLeftArrow-styles; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + .mblToolBarButtonArrowInRightArrow-styles; +} +.mblHeading { + .mblToolBarButtonArrow { + .mblToolBarButtonArrowInHeading-styles; + } + .mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + .mblToolBarButtonHasLeftArrowInHeading-styles; + } + .mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + .mblToolBarButtonHasRightArrowInHeading-styles; + } +} + +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: @mbl-tool-bar-button-body-border-radius; + .mblToolBarButtonBody-styles; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblHeading .mblToolBarButtonBody { + .mblToolBarButtonBodyInHeading-styles; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + .mblToolBarButtonBodyInLeftArrow-styles; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + .mblToolBarButtonBodyInRightArrow-styles; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} + +.mblToolBarButtonIcon > div { + height: 29px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToolBarButton_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToolBarButton_rtl.less new file mode 100644 index 00000000..ffb4122e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ToolBarButton_rtl.less @@ -0,0 +1,18 @@ +/* dojox.mobile.ToolBarButton Rtl */ +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow{ + right : @mbl-toolbar-right-arrow-rtl; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow{ + left : @mbl-toolbar-left-arrow-rtl; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Tooltip-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Tooltip-compat.less new file mode 100644 index 00000000..01d7411c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Tooltip-compat.less @@ -0,0 +1,51 @@ +/* dojox.mobile.Tooltip */ +.mblTooltip { + background-image: none; + .mblHeading { + .mblTooltip-Heading-compat; + .mblToolBarButton { + .mblTooltip-Heading-ToolbarButton-compat; + } + } +} + +.dj_ff3 { + .mblTooltip { + -moz-border-radius: @mbl-tooltip-border-radius; + } +} + +.dj_ie9 { + .mblTooltip .mblHeading { + width: auto; + } +} + +.dj_ie6, .dj_ie7 { + .mblTooltipBefore .mblTooltipArrow { + right: 0; + } + .mblTooltipAbove .mblTooltipArrow { + bottom: 0; + } + .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; + } + .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; + } + .mblTooltip { + .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid @heading-background-color; + border-bottom: 1px solid @heading-background-color; + width: auto; + height: auto; + overflow: visible; + line-height: normal; + .mblToolBarButton { + margin: auto 6px; + } + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Tooltip.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Tooltip.less new file mode 100644 index 00000000..38baa3bf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/Tooltip.less @@ -0,0 +1,139 @@ +/* dojox.mobile.Tooltip */ +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + .mblTooltip-styles; +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + .mblTooltipBubble-styles; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + .mblTooltipInnerArrow-Bubble-Above-styles; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + .mblTooltipInnerArrow-Bubble-Below-styles; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + .mblTooltipInnerArrow-Bubble-After-styles; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + .mblTooltipInnerArrow-Bubble-Before-styles; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + .mblTooltipArrow-Before-styles; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + .mblTooltipArrow-After-styles; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + .mblTooltipArrow-Above-styles; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + .mblTooltipArrow-Below-styles; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + .mblTooltipInnerArrow-Before-styles; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + .mblTooltipInnerArrow-After-styles; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + .mblTooltipInnerArrow-Above-styles; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + .mblTooltipInnerArrow-Below-styles; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} + +// Headings and Button styles are overridden in Tooltips +.mblTooltip .mblHeading { + .mblTooltip-Heading-styles; +} +.mblTooltip .mblHeading .mblToolBarButton { + .mblTooltip-Heading-ToolbarButton-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ValuePicker-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ValuePicker-compat.less new file mode 100644 index 00000000..71f87a5b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ValuePicker-compat.less @@ -0,0 +1,23 @@ +/* dojox.mobile.ValuePicker */ + +.mblValuePickerSlotButton { + background-image: url(compat/valuepicker-button-bg.png); +} +.mblValuePickerSlotButtonSelected { + background-color: @default-button-selected-background-color; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} + +.dj_gecko { + .mblValuePickerSlotButton { + background-image: @mbl-value-picker-slot-button-background-image-gecko; + } + .mblValuePickerSlotButtonSelected { + background-image: @default-button-selected-background-image-gecko; + } + .mblValuePickerSlotInputArea { + background-image: @mbl-value-picker-slot-input-area-background-image-gecko; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ValuePicker.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ValuePicker.less new file mode 100644 index 00000000..7195c5b6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/ValuePicker.less @@ -0,0 +1,54 @@ +/* dojox.mobile.ValuePicker */ +.mblValuePicker { + height: 126px; +} +/* dojox.mobile.ValuePickerSlot */ +.mblValuePicker > .mblValuePickerSlot { + float: left; + .mblValuePickerSlot-style; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + .mbl-value-picker-slot-button-background-image(); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: @mbl-value-picker-slot-button-radius; + border-top-right-radius: @mbl-value-picker-slot-button-radius; +} + +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: @mbl-value-picker-slot-button-radius; + border-bottom-right-radius: @mbl-value-picker-slot-button-radius; +} + +.mblValuePickerSlotButtonSelected { + .default-button-selected-background-image(); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + .mbl-value-picker-slot-input-area-background-image(); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + .mblValuePickerSlot-input-style; +} + +/* dojox.mobile.ValuePickerTimePicker */ +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/View.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/View.less new file mode 100644 index 00000000..70c43ed4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/View.less @@ -0,0 +1,21 @@ +/* dojox.mobile.View */ +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + .mblView-styles; + &.mblOut { + } + &.mblIn { + position: absolute; + } +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/common-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/common-compat.less new file mode 100644 index 00000000..441f256a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/common-compat.less @@ -0,0 +1,20 @@ +.dj_gecko { + .mblColorBlue { + background-image: @default-blue-button-background-image-gecko; + } + .mblColorBlue45 { + background-image: @mbl-color-blue-45-gecko; + } + .mblColorDefault { + background-image: @default-button-background-image-gecko; + } + .mblColorDefault45 { + background-image: @mbl-color-default-45-gecko; + } + .mblColorDefaultSel { + background-image: @default-button-selected-background-image-gecko; + } + .mblColorDefaultSel45 { + background-image: @mbl-color-default-sel-45-gecko; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/common.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/common.less new file mode 100644 index 00000000..aaad9cbd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/common.less @@ -0,0 +1,58 @@ +html.mobile, .mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + .text-size-adjust(none); + .mobile-body-styles; +} + +.mblBackground { + .mblBackground-styles; +} + +/* Button Colors */ +.mblColorBlue { + .mblColorBlue-styles; +} + +.mblColorBlue45 { + .mbl-color-blue-45(); +} + +/* Default Button Colors */ +.mblColorDefault { + .mblColorDefault-styles; +} + +.mblColorDefault45 { + .mbl-color-default-45(); +} + +.mblColorDefaultSel { + .mblColorDefaultSel-styles; +} + +.mblColorDefaultSel45 { + .mbl-color-default-sel-45(); +} + +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} + +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/compat/spinwheel-bar.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/compat/spinwheel-bar.png new file mode 100644 index 0000000000000000000000000000000000000000..1aeee2d3a2a6780819af64d9b61a02fe7f102cfe GIT binary patch literal 182 zcmeAS@N?(olHy`uVBq!ia0vp^EI_Qq!2~3wO>^^s6nlxMuPgg)E;bHU-M79!b^?Vs z3p^r=85p>QK$!8;-MT+O!B9^Z$B>F!TYC-p8Ui?+AGZIFzuI_YhePSbDGQqoH|^cC zt>RhUcUNYXvjHqe4MQeN&XsKLGUW|;%G7M2#`|I8=BFPI80{)(N~~k~Ycg%O!LzEj brO#O`%qbP0l+XkKOENu@ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/compat/spinwheel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/compat/spinwheel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..69c37683ff4196974889b93d3ea4a28d25b02e8c GIT binary patch literal 532 zcmV+v0_**WP)VOnovt0M*LQ#ohHh|IR}a`|><9Pu z4S-FiVesJ4D0pmq3Oq463!a`?052}Bfmc?y!0Q{^;LWWau-Uu|wpjMSR_g)SW;+HS z9-V;AH9xoJwcFnQRW6{g%NwIS-ceg?hJX@RITcMeV-Ol7!DI zD8)wB|N1;ivDDQ5VyWEJ{!+Qp$a;~bO10X|{+3&A`F~6M=Quwu95^5B9v|4{4}g8o zui$7r2~K6QU>VO#(f?a2S1M}vg|5}`d8M-Y`9|yiI3Lx|SJ8f@sD8eS_7@bKH-h!T z?_V_Ecpmb+)0p$UU=Sf4{$GVPjGK=k8rPW&v5T>4{ .dijitTextArea { + + resize: none; +} +.dijitGutter { + + position: absolute; + font-size: 1px; +} +.dijitSplitter { + position: absolute; + overflow: hidden; + z-index: 10; + background-color: #fff; + border-color: gray; + border-style: solid; + border-width: 0; +} +.dj_ie .dijitSplitter { + z-index: 1; +} +.dijitSplitterActive { + z-index: 11 !important; +} +.dijitSplitterCover { + position:absolute; + z-index:-1; + top:0; + left:0; + width:100%; + height:100%; +} +.dijitSplitterCoverActive { + z-index:3 !important; +} +.dj_ie .dijitSplitterCover { + background: white; + opacity: 0; +} +.dj_ie6 .dijitSplitterCover, +.dj_ie7 .dijitSplitterCover, +.dj_ie8 .dijitSplitterCover { + filter: alpha(opacity=0); +} +.dijitSplitterH { + height: 7px; + border-top:1px; + border-bottom:1px; + cursor: row-resize; + -webkit-tap-highlight-color: transparent; +} +.dijitSplitterV { + width: 7px; + border-left:1px; + border-right:1px; + cursor: col-resize; + -webkit-tap-highlight-color: transparent; +} +.dijitSplitContainer { + position: relative; + overflow: hidden; + display: block; +} +.dijitSplitPane { + position: absolute; +} +.dijitSplitContainerSizerH, +.dijitSplitContainerSizerV { + position:absolute; + font-size: 1px; + background-color: ThreeDFace; + border: 1px solid; + border-color: ThreeDHighlight ThreeDShadow ThreeDShadow ThreeDHighlight; + margin: 0; +} +.dijitSplitContainerSizerH .thumb, .dijitSplitterV .dijitSplitterThumb { + overflow:hidden; + position:absolute; + top:49%; +} +.dijitSplitContainerSizerV .thumb, .dijitSplitterH .dijitSplitterThumb { + position:absolute; + left:49%; +} +.dijitSplitterShadow, +.dijitSplitContainerVirtualSizerH, +.dijitSplitContainerVirtualSizerV { + font-size: 1px; + background-color: ThreeDShadow; + -moz-opacity: 0.5; + opacity: 0.5; + filter: Alpha(Opacity=50); + margin: 0; +} +.dijitSplitContainerSizerH, .dijitSplitContainerVirtualSizerH { + cursor: col-resize; +} +.dijitSplitContainerSizerV, .dijitSplitContainerVirtualSizerV { + cursor: row-resize; +} +.dj_a11y .dijitSplitterH { + border-top:1px solid #d3d3d3 !important; + border-bottom:1px solid #d3d3d3 !important; +} +.dj_a11y .dijitSplitterV { + border-left:1px solid #d3d3d3 !important; + border-right:1px solid #d3d3d3 !important; +} +.dijitContentPane { + display: block; + overflow: auto; + -webkit-overflow-scrolling: touch; +} +.dijitContentPaneSingleChild { + + overflow: hidden; +} +.dijitContentPaneLoading .dijitIconLoading, +.dijitContentPaneError .dijitIconError { + margin-right: 9px; +} +.dijitTitlePane { + display: block; + overflow: hidden; +} +.dijitFieldset { + border: 1px solid gray; +} +.dijitTitlePaneTitle, .dijitFieldsetTitle { + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitTitlePaneTitleFixedOpen, .dijitTitlePaneTitleFixedClosed, +.dijitFieldsetTitleFixedOpen, .dijitFieldsetTitleFixedClosed { + + cursor: default; +} +.dijitTitlePaneTitle * { + vertical-align: middle; +} +.dijitTitlePane .dijitArrowNodeInner, .dijitFieldset .dijitArrowNodeInner { + + display: none; +} +.dj_a11y .dijitTitlePane .dijitArrowNodeInner, .dj_a11y .dijitFieldset .dijitArrowNodeInner { + + display: inline; + font-family: monospace; +} +.dj_a11y .dijitTitlePane .dijitArrowNode, .dj_a11y .dijitFieldset .dijitArrowNode { + + display: none; +} +.dijitTitlePaneTitleFixedOpen .dijitArrowNode, .dijitTitlePaneTitleFixedOpen .dijitArrowNodeInner, +.dijitTitlePaneTitleFixedClosed .dijitArrowNode, .dijitTitlePaneTitleFixedClosed .dijitArrowNodeInner, +.dijitFieldsetTitleFixedOpen .dijitArrowNode, .dijitFieldsetTitleFixedOpen .dijitArrowNodeInner, +.dijitFieldsetTitleFixedClosed .dijitArrowNode, .dijitFieldsetTitleFixedClosed .dijitArrowNodeInner { + + display: none !important; +} +.dj_ie6 .dijitTitlePaneContentOuter, +.dj_ie6 .dijitTitlePane .dijitTitlePaneTitle { + + zoom: 1; +} +.dijitColorPalette { + border: 1px solid #999; + background: #fff; + position: relative; +} +.dijitColorPalette .dijitPaletteTable { + + padding: 2px 3px 3px 3px; + position: relative; + overflow: hidden; + outline: 0; + border-collapse: separate; +} +.dj_ie6 .dijitColorPalette .dijitPaletteTable, +.dj_ie7 .dijitColorPalette .dijitPaletteTable, +.dj_iequirks .dijitColorPalette .dijitPaletteTable { + + padding: 0; + margin: 2px 3px 3px 3px; +} +.dijitColorPalette .dijitPaletteCell { + + font-size: 1px; + vertical-align: middle; + text-align: center; + background: none; +} +.dijitColorPalette .dijitPaletteImg { + + padding: 1px; + border: 1px solid #999; + margin: 2px 1px; + cursor: default; + font-size: 1px; +} +.dj_gecko .dijitColorPalette .dijitPaletteImg { + padding-bottom: 0; +} +.dijitColorPalette .dijitColorPaletteSwatch { + + width: 14px; + height: 12px; +} +.dijitPaletteTable td { + padding: 0; +} +.dijitColorPalette .dijitPaletteCell:hover .dijitPaletteImg { + + border: 1px solid #000; +} +.dijitColorPalette .dijitPaletteCell:active .dijitPaletteImg, +.dijitColorPalette .dijitPaletteTable .dijitPaletteCellSelected .dijitPaletteImg { + border: 2px solid #000; + margin: 1px 0; +} +.dj_a11y .dijitColorPalette .dijitPaletteTable, +.dj_a11y .dijitColorPalette .dijitPaletteTable * { + + background-color: transparent !important; +} +.dijitAccordionContainer { + border:1px solid #b7b7b7; + border-top:0 !important; +} +.dijitAccordionTitle { + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitAccordionTitleSelected { + cursor: default; +} +.dijitAccordionTitle .arrowTextUp, +.dijitAccordionTitle .arrowTextDown { + display: none; + font-size: 0.65em; + font-weight: normal !important; +} +.dj_a11y .dijitAccordionTitle .arrowTextUp, +.dj_a11y .dijitAccordionTitleSelected .arrowTextDown { + display: inline; +} +.dj_a11y .dijitAccordionTitleSelected .arrowTextUp { + display: none; +} +.dijitAccordionChildWrapper { + + overflow: hidden; +} +.dijitCalendarContainer { + width: auto; +} +.dijitCalendarContainer th, .dijitCalendarContainer td { + padding: 0; + vertical-align: middle; +} +.dijitCalendarYearLabel { + white-space: nowrap; +} +.dijitCalendarNextYear { + margin:0 0 0 0.55em; +} +.dijitCalendarPreviousYear { + margin:0 0.55em 0 0; +} +.dijitCalendarIncrementControl { + vertical-align: middle; +} +.dijitCalendarIncrementControl, +.dijitCalendarDateTemplate, +.dijitCalendarMonthLabel, +.dijitCalendarPreviousYear, +.dijitCalendarNextYear { + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitCalendarDisabledDate { + color: gray; + text-decoration: line-through; + cursor: default; +} +.dijitSpacer { + + position: relative; + height: 1px; + overflow: hidden; + visibility: hidden; +} +.dijitCalendarMonthMenu .dijitCalendarMonthLabel { + text-align:center; +} +.dijitMenu { + border:1px solid black; + background-color:white; +} +.dijitMenuTable { + border-collapse:collapse; + border-width:0; + background-color:white; +} +.dj_webkit .dijitMenuTable td[colspan="2"]{ + border-right:hidden; +} +.dijitMenuItem { + text-align: left; + white-space: nowrap; + padding:.1em .2em; + cursor:pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitMenuItem:focus { + outline: none +} +.dijitMenuPassive .dijitMenuItemHover, +.dijitMenuItemSelected { + + background-color:black; + color:white; +} +.dijitMenuItemIcon, .dijitMenuExpand { + background-repeat: no-repeat; +} +.dijitMenuItemDisabled * { + + opacity:0.5; + cursor:default; +} +.dj_ie .dj_a11y .dijitMenuItemDisabled, +.dj_ie .dj_a11y .dijitMenuItemDisabled *, +.dj_ie .dijitMenuItemDisabled * { + color: gray; + filter: alpha(opacity=35); +} +.dijitMenuItemLabel { + vertical-align: middle; +} +.dj_a11y .dijitMenuItemSelected { + border: 1px dotted black !important; +} +.dj_a11y .dijitMenuItemSelected .dijitMenuItemLabel { + border-width: 1px; + border-style: solid; +} +.dj_ie8 .dj_a11y .dijitMenuItemLabel { + position:static; +} +.dijitMenuExpandA11y { + display: none; +} +.dj_a11y .dijitMenuExpandA11y { + display: inline; +} +.dijitMenuSeparator td { + border: 0; + padding: 0; +} +.dijitMenuSeparatorTop { + height: 50%; + margin: 0; + margin-top:3px; + font-size: 1px; +} +.dijitMenuSeparatorBottom { + height: 50%; + margin: 0; + margin-bottom:3px; + font-size: 1px; +} +.dijitMenuItemIconChar { + display: none; + visibility: hidden; +} +.dj_a11y .dijitMenuItemIconChar { + display: inline; +} +.dijitCheckedMenuItemChecked .dijitMenuItemIconChar, +.dijitRadioMenuItemChecked .dijitMenuItemIconChar { + visibility: visible; +} +.dj_ie .dj_a11y .dijitMenuBar .dijitMenuItem { + + margin: 0; +} +.dijitStackController .dijitToggleButtonChecked * { + cursor: default; +} +.dijitTabContainer { + z-index: 0; + overflow: visible; +} +.dj_ie6 .dijitTabContainer { + + overflow: hidden; +} +.dijitTabContainerNoLayout { + width: 100%; +} +.dijitTabContainerBottom-tabs, +.dijitTabContainerTop-tabs, +.dijitTabContainerLeft-tabs, +.dijitTabContainerRight-tabs { + z-index: 1; + overflow: visible !important; +} +.dijitTabController { + z-index: 1; +} +.dijitTabContainerBottom-container, +.dijitTabContainerTop-container, +.dijitTabContainerLeft-container, +.dijitTabContainerRight-container { + z-index:0; + overflow: hidden; + border: 1px solid black; +} +.nowrapTabStrip { + width: 50000px; + display: block; + position: relative; + text-align: left; + z-index: 1; +} +.dijitTabListWrapper { + overflow: hidden; + z-index: 1; +} +.dj_a11y .tabStripButton img { + + display: none; +} +.dijitTabContainerTop-tabs { + border-bottom: 1px solid black; +} +.dijitTabContainerTop-container { + border-top: 0; +} +.dijitTabContainerLeft-tabs { + border-right: 1px solid black; + float: left; +} +.dijitTabContainerLeft-container { + border-left: 0; +} +.dijitTabContainerBottom-tabs { + border-top: 1px solid black; +} +.dijitTabContainerBottom-container { + border-bottom: 0; +} +.dijitTabContainerRight-tabs { + border-left: 1px solid black; + float: left; +} +.dijitTabContainerRight-container { + border-right: 0; +} +div.dijitTabDisabled, .dj_ie div.dijitTabDisabled { + cursor: auto; +} +.dijitTab { + position:relative; + cursor:pointer; + -webkit-tap-highlight-color: transparent; + white-space:nowrap; + z-index:3; +} +.dijitTab * { + + vertical-align: middle; +} +.dijitTabChecked { + cursor: default; +} +.dijitTabContainerTop-tabs .dijitTab { + top: 1px; +} +.dijitTabContainerBottom-tabs .dijitTab { + top: -1px; +} +.dijitTabContainerLeft-tabs .dijitTab { + left: 1px; +} +.dijitTabContainerRight-tabs .dijitTab { + left: -1px; +} +.dijitTabContainerTop-tabs .dijitTab, +.dijitTabContainerBottom-tabs .dijitTab { + + display:inline-block; + #zoom: 1; + #display:inline; +} +.tabStripButton { + z-index: 12; +} +.dijitTabButtonDisabled .tabStripButton { + display: none; +} +.dijitTabCloseButton { + margin-left: 1em; +} +.dijitTabCloseText { + display:none; +} +.dijitTab .tabLabel { + + min-height: 15px; + display: inline-block; +} +.dijitNoIcon { + + display: none; +} +.dj_ie6 .dijitTab .dijitNoIcon { + + display: inline; + height: 15px; + width: 1px; +} +.dj_a11y .dijitTabCloseButton { + background-image: none !important; + width: auto !important; + height: auto !important; +} +.dj_a11y .dijitTabCloseText { + display: inline; +} +.dijitTabPane, +.dijitStackContainer-child, +.dijitAccordionContainer-child { + + border: none !important; +} +.dijitInlineEditBoxDisplayMode { + border: 1px solid transparent; + cursor: text; +} +.dj_a11y .dijitInlineEditBoxDisplayMode, +.dj_ie6 .dijitInlineEditBoxDisplayMode { + + border: none; +} +.dijitInlineEditBoxDisplayModeHover, +.dj_a11y .dijitInlineEditBoxDisplayModeHover, +.dj_ie6 .dijitInlineEditBoxDisplayModeHover { + + background-color: #e2ebf2; + border: solid 1px black; +} +.dijitInlineEditBoxDisplayModeDisabled { + cursor: default; +} +.dijitTree { + overflow: auto; + -webkit-tap-highlight-color: transparent; +} +.dijitTreeContainer { + float: left; +} +.dijitTreeIndent { + + width: 19px; +} +.dijitTreeRow, .dijitTreeContent { + white-space: nowrap; +} +.dj_ie .dijitTreeLabel:focus { + + outline: 1px dotted black; +} +.dijitTreeRow img { + + vertical-align: middle; +} +.dijitTreeContent { + cursor: default; +} +.dijitExpandoText { + display: none; +} +.dj_a11y .dijitExpandoText { + display: inline; + padding-left: 10px; + padding-right: 10px; + font-family: monospace; + border-style: solid; + border-width: thin; + cursor: pointer; +} +.dijitTreeLabel { + margin: 0 4px; +} +.dijitDialog { + position: absolute; + z-index: 999; + overflow: hidden; +} +.dijitDialogTitleBar { + cursor: move; +} +.dijitDialogFixed .dijitDialogTitleBar { + cursor:default; +} +.dijitDialogCloseIcon { + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitDialogPaneContent { + -webkit-overflow-scrolling: touch; +} +.dijitDialogUnderlayWrapper { + position: absolute; + left: 0; + top: 0; + z-index: 998; + display: none; + background: transparent !important; +} +.dijitDialogUnderlay { + background: #eee; + opacity: 0.5; +} +.dj_ie .dijitDialogUnderlay { + filter: alpha(opacity=50); +} +.dj_a11y .dijitSpinnerButtonContainer, +.dj_a11y .dijitDialog { + opacity: 1 !important; + background-color: white !important; +} +.dijitDialog .closeText { + display:none; + + position:absolute; +} +.dj_a11y .dijitDialog .closeText { + display:inline; +} +.dijitSliderMoveable { + z-index:99; + position:absolute !important; + display:block; + vertical-align:middle; +} +.dijitSliderMoveableH { + right:0; +} +.dijitSliderMoveableV { + right:50%; +} +.dj_a11y div.dijitSliderImageHandle, +.dijitSliderImageHandle { + margin:0; + padding:0; + position:relative !important; + border:8px solid gray; + width:0; + height:0; + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dj_iequirks .dj_a11y .dijitSliderImageHandle { + font-size: 0; +} +.dj_ie7 .dijitSliderImageHandle { + overflow: hidden; +} +.dj_ie7 .dj_a11y .dijitSliderImageHandle { + overflow: visible; +} +.dj_a11y .dijitSliderFocused .dijitSliderImageHandle { + border:4px solid #000; + height:8px; + width:8px; +} +.dijitSliderImageHandleV { + top:-8px; + right: -50%; +} +.dijitSliderImageHandleH { + left:50%; + top:-5px; + vertical-align:top; +} +.dijitSliderBar { + border-style:solid; + border-color:black; + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitSliderBarContainerV { + position:relative; + height:100%; + z-index:1; +} +.dijitSliderBarContainerH { + position:relative; + z-index:1; +} +.dijitSliderBarH { + height:4px; + border-width:1px 0; +} +.dijitSliderBarV { + width:4px; + border-width:0 1px; +} +.dijitSliderProgressBar { + background-color:red; + z-index:1; +} +.dijitSliderProgressBarV { + position:static !important; + height:0; + vertical-align:top; + text-align:left; +} +.dijitSliderProgressBarH { + position:absolute !important; + width:0; + vertical-align:middle; + overflow:visible; +} +.dijitSliderRemainingBar { + overflow:hidden; + background-color:transparent; + z-index:1; +} +.dijitSliderRemainingBarV { + height:100%; + text-align:left; +} +.dijitSliderRemainingBarH { + width:100% !important; +} +.dijitSliderBumper { + overflow:hidden; + z-index:1; +} +.dijitSliderBumperV { + width:4px; + height:8px; + border-width:0 1px; +} +.dijitSliderBumperH { + width:8px; + height:4px; + border-width:1px 0; +} +.dijitSliderBottomBumper, +.dijitSliderLeftBumper { + background-color:red; +} +.dijitSliderTopBumper, +.dijitSliderRightBumper { + background-color:transparent; +} +.dijitSliderDecoration { + text-align:center; +} +.dijitSliderDecorationC, +.dijitSliderDecorationV { + position: relative; +} +.dijitSliderDecorationH { + width: 100%; +} +.dijitSliderDecorationV { + height: 100%; + white-space: nowrap; +} +.dijitSliderButton { + font-family:monospace; + margin:0; + padding:0; + display:block; +} +.dj_a11y .dijitSliderButtonInner { + visibility:visible !important; +} +.dijitSliderButtonContainer { + text-align:center; + height:0; +} +.dijitSliderButtonContainer * { + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitSlider .dijitButtonNode { + padding:0; + display:block; +} +.dijitRuleContainer { + position:relative; + overflow:visible; +} +.dijitRuleContainerV { + height:100%; + line-height:0; + float:left; + text-align:left; +} +.dj_opera .dijitRuleContainerV { + line-height:2%; +} +.dj_ie .dijitRuleContainerV { + line-height:normal; +} +.dj_gecko .dijitRuleContainerV { + margin:0 0 1px 0; +} +.dijitRuleMark { + position:absolute; + border:1px solid black; + line-height:0; + height:100%; +} +.dijitRuleMarkH { + width:0; + border-top-width:0 !important; + border-bottom-width:0 !important; + border-left-width:0 !important; +} +.dijitRuleLabelContainer { + position:absolute; +} +.dijitRuleLabelContainerH { + text-align:center; + display:inline-block; +} +.dijitRuleLabelH { + position:relative; + left:-50%; +} +.dijitRuleLabelV { + + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; +} +.dijitRuleMarkV { + height:0; + border-right-width:0 !important; + border-bottom-width:0 !important; + border-left-width:0 !important; + width:100%; + left:0; +} +.dj_ie .dijitRuleLabelContainerV { + margin-top:-.55em; +} +.dj_a11y .dijitSliderReadOnly, +.dj_a11y .dijitSliderDisabled { + opacity:0.6; +} +.dj_ie .dj_a11y .dijitSliderReadOnly .dijitSliderBar, +.dj_ie .dj_a11y .dijitSliderDisabled .dijitSliderBar { + filter: alpha(opacity=40); +} +.dj_a11y .dijitSlider .dijitSliderButtonContainer div { + font-family: monospace; + font-size: 1em; + line-height: 1em; + height: auto; + width: auto; + margin: 0 4px; +} +.dj_a11y .dijitButtonContents .dijitButtonText, +.dj_a11y .dijitTab .tabLabel { + display: inline !important; +} +.dj_a11y .dijitSelect .dijitButtonText { + display: inline-block !important; +} +.dijitTextArea { + width:100%; + overflow-y: auto; +} +.dijitTextArea[cols] { + width:auto; +} +.dj_ie .dijitTextAreaCols { + width:auto; +} +.dijitExpandingTextArea { + + resize: none; +} +.dijitToolbarSeparator { + height: 18px; + width: 5px; + padding: 0 1px; + margin: 0; +} +.dijitIEFixedToolbar { + position:absolute; + + top: expression(eval((document.documentElement||document.body).scrollTop)); +} +.dijitEditor { + display: block; +} +.dijitEditorDisabled, +.dijitEditorReadOnly { + color: gray; +} +.dijitTimePicker { + background-color: white; +} +.dijitTimePickerItem { + cursor:pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitTimePickerItemHover { + background-color:gray; + color:white; +} +.dijitTimePickerItemSelected { + font-weight:bold; + color:#333; + background-color:#b7cdee; +} +.dijitTimePickerItemDisabled { + color:gray; + text-decoration:line-through; +} +.dijitTimePickerItemInner { + text-align:center; + border:0; + padding:2px 8px 2px 8px; +} +.dijitTimePickerTick, +.dijitTimePickerMarker { + border-bottom:1px solid gray; +} +.dijitTimePicker .dijitDownArrowButton { + border-top: none !important; +} +.dijitTimePickerTick { + color:#CCC; +} +.dijitTimePickerMarker { + color:black; + background-color:#CCC; +} +.dj_a11y .dijitTimePickerItemSelected .dijitTimePickerItemInner { + border: solid 4px black; +} +.dj_a11y .dijitTimePickerItemHover .dijitTimePickerItemInner { + border: dashed 4px black; +} +.dijitToggleButtonIconChar { + + display:none !important; +} +.dj_a11y .dijitToggleButton .dijitToggleButtonIconChar { + display:inline !important; + visibility:hidden; +} +.dj_ie6 .dijitToggleButtonIconChar, .dj_ie6 .tabStripButton .dijitButtonText { + font-family: "Arial Unicode MS"; +} +.dj_a11y .dijitToggleButtonChecked .dijitToggleButtonIconChar { + display: inline !important; + visibility:visible !important; +} +.dijitArrowButtonChar { + display:none !important; +} +.dj_a11y .dijitArrowButtonChar { + display:inline !important; +} +.dj_a11y .dijitDropDownButton .dijitArrowButtonInner, +.dj_a11y .dijitComboButton .dijitArrowButtonInner { + display:none !important; +} +.dj_a11y .dijitSelect { + border-collapse: separate !important; + border-width: 1px; + border-style: solid; +} +.dj_ie .dijitSelect { + vertical-align: middle; +} +.dj_ie6 .dijitSelect .dijitValidationContainer, +.dj_ie8 .dijitSelect .dijitButtonText { + vertical-align: top; +} +.dj_ie6 .dijitTextBox .dijitInputContainer, +.dj_iequirks .dijitTextBox .dijitInputContainer, +.dj_ie6 .dijitTextBox .dijitArrowButtonInner, +.dj_ie6 .dijitSpinner .dijitSpinnerButtonInner, +.dijitSelect .dijitSelectLabel { + vertical-align: baseline; +} +.dijitNumberTextBox { + text-align: left; + direction: ltr; +} +.dijitNumberTextBox .dijitInputInner { + text-align: inherit; +} +.dijitToolbar .dijitSelect { + margin: 0; +} +.dj_webkit .dijitToolbar .dijitSelect { + padding-left: 0.3em; +} +.dijitSelect .dijitButtonContents { + padding: 0; + white-space: nowrap; + text-align: left; + border-style: none solid none none; + border-width: 1px; +} +.dijitSelectFixedWidth .dijitButtonContents { + width: 100%; +} +.dijitSelectMenu .dijitMenuItemIcon { + + display:none; +} +.dj_ie6 .dijitSelectMenu .dijitMenuItemLabel, +.dj_ie7 .dijitSelectMenu .dijitMenuItemLabel { + + position: static; +} +.dijitSelectLabel * +{ + vertical-align: baseline; +} +.dijitSelectSelectedOption * { + font-weight: bold; +} +.dijitSelectMenu { + border-width: 1px; +} +.dijitForceStatic { + position: static !important; +} +.dijitReadOnly *, +.dijitDisabled *, +.dijitReadOnly, +.dijitDisabled { + + cursor: default; +} +.dojoDndItem { + padding: 2px; + + -webkit-touch-callout: none; + -webkit-user-select: none; +} +.dojoDndHorizontal .dojoDndItem { + + #display: inline; + display: inline-block; +} +.dojoDndItemBefore, +.dojoDndItemAfter { + border: 0px solid #369; +} +.dojoDndItemBefore { + border-width: 2px 0 0 0; + padding: 0 2px 2px 2px; +} +.dojoDndItemAfter { + border-width: 0 0 2px 0; + padding: 2px 2px 0 2px; +} +.dojoDndHorizontal .dojoDndItemBefore { + border-width: 0 0 0 2px; + padding: 2px 2px 2px 0; +} +.dojoDndHorizontal .dojoDndItemAfter { + border-width: 0 2px 0 0; + padding: 2px 0 2px 2px; +} +.dojoDndItemOver { + cursor:pointer; +} +.dj_gecko .dijitArrowButtonInner INPUT, +.dj_gecko INPUT.dijitArrowButtonInner { + -moz-user-focus:ignore; +} +.dijitFocused .dijitMenuItemShortcutKey { + text-decoration: underline; +} +.dijitIconSave, +.dijitIconPrint, +.dijitIconCut, +.dijitIconCopy, +.dijitIconClear, +.dijitIconDelete, +.dijitIconUndo, +.dijitIconEdit, +.dijitIconNewTask, +.dijitIconEditTask, +.dijitIconEditProperty, +.dijitIconTask, +.dijitIconFilter, +.dijitIconConfigure, +.dijitIconSearch, +.dijitIconApplication, +.dijitIconBookmark, +.dijitIconChart, +.dijitIconConnector, +.dijitIconDatabase, +.dijitIconDocuments, +.dijitIconMail, +.dijitLeaf, +.dijitIconFile, +.dijitIconFunction, +.dijitIconKey, +.dijitIconPackage, +.dijitIconSample, +.dijitIconTable, +.dijitIconUsers, +.dijitFolderClosed, +.dijitIconFolderClosed, +.dijitFolderOpened, +.dijitIconFolderOpen, +.dijitIconError { + background-image: url("../../../../../dijit/icons/images/commonIconsObjActEnabled.png"); + width: 16px; + height: 16px; +} +.dj_ie6 .dijitIconSave, +.dj_ie6 .dijitIconPrint, +.dj_ie6 .dijitIconCut, +.dj_ie6 .dijitIconCopy, +.dj_ie6 .dijitIconClear, +.dj_ie6 .dijitIconDelete, +.dj_ie6 .dijitIconUndo, +.dj_ie6 .dijitIconEdit, +.dj_ie6 .dijitIconNewTask, +.dj_ie6 .dijitIconEditTask, +.dj_ie6 .dijitIconEditProperty, +.dj_ie6 .dijitIconTask, +.dj_ie6 .dijitIconFilter, +.dj_ie6 .dijitIconConfigure, +.dj_ie6 .dijitIconSearch, +.dj_ie6 .dijitIconApplication, +.dj_ie6 .dijitIconBookmark, +.dj_ie6 .dijitIconChart, +.dj_ie6 .dijitIconConnector, +.dj_ie6 .dijitIconDatabase, +.dj_ie6 .dijitIconDocuments, +.dj_ie6 .dijitIconMail, +.dj_ie6 .dijitLeaf, +.dj_ie6 .dijitIconFile, +.dj_ie6 .dijitIconFunction, +.dj_ie6 .dijitIconKey, +.dj_ie6 .dijitIconPackage, +.dj_ie6 .dijitIconSample, +.dj_ie6 .dijitIconTable, +.dj_ie6 .dijitIconUsers, +.dj_ie6 .dijitFolderClosed, +.dj_ie6 .dijitIconFolderClosed, +.dj_ie6 .dijitFolderOpened, +.dj_ie6 .dijitIconFolderOpen, +.dj_ie6 .dijitIconError { + background-image: url("../../../../../dijit/icons/images/commonIconsObjActEnabled8bit.png"); +} +.dijitDisabled .dijitIconSave, +.dijitDisabled .dijitIconPrint, +.dijitDisabled .dijitIconCut, +.dijitDisabled .dijitIconCopy, +.dijitDisabled .dijitIconClear, +.dijitDisabled .dijitIconDelete, +.dijitDisabled .dijitIconUndo, +.dijitDisabled .dijitIconEdit, +.dijitDisabled .dijitIconNewTask, +.dijitDisabled .dijitIconEditTask, +.dijitDisabled .dijitIconEditProperty, +.dijitDisabled .dijitIconTask, +.dijitDisabled .dijitIconFilter, +.dijitDisabled .dijitIconConfigure, +.dijitDisabled .dijitIconSearch, +.dijitDisabled .dijitIconApplication, +.dijitDisabled .dijitIconBookmark, +.dijitDisabled .dijitIconChart, +.dijitDisabled .dijitIconConnector, +.dijitDisabled .dijitIconDatabase, +.dijitDisabled .dijitIconDocuments, +.dijitDisabled .dijitIconMail, +.dijitDisabled .dijitLeaf, +.dijitDisabled .dijitIconFile, +.dijitDisabled .dijitIconFunction, +.dijitDisabled .dijitIconKey, +.dijitDisabled .dijitIconPackage, +.dijitDisabled .dijitIconSample, +.dijitDisabled .dijitIconTable, +.dijitDisabled .dijitIconUsers, +.dijitDisabled .dijitFolderClosed, +.dijitDisabled .dijitIconFolderClosed, +.dijitDisabled .dijitFolderOpened, +.dijitDisabled .dijitIconFolderOpen, +.dijitDisabled .dijitIconError { + background-image: url("../../../../../dijit/icons/images/commonIconsObjActDisabled.png"); +} +.dijitIconSave { background-position: 0; } +.dijitIconPrint { background-position: -16px; } +.dijitIconCut { background-position: -32px; } +.dijitIconCopy { background-position: -48px; } +.dijitIconClear { background-position: -64px; } +.dijitIconDelete { background-position: -80px; } +.dijitIconUndo { background-position: -96px; } +.dijitIconEdit { background-position: -112px; } +.dijitIconNewTask { background-position: -128px; } +.dijitIconEditTask { background-position: -144px; } +.dijitIconEditProperty { background-position: -160px; } +.dijitIconTask { background-position: -176px; } +.dijitIconFilter { background-position: -192px; } +.dijitIconConfigure { background-position: -208px; } +.dijitIconSearch { background-position: -224px; } +.dijitIconError { background-position: -496px; } +.dijitIconApplication { background-position: -240px; } +.dijitIconBookmark { background-position: -256px; } +.dijitIconChart { background-position: -272px; } +.dijitIconConnector { background-position: -288px; } +.dijitIconDatabase { background-position: -304px; } +.dijitIconDocuments { background-position: -320px; } +.dijitIconMail { background-position: -336px; } +.dijitIconFile, .dijitLeaf { background-position: -352px; } +.dijitIconFunction { background-position: -368px; } +.dijitIconKey { background-position: -384px; } +.dijitIconPackage{ background-position: -400px; } +.dijitIconSample { background-position: -416px; } +.dijitIconTable { background-position: -432px; } +.dijitIconUsers { background-position: -448px; } +.dijitIconFolderClosed, .dijitFolderClosed { background-position: -464px; } +.dijitIconFolderOpen, .dijitFolderOpened { background-position: -480px; } +.dijitIconLoading { + background:url("../../../../../dijit/icons/images/loadingAnimation_rtl.gif") no-repeat; + height: 20px; + width: 20px; +} +.claro .dijitPopup { + -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25); + -moz-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25); + box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25); +} +.claro .dijitTooltipDialogPopup { + + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +.claro .dijitComboBoxHighlightMatch { + background-color: #abd6ff; +} +.claro .dijitFocusedLabel { + + outline: 1px dotted #494949; +} +.claro .dojoDndItem { + border-color: rgba(0, 0, 0, 0); + -webkit-transition-duration: 0.25s; + -moz-transition-duration: 0.25s; + transition-duration: 0.25s; + -webkit-transition-property: background-color, border-color; + -moz-transition-property: background-color, border-color; + transition-property: background-color, border-color; +} +.claro .dojoDndItemOver { + background-color: #abd6ff; + background-image: url("../../../../../dijit/themes/claro/images/standardGradient.png"); + background-repeat: repeat-x; + background-image: -moz-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + background-image: -o-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + background-image: linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + _background-image: none; + padding: 1px; + border: solid 1px #759dc0; + color: #000000; +} +.claro .dojoDndItemAnchor, +.claro .dojoDndItemSelected { + background-color: #cfe5fa; + background-image: url("../../../../../dijit/themes/claro/images/standardGradient.png"); + background-repeat: repeat-x; + background-image: -moz-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + background-image: -o-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + background-image: linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + _background-image: none; + padding: 1px; + border: solid 1px #759dc0; + color: #000000; +} +.claro .dojoDndItemBefore, +.claro .dojoDndItemAfter { + border-color: #759dc0; +} +.claro table.dojoDndAvatar { + border: 1px solid #b5bcc7; + border-collapse: collapse; + background-color: #ffffff; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); + -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); +} +.claro .dojoDndAvatarHeader td { + height: 20px; + padding-left: 21px; +} +.claro.dojoDndMove .dojoDndAvatarHeader, +.claro.dojoDndCopy .dojoDndAvatarHeader { + background-image: url("../../../../../dijit/themes/claro/images/dnd.png"); + background-repeat: no-repeat; + background-position: 2px -122px; +} +.claro .dojoDndAvatarItem td { + padding: 5px; +} +.claro.dojoDndMove .dojoDndAvatarHeader { + background-color: #f58383; + background-position: 2px -103px; +} +.claro.dojoDndCopy .dojoDndAvatarHeader { + background-color: #f58383; + background-position: 2px -68px; +} +.claro.dojoDndMove .dojoDndAvatarCanDrop .dojoDndAvatarHeader { + background-color: #97e68d; + background-position: 2px -33px; +} +.claro.dojoDndCopy .dojoDndAvatarCanDrop .dojoDndAvatarHeader { + background-color: #97e68d; + background-position: 2px 2px; +} +.dijitRtl .dijitOffScreen { + + left: auto !important; + right: -10000px !important; +} +.dijitRtl .dijitPlaceHolder { + left: auto; + right: 0; +} +.dijitMenuItemRtl { + text-align: right; +} +.dj_iequirks .dijitComboButtonRtl button { + + float:left; +} +.dj_ie .dijitTextBoxRtl .dijitInputContainer { + clear: right; +} +.dijitTextBoxRtl .dijitValidationContainer, +.dijitTextBoxRtl .dijitSpinnerButtonContainer, +.dijitComboBoxRtl .dijitArrowButtonContainer { + + border-right-width: 1px !important; + border-left-width: 0 !important; +} +.dijitSpinnerRtl .dijitSpinnerButtonContainer .dijitArrowButton { + right: 0; + left: auto; +} +.dijitSelectRtl .dijitButtonText { + float: right; +} +.dijitTextBoxRtl .dijitSpinnerButtonContainer, +.dijitValidationTextBoxRtl .dijitValidationContainer, +.dijitTextBoxRtl .dijitArrowButtonContainer { + float: left; +} +div.dijitNumberTextBoxRtl { + text-align: right; +} +.dijitCalendarRtl .dijitCalendarNextYear { + margin:0 0.55em 0 0; +} +.dijitCalendarRtl .dijitCalendarPreviousYear { + margin:0 0 0 0.55em; +} +.dijitSliderRtl .dijitSliderImageHandleV { + left:auto; +} +.dijitSliderRtl .dijitSliderImageHandleH { + left:-50%; +} +.dijitSliderRtl .dijitSliderMoveableH { + right:auto; + left:0; +} +.dijitSliderRtl .dijitRuleContainerV { + float:right; +} +.dj_ie .dijitSliderRtl .dijitRuleContainerV { + text-align:right; +} +.dj_ie .dijitSliderRtl .dijitRuleLabelV { + text-align:left; +} +.dj_ie .dijitSliderRtl .dijitRuleLabelH { + zoom:1; +} +.dijitSliderRtl .dijitSliderProgressBarH { + + float:right; + right:0; + left:auto; +} +.dijitRtl .dijitContentPaneLoading .dijitIconLoading, +.dijitRtl .dijitContentPaneError .dijitIconError { + margin-right: 0; + margin-left: 9px; +} +.dijitTabControllerRtl .nowrapTabStrip { + text-align: right; +} +.dijitTabRtl .dijitTabCloseButton { + margin-left: 0; + margin-right: 1em; +} +.dj_ie6 .dijitTabRtl .tabLabel, +.dj_ie6 .dijitTabContainerRight-tabs .dijitTabRtl, +.dj_ie6 .dijitTabContainerLeft-tabs .dijitTabRtl, +.dj_ie7 .dijitTabContainerRight-tabs .dijitTabRtl, +.dj_ie7 .dijitTabContainerLeft-tabs .dijitTabRtl { + zoom: 1; +} +.dj_ie6 .dijitTabContainerRight-tabs .dijitTabRtl, +.dj_ie7 .dijitTabContainerRight-tabs .dijitTabRtl { + left: 0; +} +.dj_ie6 .dijitTabContainerRightRtl .dijitTabContainerRight-tabs, +.dj_ie6 .dijitTabContainerLeftRtl .dijitTabContainerLeft-tabs { + + width: 1%; +} +.dj_ie .dijitTimePickerRtl .dijitTimePickerItem { + width:100%; +} +.dijitColorPaletteRtl .dijitColorPaletteUnder { + + left: auto; + right: 0; +} +.dijitSelectRtl .dijitButtonContents { + border-style: none none none solid; + text-align: right; +} +.dijitTreeRtl .dijitTreeContainer { + float: right; +} +.dijitRtl .dojoDndHorizontal .dojoDndItemBefore { + border-width: 0 2px 0 0; + padding: 2px 0 2px 2px; +} +.dijitRtl .dojoDndHorizontal .dojoDndItemAfter { + border-width: 0 0 0 2px; + padding: 2px 2px 2px 0; +} +.claro .dijitTextBoxRtlError .dijitValidationContainer { + border-left-width: 0; + border-right-width: 1px; +} +.claro .dijitComboButtonRtl .dijitStretch { + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} +.claro .dijitComboButtonRtl .dijitArrowButton { + -moz-border-radius: 4px 0 0 4px; + border-radius: 4px 0 0 4px; + padding: 3px 0 4px; + border-left-width: 1px; + border-right-width: 0; +} +.claro .dijitTabContainerTop-tabs .dijitTabRtl, +.claro .dijitTabContainerBottom-tabs .dijitTabRtl { + margin-right: 0; + margin-left: 1px; +} +.claro .dijitSliderRtl .dijitSliderProgressBarH, +.claro .dijitSliderRtl .dijitSliderRemainingBarH, +.claro .dijitSliderRtl .dijitSliderLeftBumper, +.claro .dijitSliderRtl .dijitSliderRightBumper, +.claro .dijitSliderRtl .dijitSliderTopBumper { + background-position: top right; +} +.claro .dijitSliderRtl .dijitSliderProgressBarV, +.claro .dijitSliderRtl .dijitSliderRemainingBarV, +.claro .dijitSliderRtl .dijitSliderBottomBumper { + background-position: bottom right; +} +.claro .dijitSliderRtl .dijitSliderLeftBumper { + border-left-width: 0; + border-right-width: 1px; +} +.claro .dijitSliderRtl .dijitSliderRightBumper { + border-left-width: 1px; + border-right-width: 0; +} +.claro .dijitSliderRtl .dijitSliderIncrementIconH { + background-position: -357px 50%; +} +.claro .dijitSliderRtl .dijitSliderDecrementIconH { + background-position: -251px 50%; +} +.claro .dijitDialogRtl .dijitDialogCloseIcon { + right: auto; + left: 5px; +} +.claro .dijitDialogRtl .dijitDialogPaneActionBar { + text-align: left; + padding: 3px 7px 2px 5px; +} +.claro .dijitEditorRtl .dijitEditorIFrameContainer { + padding: 3px 10px 1px 3px; +} +.dj_ie6 .claro .dijitEditorRtl .dijitEditorIFrameContainer, +.dj_ie7 .claro .dijitEditorRtl .dijitEditorIFrameContainer, +.dj_ie8 .claro .dijitEditorRtl .dijitEditorIFrameContainer { + padding: 3px 0px 1px 10px; + margin-right: 0px; + border: 0px solid #d3d3d3; +} +.dijitEditorRtl .dijitEditorIcon { + background-image: url("../../../../../dijit/icons/images/editorIconsEnabled_rtl.png"); +} +.dijitEditorRtlDisabled .dijitEditorIcon { + background-image: url("../../../../../dijit/icons/images/editorIconsDisabled_rtl.png"); +} +.dijitToolbarRtl .dijitToolbarSeparator { + background-image: url("../../../../../dijit/icons/images/editorIconsEnabled_rtl.png"); +} +.dijitRtl .dijitIconSave, +.dijitRtl .dijitIconPrint, +.dijitRtl .dijitIconCut, +.dijitRtl .dijitIconCopy, +.dijitRtl .dijitIconClear, +.dijitRtl .dijitIconDelete, +.dijitRtl .dijitIconUndo, +.dijitRtl .dijitIconEdit, +.dijitRtl .dijitIconNewTask, +.dijitRtl .dijitIconEditTask, +.dijitRtl .dijitIconEditProperty, +.dijitRtl .dijitIconTask, +.dijitRtl .dijitIconFilter, +.dijitRtl .dijitIconConfigure, +.dijitRtl .dijitIconSearch, +.dijitRtl .dijitIconApplication, +.dijitRtl .dijitIconBookmark, +.dijitRtl .dijitIconChart, +.dijitRtl .dijitIconConnector, +.dijitRtl .dijitIconDatabase, +.dijitRtl .dijitIconDocuments, +.dijitRtl .dijitIconMail, +.dijitRtl .dijitLeaf, +.dijitRtl .dijitIconFile, +.dijitRtl .dijitIconFunction, +.dijitRtl .dijitIconKey, +.dijitRtl .dijitIconPackage, +.dijitRtl .dijitIconSample, +.dijitRtl .dijitIconTable, +.dijitRtl .dijitIconUsers, +.dijitRtl .dijitFolderClosed, +.dijitRtl .dijitIconFolderClosed, +.dijitRtl .dijitFolderOpened, +.dijitRtl .dijitIconFolderOpen, +.dijitRtl .dijitIconError { + background-image: url("../../../../../dijit/icons/images/commonIconsObjActEnabled_rtl.png"); + width: 16px; + height: 16px; +} +.dj_ie6 .dijitRtl .dijitIconSave, +.dj_ie6 .dijitRtl .dijitIconPrint, +.dj_ie6 .dijitRtl .dijitIconCut, +.dj_ie6 .dijitRtl .dijitIconCopy, +.dj_ie6 .dijitRtl .dijitIconClear, +.dj_ie6 .dijitRtl .dijitIconDelete, +.dj_ie6 .dijitRtl .dijitIconUndo, +.dj_ie6 .dijitRtl .dijitIconEdit, +.dj_ie6 .dijitRtl .dijitIconNewTask, +.dj_ie6 .dijitRtl .dijitIconEditTask, +.dj_ie6 .dijitRtl .dijitIconEditProperty, +.dj_ie6 .dijitRtl .dijitIconTask, +.dj_ie6 .dijitRtl .dijitIconFilter, +.dj_ie6 .dijitRtl .dijitIconConfigure, +.dj_ie6 .dijitRtl .dijitIconSearch, +.dj_ie6 .dijitRtl .dijitIconApplication, +.dj_ie6 .dijitRtl .dijitIconBookmark, +.dj_ie6 .dijitRtl .dijitIconChart, +.dj_ie6 .dijitRtl .dijitIconConnector, +.dj_ie6 .dijitRtl .dijitIconDatabase, +.dj_ie6 .dijitRtl .dijitIconDocuments, +.dj_ie6 .dijitRtl .dijitIconMail, +.dj_ie6 .dijitRtl .dijitLeaf, +.dj_ie6 .dijitRtl .dijitIconFile, +.dj_ie6 .dijitRtl .dijitIconFunction, +.dj_ie6 .dijitRtl .dijitIconKey, +.dj_ie6 .dijitRtl .dijitIconPackage, +.dj_ie6 .dijitRtl .dijitIconSample, +.dj_ie6 .dijitRtl .dijitIconTable, +.dj_ie6 .dijitRtl .dijitIconUsers, +.dj_ie6 .dijitRtl .dijitFolderClosed, +.dj_ie6 .dijitRtl .dijitIconFolderClosed, +.dj_ie6 .dijitRtl .dijitFolderOpened, +.dj_ie6 .dijitRtl .dijitIconFolderOpen, +.dj_ie6 .dijitRtl .dijitIconError { + background-image: url("../../../../../dijit/icons/images/commonIconsObjActEnabled8bit_rtl.png"); +} +.dijitRtl .dijitDisabled .dijitIconSave, +.dijitRtl .dijitDisabled .dijitIconPrint, +.dijitRtl .dijitDisabled .dijitIconCut, +.dijitRtl .dijitDisabled .dijitIconCopy, +.dijitRtl .dijitDisabled .dijitIconClear, +.dijitRtl .dijitDisabled .dijitIconDelete, +.dijitRtl .dijitDisabled .dijitIconUndo, +.dijitRtl .dijitDisabled .dijitIconEdit, +.dijitRtl .dijitDisabled .dijitIconNewTask, +.dijitRtl .dijitDisabled .dijitIconEditTask, +.dijitRtl .dijitDisabled .dijitIconEditProperty, +.dijitRtl .dijitDisabled .dijitIconTask, +.dijitRtl .dijitDisabled .dijitIconFilter, +.dijitRtl .dijitDisabled .dijitIconConfigure, +.dijitRtl .dijitDisabled .dijitIconSearch, +.dijitRtl .dijitDisabled .dijitIconApplication, +.dijitRtl .dijitDisabled .dijitIconBookmark, +.dijitRtl .dijitDisabled .dijitIconChart, +.dijitRtl .dijitDisabled .dijitIconConnector, +.dijitRtl .dijitDisabled .dijitIconDatabase, +.dijitRtl .dijitDisabled .dijitIconDocuments, +.dijitRtl .dijitDisabled .dijitIconMail, +.dijitRtl .dijitDisabled .dijitLeaf, +.dijitRtl .dijitDisabled .dijitIconFile, +.dijitRtl .dijitDisabled .dijitIconFunction, +.dijitRtl .dijitDisabled .dijitIconKey, +.dijitRtl .dijitDisabled .dijitIconPackage, +.dijitRtl .dijitDisabled .dijitIconSample, +.dijitRtl .dijitDisabled .dijitIconTable, +.dijitRtl .dijitDisabled .dijitIconUsers, +.dijitRtl .dijitDisabled .dijitFolderClosed, +.dijitRtl .dijitDisabled .dijitIconFolderClosed, +.dijitRtl .dijitDisabled .dijitFolderOpened, +.dijitRtl .dijitDisabled .dijitIconFolderOpen, +.dijitRtl .dijitDisabled .dijitIconError { + background-image: url("../../../../../dijit/icons/images/commonIconsObjActDisabled_rtl.png"); +} +.claro .dijitTitlePaneRtl .dijitClosed .dijitArrowNode, +.claro .dijitFieldsetRtl .dijitFieldsetTitleClosed .dijitArrowNode { + background-position: -7px 0; +} +.claro .dijitMenuItemRtl .dijitMenuExpand { + background-position: -7px 0; + margin-right: 0; + margin-left: 3px; +} +.claro .dijitMenuItemRtl .dijitMenuItemIcon { + margin: 0 4px 0 0; +} +.claro .dijitCalendarRtl .dijitCalendarIncrease { + background-position: 0 0; +} +.claro .dijitCalendarRtl .dijitCalendarDecrease { + background-position: -18px 0; +} +.claro .dijitCalendarRtl .dijitCalendarArrowHover .dijitCalendarIncrease { + background-position: -36px 0; +} +.claro .dijitCalendarRtl .dijitCalendarArrowHover .dijitCalendarDecrease { + background-position: -55px 0; +} +.claro .dijitCalendarRtl .dijitCalendarArrowActive .dijitCalendarIncrease { + background-position: -72px 0; +} +.claro .dijitCalendarRtl .dijitCalendarArrowActive .dijitCalendarDecrease { + background-position: -91px 0; +} +.claro .dijitToolbar .dijitComboButtonRtl .dijitButtonNode { + border-width: 0; + padding: 2px; +} +.claro .dijitToolbar .dijitComboButtonRtlHover .dijitButtonNode, +.claro .dijitToolbar .dijitComboButtonRtlActive .dijitButtonNode { + border-width: 1px; + padding: 1px; +} +.claro .dijitToolbar .dijitComboButtonRtl .dijitStretch { + + -moz-border-radius: 0 2px 2px 0; + border-radius: 0 2px 2px 0; +} +.claro .dijitToolbar .dijitComboButtonRtl .dijitArrowButton { + + -moz-border-radius: 2px 0 0 2px; + border-radius: 2px 0 0 2px; +} +.claro .dijitToolbar .dijitComboButtonRtlHover .dijitArrowButton, +.claro .dijitToolbar .dijitComboButtonRtlActive .dijitArrowButton { + + border-left-width: 1px; + border-right-width: 0; + padding-left: 1px; + padding-right: 2px; +} +.claro .dijitProgressBarRtl .dijitProgressBarFull { + border-left-width: 1px; + border-right-width: 0px; +} +.claro .dijitProgressBarIndeterminateRtl .dijitProgressBarTile { + -moz-transform: scaleX(-1); + -o-transform: scaleX(-1); + -webkit-transform: scaleX(-1); + transform: scaleX(-1); + filter: FlipH; + -ms-filter: "FlipH"; +} +.dijitColorPalette { + border: 0 solid #b5bcc7; + background: none; +} +.dijitColorPalette .dijitColorPaletteSwatch { + width: 25px; + height: 25px; + border-radius: 4px; + -moz-border-radius: 4px; +} +.dijitColorPalette .dijitPaletteImg { + border: 1px solid lightGrey; + border-radius: 4px; + -moz-border-radius: 4px; +} +.dojoxColorPicker { + padding:8px; + -moz-border-radius:4pt; + -webkit-border-radius:5pt; + -webkit-drop-shadow:3pt; +} +.dojoxColorPickerRightPad { + padding-right: 8px; +} +.tundra .dojoxColorPicker { + background:#ededed; + border:1px solid #ccc; +} +.dojoxColorPickerBox { + position:relative; + width:150px; + height:150px; + margin:0; + padding:0; +} +.dojoxColorPickerUnderlay { + position:relative; + top:0; left:0; + width:150px; + height:150px; + z-index:1; +} +.tundra .dojoxColorPickerUnderlay { + border:1px solid #a0a0a0; +} +.claro .dojoxColorPicker { + background:#ededed; + border:1px solid #cdcdcd; +} +.claro .dojoxColorPickerUnderlay { + border:1px solid #cccccc; +} +.dojoxHuePickerUnderlay { + position:relative; + top:0; left:0; + height:150px; + width:20px; + z-index:1; + text-align: center; +} +.dojoxHuePicker { position:relative; top: 0px; left: 0px; padding: 0px;} +.dojoxHuePickerPoint { + position:absolute; + top:0; left:0; + width:20px; + height:8px; + z-index:3; + cursor:move; +} +.dojoxColorPickerPoint { + position:absolute; + width:10px; + height:10px; + border:0; + z-index:3; + cursor:move; +} +.dojoxColorPickerPreview { + display:block; + width:45px; + height:45px; + border:1px solid #333; + background-color:#fff; + position:relative; + top: 0px; + left: 0px; +} +.dojoxColorPickerWebSafePreview { + display:block; + width:25px; + height:25px; + position:relative; + top: 0px; + left: 0px; + border:1px solid #333; +} +.dojoxColorPickerOptional { + position:relative; + top: 0px; + left: 0px; + height: 100%; +} +.dojoxColorPickerOptional table { + border-spacing: 4px; +} +.dojoxColorPickerPreviewContainer table { + border-spacing: 6px 0px; +} +.dojoxColorPickerOptional input { + border:1px solid #a7a7a7; + width:25px; + padding:1px 3px 1px 3px; + line-height:1.1em; +} +.dojoxColorPickerHex input { + width:55px; +} +.dojoxColorPicker { + padding: 8px; + -moz-border-radius: 4pt; + border-radius: 5pt; + -webkit-drop-shadow: 3pt; + background: gray; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/dijit/dijit.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/dijit/dijit.css new file mode 100644 index 00000000..c487ba2c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/dijit/dijit.css @@ -0,0 +1,2668 @@ + +.dijitReset { + + margin:0; + border:0; + padding:0; + font: inherit; + line-height:normal; + color: inherit; +} +.dj_a11y .dijitReset { + -moz-appearance: none; +} +.dijitInline { + + display:inline-block; + #zoom: 1; + #display:inline; + border:0; + padding:0; + vertical-align:middle; + #vertical-align: auto; +} +table.dijitInline { + + display:inline-table; + box-sizing: content-box; -moz-box-sizing: content-box; +} +.dijitHidden { + + display: none !important; +} +.dijitVisible { + + display: block !important; + position: relative; +} +.dj_ie6 .dijitComboBox .dijitInputContainer, +.dijitInputContainer { + + #zoom: 1; + overflow: hidden; + float: none !important; + position: relative; +} +.dj_ie7 .dijitInputContainer { + float: left !important; + clear: left; + display: inline-block !important; +} +.dj_ie .dijitSelect input, +.dj_ie input.dijitTextBox, +.dj_ie .dijitTextBox input { + font-size: 100%; +} +.dijitSelect .dijitButtonText { + float: left; + vertical-align: top; +} +TABLE.dijitSelect { + padding: 0 !important; + border-collapse: separate; +} +.dijitTextBox .dijitSpinnerButtonContainer, +.dijitTextBox .dijitArrowButtonContainer, +.dijitValidationTextBox .dijitValidationContainer { + float: right; + text-align: center; +} +.dijitSelect input.dijitInputField, +.dijitTextBox input.dijitInputField { + + padding-left: 0 !important; + padding-right: 0 !important; +} +.dijitValidationTextBox .dijitValidationContainer { + display: none; +} +.dijitTeeny { + font-size:1px; + line-height:1px; +} +.dijitOffScreen { + position: absolute !important; + left: -10000px !important; + top: -10000px !important; +} +.dijitPopup { + position: absolute; + background-color: transparent; + margin: 0; + border: 0; + padding: 0; + -webkit-overflow-scrolling: touch; +} +.dijitPositionOnly { + + padding: 0 !important; + border: 0 !important; + background-color: transparent !important; + background-image: none !important; + height: auto !important; + width: auto !important; +} +.dijitNonPositionOnly { + + float: none !important; + position: static !important; + margin: 0 0 0 0 !important; + vertical-align: middle !important; +} +.dijitBackgroundIframe { + + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.dijitDisplayNone { + + display:none !important; +} +.dijitContainer { + + overflow: hidden; +} +.dj_a11y .dijitIcon, +.dj_a11y div.dijitArrowButtonInner, +.dj_a11y span.dijitArrowButtonInner, +.dj_a11y img.dijitArrowButtonInner, +.dj_a11y .dijitCalendarIncrementControl, +.dj_a11y .dijitTreeExpando { + + display: none; +} +.dijitSpinner div.dijitArrowButtonInner { + display: block; +} +.dj_a11y .dijitA11ySideArrow { + display: inline !important; + cursor: pointer; +} +.dj_a11y .dijitCalendarDateLabel { + padding: 1px; + border: 0px !important; +} +.dj_a11y .dijitCalendarSelectedDate .dijitCalendarDateLabel { + border-style: solid !important; + border-width: 1px !important; + padding: 0; +} +.dj_a11y .dijitCalendarDateTemplate { + padding-bottom: 0.1em !important; + border: 0px !important; +} +.dj_a11y .dijitButtonNode { + border: black outset medium !important; + + padding: 0 !important; +} +.dj_a11y .dijitArrowButton { + padding: 0 !important; +} +.dj_a11y .dijitButtonContents { + margin: 0.15em; +} +.dj_a11y .dijitTextBoxReadOnly .dijitInputField, +.dj_a11y .dijitTextBoxReadOnly .dijitButtonNode { + border-style: outset!important; + border-width: medium!important; + border-color: #999 !important; + color:#999 !important; +} +.dijitButtonNode * { + vertical-align: middle; +} +.dijitSelect .dijitArrowButtonInner, +.dijitButtonNode .dijitArrowButtonInner { + + background: no-repeat center; + width: 12px; + height: 12px; + direction: ltr; +} +.dijitLeft { + + background-position:left top; + background-repeat:no-repeat; +} +.dijitStretch { + + white-space:nowrap; + background-repeat:repeat-x; +} +.dijitRight { + + #display:inline; + background-position:right top; + background-repeat:no-repeat; +} +.dj_gecko .dj_a11y .dijitButtonDisabled .dijitButtonNode { + opacity: 0.5; +} +.dijitToggleButton, +.dijitButton, +.dijitDropDownButton, +.dijitComboButton { + + margin: 0.2em; + vertical-align: middle; +} +.dijitButtonContents { + display: block; +} +td.dijitButtonContents { + display: table-cell; +} +.dijitButtonNode img { + + vertical-align:middle; + +} +.dijitToolbar .dijitComboButton { + + border-collapse: separate; +} +.dijitToolbar .dijitToggleButton, +.dijitToolbar .dijitButton, +.dijitToolbar .dijitDropDownButton, +.dijitToolbar .dijitComboButton { + margin: 0; +} +.dijitToolbar .dijitButtonContents { + + padding: 1px 2px; +} +.dj_webkit .dijitToolbar .dijitDropDownButton { + padding-left: 0.3em; +} +.dj_gecko .dijitToolbar .dijitButtonNode::-moz-focus-inner { + padding:0; +} +.dijitSelect { + border:1px solid gray; +} +.dijitButtonNode { + + border:1px solid gray; + margin:0; + line-height:normal; + vertical-align: middle; + #vertical-align: auto; + text-align:center; + white-space: nowrap; +} +.dj_webkit .dijitSpinner .dijitSpinnerButtonContainer { + + line-height:inherit; +} +.dijitTextBox .dijitButtonNode { + border-width: 0; +} +.dijitSelect, +.dijitSelect *, +.dijitButtonNode, +.dijitButtonNode * { + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dj_ie .dijitButtonNode { + + zoom: 1; +} +.dj_ie .dijitButtonNode button { + + overflow: visible; +} +div.dijitArrowButton { + float: right; +} +.dijitTextBox { + border: solid black 1px; + #overflow: hidden; + width: 15em; + vertical-align: middle; +} +.dijitTextBoxReadOnly, +.dijitTextBoxDisabled { + color: gray; +} +.dj_safari .dijitTextBoxDisabled input { + color: #B0B0B0; +} +.dj_safari textarea.dijitTextAreaDisabled { + color: #333; +} +.dj_gecko .dijitTextBoxReadOnly input.dijitInputField, +.dj_gecko .dijitTextBoxDisabled input { + -moz-user-input: none; +} +.dijitPlaceHolder { + + color: #AAAAAA; + font-style: italic; + position: absolute; + top: 0; + left: 0; + #filter: ""; + white-space: nowrap; +} +.dijitTimeTextBox { + width: 8em; +} +.dijitTextBox input:focus { + outline: none; +} +.dijitTextBoxFocused { + outline: 5px -webkit-focus-ring-color; +} +.dijitSelect input, +.dijitTextBox input { + float: left; +} +.dj_ie6 input.dijitTextBox, +.dj_ie6 .dijitTextBox input { + float: none; +} +.dijitInputInner { + + border:0 !important; + background-color:transparent !important; + width:100% !important; + + padding-left: 0 !important; + padding-right: 0 !important; + margin-left: 0 !important; + margin-right: 0 !important; +} +.dj_a11y .dijitTextBox input { + margin: 0 !important; +} +.dijitValidationTextBoxError input.dijitValidationInner, +.dijitSelect input, +.dijitTextBox input.dijitArrowButtonInner { + + text-indent: -2em !important; + direction: ltr !important; + text-align: left !important; + height: auto !important; + #text-indent: 0 !important; + #letter-spacing: -5em !important; + #text-align: right !important; +} +.dj_ie .dijitSelect input, +.dj_ie .dijitTextBox input, +.dj_ie input.dijitTextBox { + overflow-y: visible; + line-height: normal; +} +.dijitSelect .dijitSelectLabel span { + line-height: 100%; +} +.dj_ie .dijitSelect .dijitSelectLabel { + line-height: normal; +} +.dj_ie6 .dijitSelect .dijitSelectLabel, +.dj_ie7 .dijitSelect .dijitSelectLabel, +.dj_ie8 .dijitSelect .dijitSelectLabel, +.dj_iequirks .dijitSelect .dijitSelectLabel, +.dijitSelect td, +.dj_ie6 .dijitSelect input, +.dj_iequirks .dijitSelect input, +.dj_ie6 .dijitSelect .dijitValidationContainer, +.dj_ie6 .dijitTextBox input, +.dj_ie6 input.dijitTextBox, +.dj_iequirks .dijitTextBox input.dijitValidationInner, +.dj_iequirks .dijitTextBox input.dijitArrowButtonInner, +.dj_iequirks .dijitTextBox input.dijitSpinnerButtonInner, +.dj_iequirks .dijitTextBox input.dijitInputInner, +.dj_iequirks input.dijitTextBox { + line-height: 100%; +} +.dj_a11y input.dijitValidationInner, +.dj_a11y input.dijitArrowButtonInner { + + text-indent: 0 !important; + width: 1em !important; + #text-align: left !important; + color: black !important; +} +.dijitValidationTextBoxError .dijitValidationContainer { + display: inline; + cursor: default; +} +.dijitSpinner .dijitSpinnerButtonContainer, +.dijitComboBox .dijitArrowButtonContainer { + + border-width: 0 0 0 1px !important; +} +.dj_a11y .dijitSelect .dijitArrowButtonContainer, +.dijitToolbar .dijitComboBox .dijitArrowButtonContainer { + + border-width: 0 !important; +} +.dijitComboBoxMenu { + + list-style-type: none; +} +.dijitSpinner .dijitSpinnerButtonContainer .dijitButtonNode { + + border-width: 0; +} +.dj_ie .dj_a11y .dijitSpinner .dijitSpinnerButtonContainer .dijitButtonNode { + clear: both; +} +.dj_ie .dijitToolbar .dijitComboBox { + + vertical-align: middle; +} +.dijitTextBox .dijitSpinnerButtonContainer { + width: 1em; + position: relative !important; + overflow: hidden; +} +.dijitSpinner .dijitSpinnerButtonInner { + width:1em; + visibility:hidden !important; + overflow-x:hidden; +} +.dijitComboBox .dijitButtonNode, +.dijitSpinnerButtonContainer .dijitButtonNode { + border-width: 0; +} +.dj_a11y .dijitSpinnerButtonContainer .dijitButtonNode { + border-width: 0px !important; + border-style: solid !important; +} +.dj_a11y .dijitTextBox .dijitSpinnerButtonContainer, +.dj_a11y .dijitSpinner .dijitArrowButtonInner, +.dj_a11y .dijitSpinnerButtonContainer input { + width: 1em !important; +} +.dj_a11y .dijitSpinner .dijitArrowButtonInner { + margin: 0 auto !important; +} +.dj_ie .dj_a11y .dijitSpinner .dijitArrowButtonInner .dijitInputField { + padding-left: 0.3em !important; + padding-right: 0.3em !important; + margin-left: 0.3em !important; + margin-right: 0.3em !important; + width: 1.4em !important; +} +.dj_ie7 .dj_a11y .dijitSpinner .dijitArrowButtonInner .dijitInputField { + padding-left: 0 !important; + padding-right: 0 !important; + width: 1em !important; +} +.dj_ie6 .dj_a11y .dijitSpinner .dijitArrowButtonInner .dijitInputField { + margin-left: 0.1em !important; + margin-right: 0.1em !important; + width: 1em !important; +} +.dj_iequirks .dj_a11y .dijitSpinner .dijitArrowButtonInner .dijitInputField { + margin-left: 0 !important; + margin-right: 0 !important; + width: 2em !important; +} +.dijitSpinner .dijitSpinnerButtonContainer .dijitArrowButton { + + padding: 0; + position: absolute !important; + right: 0; + float: none; + height: 50%; + width: 100%; + bottom: auto; + left: 0; + right: auto; +} +.dj_iequirks .dijitSpinner .dijitSpinnerButtonContainer .dijitArrowButton { + width: auto; +} +.dj_a11y .dijitSpinnerButtonContainer .dijitArrowButton { + overflow: visible !important; +} +.dijitSpinner .dijitSpinnerButtonContainer .dijitDownArrowButton { + top: 50%; + border-top-width: 1px !important; +} +.dijitSpinner .dijitSpinnerButtonContainer .dijitUpArrowButton { + #bottom: 50%; + top: 0; +} +.dijitSpinner .dijitArrowButtonInner { + margin: auto; + overflow-x: hidden; + height: 100% !important; +} +.dj_iequirks .dijitSpinner .dijitArrowButtonInner { + height: auto !important; +} +.dijitSpinner .dijitArrowButtonInner .dijitInputField { + -moz-transform: scale(0.5); + -moz-transform-origin: center top; + -webkit-transform: scale(0.5); + -webkit-transform-origin: center top; + -o-transform: scale(0.5); + -o-transform-origin: center top; + transform: scale(0.5); + transform-origin: left top; + padding-top: 0; + padding-bottom: 0; + padding-left: 0 !important; + padding-right: 0 !important; + width: 100%; + visibility: hidden; +} +.dj_ie .dijitSpinner .dijitArrowButtonInner .dijitInputField { + zoom: 50%; +} +.dijitSpinner .dijitSpinnerButtonContainer .dijitArrowButtonInner { + overflow: hidden; +} +.dj_a11y .dijitSpinner .dijitSpinnerButtonContainer .dijitArrowButton { + width: 100%; +} +.dj_iequirks .dj_a11y .dijitSpinner .dijitSpinnerButtonContainer .dijitArrowButton { + width: 1em; +} +.dj_a11y .dijitSpinner .dijitArrowButtonInner .dijitInputField { + vertical-align:top; + visibility: visible; +} +.dj_a11y .dijitSpinnerButtonContainer { + width: 1em; +} +.dijitCheckBox, +.dijitRadio, +.dijitCheckBoxInput { + padding: 0; + border: 0; + width: 16px; + height: 16px; + background-position:center center; + background-repeat:no-repeat; + overflow: hidden; +} +.dijitCheckBox input, +.dijitRadio input { + margin: 0; + padding: 0; + display: block; +} +.dijitCheckBoxInput { + + opacity: 0; +} +.dj_ie .dijitCheckBoxInput { + filter: alpha(opacity=0); +} +.dj_a11y .dijitCheckBox, +.dj_a11y .dijitRadio { + + width: auto !important; + height: auto !important; +} +.dj_a11y .dijitCheckBoxInput { + opacity: 1; + filter: none; + width: auto; + height: auto; +} +.dj_a11y .dijitFocusedLabel { + + border: 1px dotted; + outline: 0px !important; +} +.dijitProgressBar { + z-index: 0; +} +.dijitProgressBarEmpty { + + position:relative;overflow:hidden; + border:1px solid black; + z-index:0; +} +.dijitProgressBarFull { + + position:absolute; + overflow:hidden; + z-index:-1; + top:0; + width:100%; +} +.dj_ie6 .dijitProgressBarFull { + height:1.6em; +} +.dijitProgressBarTile { + + position:absolute; + overflow:hidden; + top:0; + left:0; + bottom:0; + right:0; + margin:0; + padding:0; + width: 100%; + height:auto; + background-color:#aaa; + background-attachment: fixed; +} +.dj_a11y .dijitProgressBarTile { + + border-width:2px; + border-style:solid; + background-color:transparent !important; +} +.dj_ie6 .dijitProgressBarTile { + + position:static; + + height:1.6em; +} +.dijitProgressBarIndeterminate .dijitProgressBarTile { + +} +.dijitProgressBarIndeterminateHighContrastImage { + display:none; +} +.dj_a11y .dijitProgressBarIndeterminate .dijitProgressBarIndeterminateHighContrastImage { + display:block; + position:absolute; + top:0; + bottom:0; + margin:0; + padding:0; + width:100%; + height:auto; +} +.dijitProgressBarLabel { + display:block; + position:static; + width:100%; + text-align:center; + background-color:transparent !important; +} +.dijitTooltip { + position: absolute; + z-index: 2000; + display: block; + + left: 0; + top: -10000px; + overflow: visible; +} +.dijitTooltipContainer { + border: solid black 2px; + background: #b8b5b5; + color: black; + font-size: small; +} +.dijitTooltipFocusNode { + padding: 2px 2px 2px 2px; +} +.dijitTooltipConnector { + position: absolute; +} +.dj_a11y .dijitTooltipConnector { + display: none; +} +.dijitTooltipData { + display:none; +} +.dijitLayoutContainer { + position: relative; + display: block; + overflow: hidden; +} +.dijitAlignTop, +.dijitAlignBottom, +.dijitAlignLeft, +.dijitAlignRight { + position: absolute; + overflow: hidden; +} +body .dijitAlignClient { position: absolute; } +.dijitBorderContainer, .dijitBorderContainerNoGutter { + position:relative; + overflow: hidden; + z-index: 0; +} +.dijitBorderContainerPane, +.dijitBorderContainerNoGutterPane { + position: absolute !important; + z-index: 2; +} +.dijitBorderContainer > .dijitTextArea { + + resize: none; +} +.dijitGutter { + + position: absolute; + font-size: 1px; +} +.dijitSplitter { + position: absolute; + overflow: hidden; + z-index: 10; + background-color: #fff; + border-color: gray; + border-style: solid; + border-width: 0; +} +.dj_ie .dijitSplitter { + z-index: 1; +} +.dijitSplitterActive { + z-index: 11 !important; +} +.dijitSplitterCover { + position:absolute; + z-index:-1; + top:0; + left:0; + width:100%; + height:100%; +} +.dijitSplitterCoverActive { + z-index:3 !important; +} +.dj_ie .dijitSplitterCover { + background: white; + opacity: 0; +} +.dj_ie6 .dijitSplitterCover, +.dj_ie7 .dijitSplitterCover, +.dj_ie8 .dijitSplitterCover { + filter: alpha(opacity=0); +} +.dijitSplitterH { + height: 7px; + border-top:1px; + border-bottom:1px; + cursor: row-resize; + -webkit-tap-highlight-color: transparent; +} +.dijitSplitterV { + width: 7px; + border-left:1px; + border-right:1px; + cursor: col-resize; + -webkit-tap-highlight-color: transparent; +} +.dijitSplitContainer { + position: relative; + overflow: hidden; + display: block; +} +.dijitSplitPane { + position: absolute; +} +.dijitSplitContainerSizerH, +.dijitSplitContainerSizerV { + position:absolute; + font-size: 1px; + background-color: ThreeDFace; + border: 1px solid; + border-color: ThreeDHighlight ThreeDShadow ThreeDShadow ThreeDHighlight; + margin: 0; +} +.dijitSplitContainerSizerH .thumb, .dijitSplitterV .dijitSplitterThumb { + overflow:hidden; + position:absolute; + top:49%; +} +.dijitSplitContainerSizerV .thumb, .dijitSplitterH .dijitSplitterThumb { + position:absolute; + left:49%; +} +.dijitSplitterShadow, +.dijitSplitContainerVirtualSizerH, +.dijitSplitContainerVirtualSizerV { + font-size: 1px; + background-color: ThreeDShadow; + -moz-opacity: 0.5; + opacity: 0.5; + filter: Alpha(Opacity=50); + margin: 0; +} +.dijitSplitContainerSizerH, .dijitSplitContainerVirtualSizerH { + cursor: col-resize; +} +.dijitSplitContainerSizerV, .dijitSplitContainerVirtualSizerV { + cursor: row-resize; +} +.dj_a11y .dijitSplitterH { + border-top:1px solid #d3d3d3 !important; + border-bottom:1px solid #d3d3d3 !important; +} +.dj_a11y .dijitSplitterV { + border-left:1px solid #d3d3d3 !important; + border-right:1px solid #d3d3d3 !important; +} +.dijitContentPane { + display: block; + overflow: auto; + -webkit-overflow-scrolling: touch; +} +.dijitContentPaneSingleChild { + + overflow: hidden; +} +.dijitContentPaneLoading .dijitIconLoading, +.dijitContentPaneError .dijitIconError { + margin-right: 9px; +} +.dijitTitlePane { + display: block; + overflow: hidden; +} +.dijitFieldset { + border: 1px solid gray; +} +.dijitTitlePaneTitle, .dijitFieldsetTitle { + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitTitlePaneTitleFixedOpen, .dijitTitlePaneTitleFixedClosed, +.dijitFieldsetTitleFixedOpen, .dijitFieldsetTitleFixedClosed { + + cursor: default; +} +.dijitTitlePaneTitle * { + vertical-align: middle; +} +.dijitTitlePane .dijitArrowNodeInner, .dijitFieldset .dijitArrowNodeInner { + + display: none; +} +.dj_a11y .dijitTitlePane .dijitArrowNodeInner, .dj_a11y .dijitFieldset .dijitArrowNodeInner { + + display: inline; + font-family: monospace; +} +.dj_a11y .dijitTitlePane .dijitArrowNode, .dj_a11y .dijitFieldset .dijitArrowNode { + + display: none; +} +.dijitTitlePaneTitleFixedOpen .dijitArrowNode, .dijitTitlePaneTitleFixedOpen .dijitArrowNodeInner, +.dijitTitlePaneTitleFixedClosed .dijitArrowNode, .dijitTitlePaneTitleFixedClosed .dijitArrowNodeInner, +.dijitFieldsetTitleFixedOpen .dijitArrowNode, .dijitFieldsetTitleFixedOpen .dijitArrowNodeInner, +.dijitFieldsetTitleFixedClosed .dijitArrowNode, .dijitFieldsetTitleFixedClosed .dijitArrowNodeInner { + + display: none !important; +} +.dj_ie6 .dijitTitlePaneContentOuter, +.dj_ie6 .dijitTitlePane .dijitTitlePaneTitle { + + zoom: 1; +} +.dijitColorPalette { + border: 1px solid #999; + background: #fff; + position: relative; +} +.dijitColorPalette .dijitPaletteTable { + + padding: 2px 3px 3px 3px; + position: relative; + overflow: hidden; + outline: 0; + border-collapse: separate; +} +.dj_ie6 .dijitColorPalette .dijitPaletteTable, +.dj_ie7 .dijitColorPalette .dijitPaletteTable, +.dj_iequirks .dijitColorPalette .dijitPaletteTable { + + padding: 0; + margin: 2px 3px 3px 3px; +} +.dijitColorPalette .dijitPaletteCell { + + font-size: 1px; + vertical-align: middle; + text-align: center; + background: none; +} +.dijitColorPalette .dijitPaletteImg { + + padding: 1px; + border: 1px solid #999; + margin: 2px 1px; + cursor: default; + font-size: 1px; +} +.dj_gecko .dijitColorPalette .dijitPaletteImg { + padding-bottom: 0; +} +.dijitColorPalette .dijitColorPaletteSwatch { + + width: 14px; + height: 12px; +} +.dijitPaletteTable td { + padding: 0; +} +.dijitColorPalette .dijitPaletteCell:hover .dijitPaletteImg { + + border: 1px solid #000; +} +.dijitColorPalette .dijitPaletteCell:active .dijitPaletteImg, +.dijitColorPalette .dijitPaletteTable .dijitPaletteCellSelected .dijitPaletteImg { + border: 2px solid #000; + margin: 1px 0; +} +.dj_a11y .dijitColorPalette .dijitPaletteTable, +.dj_a11y .dijitColorPalette .dijitPaletteTable * { + + background-color: transparent !important; +} +.dijitAccordionContainer { + border:1px solid #b7b7b7; + border-top:0 !important; +} +.dijitAccordionTitle { + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitAccordionTitleSelected { + cursor: default; +} +.dijitAccordionTitle .arrowTextUp, +.dijitAccordionTitle .arrowTextDown { + display: none; + font-size: 0.65em; + font-weight: normal !important; +} +.dj_a11y .dijitAccordionTitle .arrowTextUp, +.dj_a11y .dijitAccordionTitleSelected .arrowTextDown { + display: inline; +} +.dj_a11y .dijitAccordionTitleSelected .arrowTextUp { + display: none; +} +.dijitAccordionChildWrapper { + + overflow: hidden; +} +.dijitCalendarContainer { + width: auto; +} +.dijitCalendarContainer th, .dijitCalendarContainer td { + padding: 0; + vertical-align: middle; +} +.dijitCalendarYearLabel { + white-space: nowrap; +} +.dijitCalendarNextYear { + margin:0 0 0 0.55em; +} +.dijitCalendarPreviousYear { + margin:0 0.55em 0 0; +} +.dijitCalendarIncrementControl { + vertical-align: middle; +} +.dijitCalendarIncrementControl, +.dijitCalendarDateTemplate, +.dijitCalendarMonthLabel, +.dijitCalendarPreviousYear, +.dijitCalendarNextYear { + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitCalendarDisabledDate { + color: gray; + text-decoration: line-through; + cursor: default; +} +.dijitSpacer { + + position: relative; + height: 1px; + overflow: hidden; + visibility: hidden; +} +.dijitCalendarMonthMenu .dijitCalendarMonthLabel { + text-align:center; +} +.dijitMenu { + border:1px solid black; + background-color:white; +} +.dijitMenuTable { + border-collapse:collapse; + border-width:0; + background-color:white; +} +.dj_webkit .dijitMenuTable td[colspan="2"]{ + border-right:hidden; +} +.dijitMenuItem { + text-align: left; + white-space: nowrap; + padding:.1em .2em; + cursor:pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitMenuItem:focus { + outline: none +} +.dijitMenuPassive .dijitMenuItemHover, +.dijitMenuItemSelected { + + background-color:black; + color:white; +} +.dijitMenuItemIcon, .dijitMenuExpand { + background-repeat: no-repeat; +} +.dijitMenuItemDisabled * { + + opacity:0.5; + cursor:default; +} +.dj_ie .dj_a11y .dijitMenuItemDisabled, +.dj_ie .dj_a11y .dijitMenuItemDisabled *, +.dj_ie .dijitMenuItemDisabled * { + color: gray; + filter: alpha(opacity=35); +} +.dijitMenuItemLabel { + vertical-align: middle; +} +.dj_a11y .dijitMenuItemSelected { + border: 1px dotted black !important; +} +.dj_a11y .dijitMenuItemSelected .dijitMenuItemLabel { + border-width: 1px; + border-style: solid; +} +.dj_ie8 .dj_a11y .dijitMenuItemLabel { + position:static; +} +.dijitMenuExpandA11y { + display: none; +} +.dj_a11y .dijitMenuExpandA11y { + display: inline; +} +.dijitMenuSeparator td { + border: 0; + padding: 0; +} +.dijitMenuSeparatorTop { + height: 50%; + margin: 0; + margin-top:3px; + font-size: 1px; +} +.dijitMenuSeparatorBottom { + height: 50%; + margin: 0; + margin-bottom:3px; + font-size: 1px; +} +.dijitMenuItemIconChar { + display: none; + visibility: hidden; +} +.dj_a11y .dijitMenuItemIconChar { + display: inline; +} +.dijitCheckedMenuItemChecked .dijitMenuItemIconChar, +.dijitRadioMenuItemChecked .dijitMenuItemIconChar { + visibility: visible; +} +.dj_ie .dj_a11y .dijitMenuBar .dijitMenuItem { + + margin: 0; +} +.dijitStackController .dijitToggleButtonChecked * { + cursor: default; +} +.dijitTabContainer { + z-index: 0; + overflow: visible; +} +.dj_ie6 .dijitTabContainer { + + overflow: hidden; +} +.dijitTabContainerNoLayout { + width: 100%; +} +.dijitTabContainerBottom-tabs, +.dijitTabContainerTop-tabs, +.dijitTabContainerLeft-tabs, +.dijitTabContainerRight-tabs { + z-index: 1; + overflow: visible !important; +} +.dijitTabController { + z-index: 1; +} +.dijitTabContainerBottom-container, +.dijitTabContainerTop-container, +.dijitTabContainerLeft-container, +.dijitTabContainerRight-container { + z-index:0; + overflow: hidden; + border: 1px solid black; +} +.nowrapTabStrip { + width: 50000px; + display: block; + position: relative; + text-align: left; + z-index: 1; +} +.dijitTabListWrapper { + overflow: hidden; + z-index: 1; +} +.dj_a11y .tabStripButton img { + + display: none; +} +.dijitTabContainerTop-tabs { + border-bottom: 1px solid black; +} +.dijitTabContainerTop-container { + border-top: 0; +} +.dijitTabContainerLeft-tabs { + border-right: 1px solid black; + float: left; +} +.dijitTabContainerLeft-container { + border-left: 0; +} +.dijitTabContainerBottom-tabs { + border-top: 1px solid black; +} +.dijitTabContainerBottom-container { + border-bottom: 0; +} +.dijitTabContainerRight-tabs { + border-left: 1px solid black; + float: left; +} +.dijitTabContainerRight-container { + border-right: 0; +} +div.dijitTabDisabled, .dj_ie div.dijitTabDisabled { + cursor: auto; +} +.dijitTab { + position:relative; + cursor:pointer; + -webkit-tap-highlight-color: transparent; + white-space:nowrap; + z-index:3; +} +.dijitTab * { + + vertical-align: middle; +} +.dijitTabChecked { + cursor: default; +} +.dijitTabContainerTop-tabs .dijitTab { + top: 1px; +} +.dijitTabContainerBottom-tabs .dijitTab { + top: -1px; +} +.dijitTabContainerLeft-tabs .dijitTab { + left: 1px; +} +.dijitTabContainerRight-tabs .dijitTab { + left: -1px; +} +.dijitTabContainerTop-tabs .dijitTab, +.dijitTabContainerBottom-tabs .dijitTab { + + display:inline-block; + #zoom: 1; + #display:inline; +} +.tabStripButton { + z-index: 12; +} +.dijitTabButtonDisabled .tabStripButton { + display: none; +} +.dijitTabCloseButton { + margin-left: 1em; +} +.dijitTabCloseText { + display:none; +} +.dijitTab .tabLabel { + + min-height: 15px; + display: inline-block; +} +.dijitNoIcon { + + display: none; +} +.dj_ie6 .dijitTab .dijitNoIcon { + + display: inline; + height: 15px; + width: 1px; +} +.dj_a11y .dijitTabCloseButton { + background-image: none !important; + width: auto !important; + height: auto !important; +} +.dj_a11y .dijitTabCloseText { + display: inline; +} +.dijitTabPane, +.dijitStackContainer-child, +.dijitAccordionContainer-child { + + border: none !important; +} +.dijitInlineEditBoxDisplayMode { + border: 1px solid transparent; + cursor: text; +} +.dj_a11y .dijitInlineEditBoxDisplayMode, +.dj_ie6 .dijitInlineEditBoxDisplayMode { + + border: none; +} +.dijitInlineEditBoxDisplayModeHover, +.dj_a11y .dijitInlineEditBoxDisplayModeHover, +.dj_ie6 .dijitInlineEditBoxDisplayModeHover { + + background-color: #e2ebf2; + border: solid 1px black; +} +.dijitInlineEditBoxDisplayModeDisabled { + cursor: default; +} +.dijitTree { + overflow: auto; + -webkit-tap-highlight-color: transparent; +} +.dijitTreeContainer { + float: left; +} +.dijitTreeIndent { + + width: 19px; +} +.dijitTreeRow, .dijitTreeContent { + white-space: nowrap; +} +.dj_ie .dijitTreeLabel:focus { + + outline: 1px dotted black; +} +.dijitTreeRow img { + + vertical-align: middle; +} +.dijitTreeContent { + cursor: default; +} +.dijitExpandoText { + display: none; +} +.dj_a11y .dijitExpandoText { + display: inline; + padding-left: 10px; + padding-right: 10px; + font-family: monospace; + border-style: solid; + border-width: thin; + cursor: pointer; +} +.dijitTreeLabel { + margin: 0 4px; +} +.dijitDialog { + position: absolute; + z-index: 999; + overflow: hidden; +} +.dijitDialogTitleBar { + cursor: move; +} +.dijitDialogFixed .dijitDialogTitleBar { + cursor:default; +} +.dijitDialogCloseIcon { + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitDialogPaneContent { + -webkit-overflow-scrolling: touch; +} +.dijitDialogUnderlayWrapper { + position: absolute; + left: 0; + top: 0; + z-index: 998; + display: none; + background: transparent !important; +} +.dijitDialogUnderlay { + background: #eee; + opacity: 0.5; +} +.dj_ie .dijitDialogUnderlay { + filter: alpha(opacity=50); +} +.dj_a11y .dijitSpinnerButtonContainer, +.dj_a11y .dijitDialog { + opacity: 1 !important; + background-color: white !important; +} +.dijitDialog .closeText { + display:none; + + position:absolute; +} +.dj_a11y .dijitDialog .closeText { + display:inline; +} +.dijitSliderMoveable { + z-index:99; + position:absolute !important; + display:block; + vertical-align:middle; +} +.dijitSliderMoveableH { + right:0; +} +.dijitSliderMoveableV { + right:50%; +} +.dj_a11y div.dijitSliderImageHandle, +.dijitSliderImageHandle { + margin:0; + padding:0; + position:relative !important; + border:8px solid gray; + width:0; + height:0; + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dj_iequirks .dj_a11y .dijitSliderImageHandle { + font-size: 0; +} +.dj_ie7 .dijitSliderImageHandle { + overflow: hidden; +} +.dj_ie7 .dj_a11y .dijitSliderImageHandle { + overflow: visible; +} +.dj_a11y .dijitSliderFocused .dijitSliderImageHandle { + border:4px solid #000; + height:8px; + width:8px; +} +.dijitSliderImageHandleV { + top:-8px; + right: -50%; +} +.dijitSliderImageHandleH { + left:50%; + top:-5px; + vertical-align:top; +} +.dijitSliderBar { + border-style:solid; + border-color:black; + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitSliderBarContainerV { + position:relative; + height:100%; + z-index:1; +} +.dijitSliderBarContainerH { + position:relative; + z-index:1; +} +.dijitSliderBarH { + height:4px; + border-width:1px 0; +} +.dijitSliderBarV { + width:4px; + border-width:0 1px; +} +.dijitSliderProgressBar { + background-color:red; + z-index:1; +} +.dijitSliderProgressBarV { + position:static !important; + height:0; + vertical-align:top; + text-align:left; +} +.dijitSliderProgressBarH { + position:absolute !important; + width:0; + vertical-align:middle; + overflow:visible; +} +.dijitSliderRemainingBar { + overflow:hidden; + background-color:transparent; + z-index:1; +} +.dijitSliderRemainingBarV { + height:100%; + text-align:left; +} +.dijitSliderRemainingBarH { + width:100% !important; +} +.dijitSliderBumper { + overflow:hidden; + z-index:1; +} +.dijitSliderBumperV { + width:4px; + height:8px; + border-width:0 1px; +} +.dijitSliderBumperH { + width:8px; + height:4px; + border-width:1px 0; +} +.dijitSliderBottomBumper, +.dijitSliderLeftBumper { + background-color:red; +} +.dijitSliderTopBumper, +.dijitSliderRightBumper { + background-color:transparent; +} +.dijitSliderDecoration { + text-align:center; +} +.dijitSliderDecorationC, +.dijitSliderDecorationV { + position: relative; +} +.dijitSliderDecorationH { + width: 100%; +} +.dijitSliderDecorationV { + height: 100%; + white-space: nowrap; +} +.dijitSliderButton { + font-family:monospace; + margin:0; + padding:0; + display:block; +} +.dj_a11y .dijitSliderButtonInner { + visibility:visible !important; +} +.dijitSliderButtonContainer { + text-align:center; + height:0; +} +.dijitSliderButtonContainer * { + cursor: pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitSlider .dijitButtonNode { + padding:0; + display:block; +} +.dijitRuleContainer { + position:relative; + overflow:visible; +} +.dijitRuleContainerV { + height:100%; + line-height:0; + float:left; + text-align:left; +} +.dj_opera .dijitRuleContainerV { + line-height:2%; +} +.dj_ie .dijitRuleContainerV { + line-height:normal; +} +.dj_gecko .dijitRuleContainerV { + margin:0 0 1px 0; +} +.dijitRuleMark { + position:absolute; + border:1px solid black; + line-height:0; + height:100%; +} +.dijitRuleMarkH { + width:0; + border-top-width:0 !important; + border-bottom-width:0 !important; + border-left-width:0 !important; +} +.dijitRuleLabelContainer { + position:absolute; +} +.dijitRuleLabelContainerH { + text-align:center; + display:inline-block; +} +.dijitRuleLabelH { + position:relative; + left:-50%; +} +.dijitRuleLabelV { + + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; +} +.dijitRuleMarkV { + height:0; + border-right-width:0 !important; + border-bottom-width:0 !important; + border-left-width:0 !important; + width:100%; + left:0; +} +.dj_ie .dijitRuleLabelContainerV { + margin-top:-.55em; +} +.dj_a11y .dijitSliderReadOnly, +.dj_a11y .dijitSliderDisabled { + opacity:0.6; +} +.dj_ie .dj_a11y .dijitSliderReadOnly .dijitSliderBar, +.dj_ie .dj_a11y .dijitSliderDisabled .dijitSliderBar { + filter: alpha(opacity=40); +} +.dj_a11y .dijitSlider .dijitSliderButtonContainer div { + font-family: monospace; + font-size: 1em; + line-height: 1em; + height: auto; + width: auto; + margin: 0 4px; +} +.dj_a11y .dijitButtonContents .dijitButtonText, +.dj_a11y .dijitTab .tabLabel { + display: inline !important; +} +.dj_a11y .dijitSelect .dijitButtonText { + display: inline-block !important; +} +.dijitTextArea { + width:100%; + overflow-y: auto; +} +.dijitTextArea[cols] { + width:auto; +} +.dj_ie .dijitTextAreaCols { + width:auto; +} +.dijitExpandingTextArea { + + resize: none; +} +.dijitToolbarSeparator { + height: 18px; + width: 5px; + padding: 0 1px; + margin: 0; +} +.dijitIEFixedToolbar { + position:absolute; + + top: expression(eval((document.documentElement||document.body).scrollTop)); +} +.dijitEditor { + display: block; +} +.dijitEditorDisabled, +.dijitEditorReadOnly { + color: gray; +} +.dijitTimePicker { + background-color: white; +} +.dijitTimePickerItem { + cursor:pointer; + -webkit-tap-highlight-color: transparent; +} +.dijitTimePickerItemHover { + background-color:gray; + color:white; +} +.dijitTimePickerItemSelected { + font-weight:bold; + color:#333; + background-color:#b7cdee; +} +.dijitTimePickerItemDisabled { + color:gray; + text-decoration:line-through; +} +.dijitTimePickerItemInner { + text-align:center; + border:0; + padding:2px 8px 2px 8px; +} +.dijitTimePickerTick, +.dijitTimePickerMarker { + border-bottom:1px solid gray; +} +.dijitTimePicker .dijitDownArrowButton { + border-top: none !important; +} +.dijitTimePickerTick { + color:#CCC; +} +.dijitTimePickerMarker { + color:black; + background-color:#CCC; +} +.dj_a11y .dijitTimePickerItemSelected .dijitTimePickerItemInner { + border: solid 4px black; +} +.dj_a11y .dijitTimePickerItemHover .dijitTimePickerItemInner { + border: dashed 4px black; +} +.dijitToggleButtonIconChar { + + display:none !important; +} +.dj_a11y .dijitToggleButton .dijitToggleButtonIconChar { + display:inline !important; + visibility:hidden; +} +.dj_ie6 .dijitToggleButtonIconChar, .dj_ie6 .tabStripButton .dijitButtonText { + font-family: "Arial Unicode MS"; +} +.dj_a11y .dijitToggleButtonChecked .dijitToggleButtonIconChar { + display: inline !important; + visibility:visible !important; +} +.dijitArrowButtonChar { + display:none !important; +} +.dj_a11y .dijitArrowButtonChar { + display:inline !important; +} +.dj_a11y .dijitDropDownButton .dijitArrowButtonInner, +.dj_a11y .dijitComboButton .dijitArrowButtonInner { + display:none !important; +} +.dj_a11y .dijitSelect { + border-collapse: separate !important; + border-width: 1px; + border-style: solid; +} +.dj_ie .dijitSelect { + vertical-align: middle; +} +.dj_ie6 .dijitSelect .dijitValidationContainer, +.dj_ie8 .dijitSelect .dijitButtonText { + vertical-align: top; +} +.dj_ie6 .dijitTextBox .dijitInputContainer, +.dj_iequirks .dijitTextBox .dijitInputContainer, +.dj_ie6 .dijitTextBox .dijitArrowButtonInner, +.dj_ie6 .dijitSpinner .dijitSpinnerButtonInner, +.dijitSelect .dijitSelectLabel { + vertical-align: baseline; +} +.dijitNumberTextBox { + text-align: left; + direction: ltr; +} +.dijitNumberTextBox .dijitInputInner { + text-align: inherit; +} +.dijitToolbar .dijitSelect { + margin: 0; +} +.dj_webkit .dijitToolbar .dijitSelect { + padding-left: 0.3em; +} +.dijitSelect .dijitButtonContents { + padding: 0; + white-space: nowrap; + text-align: left; + border-style: none solid none none; + border-width: 1px; +} +.dijitSelectFixedWidth .dijitButtonContents { + width: 100%; +} +.dijitSelectMenu .dijitMenuItemIcon { + + display:none; +} +.dj_ie6 .dijitSelectMenu .dijitMenuItemLabel, +.dj_ie7 .dijitSelectMenu .dijitMenuItemLabel { + + position: static; +} +.dijitSelectLabel * +{ + vertical-align: baseline; +} +.dijitSelectSelectedOption * { + font-weight: bold; +} +.dijitSelectMenu { + border-width: 1px; +} +.dijitForceStatic { + position: static !important; +} +.dijitReadOnly *, +.dijitDisabled *, +.dijitReadOnly, +.dijitDisabled { + + cursor: default; +} +.dojoDndItem { + padding: 2px; + + -webkit-touch-callout: none; + -webkit-user-select: none; +} +.dojoDndHorizontal .dojoDndItem { + + #display: inline; + display: inline-block; +} +.dojoDndItemBefore, +.dojoDndItemAfter { + border: 0px solid #369; +} +.dojoDndItemBefore { + border-width: 2px 0 0 0; + padding: 0 2px 2px 2px; +} +.dojoDndItemAfter { + border-width: 0 0 2px 0; + padding: 2px 2px 0 2px; +} +.dojoDndHorizontal .dojoDndItemBefore { + border-width: 0 0 0 2px; + padding: 2px 2px 2px 0; +} +.dojoDndHorizontal .dojoDndItemAfter { + border-width: 0 2px 0 0; + padding: 2px 0 2px 2px; +} +.dojoDndItemOver { + cursor:pointer; +} +.dj_gecko .dijitArrowButtonInner INPUT, +.dj_gecko INPUT.dijitArrowButtonInner { + -moz-user-focus:ignore; +} +.dijitFocused .dijitMenuItemShortcutKey { + text-decoration: underline; +} +.dijitIconSave, +.dijitIconPrint, +.dijitIconCut, +.dijitIconCopy, +.dijitIconClear, +.dijitIconDelete, +.dijitIconUndo, +.dijitIconEdit, +.dijitIconNewTask, +.dijitIconEditTask, +.dijitIconEditProperty, +.dijitIconTask, +.dijitIconFilter, +.dijitIconConfigure, +.dijitIconSearch, +.dijitIconApplication, +.dijitIconBookmark, +.dijitIconChart, +.dijitIconConnector, +.dijitIconDatabase, +.dijitIconDocuments, +.dijitIconMail, +.dijitLeaf, +.dijitIconFile, +.dijitIconFunction, +.dijitIconKey, +.dijitIconPackage, +.dijitIconSample, +.dijitIconTable, +.dijitIconUsers, +.dijitFolderClosed, +.dijitIconFolderClosed, +.dijitFolderOpened, +.dijitIconFolderOpen, +.dijitIconError { + background-image: url("../../../../../dijit/icons/images/commonIconsObjActEnabled.png"); + width: 16px; + height: 16px; +} +.dj_ie6 .dijitIconSave, +.dj_ie6 .dijitIconPrint, +.dj_ie6 .dijitIconCut, +.dj_ie6 .dijitIconCopy, +.dj_ie6 .dijitIconClear, +.dj_ie6 .dijitIconDelete, +.dj_ie6 .dijitIconUndo, +.dj_ie6 .dijitIconEdit, +.dj_ie6 .dijitIconNewTask, +.dj_ie6 .dijitIconEditTask, +.dj_ie6 .dijitIconEditProperty, +.dj_ie6 .dijitIconTask, +.dj_ie6 .dijitIconFilter, +.dj_ie6 .dijitIconConfigure, +.dj_ie6 .dijitIconSearch, +.dj_ie6 .dijitIconApplication, +.dj_ie6 .dijitIconBookmark, +.dj_ie6 .dijitIconChart, +.dj_ie6 .dijitIconConnector, +.dj_ie6 .dijitIconDatabase, +.dj_ie6 .dijitIconDocuments, +.dj_ie6 .dijitIconMail, +.dj_ie6 .dijitLeaf, +.dj_ie6 .dijitIconFile, +.dj_ie6 .dijitIconFunction, +.dj_ie6 .dijitIconKey, +.dj_ie6 .dijitIconPackage, +.dj_ie6 .dijitIconSample, +.dj_ie6 .dijitIconTable, +.dj_ie6 .dijitIconUsers, +.dj_ie6 .dijitFolderClosed, +.dj_ie6 .dijitIconFolderClosed, +.dj_ie6 .dijitFolderOpened, +.dj_ie6 .dijitIconFolderOpen, +.dj_ie6 .dijitIconError { + background-image: url("../../../../../dijit/icons/images/commonIconsObjActEnabled8bit.png"); +} +.dijitDisabled .dijitIconSave, +.dijitDisabled .dijitIconPrint, +.dijitDisabled .dijitIconCut, +.dijitDisabled .dijitIconCopy, +.dijitDisabled .dijitIconClear, +.dijitDisabled .dijitIconDelete, +.dijitDisabled .dijitIconUndo, +.dijitDisabled .dijitIconEdit, +.dijitDisabled .dijitIconNewTask, +.dijitDisabled .dijitIconEditTask, +.dijitDisabled .dijitIconEditProperty, +.dijitDisabled .dijitIconTask, +.dijitDisabled .dijitIconFilter, +.dijitDisabled .dijitIconConfigure, +.dijitDisabled .dijitIconSearch, +.dijitDisabled .dijitIconApplication, +.dijitDisabled .dijitIconBookmark, +.dijitDisabled .dijitIconChart, +.dijitDisabled .dijitIconConnector, +.dijitDisabled .dijitIconDatabase, +.dijitDisabled .dijitIconDocuments, +.dijitDisabled .dijitIconMail, +.dijitDisabled .dijitLeaf, +.dijitDisabled .dijitIconFile, +.dijitDisabled .dijitIconFunction, +.dijitDisabled .dijitIconKey, +.dijitDisabled .dijitIconPackage, +.dijitDisabled .dijitIconSample, +.dijitDisabled .dijitIconTable, +.dijitDisabled .dijitIconUsers, +.dijitDisabled .dijitFolderClosed, +.dijitDisabled .dijitIconFolderClosed, +.dijitDisabled .dijitFolderOpened, +.dijitDisabled .dijitIconFolderOpen, +.dijitDisabled .dijitIconError { + background-image: url("../../../../../dijit/icons/images/commonIconsObjActDisabled.png"); +} +.dijitIconSave { background-position: 0; } +.dijitIconPrint { background-position: -16px; } +.dijitIconCut { background-position: -32px; } +.dijitIconCopy { background-position: -48px; } +.dijitIconClear { background-position: -64px; } +.dijitIconDelete { background-position: -80px; } +.dijitIconUndo { background-position: -96px; } +.dijitIconEdit { background-position: -112px; } +.dijitIconNewTask { background-position: -128px; } +.dijitIconEditTask { background-position: -144px; } +.dijitIconEditProperty { background-position: -160px; } +.dijitIconTask { background-position: -176px; } +.dijitIconFilter { background-position: -192px; } +.dijitIconConfigure { background-position: -208px; } +.dijitIconSearch { background-position: -224px; } +.dijitIconError { background-position: -496px; } +.dijitIconApplication { background-position: -240px; } +.dijitIconBookmark { background-position: -256px; } +.dijitIconChart { background-position: -272px; } +.dijitIconConnector { background-position: -288px; } +.dijitIconDatabase { background-position: -304px; } +.dijitIconDocuments { background-position: -320px; } +.dijitIconMail { background-position: -336px; } +.dijitIconFile, .dijitLeaf { background-position: -352px; } +.dijitIconFunction { background-position: -368px; } +.dijitIconKey { background-position: -384px; } +.dijitIconPackage{ background-position: -400px; } +.dijitIconSample { background-position: -416px; } +.dijitIconTable { background-position: -432px; } +.dijitIconUsers { background-position: -448px; } +.dijitIconFolderClosed, .dijitFolderClosed { background-position: -464px; } +.dijitIconFolderOpen, .dijitFolderOpened { background-position: -480px; } +.dijitIconLoading { + background:url("../../../../../dijit/icons/images/loadingAnimation_rtl.gif") no-repeat; + height: 20px; + width: 20px; +} +.claro .dijitPopup { + -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25); + -moz-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25); + box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25); +} +.claro .dijitTooltipDialogPopup { + + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +.claro .dijitComboBoxHighlightMatch { + background-color: #abd6ff; +} +.claro .dijitFocusedLabel { + + outline: 1px dotted #494949; +} +.claro .dojoDndItem { + border-color: rgba(0, 0, 0, 0); + -webkit-transition-duration: 0.25s; + -moz-transition-duration: 0.25s; + transition-duration: 0.25s; + -webkit-transition-property: background-color, border-color; + -moz-transition-property: background-color, border-color; + transition-property: background-color, border-color; +} +.claro .dojoDndItemOver { + background-color: #abd6ff; + background-image: url("../../../../../dijit/themes/claro/images/standardGradient.png"); + background-repeat: repeat-x; + background-image: -moz-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + background-image: -o-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + background-image: linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + _background-image: none; + padding: 1px; + border: solid 1px #759dc0; + color: #000000; +} +.claro .dojoDndItemAnchor, +.claro .dojoDndItemSelected { + background-color: #cfe5fa; + background-image: url("../../../../../dijit/themes/claro/images/standardGradient.png"); + background-repeat: repeat-x; + background-image: -moz-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + background-image: -o-linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + background-image: linear-gradient(rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%); + _background-image: none; + padding: 1px; + border: solid 1px #759dc0; + color: #000000; +} +.claro .dojoDndItemBefore, +.claro .dojoDndItemAfter { + border-color: #759dc0; +} +.claro table.dojoDndAvatar { + border: 1px solid #b5bcc7; + border-collapse: collapse; + background-color: #ffffff; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); + -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); +} +.claro .dojoDndAvatarHeader td { + height: 20px; + padding-left: 21px; +} +.claro.dojoDndMove .dojoDndAvatarHeader, +.claro.dojoDndCopy .dojoDndAvatarHeader { + background-image: url("../../../../../dijit/themes/claro/images/dnd.png"); + background-repeat: no-repeat; + background-position: 2px -122px; +} +.claro .dojoDndAvatarItem td { + padding: 5px; +} +.claro.dojoDndMove .dojoDndAvatarHeader { + background-color: #f58383; + background-position: 2px -103px; +} +.claro.dojoDndCopy .dojoDndAvatarHeader { + background-color: #f58383; + background-position: 2px -68px; +} +.claro.dojoDndMove .dojoDndAvatarCanDrop .dojoDndAvatarHeader { + background-color: #97e68d; + background-position: 2px -33px; +} +.claro.dojoDndCopy .dojoDndAvatarCanDrop .dojoDndAvatarHeader { + background-color: #97e68d; + background-position: 2px 2px; +} +.dijitRtl .dijitOffScreen { + + left: auto !important; + right: -10000px !important; +} +.dijitRtl .dijitPlaceHolder { + left: auto; + right: 0; +} +.dijitMenuItemRtl { + text-align: right; +} +.dj_iequirks .dijitComboButtonRtl button { + + float:left; +} +.dj_ie .dijitTextBoxRtl .dijitInputContainer { + clear: right; +} +.dijitTextBoxRtl .dijitValidationContainer, +.dijitTextBoxRtl .dijitSpinnerButtonContainer, +.dijitComboBoxRtl .dijitArrowButtonContainer { + + border-right-width: 1px !important; + border-left-width: 0 !important; +} +.dijitSpinnerRtl .dijitSpinnerButtonContainer .dijitArrowButton { + right: 0; + left: auto; +} +.dijitSelectRtl .dijitButtonText { + float: right; +} +.dijitTextBoxRtl .dijitSpinnerButtonContainer, +.dijitValidationTextBoxRtl .dijitValidationContainer, +.dijitTextBoxRtl .dijitArrowButtonContainer { + float: left; +} +div.dijitNumberTextBoxRtl { + text-align: right; +} +.dijitCalendarRtl .dijitCalendarNextYear { + margin:0 0.55em 0 0; +} +.dijitCalendarRtl .dijitCalendarPreviousYear { + margin:0 0 0 0.55em; +} +.dijitSliderRtl .dijitSliderImageHandleV { + left:auto; +} +.dijitSliderRtl .dijitSliderImageHandleH { + left:-50%; +} +.dijitSliderRtl .dijitSliderMoveableH { + right:auto; + left:0; +} +.dijitSliderRtl .dijitRuleContainerV { + float:right; +} +.dj_ie .dijitSliderRtl .dijitRuleContainerV { + text-align:right; +} +.dj_ie .dijitSliderRtl .dijitRuleLabelV { + text-align:left; +} +.dj_ie .dijitSliderRtl .dijitRuleLabelH { + zoom:1; +} +.dijitSliderRtl .dijitSliderProgressBarH { + + float:right; + right:0; + left:auto; +} +.dijitRtl .dijitContentPaneLoading .dijitIconLoading, +.dijitRtl .dijitContentPaneError .dijitIconError { + margin-right: 0; + margin-left: 9px; +} +.dijitTabControllerRtl .nowrapTabStrip { + text-align: right; +} +.dijitTabRtl .dijitTabCloseButton { + margin-left: 0; + margin-right: 1em; +} +.dj_ie6 .dijitTabRtl .tabLabel, +.dj_ie6 .dijitTabContainerRight-tabs .dijitTabRtl, +.dj_ie6 .dijitTabContainerLeft-tabs .dijitTabRtl, +.dj_ie7 .dijitTabContainerRight-tabs .dijitTabRtl, +.dj_ie7 .dijitTabContainerLeft-tabs .dijitTabRtl { + zoom: 1; +} +.dj_ie6 .dijitTabContainerRight-tabs .dijitTabRtl, +.dj_ie7 .dijitTabContainerRight-tabs .dijitTabRtl { + left: 0; +} +.dj_ie6 .dijitTabContainerRightRtl .dijitTabContainerRight-tabs, +.dj_ie6 .dijitTabContainerLeftRtl .dijitTabContainerLeft-tabs { + + width: 1%; +} +.dj_ie .dijitTimePickerRtl .dijitTimePickerItem { + width:100%; +} +.dijitColorPaletteRtl .dijitColorPaletteUnder { + + left: auto; + right: 0; +} +.dijitSelectRtl .dijitButtonContents { + border-style: none none none solid; + text-align: right; +} +.dijitTreeRtl .dijitTreeContainer { + float: right; +} +.dijitRtl .dojoDndHorizontal .dojoDndItemBefore { + border-width: 0 2px 0 0; + padding: 2px 0 2px 2px; +} +.dijitRtl .dojoDndHorizontal .dojoDndItemAfter { + border-width: 0 0 0 2px; + padding: 2px 2px 2px 0; +} +.claro .dijitTextBoxRtlError .dijitValidationContainer { + border-left-width: 0; + border-right-width: 1px; +} +.claro .dijitComboButtonRtl .dijitStretch { + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} +.claro .dijitComboButtonRtl .dijitArrowButton { + -moz-border-radius: 4px 0 0 4px; + border-radius: 4px 0 0 4px; + padding: 3px 0 4px; + border-left-width: 1px; + border-right-width: 0; +} +.claro .dijitTabContainerTop-tabs .dijitTabRtl, +.claro .dijitTabContainerBottom-tabs .dijitTabRtl { + margin-right: 0; + margin-left: 1px; +} +.claro .dijitSliderRtl .dijitSliderProgressBarH, +.claro .dijitSliderRtl .dijitSliderRemainingBarH, +.claro .dijitSliderRtl .dijitSliderLeftBumper, +.claro .dijitSliderRtl .dijitSliderRightBumper, +.claro .dijitSliderRtl .dijitSliderTopBumper { + background-position: top right; +} +.claro .dijitSliderRtl .dijitSliderProgressBarV, +.claro .dijitSliderRtl .dijitSliderRemainingBarV, +.claro .dijitSliderRtl .dijitSliderBottomBumper { + background-position: bottom right; +} +.claro .dijitSliderRtl .dijitSliderLeftBumper { + border-left-width: 0; + border-right-width: 1px; +} +.claro .dijitSliderRtl .dijitSliderRightBumper { + border-left-width: 1px; + border-right-width: 0; +} +.claro .dijitSliderRtl .dijitSliderIncrementIconH { + background-position: -357px 50%; +} +.claro .dijitSliderRtl .dijitSliderDecrementIconH { + background-position: -251px 50%; +} +.claro .dijitDialogRtl .dijitDialogCloseIcon { + right: auto; + left: 5px; +} +.claro .dijitDialogRtl .dijitDialogPaneActionBar { + text-align: left; + padding: 3px 7px 2px 5px; +} +.claro .dijitEditorRtl .dijitEditorIFrameContainer { + padding: 3px 10px 1px 3px; +} +.dj_ie6 .claro .dijitEditorRtl .dijitEditorIFrameContainer, +.dj_ie7 .claro .dijitEditorRtl .dijitEditorIFrameContainer, +.dj_ie8 .claro .dijitEditorRtl .dijitEditorIFrameContainer { + padding: 3px 0px 1px 10px; + margin-right: 0px; + border: 0px solid #d3d3d3; +} +.dijitEditorRtl .dijitEditorIcon { + background-image: url("../../../../../dijit/icons/images/editorIconsEnabled_rtl.png"); +} +.dijitEditorRtlDisabled .dijitEditorIcon { + background-image: url("../../../../../dijit/icons/images/editorIconsDisabled_rtl.png"); +} +.dijitToolbarRtl .dijitToolbarSeparator { + background-image: url("../../../../../dijit/icons/images/editorIconsEnabled_rtl.png"); +} +.dijitRtl .dijitIconSave, +.dijitRtl .dijitIconPrint, +.dijitRtl .dijitIconCut, +.dijitRtl .dijitIconCopy, +.dijitRtl .dijitIconClear, +.dijitRtl .dijitIconDelete, +.dijitRtl .dijitIconUndo, +.dijitRtl .dijitIconEdit, +.dijitRtl .dijitIconNewTask, +.dijitRtl .dijitIconEditTask, +.dijitRtl .dijitIconEditProperty, +.dijitRtl .dijitIconTask, +.dijitRtl .dijitIconFilter, +.dijitRtl .dijitIconConfigure, +.dijitRtl .dijitIconSearch, +.dijitRtl .dijitIconApplication, +.dijitRtl .dijitIconBookmark, +.dijitRtl .dijitIconChart, +.dijitRtl .dijitIconConnector, +.dijitRtl .dijitIconDatabase, +.dijitRtl .dijitIconDocuments, +.dijitRtl .dijitIconMail, +.dijitRtl .dijitLeaf, +.dijitRtl .dijitIconFile, +.dijitRtl .dijitIconFunction, +.dijitRtl .dijitIconKey, +.dijitRtl .dijitIconPackage, +.dijitRtl .dijitIconSample, +.dijitRtl .dijitIconTable, +.dijitRtl .dijitIconUsers, +.dijitRtl .dijitFolderClosed, +.dijitRtl .dijitIconFolderClosed, +.dijitRtl .dijitFolderOpened, +.dijitRtl .dijitIconFolderOpen, +.dijitRtl .dijitIconError { + background-image: url("../../../../../dijit/icons/images/commonIconsObjActEnabled_rtl.png"); + width: 16px; + height: 16px; +} +.dj_ie6 .dijitRtl .dijitIconSave, +.dj_ie6 .dijitRtl .dijitIconPrint, +.dj_ie6 .dijitRtl .dijitIconCut, +.dj_ie6 .dijitRtl .dijitIconCopy, +.dj_ie6 .dijitRtl .dijitIconClear, +.dj_ie6 .dijitRtl .dijitIconDelete, +.dj_ie6 .dijitRtl .dijitIconUndo, +.dj_ie6 .dijitRtl .dijitIconEdit, +.dj_ie6 .dijitRtl .dijitIconNewTask, +.dj_ie6 .dijitRtl .dijitIconEditTask, +.dj_ie6 .dijitRtl .dijitIconEditProperty, +.dj_ie6 .dijitRtl .dijitIconTask, +.dj_ie6 .dijitRtl .dijitIconFilter, +.dj_ie6 .dijitRtl .dijitIconConfigure, +.dj_ie6 .dijitRtl .dijitIconSearch, +.dj_ie6 .dijitRtl .dijitIconApplication, +.dj_ie6 .dijitRtl .dijitIconBookmark, +.dj_ie6 .dijitRtl .dijitIconChart, +.dj_ie6 .dijitRtl .dijitIconConnector, +.dj_ie6 .dijitRtl .dijitIconDatabase, +.dj_ie6 .dijitRtl .dijitIconDocuments, +.dj_ie6 .dijitRtl .dijitIconMail, +.dj_ie6 .dijitRtl .dijitLeaf, +.dj_ie6 .dijitRtl .dijitIconFile, +.dj_ie6 .dijitRtl .dijitIconFunction, +.dj_ie6 .dijitRtl .dijitIconKey, +.dj_ie6 .dijitRtl .dijitIconPackage, +.dj_ie6 .dijitRtl .dijitIconSample, +.dj_ie6 .dijitRtl .dijitIconTable, +.dj_ie6 .dijitRtl .dijitIconUsers, +.dj_ie6 .dijitRtl .dijitFolderClosed, +.dj_ie6 .dijitRtl .dijitIconFolderClosed, +.dj_ie6 .dijitRtl .dijitFolderOpened, +.dj_ie6 .dijitRtl .dijitIconFolderOpen, +.dj_ie6 .dijitRtl .dijitIconError { + background-image: url("../../../../../dijit/icons/images/commonIconsObjActEnabled8bit_rtl.png"); +} +.dijitRtl .dijitDisabled .dijitIconSave, +.dijitRtl .dijitDisabled .dijitIconPrint, +.dijitRtl .dijitDisabled .dijitIconCut, +.dijitRtl .dijitDisabled .dijitIconCopy, +.dijitRtl .dijitDisabled .dijitIconClear, +.dijitRtl .dijitDisabled .dijitIconDelete, +.dijitRtl .dijitDisabled .dijitIconUndo, +.dijitRtl .dijitDisabled .dijitIconEdit, +.dijitRtl .dijitDisabled .dijitIconNewTask, +.dijitRtl .dijitDisabled .dijitIconEditTask, +.dijitRtl .dijitDisabled .dijitIconEditProperty, +.dijitRtl .dijitDisabled .dijitIconTask, +.dijitRtl .dijitDisabled .dijitIconFilter, +.dijitRtl .dijitDisabled .dijitIconConfigure, +.dijitRtl .dijitDisabled .dijitIconSearch, +.dijitRtl .dijitDisabled .dijitIconApplication, +.dijitRtl .dijitDisabled .dijitIconBookmark, +.dijitRtl .dijitDisabled .dijitIconChart, +.dijitRtl .dijitDisabled .dijitIconConnector, +.dijitRtl .dijitDisabled .dijitIconDatabase, +.dijitRtl .dijitDisabled .dijitIconDocuments, +.dijitRtl .dijitDisabled .dijitIconMail, +.dijitRtl .dijitDisabled .dijitLeaf, +.dijitRtl .dijitDisabled .dijitIconFile, +.dijitRtl .dijitDisabled .dijitIconFunction, +.dijitRtl .dijitDisabled .dijitIconKey, +.dijitRtl .dijitDisabled .dijitIconPackage, +.dijitRtl .dijitDisabled .dijitIconSample, +.dijitRtl .dijitDisabled .dijitIconTable, +.dijitRtl .dijitDisabled .dijitIconUsers, +.dijitRtl .dijitDisabled .dijitFolderClosed, +.dijitRtl .dijitDisabled .dijitIconFolderClosed, +.dijitRtl .dijitDisabled .dijitFolderOpened, +.dijitRtl .dijitDisabled .dijitIconFolderOpen, +.dijitRtl .dijitDisabled .dijitIconError { + background-image: url("../../../../../dijit/icons/images/commonIconsObjActDisabled_rtl.png"); +} +.claro .dijitTitlePaneRtl .dijitClosed .dijitArrowNode, +.claro .dijitFieldsetRtl .dijitFieldsetTitleClosed .dijitArrowNode { + background-position: -7px 0; +} +.claro .dijitMenuItemRtl .dijitMenuExpand { + background-position: -7px 0; + margin-right: 0; + margin-left: 3px; +} +.claro .dijitMenuItemRtl .dijitMenuItemIcon { + margin: 0 4px 0 0; +} +.claro .dijitCalendarRtl .dijitCalendarIncrease { + background-position: 0 0; +} +.claro .dijitCalendarRtl .dijitCalendarDecrease { + background-position: -18px 0; +} +.claro .dijitCalendarRtl .dijitCalendarArrowHover .dijitCalendarIncrease { + background-position: -36px 0; +} +.claro .dijitCalendarRtl .dijitCalendarArrowHover .dijitCalendarDecrease { + background-position: -55px 0; +} +.claro .dijitCalendarRtl .dijitCalendarArrowActive .dijitCalendarIncrease { + background-position: -72px 0; +} +.claro .dijitCalendarRtl .dijitCalendarArrowActive .dijitCalendarDecrease { + background-position: -91px 0; +} +.claro .dijitToolbar .dijitComboButtonRtl .dijitButtonNode { + border-width: 0; + padding: 2px; +} +.claro .dijitToolbar .dijitComboButtonRtlHover .dijitButtonNode, +.claro .dijitToolbar .dijitComboButtonRtlActive .dijitButtonNode { + border-width: 1px; + padding: 1px; +} +.claro .dijitToolbar .dijitComboButtonRtl .dijitStretch { + + -moz-border-radius: 0 2px 2px 0; + border-radius: 0 2px 2px 0; +} +.claro .dijitToolbar .dijitComboButtonRtl .dijitArrowButton { + + -moz-border-radius: 2px 0 0 2px; + border-radius: 2px 0 0 2px; +} +.claro .dijitToolbar .dijitComboButtonRtlHover .dijitArrowButton, +.claro .dijitToolbar .dijitComboButtonRtlActive .dijitArrowButton { + + border-left-width: 1px; + border-right-width: 0; + padding-left: 1px; + padding-right: 2px; +} +.claro .dijitProgressBarRtl .dijitProgressBarFull { + border-left-width: 1px; + border-right-width: 0px; +} +.claro .dijitProgressBarIndeterminateRtl .dijitProgressBarTile { + -moz-transform: scaleX(-1); + -o-transform: scaleX(-1); + -webkit-transform: scaleX(-1); + transform: scaleX(-1); + filter: FlipH; + -ms-filter: "FlipH"; +} +.dijitColorPalette { + border: 0 solid #b5bcc7; + background: none; +} +.dijitColorPalette .dijitColorPaletteSwatch { + width: 25px; + height: 25px; + border-radius: 4px; + -moz-border-radius: 4px; +} +.dijitColorPalette .dijitPaletteImg { + border: 1px solid lightGrey; + border-radius: 4px; + -moz-border-radius: 4px; +} +.dojoxColorPicker { + padding:8px; + -moz-border-radius:4pt; + -webkit-border-radius:5pt; + -webkit-drop-shadow:3pt; +} +.dojoxColorPickerRightPad { + padding-right: 8px; +} +.tundra .dojoxColorPicker { + background:#ededed; + border:1px solid #ccc; +} +.dojoxColorPickerBox { + position:relative; + width:150px; + height:150px; + margin:0; + padding:0; +} +.dojoxColorPickerUnderlay { + position:relative; + top:0; left:0; + width:150px; + height:150px; + z-index:1; +} +.tundra .dojoxColorPickerUnderlay { + border:1px solid #a0a0a0; +} +.claro .dojoxColorPicker { + background:#ededed; + border:1px solid #cdcdcd; +} +.claro .dojoxColorPickerUnderlay { + border:1px solid #cccccc; +} +.dojoxHuePickerUnderlay { + position:relative; + top:0; left:0; + height:150px; + width:20px; + z-index:1; + text-align: center; +} +.dojoxHuePicker { position:relative; top: 0px; left: 0px; padding: 0px;} +.dojoxHuePickerPoint { + position:absolute; + top:0; left:0; + width:20px; + height:8px; + z-index:3; + cursor:move; +} +.dojoxColorPickerPoint { + position:absolute; + width:10px; + height:10px; + border:0; + z-index:3; + cursor:move; +} +.dojoxColorPickerPreview { + display:block; + width:45px; + height:45px; + border:1px solid #333; + background-color:#fff; + position:relative; + top: 0px; + left: 0px; +} +.dojoxColorPickerWebSafePreview { + display:block; + width:25px; + height:25px; + position:relative; + top: 0px; + left: 0px; + border:1px solid #333; +} +.dojoxColorPickerOptional { + position:relative; + top: 0px; + left: 0px; + height: 100%; +} +.dojoxColorPickerOptional table { + border-spacing: 4px; +} +.dojoxColorPickerPreviewContainer table { + border-spacing: 6px 0px; +} +.dojoxColorPickerOptional input { + border:1px solid #a7a7a7; + width:25px; + padding:1px 3px 1px 3px; + line-height:1.1em; +} +.dojoxColorPickerHex input { + width:55px; +} +.dojoxColorPicker { + padding: 8px; + -moz-border-radius: 4pt; + border-radius: 5pt; + -webkit-drop-shadow: 3pt; + background: gray; +} +.dijitColorPalette { + border: 0 solid #b5bcc7; + background: none; +} +.dijitColorPalette .dijitColorPaletteSwatch { + width: 25px; + height: 25px; + border-radius: 4px; + -moz-border-radius: 4px; +} +.dijitColorPalette .dijitPaletteImg { + border: 1px solid lightGrey; + border-radius: 4px; + -moz-border-radius: 4px; +} +.dojoxColorPicker { + padding:8px; + -moz-border-radius:4pt; + -webkit-border-radius:5pt; + -webkit-drop-shadow:3pt; +} +.dojoxColorPickerRightPad { + padding-right: 8px; +} +.tundra .dojoxColorPicker { + background:#ededed; + border:1px solid #ccc; +} +.dojoxColorPickerBox { + position:relative; + width:150px; + height:150px; + margin:0; + padding:0; +} +.dojoxColorPickerUnderlay { + position:relative; + top:0; left:0; + width:150px; + height:150px; + z-index:1; +} +.tundra .dojoxColorPickerUnderlay { + border:1px solid #a0a0a0; +} +.claro .dojoxColorPicker { + background:#ededed; + border:1px solid #cdcdcd; +} +.claro .dojoxColorPickerUnderlay { + border:1px solid #cccccc; +} +.dojoxHuePickerUnderlay { + position:relative; + top:0; left:0; + height:150px; + width:20px; + z-index:1; + text-align: center; +} +.dojoxHuePicker { position:relative; top: 0px; left: 0px; padding: 0px;} +.dojoxHuePickerPoint { + position:absolute; + top:0; left:0; + width:20px; + height:8px; + z-index:3; + cursor:move; +} +.dojoxColorPickerPoint { + position:absolute; + width:10px; + height:10px; + border:0; + z-index:3; + cursor:move; +} +.dojoxColorPickerPreview { + display:block; + width:45px; + height:45px; + border:1px solid #333; + background-color:#fff; + position:relative; + top: 0px; + left: 0px; +} +.dojoxColorPickerWebSafePreview { + display:block; + width:25px; + height:25px; + position:relative; + top: 0px; + left: 0px; + border:1px solid #333; +} +.dojoxColorPickerOptional { + position:relative; + top: 0px; + left: 0px; + height: 100%; +} +.dojoxColorPickerOptional table { + border-spacing: 4px; +} +.dojoxColorPickerPreviewContainer table { + border-spacing: 6px 0px; +} +.dojoxColorPickerOptional input { + border:1px solid #a7a7a7; + width:25px; + padding:1px 3px 1px 3px; + line-height:1.1em; +} +.dojoxColorPickerHex input { + width:55px; +} +.dojoxColorPicker { + padding: 8px; + -moz-border-radius: 4pt; + border-radius: 5pt; + -webkit-drop-shadow: 3pt; + background: gray; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons-compat.css new file mode 100644 index 00000000..1954059c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons-compat.css @@ -0,0 +1,291 @@ + +.mblDomButtonWhitePlus { + background-image: url("domButtons/compat/mblDomButtonWhitePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhitePlus div { + display: none; +} +.mblDomButtonWhiteMinus { + background-image: url("domButtons/compat/mblDomButtonWhiteMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteMinus div { + display: none; +} +.mblDomButtonWhiteUpArrow { + background-image: url("domButtons/compat/mblDomButtonWhiteUpArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteUpArrow div { + display: none; +} +.mblDomButtonWhiteDownArrow { + background-image: url("domButtons/compat/mblDomButtonWhiteDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteDownArrow div { + display: none; +} +.mblDomButtonWhiteSearch { + background-image: url("domButtons/compat/mblDomButtonWhiteSearch.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteSearch div { + display: none; +} +.mblDomButtonBlueMinus { + background-image: url("domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonCheckboxOn { + background-image: url("domButtons/compat/mblDomButtonCheckboxOn.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOn div { + display: none; +} +.mblDomButtonCheckboxOff { + background-image: url("domButtons/compat/mblDomButtonCheckboxOff.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOff div { + display: none; +} +.mblDomButtonBlueCircleMinus { + background-image: url("domButtons/compat/mblDomButtonBlueCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleMinus > div { + display: none; +} +.mblDomButtonBlueCirclePlus { + background-image: url("domButtons/compat/mblDomButtonBlueCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCirclePlus > div { + display: none; +} +.mblDomButtonBlueCircleArrow { + background-image: url("domButtons/compat/mblDomButtonBlueCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleArrow > div { + display: none; +} +.mblDomButtonRedCircleMinus { + background-image: url("domButtons/compat/mblDomButtonRedCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleMinus > div { + display: none; +} +.mblDomButtonRedCirclePlus { + background-image: url("domButtons/compat/mblDomButtonRedCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCirclePlus > div { + display: none; +} +.mblDomButtonRedCircleArrow { + background-image: url("domButtons/compat/mblDomButtonRedCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleArrow > div { + display: none; +} +.mblDomButtonGreenCircleMinus { + background-image: url("domButtons/compat/mblDomButtonGreenCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleMinus > div { + display: none; +} +.mblDomButtonGreenCirclePlus { + background-image: url("domButtons/compat/mblDomButtonGreenCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCirclePlus > div { + display: none; +} +.mblDomButtonGreenCircleArrow { + background-image: url("domButtons/compat/mblDomButtonGreenCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleArrow > div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblDomButtonGrayRoundRect > div { + -moz-border-radius: 4px; +} +.mblDomButtonSilverCircleDownArrow { + background-image: url("domButtons/compat/mblDomButtonSilverCircleDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleDownArrow > div { + display: none; +} +.mblDomButtonSilverCircleGreenButton { + background-image: url("domButtons/compat/mblDomButtonSilverCircleGreenButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenButton > div { + display: none; +} +.mblDomButtonSilverCircleGrayButton { + background-image: url("domButtons/compat/mblDomButtonSilverCircleGrayButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGrayButton > div { + display: none; +} +.mblDomButtonSilverCircleOrangeButton { + background-image: url("domButtons/compat/mblDomButtonSilverCircleOrangeButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleOrangeButton > div { + display: none; +} +.mblDomButtonSilverCircleGreenPlus { + background-image: url("domButtons/compat/mblDomButtonSilverCircleGreenPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenPlus > div { + display: none; +} +.mblDomButtonSilverCircleRedCross { + background-image: url("domButtons/compat/mblDomButtonSilverCircleRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleRedCross > div { + display: none; +} +.mblDomButtonBlueBall { + background-image: url("domButtons/compat/mblDomButtonBlueBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueBall > div { + display: none; +} +.mblDomButtonGreenBall { + background-image: url("domButtons/compat/mblDomButtonGreenBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenBall > div { + display: none; +} +.mblDomButtonOrangeBall { + background-image: url("domButtons/compat/mblDomButtonOrangeBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonOrangeBall > div { + display: none; +} +.mblDomButtonRedBall { + background-image: url("domButtons/compat/mblDomButtonRedBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedBall > div { + display: none; +} +.mblDomButtonYellowStar { + background-image: url("domButtons/compat/mblDomButtonYellowStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonYellowStar > div { + display: none; +} +.mblDomButtonGrayStar { + background-image: url("domButtons/compat/mblDomButtonGrayStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayStar > div { + display: none; +} +.mblDomButtonGrayCross, .mblDomButtonCross { + background-image: url("domButtons/compat/mblDomButtonGrayCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonRedCross, .mblDomButtonCross { + background-image: url("domButtons/compat/mblDomButtonRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonGrayKnob { + background-image: url("domButtons/compat/mblDomButtonGrayKnob.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayKnob > div { + display: none; +} +.mblDomButtonGrayPlus { + background-image: url("domButtons/compat/mblDomButtonGrayPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayPlus div { + display: none; +} +.mblDomButtonGrayMinus { + background-image: url("domButtons/compat/mblDomButtonGrayMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayMinus div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons.css new file mode 100644 index 00000000..81b55c7a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons.css @@ -0,0 +1,1327 @@ + +.mblDomButtonWhitePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhitePlus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhitePlus > div > div { + + position: absolute; + top: -6px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteMinus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteUpArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteUpArrow div { + position: absolute; + left: 0px; + clip: rect(0px 30px 20px 0px); +} +.mblDomButtonWhiteUpArrow > div > div { + top: 9px; + left: 4px; + width: 20px; + height: 20px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteDownArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteDownArrow div { + position: absolute; + left: 0px; + clip: rect(7px 50px 40px 0px); +} +.mblDomButtonWhiteDownArrow > div > div { + top: -10px; + left: 2px; + width: 25px; + height: 25px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteSearch { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteSearch > div { + position: absolute; + top: 5px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + border: 2px solid white; + border-radius: 6px; +} +.mblDomButtonWhiteSearch > div > div { + position: absolute; + top: 10px; + left: 7px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border: none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 0px; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonCheckboxOn { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOn > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOn > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: none; + border-bottom: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonCheckboxOff { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOff > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOff > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: none; + border-top: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonBlueCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlueCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonBlueCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonRedCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonGreenCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblDomButtonGrayRoundRect { + position: relative; + width: 29px; + height: 29px; + text-align: right; +} +.mblDomButtonGrayRoundRect > div { + position: absolute; + right: 0px; + display: inline; + padding: 0px 5px; + top: 7px; + color: white; + font-family: Helvetica; + font-size: 12px; + border-radius: 4px; + background-color: #949ba5; + text-align: center; +} +.mblDomButtonGrayRoundRect > div > div { + display: none; +} +.mblDomButtonSilverCircleDownArrow { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleDownArrow > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div { + position: relative; + top: 3px; + left: 3px; + width: 20px; + height: 20px; + border-radius: 10px; + background: -webkit-gradient(linear, left top, left bottom, from(#979797), to(#616161)); + background: linear-gradient(to bottom, #979797 0%, #616161 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div > div { + position: absolute; + left: 0px; + clip: rect(6px 50px 40px 0px); +} +.mblDomButtonSilverCircleDownArrow > div > div > div > div { + position: absolute; + top: -5px; + left: 1px; + width: 18px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #d1d1d1; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.7) rotate(45deg); + transform: scaleX(0.7) rotate(45deg); +} +.mblDomButtonSilverCircleGreenButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #1b991c; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#17df25), to(#1ba51c)); + background: radial-gradient(6px at center, #17df25 0%, #1ba51c 100%); +} +.mblDomButtonSilverCircleGrayButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGrayButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGrayButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #aeaeae; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#d4d4d4), to(#bababa)); + background: linear-gradient(to bottom, #d4d4d4 0%, #bababa 100%); +} +.mblDomButtonSilverCircleOrangeButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleOrangeButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleOrangeButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #ca701a; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#ff7a07), to(#e66b03)); + background: radial-gradient(6px at center, #ff7a07 0%, #e66b03 100%); +} +.mblDomButtonSilverCircleGreenPlus { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenPlus > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenPlus > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleGreenPlus > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleRedCross { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleRedCross > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleRedCross > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonSilverCircleRedCross > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; +} +.mblDomButtonBlueBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonBlueBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#84aff4), to(#2758b3)); + background: linear-gradient(to bottom, #84aff4 0%, #2758b3 100%); +} +.mblDomButtonGreenBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonGreenBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#59e738), to(#0aa908)); + background: linear-gradient(to bottom, #59e738 0%, #0aa908 100%); +} +.mblDomButtonOrangeBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonOrangeBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#f9e20a), to(#ff6b0a)); + background: linear-gradient(to bottom, #f9e20a 0%, #ff6b0a 100%); +} +.mblDomButtonRedBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonRedBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#ec9b9d), to(#d73c3f)); + background: linear-gradient(to bottom, #ec9b9d 0%, #d73c3f 100%); +} +.mblDomButtonTransparent19 { + position: relative; + width: 19px; + height: 19px; +} +.mblDomButtonTransparent29 { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonTransparent30 { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonYellowStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonYellowStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonYellowStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #cd853f; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonYellowStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonYellowStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonGrayStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #8c8e8c; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonGrayStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonGrayStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonGrayCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + border-radius: 2px; +} +.mblDomButtonRedCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonRedCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + border-radius: 2px; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblDomButtonGrayKnob { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayKnob > div { + + position: absolute; + top: 6px; + left: 2px; + width: 23px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross-compat.css new file mode 100644 index 00000000..7a3c011d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonBlackCircleCross { + background-image: url(compat/mblDomButtonBlackCircleCross.png); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross.css new file mode 100644 index 00000000..6050f100 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross.css @@ -0,0 +1,51 @@ + +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross.less new file mode 100644 index 00000000..7cbb2e40 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackCircleCross.less @@ -0,0 +1,50 @@ +@import "../css3.less"; +/* === Black Circle Cross Button ==*/ +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + .transform(rotate(45deg)); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16-compat.css new file mode 100644 index 00000000..b5763ae0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonBlackDownArrow16 { + background-image: url(compat/mblDomButtonBlackDownArrow16.png); + background-repeat: no-repeat; +} +.mblDomButtonBlackDownArrow16 > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16.css new file mode 100644 index 00000000..72fdbab4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16.css @@ -0,0 +1,23 @@ + +.mblDomButtonBlackDownArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonBlackDownArrow16 > div { + position: absolute; + left: 0px; + clip: rect(4px 16px 16px 0px); +} +.mblDomButtonBlackDownArrow16 > div > div { + position: absolute; + top: 0px; + left: 3px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: black; + -webkit-transform: scaleX(0.5) rotate(45deg); + transform: scaleX(0.5) rotate(45deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16.less new file mode 100644 index 00000000..8f5d80e6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackDownArrow16.less @@ -0,0 +1,23 @@ +@import "../css3.less"; +/* === BlackDownArrow16 ==*/ +.mblDomButtonBlackDownArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonBlackDownArrow16 > div { + position: absolute; + left: 0px; + clip: rect(4px 16px 16px 0px); +} +.mblDomButtonBlackDownArrow16 > div > div { + position: absolute; + top: 0px; + left: 3px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: black; + .transform(scaleX(0.5) rotate(45deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16-compat.css new file mode 100644 index 00000000..b0dad509 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonBlackLeftArrow16 { + background-image: url(compat/mblDomButtonBlackLeftArrow16.png); + background-repeat: no-repeat; +} +.mblDomButtonBlackLeftArrow16 > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16.css new file mode 100644 index 00000000..630dc7e8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16.css @@ -0,0 +1,23 @@ + +.mblDomButtonBlackLeftArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonBlackLeftArrow16 > div { + position: absolute; + left: 0px; + clip: rect(0px 12px 16px 4px); +} +.mblDomButtonBlackLeftArrow16 > div > div { + position: absolute; + top: 3px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: black; + -webkit-transform: scaleY(0.5) rotate(45deg); + transform: scaleY(0.5) rotate(45deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16.less new file mode 100644 index 00000000..3d787509 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackLeftArrow16.less @@ -0,0 +1,23 @@ +@import "../css3.less"; +/* === BlackLeftArrow16 ==*/ +.mblDomButtonBlackLeftArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonBlackLeftArrow16 > div { + position: absolute; + left: 0px; + clip: rect(0px 12px 16px 4px); +} +.mblDomButtonBlackLeftArrow16 > div > div { + position: absolute; + top: 3px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: black; + .transform(scaleY(0.5) rotate(45deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16-compat.css new file mode 100644 index 00000000..509d2cb1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonBlackRightArrow16 { + background-image: url(compat/mblDomButtonBlackRightArrow16.png); + background-repeat: no-repeat; +} +.mblDomButtonBlackRightArrow16 > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16.css new file mode 100644 index 00000000..71c562c3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16.css @@ -0,0 +1,23 @@ + +.mblDomButtonBlackRightArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonBlackRightArrow16 > div { + position: absolute; + left: 0px; + clip: rect(0px 16px 16px 4px); +} +.mblDomButtonBlackRightArrow16 > div > div { + position: absolute; + top: 3px; + left: 0px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: black; + -webkit-transform: scaleY(0.5) rotate(45deg); + transform: scaleY(0.5) rotate(45deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16.less new file mode 100644 index 00000000..be0db8a4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackRightArrow16.less @@ -0,0 +1,23 @@ +@import "../css3.less"; +/* === BlackRightArrow16 ==*/ +.mblDomButtonBlackRightArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonBlackRightArrow16 > div { + position: absolute; + left: 0px; + clip: rect(0px 16px 16px 4px); +} +.mblDomButtonBlackRightArrow16 > div > div { + position: absolute; + top: 3px; + left: 0px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: black; + .transform(scaleY(0.5) rotate(45deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16-compat.css new file mode 100644 index 00000000..22022487 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonBlackUpArrow16 { + background-image: url(compat/mblDomButtonBlackUpArrow16.png); + background-repeat: no-repeat; +} +.mblDomButtonBlackUpArrow16 > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16.css new file mode 100644 index 00000000..d911881f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16.css @@ -0,0 +1,23 @@ + +.mblDomButtonBlackUpArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonBlackUpArrow16 > div { + position: absolute; + left: 0px; + clip: rect(0px 16px 12px 0px); +} +.mblDomButtonBlackUpArrow16 > div > div { + position: absolute; + top: 6px; + left: 3px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: black; + -webkit-transform: scaleX(0.5) rotate(45deg); + transform: scaleX(0.5) rotate(45deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16.less new file mode 100644 index 00000000..d37b5038 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlackUpArrow16.less @@ -0,0 +1,23 @@ +@import "../css3.less"; +/* === BlackUpArrow16 ==*/ +.mblDomButtonBlackUpArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonBlackUpArrow16 > div { + position: absolute; + left: 0px; + clip: rect(0px 16px 12px 0px); +} +.mblDomButtonBlackUpArrow16 > div > div { + position: absolute; + top: 6px; + left: 3px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: black; + .transform(scaleX(0.5) rotate(45deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge-compat.css new file mode 100644 index 00000000..ff02e878 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge-compat.css @@ -0,0 +1,6 @@ + +.mblDomButtonBlueBadge > div { + -moz-border-radius: 12px; + background-color: #4282de; + background-image: -moz-linear-gradient(top, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge.css new file mode 100644 index 00000000..4f5fa78c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge.css @@ -0,0 +1,29 @@ + +.mblDomButtonBlueBadge { + position: relative; + width: 29px; + height: 29px; + text-align: right; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; +} +.mblDomButtonBlueBadge > div { + position: absolute; + display: inline; + padding: 0px 5px; + top: 2px; + right: 2px; + color: white; + border: 2px solid white; + border-radius: 12px; + text-align: center; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); + background-clip: padding-box; + -webkit-box-shadow: 2px 3px 2px rgba(0, 0, 0, 0.5); + box-shadow: 2px 3px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueBadge > div > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge.less new file mode 100644 index 00000000..6bc6cfe7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBadge.less @@ -0,0 +1,28 @@ +@import "../css3.less"; +/* === Blue Badge ==*/ +.mblDomButtonBlueBadge { + position: relative; + width: 29px; + height: 29px; + text-align: right; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; +} +.mblDomButtonBlueBadge > div { + position: absolute; + display: inline; + padding: 0px 5px; + top: 2px; + right: 2px; + color: white; + border: 2px solid white; + border-radius: 12px; + text-align: center; + .background-linear-gradient-top-bottom-2-stops(#6ba2e7, #216dd6, 0.5, #4282de, 0.5, #216dd6); + background-clip: padding-box; + .box-shadow(2px 3px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonBlueBadge > div > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBall-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBall-compat.css new file mode 100644 index 00000000..070e2aef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBall-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonBlueBall { + background-image: url(compat/mblDomButtonBlueBall.png); + background-repeat: no-repeat; +} +.mblDomButtonBlueBall > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBall.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBall.css new file mode 100644 index 00000000..151a8b3c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBall.css @@ -0,0 +1,16 @@ + +.mblDomButtonBlueBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonBlueBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#84aff4), to(#2758b3)); + background: linear-gradient(to bottom, #84aff4 0%, #2758b3 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBall.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBall.less new file mode 100644 index 00000000..a58ae861 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueBall.less @@ -0,0 +1,16 @@ +@import "../css3.less"; +/* === Blue Ball Button ==*/ +.mblDomButtonBlueBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonBlueBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + .background-linear-gradient-top-bottom(#84aff4, #2758b3); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow-compat.css new file mode 100644 index 00000000..5a2667ef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonBlueCircleArrow { + background-image: url(compat/mblDomButtonBlueCircleArrow.png); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleArrow > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow.css new file mode 100644 index 00000000..5d5769ef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow.css @@ -0,0 +1,50 @@ + +.mblDomButtonBlueCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonBlueCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow.less new file mode 100644 index 00000000..42433fbf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleArrow.less @@ -0,0 +1,49 @@ +@import "../css3.less"; +/* === Blue Circle Arrow Buttons ==*/ +.mblDomButtonBlueCircleArrow { + position: relative; + width: 29px; + height: 29px; +} + +.mblDomButtonBlueCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonBlueCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + .background-linear-gradient-top-bottom-2-stops(#6ba2e7, #216dd6, 0.5, #4282de, 0.5, #216dd6); +} +.mblDomButtonBlueCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + .transform(rotate(45deg)); +} +.mblDomButtonBlueCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus-compat.css new file mode 100644 index 00000000..6c23adcf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonBlueCircleMinus { + background-image: url(compat/mblDomButtonBlueCircleMinus.png); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleMinus > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus.css new file mode 100644 index 00000000..15ae6cb1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus.css @@ -0,0 +1,38 @@ + +.mblDomButtonBlueCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus.less new file mode 100644 index 00000000..53b444e5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCircleMinus.less @@ -0,0 +1,38 @@ +@import "../css3.less"; +/* === Blue Circle Minus Buttons ==*/ +.mblDomButtonBlueCircleMinus { + position: relative; + width: 29px; + height: 29px; +} + +.mblDomButtonBlueCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonBlueCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + .background-linear-gradient-top-bottom-2-stops(#6ba2e7, #216dd6, 0.5, #4282de, 0.5, #216dd6); +} +.mblDomButtonBlueCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus-compat.css new file mode 100644 index 00000000..f8c66d72 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonBlueCirclePlus { + background-image: url(compat/mblDomButtonBlueCirclePlus.png); + background-repeat: no-repeat; +} +.mblDomButtonBlueCirclePlus > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus.css new file mode 100644 index 00000000..5e71e19a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus.css @@ -0,0 +1,48 @@ + +.mblDomButtonBlueCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus.less new file mode 100644 index 00000000..d7e0ccec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonBlueCirclePlus.less @@ -0,0 +1,48 @@ +@import "../css3.less"; +/* === Blue Circle Plus Buttons ==*/ +.mblDomButtonBlueCirclePlus { + position: relative; + width: 29px; + height: 29px; +} + +.mblDomButtonBlueCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonBlueCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + .background-linear-gradient-top-bottom-2-stops(#6ba2e7, #216dd6, 0.5, #4282de, 0.5, #216dd6); +} +.mblDomButtonBlueCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff-compat.css new file mode 100644 index 00000000..64c57bc9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonCheckboxOff { + background-image: url(compat/mblDomButtonCheckboxOff.png); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOff div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff.css new file mode 100644 index 00000000..e6657a4e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff.css @@ -0,0 +1,43 @@ + +.mblDomButtonCheckboxOff { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOff > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOff > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: none; + border-top: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff.less new file mode 100644 index 00000000..7068e171 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOff.less @@ -0,0 +1,41 @@ +@import "../css3.less"; +/* === Check Button (OFF) ==*/ +.mblDomButtonCheckboxOff { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + .background-linear-gradient-top-bottom(#eff3ef, #bdbebd); +} +.mblDomButtonCheckboxOff > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: 1px solid #8c8e8c; + border-radius: 2px; + .transform(rotate(50deg)); +} +.mblDomButtonCheckboxOff > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: none; + border-top: 1px solid #8c8e8c; + border-radius: 2px; + .transform(rotate(-100deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn-compat.css new file mode 100644 index 00000000..85418422 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonCheckboxOn { + background-image: url(compat/mblDomButtonCheckboxOn.png); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOn div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn.css new file mode 100644 index 00000000..f9fb23d0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn.css @@ -0,0 +1,43 @@ + +.mblDomButtonCheckboxOn { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOn > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOn > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: none; + border-bottom: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn.less new file mode 100644 index 00000000..581a035f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonCheckboxOn.less @@ -0,0 +1,41 @@ +@import "../css3.less"; +/* === Check Button (ON) ==*/ +.mblDomButtonCheckboxOn { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + .background-linear-gradient-top-bottom(#eff3ef, #bdbebd); +} +.mblDomButtonCheckboxOn > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: 1px solid #4a5a71; + border-radius: 2px; + .transform(rotate(50deg)); +} +.mblDomButtonCheckboxOn > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: none; + border-bottom: 1px solid #4a5a71; + border-radius: 2px; + .transform(rotate(-100deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonColorButtons-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonColorButtons-compat.css new file mode 100644 index 00000000..3ad99222 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonColorButtons-compat.css @@ -0,0 +1,43 @@ + +.mblDomButtonBlueMinus { + background-image: url(compat/mblDomButtonBlueMinus.png); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url(compat/mblDomButtonBluePlus.png); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url(compat/mblDomButtonDarkBlueMinus.png); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url(compat/mblDomButtonDarkBluePlus.png); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url(compat/mblDomButtonRedMinus.png); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url(compat/mblDomButtonRedPlus.png); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonColorButtons.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonColorButtons.css new file mode 100644 index 00000000..c7af5fdc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonColorButtons.css @@ -0,0 +1,77 @@ + +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonColorButtons.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonColorButtons.less new file mode 100644 index 00000000..7d792339 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonColorButtons.less @@ -0,0 +1,56 @@ +@import "../css3.less"; +/* === Minus and Plus Buttons ==*/ +.mblDomButtonBlueMinus, .mblDomButtonBluePlus, .mblDomButtonDarkBlueMinus, .mblDomButtonDarkBluePlus, .mblDomButtonRedMinus, .mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} + +.mblDomButtonBlueMinus > div, .mblDomButtonBluePlus > div, .mblDomButtonDarkBlueMinus > div, .mblDomButtonDarkBluePlus > div, .mblDomButtonRedMinus > div, .mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, .mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + .background-linear-gradient-top-bottom-2-stops(#7a9de9, #2362dd, 0.5, #366edf, 0.5, #215fdc); +} +.mblDomButtonDarkBlueMinus > div, .mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + .background-linear-gradient-top-bottom-2-stops(#8ea4c1, #4a6c9b, 0.5, #5877a2, 0.5, #476999); +} +.mblDomButtonRedMinus > div, .mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + .background-linear-gradient-top-bottom-2-stops(#d3656d, #bc1320, 0.5, #c9404b, 0.5, #bc1421); +} +.mblDomButtonBlueMinus > div > div, .mblDomButtonBluePlus > div > div, .mblDomButtonDarkBlueMinus > div > div, .mblDomButtonDarkBluePlus > div > div, .mblDomButtonRedMinus > div > div, .mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, .mblDomButtonDarkBluePlus > div > div > div, .mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck-compat.css new file mode 100644 index 00000000..57c68436 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url(compat/mblDomButtonDarkBlueCheck.png); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck.css new file mode 100644 index 00000000..f14c01ec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck.css @@ -0,0 +1,21 @@ + +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck.less new file mode 100644 index 00000000..35b6abb2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck.less @@ -0,0 +1,19 @@ +@import "../css3.less"; +/* === Check Button ==*/ +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, .mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + .transform(scaleX(0.7) rotate(135deg)); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck_rtl.css new file mode 100644 index 00000000..062863af --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck_rtl.css @@ -0,0 +1,8 @@ + +.mblListItemRtl .mblDomButtonDarkBlueCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck_rtl.less new file mode 100644 index 00000000..6a73971e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonDarkBlueCheck_rtl.less @@ -0,0 +1,8 @@ +@import "../css3.less"; +/* === Check Button Rtl ==*/ +.mblListItemRtl .mblDomButtonDarkBlueCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + .transform(scaleX(-0.7) rotate(-135deg)); + border-width: 3px 0px 0px 4px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow-compat.css new file mode 100644 index 00000000..b60e5a59 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url(compat/mblDomButtonGrayArrow.png); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow.css new file mode 100644 index 00000000..dd4ec935 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow.css @@ -0,0 +1,21 @@ + +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow.less new file mode 100644 index 00000000..6b01e4b3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow.less @@ -0,0 +1,19 @@ +@import "../css3.less"; +/* === Arrow ==*/ +.mblDomButtonGrayArrow, .mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, .mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + .transform(rotate(45deg)); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl-compat.css new file mode 100644 index 00000000..b6d7bea4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl-compat.css @@ -0,0 +1,6 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url(compat/mblDomButtonGrayArrow_rtl.png); + background-repeat: no-repeat; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl.css new file mode 100644 index 00000000..28e10641 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl.css @@ -0,0 +1,8 @@ + +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl.less new file mode 100644 index 00000000..534b75a4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayArrow_rtl.less @@ -0,0 +1,8 @@ +@import "../css3.less"; +/* === Arrow Rtl ==*/ +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + .transform(rotate(-45deg)); + border-width: 3px 0px 0px 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayCross-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayCross-compat.css new file mode 100644 index 00000000..b762ed67 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayCross-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonGrayCross, .mblDomButtonCross { + background-image: url(compat/mblDomButtonGrayCross.png); + background-repeat: no-repeat; +} +.mblDomButtonGrayCross div, .mblDomButtonCross div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayCross.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayCross.css new file mode 100644 index 00000000..2f2f6ded --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayCross.css @@ -0,0 +1,33 @@ + +.mblDomButtonGrayCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonGrayCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayCross.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayCross.less new file mode 100644 index 00000000..d5e961ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayCross.less @@ -0,0 +1,33 @@ +@import "../css3.less"; +/* === Gray Cross Button ==*/ +.mblDomButtonGrayCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + .transform(rotate(45deg)); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonGrayCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob-compat.css new file mode 100644 index 00000000..24dc762a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonGrayKnob { + background-image: url(compat/mblDomButtonGrayKnob.png); + background-repeat: no-repeat; +} +.mblDomButtonGrayKnob > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob.css new file mode 100644 index 00000000..e2f0def8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob.css @@ -0,0 +1,42 @@ + +.mblDomButtonGrayKnob { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayKnob > div { + + position: absolute; + top: 6px; + left: 2px; + width: 23px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob.less new file mode 100644 index 00000000..a6ce9e0f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayKnob.less @@ -0,0 +1,40 @@ +@import "../css3.less"; +/* === Gray Knob Button ==*/ +.mblDomButtonGrayKnob { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayKnob > div { /* horiz line 1 */ + position: absolute; + top: 6px; + left: 2px; + width: 23px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div { /* horiz line 2 */ + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div > div { /* horiz line 3 */ + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus-compat.css new file mode 100644 index 00000000..72dd1af9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonGrayMinus { + background-image: url(compat/mblDomButtonGrayMinus.png); + background-repeat: no-repeat; +} +.mblDomButtonGrayMinus div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus.css new file mode 100644 index 00000000..b949cdb1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus.css @@ -0,0 +1,19 @@ + +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus.less new file mode 100644 index 00000000..fe923bac --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayMinus.less @@ -0,0 +1,19 @@ +@import "../css3.less"; +/* === Minus Button ==*/ +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { /* horiz line */ + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus-compat.css new file mode 100644 index 00000000..c6ca2f4d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonGrayPlus { + background-image: url(compat/mblDomButtonGrayPlus.png); + background-repeat: no-repeat; +} +.mblDomButtonGrayPlus div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus.css new file mode 100644 index 00000000..ec2bd9fe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus.css @@ -0,0 +1,33 @@ + +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus.less new file mode 100644 index 00000000..57672e6e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayPlus.less @@ -0,0 +1,32 @@ +@import "../css3.less"; +/* === Plus Button ==*/ +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { /* horiz line */ + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { /* vert line */ + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect-compat.css new file mode 100644 index 00000000..4a07af0b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect-compat.css @@ -0,0 +1,4 @@ + +.mblDomButtonGrayRoundRect > div { + -moz-border-radius: 4px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect.css new file mode 100644 index 00000000..60e5cdeb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect.css @@ -0,0 +1,23 @@ + +.mblDomButtonGrayRoundRect { + position: relative; + width: 29px; + height: 29px; + text-align: right; +} +.mblDomButtonGrayRoundRect > div { + position: absolute; + right: 0px; + display: inline; + padding: 0px 5px; + top: 7px; + color: white; + font-family: Helvetica; + font-size: 12px; + border-radius: 4px; + background-color: #949ba5; + text-align: center; +} +.mblDomButtonGrayRoundRect > div > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect.less new file mode 100644 index 00000000..fb88f570 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayRoundRect.less @@ -0,0 +1,24 @@ +@import "../css3.less"; +/* === Gray Round Rectangle Button ==*/ +.mblDomButtonGrayRoundRect { + position: relative; + width: 29px; + height: 29px; + text-align: right; +} +.mblDomButtonGrayRoundRect > div { + position: absolute; + right: 0px; + display: inline; + padding: 0px 5px; + top: 7px; + color: white; + font-family: Helvetica; + font-size: 12px; + border-radius: 4px; + background-color: #949ba5; + text-align: center; +} +.mblDomButtonGrayRoundRect > div > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayStar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayStar-compat.css new file mode 100644 index 00000000..06956a18 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayStar-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonGrayStar { + background-image: url(compat/mblDomButtonGrayStar.png); + background-repeat: no-repeat; +} +.mblDomButtonGrayStar > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayStar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayStar.css new file mode 100644 index 00000000..2846d4b7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayStar.css @@ -0,0 +1,52 @@ + +.mblDomButtonGrayStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonGrayStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #8c8e8c; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonGrayStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonGrayStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayStar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayStar.less new file mode 100644 index 00000000..258d8019 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGrayStar.less @@ -0,0 +1,50 @@ +@import "../css3.less"; +/* === Gray Star ==*/ +.mblDomButtonGrayStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + .transform(rotate(0deg)); +} +.mblDomButtonGrayStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #8c8e8c; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonGrayStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + .transform(rotate(72deg)); +} +.mblDomButtonGrayStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + .transform(rotate(216deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge-compat.css new file mode 100644 index 00000000..b82fd3d0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge-compat.css @@ -0,0 +1,6 @@ + +.mblDomButtonGreenBadge > div { + -moz-border-radius: 12px; + background-color: #6bc642; + background-image: -moz-linear-gradient(top, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge.css new file mode 100644 index 00000000..1844607f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge.css @@ -0,0 +1,29 @@ + +.mblDomButtonGreenBadge { + position: relative; + width: 29px; + height: 29px; + text-align: right; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; +} +.mblDomButtonGreenBadge > div { + position: absolute; + display: inline; + padding: 0px 5px; + top: 2px; + right: 2px; + color: white; + border: 2px solid white; + border-radius: 12px; + text-align: center; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); + background-clip: padding-box; + -webkit-box-shadow: 2px 3px 2px rgba(0, 0, 0, 0.5); + box-shadow: 2px 3px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenBadge > div > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge.less new file mode 100644 index 00000000..6a6207c9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBadge.less @@ -0,0 +1,28 @@ +@import "../css3.less"; +/* === Green Badge ==*/ +.mblDomButtonGreenBadge { + position: relative; + width: 29px; + height: 29px; + text-align: right; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; +} +.mblDomButtonGreenBadge > div { + position: absolute; + display: inline; + padding: 0px 5px; + top: 2px; + right: 2px; + color: white; + border: 2px solid white; + border-radius: 12px; + text-align: center; + .background-linear-gradient-top-bottom-2-stops(#7be75a, #398c08, 0.5, #6bc642, 0.5, #4aad21); + background-clip: padding-box; + .box-shadow(2px 3px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonGreenBadge > div > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBall-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBall-compat.css new file mode 100644 index 00000000..13cf97b1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBall-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonGreenBall { + background-image: url(compat/mblDomButtonGreenBall.png); + background-repeat: no-repeat; +} +.mblDomButtonGreenBall > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBall.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBall.css new file mode 100644 index 00000000..77f8d851 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBall.css @@ -0,0 +1,16 @@ + +.mblDomButtonGreenBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonGreenBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#59e738), to(#0aa908)); + background: linear-gradient(to bottom, #59e738 0%, #0aa908 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBall.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBall.less new file mode 100644 index 00000000..67b92852 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenBall.less @@ -0,0 +1,16 @@ +@import "../css3.less"; +/* === Green Ball Button ==*/ +.mblDomButtonGreenBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonGreenBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + .background-linear-gradient-top-bottom(#59e738, #0aa908); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow-compat.css new file mode 100644 index 00000000..a5fe5919 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonGreenCircleArrow { + background-image: url(compat/mblDomButtonGreenCircleArrow.png); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleArrow > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow.css new file mode 100644 index 00000000..aa945f72 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow.css @@ -0,0 +1,50 @@ + +.mblDomButtonGreenCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonGreenCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow.less new file mode 100644 index 00000000..e27ae46a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleArrow.less @@ -0,0 +1,49 @@ +@import "../css3.less"; +/* === Green Circle Arrow Buttons ==*/ +.mblDomButtonGreenCircleArrow { + position: relative; + width: 29px; + height: 29px; +} + +.mblDomButtonGreenCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonGreenCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + .background-linear-gradient-top-bottom-2-stops(#7be75a, #398c08, 0.5, #6bc642, 0.5, #4aad21); +} +.mblDomButtonGreenCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + .transform(rotate(45deg)); +} +.mblDomButtonGreenCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus-compat.css new file mode 100644 index 00000000..fa9e38f4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonGreenCircleMinus { + background-image: url(compat/mblDomButtonGreenCircleMinus.png); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleMinus > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus.css new file mode 100644 index 00000000..48c2769a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus.css @@ -0,0 +1,38 @@ + +.mblDomButtonGreenCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus.less new file mode 100644 index 00000000..2d0fd02c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCircleMinus.less @@ -0,0 +1,38 @@ +@import "../css3.less"; +/* === Green Circle Minus Buttons ==*/ +.mblDomButtonGreenCircleMinus { + position: relative; + width: 29px; + height: 29px; +} + +.mblDomButtonGreenCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonGreenCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + .background-linear-gradient-top-bottom-2-stops(#7be75a, #398c08, 0.5, #6bc642, 0.5, #4aad21); +} +.mblDomButtonGreenCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus-compat.css new file mode 100644 index 00000000..f86ac35a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonGreenCirclePlus { + background-image: url(compat/mblDomButtonGreenCirclePlus.png); + background-repeat: no-repeat; +} +.mblDomButtonGreenCirclePlus > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus.css new file mode 100644 index 00000000..4a4d86c4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus.css @@ -0,0 +1,48 @@ + +.mblDomButtonGreenCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus.less new file mode 100644 index 00000000..8e9f8d7e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonGreenCirclePlus.less @@ -0,0 +1,48 @@ +@import "../css3.less"; +/* === Green Circle Plus Buttons ==*/ +.mblDomButtonGreenCirclePlus { + position: relative; + width: 29px; + height: 29px; +} + +.mblDomButtonGreenCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonGreenCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + .background-linear-gradient-top-bottom-2-stops(#7be75a, #398c08, 0.5, #6bc642, 0.5, #4aad21); +} +.mblDomButtonGreenCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall-compat.css new file mode 100644 index 00000000..6d2a3366 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonOrangeBall { + background-image: url(compat/mblDomButtonOrangeBall.png); + background-repeat: no-repeat; +} +.mblDomButtonOrangeBall > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall.css new file mode 100644 index 00000000..4b673e46 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall.css @@ -0,0 +1,16 @@ + +.mblDomButtonOrangeBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonOrangeBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#f9e20a), to(#ff6b0a)); + background: linear-gradient(to bottom, #f9e20a 0%, #ff6b0a 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall.less new file mode 100644 index 00000000..4fa8b713 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonOrangeBall.less @@ -0,0 +1,16 @@ +@import "../css3.less"; +/* === Orange Ball Button ==*/ +.mblDomButtonOrangeBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonOrangeBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + .background-linear-gradient-top-bottom(#f9e20a, #ff6b0a); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBadge-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBadge-compat.css new file mode 100644 index 00000000..203bdee2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBadge-compat.css @@ -0,0 +1,6 @@ + +.mblDomButtonRedBadge > div { + -moz-border-radius: 12px; + background-color: #e44149; + background-image: -moz-linear-gradient(top, #f5bdc0 0%, #e44149 50%, #de151f 50%, #ae0001 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBadge.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBadge.css new file mode 100644 index 00000000..01ffb46e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBadge.css @@ -0,0 +1,29 @@ + +.mblDomButtonRedBadge { + position: relative; + width: 29px; + height: 29px; + text-align: right; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; +} +.mblDomButtonRedBadge > div { + position: absolute; + display: inline; + padding: 0px 5px; + top: 2px; + right: 2px; + color: white; + border: 2px solid white; + border-radius: 12px; + text-align: center; + background: -webkit-gradient(linear, left top, left bottom, from(#f5bdc0), to(#ae0001), color-stop(0.5, #e44149), color-stop(0.5, #de151f)); + background: linear-gradient(to bottom, #f5bdc0 0%, #e44149 50%, #de151f 50%, #ae0001 100%); + background-clip: padding-box; + -webkit-box-shadow: 2px 3px 2px rgba(0, 0, 0, 0.5); + box-shadow: 2px 3px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedBadge > div > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBadge.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBadge.less new file mode 100644 index 00000000..49ae0fda --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBadge.less @@ -0,0 +1,28 @@ +@import "../css3.less"; +/* === Red Badge ==*/ +.mblDomButtonRedBadge { + position: relative; + width: 29px; + height: 29px; + text-align: right; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; +} +.mblDomButtonRedBadge > div { + position: absolute; + display: inline; + padding: 0px 5px; + top: 2px; + right: 2px; + color: white; + border: 2px solid white; + border-radius: 12px; + text-align: center; + .background-linear-gradient-top-bottom-2-stops(#f5bdc0, #ae0001, 0.5, #e44149, 0.5, #de151f); + background-clip: padding-box; + .box-shadow(2px 3px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonRedBadge > div > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBall-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBall-compat.css new file mode 100644 index 00000000..cb8fab23 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBall-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonRedBall { + background-image: url(compat/mblDomButtonRedBall.png); + background-repeat: no-repeat; +} +.mblDomButtonRedBall > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBall.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBall.css new file mode 100644 index 00000000..325f3bd1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBall.css @@ -0,0 +1,16 @@ + +.mblDomButtonRedBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonRedBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#ec9b9d), to(#d73c3f)); + background: linear-gradient(to bottom, #ec9b9d 0%, #d73c3f 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBall.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBall.less new file mode 100644 index 00000000..37f5e816 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedBall.less @@ -0,0 +1,16 @@ +@import "../css3.less"; +/* === Red Ball Button ==*/ +.mblDomButtonRedBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonRedBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + .background-linear-gradient-top-bottom(#ec9b9d, #d73c3f); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow-compat.css new file mode 100644 index 00000000..0c50858d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonRedCircleArrow { + background-image: url(compat/mblDomButtonRedCircleArrow.png); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleArrow > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow.css new file mode 100644 index 00000000..8a9a0d2c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow.css @@ -0,0 +1,50 @@ + +.mblDomButtonRedCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonRedCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow.less new file mode 100644 index 00000000..14f3bf9d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleArrow.less @@ -0,0 +1,49 @@ +@import "../css3.less"; +/* === Red Circle Arrow Buttons ==*/ +.mblDomButtonRedCircleArrow { + position: relative; + width: 29px; + height: 29px; +} + +.mblDomButtonRedCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonRedCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + .background-linear-gradient-top-bottom-2-stops(#d3656d, #bc1320, 0.5, #c9404b, 0.5, #bc1421); +} +.mblDomButtonRedCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + .transform(rotate(45deg)); +} +.mblDomButtonRedCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus-compat.css new file mode 100644 index 00000000..e2df9c20 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonRedCircleMinus { + background-image: url(compat/mblDomButtonRedCircleMinus.png); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleMinus > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus.css new file mode 100644 index 00000000..b275618c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus.css @@ -0,0 +1,38 @@ + +.mblDomButtonRedCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus.less new file mode 100644 index 00000000..a4067d31 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCircleMinus.less @@ -0,0 +1,38 @@ +@import "../css3.less"; +/* === Red Circle Minus Buttons ==*/ +.mblDomButtonRedCircleMinus { + position: relative; + width: 29px; + height: 29px; +} + +.mblDomButtonRedCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonRedCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + .background-linear-gradient-top-bottom-2-stops(#d3656d, #bc1320, 0.5, #c9404b, 0.5, #bc1421); +} +.mblDomButtonRedCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus-compat.css new file mode 100644 index 00000000..16b3f3fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonRedCirclePlus { + background-image: url(compat/mblDomButtonRedCirclePlus.png); + background-repeat: no-repeat; +} +.mblDomButtonRedCirclePlus > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus.css new file mode 100644 index 00000000..1ea9bcbe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus.css @@ -0,0 +1,48 @@ + +.mblDomButtonRedCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus.less new file mode 100644 index 00000000..fcff5230 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCirclePlus.less @@ -0,0 +1,48 @@ +@import "../css3.less"; +/* === Red Circle Plus Buttons ==*/ +.mblDomButtonRedCirclePlus { + position: relative; + width: 29px; + height: 29px; +} + +.mblDomButtonRedCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); +} +.mblDomButtonRedCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + .background-linear-gradient-top-bottom-2-stops(#d3656d, #bc1320, 0.5, #c9404b, 0.5, #bc1421); +} +.mblDomButtonRedCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCross-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCross-compat.css new file mode 100644 index 00000000..2550efd5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCross-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonRedCross, .mblDomButtonCross { + background-image: url(compat/mblDomButtonRedCross.png); + background-repeat: no-repeat; +} +.mblDomButtonRedCross div, .mblDomButtonCross div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCross.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCross.css new file mode 100644 index 00000000..1418f339 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCross.css @@ -0,0 +1,33 @@ + +.mblDomButtonRedCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonRedCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCross.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCross.less new file mode 100644 index 00000000..38698c6d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonRedCross.less @@ -0,0 +1,33 @@ +@import "../css3.less"; +/* === Red Cross Button ==*/ +.mblDomButtonRedCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + .transform(rotate(45deg)); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonRedCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow-compat.css new file mode 100644 index 00000000..bd0c0817 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonSilverCircleDownArrow { + background-image: url(compat/mblDomButtonSilverCircleDownArrow.png); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleDownArrow > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow.css new file mode 100644 index 00000000..9812fb59 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow.css @@ -0,0 +1,47 @@ + +.mblDomButtonSilverCircleDownArrow { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleDownArrow > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div { + position: relative; + top: 3px; + left: 3px; + width: 20px; + height: 20px; + border-radius: 10px; + background: -webkit-gradient(linear, left top, left bottom, from(#979797), to(#616161)); + background: linear-gradient(to bottom, #979797 0%, #616161 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div > div { + position: absolute; + left: 0px; + clip: rect(6px 50px 40px 0px); +} +.mblDomButtonSilverCircleDownArrow > div > div > div > div { + position: absolute; + top: -5px; + left: 1px; + width: 18px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #d1d1d1; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.7) rotate(45deg); + transform: scaleX(0.7) rotate(45deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow.less new file mode 100644 index 00000000..64359a8c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleDownArrow.less @@ -0,0 +1,44 @@ +@import "../css3.less"; +/* === Silver Circle Down Arrow ==*/ +.mblDomButtonSilverCircleDownArrow { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleDownArrow > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); + .background-linear-gradient-top-bottom(#efefef, #c2c2c2); +} +.mblDomButtonSilverCircleDownArrow > div > div { + position: relative; + top: 3px; + left: 3px; + width: 20px; + height: 20px; + border-radius: 10px; + .background-linear-gradient-top-bottom(#979797, #616161); +} +.mblDomButtonSilverCircleDownArrow > div > div > div { + position: absolute; + left: 0px; + clip: rect(6px 50px 40px 0px); +} +.mblDomButtonSilverCircleDownArrow > div > div > div > div { + position: absolute; + top: -5px; + left: 1px; + width: 18px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #d1d1d1; + border-top: 1px solid #4a5a71; + .transform(scaleX(0.7) rotate(45deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton-compat.css new file mode 100644 index 00000000..38ceaa1d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonSilverCircleGrayButton { + background-image: url(compat/mblDomButtonSilverCircleGrayButton.png); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGrayButton > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton.css new file mode 100644 index 00000000..e6f61312 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton.css @@ -0,0 +1,30 @@ + +.mblDomButtonSilverCircleGrayButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGrayButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGrayButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #aeaeae; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#d4d4d4), to(#bababa)); + background: linear-gradient(to bottom, #d4d4d4 0%, #bababa 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton.less new file mode 100644 index 00000000..2e25262f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGrayButton.less @@ -0,0 +1,28 @@ +@import "../css3.less"; +/* === Silver Circle Gray Button ==*/ +.mblDomButtonSilverCircleGrayButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGrayButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); + .background-linear-gradient-top-bottom(#efefef, #c2c2c2); +} +.mblDomButtonSilverCircleGrayButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #aeaeae; + border-radius: 7px; + .background-linear-gradient-top-bottom(#d4d4d4, #bababa); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton-compat.css new file mode 100644 index 00000000..2e07dad1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonSilverCircleGreenButton { + background-image: url(compat/mblDomButtonSilverCircleGreenButton.png); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenButton > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton.css new file mode 100644 index 00000000..980f76fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton.css @@ -0,0 +1,30 @@ + +.mblDomButtonSilverCircleGreenButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #1b991c; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#17df25), to(#1ba51c)); + background: radial-gradient(6px at center, #17df25 0%, #1ba51c 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton.less new file mode 100644 index 00000000..8fcf594b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenButton.less @@ -0,0 +1,28 @@ +@import "../css3.less"; +/* === Silver Circle Green Button ==*/ +.mblDomButtonSilverCircleGreenButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); + .background-linear-gradient-top-bottom(#efefef, #c2c2c2); +} +.mblDomButtonSilverCircleGreenButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #1b991c; + border-radius: 7px; + .background-radial-gradient-center(6, #17df25, #1ba51c); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus-compat.css new file mode 100644 index 00000000..f7de5384 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonSilverCircleGreenPlus { + background-image: url(compat/mblDomButtonSilverCircleGreenPlus.png); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenPlus > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus.css new file mode 100644 index 00000000..d297532b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus.css @@ -0,0 +1,39 @@ + +.mblDomButtonSilverCircleGreenPlus { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenPlus > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenPlus > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleGreenPlus > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus.less new file mode 100644 index 00000000..28852067 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleGreenPlus.less @@ -0,0 +1,38 @@ +@import "../css3.less"; +/* === Silver Circle Green Plus Button ==*/ +.mblDomButtonSilverCircleGreenPlus { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenPlus > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); + .background-linear-gradient-top-bottom(#efefef, #c2c2c2); +} +.mblDomButtonSilverCircleGreenPlus > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleGreenPlus > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton-compat.css new file mode 100644 index 00000000..022c900a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonSilverCircleOrangeButton { + background-image: url(compat/mblDomButtonSilverCircleOrangeButton.png); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleOrangeButton > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton.css new file mode 100644 index 00000000..2025c95a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton.css @@ -0,0 +1,30 @@ + +.mblDomButtonSilverCircleOrangeButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleOrangeButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleOrangeButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #ca701a; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#ff7a07), to(#e66b03)); + background: radial-gradient(6px at center, #ff7a07 0%, #e66b03 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton.less new file mode 100644 index 00000000..bebdd3d4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleOrangeButton.less @@ -0,0 +1,28 @@ +@import "../css3.less"; +/* === Silver Circle Orange Button ==*/ +.mblDomButtonSilverCircleOrangeButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleOrangeButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); + .background-linear-gradient-top-bottom(#efefef, #c2c2c2); +} +.mblDomButtonSilverCircleOrangeButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #ca701a; + border-radius: 7px; + .background-radial-gradient-center(6, #ff7a07, #e66b03); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross-compat.css new file mode 100644 index 00000000..f6c69ac9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonSilverCircleRedCross { + background-image: url(compat/mblDomButtonSilverCircleRedCross.png); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleRedCross > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross.css new file mode 100644 index 00000000..a7dbd306 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross.css @@ -0,0 +1,41 @@ + +.mblDomButtonSilverCircleRedCross { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleRedCross > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleRedCross > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonSilverCircleRedCross > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross.less new file mode 100644 index 00000000..202f554b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonSilverCircleRedCross.less @@ -0,0 +1,39 @@ +@import "../css3.less"; +/* === Silver Circle Red Cross Button ==*/ +.mblDomButtonSilverCircleRedCross { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleRedCross > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + .box-shadow(0px 1px 2px rgba(0, 0, 0, 0.5)); + .background-linear-gradient-top-bottom(#efefef, #c2c2c2); +} +.mblDomButtonSilverCircleRedCross > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; + .transform(rotate(45deg)); +} +.mblDomButtonSilverCircleRedCross > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent19.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent19.css new file mode 100644 index 00000000..49c75ca7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent19.css @@ -0,0 +1,6 @@ + +.mblDomButtonTransparent19 { + position: relative; + width: 19px; + height: 19px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent19.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent19.less new file mode 100644 index 00000000..12249a5a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent19.less @@ -0,0 +1,7 @@ +@import "../css3.less"; +/* === Transparent Button ==*/ +.mblDomButtonTransparent19 { + position: relative; + width: 19px; + height: 19px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent29.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent29.css new file mode 100644 index 00000000..a1178fc0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent29.css @@ -0,0 +1,6 @@ + +.mblDomButtonTransparent29 { + position: relative; + width: 29px; + height: 29px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent29.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent29.less new file mode 100644 index 00000000..ae24ad31 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent29.less @@ -0,0 +1,7 @@ +@import "../css3.less"; +/* === Transparent Button ==*/ +.mblDomButtonTransparent29 { + position: relative; + width: 29px; + height: 29px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent30.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent30.css new file mode 100644 index 00000000..ad4c75ce --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent30.css @@ -0,0 +1,6 @@ + +.mblDomButtonTransparent30 { + position: relative; + width: 30px; + height: 30px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent30.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent30.less new file mode 100644 index 00000000..1965e7e1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonTransparent30.less @@ -0,0 +1,7 @@ +@import "../css3.less"; +/* === Transparent Button ==*/ +.mblDomButtonTransparent30 { + position: relative; + width: 30px; + height: 30px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow-compat.css new file mode 100644 index 00000000..6bf1516b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonWhiteArrow, .mblDomButtonArrow { + background-image: url(compat/mblDomButtonWhiteArrow.png); + background-repeat: no-repeat; +} +.mblDomButtonWhiteArrow div, .mblDomButtonArrow div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow.css new file mode 100644 index 00000000..dd34e809 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow.css @@ -0,0 +1,21 @@ + +.mblDomButtonWhiteArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow.less new file mode 100644 index 00000000..23019eb2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteArrow.less @@ -0,0 +1,19 @@ +@import "../css3.less"; +/* === Arrow ==*/ +.mblDomButtonWhiteArrow, .mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteArrow > div, .mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + .transform(rotate(45deg)); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck-compat.css new file mode 100644 index 00000000..22a1dd36 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonWhiteCheck, .mblDomButtonCheck { + background-image: url(compat/mblDomButtonWhiteCheck.png); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCheck div, .mblDomButtonCheck div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck.css new file mode 100644 index 00000000..6d8b35c2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck.css @@ -0,0 +1,21 @@ + +.mblDomButtonWhiteCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck.less new file mode 100644 index 00000000..0834277c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck.less @@ -0,0 +1,19 @@ +@import "../css3.less"; +/* === Check Button ==*/ +.mblDomButtonWhiteCheck, .mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteCheck > div, .mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + .transform(scaleX(0.7) rotate(135deg)); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck_rtl.css new file mode 100644 index 00000000..cdc76e21 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck_rtl.css @@ -0,0 +1,8 @@ + +.mblListItemRtl .mblDomButtonWhiteCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck_rtl.less new file mode 100644 index 00000000..5c807a7e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCheck_rtl.less @@ -0,0 +1,8 @@ +@import "../css3.less"; +/* === Check Button Rtl ==*/ +.mblListItemRtl .mblDomButtonWhiteCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + .transform(scaleX(-0.7) rotate(-135deg)); + border-width: 3px 0px 0px 4px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross-compat.css new file mode 100644 index 00000000..9b2efb35 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url(compat/mblDomButtonWhiteCross.png); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross.css new file mode 100644 index 00000000..4a872b07 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross.css @@ -0,0 +1,33 @@ + +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross.less new file mode 100644 index 00000000..e72e9cc4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteCross.less @@ -0,0 +1,33 @@ +@import "../css3.less"; +/* === White Cross Button ==*/ +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + .transform(rotate(45deg)); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow-compat.css new file mode 100644 index 00000000..59f912db --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonWhiteDownArrow { + background-image: url(compat/mblDomButtonWhiteDownArrow.png); + background-repeat: no-repeat; +} +.mblDomButtonWhiteDownArrow div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow.css new file mode 100644 index 00000000..99f25b73 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow.css @@ -0,0 +1,23 @@ + +.mblDomButtonWhiteDownArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteDownArrow div { + position: absolute; + left: 0px; + clip: rect(7px 50px 40px 0px); +} +.mblDomButtonWhiteDownArrow > div > div { + top: -10px; + left: 2px; + width: 25px; + height: 25px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow.less new file mode 100644 index 00000000..87215987 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow.less @@ -0,0 +1,23 @@ +@import "../css3.less"; +/* === Down Arrow Button ==*/ +.mblDomButtonWhiteDownArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteDownArrow div { + position: absolute; + left: 0px; + clip: rect(7px 50px 40px 0px); +} +.mblDomButtonWhiteDownArrow > div > div { + top: -10px; + left: 2px; + width: 25px; + height: 25px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + .transform(scaleX(0.6) rotate(45deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16-compat.css new file mode 100644 index 00000000..6011d28a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonWhiteDownArrow16 { + background-image: url(compat/mblDomButtonWhiteDownArrow16.png); + background-repeat: no-repeat; +} +.mblDomButtonWhiteDownArrow16 > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16.css new file mode 100644 index 00000000..35f17ca3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16.css @@ -0,0 +1,23 @@ + +.mblDomButtonWhiteDownArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonWhiteDownArrow16 > div { + position: absolute; + left: 0px; + clip: rect(4px 16px 16px 0px); +} +.mblDomButtonWhiteDownArrow16 > div > div { + position: absolute; + top: 0px; + left: 3px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: white; + -webkit-transform: scaleX(0.5) rotate(45deg); + transform: scaleX(0.5) rotate(45deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16.less new file mode 100644 index 00000000..e97fa472 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteDownArrow16.less @@ -0,0 +1,23 @@ +@import "../css3.less"; +/* === WhiteDownArrow16 ==*/ +.mblDomButtonWhiteDownArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonWhiteDownArrow16 > div { + position: absolute; + left: 0px; + clip: rect(4px 16px 16px 0px); +} +.mblDomButtonWhiteDownArrow16 > div > div { + position: absolute; + top: 0px; + left: 3px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: white; + .transform(scaleX(0.5) rotate(45deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16-compat.css new file mode 100644 index 00000000..5b551943 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonWhiteLeftArrow16 { + background-image: url(compat/mblDomButtonWhiteLeftArrow16.png); + background-repeat: no-repeat; +} +.mblDomButtonWhiteLeftArrow16 > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16.css new file mode 100644 index 00000000..eea3df54 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16.css @@ -0,0 +1,23 @@ + +.mblDomButtonWhiteLeftArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonWhiteLeftArrow16 > div { + position: absolute; + left: 0px; + clip: rect(0px 12px 16px 4px); +} +.mblDomButtonWhiteLeftArrow16 > div > div { + position: absolute; + top: 3px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: white; + -webkit-transform: scaleY(0.5) rotate(45deg); + transform: scaleY(0.5) rotate(45deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16.less new file mode 100644 index 00000000..ce24c062 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteLeftArrow16.less @@ -0,0 +1,23 @@ +@import "../css3.less"; +/* === WhiteLeftArrow16 ==*/ +.mblDomButtonWhiteLeftArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonWhiteLeftArrow16 > div { + position: absolute; + left: 0px; + clip: rect(0px 12px 16px 4px); +} +.mblDomButtonWhiteLeftArrow16 > div > div { + position: absolute; + top: 3px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: white; + .transform(scaleY(0.5) rotate(45deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus-compat.css new file mode 100644 index 00000000..fefec483 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonWhiteMinus { + background-image: url(compat/mblDomButtonWhiteMinus.png); + background-repeat: no-repeat; +} +.mblDomButtonWhiteMinus div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus.css new file mode 100644 index 00000000..3d683ad0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus.css @@ -0,0 +1,18 @@ + +.mblDomButtonWhiteMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteMinus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus.less new file mode 100644 index 00000000..459d30e1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteMinus.less @@ -0,0 +1,18 @@ +@import "../css3.less"; +/* === Minus Button ==*/ +.mblDomButtonWhiteMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteMinus > div { /* horiz line */ + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus-compat.css new file mode 100644 index 00000000..24c4344a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonWhitePlus { + background-image: url(compat/mblDomButtonWhitePlus.png); + background-repeat: no-repeat; +} +.mblDomButtonWhitePlus div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus.css new file mode 100644 index 00000000..046af28d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus.css @@ -0,0 +1,30 @@ + +.mblDomButtonWhitePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhitePlus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhitePlus > div > div { + + position: absolute; + top: -6px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus.less new file mode 100644 index 00000000..f75f280c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhitePlus.less @@ -0,0 +1,29 @@ +@import "../css3.less"; +/* === Plus Button ==*/ +.mblDomButtonWhitePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhitePlus > div { /* horiz line */ + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhitePlus > div > div { /* vert line */ + position: absolute; + top: -6px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16-compat.css new file mode 100644 index 00000000..f16efe8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonWhiteRightArrow16 { + background-image: url(compat/mblDomButtonWhiteRightArrow16.png); + background-repeat: no-repeat; +} +.mblDomButtonWhiteRightArrow16 > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16.css new file mode 100644 index 00000000..8f4b6e1d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16.css @@ -0,0 +1,23 @@ + +.mblDomButtonWhiteRightArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonWhiteRightArrow16 > div { + position: absolute; + left: 0px; + clip: rect(0px 16px 16px 4px); +} +.mblDomButtonWhiteRightArrow16 > div > div { + position: absolute; + top: 3px; + left: 0px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: white; + -webkit-transform: scaleY(0.5) rotate(45deg); + transform: scaleY(0.5) rotate(45deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16.less new file mode 100644 index 00000000..016acb7d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteRightArrow16.less @@ -0,0 +1,23 @@ +@import "../css3.less"; +/* === WhiteRightArrow16 ==*/ +.mblDomButtonWhiteRightArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonWhiteRightArrow16 > div { + position: absolute; + left: 0px; + clip: rect(0px 16px 16px 4px); +} +.mblDomButtonWhiteRightArrow16 > div > div { + position: absolute; + top: 3px; + left: 0px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: white; + .transform(scaleY(0.5) rotate(45deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch-compat.css new file mode 100644 index 00000000..3d846f0b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonWhiteSearch { + background-image: url(compat/mblDomButtonWhiteSearch.png); + background-repeat: no-repeat; +} +.mblDomButtonWhiteSearch div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch.css new file mode 100644 index 00000000..e3b65201 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch.css @@ -0,0 +1,31 @@ + +.mblDomButtonWhiteSearch { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteSearch > div { + position: absolute; + top: 5px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + border: 2px solid white; + border-radius: 6px; +} +.mblDomButtonWhiteSearch > div > div { + position: absolute; + top: 10px; + left: 7px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border: none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch.less new file mode 100644 index 00000000..e4221131 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteSearch.less @@ -0,0 +1,31 @@ +@import "../css3.less"; +/* === Search Button ==*/ +.mblDomButtonWhiteSearch { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteSearch > div { + position: absolute; + top: 5px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + border: 2px solid white; + border-radius: 6px; +} +.mblDomButtonWhiteSearch > div > div { + position: absolute; + top: 10px; + left: 7px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border: none; + .transform(rotate(45deg)); + border-radius: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow-compat.css new file mode 100644 index 00000000..53f8aab7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonWhiteUpArrow { + background-image: url(compat/mblDomButtonWhiteUpArrow.png); + background-repeat: no-repeat; +} +.mblDomButtonWhiteUpArrow div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow.css new file mode 100644 index 00000000..bf48abcc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow.css @@ -0,0 +1,23 @@ + +.mblDomButtonWhiteUpArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteUpArrow div { + position: absolute; + left: 0px; + clip: rect(0px 30px 20px 0px); +} +.mblDomButtonWhiteUpArrow > div > div { + top: 9px; + left: 4px; + width: 20px; + height: 20px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow.less new file mode 100644 index 00000000..b2ed027d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow.less @@ -0,0 +1,23 @@ +@import "../css3.less"; +/* === Up Arrow Button ==*/ +.mblDomButtonWhiteUpArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteUpArrow div { + position: absolute; + left: 0px; + clip: rect(0px 30px 20px 0px); +} +.mblDomButtonWhiteUpArrow > div > div { + top: 9px; + left: 4px; + width: 20px; + height: 20px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + .transform(scaleX(0.6) rotate(45deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16-compat.css new file mode 100644 index 00000000..bd77914f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonWhiteUpArrow16 { + background-image: url(compat/mblDomButtonWhiteUpArrow16.png); + background-repeat: no-repeat; +} +.mblDomButtonWhiteUpArrow16 > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16.css new file mode 100644 index 00000000..05e57ead --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16.css @@ -0,0 +1,23 @@ + +.mblDomButtonWhiteUpArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonWhiteUpArrow16 > div { + position: absolute; + left: 0px; + clip: rect(0px 16px 12px 0px); +} +.mblDomButtonWhiteUpArrow16 > div > div { + position: absolute; + top: 6px; + left: 3px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: white; + -webkit-transform: scaleX(0.5) rotate(45deg); + transform: scaleX(0.5) rotate(45deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16.less new file mode 100644 index 00000000..933c0683 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonWhiteUpArrow16.less @@ -0,0 +1,23 @@ +@import "../css3.less"; +/* === WhiteUpArrow16 ==*/ +.mblDomButtonWhiteUpArrow16 { + position: relative; + width: 16px; + height: 16px; +} +.mblDomButtonWhiteUpArrow16 > div { + position: absolute; + left: 0px; + clip: rect(0px 16px 12px 0px); +} +.mblDomButtonWhiteUpArrow16 > div > div { + position: absolute; + top: 6px; + left: 3px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + background-color: white; + .transform(scaleX(0.5) rotate(45deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonYellowStar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonYellowStar-compat.css new file mode 100644 index 00000000..a2249ad9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonYellowStar-compat.css @@ -0,0 +1,8 @@ + +.mblDomButtonYellowStar { + background-image: url(compat/mblDomButtonYellowStar.png); + background-repeat: no-repeat; +} +.mblDomButtonYellowStar > div { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonYellowStar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonYellowStar.css new file mode 100644 index 00000000..35f6d293 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonYellowStar.css @@ -0,0 +1,52 @@ + +.mblDomButtonYellowStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonYellowStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonYellowStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #cd853f; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonYellowStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonYellowStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonYellowStar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonYellowStar.less new file mode 100644 index 00000000..d44f7741 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/DomButtonYellowStar.less @@ -0,0 +1,50 @@ +@import "../css3.less"; +/* === Yellow Star ==*/ +.mblDomButtonYellowStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonYellowStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + .transform(rotate(0deg)); +} +.mblDomButtonYellowStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #cd853f; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonYellowStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + .transform(rotate(72deg)); +} +.mblDomButtonYellowStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + .transform(rotate(216deg)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonArrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonArrow.png new file mode 100644 index 0000000000000000000000000000000000000000..27f0e3dd1756884efb0af649ea072a13b4adbbf9 GIT binary patch literal 955 zcmeAS@N?(olHy`uVBq!ia0vp^B0wz5!3-qlM(p_xq&N#aB8wRqxITa|qthCb89+gW zWRD46eKkmX+K7i-Gu_u6{1-oD!M$g| literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackCircleCross.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackCircleCross.png new file mode 100644 index 0000000000000000000000000000000000000000..2fde47f21c86260c7cf22bee332c5ee25f941e9c GIT binary patch literal 1449 zcmV;a1y=frP)Yz+ zg#Ib`zwt4jN-HoMfc-EuG?b@MC{*t5?j#@}fM_%tqE!An?C$PPd3kxMJv=;2IXE~- zbarP0?gPqEG&$8d3jM_Pfrg?O-&`i!NEi(lM#D+dxHIig@t5t za*~eq_Vy;p$;oOD507uvYIQ9%**z*G0NTyX&22!~+#(_(sB?6fo104(7ZaZ17xyR-3q}H?Fh4&} zY;0^uOiYZEgM-6!==$Qp@Pg6jTU%RSArJ?RjEs=X%uG6KEb;O24+0Ys66h}oiXRO)z#HxaBz^6mX=xo%gf72 ze}6xguAt;HLVcrKLp=47r(lS@56e1SO8=6*iv^hJ?Y4kB>{LR0u{Jw8eHja-b9H ztG&H_wXUvip5vH7%gV~Wfy8gbBZH-~vXXa>&M;w!j|B(DJ`RYJ9UUE|J|N+5H8nNe z6crV{w1Bers%w3H{d!+t-#yM!oME0);j(8SlyofmfbVxTH8sDXuB4zcsG1iqUc@#x zHyfv>rWnY(d`gsBp}2xt`B39tg3yK<8X7(%CMHIrZ|)iuLb=s`QczIv62N-Qoj91y zpG@> zH#avGNM8*rHOn;c03+P-!dpp@5Olr0y&I4$f|r(-URPCB^{_9-TMo*<90X7q3;qc1 z((tILsGlG`dieYM8$v=tH1GtGOdMxtXFAAC>+sC+hckITJ3IRZ^f4g-GS;9%um)D> zSX^BE3ij(cs1h&aQ<#Ja>Me{jKvIzb#1{7d83^YLo~gfr{V$krpk4@pk3l&w?!z;- z+QJ*?)5yrkuK}oqSD*`wQDQhDl<$|9mvIl5SO^03n2E&C(8r)cxQbo5n*CM?UL5zV za|2rudiT(q_o-0v(?-ccWo+f3CidIvpBNnU9{~mcq`fc+FxD>y00000NkvXXu0mjf DulJG( literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackDownArrow16.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackDownArrow16.png new file mode 100644 index 0000000000000000000000000000000000000000..6bd2119719b75eb25e67a604cdfd5151785e21be GIT binary patch literal 216 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XsytmBLn>}1{rUgjo>{e_v(d?bgLj5W<|P(4w`2cr7zE@g zE!8`~Qy8GLAX!myVSd2T0v!#FAF{Kf*0A}^u_$EP#i(Goh}WT<^}@IO9akQjFx(W~ zk;9(oR-+jh5h0Oc{CIcydyB%Ai3i1>eEs@$GlwhpHp16{%3 M>FVdQ&MBb@0POTj=>Px# literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackLeftArrow16.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackLeftArrow16.png new file mode 100644 index 0000000000000000000000000000000000000000..e90360291c23da1930c73aa6810811707526d14b GIT binary patch literal 191 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X5}1{rUgjo>{e_v(d?*g=dCI<|P(^V-pxymF#Q; zIapX(_cu>*nzHzm@Y;zP%niTP5-xX~W>}Nx5OnLn<5o^4CZ;9TjT0PSeCj!3B`(%l mSy{}1{rUgjo>{e_v(d?bgLj5W<|P(|c^+Fh7dW^a zQ&1ET6A}4iSNP}%=ZjAguL>m{);O~8Dx?SqYsRT+@+3q!I5gPk3tZwjtn)&TDT~QH oF)l8S(J(Gq<}5c410x$l$?FSjs?RNc0qtY(boFyt=akR{05=LdF8}}l literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackUpArrow16.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlackUpArrow16.png new file mode 100644 index 0000000000000000000000000000000000000000..4e3f0f31b1804d89863abe3716fa35e46e3f3043 GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xay(reLn>}1{rUgjo>{e_v(d@m1n&%!%u6f^^E&)_mG?P_ zh>88yz?eA&a%atZD-uQ5&Q&_!WiKE1kV@vs#Gdejr-A`a+xOv~xh~Z|L(>jF= y>q*-C1XCHzZhzd_bfx5gN03S1ggp!b2@K&nm-KqwYWD)|W$<+Mb6Mw<&;$TmE=M>3 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlueBall.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlueBall.png new file mode 100644 index 0000000000000000000000000000000000000000..fc4d7340ef50ffabf3bc227da67bd6c350add5b7 GIT binary patch literal 347 zcmV-h0i^zkP)7eKrlh`%E%ste}DGz<+Cfz$ypKbrVQki9_Mhu39){``e8 z7XfiB4og6W_X4p25Xa#(?ANb9AgUCPLC654<}wg>V>Rr@uiv0BsvsfUL29Rf!VuH2 zAHSS{ln@Dqfz*QZY{h1nIvJ@#9jjsAfBd9gI{Wth*G)3axrsdje*D@8O-KAh8U#|i z50_z}l-&x%T|^qz3d;@Hk_H1b-GCBg6aj;l!O|GML<<7ZKztTYc4|d7h){N7fabmF t(2On(6?=*;qk{nBXzes=7a^ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlueCircleArrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlueCircleArrow.png new file mode 100644 index 0000000000000000000000000000000000000000..04526cc451859ed60f507621763b28076f58e4f1 GIT binary patch literal 1500 zcmV<21ta>2P)VB*qO{G!w%Y65sB`*M?gu^nUYyUfx3AwiJwsPjYxKea`tk=XuZNK^6!E=>HxH{&Vx@&3~no zo10rQJv}{zTMK00t3H4J{0?-FiAhGI@zT=L(z(^u)kho-hkRjSfwHr+3A^OQ6mwi$ zTtD7_hTr?}?A@2AyTIZByVlv+c~LHxD>E}Qsi>%kv|24G6kBQ@k4Le&xv4jqOeY>Z zc<@4MYU&?$yZr(dFdS;*rPJwrYu`|KsPF6R8}|8p2TMy!Nu$vS@9&%3)Ms?i+^UBb*0y#~uTzjAMM)I} z8hSJ{o(u*9FHi;j*A^ESRW6t7ZA^2-gaW7;8XEc?-|FCzBS%OklhN#ohi>;<1!(w~ zUiJv`%YC~5J@a%TJ)Ekfva&L5Z*T8efNfa(<#0X8o=r?lv@9<#XOxtb2*4Q_{G@%E z{+f4@*BjWDBz2tRnT6-@T-J$?kEiPDYF%Pt;%S&Ywks5qo|>7Nd69vv#2#GzX^GYy ze)9MN+ww|PGJS9|owAY@lJ_h;mvvZ|7Y&cI5p<0(uZjw_TCE=;GUGTXczpA-g{*eJ z#G98Z66x8Z1C*eW(Uq4TB0a$29llSEi+GTWp6I5~Z{)sfo)eOF5q4WIfuf2SkkH%i-(Pe^^)x6Gi*CC7t%+HT9iOhbA9-(QzIiIgjz|@ zJeEM^1qY%SO5PWcb=d~nLf26v9ml}%M-&J2&QDiXR(vQD!t;Bz8FWx1ZD$|1ndx?~ zB_@z{SeFMH|14s~Ff}#xl_aou3lK;g#VI##+~`H=%B!iVks+aJWX?(FzL=p6hhJh? zuT!GEd7=VuUCf~;4Qj#5mX?-#8yg#r`uh4Ba7^Kz`Z!&?y1HInTU+y^y%D~Hpv*?X zw>lb-=LCVA39!|LYidVFM?HStlyL_L>!%#K&eqn}(X6bj*KvOxl|)lqTr3!AeKUu8 zC+ze?pM}O2oZH*VfmNhe)2WJNsw~`E81Gz9Pfs^`Y5DBz?6vmx_HnV12g0{E_{{mF zYiw++%gf7aKrL1tJ$h6XJUzr32t?i;b6Z>6-w2$;qobpjnwpw^6i6^rmeT+nl)sK@|OBWM!fsRhycJ?4MS^#-yL3fv1C1am?rh@!5o zt<9;dtUL*z9vvx-Bi`+Ho3WKs`$ z?iPiip54y8`-O%#e1!;=i4uhR#QT{4Vg#Z82rvNN9ch!|eHB;$0000B57Kr45)ITEnqew9WgQP&hKuOOZ6&~je zsbiWphfb#(-sX<(e(C%C+~zJ`<`H_~*?yPjc|Py+d!P4tUY^hAWB>OM(9giYz?FCuS~}OK@~_lx{Q{Z*6aH zzn+qk@~72my^9IVU-SjegjQ8m<;~B}kHBFjfha0O6Qw5<3YlCk=LCAfjg5_>si~<) zVzKxuyWRd_%+UJ!`Yaeudpw@RqM{-ukx01bD@G^NXl-m`-^C0ECtomKE@0|pAuG+1 zu;-QWOs!Va1VtK+=H0EWEs?|F_y}sY3!!y&bvNeb<{n|K63ffW8IQ+f`aKsLoU(Ax z$g#HT;^dDND+hh+Wf^-eMaYVai=~s3lWzljjLEk|+J${Htl_u2ySs|Q!a@$X4u_q? zyKHgO!Q5`&g+e-{OE&TG@vO44QZAFp?!fIU=R%?M()#-P8w4aHir~S|JM7TrWiF2| zCLvw2AzPX>B32>k+TdPvCe&iFe2UDBOHEDX?!Wup%q&*#r4dF7*^n)bFqH`7%5~+K4@#@=H@El@^%!orl#g5_LfwkP;d_)K0dl~gpoo% zXds(YvCnVfGAS&34-XGZY0m{Vz1HO9W_+DNJ~#k;B1aquDxFY4D5{7W8#-vPvgHU~ z|N3#}m0&dw)}nj>dJO2ZxLgcE-EKEOwBl$@wrfNfZHr8%uq9z@iifMHqd}$obkVij zSEvt^M7lACt?BXc@o#Qgeemf%PbFqchLg{e)wJ|fQ1am)9+X2V{taP~q9|xhCX;(} zbCcQ?yH%2O?MTT7`9hUj@_M~Fc(fG;MH}-VQr*JB0z<826)z;PlALFr8c4R}gM6WR zh>=7~V0goz2tNUhx@&K5&x0btz4)Y7!4f5LR|b*|+0sDc*CSWdI-Tz8sNzsjQQ>TF zZ~p}gzCJNA;iDP8s1~#DKghTem~_d8Y{|#?__!7Mve?<#IUEH=J9Bq*bO@mI&cVTf zcXoD`VI6|tSUxrB1c0=b@HLJoQ$|Ne-^c4C9(90-e(D<<8rlKenUOXaD#&ex6E%ts!Q&OK-5U+>?nB@F50zX^CF1|7>`8c-h~` zPfJ|r5wy9vIT3%#wzjtW{r&wLs8+sM2XezWI5;>7TYF1O%X{#p2yJV`BH?jA zr;+oZEbH#>mNYgt7UT5rCCX!3c6PQCQAUM$63YAqg1k#{K1ynBZM}<=;2qRYYRLPTga_h)ofApI14N9ZNx+sfBU^uj z{x?)_AWuSpmqEGbI6(-itE-h=U0ojBi)(9ZGs?=!-UKim9Vrzy0;khy!XDHuFE5Yx z_4WPjhY-+8l_>HUdKokb$8l7IMl9>;>7mUngz!U}zt`{F=@){!&O7tQ3XR-e0zZ`J lmjKk`zrL^u2cZ86FaV~gWH?H-@df|@002ovPDHLkV1loHpb7v0 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlueCirclePlus.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBlueCirclePlus.png new file mode 100644 index 0000000000000000000000000000000000000000..670839fdb6da7238d959e9514ce37bc3bee2e9c9 GIT binary patch literal 1373 zcmV-j1)}duO< znI^{_tra5hnHnnf!7owZwo5^NF`^|}mW_zW0+Co)^Fvf0iV!2PFbXn^kevOng*iS# zYJH@Rla7u$_!=jj_oLsL`TwW?Jk^8_oSFN-_nh;)=ic+UqEINr{%?}d&%nUInUr)o zUG?hfsu@E&_|&^@Z*Tt>^aR0NlgV^zXJ_Zd{r&w*E|*JewOW~4t!6kSKSXR985t9p z{{ZVoeEU!3X$r7RfZZ7#9laqIi={|sCXqzcd_JG#=;%nZy}f;9YisM7 zyu7^MolfUsS6Wa2DyFBWf5Tm6H#Rmhkx0ZWdp`E{gd+?ZPpiAW zF#odT41+%Zcn*6gPs(a*Yn9{U<1YaC7@L1HUN7d%mY0{m+TGnPtgfyO1Fpef&+smr z-|#TMKa`e9hGa=6Gc%JlH#e(ta&oT0?2{=$A@tbV+S;=ONJ`|v?eBNkp)1IIflv&8 z{)#%v!g-P<9nz&u!(%mqt_$X6NkJVB$9ss(3`#vd)OZqcY=pJ3n|$;>5>hi^78T`{9R1|ZEbC>L~bby3k$=O zckdsiy}xvx@=P{}5Y73>^GXbJW1{!)@UWh8j!$}%&70s+DoQ0sHo^d~i5T&~DGfnI zK~Y7tNa(1-(xxXm{^=cETF@WgDoL1Yy}cS^1E9wMeGtR>D5&4>7Yi$n$>us&7m3$L zB$L~Um^;Pf3hHQ7s6rzXJ;8|C41tLELKDr@P$94q9_Ds-c3#Iz@EYnTHROG4A^`S4&x;@t z0Yr|V$wJE65v|`q{xhmK;J<}{CxP<7VsIA6^0v0Nl7@zc=K!cdN6M#&r{ly?nim%r z4gLN7a~uc(I=SGCX+bA}3c;nE=Q3_A7DRoJGw$V>Kz*s+yr%_?PcI1vD&m+24RGVM fO_&G$M}PqUa!L!L#iT}=mWH<{v zB8wRqxITa|qthCb84L`}3;{kNuJ-=LUQva%;hn~zvvs4lDaPMXNw}tza7QWeu5!{{ ztHKA~aUI_AUA_t33DrCND=#^fJ@l-86xi@MqU}j?>*?f{Gr66|^SV#xOt@drf4Oq% z*@W(==@XviPkEX@^?B*cXJxZqRLyztpW*+c`CF%~I5%_6rPd{nTbDjrxcSzG-4_<^ zcyaCF&;S4b1Kl_ZMni!9ArNu)<7}X<$|XU5!N7D#05GI!Hcta8Z}xO?45_%a_tHte zrT_t#i_0~PG*2v9U}V{F=zsnE&h^=sOL`1n+zfrUE#!0GuiUkdr+DYB=wGvDN73cL zyK}oX?sfmF5fs9&bj71Zsw-f-(iI2m^KtJ?0%da*OaiAztxxu!9LiRz`fE+pBF$C# u+-EGWmL>Krp7_{OJiPGrYk9ffskKZJWqz@?rCBpUVdm-T=d#Wzp$Py?_sm@Y literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBluePlus.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonBluePlus.png new file mode 100644 index 0000000000000000000000000000000000000000..a916f9c86eaf3156d0c87c5eebf113862c49c4fa GIT binary patch literal 1073 zcmeAS@N?(olHy`uVBq!ia0vp^vLMXC3?vhMr`rN4_7YEDSN7X1JS;{MpYp8F1BEyX zJR*x37`Q%wFr(8NlNk&Q%nSiOA+GlR#a>Z`w&9(|p|f?Pw<*ToQAxO_lyFBW@vd^x zU8}+e-fR=S;X?(0{pd z>e+UR-gnPbQgLhVrQ>{u3j)Ht=a+0-%=bQM|JA=L zg|pMv^t`TGg$nl&$l8eH4>wq*KQt4)lXBHPUz%w8WTxgvGpmz#Qa z4wI{T_T3N(ofjovL=|RlO=M2_9W`yAS#z!P@3jtrttRVT?ZT%2v3$O*=ylw`4;$rQ Y2|tYwXsGWq?EnRyr>mdKI;Vst01#l^=Kufz literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonCheck.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonCheck.png new file mode 100644 index 0000000000000000000000000000000000000000..79c0888d01d6b37a5846ca7a8cce91f9ea6b5aab GIT binary patch literal 990 zcmeAS@N?(olHy`uVBq!ia0vp^B0wz5!3-qlM(p_xq&N#aB8wRqxITa|qthCb89+gW zWRDWdH}-0vrr8G#0w0KL7v#2XskIMF-jf91JuVz9PJ900009a7bBm000XT z000XT0n*)m`~Uz0w@E}nRCwB@R_jX}K@i`&inCko&zlkl=>^Njvq%YG*5Fr|488RGJICJ3J}65vzmKxl#KEYCGbIdnP7M?E-u>bc4fIjdXwqoba6TaozMaCL)7o~ zpN3CUGgGE%`UN8>bd7rB^5Sy6vQ9M#AUI_Q9nyhJAnFvcX1zJ+4S`2~+z>PqK!6W?UGCo9-kpCtM+tZ2HfjymbtPbMF2raw zI{bXNvbd78le%7boX|+>Q>!W&?wNz9fdRS(uyk6Td?Al_j*pH@PAQwolE74P3fz~K zF^)`SLs@fqake-Z4w|hd9ru3qdfgtJo_#$_C(|>989JKGO{UT*5hL>2)qDX_bZ5@r^_(CL{yY3b(9C2E|wD^mJ z4}#Tx^1gS{VCy@LilMDG>hc5OIwjx@|g z(8W*%8#7DMhMF?yh`$$~IFa8Ny3O(9n0|*)55ayP9}A&hQrgUXj)GAD9S$ZuV?J3~4G(Mi_JV;TPiHMc$Xr*2L900000NkvXXu0mjfu72`$ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonCheckboxOn.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonCheckboxOn.png new file mode 100644 index 0000000000000000000000000000000000000000..2cec24f17e47cfe4f7845503142253952f3e31b5 GIT binary patch literal 1148 zcmV-?1cUpDP)WdH}-0vrr6Ia)ot000002XskIMF-jf91Jrk*SZ=200009a7bBm000XT z000XT0n*)m`~Uz0`bk7VRCwB@R$WL`K@^_3yOtHzT2b0o6ryB*8dwq%p(0^s1!+G> ze~>|vf)PPPL{FMM^iqN^`VjOI1eFy*6jJOOMydU$^{^FIu-o>K>uv9yY3`hR&)%Qi zdgyRDcV_N6XXbq8oH>_9e?|!*lv45^B-AwmSMfeIF2YxQe+?hLfc8a32-tArcfYSybsA+eQ z5$4?{6KHOrRLJl|%%n!Q7#ltPmQ`2xFT>7=NIohl; zRTvd3z-i=5#G46-mn*Tn;T_Y)Dxwvz5>$c@=RM4(+2FKd1d(|jZgFln1za9o2QD5V z5Yu8c(Hh)r*8Tj;?|PU;66=4|Lkd%Sc!m3Q@w!Pe2~tYZpZ9io-PUT%3qR(m-D?bp zF=jGE%n@E8(DbV*!Xk)H$?cjoRe8&%E(KqWFaqQz_R`zF$-dK1+b8r1U6NP_ZVZ?X zyfe|+pX^7+3Llj(ogF+@w$BcrVwi)73$wc3@~fqFqIK~5@bQkWL~=3(x-ABMzx%q? zZnV4bRne01!uGm0<|IX0HZ^H^iXLoQm9^qb7N zX?{=NhiC|ohbFayddgZTFw%9J*FBvtcbS zV!<V0s?C6wRD5O28;~&GmXZm)G{~<<7Fe~jDx3>jv=XL;+DMPIC z@rztGn+ua_%)*gbI7(jxcL9=#plunw5n7pP9o2Y>+W|@Yzu{en-2DTdcXABaqqeF5 O0000c5fI^%F z9+AZi3|t>Tn9*sC$qWVtW`+Qt5LbKuVwcETuc$(&$VRus9>0V}|HLNu%$c59Gd!|p zd1lY@%9$OQ*c@H8B(Z*ZR{fHMx-ID~t8+Wo758nboV>Mu#?GwP16gecb32b0_8hI4 zeB?jF|Araco9FCpox7)F=9cb7`=>70FlY7t&IJcL7aW_s;`Ef2rxvb1v})VQ)qAdP z*>m#l<2V2R{|CBp6pV%d{X-yU1Ai6JR+*9@zhGcG#040{H$A!zRM+h3;uunKYwxAg zd`%7lE*Aq`90f%Vnm6^?u>AY~+hfi;-^+$a7Nm#oyd5;%|4RPr&jnAuS-yI`#@LTt z^lEU?>)q#89#e8P6^WL7 z`N)5U{|z&?H_zGII(JXU%q`uE_D@}~Vfw<2b5`%~TyUUs!Li9JPET2RYT^1rtG1n7 zz31wdJtw#CJ9YQ*oB#j+16?`_Mniy}A;2MZt{-ThOi7SmFfaw;0u17t9$g2jo8sx> z7*cU-@1^5>hYSQ<1Cyg(Ot?_ZsVK7l|9_haHjgLfbh9$Od)0fc?8>XySKF)Ro&CFv z^>yyd_kTYfoLaK+X4_inC6hC{N@RLXi)H0EMFxv2%r1Sxl(P9-F8f->weL$deal(! zA|>}$kE`?Y46eKkmX+K7i-Gu_u6{1-oD!M$g| literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayArrow_rtl.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayArrow_rtl.png new file mode 100644 index 0000000000000000000000000000000000000000..7305cabc60131cbc8e0e40551c6ca15262ca8f93 GIT binary patch literal 110 zcmeAS@N?(olHy`uVBq!ia0vp^B0wz5!3HE(wfP(cQl_3Rjv*Ddk`p9Y7bkQywzakW zSMUivydp_sSE7idg%i)>DwPXIS{Jtk*-u(AZ@T+IjRlGf44Xo`PqzQNy%1;sgQu&X J%Q~loCID?FBgy~( literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayCross.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayCross.png new file mode 100644 index 0000000000000000000000000000000000000000..ae546a50e910ad0be5a31eaae9fa3b96be4d5f90 GIT binary patch literal 284 zcmeAS@N?(olHy`uVBq!ia0vp^vLMXC3?vhMr`rN4(Gu5)66d1S#FEVXJcW?V+*Ahk zJB(87EDZAJZukKeu$OrHxfX7`~gpfbjiAirP+hi5m^fSfc>7srr_TTdqh z@*Pm%aCUUq^S|?W)->IXpBbd(y?$L{5dB&3^QuPUS)NU^wqBLAUA)2VTg2U^VqrBY zIwdxGBK_eNk9en88kaD;2d()Y#&Ukh40);pW zJR*x37`TN%nDNrxx<3pI%nSiOA+B@g%sF@N-2YK98UiCS1e8~|HUKjSb4ie2@c;h| z*H7^}0=WvFE{-7;w~`YMu}iQ8Ok-qkIAN5;9x_4p>qU=mg1IS-vjSO_Rvftd9jKPU M)78&qol`;+0NaEmqyPW_ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayMinus.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGrayMinus.png new file mode 100644 index 0000000000000000000000000000000000000000..306c182e51c60c8aaa11382f1c7f74da19ef07d9 GIT binary patch literal 939 zcmeAS@N?(olHy`uVBq!ia0vp^vLMXC3?vhMr`rN4_7YEDSN1zhLd*=-v$nqd3l!ok z@Q5sCVBq=y!i-L9OlB}JFf#=Bgt!I;1!ZSvx3skM^z=-bGUY$R|4}d+0wX5`8ACY(&%dGl}lF~l~t8XAK!nhM>k6^UA$xsqR*Z=>r6LGU%q@P1)?84d_;1* zGLn-|K|%ZK<*R)#zN(6%z8cPJ_xK*7Cn&Bi=YanV*nYE{)#b!Fvc zuTY#%L2)7?Ci0AsFG1k_`}Y!5D;)0KyQhIS!$Twc&h0yTBoz*L;#C=#IPT!gvuKIS z%GQb(J;jpj(<_&+*r1F3{rfjXRzcR{_MO{37^TyVTNV@t?~^A_l#sK7jI4~MtB31c zV4^u0pA_Ht;lqa#Wc9!x)~6_VKfL=OdH&q_XCQSiUc9Ic3JscoE$D!G+8LOq{b709 z$<>LGY)em{IPLfS`}d9Pob3MQ7UrAqI`G2>iS1jqCyR@Vw*W)KN=-xUIQFCtv=krS zvS~}^i)SxX2&qHHhYuVM2kFBl&q%8lJ}_FO1cU^hQLVW$BwP3Z0R{jFh)Z5d-X9JC O0000t&}>6X&4$P0^&L#=0_9%2*gc5+=tg?fByc1 zF&6=GEDlRRhW7%o0T9RGHtf$|5LJrDAY=eia~X)cu^RU4_a9IgRge(wAhlCKVTi@B zzfM3(hy=qxYC(FoVi@-G*Kc()QiVDW!~Re&o&EUz=O!8E+{9`a(3|_9>4=|5gFtHc z;fT$@pp@MT#9c%h)(XoF*pdbVG~Iv_WE25|mch~(zC;TG(Lj6_Pj+fWHi%GmVu0qo u>ClWW4HbKeEu(_~<7n+PY8Z9^5MTfan@;*+&2*~(0000kD%c9d|W;5H2AtsBAu=vMhZjOvD znSV@PI_3r{qYt1^Xh10R0e#$d=Ui?}Z!fR?voAUHKF&G6?|k>1^Ln< z>+AoMQBF=yVSj(W1uvZ_E1vb?!-wag%P6LrOr{fKV`HyQOiZksnVFFe4-Z3TW+vb& z1yRM3kdV-h&oAQpHoOn6DAGk>3WS|&X=!;&DwWDJGBO}PKOY!|0hw&hED#9D+-`T) z=;-Kyk&%(TX=!QqyNWpv;Gt)kh#xZh+$AVy3mV^%VqraPsfP+X>dJudlCR ze0*G6SXej*^jqPIy%sEvuya7>de)v}5pg)~BFNSSxr=Lb_x_wlrysI1`hu7TqfsgicRS ze}tKtKuJNP$x#R1fD1w_8OS&f%_ z7K6S(i9qGh=eZB2>A!IHtUx*^jNoNmoIZh%ul<-yrg%NFB_A~M^71n9r&0vny?ggo ztSv^X)p8Fz#*O%$LLwPgDVg8i85~*ZH z1yGO2a~ofT1<<&Rj7Sc%5k7gY5mbt~(sKK!;M6abU>@%l>dix0Y=;b`iU5jD!Q^l_ zfFibaZ~#cc44G`9KE!z5`n9uz>`1i2h*4sNVepIeBrK>h~@YY86i<~z`gVQ+0%Sv2_{B%gZHL(D2XLpK!8iKL?2&T1F2Jw@sAMj3N~-?r(w(nk`(E4Gj&C zTrSs4b#-+)az^7LrQG)#jmFm}CnrO=y#am)&iJ!^O|V&8B3Ql=XTNAkNr!aFh5|uf zMvOA8xw*NTzJ`Q$fVlmXGIzGIv9U*|(;dg_&#{vv6%-V}#`G<4>EO?B&vqMb^<3kY zloE%=`Zb$iy=D`XKl2(C>dWRFA@ElmxR-7l92`7%^XAQ7ej^XZFK^_Y>PcN&TU%u? z7;3N=%gf5jl#$cJa>MWUJ8s;#Va3GR+SAi>;=+Xs-}5I%Ut~fHK_xu+iK?oqVmv)u z!uF`k&CT^=)QnQ8ToC4TIvpJy9cDb7B2bpUUh-dz2=re81^^2R``rI0P7?qC002ovPDHLkV1n#50T=)P literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGreenCircleMinus.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGreenCircleMinus.png new file mode 100644 index 0000000000000000000000000000000000000000..a26de02dce25c5e64b0ddcfe1ef6856d9cc833bd GIT binary patch literal 1394 zcmV-&1&#WNP)5WPmGFG4< zjt+1^!!m9nBtSIE2h=UNEin;eFeb}_CR>ajBrzoVWs$_i@WEvvBt|48eh`9D5^5qJ zl)E?wL!^{Tq0n%rw9w1j`ak6@v|L-3_#}rueS6ONJ?DAObIyyz>-EzAJ!Jf+si`R} zqtw*Y+^MN4Bc^MRkXKz4M^UN=ZrK1u9|xf!Sn*VzV$wX2&EAT7M&*GLznjeUFmlI?B(_S9f=JzYVYri~nT5UC^G5kB>JmEiEPF z=H~7Ios;yyTuVmVFnQg=vBEm6%Qgyyf=WtCV$Ym8a|3Q)J`xJ0OViWSR~X1fa}Fcj zH+@ES=O%gFo{)rf*@kU-(TF$+NmmQ^%0r$nLU|M-ajiwqaWy z@$vC;jYe}8)7OuJzQT#X*J0fDkPI7tWA(zRgl*XekBp3rM0{L704*yk%f{VOCnO~J z9`-HiaZa8m686CZ*{s1m&&D(+D0|n}*I(j0=fCuGHiK`go@B5O9{@g)BMt6M|13mz?0s0K4k9VPNw_6%maVAWA22>DUgooK8lb!fb z1)V7#PN0tNb&=?cyV)4-@Y}Hu|3FFPE3*)ErZ$_c3(<0cmiVEDrAI!6vhR~mb*2GO z0p(E5#~c(Xih{vnvAAbvXSrR`tGer_zAk=YAM9&lVq(le{DN3p)uiyzw*oJL+ zpz+TjS5k~dR}9*T28Iy6QoDBbq>P8;CU!coNhPmO`RLiL9uo zIA2&;cn!d0bR-RDJZ~qq(l|CYrf+O)91$T5w2R3Z^cs2+G!QNqBUg%ZX+YL{MCVRX z80tFeoi|kI{)R6Tp%PL2P(hp@`!9wc`kw#;09m!gQZi9xc>n+a07*qoM6N<$f^Sui A{{R30 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGreenCirclePlus.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonGreenCirclePlus.png new file mode 100644 index 0000000000000000000000000000000000000000..3a5959ec7da9e79b941b473aec6c0820a8630a08 GIT binary patch literal 1428 zcmV;F1#9|=P)Dc#_lJ-h0mZ-E;4G+)A8IC;i_faMz7atXq6-QNC^9nAHLtUd)8FQ9TC&d3vVGn)mn3_dlEcqX z-l=jr8~zNXrKRx(70`dzU@#~w7RyHv+dCE%fRRH(L&LbM=#r8Wl1LHoX@6Hl@hbR9IN3?CtG+6Tl{H{^O&1K4&&HHTBc#>S|(s ze*OWVb%yR3YDs4rC8u3DmRW{nStmR^oXX0|Vo#qweGO(`38)I^DN6ctjn8*$0-Q9T9{V^1l``={v44R#zDb!&)7_6+YUJd z!H>P^=o;&=E>l86f?TCiJ&EC^V4yE?AaFWNnI4jM`ycFH2*^I50oGZUZ7^kJWhLS3 zsvl@YMMW-hOPQFM=$af@)!?2SLD`#v$*>J3M6(Kco{M3OPxNkWZN0!b=T7=Xlh*GT zgHbR!w&4PRO~i-=PNg!G2NYE#4GHa0(C=tHk|IKgigZ@{1Yyi{*(5EmQ z_kh~%cByy8nbsdFP|@Re5s$v8i%7QOE7IpqF*%Jode}vx&j*auP>J=}hMQ0lIc1i8 z?$l&5b;DaO&=NPOcJ+}z^MN!ZijYj*z!UDG| zdRcunXu5=wGR$m)ZB0*4PdFToOs<+fps2Y5Jk^bkjuL7m#_}vMq@_2j5jnibOb7cY{?9v zcQ!UQ9B6NZd!Tcwi}cmydvqbO*vEM3x6vMU&#?^4vJT%RY-!+STxVzJd$7GL;SO-5 zpK|2xx3#s6B_}7}-(1h}soRN`Xh1W`jLJ<&b zb92);FfcHU$5{q)a(i%a@RR1|<{mFV=W(Fkz)E-+Q&UrO124gAsGr=B*Rcr!Y=NE? zK_UT21cD|CDYuDe{TcFixZZ$wya7)FbpuPmQ6fiFR#u)VE-t7eKrlh`%E%VpIHzX&4$P0^&L#=0_9%2*gc5+=tg?48P#4 zML-;j!xE6;y+CXL#Bn$cWBduGO7R$k3_xlw193N4FM8hmeS#YlMo)lPh{$k%2gEY0 z7GJ+(y6hW+6A1<}K-GfuY{d+-uMFyBqzZMchB1DnVmf2|!f=xeb8cc!8ebXqLDLaG zkp_X(?!)e~Z{U>O3dCJR8rBNS4VW(b1}3|q2{MX+LCaui3}2!JfoLE;izhp^A{#^~ zJ261>-gIb2mxhWx#g@^r=77 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedBall.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedBall.png new file mode 100644 index 0000000000000000000000000000000000000000..aab2da6746f7a7a289973ae84ef76b6b019f277b GIT binary patch literal 348 zcmV-i0i*tjP)Vbn`!|G#~|NrpK$u}8r7@B5(Xh@VJ#0$xf}v1`*0m4A8tc u9h%Xlp<++5Wpof=9Ic&34Z{uq0t^7Z(oWuZ0jX{P0000O literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedCircleArrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedCircleArrow.png new file mode 100644 index 0000000000000000000000000000000000000000..55b01672d82d90229c0f5c1c17ce14f9fe241e7c GIT binary patch literal 1524 zcmVX-ixA11p3< zTbLlS4Yz2U28OHWUK=yJJEU;v$~tw3C8MMXt^XJ@Aw4s#jAv%+j*^werK>GgU^pr;-h z8Y=1N==f8s)qb?cz3>TXOa|F|7S?4Ow&g)%#zq8P1KexkLhW|@IYedx2L-p$ z#_!?8E^}(EIZWw$D@mD@LTdC;U6;h?9NYB1`JB|HtO|BE+10|7DW?Tk!I-S4aL%2W-FKk^Cs7}*|fe&6k zDisHr-cuhU%AtVY5g8Ok!8$Q9;Ts+v=HrSCM-KcaAUF2GzWVz5y8V9t^PKuJC~B^V zeYJIUbzz%CN~_#W8_IU#a03suW0Qsj~c4T_csY$fhx5k!Nf?F0knO6-s_-yEMz@=H|x^hr?Z0S62nj zc=Sv;_FZPP`S|SYtRKf4VIL%8cCw-TWtsDMK-LKXc_Q#-#w^os-@aXk&kG7Z0iw=R zj@-qTmKKY_V0at-uTV*JMMXuDlj55#H2X&zjkf$G?O|wHg>8jWY8a0mBz;BMvLgV0 zM#EXUb8v9*!mV4kdV&XeAbNSjD+kdxG&I!a<>l3*7OVH{*`o>F9@c7JuXp0cjT=u8 zI6EvB%gIZZE?p1a7(Jl@#e*t>;0?94wWYW{e2wyG$j{IBV%CC2qlpWfo12@sd-rZ1 zE@%13N&CHf_f8=`?nD3st3e~d0%n+6UtfO$H^D=wpL`(CU=Sk213NE@iUJTVf+h(m zH-~8b5&GY8y@5C)fonlSU?n6eDB9}k>SxQ!%H9CbgcB))Bc7KNOKI!r=`lApHd=xZ z2D*a5DZ7TQ1&xHOgEQ9z`^t!@_XnMOgTm0ImF~Rjg+?FvsvuMmln_)5_E-HEBLw|N afB^scr7dlxTsl&q zToi_==%V2^2MZ82;l;Rwxn)bn3&vzI`Y>aBkeCph4`VzSmG_Yl#a z!NI{}8I_lp*O^QvBc@xBv{&8H(eV_TLNQmb*WX%OTf4Ejxp~&>^$Kk^8!Ij@W_U{h zsMs?yGN$nSEBro*?}4-;Jp`5s*qyPlv5$m8p}451h*eitGr3&OM52AOy}dn=%jGIr zU0uDrva<3{et!NVkH>Qp3z$3V4J3s&H#b+#&CRLdu$({?6{1Pd6N|-6p-^xFJ@L}g zQvKA_)SptR^xNIt-H+3TBEpi%$;r83FqmCmU(aMR8TZ`1u*e*mN#?a!*{;>bJ(HG} zFxj)EOmXo7%X+bjm6esz0wu72e|dRX;`8}FftvS7D1frr+1bCaSJ_QXO-vvVFb^Or z_kQA_2Zz^W=4A5^4F^@-xW=BrA{rVRFi+g8_i;F+5udf%@)zxu8 zugSuUU*2Ud-QO%62p%bnVHF2T3Qr2IXPG1_KicKPSREgBIQBk8)~UXm2*bUJS%GczbDXe04L70flt9s&Xz_&L4jDQ zRGz`~?ZcpNQX)_}>^#=7okv<0-V2;a$d-K2sH&I2LT?txE|$0CfXeis_RmG!O^~V>^!XvG&9fCbLB*`|%-*+fzI=ppQnC zSR`B1CX9^}iD-rnAkWNk1=r3Iz; z91cea#~Z^wM8SDYucri(P6SAM314bNnLj!@`XPRH3FrhkaGp};?hXwN=~OD!2bh12 zP9m$Vt>v85Js4t+hZAgh=oc=lUAq0umcLTXl}7RPD@@VcxbFzSaSWWL=Pee?osp4| z1^yt9US9;H6tf7bCq;L6cV|UKMHhOpxV5!a61hF38h*duK0G}9FA}Flr_+8GE z-xz(71to(DcyL~4XJ-R$58t3Yswyih{fJsFkw}ulwzjtH)6>%iT+S*{lg^o$na}$B z`!zAZ@KMlMupANQc6D{##7*!j`X?R8n^;5;;)9(ZNg@D5iloUx$!#H9e}?||)Ndd= zvA|T&2v`Wo;ziot-u_%;W8=F3mf%EEQpVHk#H%zeEG(!81_pFIgn%ACIpeOOsi3iN zF(0{vp9^EMKEyls^Fq+Q!|uH4LJyXgh=&Szi9mz={K$VXBGCT?7yxP{Jr7OA96JC2 N002ovPDHLkV1myyfPMe~ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedCirclePlus.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedCirclePlus.png new file mode 100644 index 0000000000000000000000000000000000000000..f68f2270752f3f424154da35cdc7a9edc424e800 GIT binary patch literal 1395 zcmV-(1&sQMP){#K}peQl?U=IEI{bX=$l; zVq)TfTrU4|Z*TAYLxaM@qVe(ZnLr?rSzBAn6bc15@0y!ucHKDhSeDt|@(MR6FD_z= zXNsBX+*y|KLIo=+DWMI@p#QejYL$7t-VY$=NeK!-#q{*_pSY{chK2?v5{Z}_Agg!3 z=Rjl0V_xKV>vtUos=0oZJ%vrw)zvA-#>TDz*oDo17^^2Zv-$b??>06z@@r~pI6#lt z!c3puVNSzeEaVTQWRf9S(n(KGXH88_s;sQ6D=_<7QcwuJvbeZ-kpM}_WnN;&Pr8}k zu?wSq0iW*wCc@G4BuhG^OPhwrg$TM%n3p94bvPWi5SeKd6hzj(Z(+m{2S^-Ev1_D5 zx#HaGy- zM2vXhR1rZ%Kv6|XkkAnY_ut0IxNh`*O3>P0eu|r$I)71M1E4N|7GwB00_yks#nBbV z@koEHE)uJcNcQ2Q5Zoyy7f?qdLdsK>$8KNIHc%2NW!40D>T=&mg@xH* zF!&s$z5o<8HvmsfdcB^ZRU6pg?J)E7 zDOP>&?va2=mUKv$Y-qJwH{#`ScX#(tqB2Nj#tosj>~?z)?Tz6cBEUHfuL_KhK3x{! zFp*3cknR$;wD2-_czF0-EIUQi0b=?oUDV#dz<@!c(Y%B4=cpu#>gsCFNX`8LX8&W1 zSqFaPqS|SA64}a^E4kDtympzX8teHh4zW=Xdg&R9#d3RSXlRaah;=;nhnBuwelpwZw`-g6m07Dq*WkT>q* znLziGy?GA{8k=4c9#q707&O3-Q~rw)2K`rn0RTmIA~UgsD6aqj002ovPDHLkV1lbU Bmg@ij literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedCross.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedCross.png new file mode 100644 index 0000000000000000000000000000000000000000..571288bfa24e88ace8469c548efc1ae4c53df0c9 GIT binary patch literal 293 zcmeAS@N?(olHy`uVBq!ia0vp^vLMXC3?vhMr`rN4(Gu5)66d1S#FEVXJcW?V+*Ahk zJB(87tcqTHeg*;+u$OrHx`Kt+SUV=KH3kZC7I;J!Gca%qfiUBxyLEqnf{Fn?A+G=b z|39{N?cVI5t(FqUmM-0!9JJL?;JKH?Juiv1K#{deXMHO611e@L3GxeOaCmkj4amv# zba4!+xb<{GAm0H64(Cvbuy^$jI8Sflx8~pQap4j1CApgNdV6PkB?y1q5xZpVmwI)egfC5`rm9!BEJ`RJt$dnN;XxhN>VxVj7sp@E}4|V d*je|la;}`uZ1_?8&P1T444$rjF6*2UngIIaWyt^l literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedMinus.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonRedMinus.png new file mode 100644 index 0000000000000000000000000000000000000000..ab25d932c310d77ab706eef1841dcaaa59b33d29 GIT binary patch literal 1051 zcmeAS@N?(olHy`uVBq!ia0vp^vLMXC3?vhMr`rN4_7YEDSN7X1JS-;W{7)AO0EIXU zJR*x37`Q%wFr(8NlNk&Q%nSiOA+8l%B3@C2?E+GhcqKYyRJ-KVy5!Xt^Gk0Rl;0z) zut!93gNgl7akW#Ts;9)%&Il@qKKi7(#cG;G-;CyN5=~XX|&YHG7v0d_Y z;MooDt}d`P%~;2F_R50jSMR>=t#mREIsLIkPs9C11(#^=!iBdaq_Q*A*GxaaS6Fqd jIB(y?v-0&7Z>Ha33`q4qprzWr0~BhWu6{1-oD!MTn9*sC$qWVtW`+Qt5Z4MW5wEDib^)nLyb>KUs$FtwUGnOS`K7lD%I^_Y z*dwC2!NmTkxY{XE)l*_>X9Shb%Icoew>{(4#eEgQJs>rdGA#htf*9H^Qpx-{Bw z$0R><>-~G2ck!xuY))9Cefeje`Rhw8H_q-dU@Y5wu2fxO9L;y zd|`axU3sWx{O^PN79JKjrh93X`0pF{K0lXHet0eS--nIzub9ic0$VqyZeRk1pr@;! J%Q~loCIFA<$ld?| literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleDownArrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleDownArrow.png new file mode 100644 index 0000000000000000000000000000000000000000..bb9b37707c1872fb6999c563d43600bf86e5217f GIT binary patch literal 1353 zcmV-P1-AN$P)q$gGRCwCNS2<5xSrop0Uh&E%WyESA z4p1NvG$2ty0kjC2Zhkj_egYpBWBOp2uh(Q7gu?Q@70vKT%uqFry7`#2N zbG|pa7lX|jjpj&K&o=jb-+5<8l}@MGeUeJ0RDnRC^Z59<{p|d#C6!Fo$uYT<|6Qe0 zF`ZWDm(< z=!U~#7LJ73kMkeOv#6+Oq`a(rke*+kMI4Prt36)NJCDcn)@(BCtE#G)$z)$ zygo0UGUe)#xGTR=JXwBzJ}W6HQBI~L5(!3L zV@8v4_>JSu?_|V5PU4M?jZcBAz)eDg5U3FYinytEFTiYzOk{9m6nR!WAS*L z9e55{VL{>NhK7dUvWR^?pVPhX{_}OsYrRgV6MtM?U1e^!`&n*wI2^30sY!f~L?Vd0 zOxV9xR#u9Hldi9?Ra7edWR+g4)hd~a<8ry!?(Qy1>RAUm(B(MD6Pwkh2M4$WF_lZ_ z#l=N0rN2-5<$7~+&DTq61d<{F;(47as{tT;Rb$z;-I)0W%S&PhQW)Aiz3#* z62w$3RIZ}dB)B*;E72sl;`a8o(gvR@xKEiY^nt~3(cd$>q{N#&Kbb~Q>tu6tb0X;; z5}IIaZ*MQFyfU#fMS>-;j$cHgWtIlqwYjd4>dgXI zj>;5Q$t8%@l6scUP;Omwb8}8G#2TZH%jD#wG6Ztn1qR0pg+l+5Nz$w!rXf9LHk(H< zV|kLn(%RbEoPg8Q(+b(r(h@s8JgW$?q1PJU?T9tlpG#HimWNseF+Q%9R zy%B3`Yh!l1{njj|{*2gu?&|8gwFqeV2Wn{pYK^*_2>M_-Cr6XVL2S|VQP(&Sj8Yu9 z6-!~}gaav##cCNjJ#E_V#b19rY6U5Ai!c_gfMq@!#5+;hHpeKTXj`T05N$=TVNA(>1*+TPyo`*irJ=d5(* zSMzG4wr?;P$YQqaC`KhxQ(d#t)YP=(@p!_DqUc|$oz(+AJUk41-2NEk=cwIor>d$d zvRBv%p8*KL*-R!wnQVqWAAT0k>gwv*=BDPi{CsyS;9M@}i*LoB#^doPPKVRl+S*D^ zr;~0X>2#X55?gqxUa$AHx78c6*=(_Eflp3O9&SW8o~x=l*79=;@ge#iVdW|DcY+)a z$4r~A?S;$bdan!2TKYajKK!0jb7O7ZHZqw^^dnL%7Kyz^c87iD!Tkrnu@W&U@Y>qi z%j8M&87wuM&2$%1C=@6bk5Sc6Rj)cbJAeHKIFU#MqMOk-9209rMFriZWV2bsUA@9d#Sy>T{kqi)8qD7 zfx*m}=6DML1IOW)&A&GPU~9=@vFK5YCMPGUp`n4gy1J;Yu1@^EzrT+V(eCapO-xLH zO49TBe4dyo#8wZmvVRJTkCVrJh$%GYf*}PBg+eqwK3)dY-m9&xrT+eYp}@w*25}q( z&o2w^2FCI6aUXvbz)GoD>fwwNF21}A+W>@HxOW=?y` z%5d=gZns-%Ev%@oucw-t8gb!O0;>=zcu3}QF0GVT^M38Sl1irgp=_{eE3b zFE6&|y85~xYd;E}GVKJ7pomspk>#*VD5*-8&pUs5YX(xev-xi*z()euD_$0X{ZZ35y3g0!eTkV7gV zP^B~$O))Nz!~|OyKX=#5c4pT$1l9?GR2_M=%m42`-@N~UQ4|GA(bm=$6OYF`R#sNp z*Q4ugTk=+mAPTjGeTHGc$QxH#jty3nSIoNI?ir`kInAKVnTvaSss_-aB2QB+`e-gqQP|lPJ!~KSK;K_C*f@C z8F2DW-E$<<>2R6|11n<$D(Vgfi-9oQp-WD~~5#zs5-sRFZdPHw}DQ(e59 z$-Up+_(lV*MNo2xiP>f&qps1O!DECg!7J(+Jz0d2N~hY2$(6}uTCnZuCdbhHC4d@M zvlM^8GoT=tV#+fC^NhNuSXhuv3S3?u)|EvV3@|N4;6yS}OR?4a_}AZm1LNx^E%!MD zGUS1b+pMl}#F#KP24*66^nnp0z8Np}d6wKjy;tw!=)w~%k=T6UaTGAntTt+3D$^dL zg&~oQ>&haGofTs!H2arHdh&L!8AuaJl5|^Sd2 zC}6iab*qC~XyH~78$b(`?awuIw7PnbllND6~C8@w$6>sXw zA`FM!v04Pi&JxTB8QqURf9*3+9?EK+0{#e;Auu7&VqOv4W7624GXS4fe4;ChFhofV zZkJOwGb>~T-P*IWHaHzP4Y`mAObX2wHFp+SwHma&hzwseol(!|$s!DvVP}gm=2&iq zUQ($Pl$Dk3iA`_KdjKZ@t}R^$Fk^sitkyh0Q$k4~C|Y{9=^S+0J9OiVy+X5+WoL@_ z@!Z@TgB@iwol5u8c(XGBcG9Mtfa|dva5r`r5~+lmO?ImTj=PS-N3IXS!P!e@cq|s9 zdwC4=$=BN2suTx->FH^|l#{;4naV`1?PU^q62mE=n?LC6?7X#S0-2hcx~MS9Ig8n% z>+*vTxfs1ku^sB_>iY7jIxf6mOB?14Tpf-;K8n*}!3mVu?y!&Mq}=c`hrRLf@m8DN zb{^g1;|;ueqm+vIv$__!m+oMP(=nP%Bro*z^vpkZyq%bsXpm*OpEvS-cx9TXxzjAY zAEG9Ka~l|VgCL30RlI|TySuv=_cd1+Xk=u>Us+WdK<#^}rDEBsGZZOOXs^@;$ud+_ zWmJ~DH1_z>=JGBL8r|qi^CrQ^Uu2t$t*-Um8 sC(0T0&NNzi@PA?cYhvMlqJIS#0J|fsC1gCPjsO4v07*qoM6N<$f=5rN82|tP literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleGreenPlus.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleGreenPlus.png new file mode 100644 index 0000000000000000000000000000000000000000..a3ef9303abdd891797f85fe2e30922f6dd51a3cd GIT binary patch literal 1065 zcmV+^1lIeBP)>{6w0*M;2 z3R=U(gv47zdLbs-TM5Dc!FXveJ$UxeOM4;w13mc>n;s+{%BA6IV&Xw!6OgK@T2T<# zFJS2mhAkMEFEyRy`F7p+<~Q@^&2I*(R;v*$Q51#B=ktNn(^LOd_G(V4DqcyJ#v0!# ziXwVee@5%*q|@QtbGcjzo6Q!dXMo++^D06LUky=*aC1|}ybiN#_e-AJ)mB*&R! zoF%v09d%E-BL;&Z)e-pi_SSdw^JrC)q|n5R2?Co)KLW;+%&!bFo6TEOo~bpf)w-_< z3|4v$lZPKgNeoT7rwGF^9no15U!&`^D0 zI}dvG7zgS^-H3r$jeSfmpYvl(@iIN6xRZ3V2X!MxE|>Ge>-YNqs+H;-+&I#X!P-f; z`w*kVm*!Ms1VQj}9M`?KbnhOc0JRcXlD#T$p;#DmI-M;F{LGuKJ$^+mXnspnV*h~k zdIIUH@;rk_h1}aue0zyMVl;<^=_O8&iT`~J1}#B`c`QYC@)#+!QPt|eW|R30O51dE z1&WuxYAOqu-?qHBTML=2K4bahtlXIj49t=gBw-rs>|?!ZCxAg}N-e1-had`jk|=eg zzJ4jQF%W~M=sneA9j!~?L#b3EMx*grJO-|~^OB|$Dlio3IP^^0P>+L{Yt0wnDS**i z>`dSeZNq(vt4Hng`D&sdu2+?+gkC@OQKL?!rbv8=Uq`GK0t^HK8x*0UyvW}ze4^@v zx`3a-Iuf0qpKodYm?lb#=osBN97_l{X~p~7#TU(#xgS>?R?fOrDOVzGo4uW#9iPQ& zSp`c&EW_3-O0O|*9Iq_PgtKv5#X@myadC0KV|yEm#XQw&b%oWl%TO{0@WOSQ<46+F zp%R8=q_SL&LJf{AEG%?xZ<}Rvb2B_VGQ0%V2a!@C?dm-g8q%Owq(Sry46P3^7EfvW z{P+2KI2`V+p>LMm-CYX22td8|8;piIsHtA)oz&6>d5In5nOv5WkQsZ>mnYzK;^1Zf jKVhC*X!4)ruK)u86p$BuRY@8U00000NkvXXu0mjf3%%;> literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleOrangeButton.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleOrangeButton.png new file mode 100644 index 0000000000000000000000000000000000000000..17d72e0398bbe2aeff6803a08c4eda4d7b7d68f2 GIT binary patch literal 1422 zcmV;91#$X`P)&v(x`_bj7n8tf*8LV?-b z+&r_iwA8g8Uk?@Xg$^~NHXH95h5?(^w#;(uOkHi=w9n_8@_0NkmSuN0YOLK2I3ABj z?=Rgyi_bn$6v6BDf+&bUV*(_hwUQ)(BulUn-_W16wY8%yzLx9wyzyATilVg5FU$|j z&(HTe9ZtL7?+2&T3Hy;$Dg_IR3-nY2fxwl3KQP4e{M??vTU%S5cmKG1QB~E*(bl7Y zi{K!Fn}@|e7s26hj0D?)ms~E_?OlO!mu+`u?tG}IN+cKvg2iHi!$>Zd17rnDuuz?Nh($zZCSt?|^@QDC3zz8*_>&T|Z?XeREX2vj{w+_G{#V^j@o4th*2sWF|JXpT}3~pWeE4ZrCo*wk%|T?6!W;z0XUa~6)6Ynu}`3h!^zO=RW`^rVI&fXF8rwjv-w;; zgb}AxT%}0wXzln#}HOP1vhEPJNG5g-2m zn#4>66v0>=a3w8{i|+)c0AfJ__~x>yEy6&iI?BMwRI-`Q*6ib%pTC8ty*Zs;GESw^ z@Y3*}=8EqCT#N$p!guDth_Sh~S+4Ue(LjsMKAv4oVnAv7iB`a&?D6(F`i6%*$XK<^ zY!SxxjIkKS{z;0Ny+`LPw3BQ$Yg!^HPgi6GnjEwcuSu=wS-zl^j1}kTNizy?AYgqr z%ML1`#;vAP?GPQybhVk$(|)oGe#Jbk0BDdejY;#RIRiYY@nCB?ZEA}!+%ETW85k?e zjI7G0A3I)n2OdaP%+nH3ftmwN_n5ReF20jB79`dV@~QKtwg@AW&CFENNs*^jMK#U6 zg53?zN8W^cvY;C_yd*GPwF>A1?FjJCp4Zoy*&+;ZlR0&7LlOO~A~17p#SVb3&*_i-QP z+V%i2L^^Q}m|z%S`YQar^dm?al`e7+>^yM3Q=o<30-5)if|9q?nP3+)it!ZN(Fnw1 zv1m4z{Q`R`JC(L4Da0fmr;0Sc+TGoKqpAa$oSghfW3&q*FPc++03nL8KGWF__Vo0; zyCaW{0n$9gS-2LYB|=enSa1R*b-7(5xomFeUz@$Lv9V64%Xty$iC8UG{YEi6^S!DT z(Mxx*+v6TdB~zEe;qdJ}+uQN+@wR+EKVY?4`|--OQ@~L#y&s_>fqffTtQIw!$zH)b zc&N9xcWz&OwIRd9!_oSN`m?zEJ}Rl0c6tv*8!^f&l|k|hH>xXcmRK5HdAM>t8jU_) zL%&@nCMFp4;*8tv?&1YLgm-EO_D+?n4LeEi5$`fpBt=%Hv7?+qc4Fw|!T-Yi*TTa8 cB>xC708n$de;Ll4R{#J207*qoM6N<$f~w7>Z2$lO literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleRedCross.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonSilverCircleRedCross.png new file mode 100644 index 0000000000000000000000000000000000000000..732624344e6379a22b0e4b9ea9ee2d1479a82449 GIT binary patch literal 1361 zcmV-X1+MyuP)bPC^wSeu{Fm&Fa zmLv&UT3SG|Ne%Y)>Zsjj z7kxe-*zI=sCz4DiVJ)&oPu1`DU-J9>lNO6*r6D*TkDtEz+s$!RRRbs6PXbPY`w=uA zB7a1{X0y$7c63fS9FD7X!Dwa2jqr_+GHNE!>F)$V5a1}1&*uTX29iyhIrZ?VH_!;f z%6aVt2aVB6eeFKL;Gn=d(vNhsx3`lQ11l>lW7UQ+a3m55-rl}FdgAyAFqupS1@P-S z@UuTQ2H_YQt8XJ+-c~Pc-`O4|h8`>=5(y5E%1E=bSwsQ-o}0p3V0q;;;9_a^oqMjQ zrd!QdmO*?AgIKnL^7*S!=zgfuM>?IdQzQnSjA`6&2H^3y^zH8M4!c|~2Gy+Pu5TEi z;@K$>zW(XJN~w)O$zU97dHGW|SL-L8q?;JTs_**4XTL+0eU#S zTgIo$P%T>H3Y%*%4s{b_Z*Q-+;_5=a(1Q^N)#q7#_DS}X-kveE>%XOUzBE8d(iZ~d zxmE4NNTpMiy%H2f>6T@=97t87oOyz^+uxlv!fBNp#idbs^87HUI0tIz!qf^`HQT)( zT**YM$K$C9*5Kp~$9rGF-+7W8dH|X@_X1?|_lyYx9FmvD2k2AQ; z;9Qxjllc43gMwq=5FNzOZ>OLo`$odXa9php*4Ic!b-zHC2ZL{o|BTmhp0Urg{(T z3)jG12bvswwDMgI*S_^*SYF7eU=c0LmCR-0O-uBWN~H|hCgXQQ(IFZp-#I%3@uwcC zjG=dGGn7kqu{>9&i*z#>&o5QLn6yKTlNhj$h2C)op??1 ztroXaEN;B$41clVM?iZ>{ty&hG^-P(jcvjBA0$>EO}}6)}Obgg2CXu74&*pSXkh26@7SL z_gbu$9=ub#v39ClZB$9NxLP)|xokM2WR|g_Tte@JaFzG}7v{ef9{wl!OMn3YE!jX3 Tf?3`&00000NkvXXu0mjfmim>L literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteArrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteArrow.png new file mode 100644 index 0000000000000000000000000000000000000000..92ff37e262c2a8deb0ff84f33287800e86e629a7 GIT binary patch literal 955 zcmeAS@N?(olHy`uVBq!ia0vp^B0wz5!3-qlM(p_xq&N#aB8wRqxITa|qthCb89+gW zWRDeeo#35|If_e%FAF`x$VCgi0|p@=d#Wzp$PzOvo{(5 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteCheck.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteCheck.png new file mode 100644 index 0000000000000000000000000000000000000000..6130ee3a6c0f82df640ea36bc8333c2a60ceb517 GIT binary patch literal 963 zcmeAS@N?(olHy`uVBq!ia0vp^B0wz5!3-qlM(p_xq&N#aB8wRqxITa|qthCb89+gW zWRDyRxz_{b1{&M_k RRyEKD22WQ%mvv4FO#t7XRNDXm literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteDownArrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteDownArrow.png new file mode 100644 index 0000000000000000000000000000000000000000..add30b8aecfa7d843316ed0718fd2827d856066c GIT binary patch literal 935 zcmeAS@N?(olHy`uVBq!ia0vp^vLMXC3?vhMr`rN4_7YEDSN2=n{7m|S+OI0&fkK=G z9+AZi3|t>Tn9*sC$qWVtW`+Qt5ZC_<|A7FgWE6~szz7V1?Puh3fZk>-3GxeOaCmkj z4am{;ba4!+xb^g;q7Z`u&w&k}{`)5fzCGJ_9Vs UmdKI;Vst0K;85kN^Mx literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteDownArrow16.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteDownArrow16.png new file mode 100644 index 0000000000000000000000000000000000000000..9dfb2c5716350fc81e72b390a06b6c8c7c3179df GIT binary patch literal 229 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X+C5zyLn>}1{rUgjo>{e_v(d@m2af>jqw@}b8+*xonn;P0-GZ+mMI!%%#bUFG)u zq|LI^xf9mS=(zqq;6R7EYLnA%xhZQ~PBVzvDE<>XDJoy6nWQp7ykfx@@giOcrb}1{rUgjo>{e_v(d?+oVn$MDZ`SDtR3=6CmNUp z`Jb^ra#Q&CL7p+-%7e=hy~`$QFjq9}VCuO4?>KM3mj&&N(gL3yG9NMU>2oj^a$Ck7 z5EaWmY05C$QKP6wi_@% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteMinus.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteMinus.png new file mode 100644 index 0000000000000000000000000000000000000000..ed0f44821c401a47d533c8b17736b05b0e29920c GIT binary patch literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^vLMXC3?vhMr`rN4_7YEDSN1zhLQJYWr!7Az0fjgV zJR*x37`Q%wFr(8NlNlhv0G|-o{|x_uz$>aa=2e6XP>``C$S;_|;n|HeAV=EM#WAGf uR&s&_YYD5*2?pnBf|3EDWgGtN&FW2MTc( zctjR6FmQbUVMeDlCNmfqm>B|mLR`I~ivKhG9|fZ!Ffv1c_4gzxU}1{rUgjo>{e_v(d?+l=((OM28TwMdJ@ef$u`O z0vZAn4gS}&{NOpV*FmRc85`?k;|7i94nv0Zj!TXlDp%OYzqFH!S)zjbh^xaH&sE|M zQrZnO+OIhLVK`D6V8*O?rem7;jK&%49ri-f20hO9#*8cy3`%?+yTWcawE*3~;OXk; Jvd$@?2>``2Mz{a~ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteSearch.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteSearch.png new file mode 100644 index 0000000000000000000000000000000000000000..eb806d1840a1bbc4d4841823f527b617dd4b0c98 GIT binary patch literal 414 zcmV;P0b%}$P)y& zstyFgiLn${LW+XY)1kqM4}j#SK-saBq+T;9y_LxH2vcWFiKU`Qz90s`5|9ujmcEA4 zibPrpbL2ZpEIox(C=gqCfWTQwvP>*e>Xjpq8s$h$z4-F!c@p#K7E1Fe2&(|`bEtto zfp`KC2LiD%l%4<;{|{w@)J~(+Qew;AjX?Ygi9d}}OJO(!8hkLrUqSgHQ2Ci?4w*&` zONqhg7Eh*!rN|aP1Y$FKSqj2MKrBISeLC7O8?|(BTM7_h0Gf;(7%WRoFaQ7m07*qo IM6N<$f)bpXga7~l literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteUpArrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteUpArrow.png new file mode 100644 index 0000000000000000000000000000000000000000..78c1331ff014189b438442a2cabec60f1dc28fe9 GIT binary patch literal 933 zcmeAS@N?(olHy`uVBq!ia0vp^vLMXC3?vhMr`rN4_7YEDSN2=n{7ibLe4o~y2MTc( zctjR6FmQbUVMeDlCNmfqm>B|mLR|kd{09P{l2I@k0wXX4wx5yD0eYLUB*-tA!Qt7B zG$2RY)5S5Q;?~oX3mF*I2~ChZP+9yHgxRPXA}kneSm7^h}2 UB)5vTmxF@N)78&qol`;+0GD1jT>t<8 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteUpArrow16.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonWhiteUpArrow16.png new file mode 100644 index 0000000000000000000000000000000000000000..06acd2926f4d210cd7dbad49f554332be3439dd4 GIT binary patch literal 212 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X$~;{hLn>}1{rUgjo>{e_v(d?+n7L)aj2vdKg%ausM}#{T zIn?l<3S)Y7eaWr`OdXXAB(`fi=pATMZTRuIo`qqf>&BI-haQ*9so3R(Cm4oGb?pCp zoFyXmV9Vh$Kb=Q57YYu(W}5KU{{Le(iFFAw|0)|57&r_VZeQDQDIk9TVxS8cJYD@< J);T3K0RZ)5Pe=d& literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonYellowStar.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/domButtons/compat/mblDomButtonYellowStar.png new file mode 100644 index 0000000000000000000000000000000000000000..eaa80d9966de5976225c3a5d2be855ab2abcb680 GIT binary patch literal 438 zcmV;n0ZIOeP)~3?8R_8DrBDk&;2X(7 z%tTqxGLRL-WCkxQP}3hIK50SBg3Q^GtWMAc^7daCG~@oDiGE`^)uHhJ-EDTfdOhae zgg6Z3Qv_ZBqy$ifsDeRe&i@Y+z@p+jkTRsAg&?!e|3?5wAT!?oN0%U= zYd)F54brpVKQ0ACm_TZ9V+JP~mcoMDg-A;e|0kq~$ihJYnACNN%!PNTSt4yFQr#wM zl}P7-icEm?KO!xD4-FlPe7YEmh51n5D`8Q;5x;T7r4A#s?6BcKY9b3j(-KH&>b(!7 zSfE@xteG8q5lWGz6QG9m{U@yU0g!Tla@SK*I3yCx?3lRWKSUpPc}Ci`@E-sTR$!z- g6Lbi*@Bso00Ol&YO;b8__5c6?07*qoM6N<$f=!FIVgLXD literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions.css new file mode 100644 index 00000000..c8b658d0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions.css @@ -0,0 +1,1223 @@ +.mblDissolve.mblOut { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveOut; + animation-name: mblDissolveOut; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +.mblDissolve.mblIn { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveIn; + animation-name: mblDissolveIn; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +@-webkit-keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-webkit-keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +.mblCover { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCover.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCover.mblOut { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblCover.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblCover.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblCover.mblOut.mblTransition, +.mblCover.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblCover.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCube { + -webkit-animation-duration: 0.8s; + animation-duration: 0.8s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblCube.mblOut { + -webkit-animation-name: mblCubeOut; + animation-name: mblCubeOut; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +.mblCube.mblIn { + -webkit-animation-name: mblCubeIn; + animation-name: mblCubeIn; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +@-webkit-keyframes mblCubeOut { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOut { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeIn { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeIn { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse; + animation-name: mblCubeOutReverse; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +.mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse; + animation-name: mblCubeInReverse; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOutReverse { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeInReverse { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeInReverse { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.dj_ios .mblCube { + -webkit-transform-style: preserve-3d !important; +} +.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone; + animation-name: mblCubeOut_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone; + animation-name: mblCubeIn_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@keyframes mblCubeOut_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeIn_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeIn_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone_l; + animation-name: mblCubeOut_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone_l; + animation-name: mblCubeIn_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@keyframes mblCubeOut_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeIn_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeIn_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone; + animation-name: mblCubeOutReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone; + animation-name: mblCubeInReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@keyframes mblCubeOutReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeInReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone_l; + animation-name: mblCubeOutReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone_l; + animation-name: mblCubeInReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@keyframes mblCubeOutReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeInReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad; + animation-name: mblCubeOut_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad; + animation-name: mblCubeIn_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@keyframes mblCubeOut_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeIn_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeIn_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad_l; + animation-name: mblCubeOut_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad_l; + animation-name: mblCubeIn_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@keyframes mblCubeOut_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeIn_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeIn_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad; + animation-name: mblCubeOutReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad; + animation-name: mblCubeInReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@keyframes mblCubeOutReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeInReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad_l; + animation-name: mblCubeOutReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad_l; + animation-name: mblCubeInReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@keyframes mblCubeOutReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeInReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.mblReveal { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblReveal.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblReveal.mblOut { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblTransition { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblReveal.mblIn { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblReveal.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblReveal.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSlidev { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlidev.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlidev.mblOut.mblReverse.mblTransition, +.mblSlidev.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblSlidev.mblOut.mblTransition, +.mblSlidev.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblSlidev.mblOut, +.mblSlidev.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblSlidev.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSwirl.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlOut; + animation-name: mblSwirlOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlIn; + animation-name: mblSwirlIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblOut.mblReverse { + -webkit-animation-name: mblSwirlOutReverse; + animation-name: mblSwirlOutReverse; +} +@-webkit-keyframes mblSwirlOut { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(-360deg) scale(0); + } +} +@keyframes mblSwirlOut { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(-360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlOutReverse { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(360deg) scale(0); + } +} +@keyframes mblSwirlOutReverse { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblSwirlIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutOut; + animation-name: mblScaleOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblScaleOut.mblOut { + -webkit-animation-name: mblScaleOutOutAndroid; + animation-name: mblScaleOutOutAndroid; +} +.mblScaleOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutIn; + animation-name: mblScaleOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblScaleOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblScaleOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblScaleOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblScaleOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblScaleOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInOut; + animation-name: mblScaleInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblScaleIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInIn; + animation-name: mblScaleInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblScaleIn.mblIn { + -webkit-animation-name: mblScaleInInAndroid; + animation-name: mblScaleInInAndroid; +} +@-webkit-keyframes mblScaleInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblScaleInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblScaleInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblScaleInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblSwap { + -webkit-animation-duration: 0.6s; + animation-duration: 0.6s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblSwap.mblOut { + -webkit-animation-name: mblSwapOut; + animation-name: mblSwapOut; +} +.mblSwap.mblIn { + -webkit-animation-name: mblSwapIn; + animation-name: mblSwapIn; +} +.mblSwap.mblOut.mblReverse { + -webkit-animation-name: mblSwapOutReverse; + animation-name: mblSwapOutReverse; +} +.mblSwap.mblIn.mblReverse { + -webkit-animation-name: mblSwapInReverse; + animation-name: mblSwapInReverse; +} +@-webkit-keyframes mblSwapOut { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOut { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapIn { + 0% { + z-index: -100; + -webkit-transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapIn { + 0% { + z-index: -100; + transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblSwapOutReverse { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOutReverse { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapInReverse { + 0% { + z-index: -100; + -webkit-transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapInReverse { + 0% { + z-index: -100; + transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +.mblZoomOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutOut; + animation-name: mblZoomOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblZoomOut.mblOut { + -webkit-animation-name: mblZoomOutOutAndroid; + animation-name: mblZoomOutOutAndroid; +} +.mblZoomOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutIn; + animation-name: mblZoomOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblZoomOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblZoomOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblZoomOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblZoomOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblZoomOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblZoomIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInOut; + animation-name: mblZoomInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblZoomIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInIn; + animation-name: mblZoomInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblZoomIn.mblIn { + -webkit-animation-name: mblZoomInInAndroid; + animation-name: mblZoomInInAndroid; +} +@-webkit-keyframes mblZoomInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblZoomInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblZoomInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblZoomInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cover.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cover.css new file mode 100644 index 00000000..9db60bfa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cover.css @@ -0,0 +1,36 @@ +.mblCover { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCover.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCover.mblOut { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblCover.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblCover.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblCover.mblOut.mblTransition, +.mblCover.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblCover.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cover.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cover.less new file mode 100644 index 00000000..4dcd1248 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cover.less @@ -0,0 +1,27 @@ +@import "../css3.less"; +.mblCover { + .transition-property(none); + .transition-duration(0s); +} +.mblCover.mblTransition { + .transition-property-transform(); + .transition-duration(.4s); +} +.mblCover.mblOut { + z-index: -100; + .transform(translate3d(0%,0px,-1px) ) !important; +} +.mblCover.mblIn { + .transform(translate3d(100%,0px,0px) ) !important; +} +.mblCover.mblIn.mblReverse { + .transform(translate3d(-100%,0px,0px) ) !important; +} +.mblCover.mblOut.mblTransition, +.mblCover.mblIn.mblTransition { + .transform(translate3d(0%,0px,0px) ) !important; +} +.dj_android.dj_tablet .mblCover.mblTransition { + .transition-duration(.6s); + .transition-timing-function(linear); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/coverv.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/coverv.css new file mode 100644 index 00000000..e3ce6d6b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/coverv.css @@ -0,0 +1,36 @@ +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/coverv.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/coverv.less new file mode 100644 index 00000000..f8174850 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/coverv.less @@ -0,0 +1,27 @@ +@import "../css3.less"; +.mblCoverv { + .transition-property(none); + .transition-duration(0s); +} +.mblCoverv.mblTransition { + .transition-property-transform(); + .transition-duration(.4s); +} +.mblCoverv.mblOut { + z-index: -100; + .transform(translate3d(0px,0%,-1px) ) !important; +} +.mblCoverv.mblIn { + .transform(translate3d(0px,100%,0px) ) !important; +} +.mblCoverv.mblIn.mblReverse { + .transform(translate3d(0px,-100%,0px) ) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + .transform(translate3d(0px,0%,0px) ) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + .transition-duration(.6s); + .transition-timing-function(linear); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cube.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cube.css new file mode 100644 index 00000000..1072681b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cube.css @@ -0,0 +1,473 @@ +.mblCube { + -webkit-animation-duration: 0.8s; + animation-duration: 0.8s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblCube.mblOut { + -webkit-animation-name: mblCubeOut; + animation-name: mblCubeOut; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +.mblCube.mblIn { + -webkit-animation-name: mblCubeIn; + animation-name: mblCubeIn; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +@-webkit-keyframes mblCubeOut { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOut { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeIn { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeIn { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse; + animation-name: mblCubeOutReverse; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +.mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse; + animation-name: mblCubeInReverse; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOutReverse { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeInReverse { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeInReverse { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.dj_ios .mblCube { + -webkit-transform-style: preserve-3d !important; +} +.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone; + animation-name: mblCubeOut_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone; + animation-name: mblCubeIn_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@keyframes mblCubeOut_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeIn_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeIn_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone_l; + animation-name: mblCubeOut_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone_l; + animation-name: mblCubeIn_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@keyframes mblCubeOut_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeIn_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeIn_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone; + animation-name: mblCubeOutReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone; + animation-name: mblCubeInReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@keyframes mblCubeOutReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeInReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone_l; + animation-name: mblCubeOutReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone_l; + animation-name: mblCubeInReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@keyframes mblCubeOutReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeInReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad; + animation-name: mblCubeOut_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad; + animation-name: mblCubeIn_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@keyframes mblCubeOut_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeIn_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeIn_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad_l; + animation-name: mblCubeOut_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad_l; + animation-name: mblCubeIn_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@keyframes mblCubeOut_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeIn_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeIn_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad; + animation-name: mblCubeOutReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad; + animation-name: mblCubeInReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@keyframes mblCubeOutReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeInReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad_l; + animation-name: mblCubeOutReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad_l; + animation-name: mblCubeInReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@keyframes mblCubeOutReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeInReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cube.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cube.less new file mode 100644 index 00000000..1fa3b1c2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/cube.less @@ -0,0 +1,130 @@ +@import "../css3.less"; +.mblCube { + .animation-duration(.8s); + .animation-timing-function(linear); +} +.mblCube.mblOut { + .animation-name(mblCubeOut); + .transform-origin(0% 50% ) !important; +} +.mblCube.mblIn { + .animation-name(mblCubeIn); + .transform-origin(100% 50% ) !important; +} +@-webkit-keyframes mblCubeOut { .keyframes-transform-0-50-100-webkit(scale(1,1) skew(0deg,0deg), scale(.5,1) skew(0deg,3deg), scale(0,1) skew(0deg,0deg)); } +@keyframes mblCubeOut { .keyframes-transform-0-50-100 (scale(1,1) skew(0deg,0deg), scale(.5,1) skew(0deg,3deg), scale(0,1) skew(0deg,0deg)); } +@-webkit-keyframes mblCubeIn { .keyframes-transform-0-50-100-webkit(scale(0,1) skew(0deg,0deg), scale(.5,1) skew(0deg,-3deg), scale(1,1) skew(0deg,0deg)); } +@keyframes mblCubeIn { .keyframes-transform-0-50-100 (scale(0,1) skew(0deg,0deg), scale(.5,1) skew(0deg,-3deg), scale(1,1) skew(0deg,0deg)); } +.mblCube.mblOut.mblReverse { + .animation-name(mblCubeOutReverse); + .transform-origin(100% 50% ) !important; +} +.mblCube.mblIn.mblReverse { + .animation-name(mblCubeInReverse); + .transform-origin(0% 50% ) !important; +} +@-webkit-keyframes mblCubeOutReverse { .keyframes-transform-0-50-100-webkit(scale(1,1) skew(0deg,0deg), scale(.5,1) skew(0deg,-3deg), scale(0,1) skew(0deg,0deg)); } +@keyframes mblCubeOutReverse { .keyframes-transform-0-50-100 (scale(1,1) skew(0deg,0deg), scale(.5,1) skew(0deg,-3deg), scale(0,1) skew(0deg,0deg)); } +@-webkit-keyframes mblCubeInReverse { .keyframes-transform-0-50-100-webkit(scale(0,1) skew(0deg,0deg), scale(.5,1) skew(0deg,3deg), scale(1,1) skew(0deg,0deg)); } +@keyframes mblCubeInReverse { .keyframes-transform-0-50-100 (scale(0,1) skew(0deg,0deg), scale(.5,1) skew(0deg,3deg), scale(1,1) skew(0deg,0deg)); } + +.dj_ios .mblCube { + .transform-style(preserve-3d) !important; +} +.dj_ios .mblCube.mblOut { + .animation-name(mblCubeOut_iphone); + .transform-origin(50% 50% ) !important; +} +.dj_ios .mblCube.mblIn { + .animation-name(mblCubeIn_iphone); + .transform-origin(50% 50% ) !important; +} +@-webkit-keyframes mblCubeOut_iphone { .keyframes-transform-from-to-webkit(scale3d(0.835,0.835,0.835) rotateY(0deg) translateZ(160px), scale3d(0.835,0.835,0.835) rotateY(-90deg) translateZ(160px)); } +@keyframes mblCubeOut_iphone { .keyframes-transform-from-to (scale3d(0.835,0.835,0.835) rotateY(0deg) translateZ(160px), scale3d(0.835,0.835,0.835) rotateY(-90deg) translateZ(160px)); } +@-webkit-keyframes mblCubeIn_iphone { .keyframes-transform-from-to-webkit(scale3d(0.835,0.835,0.835) rotateY(90deg) translateZ(160px), scale3d(0.835,0.835,0.835) rotateY(0deg) translateZ(160px)); } +@keyframes mblCubeIn_iphone { .keyframes-transform-from-to (scale3d(0.835,0.835,0.835) rotateY(90deg) translateZ(160px), scale3d(0.835,0.835,0.835) rotateY(0deg) translateZ(160px)); } +.dj_ios.dj_landscape .mblCube.mblOut { + .animation-name(mblCubeOut_iphone_l); + .transform-origin(50% 50% ) !important; +} +.dj_ios.dj_landscape .mblCube.mblIn { + .animation-name(mblCubeIn_iphone_l); + .transform-origin(50% 50% ) !important; +} +@-webkit-keyframes mblCubeOut_iphone_l { .keyframes-transform-from-to-webkit(scale3d(0.77,0.77,0.77) rotateY(0deg) translateZ(240px), scale3d(0.77,0.77,0.77) rotateY(-90deg) translateZ(240px)); } +@keyframes mblCubeOut_iphone_l { .keyframes-transform-from-to (scale3d(0.77,0.77,0.77) rotateY(0deg) translateZ(240px), scale3d(0.77,0.77,0.77) rotateY(-90deg) translateZ(240px)); } +@-webkit-keyframes mblCubeIn_iphone_l { .keyframes-transform-from-to-webkit(scale3d(0.77,0.77,0.77) rotateY(90deg) translateZ(240px), scale3d(0.77,0.77,0.77) rotateY(0deg) translateZ(240px)); } +@keyframes mblCubeIn_iphone_l { .keyframes-transform-from-to (scale3d(0.77,0.77,0.77) rotateY(90deg) translateZ(240px), scale3d(0.77,0.77,0.77) rotateY(0deg) translateZ(240px)); } +.dj_ios .mblCube.mblOut.mblReverse { + .animation-name(mblCubeOutReverse_iphone); + .transform-origin(50% 50% ) !important; +} +.dj_ios .mblCube.mblIn.mblReverse { + .animation-name(mblCubeInReverse_iphone); + .transform-origin(50% 50% ) !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone { .keyframes-transform-from-to-webkit(scale3d(0.835,0.835,0.835) rotateY(0deg) translateZ(160px), scale3d(0.835,0.835,0.835) rotateY(90deg) translateZ(160px)); } +@keyframes mblCubeOutReverse_iphone { .keyframes-transform-from-to (scale3d(0.835,0.835,0.835) rotateY(0deg) translateZ(160px), scale3d(0.835,0.835,0.835) rotateY(90deg) translateZ(160px)); } +@-webkit-keyframes mblCubeInReverse_iphone { .keyframes-transform-from-to-webkit(scale3d(0.835,0.835,0.835) rotateY(-90deg) translateZ(160px), scale3d(0.835,0.835,0.835) rotateY(0deg) translateZ(160px)); } +@keyframes mblCubeInReverse_iphone { .keyframes-transform-from-to (scale3d(0.835,0.835,0.835) rotateY(-90deg) translateZ(160px), scale3d(0.835,0.835,0.835) rotateY(0deg) translateZ(160px)); } +.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + .animation-name(mblCubeOutReverse_iphone_l); + .transform-origin(50% 50% ) !important; +} +.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + .animation-name(mblCubeInReverse_iphone_l); + .transform-origin(50% 50% ) !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone_l { .keyframes-transform-from-to-webkit(scale3d(0.77,0.77,0.77) rotateY(0deg) translateZ(240px), scale3d(0.77,0.77,0.77) rotateY(90deg) translateZ(240px)); } +@keyframes mblCubeOutReverse_iphone_l { .keyframes-transform-from-to (scale3d(0.77,0.77,0.77) rotateY(0deg) translateZ(240px), scale3d(0.77,0.77,0.77) rotateY(90deg) translateZ(240px)); } +@-webkit-keyframes mblCubeInReverse_iphone_l { .keyframes-transform-from-to-webkit(scale3d(0.77,0.77,0.77) rotateY(-90deg) translateZ(240px), scale3d(0.77,0.77,0.77) rotateY(0deg) translateZ(240px)); } +@keyframes mblCubeInReverse_iphone_l { .keyframes-transform-from-to (scale3d(0.77,0.77,0.77) rotateY(-90deg) translateZ(240px), scale3d(0.77,0.77,0.77) rotateY(0deg) translateZ(240px)); } + +.dj_ipad.dj_ios .mblCube.mblOut { + .animation-name(mblCubeOut_ipad); + .transform-origin(50% 50% ) !important; +} +.dj_ipad.dj_ios .mblCube.mblIn { + .animation-name(mblCubeIn_ipad); + .transform-origin(50% 50% ) !important; +} +@-webkit-keyframes mblCubeOut_ipad { .keyframes-transform-from-to-webkit(scale3d(0.806,0.806,0.806) rotateY(0deg) translateZ(384px), scale3d(0.806,0.806,0.806) rotateY(-90deg) translateZ(384px)); } +@keyframes mblCubeOut_ipad { .keyframes-transform-from-to (scale3d(0.806,0.806,0.806) rotateY(0deg) translateZ(384px), scale3d(0.806,0.806,0.806) rotateY(-90deg) translateZ(384px)); } +@-webkit-keyframes mblCubeIn_ipad { .keyframes-transform-from-to-webkit(scale3d(0.806,0.806,0.806) rotateY(90deg) translateZ(384px), scale3d(0.806,0.806,0.806) rotateY(0deg) translateZ(384px)); } +@keyframes mblCubeIn_ipad { .keyframes-transform-from-to (scale3d(0.806,0.806,0.806) rotateY(90deg) translateZ(384px), scale3d(0.806,0.806,0.806) rotateY(0deg) translateZ(384px)); } +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut { + .animation-name(mblCubeOut_ipad_l); + .transform-origin(50% 50% ) !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn { + .animation-name(mblCubeIn_ipad_l); + .transform-origin(50% 50% ) !important; +} +@-webkit-keyframes mblCubeOut_ipad_l { .keyframes-transform-from-to-webkit(scale3d(0.758,0.758,0.758) rotateY(0deg) translateZ(512px), scale3d(0.758,0.758,0.758) rotateY(-90deg) translateZ(512px)); } +@keyframes mblCubeOut_ipad_l { .keyframes-transform-from-to (scale3d(0.758,0.758,0.758) rotateY(0deg) translateZ(512px), scale3d(0.758,0.758,0.758) rotateY(-90deg) translateZ(512px)); } +@-webkit-keyframes mblCubeIn_ipad_l { .keyframes-transform-from-to-webkit(scale3d(0.758,0.758,0.758) rotateY(90deg) translateZ(512px), scale3d(0.758,0.758,0.758) rotateY(0deg) translateZ(512px)); } +@keyframes mblCubeIn_ipad_l { .keyframes-transform-from-to (scale3d(0.758,0.758,0.758) rotateY(90deg) translateZ(512px), scale3d(0.758,0.758,0.758) rotateY(0deg) translateZ(512px)); } +.dj_ipad.dj_ios .mblCube.mblOut.mblReverse { + .animation-name(mblCubeOutReverse_ipad); + .transform-origin(50% 50% ) !important; +} +.dj_ipad.dj_ios .mblCube.mblIn.mblReverse { + .animation-name(mblCubeInReverse_ipad); + .transform-origin(50% 50% ) !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad { .keyframes-transform-from-to-webkit(scale3d(0.806,0.806,0.806) rotateY(0deg) translateZ(384px), scale3d(0.806,0.806,0.806) rotateY(90deg) translateZ(384px)); } +@keyframes mblCubeOutReverse_ipad { .keyframes-transform-from-to (scale3d(0.806,0.806,0.806) rotateY(0deg) translateZ(384px), scale3d(0.806,0.806,0.806) rotateY(90deg) translateZ(384px)); } +@-webkit-keyframes mblCubeInReverse_ipad { .keyframes-transform-from-to-webkit(scale3d(0.806,0.806,0.806) rotateY(-90deg) translateZ(384px), scale3d(0.806,0.806,0.806) rotateY(0deg) translateZ(384px)); } +@keyframes mblCubeInReverse_ipad { .keyframes-transform-from-to (scale3d(0.806,0.806,0.806) rotateY(-90deg) translateZ(384px), scale3d(0.806,0.806,0.806) rotateY(0deg) translateZ(384px)); } +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + .animation-name(mblCubeOutReverse_ipad_l); + .transform-origin(50% 50% ) !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + .animation-name(mblCubeInReverse_ipad_l); + .transform-origin(50% 50% ) !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad_l { .keyframes-transform-from-to-webkit(scale3d(0.758,0.758,0.758) rotateY(0deg) translateZ(512px), scale3d(0.758,0.758,0.758) rotateY(90deg) translateZ(512px)); } +@keyframes mblCubeOutReverse_ipad_l { .keyframes-transform-from-to (scale3d(0.758,0.758,0.758) rotateY(0deg) translateZ(512px), scale3d(0.758,0.758,0.758) rotateY(90deg) translateZ(512px)); } +@-webkit-keyframes mblCubeInReverse_ipad_l { .keyframes-transform-from-to-webkit(scale3d(0.758,0.758,0.758) rotateY(-90deg) translateZ(512px), scale3d(0.758,0.758,0.758) rotateY(0deg) translateZ(512px)); } +@keyframes mblCubeInReverse_ipad_l { .keyframes-transform-from-to (scale3d(0.758,0.758,0.758) rotateY(-90deg) translateZ(512px), scale3d(0.758,0.758,0.758) rotateY(0deg) translateZ(512px)); } diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/dissolve.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/dissolve.css new file mode 100644 index 00000000..01d5739c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/dissolve.css @@ -0,0 +1,48 @@ +.mblDissolve.mblOut { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveOut; + animation-name: mblDissolveOut; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +.mblDissolve.mblIn { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveIn; + animation-name: mblDissolveIn; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +@-webkit-keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-webkit-keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/dissolve.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/dissolve.less new file mode 100644 index 00000000..6c94db90 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/dissolve.less @@ -0,0 +1,15 @@ +@import "../css3.less"; +.mblDissolve.mblOut { + .animation-duration(1s); + .animation-name(mblDissolveOut); + .animation-timing-function(cubic-bezier(.25,1,.75,0)); +} +.mblDissolve.mblIn { + .animation-duration(1s); + .animation-name(mblDissolveIn); + .animation-timing-function(cubic-bezier(.25,1,.75,0)); +} +@-webkit-keyframes mblDissolveOut { .keyframes-opacity-from-to(1, 0); } +@keyframes mblDissolveOut { .keyframes-opacity-from-to(1, 0); } +@-webkit-keyframes mblDissolveIn { .keyframes-opacity-from-to(0, 1); } +@keyframes mblDissolveIn { .keyframes-opacity-from-to(0, 1); } diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/fade.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/fade.css new file mode 100644 index 00000000..b54e7091 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/fade.css @@ -0,0 +1,28 @@ +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/fade.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/fade.less new file mode 100644 index 00000000..4ac2f4ac --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/fade.less @@ -0,0 +1,23 @@ +@import "../css3.less"; +.mblFade { + .transition-property(none); + .transition-duration(0s); +} +.mblFade.mblTransition { + .transition-property(opacity); + .transition-duration(.6s); +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + .transition-timing-function(ease-out); + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + .transition-timing-function(ease-in); + opacity: 1; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/flip.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/flip.css new file mode 100644 index 00000000..72767e60 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/flip.css @@ -0,0 +1,44 @@ +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/flip.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/flip.less new file mode 100644 index 00000000..431f5063 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/flip.less @@ -0,0 +1,33 @@ +@import "../css3.less"; +.mblFlip { + .transition-property(none); + .transition-duration(0s); +} +.mblFlip.mblTransition { + .transition-property(all); + .transition-duration(.2s); + .transition-timing-function(linear); +} +.mblFlip.mblOut { + opacity: 1; + .transform(scale(1,1) skew(0,0) ) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + .transform(scale(0,0.8) skew(0,30deg) ) !important; +} +.mblFlip.mblIn { + opacity: 0; + .transform(scale(0,0.8) skew(0,-30deg) ) !important; +} +.mblFlip.mblIn.mblTransition { + .transition-delay(.2s); + opacity: 1; + .transform(scale(1,1) skew(0,0) ) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + .transition-duration(.4s); +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + .transition-delay(.4s); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/reveal.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/reveal.css new file mode 100644 index 00000000..89cadbe4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/reveal.css @@ -0,0 +1,39 @@ +.mblReveal { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblReveal.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblReveal.mblOut { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblTransition { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblReveal.mblIn { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblReveal.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblReveal.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/reveal.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/reveal.less new file mode 100644 index 00000000..31f8ab9c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/reveal.less @@ -0,0 +1,29 @@ +@import "../css3.less"; +.mblReveal { + .transition-property(none); + .transition-duration(0s); +} +.mblReveal.mblTransition { + .transition-property-transform(); + .transition-duration(.4s); +} +.mblReveal.mblOut { + .transform(translate3d(0%,0px,0px) ) !important; +} +.mblReveal.mblOut.mblTransition { + .transform(translate3d(-100%,0px,0px) ) !important; +} +.mblReveal.mblOut.mblReverse.mblTransition { + .transform(translate3d(100%,0px,0px) ) !important; +} +.mblReveal.mblIn { + z-index: -100; + .transform(translate3d(0%,0px,-1px) ) !important; +} +.mblReveal.mblIn.mblTransition { + .transform(translate3d(0%,0px,0px) ) !important; +} +.dj_android.dj_tablet .mblReveal.mblTransition { + .transition-duration(.6s); + .transition-timing-function(linear); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/revealv.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/revealv.css new file mode 100644 index 00000000..d0967a31 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/revealv.css @@ -0,0 +1,39 @@ +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/revealv.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/revealv.less new file mode 100644 index 00000000..1ccbbb11 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/revealv.less @@ -0,0 +1,29 @@ +@import "../css3.less"; +.mblRevealv { + .transition-property(none); + .transition-duration(0s); +} +.mblRevealv.mblTransition { + .transition-property-transform(); + .transition-duration(.4s); +} +.mblRevealv.mblOut { + .transform(translate3d(0px,0%,0px) ) !important; +} +.mblRevealv.mblOut.mblTransition { + .transform(translate3d(0px,-100%,0px) ) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + .transform(translate3d(0px,100%,0px) ) !important; +} +.mblRevealv.mblIn { + z-index: -100; + .transform(translate3d(0px,0%,-1px) ) !important; +} +.mblRevealv.mblIn.mblTransition { + .transform(translate3d(0px,0%,0px) ) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + .transition-duration(.6s); + .transition-timing-function(linear); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleIn.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleIn.css new file mode 100644 index 00000000..59eeb561 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleIn.css @@ -0,0 +1,73 @@ +.mblScaleIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInOut; + animation-name: mblScaleInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblScaleIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInIn; + animation-name: mblScaleInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblScaleIn.mblIn { + -webkit-animation-name: mblScaleInInAndroid; + animation-name: mblScaleInInAndroid; +} +@-webkit-keyframes mblScaleInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblScaleInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblScaleInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblScaleInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleIn.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleIn.less new file mode 100644 index 00000000..c1105c8f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleIn.less @@ -0,0 +1,21 @@ +@import "../css3.less"; +.mblScaleIn.mblOut { + z-index: -100; + .animation-duration(.5s); + .animation-name(mblScaleInOut); + .animation-timing-function(ease-out); +} +.mblScaleIn.mblIn { + .animation-duration(.5s); + .animation-name(mblScaleInIn); + .animation-timing-function(ease-out); +} +.dj_android .mblScaleIn.mblIn { + .animation-name(mblScaleInInAndroid); +} +@-webkit-keyframes mblScaleInOut { .keyframes-transform-from-to-webkit(scale(1.0), scale(1.0)); } +@keyframes mblScaleInOut { .keyframes-transform-from-to (scale(1.0), scale(1.0)); } +@-webkit-keyframes mblScaleInIn { .keyframes-transform-opacity-from-to-webkit(scale(0.0), 0, scale(1.0), 1); } +@keyframes mblScaleInIn { .keyframes-transform-opacity-from-to (scale(0.0), 0, scale(1.0), 1); } +@-webkit-keyframes mblScaleInInAndroid { .keyframes-transform-from-to-webkit(scale(0.0), scale(1.0)); } +@keyframes mblScaleInInAndroid { .keyframes-transform-from-to (scale(0.0), scale(1.0)); } diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleOut.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleOut.css new file mode 100644 index 00000000..7d9c75f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleOut.css @@ -0,0 +1,73 @@ +.mblScaleOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutOut; + animation-name: mblScaleOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblScaleOut.mblOut { + -webkit-animation-name: mblScaleOutOutAndroid; + animation-name: mblScaleOutOutAndroid; +} +.mblScaleOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutIn; + animation-name: mblScaleOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblScaleOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblScaleOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblScaleOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblScaleOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblScaleOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleOut.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleOut.less new file mode 100644 index 00000000..ca105b0f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/scaleOut.less @@ -0,0 +1,21 @@ +@import "../css3.less"; +.mblScaleOut.mblOut { + .animation-duration(.5s); + .animation-name(mblScaleOutOut); + .animation-timing-function(ease-in); +} +.dj_android .mblScaleOut.mblOut { + .animation-name(mblScaleOutOutAndroid); +} +.mblScaleOut.mblIn { + z-index: -100; + .animation-duration(.5s); + .animation-name(mblScaleOutIn); + .animation-timing-function(ease-in); +} +@-webkit-keyframes mblScaleOutOut { .keyframes-transform-opacity-from-to-webkit(scale(1.0), 1, scale(0.0), 0); } +@keyframes mblScaleOutOut { .keyframes-transform-opacity-from-to (scale(1.0), 1, scale(0.0), 0); } +@-webkit-keyframes mblScaleOutOutAndroid { .keyframes-transform-from-to-webkit(scale(1.0), scale(0.0)); } +@keyframes mblScaleOutOutAndroid { .keyframes-transform-from-to (scale(1.0), scale(0.0)); } +@-webkit-keyframes mblScaleOutIn { .keyframes-transform-from-to-webkit(scale(1.0), scale(1.0)); } +@keyframes mblScaleOutIn { .keyframes-transform-from-to (scale(1.0), scale(1.0)); } diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slide.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slide.css new file mode 100644 index 00000000..0dd89c5a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slide.css @@ -0,0 +1,33 @@ +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slide.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slide.less new file mode 100644 index 00000000..06d77d2f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slide.less @@ -0,0 +1,25 @@ +@import "../css3.less"; +.mblSlide { + .transition-property(none); + .transition-duration(0s); +} +.mblSlide.mblTransition { + .transition-property-transform(); + .transition-duration(.3s); +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + .transform(translate3d(100%,0px,0px) ) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + .transform(translate3d(-100%,0px,0px) ) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + .transform(translate3d(0%,0px,0px) ) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + .transition-duration(.6s); + .transition-timing-function(linear); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slidev.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slidev.css new file mode 100644 index 00000000..9debb0ab --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slidev.css @@ -0,0 +1,33 @@ +.mblSlidev { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlidev.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlidev.mblOut.mblReverse.mblTransition, +.mblSlidev.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblSlidev.mblOut.mblTransition, +.mblSlidev.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblSlidev.mblOut, +.mblSlidev.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblSlidev.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slidev.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slidev.less new file mode 100644 index 00000000..5fd979fe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/slidev.less @@ -0,0 +1,26 @@ +@import "../css3.less"; +.mblSlidev { + .transition-property(none); + .transition-duration(0s); +} +.mblSlidev.mblTransition { + .transition-property-transform(); + .transition-duration(.3s); +} +.mblSlidev.mblOut.mblReverse.mblTransition, +.mblSlidev.mblIn { + .transform(translate3d(0px,100%,0px) ) !important; +} +.mblSlidev.mblOut.mblTransition, +.mblSlidev.mblIn.mblReverse { + .transform(translate3d(0px,-100%,0px) ) !important; +} +.mblSlidev.mblOut, +.mblSlidev.mblIn.mblTransition { + .transform(translate3d(0px,0%,0px) ) !important; +} +.dj_android.dj_tablet .mblSlidev.mblTransition { + .transition-duration(.6s); + .transition-timing-function(linear); +} + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swap.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swap.css new file mode 100644 index 00000000..6118b4ce --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swap.css @@ -0,0 +1,158 @@ +.mblSwap { + -webkit-animation-duration: 0.6s; + animation-duration: 0.6s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblSwap.mblOut { + -webkit-animation-name: mblSwapOut; + animation-name: mblSwapOut; +} +.mblSwap.mblIn { + -webkit-animation-name: mblSwapIn; + animation-name: mblSwapIn; +} +.mblSwap.mblOut.mblReverse { + -webkit-animation-name: mblSwapOutReverse; + animation-name: mblSwapOutReverse; +} +.mblSwap.mblIn.mblReverse { + -webkit-animation-name: mblSwapInReverse; + animation-name: mblSwapInReverse; +} +@-webkit-keyframes mblSwapOut { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOut { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapIn { + 0% { + z-index: -100; + -webkit-transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapIn { + 0% { + z-index: -100; + transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblSwapOutReverse { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOutReverse { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapInReverse { + 0% { + z-index: -100; + -webkit-transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapInReverse { + 0% { + z-index: -100; + transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swap.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swap.less new file mode 100644 index 00000000..45ae5ff3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swap.less @@ -0,0 +1,25 @@ +@import "../css3.less"; +.mblSwap { + .animation-duration(.6s); + .animation-timing-function(linear); +} +.mblSwap.mblOut { + .animation-name(mblSwapOut); +} +.mblSwap.mblIn { + .animation-name(mblSwapIn); +} +.mblSwap.mblOut.mblReverse { + .animation-name(mblSwapOutReverse); +} +.mblSwap.mblIn.mblReverse { + .animation-name(mblSwapInReverse); +} +@-webkit-keyframes mblSwapOut { .keyframes-z-index-transform-opacity-0-50-100-webkit(auto, translate3d(0%,0%,0px) scale(1.0), 1, -60, translate3d(-45%,5%,0px) scale(.6), .4, -100, translate3d(-20%,10%,0px) scale(.4), 0); } +@keyframes mblSwapOut { .keyframes-z-index-transform-opacity-0-50-100 (auto, translate3d(0%,0%,0px) scale(1.0), 1, -60, translate3d(-45%,5%,0px) scale(.6), .4, -100, translate3d(-20%,10%,0px) scale(.4), 0); } +@-webkit-keyframes mblSwapIn { .keyframes-z-index-transform-opacity-0-50-100-webkit(-100, translate3d(-20%,0%,0px) scale(.5), .4, -40, translate3d(45%,0%,0px) scale(.7), 1, auto, translate3d(0%,0%,0px) scale(1.0), 1); } +@keyframes mblSwapIn { .keyframes-z-index-transform-opacity-0-50-100 (-100, translate3d(-20%,0%,0px) scale(.5), .4, -40, translate3d(45%,0%,0px) scale(.7), 1, auto, translate3d(0%,0%,0px) scale(1.0), 1); } +@-webkit-keyframes mblSwapOutReverse { .keyframes-z-index-transform-opacity-0-50-100-webkit(auto, translate3d(0%,0%,0px) scale(1.0), 1, -60, translate3d(45%,5%,0px) scale(.6), .4, -100, translate3d(20%,10%,0px) scale(.4), 0); } +@keyframes mblSwapOutReverse { .keyframes-z-index-transform-opacity-0-50-100 (auto, translate3d(0%,0%,0px) scale(1.0), 1, -60, translate3d(45%,5%,0px) scale(.6), .4, -100, translate3d(20%,10%,0px) scale(.4), 0); } +@-webkit-keyframes mblSwapInReverse { .keyframes-z-index-transform-opacity-0-50-100-webkit(-100, translate3d(20%,0%,0px) scale(.5), .4, -40, translate3d(-45%,0%,0px) scale(.7), 1, auto, translate3d(0%,0%,0px) scale(1.0), 1); } +@keyframes mblSwapInReverse { .keyframes-z-index-transform-opacity-0-50-100 (-100, translate3d(20%,0%,0px) scale(.5), .4, -40, translate3d(-45%,0%,0px) scale(.7), 1, auto, translate3d(0%,0%,0px) scale(1.0), 1); } diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swirl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swirl.css new file mode 100644 index 00000000..ea58c858 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swirl.css @@ -0,0 +1,69 @@ +.mblSwirl.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlOut; + animation-name: mblSwirlOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlIn; + animation-name: mblSwirlIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblOut.mblReverse { + -webkit-animation-name: mblSwirlOutReverse; + animation-name: mblSwirlOutReverse; +} +@-webkit-keyframes mblSwirlOut { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(-360deg) scale(0); + } +} +@keyframes mblSwirlOut { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(-360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlOutReverse { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(360deg) scale(0); + } +} +@keyframes mblSwirlOutReverse { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblSwirlIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swirl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swirl.less new file mode 100644 index 00000000..8c5cae74 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/swirl.less @@ -0,0 +1,21 @@ +@import "../css3.less"; +.mblSwirl.mblOut { + .animation-duration(.5s); + .animation-name(mblSwirlOut); + .animation-timing-function(ease-in); +} +.mblSwirl.mblIn { + z-index: -100; + .animation-duration(.5s); + .animation-name(mblSwirlIn); + .animation-timing-function(ease-in); +} +.mblSwirl.mblOut.mblReverse { + .animation-name(mblSwirlOutReverse); +} +@-webkit-keyframes mblSwirlOut { .keyframes-transform-from-to-webkit(rotate(0deg) scale(1.0), rotate(-360deg) scale(0.0)); } +@keyframes mblSwirlOut { .keyframes-transform-from-to (rotate(0deg) scale(1.0), rotate(-360deg) scale(0.0)); } +@-webkit-keyframes mblSwirlOutReverse { .keyframes-transform-from-to-webkit(rotate(0deg) scale(1.0), rotate(360deg) scale(0.0)); } +@keyframes mblSwirlOutReverse { .keyframes-transform-from-to (rotate(0deg) scale(1.0), rotate(360deg) scale(0.0)); } +@-webkit-keyframes mblSwirlIn { .keyframes-transform-from-to-webkit(scale(1.0), scale(1.0)); } +@keyframes mblSwirlIn { .keyframes-transform-from-to (scale(1.0), scale(1.0)); } diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomIn.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomIn.css new file mode 100644 index 00000000..2e5b3c21 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomIn.css @@ -0,0 +1,73 @@ +.mblZoomIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInOut; + animation-name: mblZoomInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblZoomIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInIn; + animation-name: mblZoomInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblZoomIn.mblIn { + -webkit-animation-name: mblZoomInInAndroid; + animation-name: mblZoomInInAndroid; +} +@-webkit-keyframes mblZoomInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblZoomInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblZoomInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblZoomInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomIn.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomIn.less new file mode 100644 index 00000000..8d909025 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomIn.less @@ -0,0 +1,21 @@ +@import "../css3.less"; +.mblZoomIn.mblOut { + z-index: -100; + .animation-duration(.5s); + .animation-name(mblZoomInOut); + .animation-timing-function(ease-out); +} +.mblZoomIn.mblIn { + .animation-duration(.5s); + .animation-name(mblZoomInIn); + .animation-timing-function(ease-out); +} +.dj_android .mblZoomIn.mblIn { + .animation-name(mblZoomInInAndroid); +} +@-webkit-keyframes mblZoomInOut { .keyframes-transform-from-to-webkit(scale(1.0), scale(1.0)); } +@keyframes mblZoomInOut { .keyframes-transform-from-to (scale(1.0), scale(1.0)); } +@-webkit-keyframes mblZoomInIn { .keyframes-transform-opacity-from-to-webkit(scale(0.0), 0, scale(1.0), 1); } +@keyframes mblZoomInIn { .keyframes-transform-opacity-from-to (scale(0.0), 0, scale(1.0), 1); } +@-webkit-keyframes mblZoomInInAndroid { .keyframes-transform-from-to-webkit(scale(0.0), scale(1.0)); } +@keyframes mblZoomInInAndroid { .keyframes-transform-from-to (scale(0.0), scale(1.0)); } diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomOut.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomOut.css new file mode 100644 index 00000000..cb520919 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomOut.css @@ -0,0 +1,73 @@ +.mblZoomOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutOut; + animation-name: mblZoomOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblZoomOut.mblOut { + -webkit-animation-name: mblZoomOutOutAndroid; + animation-name: mblZoomOutOutAndroid; +} +.mblZoomOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutIn; + animation-name: mblZoomOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblZoomOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblZoomOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblZoomOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblZoomOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblZoomOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomOut.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomOut.less new file mode 100644 index 00000000..d595be1b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/common/transitions/zoomOut.less @@ -0,0 +1,21 @@ +@import "../css3.less"; +.mblZoomOut.mblOut { + .animation-duration(.5s); + .animation-name(mblZoomOutOut); + .animation-timing-function(ease-in); +} +.dj_android .mblZoomOut.mblOut { + .animation-name(mblZoomOutOutAndroid); +} +.mblZoomOut.mblIn { + z-index: -100; + .animation-duration(.5s); + .animation-name(mblZoomOutIn); + .animation-timing-function(ease-in); +} +@-webkit-keyframes mblZoomOutOut { .keyframes-transform-opacity-from-to-webkit(scale(1.0), 1, scale(0.0), 0); } +@keyframes mblZoomOutOut { .keyframes-transform-opacity-from-to (scale(1.0), 1, scale(0.0), 0); } +@-webkit-keyframes mblZoomOutOutAndroid { .keyframes-transform-from-to-webkit(scale(1.0), scale(0.0)); } +@keyframes mblZoomOutOutAndroid { .keyframes-transform-from-to (scale(1.0), scale(0.0)); } +@-webkit-keyframes mblZoomOutIn { .keyframes-transform-from-to-webkit(scale(1.0), scale(1.0)); } +@keyframes mblZoomOutIn { .keyframes-transform-from-to (scale(1.0), scale(1.0)); } diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Accordion-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Accordion-compat.css new file mode 100644 index 00000000..87d608ce --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Accordion-compat.css @@ -0,0 +1,19 @@ + +.mblAccordionTitleSelected { + background-color: #e2e2e2; +} +.dj_gecko .mblAccordionTitleSelected { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Accordion.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Accordion.css new file mode 100644 index 00000000..8fa5143d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Accordion.css @@ -0,0 +1,71 @@ + +.mblAccordion { + border-style: outset; + border-width: 1px; + border-color: #9b9b9b; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #c0c0c0; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + border-top: 1px solid #9b9b9b; + background-color: #c0c0c0; + background-image: none; + font-weight: normal; +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: #000000; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + border-bottom: 1px solid #c0c0c0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + font-weight: bold; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Accordion_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Accordion_rtl.css new file mode 100644 index 00000000..5b9612f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Accordion_rtl.css @@ -0,0 +1,6 @@ + +.mblAccordionIconParentRtl { + float: right; + -webkit-transform: scaleX(-1); + transform: scaleX(-1); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Button-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Button-compat.css new file mode 100644 index 00000000..6ce6191f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Button-compat.css @@ -0,0 +1,41 @@ + +.mblButton { + background-image: url(compat/button-bg.png); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblBlueButton { + background-image: url(compat/blue-button-bg.png); +} +.mblBlueButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.mblRedButton { + background-image: url(compat/red-button-bg.png); +} +.mblRedButtonSelected { + background-image: url(compat/red-button-sel-bg.png); +} +.dj_gecko .mblButton { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblBlueButton { + background-image: -moz-linear-gradient(top, #48adfc 0%, #048bf4 100%); +} +.dj_gecko .mblBlueButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblRedButton { + background-image: -moz-linear-gradient(top, #fa9d58 0%, #ee4115 100%); +} +.dj_gecko .mblRedButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ff3 .mblButton { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Button.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Button.css new file mode 100644 index 00000000..6a68c634 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Button.css @@ -0,0 +1,48 @@ + +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; + border-radius: 0; + color: #000000; + font-size: 13px; +} +.mblButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); + color: #ffffff; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#48adfc), to(#048bf4)); + background-image: linear-gradient(to bottom, #48adfc 0%, #048bf4 100%); + color: #ffffff; +} +.mblBlueButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ee4115 100%); + color: #ffffff; +} +.mblRedButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Carousel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Carousel.css new file mode 100644 index 00000000..57e43929 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Carousel.css @@ -0,0 +1,77 @@ + +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Carousel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Carousel_rtl.css new file mode 100644 index 00000000..1fe79bbd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Carousel_rtl.css @@ -0,0 +1,13 @@ + +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 4px 2px 0px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/CheckBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/CheckBox-compat.css new file mode 100644 index 00000000..e2797c79 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/CheckBox-compat.css @@ -0,0 +1,38 @@ + +.mblCheckBox { + background-image: url(compat/button-bg.png); +} +.mblCheckBoxSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblCheckBox { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/CheckBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/CheckBox.css new file mode 100644 index 00000000..d1b2ba4c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/CheckBox.css @@ -0,0 +1,54 @@ + +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; + border-radius: 0; +} +.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #000000; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblCheckBoxChecked.mblCheckBoxSelected::after, +.mblCheckBox:checked.mblCheckBoxSelected::after { + border-color: #ffffff; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ComboBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ComboBox-compat.css new file mode 100644 index 00000000..ed86fb51 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ComboBox-compat.css @@ -0,0 +1,7 @@ + +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: none; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ComboBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ComboBox.css new file mode 100644 index 00000000..f76c334d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ComboBox.css @@ -0,0 +1,59 @@ + +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; + border-radius: 0; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-color: #000000; + border-radius: 0; + background-color: #ffffff; + color: #000000; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: #ffffff; + color: inherit; +} +.mblComboBoxMenuItemSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); + color: #ffffff; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ComboBox_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ComboBox_rtl.css new file mode 100644 index 00000000..10932a96 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ComboBox_rtl.css @@ -0,0 +1,4 @@ + +.mblComboBoxMenuItemRtl { + text-align: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/DatePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/DatePicker.css new file mode 100644 index 00000000..5aa22391 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/DatePicker.css @@ -0,0 +1,178 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#d6d6d6), color-stop(0.5, #d6d6d6), color-stop(0.9, #bdbdbd)); + background-image: linear-gradient(to bottom, #f7f7f7 0%, #d6d6d6 50%, #bdbdbd 90%, #d6d6d6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #fafafa), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #ffffff)); + background-image: linear-gradient(to bottom, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/EdgeToEdgeCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/EdgeToEdgeCategory.css new file mode 100644 index 00000000..dc480f26 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/EdgeToEdgeCategory.css @@ -0,0 +1,20 @@ + +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 22px; + background-color: #dedede; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); + border-bottom: 1px solid #c0c0c0; + color: #000000; + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; + line-height: 22px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/EdgeToEdgeList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/EdgeToEdgeList.css new file mode 100644 index 00000000..d455462b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/EdgeToEdgeList.css @@ -0,0 +1,9 @@ + +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: #000000; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #c0c0c0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/FixedSplitter.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/FixedSplitter.css new file mode 100644 index 00000000..3c88bebb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/FixedSplitter.css @@ -0,0 +1,21 @@ + +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/FormLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/FormLayout.css new file mode 100644 index 00000000..19a22b9b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/FormLayout.css @@ -0,0 +1,160 @@ + +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/FormLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/FormLayout_rtl.css new file mode 100644 index 00000000..44ebb14d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/FormLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/GridLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/GridLayout.css new file mode 100644 index 00000000..ebdc391f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/GridLayout.css @@ -0,0 +1,24 @@ + +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/GridLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/GridLayout_rtl.css new file mode 100644 index 00000000..3f5bdd0d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/GridLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblGridLayoutRtl > div { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Heading-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Heading-compat.css new file mode 100644 index 00000000..2ebc8b4f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Heading-compat.css @@ -0,0 +1,10 @@ + +.mblHeading { + background-image: url(compat/heading-bg.png); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #f6f6f6 0%, #dedede 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Heading.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Heading.css new file mode 100644 index 00000000..96bf485c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Heading.css @@ -0,0 +1,39 @@ + +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); + border-top: 1px solid #c0c0c0; + border-bottom: 1px solid #c0c0c0; + color: #000000; + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer-compat.css new file mode 100644 index 00000000..8a99f941 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer-compat.css @@ -0,0 +1,59 @@ + +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url(compat/icon-content-heading-bg.png); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer-compat.less new file mode 100644 index 00000000..e2df9856 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons-compat.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross-compat.css"); + +@import "variables.less"; +@import "../common/IconContainer-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer.css new file mode 100644 index 00000000..2064a55b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer.css @@ -0,0 +1,381 @@ + +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: #ffffff; + color: #000000; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: #000000; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer.less new file mode 100644 index 00000000..729745a1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross.css"); + +@import "variables.less"; +@import "../common/IconContainer.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer_rtl.css new file mode 100644 index 00000000..0aa248fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconContainer_rtl.css @@ -0,0 +1,13 @@ + +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: -2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu-compat.css new file mode 100644 index 00000000..af46c3eb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu-compat.css @@ -0,0 +1,34 @@ + +.mblIconMenu { + background-color: #9b9b9b; +} +.mblIconMenuItemSel { + background-color: #999999; +} +.dj_gecko .mblIconMenu { + background-color: rgba(160, 160, 160, 0.85); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 3px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 3px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 3px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 3px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu.css new file mode 100644 index 00000000..6c86bf01 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu.css @@ -0,0 +1,62 @@ + +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 3px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-color: rgba(160, 160, 160, 0.85); + border: 1px solid #000000; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid rgba(192, 192, 192, 0.85); + border-bottom: 1px solid rgba(192, 192, 192, 0.85); +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 3px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 3px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 3px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 3px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 13px; + color: #ffffff; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu_rtl-compat.css new file mode 100644 index 00000000..63807bda --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu_rtl-compat.css @@ -0,0 +1,17 @@ + +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 3px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 3px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 3px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 3px; + -moz-border-bottom-right-radius: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu_rtl.css new file mode 100644 index 00000000..52791b50 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/IconMenu_rtl.css @@ -0,0 +1,23 @@ +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid rgba(192, 192, 192, 0.85); +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-right-radius: 3px; + border-top-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0px; + border-top-left-radius: 3px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem-compat.css new file mode 100644 index 00000000..cda81ccb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem-compat.css @@ -0,0 +1,24 @@ + +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #999999; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem-compat.less new file mode 100644 index 00000000..332107ef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayArrow-compat.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck-compat.css"); + +@import "variables.less"; +@import "../common/ListItem-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem.css new file mode 100644 index 00000000..57753d7b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem.css @@ -0,0 +1,157 @@ + +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 43px; + list-style-type: none; + line-height: 43px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #c0c0c0; + background-color: #ffffff; + color: #000000; + font-weight: bold; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #ffffff; +} +.mblListItemChecked { + color: #404040; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: #000000; + margin-top: 12px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: #2d2d2d; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem.less new file mode 100644 index 00000000..f9f9d214 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayArrow.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck.css"); + +@import "variables.less"; +@import "../common/ListItem.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem_rtl-compat.css new file mode 100644 index 00000000..f3e90656 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem_rtl-compat.css @@ -0,0 +1,6 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem_rtl.css new file mode 100644 index 00000000..f1009b9f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem_rtl.css @@ -0,0 +1,40 @@ + +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonDarkBlueCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem_rtl.less new file mode 100644 index 00000000..3d3e9eb2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ListItem_rtl.less @@ -0,0 +1,4 @@ +@import url("../common/domButtons/DomButtonGrayArrow_rtl.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck_rtl.css"); + +@import "../common/ListItem_rtl.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Opener-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Opener-compat.css new file mode 100644 index 00000000..ded2ba04 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Opener-compat.css @@ -0,0 +1,53 @@ + +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #dedede; + border-bottom: 1px solid #dedede; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Opener.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Opener.css new file mode 100644 index 00000000..8baa2ea4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Opener.css @@ -0,0 +1,244 @@ + +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #f6f6f6; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #000000; + border-radius: 3px; + background-color: #dedede; + background-image: none; +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #f6f6f6; + background-image: none; + color: #000000; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #f6f6f6; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #9b9b9b; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #9b9b9b; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #9b9b9b; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #9b9b9b; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #dedede; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #dedede; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #dedede; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #dedede; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblOpenerUnderlay { + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Overlay-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Overlay-compat.css new file mode 100644 index 00000000..6a884395 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Overlay-compat.css @@ -0,0 +1,14 @@ + +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Overlay.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Overlay.css new file mode 100644 index 00000000..d68691b5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Overlay.css @@ -0,0 +1,90 @@ +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #f6f6f6; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Overlay.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Overlay.less new file mode 100644 index 00000000..e49ea9eb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Overlay.less @@ -0,0 +1,5 @@ +@import url("../common/transitions/coverv.css"); +@import url("../common/transitions/revealv.css"); + +@import "variables.less"; +@import "../common/Overlay.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/PageIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/PageIndicator-compat.css new file mode 100644 index 00000000..29d4f8ab --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/PageIndicator-compat.css @@ -0,0 +1,4 @@ + +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/PageIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/PageIndicator.css new file mode 100644 index 00000000..0b40e78d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/PageIndicator.css @@ -0,0 +1,23 @@ + +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressBar-compat.css new file mode 100644 index 00000000..38373a22 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressBar-compat.css @@ -0,0 +1,9 @@ + +.mblProgressBarProgress { + background-color: #048bf4; +} +.dj_gecko .mblProgressBarProgress { + -moz-transition-property: width; + -moz-transition-duration: 0.25s; + background-image: -moz-linear-gradient(top, #048bf4 0%, #048bf4 50%, #48adfc 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressBar.css new file mode 100644 index 00000000..8e6c4b80 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressBar.css @@ -0,0 +1,30 @@ + +.mblProgressBar { + position: relative; + height: 13px; + background-color: #ffffff; + border: 1px solid #048bf4; +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + height: 13px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#048bf4), to(#48adfc), color-stop(0.5, #048bf4)); + background-image: linear-gradient(to bottom, #048bf4 0%, #048bf4 50%, #48adfc 100%); + border-right: 1px solid #048bf4; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: -1px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressIndicator-compat.css new file mode 100644 index 00000000..091d2c35 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressIndicator-compat.css @@ -0,0 +1,83 @@ + +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressIndicator.css new file mode 100644 index 00000000..24420021 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressIndicator.css @@ -0,0 +1,157 @@ + +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressIndicator_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressIndicator_rtl.css new file mode 100644 index 00000000..e611fc4e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ProgressIndicator_rtl.css @@ -0,0 +1,14 @@ + +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 0px; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RadioButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RadioButton-compat.css new file mode 100644 index 00000000..21132aa8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RadioButton-compat.css @@ -0,0 +1,32 @@ + +.mblRadioButton { + background-image: url(compat/button-bg.png); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.dj_gecko .mblRadioButton { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RadioButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RadioButton.css new file mode 100644 index 00000000..f63a5d8e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RadioButton.css @@ -0,0 +1,50 @@ + +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-style: solid; + border-color: #c0c0c0; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #000000; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: #ffffff; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRect-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRect-compat.css new file mode 100644 index 00000000..15f63114 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRect-compat.css @@ -0,0 +1,72 @@ + +.mblRoundRect.mblShadow { + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #c0c0c0; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #c0c0c0; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #c0c0c0; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #c0c0c0; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRect.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRect.css new file mode 100644 index 00000000..7a20ee49 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRect.css @@ -0,0 +1,13 @@ + +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #c0c0c0; + border-radius: 8px; + background-color: #ffffff; + color: #000000; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectCategory.css new file mode 100644 index 00000000..ef9e97bb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectCategory.css @@ -0,0 +1,11 @@ + +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #000000; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectCategory_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectCategory_rtl.css new file mode 100644 index 00000000..8e8a8e88 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectCategory_rtl.css @@ -0,0 +1,4 @@ + +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectList-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectList-compat.css new file mode 100644 index 00000000..3f51c8fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectList-compat.css @@ -0,0 +1,77 @@ + +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #c0c0c0; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #c0c0c0; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #c0c0c0; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #c0c0c0; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectList.css new file mode 100644 index 00000000..7efe3c60 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/RoundRectList.css @@ -0,0 +1,19 @@ + +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #c0c0c0; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ScrollablePane.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ScrollablePane.css new file mode 100644 index 00000000..425b9209 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ScrollablePane.css @@ -0,0 +1,12 @@ + +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SearchBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SearchBox-compat.css new file mode 100644 index 00000000..bbd864fc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SearchBox-compat.css @@ -0,0 +1,22 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 0; +} +.mblSearchBox { + height: auto; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SearchBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SearchBox.css new file mode 100644 index 00000000..bee51ebf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SearchBox.css @@ -0,0 +1,64 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; + border-radius: 0; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: #c0c0c0; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid #c0c0c0; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 1em; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #c0c0c0), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #c0c0c0), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SimpleDialog-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SimpleDialog-compat.css new file mode 100644 index 00000000..7d98d81a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SimpleDialog-compat.css @@ -0,0 +1,4 @@ + +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SimpleDialog.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SimpleDialog.css new file mode 100644 index 00000000..8355cf5f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SimpleDialog.css @@ -0,0 +1,48 @@ + +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration { + border-radius: 0; + background-color: #ffffff; + border: 1px solid #000000; + color: #000000; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 7px 0 7px -5px; + padding: 0 14px 7px; + width: 244px; + border-bottom: 1px solid #c0c0c0; + font-size: 20px; + font-weight: bold; + text-align: left; +} +.mblSimpleDialogText { + margin: 14px 9px; + width: 244px; + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Slider-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Slider-compat.css new file mode 100644 index 00000000..885dc078 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Slider-compat.css @@ -0,0 +1,40 @@ + +.mblSlider { + background-image: url(compat/slider-h-bg.png); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url(compat/slider-h-bar-bg.png); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url(compat/slider-handle-bg.png); +} +.mblSliderV { + background-color: #e2e2e2; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #c0c0c0; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblSliderHandle { + background-image: -moz-linear-gradient(top, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_ff3 .mblSlider { + -moz-border-radius: 0; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 0; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Slider.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Slider.css new file mode 100644 index 00000000..1019226b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Slider.css @@ -0,0 +1,67 @@ + +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); + border: 1px solid #9b9b9b; + border-bottom-color: #767676; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel-compat.css new file mode 100644 index 00000000..4d605d58 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel-compat.css @@ -0,0 +1,36 @@ +.mblSpinWheel { + background-image: url(../common/compat/spinwheel-bg.png); +} +.mblSpinWheelBar { + background-image: url(../common/compat/spinwheel-bar.png); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel.css new file mode 100644 index 00000000..ba26bc8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel.css @@ -0,0 +1,77 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel_rtl-compat.css new file mode 100644 index 00000000..98aab55f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel_rtl-compat.css @@ -0,0 +1,4 @@ +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel_rtl.css new file mode 100644 index 00000000..2f94024c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/SpinWheel_rtl.css @@ -0,0 +1,5 @@ + +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch-compat.css new file mode 100644 index 00000000..c53b18e3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch-compat.css @@ -0,0 +1,109 @@ + +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url(compat/switch-square-k.gif); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round1-k.gif); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round2-k.gif); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc1-k.gif); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc2-k.gif); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url(compat/switch-square-k.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch-compat.less new file mode 100644 index 00000000..f15894c8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch-compat.less @@ -0,0 +1,7 @@ +@import "variables.less"; +@import "../common/Switch-compat.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwSquareShape-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch.css new file mode 100644 index 00000000..5f3f9f85 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch.css @@ -0,0 +1,223 @@ + +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 8px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: 1px solid #9b9b9b; + border-bottom-color: #767676; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch.less new file mode 100644 index 00000000..51d10adc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch.less @@ -0,0 +1,7 @@ +@import "variables.less"; +@import "../common/Switch.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwSquareShape-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch_rtl-compat.css new file mode 100644 index 00000000..a3346662 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch_rtl-compat.css @@ -0,0 +1,37 @@ + +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch_rtl.css new file mode 100644 index 00000000..51bc7180 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Switch_rtl.css @@ -0,0 +1,110 @@ + +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar-compat.css new file mode 100644 index 00000000..af81377c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar-compat.css @@ -0,0 +1,60 @@ + +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-image: none; + background-color: #000000; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url(compat/heading-bg.png); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url(compat/tab-seg-button-bg.png); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url(compat/tab-seg-sel-button-bg.png); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url(compat/tab-slim-bar-bg.png); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url(compat/tab-tall-bar-bg.png); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar-compat.less new file mode 100644 index 00000000..c0476f34 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar-compat.less @@ -0,0 +1,3 @@ +@import "variables.less"; +@import "../common/TabBar-compat.less"; +@import "../common/domButtons/DomButtonWhiteCross-compat.css"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar.css new file mode 100644 index 00000000..9ab802a8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar.css @@ -0,0 +1,278 @@ + +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #c0c0c0; + border-bottom: 1px solid #c0c0c0; + text-shadow: none; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #000000 100%); +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + color: #ffffff; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#484848), to(#242424)); + background-image: linear-gradient(to bottom, #484848 0%, #242424 100%); +} +.mblTabBarTabBar .mblTabBarButtonSelected .mblTabBarButtonLabel { + color: #ffffff; +} +.mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-style: solid; + border-color: #9b9b9b #9b9b9b #9b9b9b #9b9b9b; + color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); + border-top: none; + border-bottom: none; +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: #000000; + border-color: #9b9b9b; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #c0c0c0; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #000000 100%); +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar.less new file mode 100644 index 00000000..4066ecc1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar.less @@ -0,0 +1,3 @@ +@import "variables.less"; +@import "../common/TabBar.less"; +@import "../common/domButtons/DomButtonWhiteCross.css"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar_rtl-compat.css new file mode 100644 index 00000000..9d501c64 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar_rtl-compat.css @@ -0,0 +1,19 @@ + +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 5px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 5px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar_rtl.css new file mode 100644 index 00000000..e0527eb1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TabBar_rtl.css @@ -0,0 +1,83 @@ + +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 5px; + border-top-left-radius: 0px; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 5px; + border-top-right-radius: 0px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextArea-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextArea-compat.css new file mode 100644 index 00000000..b4ad7551 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextArea-compat.css @@ -0,0 +1,7 @@ + +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextArea.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextArea.css new file mode 100644 index 00000000..9241a732 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextArea.css @@ -0,0 +1,14 @@ + +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; + border-radius: 0; +} +.mblExpandingTextArea { + margin: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextBox-compat.css new file mode 100644 index 00000000..abab4893 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextBox-compat.css @@ -0,0 +1,4 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextBox.css new file mode 100644 index 00000000..1032040f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TextBox.css @@ -0,0 +1,11 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; + border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TimePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TimePicker.css new file mode 100644 index 00000000..5aa22391 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/TimePicker.css @@ -0,0 +1,178 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#d6d6d6), color-stop(0.5, #d6d6d6), color-stop(0.9, #bdbdbd)); + background-image: linear-gradient(to bottom, #f7f7f7 0%, #d6d6d6 50%, #bdbdbd 90%, #d6d6d6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #fafafa), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #ffffff)); + background-image: linear-gradient(to bottom, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToggleButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToggleButton-compat.css new file mode 100644 index 00000000..c18955ae --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToggleButton-compat.css @@ -0,0 +1,42 @@ + +.mblToggleButton { + background-image: url(compat/button-bg.png); +} +.mblToggleButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblToggleButtonChecked { + background-image: url(compat/button-chk-bg.png); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblToggleButton { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblToggleButtonChecked { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 0; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url(compat/togglebutton-chk-mark-bg.png); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToggleButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToggleButton.css new file mode 100644 index 00000000..40f9f6bf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToggleButton.css @@ -0,0 +1,58 @@ + +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; + border-radius: 0; + font-size: 13px; + color: #000000; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); + color: #ffffff; +} +.mblToggleButtonChecked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + color: #000000; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #000000; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); + color: #ffffff; +} +.mblToggleButtonChecked.mblToggleButtonSelected:after { + border-color: #ffffff; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToggleButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToggleButton_rtl.css new file mode 100644 index 00000000..f6145188 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToggleButton_rtl.css @@ -0,0 +1,7 @@ + +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToolBarButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToolBarButton-compat.css new file mode 100644 index 00000000..e74d47b4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToolBarButton-compat.css @@ -0,0 +1,63 @@ + +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url(compat/arrow-button-head-sel.png); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-right-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url(compat/arrow-button-right-head-sel.png); +} +.dj_ie .mblToolBarButtonBody { + background-image: url(compat/arrow-button-bg.png); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url(compat/arrow-button-bg-sel.png); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToolBarButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToolBarButton.css new file mode 100644 index 00000000..7260fe7d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToolBarButton.css @@ -0,0 +1,94 @@ + +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + text-shadow: none; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1.05) rotate(45deg); + transform: scale(0.7, 1.05) rotate(45deg); + border: 1px solid #9b9b9b; + border-right-color: #767676; + border-bottom-color: #767676; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: 1px solid #9b9b9b; + border-bottom-color: #767676; + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToolBarButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToolBarButton_rtl.css new file mode 100644 index 00000000..fd451779 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ToolBarButton_rtl.css @@ -0,0 +1,18 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Tooltip-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Tooltip-compat.css new file mode 100644 index 00000000..53ba057f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Tooltip-compat.css @@ -0,0 +1,40 @@ + +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #dedede; + border-bottom: 1px solid #dedede; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Tooltip.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Tooltip.css new file mode 100644 index 00000000..9e38a84c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/Tooltip.css @@ -0,0 +1,151 @@ + +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #000000; + border-radius: 3px; + background-color: #dedede; + background-image: none; +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #f6f6f6; + background-image: none; + color: #000000; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #f6f6f6; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #9b9b9b; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #9b9b9b; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #9b9b9b; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #9b9b9b; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #dedede; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #dedede; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #dedede; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #dedede; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ValuePicker-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ValuePicker-compat.css new file mode 100644 index 00000000..df728003 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ValuePicker-compat.css @@ -0,0 +1,19 @@ + +.mblValuePickerSlotButton { + background-image: url(compat/valuepicker-button-bg.png); +} +.mblValuePickerSlotButtonSelected { + background-color: #999999; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: -moz-linear-gradient(top, #f7f7f7 0%, #d6d6d6 50%, #bdbdbd 90%, #d6d6d6 100%); +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: -moz-linear-gradient(top, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ValuePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ValuePicker.css new file mode 100644 index 00000000..f98ddaff --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ValuePicker.css @@ -0,0 +1,102 @@ + +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#d6d6d6), color-stop(0.5, #d6d6d6), color-stop(0.9, #bdbdbd)); + background-image: linear-gradient(to bottom, #f7f7f7 0%, #d6d6d6 50%, #bdbdbd 90%, #d6d6d6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #fafafa), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #ffffff)); + background-image: linear-gradient(to bottom, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ValuePicker.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ValuePicker.less new file mode 100644 index 00000000..1561b85c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/ValuePicker.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayPlus.css"); +@import url("../common/domButtons/DomButtonGrayMinus.css"); + +@import "variables.less"; +@import "../common/ValuePicker.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/View.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/View.css new file mode 100644 index 00000000..77bd5354 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/View.css @@ -0,0 +1,123 @@ +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: #000000; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/View.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/View.less new file mode 100644 index 00000000..910651f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/View.less @@ -0,0 +1,6 @@ +@import url("../common/transitions/slide.css"); +@import url("../common/transitions/flip.css"); +@import url("../common/transitions/fade.css"); + +@import "variables.less"; +@import "../common/View.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base-compat.css new file mode 100644 index 00000000..8da26991 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base-compat.css @@ -0,0 +1,449 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #48adfc 0%, #048bf4 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #048bf4 0%, #48adfc 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #bbbbbb 0%, #999999 100%); +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #f6f6f6 0%, #dedede 100%); +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #c0c0c0; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #c0c0c0; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #c0c0c0; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #c0c0c0; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #c0c0c0; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #c0c0c0; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #c0c0c0; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #c0c0c0; + margin: 0 5px; +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #999999; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url("compat/switch-square-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base.css new file mode 100644 index 00000000..7e303872 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base.css @@ -0,0 +1,916 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; + color: #000000; +} +.mblBackground { + background-color: #c0c0c0; +} +.mblColorBlue { + color: #ffffff; + background-color: #048bf4; + background-image: -webkit-gradient(linear, left top, left bottom, from(#48adfc), to(#048bf4)); + background-image: linear-gradient(to bottom, #48adfc 0%, #048bf4 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#048bf4), to(#48adfc)); + background-image: linear-gradient(to right bottom, #048bf4 0%, #48adfc 100%); +} +.mblColorDefault { + color: #000000; + background-color: #a4a4a4; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to right bottom, #e2e2e2 0%, #a4a4a4 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #999999; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to right bottom, #bbbbbb 0%, #999999 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); + border-top: 1px solid #c0c0c0; + border-bottom: 1px solid #c0c0c0; + color: #000000; + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: #000000; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + text-shadow: none; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1.05) rotate(45deg); + transform: scale(0.7, 1.05) rotate(45deg); + border: 1px solid #9b9b9b; + border-right-color: #767676; + border-bottom-color: #767676; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: 1px solid #9b9b9b; + border-bottom-color: #767676; + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #c0c0c0; + border-radius: 8px; + background-color: #ffffff; + color: #000000; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 22px; + background-color: #dedede; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); + border-bottom: 1px solid #c0c0c0; + color: #000000; + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; + line-height: 22px; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #000000; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #c0c0c0; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: #000000; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #c0c0c0; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 43px; + list-style-type: none; + line-height: 43px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #c0c0c0; + background-color: #ffffff; + color: #000000; + font-weight: bold; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #ffffff; +} +.mblListItemChecked { + color: #404040; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: #000000; + margin-top: 12px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: #2d2d2d; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 8px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: 1px solid #9b9b9b; + border-bottom-color: #767676; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base_rtl-compat.css new file mode 100644 index 00000000..37224447 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base_rtl-compat.css @@ -0,0 +1,42 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base_rtl.css new file mode 100644 index 00000000..ef6f7886 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/base_rtl.css @@ -0,0 +1,182 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 0px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonDarkBlueCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 0px; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/common-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/common-compat.css new file mode 100644 index 00000000..66f1930a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/common-compat.css @@ -0,0 +1,18 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #48adfc 0%, #048bf4 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #048bf4 0%, #48adfc 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #bbbbbb 0%, #999999 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/common.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/common.css new file mode 100644 index 00000000..602bc487 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/common.css @@ -0,0 +1,61 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; + color: #000000; +} +.mblBackground { + background-color: #c0c0c0; +} +.mblColorBlue { + color: #ffffff; + background-color: #048bf4; + background-image: -webkit-gradient(linear, left top, left bottom, from(#48adfc), to(#048bf4)); + background-image: linear-gradient(to bottom, #48adfc 0%, #048bf4 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#048bf4), to(#48adfc)); + background-image: linear-gradient(to right bottom, #048bf4 0%, #48adfc 100%); +} +.mblColorDefault { + color: #000000; + background-color: #a4a4a4; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to right bottom, #e2e2e2 0%, #a4a4a4 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #999999; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to right bottom, #bbbbbb 0%, #999999 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/common.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/common.less new file mode 100644 index 00000000..4e57a5c4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/common.less @@ -0,0 +1,2 @@ +@import "variables.less"; +@import "../common/common.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-bg-sel.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-bg-sel.png new file mode 100644 index 0000000000000000000000000000000000000000..961e214195c5d03f658f8766d464ce17f6922682 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{Q!3HF=8QC&{6lZ})WHAE+w;%{J)~Ccz1PT^= zx;TbZ%wavq$kyP%z;N(yu8WJy5kbL;9UT@*K=A91+2QZCpZ2Y{Ij{V^_H=1%(Y)m{ z#}$9?JH0JeD0xb0Y-*&~%;%BIGA9+vq)M>8{2jMz-Q;b#OEaZ76+L3F2Zc_ZlB($% m=rQm4q|}*9GPOJ>{a{Z1;rp-jsONE@^$eb_elF{r5}E+-HbdM1 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..36ea74e034edea8707a13823c31ace3f1d7ecd0d GIT binary patch literal 191 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{Q!3HF=8QC&{6lZ})WHAE+w;%{J)~Ccz1PT^< zx;TbZ%wavq$kyP%z;N*IfBQ))ljgWgQkgheWzv%AImR{j)!+X<_1UKA{`Q#bs?RG= z70PUSzdPr)nxR|d_0Val6D#MX&Qg;+9@v&RVc+|uudOm~hs|0xQK0EcscvYfXXLaX nk=7@bdXdvSXDyqg(rN$NFJ3d^@wz=g%Naaf{an^LB{Ts5d`(4x literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-head-sel.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-head-sel.png new file mode 100644 index 0000000000000000000000000000000000000000..fe96456b339108fcff08275303a81a86e86b8b05 GIT binary patch literal 482 zcmV<80UiE{P)Ft!OY9FkgYk<3Y#ck?!|9^A&0~n{>O~q@RJ= zY)0qvnJ$+Le}XZ9t!%ejIvfrRTLfdMUa!-Bzt?yM#^W(Lj>At9@Eu$O*Xxy*%O!0# z8)>~>%WEz0{eG!jE)(h^;0ONGLc`&Zrqd~#&*uu9Bq)K?=|uQ1lgY$L20ot;l}aTV zjYgiZ3y`6HzfZPpQ?J)kU=8;`tZ@K^!_98DD|I>@PaMkU^VDv)rBw;L52Z6m-DisBa>_&!OuNN&A3n~_io=_6dx&en$ zC=`rb-_l$zr^sfr3N7?}KDqkobXt?iWSHx#fr*n!r92tm+GH}RNF)->IJVFou~0<=*u7-YUfD7rYk YKmXQu`bA0R9RL6T07*qoM6N<$f?RvkZ2$lO literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/arrow-button-head.png new file mode 100644 index 0000000000000000000000000000000000000000..24d52ee64b5479b8ffe38155d9c7683e82468652 GIT binary patch literal 452 zcmV;#0XzPQP)-|vE9`WY&fN^o8GOK8BdEL<)Z+-^7Jdc6v5U_PIN6+55LTG~)PpU3HR z3Z>l^55M2aBPH?;3==WgXV8`Q;pxJDGAKLHt1iRgi=JWYiLAKp)iOc13 zbiH0b2HASOCRnXjv|KK!TCIK#Efx!UhF6?SCU1jmI-L^CW;0PDk)X@vq8enQ(THF; z9Et{m0aYp$^-#axCnddJkH+J%Vvuz@9fEGRD-#R`>3lxRf~?(c)3a8qB|^i?<+41~ zXfz1$2Y&qu-zW*8FHo!1RCzoeI-O2pkfBOS@LF7{RH8zm@E4 zP%)HP7IHWo1Wu=u_%+z=cG_$<%1gs$vk{Kly0000+=7a5xOQ-ER2%2p!`6euMJ)yng8QdVwB~2b#^MR!}^jPbk%D71!(4 zGbs23y5H~ey)v1McZdtkj>jWvwVG>CoX=;_<#I6;i$(eE7~-AH4u=Ew`#sX>v~!3H z>}0}8C-jOz&jm3JsMlzYShIrxEYPB-V=W|plm9L;!EEb^U za_K0QO35M_q1kK(FVpE1iA3T*#1lG3qY=vGvJ8sxcnq3MCSTNfvuHFbx11ObhoHe= z;7L_d^!t72;MU^PWT@Bcfx6wUq<))qIvv^FMj_hmHoU~+arrJrh}}x9RtxIbESt^B z_xbvB>-9Pm_L0(PG~|X2g+kVC#0ySXVs^A8#C>IlhH0000h zdq1V`nRo4Dy{!AOoljjWA63qIsg-swqV0)O`NNW#FBlm97bU!O1nLzi3Gxg6j|vzb zD91_y1Xl4L`*|TR~xpL+8>(_ht?tS|7>F?ja7cE+J^XARZpFbZta^(O2 z|6o;6Lh&aHBZ#R3B0y#^aQtIn z2XDg`m%Tg|yQ86jVOPmpqqE!*42;YS0y00iZ>&pR+rZ6X(U7np=~$!u{$87%Mh8z% zG@bp_XQ$$eV~h5S>An3>^6dB$TlxDT}ws2m4TVwqF#nnymm-=dcFME3QNats> kf0C6&C)dn0Kh6`g>m~Ea#nJj53Ju@iAJk`JV_~oc00tbG5C8xG literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d1582e1c6645fd5f97cb0f85eb7d56ed5bcfef9c GIT binary patch literal 141 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!VDz+%YL{6DgFST5Z9+qpMLrB<;|NnzkmN` zVEBJu#QHQ)inS!jFZe$YF#O)e7Yr2OEbxddW?FS$p#4y hZA=;gjJ$^!8REj24#s|XVg!_C@O1TaS?83{1OU(cE3E(k literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-chk-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-chk-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d1582e1c6645fd5f97cb0f85eb7d56ed5bcfef9c GIT binary patch literal 141 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!VDz+%YL{6DgFST5Z9+qpMLrB<;|NnzkmN` zVEBJu#QHQ)inS!jFZe$YF#O)e7Yr2OEbxddW?FS$p#4y hZA=;gjJ$^!8REj24#s|XVg!_C@O1TaS?83{1OU(cE3E(k literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..785783332484d4d66c8835b2dae4c0fb5a683d85 GIT binary patch literal 191 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!VDz+%YL{6DfIxK5ZCnd^eI!O)YR0hS+l03 zq-62p#XUVeyLRo$&CQ)NXHH8?%jV6S85sWiZ&OhLYT+#j@(cct1Q={zD7674I14-? ziy0WW1wojxJ|%u4P*By=#WAE}PO?VA4Td&02MLBY;f4SP9^r-pMhPv3h0GFW42sMQ YimIFkRqLkf05vdpy85}Sb4q9e0NkoQ_5c6? literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-unsel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/button-unsel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..785783332484d4d66c8835b2dae4c0fb5a683d85 GIT binary patch literal 191 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!VDz+%YL{6DfIxK5ZCnd^eI!O)YR0hS+l03 zq-62p#XUVeyLRo$&CQ)NXHH8?%jV6S85sWiZ&OhLYT+#j@(cct1Q={zD7674I14-? ziy0WW1wojxJ|%u4P*By=#WAE}PO?VA4Td&02MLBY;f4SP9^r-pMhPv3h0GFW42sMQ YimIFkRqLkf05vdpy85}Sb4q9e0NkoQ_5c6? literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..4fbdb69f7244445b94562915a8c60688f987b40b GIT binary patch literal 173 zcmeAS@N?(olHy`uVBq!ia0vp^j6kf#!3HFY>I`du6lZ})WHAE+w;%{J)~Ccz1PaD` zx;TbZ%+Wovo$-Kz0LzB^^&UP(l0JF&&#n}>TRrofWybrnTdp}3`4PA$%bs1YbOSAd1}s__uSEm;~%5Rw7JZ4 TYi}z7tzz(W^>bP0l+XkKw6{8j literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/icon-content-heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/icon-content-heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3daa1a81de8d9b80d652d39251724d4732b181f0 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{O!2~4hKV8-UQlcfU5hcz=sfi_-`FRQ3GDm;4Z)FMK;m+*4Uc^lE|0LuLskhMOMNz8OF*44$rjF6*2UngDiDP`>~G literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/red-button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/red-button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..785783332484d4d66c8835b2dae4c0fb5a683d85 GIT binary patch literal 191 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!VDz+%YL{6DfIxK5ZCnd^eI!O)YR0hS+l03 zq-62p#XUVeyLRo$&CQ)NXHH8?%jV6S85sWiZ&OhLYT+#j@(cct1Q={zD7674I14-? ziy0WW1wojxJ|%u4P*By=#WAE}PO?VA4Td&02MLBY;f4SP9^r-pMhPv3h0GFW42sMQ YimIFkRqLkf05vdpy85}Sb4q9e0NkoQ_5c6? literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/slider-h-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/slider-h-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..977cbbe7945425c14fafc214839a966d8289dc86 GIT binary patch literal 162 zcmeAS@N?(olHy`uVBq!ia0vp^j6lr6!VDx&nRFBZDd_;85ZCPN>}k`cH8eD=UcI`k ztZc!81>N1<+qP|EVEC`Bq<;;ljI$)jFZe$cFa-No2!R9(JR*x37`O#Nn6W-3ej-p% w!qdeuq+(98MuI^CM}k0tM?yeCK|%rpgP;K8!A_k!)<883p00i_>zopr05Uc({{R30 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/slider-h-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/slider-h-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..79eea5ca94a4b834f267cc684131abb16f66e39b GIT binary patch literal 141 zcmeAS@N?(olHy`uVBq!ia0vp^j6lr6!VDx&nRFBZDgFST5Z7nVo_+c9O>_%)r1c2*Ql@De)75g2J9Ijv*Cuk_{3J h5(F5WSQS{97&rtN4*qauy9<uxpMgM;Rg>MFfjaIHNAivsFJHB$S?Rm3@~guqjMf8%30tMS3>XfvD2Ol|W>N@YaAG&$VQ^w&2rgj>bX%r!1gMa~)78&q Iol`;+0DdYu!vFvP literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-arc1-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-arc1-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..c2b172073a053897c2eded437cd3ece947404649 GIT binary patch literal 304 zcmV-00nh$NNk%w1VH*G&0D}Mkc6N5Ow6xRH)0>-{!^6Xcg@xha;jFBzetv$uyu94p z+@z$W%F4?B|Nj6000000A^8LW000dDEC2ui02=@s000Qx02>Hwuwa0}g9sBETrjZV z0RaXgN}NbBqJRSp8$49Nv7^V29xpZw0J5aX00R#&Fv-#*1C#^>$ec;DrcId)8w9w? zlP5-k#sx+uZi(1aTUK74XQ<3l;k7mEDubYcjlqGftFNz5 zINT-cy)EYkyMRQF>FI52Z*Py0H;_n3XuP|-;`6J!r?;=azrUK-pnze=hKGkcK3f$i zEZF$?_ylF|c|JQgrJmyBin(`Y=jQYitoGe+94J8KN4iN_?mYP`=+L*+uPgp^z_Zm z&Hw-Z000000000000000A^8LW000XBEC2ui08IcJ000R702c@>Frc8pg9sBUT*$DY zLxTkbN)#Z#fW?a#Giuz(v7^V27b!|yfB>Y)lPFUfKrk_Z%9k)zCJ-R7WXzj5JF;95 zAg9lt1_IOsN;D=*0R<8$UCOkn)2C3QN}c+&fB*ynsA}EHwd>NW0kV1>OLpv41!dE! zrK$k!+P83(Di{#AuG)fj^NuY@v9I61fCCF2Ot>&%zJ?PkUd-6<00oUBOP(x10RpR( zGiwH10Kw(Wpf`8!9J=)6%REi1W-N4pf&#E(%brcUw(Z-vbJtcN@U`yWz=I2i&70)q x;mDH<_bk!3^5@WL7Z*q%K=kX-0}vRw-~fQ{;KL1zA5Xr#`Sa+(ACMRj06T{+ps)Y{ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-arc2-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-arc2-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..3c690450cc1d5a1fda65665a9243a90548ea586c GIT binary patch literal 339 zcmV-Z0j&N-{!^6Xcg@xha;jFBzetv$uyu94p z+@z$W%F4?B|Nj6000000A^8LW000dDEC2ui04o3+000R702>Hwuwa0}g9sBUT$pgd zz=sC}7??=0qQ#3CEebgBut7uxAVZ2ANwQ?gjSmBuT*;DUfPn`Xw46y(0fUzW1?b$# zv!~CWKzBN95Fn`0qd_?mMas14%K!wLN;OI#08|E8vufSSwX4^xRTq36OLi=Qf@RaH z#cGg%+qZDz%AHF$Zri$e^Wwd$x36D=2?7fqOt`S&!-NMcK+L#t;{{e7OP*{sz=6t` zGi%<=S@VGe1Uri!-FYZv(x_1n9dMwv>({Vj%bx9efI!-~bK}NIP`7X0Lj^8a@Vj{I lf*lbk9?rbE^XJf=4?xgSU;zNwvuoeZz5Dh84+8-L06Y7fndtxk literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-arc2-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-arc2-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..da6f88041429878ce098497aca3db9e00f0f6beb GIT binary patch literal 512 zcmZ?wbhEHbjAM{yXklQ;&d%Ptb?cNVQ?6dU+S=NB;J|?;OO`x-{J5s3rlh1~=gysT z=FGW$`*u%H&$)Bw)~s3c`t|Go|Nk=(4HSQ}FfuR*GU$MGfb3-8_{X5kVH2=m!NFz@ zVXc@G8x|gJ=jP{_!{OL?v|GYB>&}Udi;wp!*m}*0P-r+gStEE=%*jnlPfs_96WAIadGGac8TF53+4YK0VKO_qMmU zcND+AclUwm`}+r)xzEQQU~GJRVzPGpxjj2SKfkcpTm3ngMQ_LX{rl^`adUieU}6!=c+kk9w&Fn( zkJ*a_&HNlo4m68|Wjt&Z)lv{(=3sd6uw9`|<57pow2Vic8nZeWn1wkfJnA+$rjgvm i>k|^nWc+N!<31I&15mYP`=+L*+uPgp^z_Zm z&Hw-Z000000000000000A^8LW000XBEC2ui0A2ta000R702c@>Frc8pg9sBUT*$DY z!-oqC2%IQDfPsq`Giuz(v7^V2AVYSnIB@|2ktkEDTqzO(#RM#4%AENzfdGLgY3kf5 z)8&EyJc9}i835esMA|Ab9Db2POst06U4ksG$G= literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-round1-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-round1-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..008f50988cf1b9854144aa9f2c15b0d0ee77deb7 GIT binary patch literal 334 zcmV-U0kQr^Nk%w1VH*G&0D}Mkc6N5Nv$K_zmDAJHhK7d2!^5Maqv7GXLJSb#rOlBvKe8Oa zv!~CWJsqSRXaJ~DqYVrU43OZcQ=bVsJ}^-6sa2&08))6iwX0XH44Hl%J2t8Vie%Gn zO@Od~+qZDz%7vS7uHCx@5+=aQ_pO432?7fqOt^61gES2*R!p((J1N_vvC2&z3D)u3fwK|NnmmQh?%57DfgJ0R|nACXk&B9RC;;Ib=Kv4luKF2y4Zh z*s$<$J1?(|gu{kKM;p1AGVYw%xcGR#f^*lC6%QV{GBe7oh&j1w>FMbP$)`#r4>Wl8 z7#F{~b8_>NlMJj)T(VwUR$N@{F?d|OakK4Y!OlZ8jyW;b!yQjCWzrVlwCZ7YtjtvhFcf40J*x}Id z`1k~6?|D8uH$6Q)SzPAGnVp-TpP$I9!Qi`VOC}?S^oqE%ySBc*z9ISaJlW_)47YX^ zzrMFO>cA0JmL_g_zdbuXK0Yy7+k9VxQq$85i@oRT$uv5!vTw@1e{S#Y@9!TRF6#dN zPPnPze}3J)4N)G88~%_TVw zGz++CJZupO%Xru-s`lWXuYgDaLz_aIhEf~5z=?+r=Vd1x=+N1wk;ud@kZ`w?#qa=w R7puxLk%I&HMZN+}zy2z`*qM z^tH9M|Ns900000000000A^8LW000aCEC2ui08IcJ000R702v4zNU%VF1PBu%a<@?9x%9aU;vpobLI?C z^QO+9KuPkn=rgF%qX&lC1`x}8gRYuo@E>+0P*;NafBdJQB1OxP{L0f-YTUd*_$i#+bah^XJW%6I=kjx^?FZY6@I{`?~k<2C^h;A4os|_T+ UzrOwZ`19+(U*5ohngIa-JBs46LjV8( literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-round2-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/switch-round2-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..94d1616d1ada89394d6b249ed5b29a501e1afee1 GIT binary patch literal 380 zcmV-?0fYWWNk%w1VJiR|0D}Mkc6N5Ow6v9#mDAJHhK7d2!^5Pcq~YP=e0+Soyu6#6 zo7>yljEs!S%gd~+tpET2A^8LW000jFEC2ui04o3+000R703Qe(IIuwg2MQ7@T*z>t zg8&T(N}Tv0fPn-J1{~PPv7^V10~#bS5P+h@0tN~!Sjn=b%a<=v7BE@S!2p;zbGjVx zkYa!UI)e)RdD7;9qezn~UCMN+gP8*jWNb>cD$@oA1_nrAwX4?w2}(XN@U?8!tOgsX zUCXwu+qZDnLfjg+uHCp{9bml6mu~`u1p*5mOt`S&!-NweUd))W;>M687f|ppf#u7X zGi%<=`SQV^okNT6{Ih}H(Wp^7h^XMF>({Vj%bxvOfxyqSbL)=XQ()`ez;)Xmh|+=a zT*$DY z!-o(fCLFNf0KtnG2R10cv7^V2AVZ2ANwOr#1{pIBD3G9~%a<@?%A85Frp=oL2Bg$@ zv!~CWKyRWVd*({VNBNRZpw(Z-vbL-yCySMM(0w^i~PQ1AB zk%I&HMZN+}zy2z`*qM z^tH9M|Ns900000000000A^8LW000aCEC2ui0A2ta000R702v4zNU%VF1PBu?3vfACtmu}tw9s3F%Ja)iA!iW=hHIP8DW5fstNS;i&vgON| zGi%<=x$^*u1w4x$O}eyZg9SL6Ud_7oWds%hyPi#(G*Sb#bL-9wmx1ctz;h!YXdra( z}^XJf`OP@}?y7lSHHD2G&y}NhpITt&8A5Xr#^94BtE+}rky?f~f(5D|r rKmh3X_`e4*Ab`O9iy!ev000CQXyAbeCaB-{!^6Yj;o+>Ttc8Vzyu7^J+}x$5 zrOL|6|Ns900000000000A^8LW000aCEC2ui04V?)000Qq02wG4K(L^}g9sBU9H2m; zfC3OBN}NcsqQwFN1}50Zv7^V2AVYE_D6*tUkt9#5R7p^P%a<@?%A85_Wy_j4bJD!2 zv!_m;K7-CAxS*)fqezn~U22pl)2C3EI*m#-DnSBRvufSSwX4^xSHFrK>oqLdvt$V( zSj)Dp+qZDzvQ;a$uHCqF@9MovFo55`fCCF2O!#l#!iW@wK(L^}g9sBUT*$DY zLx%?h4wy)>qQ#3CGiuz(v7^TU0}F^8NwTELlPFWFT*E%fCCF2Ot`S&!-x|rUaa6R(T@n$evBRw(Z-vbL-yCyElW_zJm)NPJA~( z0?3mqU(UR_^XJf`OP@~QIQ8q;vulrTeY^MX;GIbmL_og0`Sa-0t6$H)z5DkF#>1aa zzrOwU1Oe#Z&%eL_{{RLk;D7`c2ta-YCaBC>mbfB!yp>eT=L{~0iV z;!hSv1_n+B9gqyj3sP23zvn%#zjZFC5*G~oY=V7 zy`PD#PR4W763@vj{;Oh67Nwk;W{|wCMsxEr-+q()S9d%oE@+tV(99+4wPnS{#U7Kj zL?0Bdyu3VMu~M$q)>T(myRJ;SdrEZGwRH)Hh5l-7%Zb>Ob~#DaW5L?n+Y26_n(MuN z-QC?4oEy%b-oF0+{<7~(ay~mg#2joB*8bLAvGMWoB5CJ&eEaktF-P~vcE-a70?ZC?>{Tbv&@|j$@Noa5g7>QDERWoaj>;A+_Dkwf{CcnR{qH5; zYdfz=1!hn6(sVf&>7^-X=%(4?Q1QO=d8Nv8nZ&hIdkkBy%?j}P`%tK PtzqzV^>bP0l+XkKBmq2Q literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/tab-seg-sel-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/tab-seg-sel-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d6ad2ec0369fbadfb9a5770870edba3492cbb608 GIT binary patch literal 200 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfw!3HERKNXS!Qk(@Ik;M!Q+=3v?Sf3I<5hz&Y z>EaktF^BaaBbN)1d+_gnZxv4!Po-Eeseg0!!{2t5_rvEspZI&<(_MO&=Y#tmPpG}0 zdfP1Wdg!#&iIwwGXQ@dZ4{S@Eu9%STV5M*FD__xJF z%`NF~<3G*LEl>%>?RZ@O1TaS?83{ F1OV6dAQb=r literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/tab-tall-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/tab-tall-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..50a237196fd797e2c2ee32fc032f38555c20780c GIT binary patch literal 161 zcmeAS@N?(olHy`uVBq!ia0vp^OhD|w0V4Oi7>WR?3{Mxwkcv5`M_u`t7#Ua&9-Djg zZtVa6wv*I?r$5rRd$jh8kpIVkUEQ-Ug~l9-e5ums#lA88R_EFq8f%YwWon8gtuql0 zUfL<4-FqZ}XA0NF@K>GdUTAD}^tg=v=&tGpVUw3%m)^VfoOi`SO`Z)5^MdpRgMWE$23g|i>gTe~DWM4fs`fTx literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/valuepicker-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/compat/valuepicker-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..5d858285b37534caa818dbc3fb46f06034df4f04 GIT binary patch literal 265 zcmeAS@N?(olHy`uVBq!ia0vp^;y|p*!3HE(&L{#=Ea{HEjtmSpnVqirF9h;A3p^r= z85p>QL70(Y)*K0-ph}5rL`iUdT1k0gQ7S`VX=ZYENM>%Tg1Mf#o}q$3nH$>98nngd1q}vxyfBop*Pj$aO zkMG+p-tBm7pZxr;#h)FkG}gs*zj?Z8?)7g87FPeo|1VSSye`rd544lP)78&qol`;+ E0BlKHZvX%Q literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom-compat.css new file mode 100644 index 00000000..4096adf7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom-compat.css @@ -0,0 +1,1222 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #48adfc 0%, #048bf4 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #048bf4 0%, #48adfc 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #bbbbbb 0%, #999999 100%); +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #f6f6f6 0%, #dedede 100%); +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #c0c0c0; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #c0c0c0; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #c0c0c0; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #c0c0c0; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #c0c0c0; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #c0c0c0; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #c0c0c0; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #c0c0c0; + margin: 0 5px; +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #999999; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url("compat/switch-square-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} +.mblDomButtonWhitePlus { + background-image: url("../common/domButtons/compat/mblDomButtonWhitePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhitePlus div { + display: none; +} +.mblDomButtonWhiteMinus { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteMinus div { + display: none; +} +.mblDomButtonWhiteUpArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteUpArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteUpArrow div { + display: none; +} +.mblDomButtonWhiteDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteDownArrow div { + display: none; +} +.mblDomButtonWhiteSearch { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteSearch.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteSearch div { + display: none; +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonCheckboxOn { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOn.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOn div { + display: none; +} +.mblDomButtonCheckboxOff { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOff.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOff div { + display: none; +} +.mblDomButtonBlueCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleMinus > div { + display: none; +} +.mblDomButtonBlueCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCirclePlus > div { + display: none; +} +.mblDomButtonBlueCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleArrow > div { + display: none; +} +.mblDomButtonRedCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleMinus > div { + display: none; +} +.mblDomButtonRedCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCirclePlus > div { + display: none; +} +.mblDomButtonRedCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleArrow > div { + display: none; +} +.mblDomButtonGreenCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleMinus > div { + display: none; +} +.mblDomButtonGreenCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCirclePlus > div { + display: none; +} +.mblDomButtonGreenCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleArrow > div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblDomButtonGrayRoundRect > div { + -moz-border-radius: 4px; +} +.mblDomButtonSilverCircleDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleDownArrow > div { + display: none; +} +.mblDomButtonSilverCircleGreenButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenButton > div { + display: none; +} +.mblDomButtonSilverCircleGrayButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGrayButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGrayButton > div { + display: none; +} +.mblDomButtonSilverCircleOrangeButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleOrangeButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleOrangeButton > div { + display: none; +} +.mblDomButtonSilverCircleGreenPlus { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenPlus > div { + display: none; +} +.mblDomButtonSilverCircleRedCross { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleRedCross > div { + display: none; +} +.mblDomButtonBlueBall { + background-image: url("../common/domButtons/compat/mblDomButtonBlueBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueBall > div { + display: none; +} +.mblDomButtonGreenBall { + background-image: url("../common/domButtons/compat/mblDomButtonGreenBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenBall > div { + display: none; +} +.mblDomButtonOrangeBall { + background-image: url("../common/domButtons/compat/mblDomButtonOrangeBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonOrangeBall > div { + display: none; +} +.mblDomButtonRedBall { + background-image: url("../common/domButtons/compat/mblDomButtonRedBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedBall > div { + display: none; +} +.mblDomButtonYellowStar { + background-image: url("../common/domButtons/compat/mblDomButtonYellowStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonYellowStar > div { + display: none; +} +.mblDomButtonGrayStar { + background-image: url("../common/domButtons/compat/mblDomButtonGrayStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayStar > div { + display: none; +} +.mblDomButtonGrayCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonGrayCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonRedCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonGrayKnob { + background-image: url("../common/domButtons/compat/mblDomButtonGrayKnob.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayKnob > div { + display: none; +} +.mblDomButtonGrayPlus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayPlus div { + display: none; +} +.mblDomButtonGrayMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayMinus div { + display: none; +} +.mblAccordionTitleSelected { + background-color: #e2e2e2; +} +.dj_gecko .mblAccordionTitleSelected { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.mblButton { + background-image: url("compat/button-bg.png"); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblBlueButton { + background-image: url("compat/blue-button-bg.png"); +} +.mblBlueButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.mblRedButton { + background-image: url("compat/red-button-bg.png"); +} +.mblRedButtonSelected { + background-image: url("compat/red-button-sel-bg.png"); +} +.dj_gecko .mblButton { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblBlueButton { + background-image: -moz-linear-gradient(top, #48adfc 0%, #048bf4 100%); +} +.dj_gecko .mblBlueButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblRedButton { + background-image: -moz-linear-gradient(top, #fa9d58 0%, #ee4115 100%); +} +.dj_gecko .mblRedButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ff3 .mblButton { + -moz-border-radius: 0; +} +.mblCheckBox { + background-image: url("compat/button-bg.png"); +} +.mblCheckBoxSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblCheckBox { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 0; +} +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: none; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url("compat/icon-content-heading-bg.png"); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} +.mblIconMenu { + background-color: #9b9b9b; +} +.mblIconMenuItemSel { + background-color: #999999; +} +.dj_gecko .mblIconMenu { + background-color: rgba(160, 160, 160, 0.85); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 3px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 3px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 3px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 3px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 3px; +} +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #dedede; + border-bottom: 1px solid #dedede; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} +.mblRadioButton { + background-image: url("compat/button-bg.png"); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.dj_gecko .mblRadioButton { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 0; +} +.mblSlider { + background-image: url("compat/slider-h-bg.png"); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url("compat/slider-h-bar-bg.png"); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url("compat/slider-handle-bg.png"); +} +.mblSliderV { + background-color: #e2e2e2; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #c0c0c0; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblSliderHandle { + background-image: -moz-linear-gradient(top, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_ff3 .mblSlider { + -moz-border-radius: 0; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 0; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 0; +} +.mblSpinWheel { + background-image: url("../common/compat/spinwheel-bg.png"); +} +.mblSpinWheelBar { + background-image: url("../common/compat/spinwheel-bar.png"); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-image: none; + background-color: #000000; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url("compat/heading-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url("compat/tab-seg-button-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url("compat/tab-seg-sel-button-bg.png"); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url("compat/tab-slim-bar-bg.png"); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url("compat/tab-tall-bar-bg.png"); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 0; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 0; +} +.mblToggleButton { + background-image: url("compat/button-bg.png"); +} +.mblToggleButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblToggleButtonChecked { + background-image: url("compat/button-chk-bg.png"); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblToggleButton { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblToggleButtonChecked { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 0; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url("compat/togglebutton-chk-mark-bg.png"); +} +.mblValuePickerSlotButton { + background-image: url("compat/valuepicker-button-bg.png"); +} +.mblValuePickerSlotButtonSelected { + background-color: #999999; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: -moz-linear-gradient(top, #f7f7f7 0%, #d6d6d6 50%, #bdbdbd 90%, #d6d6d6 100%); +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: -moz-linear-gradient(top, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom.css new file mode 100644 index 00000000..5d07937e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom.css @@ -0,0 +1,5466 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; + color: #000000; +} +.mblBackground { + background-color: #c0c0c0; +} +.mblColorBlue { + color: #ffffff; + background-color: #048bf4; + background-image: -webkit-gradient(linear, left top, left bottom, from(#48adfc), to(#048bf4)); + background-image: linear-gradient(to bottom, #48adfc 0%, #048bf4 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#048bf4), to(#48adfc)); + background-image: linear-gradient(to right bottom, #048bf4 0%, #48adfc 100%); +} +.mblColorDefault { + color: #000000; + background-color: #a4a4a4; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to right bottom, #e2e2e2 0%, #a4a4a4 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #999999; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to right bottom, #bbbbbb 0%, #999999 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); + border-top: 1px solid #c0c0c0; + border-bottom: 1px solid #c0c0c0; + color: #000000; + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: #000000; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + text-shadow: none; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1.05) rotate(45deg); + transform: scale(0.7, 1.05) rotate(45deg); + border: 1px solid #9b9b9b; + border-right-color: #767676; + border-bottom-color: #767676; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: 1px solid #9b9b9b; + border-bottom-color: #767676; + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #c0c0c0; + border-radius: 8px; + background-color: #ffffff; + color: #000000; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 22px; + background-color: #dedede; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); + border-bottom: 1px solid #c0c0c0; + color: #000000; + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; + line-height: 22px; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #000000; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #c0c0c0; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: #000000; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #c0c0c0; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 43px; + list-style-type: none; + line-height: 43px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #c0c0c0; + background-color: #ffffff; + color: #000000; + font-weight: bold; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #ffffff; +} +.mblListItemChecked { + color: #404040; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: #000000; + margin-top: 12px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: #2d2d2d; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 8px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: 1px solid #9b9b9b; + border-bottom-color: #767676; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} +.mblDomButtonWhitePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhitePlus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhitePlus > div > div { + + position: absolute; + top: -6px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteMinus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteUpArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteUpArrow div { + position: absolute; + left: 0px; + clip: rect(0px 30px 20px 0px); +} +.mblDomButtonWhiteUpArrow > div > div { + top: 9px; + left: 4px; + width: 20px; + height: 20px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteDownArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteDownArrow div { + position: absolute; + left: 0px; + clip: rect(7px 50px 40px 0px); +} +.mblDomButtonWhiteDownArrow > div > div { + top: -10px; + left: 2px; + width: 25px; + height: 25px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteSearch { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteSearch > div { + position: absolute; + top: 5px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + border: 2px solid white; + border-radius: 6px; +} +.mblDomButtonWhiteSearch > div > div { + position: absolute; + top: 10px; + left: 7px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border: none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 0px; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonCheckboxOn { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOn > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOn > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: none; + border-bottom: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonCheckboxOff { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOff > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOff > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: none; + border-top: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonBlueCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlueCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonBlueCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonRedCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonGreenCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblDomButtonGrayRoundRect { + position: relative; + width: 29px; + height: 29px; + text-align: right; +} +.mblDomButtonGrayRoundRect > div { + position: absolute; + right: 0px; + display: inline; + padding: 0px 5px; + top: 7px; + color: white; + font-family: Helvetica; + font-size: 12px; + border-radius: 4px; + background-color: #949ba5; + text-align: center; +} +.mblDomButtonGrayRoundRect > div > div { + display: none; +} +.mblDomButtonSilverCircleDownArrow { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleDownArrow > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div { + position: relative; + top: 3px; + left: 3px; + width: 20px; + height: 20px; + border-radius: 10px; + background: -webkit-gradient(linear, left top, left bottom, from(#979797), to(#616161)); + background: linear-gradient(to bottom, #979797 0%, #616161 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div > div { + position: absolute; + left: 0px; + clip: rect(6px 50px 40px 0px); +} +.mblDomButtonSilverCircleDownArrow > div > div > div > div { + position: absolute; + top: -5px; + left: 1px; + width: 18px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #d1d1d1; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.7) rotate(45deg); + transform: scaleX(0.7) rotate(45deg); +} +.mblDomButtonSilverCircleGreenButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #1b991c; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#17df25), to(#1ba51c)); + background: radial-gradient(6px at center, #17df25 0%, #1ba51c 100%); +} +.mblDomButtonSilverCircleGrayButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGrayButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGrayButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #aeaeae; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#d4d4d4), to(#bababa)); + background: linear-gradient(to bottom, #d4d4d4 0%, #bababa 100%); +} +.mblDomButtonSilverCircleOrangeButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleOrangeButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleOrangeButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #ca701a; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#ff7a07), to(#e66b03)); + background: radial-gradient(6px at center, #ff7a07 0%, #e66b03 100%); +} +.mblDomButtonSilverCircleGreenPlus { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenPlus > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenPlus > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleGreenPlus > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleRedCross { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleRedCross > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleRedCross > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonSilverCircleRedCross > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; +} +.mblDomButtonBlueBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonBlueBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#84aff4), to(#2758b3)); + background: linear-gradient(to bottom, #84aff4 0%, #2758b3 100%); +} +.mblDomButtonGreenBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonGreenBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#59e738), to(#0aa908)); + background: linear-gradient(to bottom, #59e738 0%, #0aa908 100%); +} +.mblDomButtonOrangeBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonOrangeBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#f9e20a), to(#ff6b0a)); + background: linear-gradient(to bottom, #f9e20a 0%, #ff6b0a 100%); +} +.mblDomButtonRedBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonRedBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#ec9b9d), to(#d73c3f)); + background: linear-gradient(to bottom, #ec9b9d 0%, #d73c3f 100%); +} +.mblDomButtonTransparent19 { + position: relative; + width: 19px; + height: 19px; +} +.mblDomButtonTransparent29 { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonTransparent30 { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonYellowStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonYellowStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonYellowStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #cd853f; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonYellowStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonYellowStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonGrayStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #8c8e8c; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonGrayStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonGrayStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonGrayCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + border-radius: 2px; +} +.mblDomButtonRedCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonRedCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + border-radius: 2px; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblDomButtonGrayKnob { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayKnob > div { + + position: absolute; + top: 6px; + left: 2px; + width: 23px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDissolve.mblOut { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveOut; + animation-name: mblDissolveOut; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +.mblDissolve.mblIn { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveIn; + animation-name: mblDissolveIn; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +@-webkit-keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-webkit-keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +.mblCover { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCover.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCover.mblOut { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblCover.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblCover.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblCover.mblOut.mblTransition, +.mblCover.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblCover.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCube { + -webkit-animation-duration: 0.8s; + animation-duration: 0.8s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblCube.mblOut { + -webkit-animation-name: mblCubeOut; + animation-name: mblCubeOut; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +.mblCube.mblIn { + -webkit-animation-name: mblCubeIn; + animation-name: mblCubeIn; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +@-webkit-keyframes mblCubeOut { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOut { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeIn { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeIn { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse; + animation-name: mblCubeOutReverse; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +.mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse; + animation-name: mblCubeInReverse; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOutReverse { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeInReverse { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeInReverse { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.dj_ios .mblCube { + -webkit-transform-style: preserve-3d !important; +} +.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone; + animation-name: mblCubeOut_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone; + animation-name: mblCubeIn_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@keyframes mblCubeOut_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeIn_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeIn_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone_l; + animation-name: mblCubeOut_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone_l; + animation-name: mblCubeIn_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@keyframes mblCubeOut_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeIn_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeIn_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone; + animation-name: mblCubeOutReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone; + animation-name: mblCubeInReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@keyframes mblCubeOutReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeInReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone_l; + animation-name: mblCubeOutReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone_l; + animation-name: mblCubeInReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@keyframes mblCubeOutReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeInReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad; + animation-name: mblCubeOut_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad; + animation-name: mblCubeIn_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@keyframes mblCubeOut_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeIn_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeIn_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad_l; + animation-name: mblCubeOut_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad_l; + animation-name: mblCubeIn_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@keyframes mblCubeOut_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeIn_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeIn_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad; + animation-name: mblCubeOutReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad; + animation-name: mblCubeInReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@keyframes mblCubeOutReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeInReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad_l; + animation-name: mblCubeOutReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad_l; + animation-name: mblCubeInReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@keyframes mblCubeOutReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeInReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.mblReveal { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblReveal.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblReveal.mblOut { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblTransition { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblReveal.mblIn { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblReveal.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblReveal.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSlidev { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlidev.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlidev.mblOut.mblReverse.mblTransition, +.mblSlidev.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblSlidev.mblOut.mblTransition, +.mblSlidev.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblSlidev.mblOut, +.mblSlidev.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblSlidev.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSwirl.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlOut; + animation-name: mblSwirlOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlIn; + animation-name: mblSwirlIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblOut.mblReverse { + -webkit-animation-name: mblSwirlOutReverse; + animation-name: mblSwirlOutReverse; +} +@-webkit-keyframes mblSwirlOut { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(-360deg) scale(0); + } +} +@keyframes mblSwirlOut { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(-360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlOutReverse { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(360deg) scale(0); + } +} +@keyframes mblSwirlOutReverse { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblSwirlIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutOut; + animation-name: mblScaleOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblScaleOut.mblOut { + -webkit-animation-name: mblScaleOutOutAndroid; + animation-name: mblScaleOutOutAndroid; +} +.mblScaleOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutIn; + animation-name: mblScaleOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblScaleOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblScaleOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblScaleOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblScaleOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblScaleOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInOut; + animation-name: mblScaleInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblScaleIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInIn; + animation-name: mblScaleInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblScaleIn.mblIn { + -webkit-animation-name: mblScaleInInAndroid; + animation-name: mblScaleInInAndroid; +} +@-webkit-keyframes mblScaleInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblScaleInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblScaleInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblScaleInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblSwap { + -webkit-animation-duration: 0.6s; + animation-duration: 0.6s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblSwap.mblOut { + -webkit-animation-name: mblSwapOut; + animation-name: mblSwapOut; +} +.mblSwap.mblIn { + -webkit-animation-name: mblSwapIn; + animation-name: mblSwapIn; +} +.mblSwap.mblOut.mblReverse { + -webkit-animation-name: mblSwapOutReverse; + animation-name: mblSwapOutReverse; +} +.mblSwap.mblIn.mblReverse { + -webkit-animation-name: mblSwapInReverse; + animation-name: mblSwapInReverse; +} +@-webkit-keyframes mblSwapOut { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOut { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapIn { + 0% { + z-index: -100; + -webkit-transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapIn { + 0% { + z-index: -100; + transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblSwapOutReverse { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOutReverse { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapInReverse { + 0% { + z-index: -100; + -webkit-transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapInReverse { + 0% { + z-index: -100; + transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +.mblZoomOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutOut; + animation-name: mblZoomOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblZoomOut.mblOut { + -webkit-animation-name: mblZoomOutOutAndroid; + animation-name: mblZoomOutOutAndroid; +} +.mblZoomOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutIn; + animation-name: mblZoomOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblZoomOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblZoomOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblZoomOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblZoomOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblZoomOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblZoomIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInOut; + animation-name: mblZoomInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblZoomIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInIn; + animation-name: mblZoomInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblZoomIn.mblIn { + -webkit-animation-name: mblZoomInInAndroid; + animation-name: mblZoomInInAndroid; +} +@-webkit-keyframes mblZoomInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblZoomInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblZoomInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblZoomInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblAccordion { + border-style: outset; + border-width: 1px; + border-color: #9b9b9b; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #c0c0c0; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + border-top: 1px solid #9b9b9b; + background-color: #c0c0c0; + background-image: none; + font-weight: normal; +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: #000000; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + border-bottom: 1px solid #c0c0c0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + font-weight: bold; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; + border-radius: 0; + color: #000000; + font-size: 13px; +} +.mblButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); + color: #ffffff; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#48adfc), to(#048bf4)); + background-image: linear-gradient(to bottom, #48adfc 0%, #048bf4 100%); + color: #ffffff; +} +.mblBlueButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ee4115 100%); + color: #ffffff; +} +.mblRedButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; + border-radius: 0; +} +.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #000000; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblCheckBoxChecked.mblCheckBoxSelected::after, +.mblCheckBox:checked.mblCheckBoxSelected::after { + border-color: #ffffff; +} +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; + border-radius: 0; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-color: #000000; + border-radius: 0; + background-color: #ffffff; + color: #000000; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: #ffffff; + color: inherit; +} +.mblComboBoxMenuItemSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); + color: #ffffff; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: #ffffff; + color: #000000; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: #000000; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 3px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-color: rgba(160, 160, 160, 0.85); + border: 1px solid #000000; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid rgba(192, 192, 192, 0.85); + border-bottom: 1px solid rgba(192, 192, 192, 0.85); +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 3px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 3px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 3px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 3px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 13px; + color: #ffffff; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #f6f6f6; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #000000; + border-radius: 3px; + background-color: #dedede; + background-image: none; +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #f6f6f6; + background-image: none; + color: #000000; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #f6f6f6; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #9b9b9b; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #9b9b9b; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #9b9b9b; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #9b9b9b; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #dedede; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #dedede; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #dedede; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #dedede; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblOpenerUnderlay { + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} +.mblProgressBar { + position: relative; + height: 13px; + background-color: #ffffff; + border: 1px solid #048bf4; +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + height: 13px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#048bf4), to(#48adfc), color-stop(0.5, #048bf4)); + background-image: linear-gradient(to bottom, #048bf4 0%, #048bf4 50%, #48adfc 100%); + border-right: 1px solid #048bf4; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: -1px; +} +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-style: solid; + border-color: #c0c0c0; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #000000; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: #ffffff; +} +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration { + border-radius: 0; + background-color: #ffffff; + border: 1px solid #000000; + color: #000000; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 7px 0 7px -5px; + padding: 0 14px 7px; + width: 244px; + border-bottom: 1px solid #c0c0c0; + font-size: 20px; + font-weight: bold; + text-align: left; +} +.mblSimpleDialogText { + margin: 14px 9px; + width: 244px; + text-align: left; +} +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); + border: 1px solid #9b9b9b; + border-bottom-color: #767676; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #c0c0c0; + border-bottom: 1px solid #c0c0c0; + text-shadow: none; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #000000 100%); +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + color: #ffffff; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#484848), to(#242424)); + background-image: linear-gradient(to bottom, #484848 0%, #242424 100%); +} +.mblTabBarTabBar .mblTabBarButtonSelected .mblTabBarButtonLabel { + color: #ffffff; +} +.mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-style: solid; + border-color: #9b9b9b #9b9b9b #9b9b9b #9b9b9b; + color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); + text-shadow: rgba(255, 255, 255, 0.5) 0 1px 0; +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); + border-top: none; + border-bottom: none; +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: #000000; + border-color: #9b9b9b; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#dedede)); + background-image: linear-gradient(to bottom, #f6f6f6 0%, #dedede 100%); +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #c0c0c0; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #000000 100%); +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); +} +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; + border-radius: 0; +} +.mblExpandingTextArea { + margin: 2px; +} +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; + border-radius: 0; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: #c0c0c0; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid #c0c0c0; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 1em; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #c0c0c0), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #c0c0c0), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border: 1px solid #c0c0c0; + border-bottom-color: #9b9b9b; + border-radius: 0; + font-size: 13px; + color: #000000; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); + color: #ffffff; +} +.mblToggleButtonChecked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); + color: #000000; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #000000; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); + color: #ffffff; +} +.mblToggleButtonChecked.mblToggleButtonSelected:after { + border-color: #ffffff; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#d6d6d6), color-stop(0.5, #d6d6d6), color-stop(0.9, #bdbdbd)); + background-image: linear-gradient(to bottom, #f7f7f7 0%, #d6d6d6 50%, #bdbdbd 90%, #d6d6d6 100%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #fafafa), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #ffffff)); + background-image: linear-gradient(to bottom, #fafafa 10%, #fafafa 20%, #ffffff 50%, #ffffff 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom_rtl-compat.css new file mode 100644 index 00000000..12158863 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom_rtl-compat.css @@ -0,0 +1,80 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 3px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 3px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 3px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 3px; + -moz-border-bottom-right-radius: 0px; +} +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 5px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 5px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom_rtl.css new file mode 100644 index 00000000..53f906f1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/custom_rtl.css @@ -0,0 +1,327 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 0px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonDarkBlueCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 0px; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: 0px; +} +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 4px 2px 0px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} +.mblComboBoxMenuItemRtl { + text-align: right; +} +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: -2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid rgba(192, 192, 192, 0.85); +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-right-radius: 3px; + border-top-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0px; + border-top-left-radius: 3px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 3px; +} +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 5px; + border-top-left-radius: 0px; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 5px; + border-top-right-radius: 0px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar-compat.css new file mode 100644 index 00000000..b3e1a1d8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar-compat.css @@ -0,0 +1,35 @@ + +.dijitCalendar thead { + background-repeat: repeat-x; + background-image: url(compat/calendar-month-bg.png); +} +.dijitCalendarSelectedDate .dijitCalendarDateLabel { + background-repeat: repeat-x; + background-image: url(compat/calendar-datelabel-sel-bg.png); +} +.dijitCalendarActiveDate .dijitCalendarDateLabel { + background-repeat: repeat-x; + background-image: url(compat/calendar-datelabel-act-bg.png); +} +.dijitCalendarYearLabel { + background-repeat: repeat-x; + background-image: url(compat/calendar-year-bg.png); +} +.dj_gecko .dijitCalendar .dijitDropDownButton .dijitButtonNode { + -moz-box-shadow: 0 0 0 transparent; +} +.dj_gecko .dijitCalendar thead { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_gecko .dijitCalendarSelectedDate .dijitCalendarDateLabel { + background-image: -moz-linear-gradient(top, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_gecko .dijitCalendarActiveDate .dijitCalendarDateLabel { + background-image: -moz-linear-gradient(top, #bbbbbb 0%, #999999 100%); +} +.dj_gecko .dijitCalendarYearLabel { + background-image: -moz-linear-gradient(top, #ffffff 0%, #e2e2e2 100%); +} +.dj_ff3 .dijitCalendar { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar-compat.less new file mode 100644 index 00000000..88cd6f0d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar-compat.less @@ -0,0 +1,2 @@ +@import "../variables.less"; +@import "../../common/dijit/Calendar-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar.css new file mode 100644 index 00000000..8fe7e50e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar.css @@ -0,0 +1,118 @@ + +.dijitCalendar { + padding: 0; + width: 320px; + border-radius: 0; + text-align: center; + border: 1px solid #c0c0c0; +} +.dijitCalendar thead { + border-color: inherit; + vertical-align: middle; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); +} +.dijitCalendarMonthLabel { + padding: 0 4px; + font-family: Helvetica; + text-shadow: rgba(247, 247, 247, 0.6) 0 1px 0px; + color: #000000; + font-size: 16px; +} +.dijitCalendarMonthMenu .dijitCalendarMonthLabel { + background-color: #f2f2f2; + color: #000000; +} +.dijitCalendar .dijitDropDownButton .dijitButtonNode { + padding: 0 3px 0 2px; + border: none; + background-color: transparent; + background-image: none; + -webkit-box-shadow: 0 0 0 transparent; + box-shadow: 0 0 0 transparent; +} +.dijitArrowButtonInner { + display: none; +} +.dijitCalendarMonthContainer th { + border-right: 1px solid transparent; +} +.dijitCalendarIncrementControl { + width: 0; + height: 0; + border: 6px solid transparent !important; +} +.dijitCalendarDecrease { + border-left-width: 0 !important; + border-right: 6px solid #9b9b9b !important; +} +.dijitCalendarIncrease { + border-right-width: 0 !important; + border-left: 6px solid #9b9b9b !important; +} +.dijitA11ySideArrow { + display: none; +} +.dijitCalendarDayLabelTemplate { + border-right: 1px solid transparent; + text-align: center; + text-shadow: rgba(247, 247, 247, 0.6) 0px 1px 0px; + background-color: #f6f6f6; + font-size: 12px; + color: #000000; +} +.dijitCalendarDateTemplate { + border-bottom: 1px solid lightGrey; + font-family: Helvetica; + font-size: 22px; + font-weight: normal; + text-align: center; + border: none; + background-color: #ffffff; + color: #000000; +} +.dijitCalendarDateTemplate:last-child { + border-right: none; +} +.dijitCalendarDateTemplate .dijitCalendarDateLabel { + padding: 3px 5px 3px 4px; + display: block; + text-decoration: none; + border: none; +} +.dijitCalendarPreviousMonth .dijitCalendarDateLabel, +.dijitCalendarNextMonth .dijitCalendarDateLabel { + color: lightGrey; +} +.dijitCalendarHoveredDate .dijitCalendarDateLabel { + color: grey; +} +.dijitCalendarSelectedDate .dijitCalendarDateLabel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to bottom, #e2e2e2 0%, #a4a4a4 100%); + color: #000000; + text-shadow: rgba(0, 0, 0, 0.4) 0 1px 0; +} +.dijitCalendarActiveDate .dijitCalendarDateLabel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#bbbbbb), to(#999999)); + background-image: linear-gradient(to bottom, #bbbbbb 0%, #999999 100%); +} +.dijitCalendarYearLabel { + margin: 0; + padding: 0; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); +} +.dijitCalendarSelectedYear { + font-family: Helvetica; + text-shadow: rgba(247, 247, 247, 0.6) 0px 1px 0px; + color: #000000; + font-size: 16px; +} +.dijitCalendarNextYear, +.dijitCalendarPreviousYear { + text-shadow: rgba(247, 247, 247, 0.6) 0px 1px 0px; + padding: 1px 6px 3px 6px; + color: #000000; + font-size: 12px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar.less new file mode 100644 index 00000000..a5909033 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/Calendar.less @@ -0,0 +1,2 @@ +@import "../variables.less"; +@import "../../common/dijit/Calendar.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/compat/calendar-datelabel-act-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/compat/calendar-datelabel-act-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d4d8640640189a3740abd06298e60e5f9ef83dcf GIT binary patch literal 203 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfw!3HERKNXS!Qk(@Ik;M!Q+=3v?Sf3I<5hz&e z>EaktF^BaaBU=lQd+=|rijrWbhsz@m7bT&I9WGyX?v>p4e)9L)rtJaSp)q(Yfg3AUHNEaktF^BaaBbN)1d+_gndzDTV&q*bolUydLob>*d_G6#_z3)?>S3cR7zjK}UxzAG` zTcq4Czq!r#TItl($dq~MGnaWDE1Z%jvE+UA&%bq-O6P9L)%LyY5qmu-bn28;P1it= wdCw=M&RmkIFVdQ&MBb@0J9lPoB#j- literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/compat/calendar-month-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/compat/calendar-month-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..9bbba0aef5478f0525a1a49226d5b5874abc90dd GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{I!3HE3#9loEq&N#aB8wRqxCKF&u|6e!B2X~R z)5S5QVh-;?P9YZq28M$_{~K$%-(l%od?wHQ-^bedd){lG|9qnMeo^f7Cv#Mnsywee zRVcIR{q7?YskhA{uZK=come?9b(Wgs@xZpk3H#nJeQm|5=y7}7C6nGOrMjV^o{`gn bL|W|^d1swp&iaW5Xd{ECtDnm{r-UW|+t)%^ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/compat/calendar-year-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/dijit/compat/calendar-year-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..9bbba0aef5478f0525a1a49226d5b5874abc90dd GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{I!3HE3#9loEq&N#aB8wRqxCKF&u|6e!B2X~R z)5S5QVh-;?P9YZq28M$_{~K$%-(l%od?wHQ-^bedd){lG|9qnMeo^f7Cv#Mnsywee zRVcIR{q7?YskhA{uZK=come?9b(Wgs@xZpk3H#nJeQm|5=y7}7C6nGOrMjV^o{`gn bL|W|^d1swp&iaW5Xd{ECtDnm{r-UW|+t)%^ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/images/thumb-overlay-large.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/images/thumb-overlay-large.png new file mode 100644 index 0000000000000000000000000000000000000000..dfac3707a7c710ba5bea5d9ef6091c88069c4d83 GIT binary patch literal 3697 zcmdT{=Q|sU8czp~QCg!ZPHC&LM`=r|_NqOCh!v|5qpA{WYmXKcdK@E3XrrL|IOw5nX^-hbde_uGAbAKv%(Jn!?ozYp(BwYR-}icf+M005k_FgF1o zSu6l>O!+tNBk!V|rRkA5i7>P=1OV7$BX&@YBQ73p3JrG*^$(BqLBauscS3#P7c4@2 z5O6Tu=T3B34_pTT5IkXFV(1h#vHD^mQ^th<)scXL_!iV$Xqnj>``k9@6%98 zfiV~-B@(fBi*f6Y4w;@TTQL?d^(Eke|I&%IpPye`<)m+v$ZrB#?#8tr|2O7c9#xqs z&+g*(VQ2o{ZJu}T*cByx|I(No*wKZ4qj>Q0#>6@RrP#*dKFmmmlO6UAHd@&g?r%0W z8EOT;OGs>9#an9%7$>|Flr3P!7R2wk`W+tpnxXi0nOT(%1%@0{%uAzJ%F%W5eq12~ zp7yI*QEKTK8A9vhwM%MM^qq;O35dfT_dHQ;xi9h(I5jVruBN6Y^6Q6p`6qY;b@bHL z2dmb!M0s$MhY!RVd&Frvot{)b6B9hUKHa20azLU!w3!5oz9bKHOkB3o`4K~xdP)jy z`LXz|s(G`QNnIO7&&sPRvyQS$>_{utS(3d((>i4KJhGi?-LRhQOMVd#IyLmsS&E@H z`xDe)ef#JsD2dfc&QeIIA9=TCIoJJINDmsf(E&W%>6XcOZZ0J6FX~+5JbFcvdHhc8 zxE+6zk*V)5Fv$+o-dHjkB!_*KtovT=KXo~mO0ZXPfHfO?uPbT-!okE(`pX6T>RChOe;SLyDQIG}6&max@lTZ(d# z3DIpP+fMJxDM3M1Ocdk=MW;Q{DXI5$S-^p1ZsbF*A;ZX76gEDS-=GC+^$^DQA90|C~(&5XV-Nj*FB6^Sg~gqk?Qe#TVIA| z=&_^Hx-qXm{1bQ=ul!D6b@t7}ZzCfkrz*UxqfSphgLcj-xm0?@F6Big#B46~RJeKB zFL<0()iAkjrqdFwHM6}kT9u*jZvUlQ1#D>Vc9?81$iCVHbyoW8AHHNK#b2v^_^V6X zKN{wbH9bxHtFxt+;bl~9{);6@HDfM+YvQH2LDXh*QM0?lu6+X3q0y4>ne(iTjg5mY zso2%G-QC^N4_3#*kV^x3*==oYpPoE@?;4rVVxlOe9Uk!c>s*^(P-?<{k6eLH#C&_I zc>JzXM}a37sS%#jJQobY7RX0l?>L*}y4PI%rmBk57BX4q`EU`B=oKdC_uOfYp%2)H zpEf*w4RQRk)7OKa9AL)zTbft2w06(OUnhO1`@Wff$+*KGDFe~OP$3GPVs=U`q;t*! zwD>}lx{s`w2>PMILFJ92=PphjP)H!ziQMo9;}-4i&B7>i%3%Du)iuuh=qI+hH#;Ia zxRSQVwLCya(w?tVal%T|!JkAjZLUYS5~Q{3y7)Y0iE<06p%X!>XQy^Lco^k{{ag~M zd*a%(#3$Yk^X=WNn_v)vCr+!A- zq0Mu;yHltcjFJnML&5s_`nKi=#G+6rn4O)Fei+cP+^M;xMUPX8gKe7KzD=*||EX)x zxjd9k^)S?ef=9i=r$Ikk_h}88=P4CdHCZj3LTwekEt+4zIyx zglB;}LT`u)PkyZD`&O=;49&}~$l7er2%FysZ3x+bYPqGyi@uisW8=i)iyC~t+O@Xb zUsSis-FtM_={J?R+fhO-!|i+`K0{+9br8)v^ty-RR1UwPZyykxXxfvGNl*=#cZ7jGiG|c|D10pCOqd{x#8q;XPr<@#Q3U+{0buDH;$y7Gk^MP~dU`XuMq!v@9RaQ$(_F+3h$S z^%mT6Z@N>tjxS+VE+K(p>eHcIffTZTZfY@sDHb`DV5-1M%cM1~$TExV zD1(~anKyqp)GrfQppHgQ!I0YsUsI2vr3k~*Iu)FQ@*5@Ha<&T~?0fuGZgH0bB09xs zuti^AUm9y!nzoqA4xWJ7$>m;%SP9r3vh?oPVE6y6rO#Pekv#YN?{VziUy^$XU`lUZ zneE~-dK1|2+~uyrYIE4fPG^*{MOkrK4?djjb{RYPmjU}Pyay%?sFsiQK9OWJ7sgxX zKC4guZXV_uHk>Cw(FQV{NMc?tIzB~rF*xATD*|C)cV`Du(dz1zf8Qq)>eFi9q(mkr z4=@J?Y#}6;NEW%lr!6@om`xtXFqe30##bXoQLG-_S`B&&AU1$zp#jqNwzL(kGZzFXRx!{*~KWLa>&UW$tc<}*`pCjLLZLsAPRCabYkeRO=Yl+Om0Edxp@2y%^N{7CTUE9)uV*+8mQVYl1&`mf5*vl=*0=W#+)C!^bv`Vm-6 zg}*bcQb9Fv^13rwd<`-Lby+aBX;D^utis`Qse(=0_qaF2Y!lUr`X;(#R9S4IM4kAW zYXw``nahQ3^->*@it%TJM_FKZR#F^(V27 zB_mggwrPa0iU2y12@1~aI~5I9r*Ly~8#z~3hjb!=d=>FS$NEDERh|ZEHJ7T=#ylXl z3PaX4PcUH?X%3CdtGG@rq!3mT`4-DBfebf_6{YdEnr{yKuyE_KE|wI&@-r?xH- z-8mKN^-{N{YT#CF8kn`J&2y>|x1xD8h9;Y%QI3KUhtE(;1E$*LrG#Ws)1s4^T>ocj z-%yh%EahCmPiY2JGhbK%tU>9Dh0t?VGJpRK6J9(wH)l_0)hzim0$OrKyMM+#g5IC~ dDt(L_u;)qmKAq<-d-O8`EKF@pDvi7o{{_Ck0iFN= literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/images/thumb-overlay-small.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/images/thumb-overlay-small.png new file mode 100644 index 0000000000000000000000000000000000000000..b6836d967b132a52b84783cccb5f7678201faa71 GIT binary patch literal 1549 zcmbW1`8(7J9LI-TjjNT#=vGKr8Q%;=j!>o<$GES?U^0{J#JG1IsTt8uDwLyKgF=lQ zVO+B^?lO+Sx_7BTBUck6*G~R}-5)-$_w#w)KYgC(^?VZTY%WWKmBAnoNZR^}1xk=e z!DLE^3Ag}lRTqSazZudD1RDB_ZR-jZ?2r&k*ANH7^^kB(FcxIyNASTOw+_VkV^LU) zUt~}x)(8X=&9SyHbBq{Wm|$J?b&(feUf0u2>h9o*?Mm~jV@>Z@4Uu}^X602` z%+=k`3s5B0%@zIq&dWt~A~oKi?m$6SlDpj1y!7Jq8^{Yt!2K)tQ{ymkI$Afe*{0iW zZhYx>_ivL%;*$x)C3?nfy%KI6cshp!26DGyI3#BaxCntjB6Z}!^R&AqXDn478Ngo* zpa+uC{ii2L*ZU)sC|2SMii(W>P-7iD6hAgL)+i|{DeLU)e6)|1GeuepGdLU*8xX*y zuB-(0)M_e2X=t0HL?W@$KR9^Rw{ADJ&2}=us-gReC5q7$Z9BDz;s zq2U`{lOzSf^}k_4L%#`4B%Hd|v^AMGF)=ZMP&?@NbW}E=(pquG%gO23g9i^5t*Cv} z@^al$S1ou-XbfYD((1$M??>(K?Cfx9+!(8Y@#$U#stjd`UU;HgrawJzB`H0nSm?+F zdHgBd?cG!m) zXL)KEp)@zr4V%<80-w1^QEU|&RyW1Q5pSGPkCo(mc@p#EpBMwkT#>`=c+IEX+hojp zT;|$iCMj;SVYYK7PPW=_Me_)s-VLln!y%M)?Uw2<`sX(o2vKjcn8}-yZ0y3T_npDX zZCQ>|JrV>`lg3t&XAP&iaT~6g29JsI)>4vM6-VDAh*jtt!I(n3m%WBf3jCrdwAm_Q z!-2y~%OwNi+Q4E>O$|En+_RJ|X0xd+4qpT&nVY=sSZev_Y}ua`;iJQ+MYpSRHqyu! z2jvpN*|%__WZdQ|IG^KWnWh$r*84dmf$?qFV!_-RJCyyQL>#t5fO?12KbBK!aZ2{$ z!{T3P6v8?`3V)fRxf}rPiPw8z&r2~tWY0?>X`wwYO)vfTx@uR|-D_&UMRYCf`NrqW zjOB(ecBgSB(VEY=FRLvFm=xc!u#9)+)f3>w7DpAJx|o;5W>Ny(oQqwxf|sg5YxSQ| zyaBM3BABG5D!)$tc#~L?VU@CRQ-6~`Jst01%b>E?@1zFunVXEXPQR!Ql83!wBSMdf zbaNW?IsZJSp|bK|R(d)=mrC{hgA;2{%Yt_eRiyPrv3hzY@3s0&af0bo8jTkJ6i;5y zrE!fSvk_{H3xhva{0*WcD_`)>LDrTw7BqA3_M2bcb1Or&;QZ#{p(i1`zP=ZSd5RIZHAW{+_p-EK; zW$7JU*L0sl;?(UD9-I=>T-uupcXWpB6e|)}=c-6s5TtqP-5$uY2)d+8Wuk_m=7)9Nt!qfK?!@du zU0K^Z>djYW>y@h}WQo?Bqz{?|>ynbQNJvjrP+$^EBe&~379Z;fYcioaj2P(I6u~58 zCt4y`a)C`oWG9xX-8)!Y0aBFAmsJ*&;+ehN$bub#X)VWDyqd5S(?J2_B>$UvJFUVy z%>yN|?IG;OM~->0ZB9>*`G8B*x%wMAtFKd4CF4~JHDlZ}CC-n8THn$FWRL?wGcz-6 zE|)twwph3g3sw*eQ^HsT#>aOSo!XmErf=?}fY}+(dvXWH-2r9>` z1<>nm@Fe1`h=>gxV)XTSM2GXJ8}y!poQ22uV52RpSWHQ^Z>kHA-+oty=vr)m5R$|5 zv`>@<&}T_iE;k!~{=p;r_|V33TKG|_2wb1Si)vY@opSSMJs^~nz~hTz%7W0l;Q!l`y8qv^f9YL6xK|dt{5x`B zH5@fUrBdMq!`~UN-V{HudV2I@1)BF0;7iJvI11Z(k$l#ofAZ0@Y2mdH2YPyXy5r}q zj-hDoB$%I?cG5IEFK_QtcY>(n603n;$V*mPi31~DAeKqtZkXa~{kH5^`5#Ml!2lWn5|APJ%i$`u!ADf5{eiv20pn*dit1L<;VbR7B1~<= zM#OAmu7TB01WL1B{hL${n^*fW11dUr4S4L~%?*}6M5WU+dalRoFB{i{juUmXK7IZD z5Z@`WjC`Ys-CYv$PB>!m8x zd2KnKB`cMWFZw$Ri+608F01F~-eH7!OCzqNsV$xGyB&g>bRxfIx7y`b zR|}1y2T1B>^kzA9&sOU_`Cq^Ca|kiG04;8-WS76f{0A?nPuyXH&K~Xl^KFBQXb&vn zqO#w80{B0S{fmja|FZ|V@J~edcl`s~{qXuXwtwRNmJIk3$Q5Q(3_yCjvunTWajOmv z6kCd*-skJv%g7|)zdOVe!D#LMTMedRugoabN}hRM=~yj|L3*EDdX{3LW)M4=`+ZJe zwt^~~K6OyFcyytD=G=;cP#h4kR{}8-HO61Kh9ED+2`eN^O>yhXql(`KFd*|f4JohX zWQ(ymqa-Y%df@a`4>1i!;yCdNd@{Pyx*{ZwO8U*}x!1E0YA>rX)fAlxi& VotbGLx&N#|HWm)%RhPU8e*m0swgLbE literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/variables.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/variables.less new file mode 100644 index 00000000..aa0ed17a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/variables.less @@ -0,0 +1,827 @@ +// You can customize this theme by changing lightColor/darkColor and run the 'compile' script in ../utils. +// See ../utils/README for more informations on compiling themes. + +@lightColor: #FFFFFF; // The base color of the theme +@darkColor: #000000; // Mainly used for text and some borders + +// Selected button gradient colors +@lightColor02: darken(@lightColor, 40%); +@lightColor03: darken(@lightColor, 26.5%); + +// Background color of form controls, TabBar(segmented), dijit Calendar thread and year label +@lightColor04: darken(@lightColor, 11.5%); + +// Button background color +@lightColor05: darken(@lightColor, 35.5%); + +// Background color of Heading, Overlay, bubble Tooltip and Calendar day label +@lightColor06: darken(@lightColor, 3.5%); + +// Background color of Heading and bubble Tooltip +@lightColor07: darken(@lightColor, 13%); + +// Background colors of ValuePicker slot +@lightColor08: darken(@lightColor, 26%); +@lightColor09: darken(@lightColor, 3%); +@lightColor10: darken(@lightColor, 16%); + +// Background colors of ValuePicker input area +@lightColor11: darken(@lightColor, 2%); + +// Border color of Button (bottom), Toolbar button (top left right), Toolbar button arrow, Switch, Slider handle, +// standard and segmented TabBar buttons, Tooltip arrow, Accordion, IconMenu (compat), dijit Calendar increase/decrease buttons +@lightColor12: darken(@lightColor, 39.2%); + +// Background color of View, Switch (left part), Accordion's title, SearchBox's cancel button, +// Border color of Button (top, left, right), Heading (top, bottom), RoundRect, ListItem, RadioButton, Slider, +// Accordion's selected title (bottom), SimpleDialog's title (bottom), dijit Calendar. +@lightColor13: darken(@lightColor, 24.8%); + +// Background color of dijit Calendar month menu label. +@lightColor14: darken(@lightColor, 5%); + +// Color of ListItem subtext, TabBar background gradient (barType=tabBar, tallBar) +@darkColor02: lighten(@darkColor, 17.5%); + +// Background color of TabBar's button (barType=tabBar). +@darkColor03: lighten(@darkColor, 28.2%); + +// Background color of TabBar's selected button (barType=tabBar). +@darkColor04: lighten(@darkColor, 14%); + +// Text color of checked ListItem. Background color of TabBar's button (barType=tabBar). +@darkColor05: lighten(@darkColor, 25%); + +// Border color of ToolBar's body (bottom), ToolBar's button arrow (right and bottom), Switch knob (bottom). +@darkColor06: lighten(@darkColor, 46.2%); + +// Blue and red colors +@blueColor: #048bf4; +@blueColor02: lighten(@blueColor, 15%); +@redColor: #ee4115; +@redColor02: #fa9d58; + + + +@import "../common/css3.less"; + +@default-blue-button-color: @lightColor; +@default-blue-button-background-color: @blueColor; +.default-blue-button-background-image () { .background-image-linear-gradient-top-bottom(@blueColor02, @blueColor); } +@default-blue-button-background-image-gecko: -moz-linear-gradient(top, @blueColor02 0%, @blueColor 100%); + +.mbl-color-blue-45 () { .background-image-linear-gradient-top-left-bottom-right(@blueColor, @blueColor02); } +.mbl-color-default-45 () { .background-image-linear-gradient-top-left-bottom-right(@lightColor04, @lightColor05); } +.mbl-color-default-sel-45 () { .background-image-linear-gradient-top-left-bottom-right(@lightColor03, @lightColor02); } + +@mbl-color-blue-45-gecko: -moz-linear-gradient(top left, @blueColor 0%, @blueColor02 100%); +@mbl-color-default-45-gecko: -moz-linear-gradient(top left, @lightColor04 0%, @lightColor05 100%); +@mbl-color-default-sel-45-gecko: -moz-linear-gradient(top left, @lightColor03 0%, @lightColor02 100%); + +@default-button-color: @darkColor; +@default-button-background-color: @lightColor05; +.default-button-background-image () { .background-image-linear-gradient-top-bottom(@lightColor04, @lightColor05); } +@default-button-background-image-gecko: -moz-linear-gradient(top, @lightColor04 0%, @lightColor05 100%); +@default-button-border-radius: 0; + +@default-button-selected-color: @lightColor; +@default-button-selected-background-color: @lightColor02; +.default-button-selected-background-image () { .background-image-linear-gradient-top-bottom(@lightColor03, @lightColor02); } +@default-button-selected-background-image-gecko: -moz-linear-gradient(top, @lightColor03 0%, @lightColor02 100%); + +@default-selected-color: @lightColor; +@default-selected-background-color: @default-button-selected-background-color; +.default-selected-background-image () { .default-button-selected-background-image(); } +@default-selected-background-image-gecko: @default-button-selected-background-image-gecko; + +@heading-background-color: @lightColor07; +.heading-background-image () { .background-image-linear-gradient-top-bottom(@lightColor06, @lightColor07); } +@heading-background-image-gecko: -moz-linear-gradient(top, @lightColor06 0%, @lightColor07 100%); +@heading-border-top-color: @lightColor13; +@heading-border-bottom-color: @lightColor13; + +.default-button-border-styles () { + border: 1px solid @lightColor13; + border-bottom-color: @lightColor12; + border-radius: @default-button-border-radius; +} + +.mblToolBarButtonBodyInLeftArrow-styles () { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.mblToolBarButtonBodyInRightArrow-styles () { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +// background styles of form controls +.mbl-button-background-image () { .background-image-linear-gradient-top-bottom(@lightColor, @lightColor04); } +.mbl-button-selected-background-image () { .default-selected-background-image(); } +.mbl-blue-button-background-image () { .default-blue-button-background-image(); } +.mbl-blue-button-selected-background-image () { .default-selected-background-image(); } +.mbl-red-button-background-image () { .background-image-linear-gradient-top-bottom(@redColor02, @redColor); } +.mbl-red-button-selected-background-image () { .default-selected-background-image(); } +.mbl-button-checked-background-image () { .mbl-button-background-image(); } + +// background styles of form controls (for gecko) +@mbl-button-background-image-gecko: -moz-linear-gradient(top, @lightColor 0%, @lightColor04 100%); +@mbl-button-selected-background-image-gecko: @default-selected-background-image-gecko; +@mbl-blue-button-background-image-gecko: @default-blue-button-background-image-gecko; +@mbl-blue-button-selected-background-image-gecko: @default-selected-background-image-gecko; +@mbl-red-button-background-image-gecko: -moz-linear-gradient(top, @redColor02 0%, @redColor 100%); +@mbl-red-button-selected-background-image-gecko: @default-selected-background-image-gecko; +@mbl-button-checked-background-image-gecko: @mbl-button-background-image-gecko; + +// common.less +.mobile-body-styles () { + font-family: Helvetica; + font-size: 17px; + color: @darkColor; +} + +.mblBackground-styles () { + background-color: @lightColor13; +} + +.mblView-styles () { + color: @darkColor; +} + +.mblColorBlue-styles () { + color: @default-blue-button-color; + background-color: @default-blue-button-background-color; + .default-blue-button-background-image(); +} +.mblColorDefault-styles () { + color: @default-button-color; + background-color: @default-button-background-color; + .default-button-background-image(); +} +.mblColorDefaultSel-styles () { + color: @default-button-selected-color; + background-color: @default-button-selected-background-color; + .default-button-selected-background-image(); +} + +// Heading.less +.mblHeading-styles () { + .heading-background-image(); + border-top: 1px solid @heading-border-top-color; + border-bottom: 1px solid @heading-border-bottom-color; + color: @darkColor; + text-shadow: rgba(255,255,255,0.5) 0 1px 0; +} + +// ToolBarButton.less +@mbl-tool-bar-button-body-border-radius: 0; +// +.mblToolBarButton-styles () { + text-shadow: none; +} +.mblToolBarButtonArrow-styles () { + border-radius: 1px; + .transform(scale(0.7, 1.05) rotate(45deg)); + border: 1px solid @lightColor12; + border-right-color: @darkColor06; + border-bottom-color: @darkColor06; +} +.mblToolBarButtonArrowInHeading-styles () { +} +.mblToolBarButtonHasLeftArrowInHeading-styles () { +} +.mblToolBarButtonHasLeftArrowInHeading-compat-gecko () { +} +.mblToolBarButtonHasRightArrowInHeading-styles () { +} +.mblToolBarButtonHasRightArrowInHeading-compat-gecko () { +} +.mblToolBarButtonArrowInLeftArrow-styles () { + left: -1px; +} +.mblToolBarButtonArrowInRightArrow-styles () { + right: -1px; +} +.mblToolBarButtonBody-styles () { + border: 1px solid @lightColor12; + border-bottom-color: @darkColor06; + text-shadow: rgba(255,255,255,0.5) 0 1px 0; +} +.mblToolBarButtonBodyInHeading-styles () { +} +.mblToolBarButtonBodyInHeading-compat-gecko () { +} + +// RoundRect.less & RoundRectList.less +@mbl-round-rect-border-color: @lightColor13; +@mbl-round-rect-border-radius: 8px; +@mbl-round-rect-background-color: @lightColor; +@mbl-round-rect-box-shadow: 2px 2px 2px rgba(0,0,0,0.2); +// +.mblRoundRect-styles () { + color: @darkColor; +} + +// EdgeToEdgeCategory.less +.mblEdgeToEdgeCategory-styles () { + height: 22px; + background-color: @heading-background-color; + .heading-background-image(); + border-bottom: 1px solid @heading-border-bottom-color; + color: @darkColor; + text-shadow: rgba(255,255,255,0.5) 0 1px 0; + line-height: 22px; +} + +// RoundRectCategory.less +.mblRoundRectCategory-styles () { + color: @darkColor; +} + +// EdgeToEdgeList.less +.mblEdgeToEdgeList-styles () { + background-color: @darkColor; +} +.mblEdgeToEdgeList-LastListItem-styles () { + border-bottom-color: @lightColor13; +} + +// ListItem.less +@mbl-list-item-height: 43px; +// +.mblListItem-styles () { + border-bottom: 1px solid @lightColor13; + background-color: @lightColor; + color: @darkColor; + font-weight: bold; +} +.mblListItemSelected-styles () { + color: @default-selected-color; + .heading-background-image(); +} +.mblListItemLabelSelected-styles () { + background-color: @lightColor; +} +.mblListItemChecked-styles () { + color: @darkColor05; +} +.mblListItemRightText-styles () { + color: @darkColor; + margin-top: 12px; +} +.mblListItemSubText-styles () { + font-size: 14px; + color: @darkColor02; +} + +// Switch.less +@mbl-switch-bg-left-background-color: @lightColor13; +.mbl-switch-bg-left-background-image () { .default-button-selected-background-image(); } +@mbl-switch-bg-right-background-color: @lightColor04; +.mbl-switch-bg-right-background-image () { .mbl-button-background-image(); } +.mbl-switch-knob-background-image () { .default-button-background-image(); } +// +@mbl-switch-bg-left-background-image-gecko: @default-button-selected-background-image-gecko; +@mbl-switch-bg-right-background-image-gecko: @mbl-button-background-image-gecko; +@mbl-switch-knob-background-image-gecko: @default-button-background-image-gecko; +@mbl-switch-square-border-radius: 2px; +// +.mblSwitchBg-styles () { + border: 1px solid @lightColor13; + border-bottom-color: @lightColor12; +} +.mblSwitchKnob-styles () { + border: 1px solid @lightColor12; + border-bottom-color: @darkColor06; +} + +// Button.less +.mblButton-styles () { + .default-button-border-styles; + color: @darkColor; + font-size: 13px; +} +.mblButtonSelected-styles () { + color: @lightColor; +} +.mblButton-mblBlueButton-styles () { + color: @lightColor; +} +.mblButton-mblRedButton-styles () { + color: @lightColor; +} + +// CheckBox.less +.mblCheckBox-styles () { + .default-button-border-styles; +} +.mblCheckBoxChecked-after-styles () { + border-color: @darkColor; +} +.mblCheckBoxChecked-mblCheckBoxSelected-after-styles () { + border-color: @lightColor; +} + +// ComboBox.less +@mbl-combo-box-popup-box-shadow: none; +// +.dijitPopup-styles () { + border-radius: 0; +} +.mblComboBoxMenu-styles () { + border-color: @darkColor; + border-radius: 0; + background-color: @lightColor; + color: @darkColor; +} +.mblComboBoxMenuItem-styles () { + border-color: @lightColor; + color: inherit; +} +.mblComboBoxMenuItemSelected-styles () { + .default-selected-background-image(); + color: @lightColor; +} + +// IconContainer.less +.mblIconItemSub-styles () { + background-color: @lightColor; + color: @darkColor; +} +.mblIconArea-styles () { + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: @darkColor; +} +.mblIconItemDeleteIcon-styles () { + top: -4px; + left: -2px; +} + +// RadioButton.less +.mblRadioButton-styles () { + border-style: solid; + border-color: @lightColor13; +} +.mblRadioButtonChecked-after-styles () { + border-color: @darkColor; +} +.mblRadioButtonChecked-Selected-after-styles () { + border-color: @lightColor; +} + +// Slider.less +@mbl-slider-bar-border-radius: 0; +@mbl-slider-knob-border-radius: 0; +// +.mblSlider-styles () { + border: 1px solid @lightColor13; + border-bottom-color: @lightColor12; +} +.mblSliderHandle-styles () { + border: 1px solid @lightColor12; + border-bottom-color: @darkColor06; +} + +// TabBar.less +.mblTabBar-styles () { + text-shadow: none; +} + +// barType="tabBar" +.mblTabBarTabBar-styles () { + .background-image-linear-gradient-top-bottom(@darkColor02, @darkColor); +} +.mblTabBarTabBar-compat () { + background-color: @darkColor; +} +.mblTabBarTabBarButton-styles () { + +} +.mblTabBarTabBarButtonIconArea-styles () { +} +.mblTabBarTabBarButtonLabel-styles () { + color: @lightColor; +} +.mblTabBarTabBarButtonSelected-styles () { + background-color: @darkColor05; + .background-image-linear-gradient-top-bottom(@darkColor03, @darkColor04); +} +.mblTabBarTabBarButtonLabelSelected-styles () { + color: @lightColor; +} + +// barType="segmentedControl" +@mbl-tab-bar-segmented-control-border-radius: 5px; +// +.mblTabBarSegmentedControl-styles () { +} +.mblTabBarSegmentedControlButton-styles () { + border-style: solid; + border-color: @lightColor12 @lightColor12 @lightColor12 @lightColor12; + color: @darkColor; + .mbl-button-background-image(); + text-shadow: rgba(255,255,255,0.5) 0 1px 0; +} +.mblTabBarSegmentedControlButton-compat-gecko () { +} +.mblTabBarSegmentedControlButtonSelected-styles () { + color: @default-button-color; + .default-button-background-image(); + text-shadow: rgba(255,255,255,0.5) 0 1px 0; +} + +// barType="standardTab" +.mblTabBarStandardTab-styles () { + border-top: none; + border-bottom: none; +} +.mblTabBarStandardTabButton-styles () { + color: @darkColor; + border-color: @lightColor12; + .heading-background-image(); +} +.mblTabBarStandardTabButtonIconArea-styles () { +} +.mblTabBarStandardTabButtonLabel-styles () { +} +.mblTabBarStandardTabButtonSelected-styles () { + .default-button-background-image(); +} +.mblTabBarStandardTabButtonLabelSelected-styles () { +} + +// barType="tallTab" +.mblTabBarTallTab-styles () { + .background-image-linear-gradient-top-bottom(@darkColor02, @darkColor); +} +.mblTabBarTallTabButton-styles () { +} +.mblTabBarTallTabButton-FirstChild-styles () { +} +.mblTabBarTallTabButton-LastChild-styles () { +} +.mblTabBarTallTabButtonIconArea-styles () { +} +.mblTabBarTallTabButtonLabel-styles () { +} +.mblTabBarTallTabButtonSelected-styles () { +} +.mblTabBarTallTabButtonLabelSelected-styles () { +} + +// TextArea.less +.mblTextArea-styles () { + .default-button-border-styles; +} + +// TextBox.less +.mblTextBox-styles () { + .default-button-border-styles; +} + +// ToggleButton.less +.mblToggleButton-styles () { + .default-button-border-styles; + font-size: 13px; + color: @darkColor; +} +.mblToggleButtonSelected-styles () { + color: @lightColor; +} +.mblToggleButtonChecked-styles () { + color: @darkColor; +} +.mblToggleButtonChecked-after-styles () { + border-color: @darkColor; +} +.mblToggleButtonCheckedSelected-styles () { + color: @lightColor; +} +.mblToggleButtonCheckedSelected-after-styles () { + border-color: @lightColor; +} + +// Overlay.less +.mblOverlay-styles () { + background-color: @lightColor06; + background-image: none; +} +.mblOverlay-compat () { +} +.mblOverlay-compat-gecko () { +} + +// Tooltip.less +@mbl-tooltip-border-radius: 3px; +// +.mblTooltip-styles () { + border-color: @darkColor; + border-radius: @mbl-tooltip-border-radius; + background-color: @lightColor07; + background-image: none; +} +.mblTooltipBubble-styles () { + background-color: @lightColor06; + background-image: none; + color: @darkColor; +} +.mblTooltipInnerArrow-Bubble-Above-styles () { + border-bottom-color: @lightColor06; +} +.mblTooltipInnerArrow-Bubble-Below-styles () { + border-top-color: @lightColor06; +} +.mblTooltipInnerArrow-Bubble-After-styles () { + border-left-color: @lightColor06; +} +.mblTooltipInnerArrow-Bubble-Before-styles () { + border-right-color: @lightColor06; +} +.mblTooltipArrow-Before-styles () { + border-left-width: 0; + border-right-color: @lightColor12; +} +.mblTooltipArrow-After-styles () { + border-right-width: 0; + border-left-color: @lightColor12; +} +.mblTooltipArrow-Above-styles () { + border-top-width: 0; + border-bottom-color: @lightColor12; +} +.mblTooltipArrow-Below-styles () { + border-bottom-width: 0; + border-top-color: @lightColor12; +} +.mblTooltipInnerArrow-Before-styles () { + border-left-width: 0; + border-right-color: @lightColor07; +} +.mblTooltipInnerArrow-After-styles () { + border-right-width: 0; + border-left-color: @lightColor07; +} +.mblTooltipInnerArrow-Above-styles () { + border-top-width: 0; + border-bottom-color: @lightColor07; +} +.mblTooltipInnerArrow-Below-styles () { + border-bottom-width: 0; + border-top-color: @lightColor07; +} +.mblTooltip-Heading-styles () { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblTooltip-Heading-compat () { +} +.mblTooltip-Heading-ToolbarButton-styles () { +} +.mblTooltip-Heading-ToolbarButton-compat () { +} + +// Accordion.less +.mblAccordion-styles () { + border-color: @lightColor12; +} +.mblAccordionTitle-styles () { + border-top: 1px solid @lightColor12; + background-color: @lightColor13; + background-image: none; + font-weight: normal; +} +.mblAccordionTitle-compat () { +} +.mblAccordionTitle-compat-gecko () { +} +.mblAccordionTitleSelected-styles () { + border-bottom: 1px solid @lightColor13; + .mbl-button-checked-background-image(); + font-weight: bold; +} +.mblAccordionTitleSelected-compat () { + background-color: @lightColor04; +} +.mblAccordionTitleSelected-compat-gecko () { + background-image: @mbl-button-checked-background-image-gecko; +} +.mblAccordionTitleAnchor-styles () { + color: @darkColor; +} +.mblAccordionTitleAnchorSelected-styles () { +} + +// SimpleDialog.less +@mbl-simple-dialog-border-radius: 0; +// +.mblSimpleDialog-styles () { + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration-styles () { + background-color: @lightColor; + border: 1px solid @darkColor; + color: @darkColor; +} +.mblSimpleDialogDecoration-compat () { +} +.mblSimpleDialogDecoration-compat-gecko () { +} +.mblSimpleDialogTitle-styles () { + margin: 7px 0 7px -5px; + padding: 0 14px 7px; + width: 244px; + border-bottom: 1px solid @lightColor13; + font-size: 20px; + font-weight: bold; + text-align: left; +} +.mblSimpleDialogText-styles () { + margin: 14px 9px; + width: 244px; + text-align: left; +} + +// IconMenu.less +@mbl-icon-menu-border-radius: 3px; +@mbl-icon-menu-item-border-radius: 3px; +// +.mblIconMenu-styles () { + padding: 0; + background-color: rgba(160, 160, 160, 0.85); + border: 1px solid @darkColor; +} +.mblIconMenu-compat () { + background-color: @lightColor12; +} +.mblIconMenu-compat-gecko () { + background-color: rgba(160, 160, 160, 0.85); +} +.mblIconMenuItem-styles () { + border-left: 1px solid rgba(192, 192, 192, 0.85); + border-bottom: 1px solid rgba(192, 192, 192, 0.85); +} +.mblIconMenuItemAnchor-styles () { + font-size: 13px; + color: @lightColor; +} +.mblIconMenuItemSel-styles () { + .default-selected-background-image(); +} +.mblIconMenuItemSel-compat () { + background-color: @default-selected-background-color; +} +.mblIconMenuItemSel-compat-gecko () { + background-image: @default-selected-background-image-gecko; +} + +// dijit.Calendar +.dijitCalendar-styles () { + border: 1px solid @lightColor13; +} +.dijitCalendar-thead-styles () { + .mbl-button-background-image(); +} +.dijitCalendar-thead-compat () { + background-image: url(compat/calendar-month-bg.png); +} +.dijitCalendar-thead-compat-gecko () { + background-image: @mbl-button-background-image-gecko; +} +.dijitCalendarMonthLabel-styles () { + color: @darkColor; + font-size: 16px; +} +.dijitCalendarMonthMenu-styles () { +} +.dijitCalendarMonthMenu-compat-ff3 () { +} +.dijitCalendarMonthMenu-Label-styles () { + background-color: @lightColor14; + color: @darkColor; +} +.dijitCalendarDecrease-styles () { + border-right: 6px solid @lightColor12 !important; +} +.dijitCalendarIncrease-styles () { + border-left: 6px solid @lightColor12 !important; +} +.dijitCalendarDayLabelTemplate-styles () { + background-color: @lightColor06; + font-size: 12px; + color: @darkColor; +} +.dijitCalendarDateTemplate-styles () { + border: none; + background-color: @lightColor; + color: @darkColor; +} +.dijitCalendarDateTemplate-LastChild-styles () { + border-right: none; +} +.dijitCalendarDateLabel-DateTemplate-styles () { + border: none; +} +.dijitCalendarDateLabel-PrevMonth-styles () { + color: lightGrey; +} +.dijitCalendarDateLabel-Hovered-styles () { + color: grey; +} +.dijitCalendarDateLabel-Selected-styles () { + .default-button-background-image(); + color: @darkColor; + text-shadow: rgba(0,0,0,0.4) 0 1px 0; +} +.dijitCalendarDateLabel-Selected-compat () { + background-image: url(compat/calendar-datelabel-sel-bg.png); +} +.dijitCalendarDateLabel-Selected-compat-gecko () { + background-image: @default-button-background-image-gecko; +} +.dijitCalendarDateLabel-Active-styles () { + .default-selected-background-image(); +} +.dijitCalendarDateLabel-Active-compat () { + background-image: url(compat/calendar-datelabel-act-bg.png); +} +.dijitCalendarDateLabel-Active-compat-gecko () { + background-image: @default-selected-background-image-gecko; +} +.dijitCalendarYearLabel-styles () { + padding: 0; + .mbl-button-background-image(); +} +.dijitCalendarYearLabel-compat () { + background-image: url(compat/calendar-year-bg.png); +} +.dijitCalendarYearLabel-compat-gecko () { + background-image: @mbl-button-background-image-gecko; +} +.dijitCalendarSelectedYear-styles () { + color: @darkColor; + font-size: 16px; +} +.dijitCalendarNextYear-styles () { + padding: 1px 6px 3px 6px; + color: @darkColor; + font-size: 12px; +} + +// SearchBox.less +@mbl-searchbox-cancel-button-color: @lightColor; +@mbl-searchbox-cancel-button-bg-color: @lightColor13; +.mblSearchBox-Cancel-Button-styles () { + border-radius: 1em; +} +@mbl-searchbox-results-decoration-color: @lightColor13; + +// ProgressBar.less +.mblProgressBar-styles () { + height: 13px; + background-color: @lightColor; + border: 1px solid @blueColor; +} +.mblProgressBarProgress-styles () { + height: 13px; + .background-image-linear-gradient-top-bottom-1-stop(@blueColor, @blueColor02, 0.5, @blueColor); + border-right: 1px solid @blueColor; +} +.mblProgressBarComplete-styles () { +} +.mblProgressBarNotStarted-styles () { +} +.mblProgressBarMsg-styles () { + top: -1px; +} +.mblProgressBar-compat () { +} +.mblProgressBarProgress-compat () { + background-color: @blueColor; +} +.mblProgressBar-compat-gecko () { +} +.mblProgressBarProgress-compat-gecko () { + background-image: -moz-linear-gradient(top, @blueColor 0%, @blueColor 50%, @blueColor02 100%); +} + +// ValuePicker.less +.mbl-value-picker-slot-button-background-image () { .background-image-linear-gradient-top-bottom-2-stops(@lightColor09, @lightColor10, 0.5, @lightColor10, 0.9, @lightColor08); } +@mbl-value-picker-slot-button-background-image-gecko: -moz-linear-gradient(top, @lightColor09 0%, @lightColor10 50%, @lightColor08 90%, @lightColor10 100%); +@mbl-value-picker-slot-button-radius: 5px; +.mbl-value-picker-slot-input-area-background-image () { .background-image-linear-gradient-top-bottom-4-stops-no-from-to(0.1, @lightColor11, 0.2, @lightColor11, 0.5, @lightColor, 0.9, @lightColor); } +@mbl-value-picker-slot-input-area-background-image-gecko: -moz-linear-gradient(top, @lightColor11 10%, @lightColor11 20%, @lightColor 50%, @lightColor 90%); +.mblValuePickerSlot-style () { + margin: 0 5px; +} +.mblValuePickerSlot-input-style () { + font-size: 28px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/variables_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/variables_rtl.less new file mode 100644 index 00000000..2a43f114 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/custom/variables_rtl.less @@ -0,0 +1,35 @@ +// Carousel_rtl +@mbl-carousel-margin-rtl: ~"2px 4px 2px 0px"; + +// IconContainer_rtl +@mbl-icon-container-right-rtl: -2px; + +// IconMenu_rtl-compat +@mbl-border-radius-rtl: 3px; + +// TabBar_rtl-compat +@mbl-moz-border-radius-rtl: 5px; + +// TabBar_rtl +@mbl-border-width-rtl: ~"1px 0px 1px 1px !important"; +@mbl-tb-border-radius-rtl: 5px; + +// ThemeID +@theme-id: custom; + +// Switch_rtl-compat +@mbl-bg-image-r-rtl: ~"url(compat/switch-square-r.gif)"; +@mbl-bg-image-l-rtl: ~"url(compat/switch-square-l.gif)"; + +// Switch_rtl +@mbl-switchOn-left-rtl: -53px; +@mbl-switchBg-left-rtl: 53px; +@mbl-switch-knob-rtl: 53px; +@mbl-switch-text-right-rtl: -40px; + +// ToolBarButton_rtl +@mbl-toolbar-right-arrow-rtl: 1px; +@mbl-toolbar-left-arrow-rtl: 0px; + +// ProgressIndicator_rtl +@mbl-progress-center-left-rtl: 0px; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Accordion-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Accordion-compat.css new file mode 100644 index 00000000..67551217 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Accordion-compat.css @@ -0,0 +1,28 @@ + +.mblAccordionTitleSelected { + background-color: #33b5e5; +} +.dj_gecko .mblAccordionTitle { + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; +} +.dj_gecko .mblAccordionTitleSelected { + background-color: #33b5e5; +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Accordion.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Accordion.css new file mode 100644 index 00000000..ba42e843 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Accordion.css @@ -0,0 +1,74 @@ + +.mblAccordion { + border-style: outset; + border-width: 1px; + border-style: none; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #222222; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: #ffffff; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + background-color: #33b5e5; +} +.mblAccordionTitleSelected .mblAccordionTitleAnchor { + color: #ffffff; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Accordion_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Accordion_rtl.css new file mode 100644 index 00000000..5b9612f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Accordion_rtl.css @@ -0,0 +1,6 @@ + +.mblAccordionIconParentRtl { + float: right; + -webkit-transform: scaleX(-1); + transform: scaleX(-1); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button-compat.css new file mode 100644 index 00000000..4af337a1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button-compat.css @@ -0,0 +1,59 @@ + +.mblButton { + background-image: url(compat/button-bg.png); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblBlueButton { + background-image: url(compat/blue-button-bg.png); +} +.mblBlueButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.mblRedButton { + background-image: url(compat/red-button-bg.png); +} +.mblRedButtonSelected { + background-image: url(compat/red-button-sel-bg.png); +} +.dj_gecko .mblButton { + background-image: none; +} +.dj_gecko .mblButtonSelected { + background-image: none; +} +.dj_gecko .mblBlueButton { + background-image: none; +} +.dj_gecko .mblBlueButtonSelected { + background-image: none; +} +.dj_gecko .mblRedButton { + background-image: none; +} +.dj_gecko .mblRedButtonSelected { + background-image: none; +} +.dj_ff3 .mblButton { + -moz-border-radius: 2px; +} +.mblButton { + background-image: none; +} +.mblButtonSelected { + background-image: none; +} +.mblBlueButton { + background-image: none; +} +.mblBlueButtonSelected { + background-image: none; +} +.mblRedButton { + background-image: none; +} +.mblRedButtonSelected { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button-compat.less new file mode 100644 index 00000000..70c0a966 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button-compat.less @@ -0,0 +1,21 @@ +@import "variables.less"; +@import "../common/Button-compat.less"; + +.mblButton { + background-image: none; +} +.mblButtonSelected { + background-image: none; +} +.mblBlueButton { + background-image: none; +} +.mblBlueButtonSelected { + background-image: none; +} +.mblRedButton { + background-image: none; +} +.mblRedButtonSelected { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button.css new file mode 100644 index 00000000..3a9780d2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button.css @@ -0,0 +1,86 @@ + +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + height: 40px; + color: #ffffff; +} +.mblButtonSelected { + color: #ffffff; + border-color: transparent; + background-image: none; + background-color: #2C94BB; + box-shadow: 0px 0px 1px 4px #1F5366; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + color: #ffffff; + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + background-color: #0099CC; +} +.mblBlueButtonSelected { + background-image: none; +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115), color-stop(0.5, #ff4d25), color-stop(0.5, #ed4d15)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); + color: #ffffff; + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + background-color: #CC0000; +} +.mblRedButtonSelected { + background-image: none; +} +.mblButtonDisabled, +.mblButton:disabled { + color: #646464; + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + background-color: #212121; +} +.mblBlueButtonSelected { + border-color: transparent; + background-image: none; + box-shadow: 0px 0px 1px 4px #33B5E5; +} +.mblRedButtonSelected { + border-color: transparent; + background-image: none; + box-shadow: 0px 0px 1px 4px #FF4444; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button.less new file mode 100644 index 00000000..8982a2c2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Button.less @@ -0,0 +1,20 @@ +@import "variables.less"; +@import "../common/Button.less"; + +.mblButtonDisabled, +.mblButton:disabled { + color: #646464; + .default-button-border-styles; + background-color: #212121; +} + +.mblBlueButtonSelected { + border-color: transparent; + background-image: none; + box-shadow: 0px 0px 1px 4px #33B5E5; +} +.mblRedButtonSelected { + border-color: transparent; + background-image: none; + box-shadow: 0px 0px 1px 4px #FF4444; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Carousel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Carousel.css new file mode 100644 index 00000000..57e43929 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Carousel.css @@ -0,0 +1,77 @@ + +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Carousel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Carousel_rtl.css new file mode 100644 index 00000000..acab0d8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Carousel_rtl.css @@ -0,0 +1,13 @@ + +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/CheckBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/CheckBox-compat.css new file mode 100644 index 00000000..c628f4f5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/CheckBox-compat.css @@ -0,0 +1,38 @@ + +.mblCheckBox { + background-image: url(compat/button-bg.png); +} +.mblCheckBoxSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblCheckBox { + background-image: none; + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: none; +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: none; +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: none; +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/CheckBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/CheckBox.css new file mode 100644 index 00000000..3437ab08 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/CheckBox.css @@ -0,0 +1,85 @@ + +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #5c5c5c; + border-width: 1px; + background-color: transparent; + background-image: none; + border-style: solid; +} +.mblCheckBoxSelected { + background-image: none; +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-color: transparent; +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; + background-color: transparent; + background-image: none; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: none; +} +.mblCheckBoxChecked.mblCheckBoxSelected::after, +.mblCheckBox:checked.mblCheckBoxSelected::after { + background-color: transparent; + background-image: none; +} +.mblCheckBox:disabled { + border-color: #333333; +} +.mblCheckBoxSelected { + background-image: none; + border-color: #99bbca; + box-shadow: 0px 0px 1px 4px #1f5366; + background-color: #1f5366; +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: none; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: none; + border-color: #99bbca; + box-shadow: 0px 0px 3px 4px #1f5366; + background-color: #1f5366; +} +.mblCheckBox:checked::after { + border-color: #61c6eb; +} +.mblCheckBox:disabled::after { + border-color: #333333; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/CheckBox.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/CheckBox.less new file mode 100644 index 00000000..a008a71b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/CheckBox.less @@ -0,0 +1,32 @@ +@import "variables.less"; +@import "../common/CheckBox.less"; + +.mblCheckBox:disabled{ + border-color: @holo-grey2; +} +.mblCheckBoxSelected { + background-image: none; + border-color: @holo-checkbox-selected-color; + box-shadow: 0px 0px 1px 4px @holo-checkbox-checked-color; + background-color: @holo-checkbox-checked-color; + +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: none; + + &.mblCheckBoxSelected { + background-image: none; + border-color: @holo-checkbox-selected-color; + box-shadow: 0px 0px 3px 4px @holo-checkbox-checked-color; + background-color: @holo-checkbox-checked-color; + } +} + +.mblCheckBox:checked::after{ + border-color: @holo-checkbox-tick-color; +} + +.mblCheckBox:disabled::after{ + border-color: @holo-grey2; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ComboBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ComboBox-compat.css new file mode 100644 index 00000000..75eb7d7d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ComboBox-compat.css @@ -0,0 +1,7 @@ + +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: 0 0 50px #000000; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ComboBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ComboBox.css new file mode 100644 index 00000000..bae1ee57 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ComboBox.css @@ -0,0 +1,59 @@ + +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: 0 0 50px #000000; + box-shadow: 0 0 50px #000000; + border-radius: 0; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-radius: 0; + background-color: #333333; + color: #ffffff; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: #4f4f4f; + border-top: none; + height: 35px; + padding-top: 17px; +} +.mblComboBoxMenuItemSelected { + background-color: #3578b1; + color: white; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ComboBox_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ComboBox_rtl.css new file mode 100644 index 00000000..10932a96 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ComboBox_rtl.css @@ -0,0 +1,4 @@ + +.mblComboBoxMenuItemRtl { + text-align: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/DatePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/DatePicker.css new file mode 100644 index 00000000..02b5dc46 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/DatePicker.css @@ -0,0 +1,181 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: none; +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0px; + border-top-right-radius: 0px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblValuePickerSlotButtonSelected { + background-image: none; +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: none; +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; + color: #ffffff; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +.mblValuePickerSlotInputArea { + border-top: 2px solid #33b5e5; + border-bottom: 2px solid #33b5e5; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/EdgeToEdgeCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/EdgeToEdgeCategory.css new file mode 100644 index 00000000..695fe5e4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/EdgeToEdgeCategory.css @@ -0,0 +1,21 @@ + +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 35px; + border-bottom: 3px solid #39393A; + background-color: rgba(0, 0, 0, 0); + color: white; + line-height: 35px; + margin-right: 7px; + margin-left: 7px; + margin-top: 10px; + text-transform: uppercase; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/EdgeToEdgeList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/EdgeToEdgeList.css new file mode 100644 index 00000000..68151e77 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/EdgeToEdgeList.css @@ -0,0 +1,10 @@ + +.mblEdgeToEdgeList { + margin: 0; + padding: 0; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #333538; + margin-right: 7px; + margin-left: 7px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/FixedSplitter.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/FixedSplitter.css new file mode 100644 index 00000000..3c88bebb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/FixedSplitter.css @@ -0,0 +1,21 @@ + +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/FormLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/FormLayout.css new file mode 100644 index 00000000..19a22b9b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/FormLayout.css @@ -0,0 +1,160 @@ + +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/FormLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/FormLayout_rtl.css new file mode 100644 index 00000000..44ebb14d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/FormLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/GridLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/GridLayout.css new file mode 100644 index 00000000..ebdc391f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/GridLayout.css @@ -0,0 +1,24 @@ + +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/GridLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/GridLayout_rtl.css new file mode 100644 index 00000000..3f5bdd0d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/GridLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblGridLayoutRtl > div { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Heading-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Heading-compat.css new file mode 100644 index 00000000..650c5a6e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Heading-compat.css @@ -0,0 +1,13 @@ + +.mblHeading { + background-image: url(compat/heading-bg.png); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: none; +} +.mblHeading { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Heading-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Heading-compat.less new file mode 100644 index 00000000..85a3b88a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Heading-compat.less @@ -0,0 +1,6 @@ +@import "variables.less"; +@import "../common/Heading-compat.less"; + +.mblHeading { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Heading.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Heading.css new file mode 100644 index 00000000..e92fd906 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Heading.css @@ -0,0 +1,40 @@ + +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + color: #ffffff; + background-color: #000000; + border-bottom-color: #33b5e5; + border-bottom-width: 2px; + border-bottom-style: solid; + font-size: 18px; + font-weight: normal; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer-compat.css new file mode 100644 index 00000000..8a99f941 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer-compat.css @@ -0,0 +1,59 @@ + +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url(compat/icon-content-heading-bg.png); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer-compat.less new file mode 100644 index 00000000..e2df9856 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons-compat.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross-compat.css"); + +@import "variables.less"; +@import "../common/IconContainer-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer.css new file mode 100644 index 00000000..bec6b80f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer.css @@ -0,0 +1,381 @@ + +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; + color: black; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: white; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer.less new file mode 100644 index 00000000..729745a1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross.css"); + +@import "variables.less"; +@import "../common/IconContainer.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer_rtl.css new file mode 100644 index 00000000..0aa248fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconContainer_rtl.css @@ -0,0 +1,13 @@ + +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: -2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu-compat.css new file mode 100644 index 00000000..a0123014 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu-compat.css @@ -0,0 +1,34 @@ + +.mblIconMenu { + background-color: #404040; +} +.mblIconMenuItemSel { + background-color: #3578b1; +} +.dj_gecko .mblIconMenu { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-color: #3578b1; +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 6px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu.css new file mode 100644 index 00000000..7c4f0b3d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu.css @@ -0,0 +1,62 @@ + +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 6px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid rgba(96, 96, 96, 0.85); + border-bottom: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 6px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 6px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 13px; + color: white; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-color: #3578b1; + color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu_rtl-compat.css new file mode 100644 index 00000000..3b1f8262 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu_rtl-compat.css @@ -0,0 +1,17 @@ + +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 6px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 6px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 6px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 6px; + -moz-border-bottom-right-radius: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu_rtl.css new file mode 100644 index 00000000..0675ffc8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/IconMenu_rtl.css @@ -0,0 +1,23 @@ +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-right-radius: 6px; + border-top-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0px; + border-top-left-radius: 6px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-right-radius: 6px; + border-bottom-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem-compat.css new file mode 100644 index 00000000..4063c9f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem-compat.css @@ -0,0 +1,24 @@ + +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #3578b1; +} +.dj_gecko .mblListItemSelected { + background-image: none; +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem-compat.less new file mode 100644 index 00000000..332107ef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayArrow-compat.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck-compat.css"); + +@import "variables.less"; +@import "../common/ListItem-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem.css new file mode 100644 index 00000000..a809bd31 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem.css @@ -0,0 +1,154 @@ + +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonWhiteCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: white; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 50px; + list-style-type: none; + line-height: 50px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #333538; + margin-right: 7px; + margin-left: 7px; + font-size: 18px; + color: #ffffff; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-color: #3578b1; +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: white; + margin-top: 14px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem.less new file mode 100644 index 00000000..45d43861 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayArrow.css"); +@import url("../common/domButtons/DomButtonWhiteCheck.css"); + +@import "variables.less"; +@import "../common/ListItem.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem_rtl-compat.css new file mode 100644 index 00000000..f3e90656 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem_rtl-compat.css @@ -0,0 +1,6 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem_rtl.css new file mode 100644 index 00000000..bf0a03c1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem_rtl.css @@ -0,0 +1,40 @@ + +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonWhiteCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem_rtl.less new file mode 100644 index 00000000..c21ef273 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ListItem_rtl.less @@ -0,0 +1,4 @@ +@import url("../common/domButtons/DomButtonGrayArrow_rtl.css"); +@import url("../common/domButtons/DomButtonWhiteCheck_rtl.css"); + +@import "../common/ListItem_rtl.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Opener-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Opener-compat.css new file mode 100644 index 00000000..130f6e15 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Opener-compat.css @@ -0,0 +1,53 @@ + +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #8c8a8c; + border-bottom: 1px solid #8c8a8c; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Opener.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Opener.css new file mode 100644 index 00000000..3634a88a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Opener.css @@ -0,0 +1,245 @@ + +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #333333; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 3px; + background-color: #8c8a8c; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #306ea1; + background-image: none; + color: white; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #306ea1; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #306ea1; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #848284; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #848284; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #9c9e9c; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #848284; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblOpenerUnderlay { + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Overlay-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Overlay-compat.css new file mode 100644 index 00000000..6a884395 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Overlay-compat.css @@ -0,0 +1,14 @@ + +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Overlay.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Overlay.css new file mode 100644 index 00000000..3c595256 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Overlay.css @@ -0,0 +1,90 @@ +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #333333; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Overlay.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Overlay.less new file mode 100644 index 00000000..e49ea9eb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Overlay.less @@ -0,0 +1,5 @@ +@import url("../common/transitions/coverv.css"); +@import url("../common/transitions/revealv.css"); + +@import "variables.less"; +@import "../common/Overlay.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/PageIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/PageIndicator-compat.css new file mode 100644 index 00000000..29d4f8ab --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/PageIndicator-compat.css @@ -0,0 +1,4 @@ + +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/PageIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/PageIndicator.css new file mode 100644 index 00000000..0b40e78d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/PageIndicator.css @@ -0,0 +1,23 @@ + +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressBar-compat.css new file mode 100644 index 00000000..03f47a42 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressBar-compat.css @@ -0,0 +1,17 @@ + +.mblProgressBar { + background-color: #333333; +} +.mblProgressBarProgress { + background-color: #33b5e5; +} +.dj_gecko .mblProgressBar { + background-image: none; + background-color: #333333; +} +.dj_gecko .mblProgressBarProgress { + -moz-transition-property: width; + -moz-transition-duration: 0.25s; + background-image: none; + background-color: #33b5e5; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressBar.css new file mode 100644 index 00000000..da713bdd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressBar.css @@ -0,0 +1,35 @@ + +.mblProgressBar { + position: relative; + border-radius: 0px; + height: 2px; + background-image: none; + background-color: #333333; +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + background-image: none; + background-color: #33b5e5; + height: 2px; +} +.mblProgressBarComplete { + border-radius: 0px; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressBar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressBar.less new file mode 100644 index 00000000..e2afc0b3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressBar.less @@ -0,0 +1,6 @@ +@import "variables.less"; +@import "../common/ProgressBar.less"; + +.mblProgressBarMsg { + //display:none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressIndicator-compat.css new file mode 100644 index 00000000..091d2c35 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressIndicator-compat.css @@ -0,0 +1,83 @@ + +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressIndicator.css new file mode 100644 index 00000000..24420021 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressIndicator.css @@ -0,0 +1,157 @@ + +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressIndicator_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressIndicator_rtl.css new file mode 100644 index 00000000..ea681121 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ProgressIndicator_rtl.css @@ -0,0 +1,14 @@ + +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 50%; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: -50%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RadioButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RadioButton-compat.css new file mode 100644 index 00000000..7a4a5fac --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RadioButton-compat.css @@ -0,0 +1,32 @@ + +.mblRadioButton { + background-image: url(compat/button-bg.png); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.dj_gecko .mblRadioButton { + background-image: none; + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: none; +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: none; +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RadioButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RadioButton.css new file mode 100644 index 00000000..41dce0a7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RadioButton.css @@ -0,0 +1,87 @@ + +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #5c5c5c; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-color: transparent; +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #61c6eb; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: none; +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: #61c6eb; +} +.mblRadioButton { + border-style: solid; + border-width: 1px; + border-radius: 999px; + background-image: none; + background-color: transparent; + -webkit-tap-highlight-color: none; + border-color: #5c5c5c; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: none; +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.65em; + height: 0.65em; + top: 0.17em; + left: 0.17em; + border-style: none; + background-color: #61c6eb; + border-radius: 1em; + border-color: #61c6eb; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: none; + box-shadow: 0px 0px 1px 4px #1f5366 inset; +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: #61c6eb; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RadioButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RadioButton.less new file mode 100644 index 00000000..4b515341 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RadioButton.less @@ -0,0 +1,37 @@ +@import "variables.less"; +@import "../common/RadioButton.less"; +.mblRadioButton { + border-style: solid; + border-width: 1px; + border-radius: 999px; + background-image: none; + background-color: transparent; + -webkit-tap-highlight-color: none; + .mblRadioButton-styles; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: none; + &::after { + position: absolute; + content: ""; + width: 0.65em; + height: 0.65em; + top: 0.17em; + left: 0.17em; + + border-style: none; + background-color: @holo-checkbox-tick-color; + border-radius: 1em; + + .mblRadioButtonChecked-after-styles; + } + &.mblRadioButtonSelected { + background-image: none; + box-shadow: 0px 0px 1px 4px @holo-checkbox-checked-color inset; + &::after { + .mblRadioButtonChecked-Selected-after-styles; + + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRect-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRect-compat.css new file mode 100644 index 00000000..5c050c74 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRect-compat.css @@ -0,0 +1,72 @@ + +.mblRoundRect.mblShadow { + box-shadow: none; +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 14px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: none; +} +.dj_ie .mblRoundCorner { + background-color: transparent; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #222222; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: transparent; + border-style: solid; + border-color: #222222; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #222222; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #222222; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRect.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRect.css new file mode 100644 index 00000000..48355c05 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRect.css @@ -0,0 +1,13 @@ + +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #222222; + border-radius: 14px; + background-color: transparent; + color: white; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: none; + box-shadow: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectCategory.css new file mode 100644 index 00000000..5ba1fc78 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectCategory.css @@ -0,0 +1,10 @@ + +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectCategory_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectCategory_rtl.css new file mode 100644 index 00000000..8e8a8e88 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectCategory_rtl.css @@ -0,0 +1,4 @@ + +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectList-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectList-compat.css new file mode 100644 index 00000000..9322c465 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectList-compat.css @@ -0,0 +1,77 @@ + +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 14px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 14px; + -moz-border-radius-topright: 14px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 14px; + -moz-border-radius-bottomright: 14px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: transparent; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #222222; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: transparent; + border-style: solid; + border-color: #222222; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #222222; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #222222; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectList.css new file mode 100644 index 00000000..f3fba375 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/RoundRectList.css @@ -0,0 +1,19 @@ + +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #222222; + border-radius: 14px; + background-color: transparent; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 14px; + border-top-right-radius: 14px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ScrollablePane.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ScrollablePane.css new file mode 100644 index 00000000..425b9209 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ScrollablePane.css @@ -0,0 +1,12 @@ + +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SearchBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SearchBox-compat.css new file mode 100644 index 00000000..7f9ee13c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SearchBox-compat.css @@ -0,0 +1,22 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 2px; +} +.mblSearchBox { + height: auto; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SearchBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SearchBox.css new file mode 100644 index 00000000..3286c0e1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SearchBox.css @@ -0,0 +1,80 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + background-color: transparent; + border-top-color: transparent; + border-left-color: transparent; + border-right-color: transparent; + border-bottom-color: #33b5e5; + border-width: 2px; + font-size: 17px; + border-style: solid; + color: #ffffff; +} +.mblTextBox:disabled { + background-color: transparent; + border-top-color: transparent; + border-left-color: transparent; + border-right-color: transparent; + border-bottom-color: #333333; + border-width: 1px; + font-size: 17px; + border-style: solid; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: transparent; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid transparent; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 0; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #000000), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #000000), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SimpleDialog-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SimpleDialog-compat.css new file mode 100644 index 00000000..677ebeaf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SimpleDialog-compat.css @@ -0,0 +1,10 @@ + +.mblSimpleDialogDecoration { + background-color: #404040; +} +.dj_gecko .mblSimpleDialogDecoration { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SimpleDialog.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SimpleDialog.css new file mode 100644 index 00000000..ebd8c527 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SimpleDialog.css @@ -0,0 +1,54 @@ + +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration { + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; + color: white; + background-image: none; + background-color: #222222; + border-style: none; + border-top-style: solid; + border-top-width: 1px; + border-top-color: rgba(255, 255, 255, 0.6); + border-radius: 2px; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 14px 0 7px -5px; + padding: 0 14px 14px; + width: 244px; + border-bottom: 1px solid #33b5e5; + font-size: 17px; + text-align: left; +} +.mblSimpleDialogText { + margin: 14px 9px; + width: 244px; + font-size: 17px; + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Slider-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Slider-compat.css new file mode 100644 index 00000000..907fee28 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Slider-compat.css @@ -0,0 +1,40 @@ + +.mblSlider { + background-image: url(compat/slider-h-bg.png); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url(compat/slider-h-bar-bg.png); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url(compat/slider-handle-bg.png); +} +.mblSliderV { + background-color: #bdbebd; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #00a200; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -none; + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: none; +} +.dj_gecko .mblSliderHandle { + background-image: none; +} +.dj_ff3 .mblSlider { + -moz-border-radius: 10em; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 10em; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 10em; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Slider.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Slider.css new file mode 100644 index 00000000..e37ce53b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Slider.css @@ -0,0 +1,98 @@ + +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 10em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border-color: #b0b0b0; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 10em; + background-image: none; +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 10em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + border-color: transparent; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSlider { + border-style: none; + border-radius: 0; + background-image: none; + background-color: transparent; + border-color: #b0b0b0; +} +.mblSliderH { + width: 200px; + height: 3px; + background-color: #292929; + border-style: none; +} +.mblSliderV { + height: 200px; + width: 3px; + background-color: #292929; + border-style: none; +} +.mblSliderProgressBar { + border: radius: 0; + background-image: none; + background-color: #33b5e5; +} +.mblSliderHandle { + background: -webkit-gradient(radial, 9 9, 3, 9 9, 9, from(#33b5e5), color-stop(0, #33b5e5), color-stop(0.01, rgba(31, 83, 102, 0.8)), to(rgba(31, 83, 102, 0.8))); + background-image: radial-gradient(circle closest-side at center, #ffffff 0%, #a435c5 50%, #251ae7 75%, #00a3ef 100%); + border-color: transparent; +} +.mblSliderHandle:after { + border-style: solid; + background-image: none; + border-color: transparent; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Slider.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Slider.less new file mode 100644 index 00000000..eb561522 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Slider.less @@ -0,0 +1,45 @@ +@import "variables.less"; +@import "../common/Slider.less"; + +.mblSlider { + border-style: none; + border-radius: 0; + background-image: none; + background-color: transparent; + .mblSlider-styles; +} +.mblSliderH { + width: 200px; + + height: 3px; + background-color: @holo-slider-track-color; + border-style: none; +} + +.mblSliderV { + height: 200px; + width: 3px; + background-color: @holo-slider-track-color; + border-style: none; + +} + +.mblSliderProgressBar { + border:radius: 0; + background-image: none; + background-color: @holo-color1; + + +} +.mblSliderHandle { + .holo-slider-background-image(); + .mblSliderHandle-styles; +} + +.mblSliderHandle:after { + border-style: solid; + background-image: none; + .mblSliderHandle-styles; +} + + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel-compat.css new file mode 100644 index 00000000..4d605d58 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel-compat.css @@ -0,0 +1,36 @@ +.mblSpinWheel { + background-image: url(../common/compat/spinwheel-bg.png); +} +.mblSpinWheelBar { + background-image: url(../common/compat/spinwheel-bar.png); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel.css new file mode 100644 index 00000000..ba26bc8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel.css @@ -0,0 +1,77 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel_rtl-compat.css new file mode 100644 index 00000000..98aab55f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel_rtl-compat.css @@ -0,0 +1,4 @@ +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel_rtl.css new file mode 100644 index 00000000..2f94024c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/SpinWheel_rtl.css @@ -0,0 +1,5 @@ + +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch-compat.css new file mode 100644 index 00000000..33b40589 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch-compat.css @@ -0,0 +1,109 @@ + +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: none; +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -none; +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: none; +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 0px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 0px; + background-image: url(compat/switch-square-k.gif); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round1-k.gif); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round2-k.gif); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc1-k.gif); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc2-k.gif); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 0px; + background-image: url(compat/switch-square-k.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch-compat.less new file mode 100644 index 00000000..f15894c8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch-compat.less @@ -0,0 +1,7 @@ +@import "variables.less"; +@import "../common/Switch-compat.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwSquareShape-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch.css new file mode 100644 index 00000000..7be46aa4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch.css @@ -0,0 +1,233 @@ + +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 11.5px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: none; +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(157, 157, 157, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 0px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 0px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 0px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 0px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblSwitchBgLeft { + background-color: #0c86af; + background-image: none; +} +.mblSwitchBgRight { + background-color: #333333; + background-image: none; + color: #ffffff; +} +.mblSwitchKnob { + background-color: #606060; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch.less new file mode 100644 index 00000000..525689c2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch.less @@ -0,0 +1,23 @@ +@import "variables.less"; +@import "../common/Switch.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwSquareShape-styles; +} + +.mblSwitchBgLeft { + background-color: @holo-switch-on-color; + background-image: none; +} +.mblSwitchBgRight { + background-color: @holo-switch-off-color; + background-image: none; + color: @holo-color; +} + +.mblSwitchKnob{ + background-color: @holo-switch-knob-color; + background-image: none; + +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch_rtl-compat.css new file mode 100644 index 00000000..a3346662 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch_rtl-compat.css @@ -0,0 +1,37 @@ + +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch_rtl.css new file mode 100644 index 00000000..51bc7180 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Switch_rtl.css @@ -0,0 +1,110 @@ + +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar-compat.css new file mode 100644 index 00000000..98384f85 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar-compat.css @@ -0,0 +1,70 @@ + +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-style: none; + line-height: 0.5em; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url(compat/heading-bg.png); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url(compat/tab-seg-button-bg.png); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url(compat/tab-seg-sel-button-bg.png); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url(compat/tab-slim-bar-bg.png); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url(compat/tab-tall-bar-bg.png); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: none; +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar-compat.less new file mode 100644 index 00000000..f3b6f56a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar-compat.less @@ -0,0 +1,22 @@ +@import "variables.less"; +@import "../common/TabBar-compat.less"; +@import "../common/domButtons/DomButtonWhiteCross-compat.css"; + +.mblTabBarSegmentedControl, .mblTabBarStandardTab { + background-image: none; +} + +.mblTabBarSegmentedControl .mblTabBarButton, .mblTabBarStandardTab .mblTabBarButton { + background-image: none; +} +/* +.mblTabBarSegmentedControl, .mblTabBarStandardTab { + background-image: url(compat/heading-bg.png); + .mblTabBarButton { + background-image: none; + } + .mblTabBarButtonSelected { + background-image: none; + } +} +*/ diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar.css new file mode 100644 index 00000000..342ab0e4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar.css @@ -0,0 +1,339 @@ + +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + text-shadow: none; + color: #ffffff; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-style: none; + line-height: 0.5em; +} +.mblTabBarTabBar .mblTabBarButton { + border-radius: 0px; + height: 47px; + border-bottom-color: #33b5e5; + border-bottom-width: 1px; + border-bottom-style: solid; +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; + padding-top: 0px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + display: inline; + text-transform: uppercase; + color: #ffffff; + font-weight: bold; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + border-radius: 0px; + height: 42px; + border-bottom-color: #33b5e5; + border-bottom-width: 6px; + border-bottom-style: solid; +} +.mblTabBarSegmentedControl { + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-style: none; + line-height: 0.5em; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-radius: 0px; + height: 28px; + border-bottom-color: #33b5e5; + border-bottom-width: 1px; + border-bottom-style: solid; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + border-radius: 0px; + height: 23px; + border-bottom-color: #33b5e5; + border-bottom-width: 6px; + border-bottom-style: solid; +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-style: none; +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: #ffffff; + background-color: #333333; + + background-image: none; +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonLabel { + display: inline; + text-transform: uppercase; + color: #ffffff; + font-weight: bold; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + color: #ffffff; + background-color: #33b5e5; + + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #2d3642; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-style: none; +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-radius: 0px; + height: 58px; + border-style: none; + border-bottom-color: #33b5e5; + border-bottom-width: 1px; + border-bottom-style: solid; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-radius: 0px; + height: 53px; + border-style: none; + border-bottom-color: #33b5e5; + border-bottom-width: 6px; + border-bottom-style: solid; +} +@media (max-width: 500px) { + .mblTabBarTabBar { + + + } + .mblTabBarTabBar .mblTabBarButton + .mblTabBarButton:before { + content: url('images/vseparator.png'); + position: absolute; + top: 12px; + left: 0px; + } +} +.mblTabBarTabBar.mblTabBarFill .mblTabBarButton { + height: 48px; +} +.mblTabBarSegmentedControl.mblTabBarFill .mblTabBarButton { + height: 29px; +} +.mblTabBarTallTab.mblTabBarFill .mblTabBarButton { + height: 62px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar.less new file mode 100644 index 00000000..f7de0678 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar.less @@ -0,0 +1,37 @@ +@import "variables.less"; +@import "../common/TabBar.less"; +@import "../common/domButtons/DomButtonWhiteCross.css"; + +@media (max-width:500px) { + .mblTabBarTabBar { + /* Tab separator only for width < 500 (because TabBar._largeScreenWidth == 500)*/ + .mblTabBarButton+.mblTabBarButton:before{ + content:url('images/vseparator.png'); + position:absolute; + top: 12px; + left:0px; + } + } +} +/* when fill is activated, box-sizing is border-box */ +.mblTabBarTabBar { + &.mblTabBarFill { + .mblTabBarButton { + height: 48px; + } + } +} +.mblTabBarSegmentedControl { + &.mblTabBarFill { + .mblTabBarButton { + height: 29px; + } + } +} +.mblTabBarTallTab { + &.mblTabBarFill { + .mblTabBarButton { + height: 62px; + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar_rtl-compat.css new file mode 100644 index 00000000..9d501c64 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar_rtl-compat.css @@ -0,0 +1,19 @@ + +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 5px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 5px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar_rtl.css new file mode 100644 index 00000000..e0527eb1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TabBar_rtl.css @@ -0,0 +1,83 @@ + +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 5px; + border-top-left-radius: 0px; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 5px; + border-top-right-radius: 0px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextArea-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextArea-compat.css new file mode 100644 index 00000000..324abfbc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextArea-compat.css @@ -0,0 +1,7 @@ + +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextArea.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextArea.css new file mode 100644 index 00000000..13b748ee --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextArea.css @@ -0,0 +1,22 @@ + +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + color: #ffffff; + border-radius: 0; + border-top-color: transparent; + font-size: 17px; +} +.mblExpandingTextArea { + margin: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextBox-compat.css new file mode 100644 index 00000000..e4393baa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextBox-compat.css @@ -0,0 +1,4 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextBox.css new file mode 100644 index 00000000..ee7dc15c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextBox.css @@ -0,0 +1,27 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + background-color: transparent; + border-top-color: transparent; + border-left-color: transparent; + border-right-color: transparent; + border-bottom-color: #33b5e5; + border-width: 2px; + font-size: 17px; + border-style: solid; + color: #ffffff; +} +.mblTextBox:disabled { + background-color: transparent; + border-top-color: transparent; + border-left-color: transparent; + border-right-color: transparent; + border-bottom-color: #333333; + border-width: 1px; + font-size: 17px; + border-style: solid; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextBox.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextBox.less new file mode 100644 index 00000000..368e6c43 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TextBox.less @@ -0,0 +1,13 @@ +@import "variables.less"; +@import "../common/TextBox.less"; + +.mblTextBox:disabled { + background-color: transparent; + border-top-color: transparent; + border-left-color: transparent; + border-right-color: transparent; + border-bottom-color: @holo-grey2; + border-width: 1px; + font-size: 17px; + border-style: solid; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TimePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TimePicker.css new file mode 100644 index 00000000..02b5dc46 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/TimePicker.css @@ -0,0 +1,181 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: none; +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0px; + border-top-right-radius: 0px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblValuePickerSlotButtonSelected { + background-image: none; +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: none; +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; + color: #ffffff; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +.mblValuePickerSlotInputArea { + border-top: 2px solid #33b5e5; + border-bottom: 2px solid #33b5e5; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToggleButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToggleButton-compat.css new file mode 100644 index 00000000..cbb78018 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToggleButton-compat.css @@ -0,0 +1,42 @@ + +.mblToggleButton { + background-image: url(compat/button-bg.png); +} +.mblToggleButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblToggleButtonChecked { + background-image: url(compat/button-chk-bg.png); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblToggleButton { + background-image: none; +} +.dj_gecko .mblToggleButtonSelected { + background-image: none; +} +.dj_gecko .mblToggleButtonChecked { + background-image: none; +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: none; +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 2px; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url(compat/togglebutton-chk-mark-bg.png); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToggleButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToggleButton.css new file mode 100644 index 00000000..f31381d1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToggleButton.css @@ -0,0 +1,54 @@ + +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + font-size: 13px; + color: black; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: none; + color: white; +} +.mblToggleButtonChecked { + background-color: transparent; + color: white; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: none; + color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToggleButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToggleButton_rtl.css new file mode 100644 index 00000000..f6145188 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToggleButton_rtl.css @@ -0,0 +1,7 @@ + +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToolBarButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToolBarButton-compat.css new file mode 100644 index 00000000..e74d47b4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToolBarButton-compat.css @@ -0,0 +1,63 @@ + +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url(compat/arrow-button-head-sel.png); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-right-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url(compat/arrow-button-right-head-sel.png); +} +.dj_ie .mblToolBarButtonBody { + background-image: url(compat/arrow-button-bg.png); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url(compat/arrow-button-bg-sel.png); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToolBarButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToolBarButton.css new file mode 100644 index 00000000..72225203 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToolBarButton.css @@ -0,0 +1,90 @@ + +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + text-shadow: none; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1.05) rotate(45deg); + transform: scale(0.7, 1.05) rotate(45deg); + border: 1px solid #3a4655; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: 1px solid #555555; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToolBarButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToolBarButton_rtl.css new file mode 100644 index 00000000..4273045f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ToolBarButton_rtl.css @@ -0,0 +1,18 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Tooltip-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Tooltip-compat.css new file mode 100644 index 00000000..94f3c594 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Tooltip-compat.css @@ -0,0 +1,40 @@ + +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #8c8a8c; + border-bottom: 1px solid #8c8a8c; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Tooltip.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Tooltip.css new file mode 100644 index 00000000..102a24f4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/Tooltip.css @@ -0,0 +1,152 @@ + +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 3px; + background-color: #8c8a8c; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #306ea1; + background-image: none; + color: white; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #306ea1; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #306ea1; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #848284; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #848284; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #9c9e9c; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #848284; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker-compat.css new file mode 100644 index 00000000..0be7daee --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker-compat.css @@ -0,0 +1,22 @@ + +.mblValuePickerSlotButton { + background-image: url(compat/valuepicker-button-bg.png); +} +.mblValuePickerSlotButtonSelected { + background-color: #33b5e5; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: none; +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: none; +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: none; +} +.mblValuePickerSlotInputArea { + background-color: transparent; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker-compat.less new file mode 100644 index 00000000..04256bad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker-compat.less @@ -0,0 +1,6 @@ +@import "variables.less"; +@import "../common/ValuePicker-compat.less"; + +.mblValuePickerSlotInputArea { + background-color: transparent; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker.css new file mode 100644 index 00000000..4f9ac194 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker.css @@ -0,0 +1,105 @@ + +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: none; +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0px; + border-top-right-radius: 0px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblValuePickerSlotButtonSelected { + background-image: none; +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: none; +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; + color: #ffffff; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +.mblValuePickerSlotInputArea { + border-top: 2px solid #33b5e5; + border-bottom: 2px solid #33b5e5; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker.less new file mode 100644 index 00000000..1b760f95 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/ValuePicker.less @@ -0,0 +1,11 @@ +@import url("../common/domButtons/DomButtonGrayPlus.css"); +@import url("../common/domButtons/DomButtonGrayMinus.css"); + +@import "variables.less"; +@import "../common/ValuePicker.less"; + +.mblValuePickerSlotInputArea { + border-top: 2px solid @holo-color1; + border-bottom: 2px solid @holo-color1; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/View.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/View.css new file mode 100644 index 00000000..9f200c9b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/View.css @@ -0,0 +1,123 @@ +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: white; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/View.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/View.less new file mode 100644 index 00000000..910651f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/View.less @@ -0,0 +1,6 @@ +@import url("../common/transitions/slide.css"); +@import url("../common/transitions/flip.css"); +@import url("../common/transitions/fade.css"); + +@import "variables.less"; +@import "../common/View.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/android-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/android-compat.css new file mode 100644 index 00000000..5fd68387 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/android-compat.css @@ -0,0 +1,1271 @@ +.dj_gecko .mblColorBlue { + background-image: none; +} +.dj_gecko .mblColorBlue45 { + background-image: none; +} +.dj_gecko .mblColorDefault { + background-image: none; +} +.dj_gecko .mblColorDefault45 { + background-image: #333333; +} +.dj_gecko .mblColorDefaultSel { + background-image: none; +} +.dj_gecko .mblColorDefaultSel45 { + background-image: #33b5e5; +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: none; +} +.mblHeading { + background-image: none; +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: none; +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 14px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: none; +} +.dj_ie .mblRoundCorner { + background-color: transparent; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #222222; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: transparent; + border-style: solid; + border-color: #222222; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #222222; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #222222; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 14px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 14px; + -moz-border-radius-topright: 14px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 14px; + -moz-border-radius-bottomright: 14px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: transparent; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #222222; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: transparent; + border-style: solid; + border-color: #222222; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #222222; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #222222; + margin: 0 5px; +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #3578b1; +} +.dj_gecko .mblListItemSelected { + background-image: none; +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: none; +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -none; +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: none; +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 0px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 0px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 0px; + background-image: url("compat/switch-square-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} +.mblDomButtonWhitePlus { + background-image: url("../common/domButtons/compat/mblDomButtonWhitePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhitePlus div { + display: none; +} +.mblDomButtonWhiteMinus { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteMinus div { + display: none; +} +.mblDomButtonWhiteUpArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteUpArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteUpArrow div { + display: none; +} +.mblDomButtonWhiteDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteDownArrow div { + display: none; +} +.mblDomButtonWhiteSearch { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteSearch.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteSearch div { + display: none; +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonCheckboxOn { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOn.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOn div { + display: none; +} +.mblDomButtonCheckboxOff { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOff.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOff div { + display: none; +} +.mblDomButtonBlueCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleMinus > div { + display: none; +} +.mblDomButtonBlueCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCirclePlus > div { + display: none; +} +.mblDomButtonBlueCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleArrow > div { + display: none; +} +.mblDomButtonRedCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleMinus > div { + display: none; +} +.mblDomButtonRedCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCirclePlus > div { + display: none; +} +.mblDomButtonRedCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleArrow > div { + display: none; +} +.mblDomButtonGreenCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleMinus > div { + display: none; +} +.mblDomButtonGreenCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCirclePlus > div { + display: none; +} +.mblDomButtonGreenCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleArrow > div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblDomButtonGrayRoundRect > div { + -moz-border-radius: 4px; +} +.mblDomButtonSilverCircleDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleDownArrow > div { + display: none; +} +.mblDomButtonSilverCircleGreenButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenButton > div { + display: none; +} +.mblDomButtonSilverCircleGrayButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGrayButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGrayButton > div { + display: none; +} +.mblDomButtonSilverCircleOrangeButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleOrangeButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleOrangeButton > div { + display: none; +} +.mblDomButtonSilverCircleGreenPlus { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenPlus > div { + display: none; +} +.mblDomButtonSilverCircleRedCross { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleRedCross > div { + display: none; +} +.mblDomButtonBlueBall { + background-image: url("../common/domButtons/compat/mblDomButtonBlueBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueBall > div { + display: none; +} +.mblDomButtonGreenBall { + background-image: url("../common/domButtons/compat/mblDomButtonGreenBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenBall > div { + display: none; +} +.mblDomButtonOrangeBall { + background-image: url("../common/domButtons/compat/mblDomButtonOrangeBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonOrangeBall > div { + display: none; +} +.mblDomButtonRedBall { + background-image: url("../common/domButtons/compat/mblDomButtonRedBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedBall > div { + display: none; +} +.mblDomButtonYellowStar { + background-image: url("../common/domButtons/compat/mblDomButtonYellowStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonYellowStar > div { + display: none; +} +.mblDomButtonGrayStar { + background-image: url("../common/domButtons/compat/mblDomButtonGrayStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayStar > div { + display: none; +} +.mblDomButtonGrayCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonGrayCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonRedCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonGrayKnob { + background-image: url("../common/domButtons/compat/mblDomButtonGrayKnob.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayKnob > div { + display: none; +} +.mblDomButtonGrayPlus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayPlus div { + display: none; +} +.mblDomButtonGrayMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayMinus div { + display: none; +} +.mblAccordionTitleSelected { + background-color: #33b5e5; +} +.dj_gecko .mblAccordionTitle { + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; +} +.dj_gecko .mblAccordionTitleSelected { + background-color: #33b5e5; +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.mblButton { + background-image: url("compat/button-bg.png"); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblBlueButton { + background-image: url("compat/blue-button-bg.png"); +} +.mblBlueButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.mblRedButton { + background-image: url("compat/red-button-bg.png"); +} +.mblRedButtonSelected { + background-image: url("compat/red-button-sel-bg.png"); +} +.dj_gecko .mblButton { + background-image: none; +} +.dj_gecko .mblButtonSelected { + background-image: none; +} +.dj_gecko .mblBlueButton { + background-image: none; +} +.dj_gecko .mblBlueButtonSelected { + background-image: none; +} +.dj_gecko .mblRedButton { + background-image: none; +} +.dj_gecko .mblRedButtonSelected { + background-image: none; +} +.dj_ff3 .mblButton { + -moz-border-radius: 2px; +} +.mblButton { + background-image: none; +} +.mblButtonSelected { + background-image: none; +} +.mblBlueButton { + background-image: none; +} +.mblBlueButtonSelected { + background-image: none; +} +.mblRedButton { + background-image: none; +} +.mblRedButtonSelected { + background-image: none; +} +.mblCheckBox { + background-image: url("compat/button-bg.png"); +} +.mblCheckBoxSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblCheckBox { + background-image: none; + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: none; +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: none; +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: none; +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 2px; +} +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: 0 0 50px #000000; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: none; +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url("compat/icon-content-heading-bg.png"); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} +.mblIconMenu { + background-color: #404040; +} +.mblIconMenuItemSel { + background-color: #3578b1; +} +.dj_gecko .mblIconMenu { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-color: #3578b1; +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 6px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 6px; +} +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #8c8a8c; + border-bottom: 1px solid #8c8a8c; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} +.mblRadioButton { + background-image: url("compat/button-bg.png"); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.dj_gecko .mblRadioButton { + background-image: none; + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: none; +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: none; +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} +.mblSimpleDialogDecoration { + background-color: #404040; +} +.dj_gecko .mblSimpleDialogDecoration { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 2px; +} +.mblSlider { + background-image: url("compat/slider-h-bg.png"); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url("compat/slider-h-bar-bg.png"); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url("compat/slider-handle-bg.png"); +} +.mblSliderV { + background-color: #bdbebd; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #00a200; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -none; + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: none; +} +.dj_gecko .mblSliderHandle { + background-image: none; +} +.dj_ff3 .mblSlider { + -moz-border-radius: 10em; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 10em; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 10em; +} +.mblSpinWheel { + background-image: url("../common/compat/spinwheel-bg.png"); +} +.mblSpinWheelBar { + background-image: url("../common/compat/spinwheel-bar.png"); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-style: none; + line-height: 0.5em; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url("compat/heading-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url("compat/tab-seg-button-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url("compat/tab-seg-sel-button-bg.png"); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url("compat/tab-slim-bar-bg.png"); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url("compat/tab-tall-bar-bg.png"); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: none; +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: none; +} +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 2px; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 2px; +} +.mblToggleButton { + background-image: url("compat/button-bg.png"); +} +.mblToggleButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblToggleButtonChecked { + background-image: url("compat/button-chk-bg.png"); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblToggleButton { + background-image: none; +} +.dj_gecko .mblToggleButtonSelected { + background-image: none; +} +.dj_gecko .mblToggleButtonChecked { + background-image: none; +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: none; +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 2px; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url("compat/togglebutton-chk-mark-bg.png"); +} +.mblValuePickerSlotButton { + background-image: url("compat/valuepicker-button-bg.png"); +} +.mblValuePickerSlotButtonSelected { + background-color: #33b5e5; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: none; +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: none; +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: none; +} +.mblValuePickerSlotInputArea { + background-color: transparent; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/android_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/android_rtl-compat.css new file mode 100644 index 00000000..d43cf584 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/android_rtl-compat.css @@ -0,0 +1,80 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 6px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 6px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 6px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 6px; + -moz-border-bottom-right-radius: 0px; +} +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 5px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 5px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base-compat.css new file mode 100644 index 00000000..caf2fac8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base-compat.css @@ -0,0 +1,452 @@ +.dj_gecko .mblColorBlue { + background-image: none; +} +.dj_gecko .mblColorBlue45 { + background-image: none; +} +.dj_gecko .mblColorDefault { + background-image: none; +} +.dj_gecko .mblColorDefault45 { + background-image: #333333; +} +.dj_gecko .mblColorDefaultSel { + background-image: none; +} +.dj_gecko .mblColorDefaultSel45 { + background-image: #33b5e5; +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: none; +} +.mblHeading { + background-image: none; +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: none; +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 14px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: none; +} +.dj_ie .mblRoundCorner { + background-color: transparent; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #222222; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: transparent; + border-style: solid; + border-color: #222222; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #222222; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #222222; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 14px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 14px; + -moz-border-radius-topright: 14px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 14px; + -moz-border-radius-bottomright: 14px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: transparent; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #222222; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: transparent; + border-style: solid; + border-color: #222222; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #222222; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #222222; + margin: 0 5px; +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #3578b1; +} +.dj_gecko .mblListItemSelected { + background-image: none; +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: none; +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -none; +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: none; +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 0px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 0px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 0px; + background-image: url("compat/switch-square-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base.css new file mode 100644 index 00000000..e80b68dc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base.css @@ -0,0 +1,915 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; + color: #ffffff; +} +.mblBackground { + background-color: #000000; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: none; +} +.mblColorBlue45 { + background-image: none; +} +.mblColorDefault { + color: #ffffff; + background-color: #333333; + background-image: none; +} +.mblColorDefault45 { + background-color: #333333; +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #33b5e5; + background-image: none; +} +.mblColorDefaultSel45 { + background-color: #33b5e5; +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + color: #ffffff; + background-color: #000000; + border-bottom-color: #33b5e5; + border-bottom-width: 2px; + border-bottom-style: solid; + font-size: 18px; + font-weight: normal; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: white; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + text-shadow: none; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1.05) rotate(45deg); + transform: scale(0.7, 1.05) rotate(45deg); + border: 1px solid #3a4655; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: 1px solid #555555; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #222222; + border-radius: 14px; + background-color: transparent; + color: white; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: none; + box-shadow: none; +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 35px; + border-bottom: 3px solid #39393A; + background-color: rgba(0, 0, 0, 0); + color: white; + line-height: 35px; + margin-right: 7px; + margin-left: 7px; + margin-top: 10px; + text-transform: uppercase; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #222222; + border-radius: 14px; + background-color: transparent; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 14px; + border-top-right-radius: 14px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #333538; + margin-right: 7px; + margin-left: 7px; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonWhiteCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: white; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 50px; + list-style-type: none; + line-height: 50px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #333538; + margin-right: 7px; + margin-left: 7px; + font-size: 18px; + color: #ffffff; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-color: #3578b1; +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: white; + margin-top: 14px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 11.5px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: none; +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(157, 157, 157, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 0px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 0px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 0px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 0px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblSwitchBgLeft { + background-color: #0c86af; + background-image: none; +} +.mblSwitchBgRight { + background-color: #333333; + background-image: none; + color: #ffffff; +} +.mblSwitchKnob { + background-color: #606060; + background-image: none; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base_rtl-compat.css new file mode 100644 index 00000000..37224447 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base_rtl-compat.css @@ -0,0 +1,42 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base_rtl.css new file mode 100644 index 00000000..6f05dfdd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/base_rtl.css @@ -0,0 +1,182 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -2px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonWhiteCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 50%; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: -50%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/common-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/common-compat.css new file mode 100644 index 00000000..bec0d062 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/common-compat.css @@ -0,0 +1,18 @@ +.dj_gecko .mblColorBlue { + background-image: none; +} +.dj_gecko .mblColorBlue45 { + background-image: none; +} +.dj_gecko .mblColorDefault { + background-image: none; +} +.dj_gecko .mblColorDefault45 { + background-image: #333333; +} +.dj_gecko .mblColorDefaultSel { + background-image: none; +} +.dj_gecko .mblColorDefaultSel45 { + background-image: #33b5e5; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/common.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/common.css new file mode 100644 index 00000000..a1838ce9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/common.css @@ -0,0 +1,55 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; + color: #ffffff; +} +.mblBackground { + background-color: #000000; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: none; +} +.mblColorBlue45 { + background-image: none; +} +.mblColorDefault { + color: #ffffff; + background-color: #333333; + background-image: none; +} +.mblColorDefault45 { + background-color: #333333; +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #33b5e5; + background-image: none; +} +.mblColorDefaultSel45 { + background-color: #33b5e5; +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/arrow-button-bg-sel.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/arrow-button-bg-sel.png new file mode 100644 index 0000000000000000000000000000000000000000..5b85b727191f818ce022963ae35ac867a44748b1 GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!2~3ezCWG-q(nX+O>#`7pEbC3~C2gnx`e?W-6sd;DNG h`p-V+FY`h+hL?$gfsgk~#{-RF@O1TaS?83{1OQ*9Jqi;2}E-=Gv^p4_82BkG0dD}nK?x>bEzQ^6#~&(!^*Xml|XW< zB?#?}Dr`vxqRJ`Rl~bxKTP)l5TDBdt>^o=KcdfXsr@C*-e+Gt@ww|889-#9_!DtB3 zC_ocAwR>!AXXPUU5@6Gd6y|hV7<^P|oU@m^w z+o31*LV}wAs7#i6`&n>lc`NZ>@sDtYeaw10ZFh0=Ku|Dxy85}S Ib4q9e0Qb`4AOHXW literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/arrow-button-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/arrow-button-head.png new file mode 100644 index 0000000000000000000000000000000000000000..ac78b9ea6d8cb644411e863fc59dc77cc4c61caa GIT binary patch literal 1068 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&q9v{oCC){ui6xo&c?uz!xv327 zx0u8jS*3%8s#Jgq*h@TpUD@w2@^W*t{(R|b0~F#c@Q5sCVBq=y!i-L9OlB}JFf#=B zgt!I;1_ebX2SsK_B?3`#RAzB(*}Fwsr5my?c)zJ9hlox%20)UB7nkKFHalU^D~61tRzsb$ zTQnnk6eFi-CiW;M0!bj6qnSC!FtNulaf)H)9Lvlpnwd)tfv6CO)*4o>wX6h^TP;Co zZ*pNva^;lj$`;GEy_RjqEc?z`_Fb#)oARH5p{K70=-yE<8UpkQf#ZkIT>{!Un zr_Th|r)}P@+RL_a{fu7Cq_*_kW=G%fuwv7BS9iZRGp!1#eIBv;(oeVWRWdK<&-4T4 zwx;mq-JuU_1-tH)tr7fmMXW}EEycgYYuXEyOdSvYkQSfYTg4PN8c%qm=kYkPO!Miv tx2|2bw`YnZzE%0ddV5{RPuYKYUzk^~wQ>))J$48bpq{RNF6*2UngCj=-Rl4V literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/arrow-button-right-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/arrow-button-right-head.png new file mode 100644 index 0000000000000000000000000000000000000000..cc92700bfd768d28c162840ba1258ce3b94475c7 GIT binary patch literal 1073 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&q9v{oCC){ui6xo&c?uz!xv327 zx0u8jS*3%8s#Jgq*h@TpUD@w2@^bU)&SLX&019yyctjR6FmQbUVMeDlCNmfqm>B|m zLR^CagMuQHgCet|5`m~VDzi8_vp74mI=isC7>Fu?sHGZ&daB!c{xke*<*` zX9^I_n==Q5mM&ceL~GZsTf24J*1h}o?md3&*zsfM&Y!z>{o1|zAUBVK(GVD%A@C#g z;76d#1WJPZg8!oeh6l>Al0dn3PZ!6Kid&%24c&W7d?*F{Ce=`J})2B&iTz|!N dU5NKaQkmvv4FO#pk0t)&0} literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/blue-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/blue-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3bd558b4503a413941bda4308355b18cdb617848 GIT binary patch literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@lxT@-M2T}zYGO%dex5=|W^O72 z`zPN@TdM2G>1n-XrRPM_J3}8B%wKr<6YJ%DRlm~TUVpE| n;Ksr#+y16IkJ0#pJ*WKbpZZf5%J=>N8pz=3>gTe~DWM4fgQq@D literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/blue-button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/blue-button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d371d899b709aa0c1aec94fba6fd6678604e41f7 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rt!7sn8Z@MHtc_~Qxp%NaY)8{a6KpSIzp#kqvLRWlB5%Cv8G z{j10Jc~&mZvZ=Er9A5Q!hZ#wT>7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-arrow-head-bg.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-arrow-head-bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..77b6e9e92d83309330cddb54aab0029007a7f1a2 GIT binary patch literal 316 zcmZ?wbhEHbRAG>1Xl7stPsllc{`{LaZ*JedJ!j2<%ay@^) z`om$g1oRjH5Xir zTiRXvB5YmS*JZMI!e56RNPo(wb|-9+Q%}d^rdXM4hJno!S%br7fBtylOuVyp-K(2w z85d`HSKIX7TJ@^0;^C=jf1=W!+>Fbf-_yIhA#WNxGl#t1AM?}g43o6|>t-f8FjxZs Dm5_!W literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..0d378fafe6e0810b460e00217f8d1313bb592a49 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&Kp|gG7sn8ZaNEPD*&Gx_94`L-Z!hkt((WRZd1vySgSi_mo^SYG zcRlLQ^EoxgCGy|Ty(YCa%uDmh98XQbWR;eNjt6^>Tefc%OXi8no)RP;R^hezy}_|p QK!X`PUHx3vIVCg!0Np1z5&!@I literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-chk-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-chk-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..4bfad0604fc6f28fe5a7a8ac905ee36624740be2 GIT binary patch literal 154 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&Kp{I%7sn8ZaNfg~d=3l(3IJGb!xPD++%E)qBgTbMJdR* ynA=-BTRPghn%!MJT|C^poZnwRUp{{S4@ONrkv#3!&({M@V(@hJb6Mw<&;$U)&L*h< literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d371d899b709aa0c1aec94fba6fd6678604e41f7 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rt!7sn8Z@MHtc_~Qxp%NaY)8{a6KpSIzp#kqvLRWlB5%Cv8G z{j10Jc~&mZvZ=Er9A5Q!hZ#wT>7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-unsel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/button-unsel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d371d899b709aa0c1aec94fba6fd6678604e41f7 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rt!7sn8Z@MHtc_~Qxp%NaY)8{a6KpSIzp#kqvLRWlB5%Cv8G z{j10Jc~&mZvZ=Er9A5Q!hZ#wT>7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/gray-arrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/gray-arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..c93d17f5e8826e4caaa59410f44992f587e9965c GIT binary patch literal 920 zcmeAS@N?(olHy`uVBq!ia0vp^oFFy_Gm!MTx5WfVv6p!Iy0YJ56626i(p>F!9;Bwg zBeIx*fm;ZK886+f`@_J%%n;xc;`*QAe?vn9P{}A54S^9D0^$4K$pF30SQ6wH%;50s zMjDVK=jq}YQgJIeAt50prGdfCO=9vy7qwLqa%_`i4XPRW)-hPVNm+Rm6k49HelF{r G5}E)#zA2Ib literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..8c3999b481570684cfd214c69b9ad3b8f0b33600 GIT binary patch literal 181 zcmeAS@N?(olHy`uVBq!ia0vp^j6kf#!2~4#$}H0cQlcfU5hcz=sfi_-`FRQURVm;4~`xQ`#v%n*=n1O-o0|+xZtudJa6g2j9 zaSW-rl{~{Zn@^aTnOWxlkI&49{xv@+HYhOooA85C{O~fqw*CMAojY>!RHu{j>B*gp YPX#27B`pZs3DnNu>FVdQ&MBb@080-zM*si- literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/icon-content-heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/icon-content-heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3daa1a81de8d9b80d652d39251724d4732b181f0 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{O!2~4hKV8-UQlcfU5hcz=sfi_-`FRQ3GDm;4Z)FMKwe@P7LeL$-D$|SkfJR9T^xl z_H+M9WCijSl0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=dY0 z)7O>#7Lyp8F|(vj+b5tEKU0n z{O-Vq?HAe}=5J#?ygx*^t^Q*h&wr&-$$#wGMti=BrdGUWK620D4eQZ)4!4}AJe+GS pu$ytCw!m(Njm84jj2jngFxaoukU#0P!VqX3gQu&X%Q~loCIH@wQK7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/slider-h-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/slider-h-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..970c7ff222533db100e1946ba372482f18e797e9 GIT binary patch literal 124 zcmeAS@N?(olHy`uVBq!ia0vp^j6lr6!2~3?S1^eIDVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfIAl&ht@uQ=H9oG@{#veKY@hJ=pv1i!$ U9d7gM0M#;hy85}Sb4q9e03$mdJ^%m! literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/slider-h-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/slider-h-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..0a08c5762e4e3a9350045171a8d3623c3a00b8e1 GIT binary patch literal 135 zcmeAS@N?(olHy`uVBq!ia0vp^j6lr6!2~3?S1^eIDVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfI`}yE{-7*;fx9l_y02-Ja~}d#EBCO=g*&KxOVj#!@WEA7@j_U h%JAmp8-_0*zF2G&$*8z8vlpn1!PC{xWt~$(69ANgD^dUe literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/slider-handle-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/slider-handle-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..1988f0402cfc0a8ef1e0ceeac8e4ef90ef809a62 GIT binary patch literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{J!2~2lO_g5*DVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfI<$QE{-7*;j9N4nHmHH7!LlemQ`%I@bPBaja`xVot7K@PTA9Z z&uXp7t6o7}O2*2J zngum=OY0iy8X6lKTbf$hTG~3=I=VW#db)c0diolsH1y8wozOR7(u7Ge+;f1ZzeD{A8h6j zmO7)bVIc>%f?dN5kBy6tcJaB^+&Hmu@$r6n2`(3gO)4jtdF?AAPHtLydb*r}i@=XW z<}7I6@f43Lxzk(8{JRP?%dU_M|^rq|CcG#NCG11+j%W#l^;TQwMNd|_q44g+e z87?pg9u*WnCN6kJQ0%Oj%rP0=qq^qD%xw^>tq19JDqlVpT-Mu89Bt z|1%6Sp!k!8k%7UVK?me6P@FJu{9~BU5u$Lo?O-#9uvW~84GRyqo26(7cwB5~FEZ^r&3NfDlrPk7rnZ3a`W=@^BtPGo~~qS zJiwteNh|i$mX(*62Q2m~t#W+OCK$0f>+Y$otFNz5I9zu0qlyF9#*E9WVrQGSH?Syr zoS5sqecj#N6`x<-trll%W>@>cCFir_LyWkn(iDR;I|?6*N$9+o;j?qo)6+AIv+tdW zG!{BJ*STBHcUO^+)Y9P9aci4Bd9Q6q&Mpf|Zhw1wNAc@>XLoOZe}C`XGYo!vc6@xi zb7q9Yxjj2S%X%uzdEmHr*VorKHfP^Ix3{`XK~kY{!3V#6dwzbt+MJSMAh-AT_jjE> z78@3||NZ^r^XvQP_wWDz|F`Hy24IL~JZR)ltGF-7U?bSvB;Y3TP>9L$!C`)hv=tBA zWXfJVY*%R8u~0yS!{h+B(y|qgx^(^}xG;*`HE`)RxwhkxfcXrS1|i=sFCOngrKY8+r>U*2t+BGPwzjsnxVN~rxVpKzzQ4Y~!NJAD#l^+N$H>RZ z%F4~m&C$-$($Uh?(bUz{)!5b8+S%IN+uYvV-r?WjFw$5@9gjK?(y{S z^#A|=A^8LW002J#EC2ui08IcJ000R70DlNnkRgP@g9sBUT*$DY!-pXFKnyIRN}Wozs@1Dlvud>p;zs}xEy9W&OSY`pvuM+*HJd`fffFv`%AHHM zuHCzM^Xj#`A^`&wdjks|OjvFU2M|`kSj@Pwfrjtjz=I1PPQ1ABe2W~kwY9Cqm8hahrjLjwk=5aNj_ zrl=x@G#~)L2|L6no7}O2*2J zngum=OY0iy8X6lKTbf$hTG~3=I=VW#db)c0diolsH1y8wozOR7(u7Ge+;f1ZzeD{A8h6j z){2>7(0rg>NvC0k$HqlRyCsa98Z;g?AMaOi?vnAmwAi_k!)sNH=cfaQ`Q?&M&GFp4 z?CfkqLl*%K;pOM&n{##qJVERF2ikU4e10anp>g5;{SEw|czt$kILIKar4e^# z$HvFUCrB&z`Rpu8Wsug$xOZmf=I7@ZSo%v8EOdHtd4;q6go4IHE!Q_BpPuKt+w2Xy zgha@Ov%9yyWl|Cgnc%Qz$H&JfCTr{4IViL}y|7rHU!kD6h2zHN?EB~T?*7ifr)I{H z7I6@f43Lxzk(8{JRP?%dU_M|^rq|CcG#NCG11+j%W#l^;TQwMNd|_q44g+e z87?pg9u*WnCN6kJQ0%Oj%rP0=qq^qD%xw^>tq19JDqlVpT-Mu89Bt z|1%6Sp!k!8k%7UVK?me6P@FJu{9~BU5u$Lo?O-#9uvW~84GRyq3y7WyP}s1Dkyq9z z>&}Udi;wp!ICshX3~X-f@>i*dIJs%*>FEZ^r{;KWe&)j`%GvPaz~<%W=Q}iW$$D*B z5x7W8fTKrY(aOuq0~UMD_1e1X>gsTPjynd6R$pJAaJWm>d)u0uo6`$zI43Zzy}iBQ z@xHT)3XU8?6`x<-J-vPX{rwHh++sY<2bqPNg|*|(L~QKl67({e=d*Lu12GAm7dOuA z-2D9f0_Scy-(6cWWj##h$DQ4^HT#lh#-4e;yT4_qndZE{XM5YTSN1?Nx4hq;9UmW` zn5-SY@9;^UXBQTG&tEsEll9e&&DrkrSPpT@JvcnGTi$=)o}ZszTwWc{ufohC^7`@V z`Tp^B6L@$ZT)%&Qe|?pbu*?Q0eipHe2aOzRD;_lQn7vrg>0hpiG(6)X(? zM|jK#0lm!C`)lWh)+a>1=!PsN3L}hH{TnfWid^{WB{b_t|{2SS-jIQgT?p pPAv1uL_NMjW-lgngrKY8+r>U*2t+BGPwzjsnxVN~rxVpKzzQ4Y~!NJAD#l^+N$H>RZ z%F4~m&C$-$($Uh?(bUz{)!5b8+S%IN+uYvV-r?WjFw$5@9gjK?(y{S z^#A|=A^8LW002J#EC2ui0A2ta000R70DlNnkRgP@g9sBUT*$DY!-o(RW>6roqJa@8 zGHTq&v7^V2AVZ2A`Ei7Sia#!-Sjn=b%a<@?%A85F=FAQi3!JdYv!~CWJP!zru%f8Z zqezn~UCOkn)2B}>2*kjms@1DlvufSSwX4^!UqSo`AfkoYvuM+*UCXwu+qZDxrVw!8 zgp0d)^XlEpx3Ay7fCC3!k$?dT!H5$pUYxjv0|+Z%NS;i&vgON|Gi%<=nX?NC6grC@ zO}cbx3>9RkUd_6->({Vj%brcUwhRm%X6W9{ySMM(z=I1PPQ3UG5*=tLU(UR_^XJf` zOP@}?I*k<`YG~iiy}S4C;KTNdA5Xq~jTIVfs9(>%z5Dm@+*pMVA`=%9oaYAB&L5Kz$uI~?lhqmV{g=nfm86u<{1WUA?=oObHzr=W%^>ZqT7 K5P(1d0RTJ8MQ*eJ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round1-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round1-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..1bc8a14a5f13420a610e8120baac85612fbbdf81 GIT binary patch literal 511 zcmZ?wbhEHblxC1-Xk}o?%*f2i&dJTmEyyn@Dl94~E~zN1sH&){uC1=AuBof3%bk*2 z+)!N7P*T%WQ$D@CYD!i0%<8JSRhf%2vzBF5FQ{&)Z)j?4YH4a|Yia9f>*(s}>gnp~ z>*?#8($_nqcS7HUNfRbboIY{Nq$$&;Oq(%n#;h5$=FFNiZ_d1h^A|2&w0OzlB|xxd z)tdkR|1*#d6o0ZXGBD^d=zz3>{KUZVk0F*r#^OU`yMTgFpF(5Pg2U~4c5^He4;^vo z67yfv@WR09XupEGvl_oA( zuaXxXOw9Hov8SfEw9V4<>Y3rSb=B3?!JIp0I54daU(Xd*BO$nG&CSgjm#5WgIjz0D zU0P>?hsXAHcXyYuo;iAYdp?7ZEEBh!&yEid7?gOl0Vv=UrMG&MsSv(>~vY#S+WdE7#LPEFsx%>*u=oFlYwC`1KVyk&h4E1 z8~FLR@pJCx6kI7NwMa^8rIg@SLBaikl3OKZ_R1)=DQPro=uObmo33X&$<}VRo!wkJ zg=Gp#yOb(TTXp%54a!gP>!p^Ve)FtD& zY01gS8va#31P(DV^-8dYNE9wwc6PQ!@vA#0H>aNy6lFN@B#7Y%r-;X7t=LmrR$g8n zFn1n9phGgFkmjbWyQj9UzP>);aF_4LWJe!CtxKz7Pj6d$dwap-Q=!r>3>Q>iY(cE;k+zP-P{e|UU)zW@HZ8cpUM4>p|N zzyJULw~2}qm`oTl9yBsIF&=b~kZC;9Ea0Z`utg*+<6*0W(+n4W7RCUlHib5gMIFvJ zTqiJ^^{jZ*rR-PO;Kn1c@Q9GfwT#ET7SC2Z?z4Hdf<=&r$F+e!@Jq&%i5}l1TKU!Z zj+UslM=qko-C3%@eCS>8!87b2;pUuozw({A`&;kR;$&#!r4AuZp C;S}`% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round1-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round1-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..f62342acf36b03962824e06603533dcb69d2e68c GIT binary patch literal 936 zcmZ?wbhEHb^ktA{Xk%dD;^N}r=HcVx6BHB_6BCn`mX?#1Q&v`1S6A26)YR3{H8nN0 zvb3_ZvvYKCbaQj__45r13W|=3j*E>;OG_&#EGQ{1DK9IpuC8uqXlQF|>um4r?(CjC zY4VgwQ>IRvI&0RfxpU_(TD)lK(xoewuUNZ!?b>x~H>}^VY4fHno3?D(x@G&0?R$6c z-M4?=f&B*#9y)mR=+WaRj-Nb!5(v(oItv6BFI>EO`RdgxS8rUqaqGsdJGbxLzkC1T z{fCbqK7RV>>GLPgUp{;J_T}66Z{B}=_wmbzFaQ7lXBav_@h1x-1A`lb4#>%%IAP%U z$I#0mV^MH`nM>9~Bj&`0g@@Y(l&$VKJZxlWk}#HXoZ#5PDXQz#CF8ki$;rtY{;LcW zm6(}&C0Jt&J}z2zcD6RG2WEI}U3GPJ z#OAEKr$pPjm<{cZNO*5sb8~aX-Q5+RU)?>ueSNF|v+#-) zjypCyJlr9y9d~BO$3zKkmaGDwotvJXZgrQCEI8Em{QLsvZaLpwTV7sXoXV5&fNAUN z>l>2m*D*RC;*r@={QBP6-P_;aKhXSrTcV?L-{TXLwd2q2+4=eTg}Lnv3m5PD`ufJ^ z?EB~T?k<04VDj&cg#W%hKR>^?ygL4TTx|!ZS;dL@{`>d+{r%(f>-+Wb$648pzbHIt zU=hoB(8!^-;z1MpGl7E)IzJR1wuppfJZzOnTk)_>{GLIBpxhsYM;$8DG9GnmEL-uY zOMRKb1SS&}#m7A+*D@aWT0C3vxX<+6fddXQe-1pJ;35{OBA_B5;=t)-^76^#05{F2 zQ$oTrmrgc1U^;=(gy-SY=?QI`&t{}d%X~J|`9(s58^;9&7QupJn$PEyT+4hux8jy2 z3$Ok`7Y9xU5yck^TEwzmEbLHQwPK;elm$-%cs5*c7I4DJ10*>a h99iYpB)nR=V%e%!tJZ8=^@^Qc)Zv4M8zUowH2^W3coYBt literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round2-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round2-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..7885243d63fc35fcb2840bbdad85612a06edd445 GIT binary patch literal 566 zcmZ?wbhEHb)Mk)oXk}o?%*f2i&dJTmEyyn@Dl94~E~zN5sH&){uC1=AuBof3%bk*2 z+)!N7P*T%WQ$D@CYD!i0%<8JSRhf%2vzBF5FQ{&)Z)j?4YH4a|Yia9f>*(s}>gnp~ z>*?#8($_nqcS7HUNfRbboIY{Nq$$&;Oq(%n#;h5$=FFNiZ_d1h^A|2&w0OzlB|xxd z)tdkR|1*#d6o0ZXGBD^d=zz3>{KUZVk0F*r#^OU`yMTg_R?LZlha5s09A0x?JUZMd ztmYGQ=fuY3<2~Zx0aGLt7oVK05xmOgW>U)0sRqf*QXD@vcM4e)zq)gB^Ye3jk}6(1 zUT$7-aUQ3KfQjRxm6w+XEcTjfwdlYB{@~47cV{WC=oV5w)Ftb^ZOzTiNt`=oI54ff zy*)#8%?|^mmb<$vKEJwq`g>luU@bE@-=2d^ooyY$+HpKi2NI7>P}b*hSk(OV^bF(d zduJ?*83gA#ck|7Cc&MFECTMls* z4)Du#Xvgc>G`2M=nt06j+q>)Q>l?-_3K0vLzrBC3F+|uy@ndt_x)+yM$DgmWZR8b^ z=Gk#!-@d==#Mx}*cQQ0E@-VPzJZNAM%3xs7+F>HV%pg$Ez{KjNv4DwPfPtZg%ZsIv XnM2^g!*+!>jzvu3GadvvFjxZs$9&|# literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round2-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round2-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..04177379283d27dc5ac95d3148e248648db660e3 GIT binary patch literal 883 zcmZ?wbhEHbjAM{yXk%bt=458(VP@rJWffrM6yfBMv=UrMG&MsSv(>~vY#S+WdE7#LPEFsx%>*u=oFlYwC`1KVyk&h4E1 z8~FLR@pJCx6kI7NwMa^8rIg@SLBaikl3OKZ_R1)=DQPro=uObmo33X&$<}VRo!wkJ zg=Gp#yOb04 zrX?pQYXq-~Ik{;`JHMii!h;oo4y}UfMX&Ch+`Rn!e1~Q(S*t}%46|am8Y~(Yt-QQE zV6oR+udS=DuJ-kB&^WM>p;IK`aF?w2wlz05XIx&T`a9XtS5WKGskz?U*WKM+@%h!= zYV!_;Ch;F!ay~mg#EIFksda2zwDIxr3CiB{e0FYndU|T3jX($E=I7@ZIM?qx$>o z*Q-6vrhH>__Wg5vcYlBX;PAz6`TQeZED}#HuZ}-2XET|PFK)|x|NZ;Q)kWCOSRC5F z9~e7q8V?#+#4;8%2JswVw>_;R*5tZ1rY(BmV<&GEgFwHRHkJ- z>eN`a;!&5n+C^qZhA9Ug^_X1CSls3O$8`du*_{`U`yHlP9A%U-bZ8OsR$2LEl8@QT zCzAu*G@nlK)N*8D_7HsFED}=o^6B&hEy-4XE2X2XERg{pU4#?2y;Pg(YvbrDCOa$g jGK);e!lUzQzP)@tzkyBb#e$Z1k*w^(Q+5VAFjxZsR#zX| literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round2-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-round2-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..2cf12605fe9019ff998e8e3d499b59f87bb71478 GIT binary patch literal 974 zcmZ?wbhEHbjAM{yXk%dD;^N}r=HcVx6BHB_6BCn`mX?#1Q&v`1S6A26)YR3{H8nN0 zvb3_ZvvYKCbaQj__45r13W|=3j*E>;OG_&#EGQ{1DK9IpuC8uqXlQF|>um4r?(CjC zY4VgwQ>IRvI&0RfxpU_(TD)lK(xoewuUNZ!?b>x~H>}^VY4fHno3?D(x@G&0?R$6c z-M4?=f&B*#9y)mR=+WaRj-Nb!5(v(oItv6BFI>EO`RdgxS8rUqaqGsdJGbxLzkC1T z{fCbqK7RV>>GLPgUp{;J_T}66Z{B}=_wmbzFaQ7lXBav_@h1x-1A`lb4#>%%IAP%U z$I#0mV^MH`nM>9~Bj&`0g@@Y(l)dJxC}3`7XX41ZlfmN1Ca4y&MZ$B_l9Q7)f>*_y z+_Z#CSjkA?!HU2Gtit+5ukM`Oy!`xphh{F>tVc`?v)s5!G7Pt@yu3W1dE1MChU7*; zgH2g?Pi0F7?FEld&Gi=7>*`@PJTT+n_VxGoH!yR{ z`Rv&6@Sp;lT0r39jgOB{Q1+hZvvbqa(^C_51XeI^etv#|bG=+*$^lO46~U|H&hFa! z`uc|C)6;a59hk*87r(xDHoBabLn!Tmgx{VWA0MBXtQ~)DPi3*Rn8}kFetUO)eSKqd z_Wg5vcYl{rbolo|!hheMpPye`ULAja-`;9j1Cuv1{P*ws`}@b|*Z0rw-~V4$(Ik?^QfW7&#F zT{_!dJnA+$RB@QWt>VMsUW;cd9{1UNd-1s6flV@ni%HYLS-?YW<&#N1W-p&i4sg>{ zonmcZAi!?#v-0V*m@-LK0Tlre2TrFcna^fsEL-_(R?fDU&t_+zYPjyecERAt+=^!_ zpU=^*m( zTCY|tnU?ixr~QwFep6&^KYygh^8-O_?@j+Vq*zXH1(hYsRcOv*!H&|DORHQ2fcl$iN`M zpaYTw*~!51kHOHT!C}LKgUuYmS}g*M%&gqvN?vn3HZD5aEv}`oBVpm<O;XiB5flW(KPd7+Dm9w*G+1c4f+z~SlY+inTzC$zD+m*#DE-rTFjF@m>%gW2k z0~UMbdM!9~Wp%{zu-*e(S6^SBaJcKOSHhtin=_72i#@UJ?V+uCkB`Y3JZ!wXyW;b! zyQjbF-QCx~{9V-GVB^EX9m3jiXMSv8;OtfQ&ik{Y@#*Oq#@YAI{M^*QG1s~K-Jh9_ zFE6hMULAM#SINt382@ItH$VTnw8S7}Aks(a>ww z(`(by>(bNf)zh1(r#DTH;UELUF$RW{3=C%(I8JdeTwoA9FX-Oo?$PbxG1ntvRYb(P zh=`355!)gnc1A?(jfgl9@&EsS2HF6{pDc_F3`z_-Amc%PV&M44;L6hAuwlW$W)5Mk zm=hZoI=3^rFbEhdSah^o!Z_>BiH(bo_sjDpL^v#1a&odp@T!=To0guQZopZP5U^m` z+1VDwukM`Oy!`xp2ktXA4qH}ST;0>{r?>0h-BZWREhiJ6({i{&SUc{_ zj*X9xPf+&m`*85!lhZSdv-@HyH$OkWK)$|0VAqz+^NUqi#GT!>_4V})$*1S}?%vjN zWn1yTcZ_m%qFD|c+KfiD9@9!eV4$t@Bzwht2Pw!vfKObMq!6C+?@t}c4EaO2VhuVq< zO*~N_;+qBBG#<8aw=HmB6-it1u#G)#K_iD`j>4l3m1!A|IyIK9c+{n{X+|RlBO`+~ E00*Mt)Bpeg literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-square-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/switch-square-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..0c67709cd98d140ddebda9d6bc80de8c17ad6a7b GIT binary patch literal 686 zcmZ?wbhEHbjAM{yXk}n1DlY2k=<4h5n>caelu1*jPMtbq`ixmKXU&~EcftGxixw_g zx_IfbCCgSUTd`)$PAF57&!hhgtKHgY*=uxnL}7B=ER1D&h3n03>69s7ai@E zFwVMjV&mfD{qo8p0tO40oSdu?yej78rlqH+8>qWT2y9+9j;>w6Py>0F7 z?FEld&Gp{CE|xd*{j0mDx98v8BE!Tj=d)wO!^0iI+Hq%Q9A;teRra3eQ~9xlS=K1~ z-kF`7pPygg+%4z3>u@Unis038XLoIVeSJgn>3MG(4>j`dD1LqK?C$OF?;mL9mjAbq ziAmtZWbOEKdv<<)eqpiqe7-{!9j|X}&c1(c@9yvK9~?f@&0oma*zx(r<<;@$_wD`t z{lnwa;*E+2JAVK8{QCa+{riCd&ZhBzLqfyhP$P%hiU&2QMbV{jmJGE*D@aWT0E<0V&hrx;BmhL zo92@VE@GKaCVHrK9%AEJ^5Dtj05{F2Q$oTrpH7WPn|X+hcg2IJ(-Yb>pUp^_micUE x#?|`DJeyr`Omq264T}v(qKA%_f?d9|N4QyI37Bq`(aB^U<1^|$$Q~&?~ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..548ef738d7f98d2439e31febb5015881d3e17ed9 GIT binary patch literal 277 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bU0U})u`hX;ZXo+h?iE~kEVo7Fxo?NMQt`H&hB8B1!Kq1ZokH}&M25un`X1sK_?hjCKvZsq{csW`)BpDi0rbra>d&xmzFeEwzFK8GmO)i zF8X86X6F97)#bB!_CK@H^f%qCKX*>0q}emE9M-2BC`?)& Q40IlYr>mdKI;Vst0B_@FYXATM literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-orange-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-orange-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..56f555bbe2585be929b0330faf82e029dbaf519c GIT binary patch literal 197 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bU0U})u`hX;ZXo+h?iE~kEVo7Fxo?NMQu3#ZiPSbDK-GM@!1s;*b3=G^tAk28_ZrvZCptGloV@SoV zV!Z literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-seg-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-seg-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..7871ed1f4cd895931d2d412164a2eb93f55ef487 GIT binary patch literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!2~3ezCWG-q(nSx_+5YN znW(g5%ePL8Je~e#TX%^d2wZgCzw@z;+@#1wOFoC3yySCId}ojj_fj3NrCQpmA&x7Z z*P5($%e=n!Qm)m~``=Do;PtxWntG@Il!*G%1exB+g=TukuI`X5f1GI3JN=`X-LdOG aZpyPtx)wg#$h#Zp2nJ7AKbLh*2~7arfkvAE literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-sel-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-sel-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..c4540887f383575e8a29021189920b01cc70fe7e GIT binary patch literal 286 zcmeAS@N?(olHy`uVBq!ia0vp^%s_0Z4A6R$U)->^EbqO&e)CyQw1o2}kAFumdH38f cIQx-BX5P_?<+pEX0^P~r>FVdQ&MBb@0H}p-mjD0& literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-slim-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-slim-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..f982afb761ae3b230544c11e5b042862523e7cf6 GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^Oh7Eh0U|pOL`()!MxHK?Ar*7>9%STV5M*FD__xJF z%`NF~<3G*LEl>%>?RZ@O1TaS?83{ F1OV6dAQb=r literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-tall-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/tab-tall-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..50a237196fd797e2c2ee32fc032f38555c20780c GIT binary patch literal 161 zcmeAS@N?(olHy`uVBq!ia0vp^OhD|w0V4Oi7>WR?3{Mxwkcv5`M_u`t7#Ua&9-Djg zZtVa6wv*I?r$5rRd$jh8kpIVkUEQ-Ug~l9-e5ums#lA88R_EFq8f%YwWon8gtuql0 zUfL<4-FqZ}XA0NF@K>GdUTAD}^IJGb!xPD++%E)qBgTbMJdR* ynA=-BTRPghn%!MJT|C^poZnwRUp{{S4@ONrkv#3!&({M@V(@hJb6Mw<&;$U)&L*h< literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/togglebutton-chk-mark-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/togglebutton-chk-mark-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..2262424c3d3f2697db4434de34b06db63eae08fe GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CF!3HE7boT!OQk(@Ik;On70_G;E839=yo-U3d z6?3KrIPx(la5Vk8` qe{1rSOUteOu222(^7Q6UD>$Y5O85k?&7OV~WV)xTpUXO@geCyFl`csD literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/valuepicker-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/compat/valuepicker-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..965db4bc4f83b730611ddf532a51bb8c1185705c GIT binary patch literal 246 zcmeAS@N?(olHy`uVBq!ia0vp^!a%Ib!3HE36knzV5rDrop7CM);{ zD@15Aq%b#u)U%g(`ns~;VdLlJ;61SW+Y_KrsHcl#NX4ADQx0-67;rH2irlS_oWIPN zqmttlgZrM26F##t;zCzOe2dtW@F=A?@d;OYxm4{9v2>gC+!>u#$0gQ8^BYH)zD?hdapQ18-1g>!YpS@L zGoQM#P2RMX=a}khiJq=$h7!;8(+o~TpI9(|cY~vTx?OYJHygIQYj*PNnprGSVw7f_ zvHUz!^4cvkd1kFNmM{rkW}KnopB&&n>(qjI7OjrDiAD@!JeueI->Uxsx{1Nl)z4*} HQ$iB}-q=fn literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/compat/calendar-datelabel-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/compat/calendar-datelabel-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..bd89c1d921530bdcef4fae63ff6aa1052cc8f8e3 GIT binary patch literal 144 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfw!2~2@+FN~r6id3JuOkD)#(wTUiL5}ryQhm| zh(tK=VN1Ry1_6cxfB#!+c<5+oc!W4iaQ1VxJK|#`=;^ZL-kCGHdwze&%uIcI`q;JY rbN4ncmRC;~4>vF0|Ig-6^)c2PwGvjn+NS0}BN;qh{an^LB{Ts5hc+$R literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/compat/calendar-month-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/compat/calendar-month-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..cfc5a647321e3d033300e8480a8008f083473234 GIT binary patch literal 186 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{I!2~4r?VV-=DVB6cUq=Rpjs4tz5?O)#LQfaR z5Q%WsgS_lah71i4%Xc z!!J*j-M^UEXR=!MbK2RIZA;|zC3=>H{GAnNs`A{&t5ZTbHB!jwK(&9Mh{f{_*OGc1 hvwMTMG*z8C>}NEIHfsq4=>sii@O1TaS?83{1OPVyLJR-^ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/compat/calendar-year-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/dijit/compat/calendar-year-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3e279013e768de27e82d3ec323c54203ee22a1e2 GIT binary patch literal 177 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{O!2~4hKV8-UQY`6?zK#qG8~eHcB(ehe8J;eV zArj%DM+4bg3>Xf4{C`@aS|XW0`AuR^?ZU@>i!{0x&Dk+W<+ div { + height: 29px; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #222222; + border-radius: 14px; + background-color: transparent; + color: white; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: none; + box-shadow: none; +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 35px; + border-bottom: 3px solid #39393A; + background-color: rgba(0, 0, 0, 0); + color: white; + line-height: 35px; + margin-right: 7px; + margin-left: 7px; + margin-top: 10px; + text-transform: uppercase; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #222222; + border-radius: 14px; + background-color: transparent; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 14px; + border-top-right-radius: 14px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #333538; + margin-right: 7px; + margin-left: 7px; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonWhiteCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: white; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 50px; + list-style-type: none; + line-height: 50px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #333538; + margin-right: 7px; + margin-left: 7px; + font-size: 18px; + color: #ffffff; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-color: #3578b1; +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: white; + margin-top: 14px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 11.5px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: none; +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(157, 157, 157, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 0px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 0px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 0px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 0px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblSwitchBgLeft { + background-color: #0c86af; + background-image: none; +} +.mblSwitchBgRight { + background-color: #333333; + background-image: none; + color: #ffffff; +} +.mblSwitchKnob { + background-color: #606060; + background-image: none; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} +.mblDomButtonWhitePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhitePlus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhitePlus > div > div { + + position: absolute; + top: -6px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteMinus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteUpArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteUpArrow div { + position: absolute; + left: 0px; + clip: rect(0px 30px 20px 0px); +} +.mblDomButtonWhiteUpArrow > div > div { + top: 9px; + left: 4px; + width: 20px; + height: 20px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteDownArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteDownArrow div { + position: absolute; + left: 0px; + clip: rect(7px 50px 40px 0px); +} +.mblDomButtonWhiteDownArrow > div > div { + top: -10px; + left: 2px; + width: 25px; + height: 25px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteSearch { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteSearch > div { + position: absolute; + top: 5px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + border: 2px solid white; + border-radius: 6px; +} +.mblDomButtonWhiteSearch > div > div { + position: absolute; + top: 10px; + left: 7px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border: none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 0px; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonCheckboxOn { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOn > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOn > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: none; + border-bottom: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonCheckboxOff { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOff > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOff > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: none; + border-top: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonBlueCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlueCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonBlueCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonRedCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonGreenCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblDomButtonGrayRoundRect { + position: relative; + width: 29px; + height: 29px; + text-align: right; +} +.mblDomButtonGrayRoundRect > div { + position: absolute; + right: 0px; + display: inline; + padding: 0px 5px; + top: 7px; + color: white; + font-family: Helvetica; + font-size: 12px; + border-radius: 4px; + background-color: #949ba5; + text-align: center; +} +.mblDomButtonGrayRoundRect > div > div { + display: none; +} +.mblDomButtonSilverCircleDownArrow { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleDownArrow > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div { + position: relative; + top: 3px; + left: 3px; + width: 20px; + height: 20px; + border-radius: 10px; + background: -webkit-gradient(linear, left top, left bottom, from(#979797), to(#616161)); + background: linear-gradient(to bottom, #979797 0%, #616161 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div > div { + position: absolute; + left: 0px; + clip: rect(6px 50px 40px 0px); +} +.mblDomButtonSilverCircleDownArrow > div > div > div > div { + position: absolute; + top: -5px; + left: 1px; + width: 18px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #d1d1d1; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.7) rotate(45deg); + transform: scaleX(0.7) rotate(45deg); +} +.mblDomButtonSilverCircleGreenButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #1b991c; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#17df25), to(#1ba51c)); + background: radial-gradient(6px at center, #17df25 0%, #1ba51c 100%); +} +.mblDomButtonSilverCircleGrayButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGrayButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGrayButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #aeaeae; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#d4d4d4), to(#bababa)); + background: linear-gradient(to bottom, #d4d4d4 0%, #bababa 100%); +} +.mblDomButtonSilverCircleOrangeButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleOrangeButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleOrangeButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #ca701a; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#ff7a07), to(#e66b03)); + background: radial-gradient(6px at center, #ff7a07 0%, #e66b03 100%); +} +.mblDomButtonSilverCircleGreenPlus { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenPlus > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenPlus > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleGreenPlus > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleRedCross { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleRedCross > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleRedCross > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonSilverCircleRedCross > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; +} +.mblDomButtonBlueBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonBlueBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#84aff4), to(#2758b3)); + background: linear-gradient(to bottom, #84aff4 0%, #2758b3 100%); +} +.mblDomButtonGreenBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonGreenBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#59e738), to(#0aa908)); + background: linear-gradient(to bottom, #59e738 0%, #0aa908 100%); +} +.mblDomButtonOrangeBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonOrangeBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#f9e20a), to(#ff6b0a)); + background: linear-gradient(to bottom, #f9e20a 0%, #ff6b0a 100%); +} +.mblDomButtonRedBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonRedBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#ec9b9d), to(#d73c3f)); + background: linear-gradient(to bottom, #ec9b9d 0%, #d73c3f 100%); +} +.mblDomButtonTransparent19 { + position: relative; + width: 19px; + height: 19px; +} +.mblDomButtonTransparent29 { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonTransparent30 { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonYellowStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonYellowStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonYellowStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #cd853f; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonYellowStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonYellowStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonGrayStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #8c8e8c; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonGrayStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonGrayStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonGrayCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + border-radius: 2px; +} +.mblDomButtonRedCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonRedCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + border-radius: 2px; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblDomButtonGrayKnob { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayKnob > div { + + position: absolute; + top: 6px; + left: 2px; + width: 23px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDissolve.mblOut { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveOut; + animation-name: mblDissolveOut; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +.mblDissolve.mblIn { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveIn; + animation-name: mblDissolveIn; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +@-webkit-keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-webkit-keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +.mblCover { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCover.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCover.mblOut { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblCover.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblCover.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblCover.mblOut.mblTransition, +.mblCover.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblCover.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCube { + -webkit-animation-duration: 0.8s; + animation-duration: 0.8s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblCube.mblOut { + -webkit-animation-name: mblCubeOut; + animation-name: mblCubeOut; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +.mblCube.mblIn { + -webkit-animation-name: mblCubeIn; + animation-name: mblCubeIn; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +@-webkit-keyframes mblCubeOut { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOut { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeIn { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeIn { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse; + animation-name: mblCubeOutReverse; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +.mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse; + animation-name: mblCubeInReverse; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOutReverse { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeInReverse { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeInReverse { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.dj_ios .mblCube { + -webkit-transform-style: preserve-3d !important; +} +.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone; + animation-name: mblCubeOut_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone; + animation-name: mblCubeIn_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@keyframes mblCubeOut_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeIn_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeIn_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone_l; + animation-name: mblCubeOut_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone_l; + animation-name: mblCubeIn_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@keyframes mblCubeOut_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeIn_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeIn_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone; + animation-name: mblCubeOutReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone; + animation-name: mblCubeInReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@keyframes mblCubeOutReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeInReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone_l; + animation-name: mblCubeOutReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone_l; + animation-name: mblCubeInReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@keyframes mblCubeOutReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeInReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad; + animation-name: mblCubeOut_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad; + animation-name: mblCubeIn_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@keyframes mblCubeOut_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeIn_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeIn_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad_l; + animation-name: mblCubeOut_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad_l; + animation-name: mblCubeIn_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@keyframes mblCubeOut_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeIn_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeIn_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad; + animation-name: mblCubeOutReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad; + animation-name: mblCubeInReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@keyframes mblCubeOutReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeInReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad_l; + animation-name: mblCubeOutReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad_l; + animation-name: mblCubeInReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@keyframes mblCubeOutReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeInReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.mblReveal { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblReveal.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblReveal.mblOut { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblTransition { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblReveal.mblIn { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblReveal.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblReveal.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSlidev { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlidev.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlidev.mblOut.mblReverse.mblTransition, +.mblSlidev.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblSlidev.mblOut.mblTransition, +.mblSlidev.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblSlidev.mblOut, +.mblSlidev.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblSlidev.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSwirl.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlOut; + animation-name: mblSwirlOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlIn; + animation-name: mblSwirlIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblOut.mblReverse { + -webkit-animation-name: mblSwirlOutReverse; + animation-name: mblSwirlOutReverse; +} +@-webkit-keyframes mblSwirlOut { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(-360deg) scale(0); + } +} +@keyframes mblSwirlOut { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(-360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlOutReverse { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(360deg) scale(0); + } +} +@keyframes mblSwirlOutReverse { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblSwirlIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutOut; + animation-name: mblScaleOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblScaleOut.mblOut { + -webkit-animation-name: mblScaleOutOutAndroid; + animation-name: mblScaleOutOutAndroid; +} +.mblScaleOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutIn; + animation-name: mblScaleOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblScaleOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblScaleOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblScaleOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblScaleOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblScaleOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInOut; + animation-name: mblScaleInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblScaleIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInIn; + animation-name: mblScaleInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblScaleIn.mblIn { + -webkit-animation-name: mblScaleInInAndroid; + animation-name: mblScaleInInAndroid; +} +@-webkit-keyframes mblScaleInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblScaleInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblScaleInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblScaleInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblSwap { + -webkit-animation-duration: 0.6s; + animation-duration: 0.6s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblSwap.mblOut { + -webkit-animation-name: mblSwapOut; + animation-name: mblSwapOut; +} +.mblSwap.mblIn { + -webkit-animation-name: mblSwapIn; + animation-name: mblSwapIn; +} +.mblSwap.mblOut.mblReverse { + -webkit-animation-name: mblSwapOutReverse; + animation-name: mblSwapOutReverse; +} +.mblSwap.mblIn.mblReverse { + -webkit-animation-name: mblSwapInReverse; + animation-name: mblSwapInReverse; +} +@-webkit-keyframes mblSwapOut { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOut { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapIn { + 0% { + z-index: -100; + -webkit-transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapIn { + 0% { + z-index: -100; + transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblSwapOutReverse { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOutReverse { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapInReverse { + 0% { + z-index: -100; + -webkit-transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapInReverse { + 0% { + z-index: -100; + transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +.mblZoomOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutOut; + animation-name: mblZoomOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblZoomOut.mblOut { + -webkit-animation-name: mblZoomOutOutAndroid; + animation-name: mblZoomOutOutAndroid; +} +.mblZoomOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutIn; + animation-name: mblZoomOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblZoomOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblZoomOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblZoomOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblZoomOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblZoomOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblZoomIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInOut; + animation-name: mblZoomInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblZoomIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInIn; + animation-name: mblZoomInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblZoomIn.mblIn { + -webkit-animation-name: mblZoomInInAndroid; + animation-name: mblZoomInInAndroid; +} +@-webkit-keyframes mblZoomInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblZoomInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblZoomInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblZoomInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblAccordion { + border-style: outset; + border-width: 1px; + border-style: none; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #222222; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: #ffffff; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + background-color: #33b5e5; +} +.mblAccordionTitleSelected .mblAccordionTitleAnchor { + color: #ffffff; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + height: 40px; + color: #ffffff; +} +.mblButtonSelected { + color: #ffffff; + border-color: transparent; + background-image: none; + background-color: #2C94BB; + box-shadow: 0px 0px 1px 4px #1F5366; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + color: #ffffff; + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + background-color: #0099CC; +} +.mblBlueButtonSelected { + background-image: none; +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115), color-stop(0.5, #ff4d25), color-stop(0.5, #ed4d15)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); + color: #ffffff; + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + background-color: #CC0000; +} +.mblRedButtonSelected { + background-image: none; +} +.mblButtonDisabled, +.mblButton:disabled { + color: #646464; + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + background-color: #212121; +} +.mblBlueButtonSelected { + border-color: transparent; + background-image: none; + box-shadow: 0px 0px 1px 4px #33B5E5; +} +.mblRedButtonSelected { + border-color: transparent; + background-image: none; + box-shadow: 0px 0px 1px 4px #FF4444; +} +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #5c5c5c; + border-width: 1px; + background-color: transparent; + background-image: none; + border-style: solid; +} +.mblCheckBoxSelected { + background-image: none; +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-color: transparent; +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; + background-color: transparent; + background-image: none; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: none; +} +.mblCheckBoxChecked.mblCheckBoxSelected::after, +.mblCheckBox:checked.mblCheckBoxSelected::after { + background-color: transparent; + background-image: none; +} +.mblCheckBox:disabled { + border-color: #333333; +} +.mblCheckBoxSelected { + background-image: none; + border-color: #99bbca; + box-shadow: 0px 0px 1px 4px #1f5366; + background-color: #1f5366; +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: none; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: none; + border-color: #99bbca; + box-shadow: 0px 0px 3px 4px #1f5366; + background-color: #1f5366; +} +.mblCheckBox:checked::after { + border-color: #61c6eb; +} +.mblCheckBox:disabled::after { + border-color: #333333; +} +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: 0 0 50px #000000; + box-shadow: 0 0 50px #000000; + border-radius: 0; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-radius: 0; + background-color: #333333; + color: #ffffff; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: #4f4f4f; + border-top: none; + height: 35px; + padding-top: 17px; +} +.mblComboBoxMenuItemSelected { + background-color: #3578b1; + color: white; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; + color: black; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: white; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 6px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid rgba(96, 96, 96, 0.85); + border-bottom: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 6px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 6px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 13px; + color: white; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-color: #3578b1; + color: white; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: #333333; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 3px; + background-color: #8c8a8c; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9e9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9e9c 0%, #848284 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #306ea1; + background-image: none; + color: white; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #306ea1; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #306ea1; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #848284; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #848284; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #9c9e9c; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #848284; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblOpenerUnderlay { + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} +.mblProgressBar { + position: relative; + border-radius: 0px; + height: 2px; + background-image: none; + background-color: #333333; +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + background-image: none; + background-color: #33b5e5; + height: 2px; +} +.mblProgressBarComplete { + border-radius: 0px; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: 3px; +} +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #5c5c5c; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-color: transparent; +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #61c6eb; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: none; +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: #61c6eb; +} +.mblRadioButton { + border-style: solid; + border-width: 1px; + border-radius: 999px; + background-image: none; + background-color: transparent; + -webkit-tap-highlight-color: none; + border-color: #5c5c5c; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: none; +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.65em; + height: 0.65em; + top: 0.17em; + left: 0.17em; + border-style: none; + background-color: #61c6eb; + border-radius: 1em; + border-color: #61c6eb; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: none; + box-shadow: 0px 0px 1px 4px #1f5366 inset; +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: #61c6eb; +} +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration { + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; + color: white; + background-image: none; + background-color: #222222; + border-style: none; + border-top-style: solid; + border-top-width: 1px; + border-top-color: rgba(255, 255, 255, 0.6); + border-radius: 2px; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 14px 0 7px -5px; + padding: 0 14px 14px; + width: 244px; + border-bottom: 1px solid #33b5e5; + font-size: 17px; + text-align: left; +} +.mblSimpleDialogText { + margin: 14px 9px; + width: 244px; + font-size: 17px; + text-align: left; +} +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 10em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border-color: #b0b0b0; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 10em; + background-image: none; +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 10em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + border-color: transparent; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSlider { + border-style: none; + border-radius: 0; + background-image: none; + background-color: transparent; + border-color: #b0b0b0; +} +.mblSliderH { + width: 200px; + height: 3px; + background-color: #292929; + border-style: none; +} +.mblSliderV { + height: 200px; + width: 3px; + background-color: #292929; + border-style: none; +} +.mblSliderProgressBar { + border: radius: 0; + background-image: none; + background-color: #33b5e5; +} +.mblSliderHandle { + background: -webkit-gradient(radial, 9 9, 3, 9 9, 9, from(#33b5e5), color-stop(0, #33b5e5), color-stop(0.01, rgba(31, 83, 102, 0.8)), to(rgba(31, 83, 102, 0.8))); + background-image: radial-gradient(circle closest-side at center, #ffffff 0%, #a435c5 50%, #251ae7 75%, #00a3ef 100%); + border-color: transparent; +} +.mblSliderHandle:after { + border-style: solid; + background-image: none; + border-color: transparent; +} +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + text-shadow: none; + color: #ffffff; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-style: none; + line-height: 0.5em; +} +.mblTabBarTabBar .mblTabBarButton { + border-radius: 0px; + height: 47px; + border-bottom-color: #33b5e5; + border-bottom-width: 1px; + border-bottom-style: solid; +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; + padding-top: 0px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + display: inline; + text-transform: uppercase; + color: #ffffff; + font-weight: bold; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + border-radius: 0px; + height: 42px; + border-bottom-color: #33b5e5; + border-bottom-width: 6px; + border-bottom-style: solid; +} +.mblTabBarSegmentedControl { + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-style: none; + line-height: 0.5em; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-radius: 0px; + height: 28px; + border-bottom-color: #33b5e5; + border-bottom-width: 1px; + border-bottom-style: solid; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + border-radius: 0px; + height: 23px; + border-bottom-color: #33b5e5; + border-bottom-width: 6px; + border-bottom-style: solid; +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-style: none; +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: #ffffff; + background-color: #333333; + + background-image: none; +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonLabel { + display: inline; + text-transform: uppercase; + color: #ffffff; + font-weight: bold; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + color: #ffffff; + background-color: #33b5e5; + + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #2d3642; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-style: none; +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-radius: 0px; + height: 58px; + border-style: none; + border-bottom-color: #33b5e5; + border-bottom-width: 1px; + border-bottom-style: solid; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); + background-color: rgba(0, 0, 0, 0); + background-image: none; + border-radius: 0px; + height: 53px; + border-style: none; + border-bottom-color: #33b5e5; + border-bottom-width: 6px; + border-bottom-style: solid; +} +@media (max-width: 500px) { + .mblTabBarTabBar { + + + } + .mblTabBarTabBar .mblTabBarButton + .mblTabBarButton:before { + content: url("images/vseparator.png"); + position: absolute; + top: 12px; + left: 0px; + } +} +.mblTabBarTabBar.mblTabBarFill .mblTabBarButton { + height: 48px; +} +.mblTabBarSegmentedControl.mblTabBarFill .mblTabBarButton { + height: 29px; +} +.mblTabBarTallTab.mblTabBarFill .mblTabBarButton { + height: 62px; +} +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + color: #ffffff; + border-radius: 0; + border-top-color: transparent; + font-size: 17px; +} +.mblExpandingTextArea { + margin: 2px; +} +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + background-color: transparent; + border-top-color: transparent; + border-left-color: transparent; + border-right-color: transparent; + border-bottom-color: #33b5e5; + border-width: 2px; + font-size: 17px; + border-style: solid; + color: #ffffff; +} +.mblTextBox:disabled { + background-color: transparent; + border-top-color: transparent; + border-left-color: transparent; + border-right-color: transparent; + border-bottom-color: #333333; + border-width: 1px; + font-size: 17px; + border-style: solid; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: transparent; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid transparent; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 0; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #000000), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #000000), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85, 85, 85, 0.9); + border-top-width: 1px; + border-radius: 2px; + font-size: 13px; + color: black; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: none; + color: white; +} +.mblToggleButtonChecked { + background-color: transparent; + color: white; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: none; + color: white; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: none; +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0px; + border-top-right-radius: 0px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblValuePickerSlotButtonSelected { + background-image: none; +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: none; +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; + color: #ffffff; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +.mblValuePickerSlotInputArea { + border-top: 2px solid #33b5e5; + border-bottom: 2px solid #33b5e5; + background-image: none; +} +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/holodark_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/holodark_rtl.css new file mode 100644 index 00000000..93916b96 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/holodark_rtl.css @@ -0,0 +1,327 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -2px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonWhiteCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 50%; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: -50%; +} +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} +.mblComboBoxMenuItemRtl { + text-align: right; +} +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: -2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-right-radius: 6px; + border-top-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0px; + border-top-left-radius: 6px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-right-radius: 6px; + border-bottom-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 6px; +} +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 5px; + border-top-left-radius: 0px; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 5px; + border-top-right-radius: 0px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/images/thumb-overlay-large.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/images/thumb-overlay-large.png new file mode 100644 index 0000000000000000000000000000000000000000..dfac3707a7c710ba5bea5d9ef6091c88069c4d83 GIT binary patch literal 3697 zcmdT{=Q|sU8czp~QCg!ZPHC&LM`=r|_NqOCh!v|5qpA{WYmXKcdK@E3XrrL|IOw5nX^-hbde_uGAbAKv%(Jn!?ozYp(BwYR-}icf+M005k_FgF1o zSu6l>O!+tNBk!V|rRkA5i7>P=1OV7$BX&@YBQ73p3JrG*^$(BqLBauscS3#P7c4@2 z5O6Tu=T3B34_pTT5IkXFV(1h#vHD^mQ^th<)scXL_!iV$Xqnj>``k9@6%98 zfiV~-B@(fBi*f6Y4w;@TTQL?d^(Eke|I&%IpPye`<)m+v$ZrB#?#8tr|2O7c9#xqs z&+g*(VQ2o{ZJu}T*cByx|I(No*wKZ4qj>Q0#>6@RrP#*dKFmmmlO6UAHd@&g?r%0W z8EOT;OGs>9#an9%7$>|Flr3P!7R2wk`W+tpnxXi0nOT(%1%@0{%uAzJ%F%W5eq12~ zp7yI*QEKTK8A9vhwM%MM^qq;O35dfT_dHQ;xi9h(I5jVruBN6Y^6Q6p`6qY;b@bHL z2dmb!M0s$MhY!RVd&Frvot{)b6B9hUKHa20azLU!w3!5oz9bKHOkB3o`4K~xdP)jy z`LXz|s(G`QNnIO7&&sPRvyQS$>_{utS(3d((>i4KJhGi?-LRhQOMVd#IyLmsS&E@H z`xDe)ef#JsD2dfc&QeIIA9=TCIoJJINDmsf(E&W%>6XcOZZ0J6FX~+5JbFcvdHhc8 zxE+6zk*V)5Fv$+o-dHjkB!_*KtovT=KXo~mO0ZXPfHfO?uPbT-!okE(`pX6T>RChOe;SLyDQIG}6&max@lTZ(d# z3DIpP+fMJxDM3M1Ocdk=MW;Q{DXI5$S-^p1ZsbF*A;ZX76gEDS-=GC+^$^DQA90|C~(&5XV-Nj*FB6^Sg~gqk?Qe#TVIA| z=&_^Hx-qXm{1bQ=ul!D6b@t7}ZzCfkrz*UxqfSphgLcj-xm0?@F6Big#B46~RJeKB zFL<0()iAkjrqdFwHM6}kT9u*jZvUlQ1#D>Vc9?81$iCVHbyoW8AHHNK#b2v^_^V6X zKN{wbH9bxHtFxt+;bl~9{);6@HDfM+YvQH2LDXh*QM0?lu6+X3q0y4>ne(iTjg5mY zso2%G-QC^N4_3#*kV^x3*==oYpPoE@?;4rVVxlOe9Uk!c>s*^(P-?<{k6eLH#C&_I zc>JzXM}a37sS%#jJQobY7RX0l?>L*}y4PI%rmBk57BX4q`EU`B=oKdC_uOfYp%2)H zpEf*w4RQRk)7OKa9AL)zTbft2w06(OUnhO1`@Wff$+*KGDFe~OP$3GPVs=U`q;t*! zwD>}lx{s`w2>PMILFJ92=PphjP)H!ziQMo9;}-4i&B7>i%3%Du)iuuh=qI+hH#;Ia zxRSQVwLCya(w?tVal%T|!JkAjZLUYS5~Q{3y7)Y0iE<06p%X!>XQy^Lco^k{{ag~M zd*a%(#3$Yk^X=WNn_v)vCr+!A- zq0Mu;yHltcjFJnML&5s_`nKi=#G+6rn4O)Fei+cP+^M;xMUPX8gKe7KzD=*||EX)x zxjd9k^)S?ef=9i=r$Ikk_h}88=P4CdHCZj3LTwekEt+4zIyx zglB;}LT`u)PkyZD`&O=;49&}~$l7er2%FysZ3x+bYPqGyi@uisW8=i)iyC~t+O@Xb zUsSis-FtM_={J?R+fhO-!|i+`K0{+9br8)v^ty-RR1UwPZyykxXxfvGNl*=#cZ7jGiG|c|D10pCOqd{x#8q;XPr<@#Q3U+{0buDH;$y7Gk^MP~dU`XuMq!v@9RaQ$(_F+3h$S z^%mT6Z@N>tjxS+VE+K(p>eHcIffTZTZfY@sDHb`DV5-1M%cM1~$TExV zD1(~anKyqp)GrfQppHgQ!I0YsUsI2vr3k~*Iu)FQ@*5@Ha<&T~?0fuGZgH0bB09xs zuti^AUm9y!nzoqA4xWJ7$>m;%SP9r3vh?oPVE6y6rO#Pekv#YN?{VziUy^$XU`lUZ zneE~-dK1|2+~uyrYIE4fPG^*{MOkrK4?djjb{RYPmjU}Pyay%?sFsiQK9OWJ7sgxX zKC4guZXV_uHk>Cw(FQV{NMc?tIzB~rF*xATD*|C)cV`Du(dz1zf8Qq)>eFi9q(mkr z4=@J?Y#}6;NEW%lr!6@om`xtXFqe30##bXoQLG-_S`B&&AU1$zp#jqNwzL(kGZzFXRx!{*~KWLa>&UW$tc<}*`pCjLLZLsAPRCabYkeRO=Yl+Om0Edxp@2y%^N{7CTUE9)uV*+8mQVYl1&`mf5*vl=*0=W#+)C!^bv`Vm-6 zg}*bcQb9Fv^13rwd<`-Lby+aBX;D^utis`Qse(=0_qaF2Y!lUr`X;(#R9S4IM4kAW zYXw``nahQ3^->*@it%TJM_FKZR#F^(V27 zB_mggwrPa0iU2y12@1~aI~5I9r*Ly~8#z~3hjb!=d=>FS$NEDERh|ZEHJ7T=#ylXl z3PaX4PcUH?X%3CdtGG@rq!3mT`4-DBfebf_6{YdEnr{yKuyE_KE|wI&@-r?xH- z-8mKN^-{N{YT#CF8kn`J&2y>|x1xD8h9;Y%QI3KUhtE(;1E$*LrG#Ws)1s4^T>ocj z-%yh%EahCmPiY2JGhbK%tU>9Dh0t?VGJpRK6J9(wH)l_0)hzim0$OrKyMM+#g5IC~ dDt(L_u;)qmKAq<-d-O8`EKF@pDvi7o{{_Ck0iFN= literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/images/thumb-overlay-small.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/images/thumb-overlay-small.png new file mode 100644 index 0000000000000000000000000000000000000000..b6836d967b132a52b84783cccb5f7678201faa71 GIT binary patch literal 1549 zcmbW1`8(7J9LI-TjjNT#=vGKr8Q%;=j!>o<$GES?U^0{J#JG1IsTt8uDwLyKgF=lQ zVO+B^?lO+Sx_7BTBUck6*G~R}-5)-$_w#w)KYgC(^?VZTY%WWKmBAnoNZR^}1xk=e z!DLE^3Ag}lRTqSazZudD1RDB_ZR-jZ?2r&k*ANH7^^kB(FcxIyNASTOw+_VkV^LU) zUt~}x)(8X=&9SyHbBq{Wm|$J?b&(feUf0u2>h9o*?Mm~jV@>Z@4Uu}^X602` z%+=k`3s5B0%@zIq&dWt~A~oKi?m$6SlDpj1y!7Jq8^{Yt!2K)tQ{ymkI$Afe*{0iW zZhYx>_ivL%;*$x)C3?nfy%KI6cshp!26DGyI3#BaxCntjB6Z}!^R&AqXDn478Ngo* zpa+uC{ii2L*ZU)sC|2SMii(W>P-7iD6hAgL)+i|{DeLU)e6)|1GeuepGdLU*8xX*y zuB-(0)M_e2X=t0HL?W@$KR9^Rw{ADJ&2}=us-gReC5q7$Z9BDz;s zq2U`{lOzSf^}k_4L%#`4B%Hd|v^AMGF)=ZMP&?@NbW}E=(pquG%gO23g9i^5t*Cv} z@^al$S1ou-XbfYD((1$M??>(K?Cfx9+!(8Y@#$U#stjd`UU;HgrawJzB`H0nSm?+F zdHgBd?cG!m) zXL)KEp)@zr4V%<80-w1^QEU|&RyW1Q5pSGPkCo(mc@p#EpBMwkT#>`=c+IEX+hojp zT;|$iCMj;SVYYK7PPW=_Me_)s-VLln!y%M)?Uw2<`sX(o2vKjcn8}-yZ0y3T_npDX zZCQ>|JrV>`lg3t&XAP&iaT~6g29JsI)>4vM6-VDAh*jtt!I(n3m%WBf3jCrdwAm_Q z!-2y~%OwNi+Q4E>O$|En+_RJ|X0xd+4qpT&nVY=sSZev_Y}ua`;iJQ+MYpSRHqyu! z2jvpN*|%__WZdQ|IG^KWnWh$r*84dmf$?qFV!_-RJCyyQL>#t5fO?12KbBK!aZ2{$ z!{T3P6v8?`3V)fRxf}rPiPw8z&r2~tWY0?>X`wwYO)vfTx@uR|-D_&UMRYCf`NrqW zjOB(ecBgSB(VEY=FRLvFm=xc!u#9)+)f3>w7DpAJx|o;5W>Ny(oQqwxf|sg5YxSQ| zyaBM3BABG5D!)$tc#~L?VU@CRQ-6~`Jst01%b>E?@1zFunVXEXPQR!Ql83!wBSMdf zbaNW?IsZJSp|bK|R(d)=mrC{hgA;2{%Yt_eRiyPrv3hzY@3s0&af0bo8jTkJ6i;5y zrE!fSvk_{H3xhva{0*WcD_`)>LDrTw7BqA3_M2bcb1Or&;QZ#{p(i1`zP=ZSd5RIZHAW{+_p-EK; zW$7JU*L0sl;?(UD9-I=>T-uupcXWpB6e|)}=c-6s5TtqP-5$uY2)d+8Wuk_m=7)9Nt!qfK?!@du zU0K^Z>djYW>y@h}WQo?Bqz{?|>ynbQNJvjrP+$^EBe&~379Z;fYcioaj2P(I6u~58 zCt4y`a)C`oWG9xX-8)!Y0aBFAmsJ*&;+ehN$bub#X)VWDyqd5S(?J2_B>$UvJFUVy z%>yN|?IG;OM~->0ZB9>*`G8B*x%wMAtFKd4CF4~JHDlZ}CC-n8THn$FWRL?wGcz-6 zE|)twwph3g3sw*eQ^HsT#>aOSo!XmErf=?}fY}+(dvXWH-2r9>` z1<>nm@Fe1`h=>gxV)XTSM2GXJ8}y!poQ22uV52RpSWHQ^Z>kHA-+oty=vr)m5R$|5 zv`>@<&}T_iE;k!~{=p;r_|V33TKG|_2wb1Si)vY@opSSMJs^~nz~hTz%7W0l;Q!l`y8qv^f9YL6xK|dt{5x`B zH5@fUrBdMq!`~UN-V{HudV2I@1)BF0;7iJvI11Z(k$l#ofAZ0@Y2mdH2YPyXy5r}q zj-hDoB$%I?cG5IEFK_QtcY>(n603n;$V*mPi31~DAeKqtZkXa~{kH5^`5#Ml!2lWn5|APJ%i$`u!ADf5{eiv20pn*dit1L<;VbR7B1~<= zM#OAmu7TB01WL1B{hL${n^*fW11dUr4S4L~%?*}6M5WU+dalRoFB{i{juUmXK7IZD z5Z@`WjC`Ys-CYv$PB>!m8x zd2KnKB`cMWFZw$Ri+608F01F~-eH7!OCzqNsV$xGyB&g>bRxfIx7y`b zR|}1y2T1B>^kzA9&sOU_`Cq^Ca|kiG04;8-WS76f{0A?nPuyXH&K~Xl^KFBQXb&vn zqO#w80{B0S{fmja|FZ|V@J~edcl`s~{qXuXwtwRNmJIk3$Q5Q(3_yCjvunTWajOmv z6kCd*-skJv%g7|)zdOVe!D#LMTMedRugoabN}hRM=~yj|L3*EDdX{3LW)M4=`+ZJe zwt^~~K6OyFcyytD=G=;cP#h4kR{}8-HO61Kh9ED+2`eN^O>yhXql(`KFd*|f4JohX zWQ(ymqa-Y%df@a`4>1i!;yCdNd@{Pyx*{ZwO8U*}x!1E0YA>rX)fAlxi& VotbGLx&N#|HWm)%RhPU8e*m0swgLbE literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/images/vseparator.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/images/vseparator.png new file mode 100644 index 0000000000000000000000000000000000000000..c6f4f8c2c29078316d9b3485809d325f71ec903a GIT binary patch literal 160 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{G!2~3?tYhc}2^0spJ29*~C-V}>VM%xNb!1@J z*w6hZkrl}2EbxddW?ry&{fUZZ-KpDF#nhKbLh*2~7Zdl_~oG literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/variables.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/variables.less new file mode 100644 index 00000000..7dd36bfb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/variables.less @@ -0,0 +1,918 @@ +@import "../common/css3.less"; + +@holo-color: white; +@holo-base-color: black; +@holo-grey1: #222222; +@holo-grey2: #333333; +@holo-grey3: #4F4F4F; + +@holo-color1: #33B5E5; + +@holo-checkbox-border-color: #5C5C5C; +@holo-checkbox-selected-color: #99BBCA; +@holo-checkbox-tick-color: #61C6EB; +@holo-checkbox-checked-color: #1F5366; + +@holo-switch-on-color: #0C86AF; +@holo-switch-off-color: @holo-grey2; +@holo-switch-knob-color: #606060; + +@holo-slider-thumb-color: rgba(31, 83, 102, 0.8); + +@holo-slider-background-image-gecko: -moz-linear-gradient(top, @holo-color1 0%, @holo-slider-thumb-color 100%); +@holo-slider-track-color: #292929; + +@default-blue-button-color: white; +@default-blue-button-background-color: #366edf; +.default-blue-button-background-image () { + background-image: none; +} + +@default-blue-button-background-image-gecko: none; + +.mbl-color-blue-45 () { + background-image: none; +} + + +.mbl-color-default-45 () { background-color: @holo-grey2; } +.mbl-color-default-sel-45 () {background-color: @holo-color1; } + +@mbl-color-blue-45-gecko: none; +@mbl-color-default-45-gecko: @holo-grey2; +@mbl-color-default-sel-45-gecko: @holo-color1; + +@default-button-color: @holo-color; +@default-button-background-color: @holo-grey2; +.default-button-background-image() {background-image: none}; +@default-button-background-image-gecko: none; +@default-button-border-radius: 2px; + +@default-button-selected-color: white; +@default-button-selected-background-color: @holo-color1; +.default-button-selected-background-image () {background-image: none;} +@default-button-selected-background-image-gecko: none; + +@default-selected-color: white; +@default-selected-background-color: #3578b1; +@default-selected-background-image: none; +@default-selected-background-image-gecko: none; + +@heading-background-color: #8c8a8c; +.heading-background-image () { background-image: none; } +@heading-background-image-gecko: none; +@heading-border-top-color: #cdd5df; +@heading-border-bottom-color: #2d3642; + +.default-button-border-styles () { + background-image: none; + background-color: #333333; + border-style: none; + border-top-style: solid; + border-top-color: rgba(85,85,85,0.9); + border-top-width: 1px; + border-radius: 2px; +} + +.mblToolBarButtonBodyInLeftArrow-styles () { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.mblToolBarButtonBodyInRightArrow-styles () { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + + + +// background styles of form controls +.mbl-button-background-image () { .default-button-border-styles; } + +.mbl-button-selected-background-image () { .default-button-selected-background-image(); } +.mbl-blue-button-background-image () { .default-blue-button-background-image(); } +.mbl-blue-button-selected-background-image () { .default-button-selected-background-image(); } +.mbl-red-button-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#fa9d58, #ee4115, 0.5, #ff4d25, 0.5, #ed4d15);} + +.mbl-red-button-selected-background-image () { .default-button-selected-background-image(); } +.mbl-button-checked-background-image () { background-color: transparent; } + +// background styles of form controls (for gecko) +@mbl-button-background-image-gecko: none; +@mbl-button-selected-background-image-gecko: @default-button-selected-background-image-gecko; +@mbl-blue-button-background-image-gecko: @default-blue-button-background-image-gecko; +@mbl-blue-button-selected-background-image-gecko: @default-button-selected-background-image-gecko; +@mbl-red-button-background-image-gecko: none; +@mbl-red-button-selected-background-image-gecko: none; +@mbl-button-checked-background-image-gecko: none; + +// common.less +.mobile-body-styles () { + font-family: Helvetica; + font-size: 17px; + color: @holo-color; +} + +.mblBackground-styles () { + background-color: @holo-base-color; +} + +.mblView-styles () { + color: white; +} + +.mblColorBlue-styles () { + color: @default-blue-button-color; + background-color: @default-blue-button-background-color; + .default-blue-button-background-image(); +} +.mblColorDefault-styles () { + color: @holo-color; + background-color: @default-button-background-color; + .default-button-background-image(); +} +.mblColorDefaultSel-styles () { + color: @default-button-selected-color; + background-color: @default-button-selected-background-color; + .default-button-selected-background-image(); +} + +// Heading.less +.mblHeading-styles () { + color: @holo-color; + background-color: @holo-base-color; + border-bottom-color: @holo-color1; + border-bottom-width: 2px; + border-bottom-style: solid; + font-size: 18px; + font-weight: normal; +} + + +// ToolBarButton.less +@mbl-tool-bar-button-body-border-radius: 0; +// +.mblToolBarButton-styles () { + text-shadow: none; +} + +.mblToolBarButtonArrow-styles () { + border-radius: 1px; + .transform(scale(0.7, 1.05) rotate(45deg)); + border: 1px solid #3a4655; +} +.mblToolBarButtonArrowInHeading-styles () { +} +.mblToolBarButtonHasLeftArrowInHeading-styles () { +} +.mblToolBarButtonHasLeftArrowInHeading-compat-gecko () { +} +.mblToolBarButtonHasRightArrowInHeading-styles () { +} +.mblToolBarButtonHasRightArrowInHeading-compat-gecko () { +} +.mblToolBarButtonArrowInLeftArrow-styles () { + left: -1px; +} +.mblToolBarButtonArrowInRightArrow-styles () { + right: -1px; +} +.mblToolBarButtonBody-styles () { + border: 1px solid #555555; +} +.mblToolBarButtonBodyInHeading-styles () { +} +.mblToolBarButtonBodyInHeading-compat-gecko () { + +} + +// RoundRect.less & RoundRectList.less +@mbl-round-rect-border-color: @holo-grey1; +@mbl-round-rect-border-radius: 14px; +@mbl-round-rect-background-color: transparent; +@mbl-round-rect-box-shadow: none; +// +.mblRoundRect-styles () { + color: white; +} + +// EdgeToEdgeCategory.less +.mblEdgeToEdgeCategory-styles () { + height: 35px; + border-bottom: 3px solid #39393A; + background-color: rgba(0,0,0,0); + color: white; + line-height: 35px; + margin-right:7px; + margin-left:7px; + margin-top: 10px; + text-transform: uppercase; +} + +// RoundRectCategory.less +@mbl-value-picker-slot-margin: 0 5px; +.mblRoundRectCategory-styles () { + +} + +// EdgeToEdgeList.less +.mblEdgeToEdgeList-styles () { + +} +.mblEdgeToEdgeList-LastListItem-styles () { + border-bottom-color: #333538; + margin-right:7px; + margin-left:7px; +} + +// ListItem.less +@mbl-list-item-height: 50px; +// +.mblListItem-styles () { + border-bottom: 1px solid #333538; + margin-right:7px; + margin-left:7px; + + font-size: 18px; + color: @holo-color; +} +.mblListItemSelected-styles () { + color: @default-selected-color; + background-color: @default-selected-background-color; +} +.mblListItemLabelSelected-styles () { + background-color: #048bf4; +} +.mblListItemChecked-styles () { +} +.mblListItemRightText-styles () { + color: white; + margin-top: 14px; +} +.mblListItemSubText-styles () { + font-size: 14px; + color: gray; +} + +// Switch.less +@mbl-switch-bg-left-background-color: #00a200; +.mbl-switch-bg-left-background-image () {background-image: none; } +@mbl-switch-bg-right-background-color: #bdbebd; +.mbl-switch-bg-right-background-image () { .background-image-linear-gradient-top-bottom(#bdbebd, #f7f3f7); } +.mbl-switch-knob-background-image () { .background-image-linear-gradient-top-bottom(#9c9a9c, #848284); } + +// +@mbl-switch-bg-left-background-image-gecko: none; +@mbl-switch-bg-right-background-image-gecko: -none; +@mbl-switch-knob-background-image-gecko: none; +@mbl-switch-square-border-radius: 0px; +// +.mblSwitchBg-styles () { + border: rgba(176,176,176,0.5) 1px inset; +} +.mblSwitchKnob-styles () { + border: rgba(157,157,157,0.5) 1px outset; +} + +// Button.less +.mblButton-styles () { + .default-button-border-styles; + height: 40px; + color: @holo-color; + +} +.mblButtonSelected-styles () { + + color: @holo-color; + border-color: transparent; + background-image: none; + background-color: #2C94BB; + box-shadow: 0px 0px 1px 4px #1F5366; + +} +.mblButton-mblBlueButton-styles () { + color: @holo-color; + .default-button-border-styles; + background-color: #0099CC; +} +.mblButton-mblRedButton-styles () { + color: @holo-color; + .default-button-border-styles; + background-color: #CC0000; +} + +// CheckBox.less +.mblCheckBox-styles () { + border-color: @holo-checkbox-border-color; + border-width: 1px; + background-color: transparent; + background-image: none; + border-style: solid; +} +.mblCheckBoxChecked-after-styles () { + border-color: white; + background-color: transparent; + background-image: none; + +} +.mblCheckBoxChecked-mblCheckBoxSelected-after-styles () { + background-color: transparent; + background-image: none; +} + +// ComboBox.less +@mbl-combo-box-popup-box-shadow: 0 0 50px black; +// +.dijitPopup-styles () { + border-radius: 0; +} + +.mblComboBoxMenu-styles () { + border-radius: 0; + background-color: @holo-grey2; + color: @holo-color; +} + +.mblComboBoxMenuItem-styles () { + border-color: @holo-grey3; + border-top: none; + height: 35px; + padding-top: 17px; +} + +.mblComboBoxMenuItemSelected-styles () { + background-color: @default-selected-background-color; + color: white; +} + +// IconContainer.less +.mblIconItemSub-styles () { + background-color: white; + color: black; +} +.mblIconArea-styles () { + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: white; +} +.mblIconItemDeleteIcon-styles () { + top: -4px; + left: -2px; +} + +// RadioButton.less +.mblRadioButton-styles () { + border-color: @holo-checkbox-border-color; +} +.mblRadioButtonChecked-after-styles () { + border-color: @holo-checkbox-tick-color; +} +.mblRadioButtonChecked-Selected-after-styles () { + border-color: @holo-checkbox-tick-color; +} + +// Slider.less +@mbl-slider-bar-border-radius: 10em; +@mbl-slider-knob-border-radius: 10em; + +// +.mblSlider-styles () { + border-color: #b0b0b0; +} +.mblSliderHandle-styles () { + border-color: transparent; +} +.holo-slider-background-image () { + background: -webkit-gradient(radial, 9 9, 3, 9 9, 9, from(@holo-color1), color-stop(0, @holo-color1), color-stop(0.01, @holo-slider-thumb-color), to(@holo-slider-thumb-color)); + background-image: radial-gradient(circle closest-side at center, #FFFFFF 0%, #A435C5 50%, #251AE7 75%, #00A3EF 100%); +} + +// TabBar.less + +.holoTabBarBackground-styles () { + background-color: rgba(0,0,0,0); + background-image: none; + border-style:none; +} + + +.mblTabBar-styles () { + text-shadow: none; + color: @holo-color; +} + + +// barType="tabBar" +.mblTabBarTabBar-styles () { + .holoTabBarBackground-styles; + line-height: 0.5em; + +} +.mblTabBarTabBar-compat () { + .holoTabBarBackground-styles; + line-height: 0.5em; +} + +.mblTabBarTabBarButton-styles () { + border-radius: 0px; + height:47px; + border-bottom-color: @holo-color1; + border-bottom-width: 1px; + border-bottom-style: solid; +} + +.mblTabBarTabBarButtonIconArea-styles () { + padding-top: 0px; +} + +.mblTabBarTabBarButtonLabel-styles () { + display: inline; + text-transform: uppercase; + color: @holo-color; + font-weight: bold; +} + +.mblTabBarTabBarButtonSelected-styles () { + border-radius: 0px; + height:42px; + border-bottom-color: @holo-color1; + border-bottom-width: 6px; + border-bottom-style: solid; +} +.mblTabBarTabBarButtonLabelSelected-styles () { +} + +// barType="segmentedControl" +@mbl-tab-bar-segmented-control-border-radius: 0px; +// +.mblTabBarSegmentedControl-styles () { + .holoTabBarBackground-styles; + line-height: 0.5em; +} +.mblTabBarSegmentedControlButton-styles () { + border-radius: 0px; + height:28px; + border-bottom-color: @holo-color1; + border-bottom-width: 1px; + border-bottom-style: solid; +} +.mblTabBarSegmentedControlButton-compat-gecko () { + +} + +.mblTabBarSegmentedControlButtonSelected-styles () { + border-radius: 0px; + height:23px; + border-bottom-color: @holo-color1; + border-bottom-width: 6px; + border-bottom-style: solid; +} + +// barType="standardTab" +.mblTabBarStandardTab-styles () { + .holoTabBarBackground-styles; +} +.mblTabBarStandardTabButton-styles () { + color: @default-button-color; + background-color: @default-button-background-color; /* TODO: to compat */ + .default-button-background-image(); +} +.mblTabBarStandardTabButtonIconArea-styles () { +} +.mblTabBarStandardTabButtonLabel-styles () { + display: inline; + text-transform: uppercase; + color: @holo-color; + font-weight: bold; +} +.mblTabBarStandardTabButtonSelected-styles () { + color: @default-button-selected-color; + background-color: @default-button-selected-background-color; /* TODO: to compat */ + .background-image-linear-gradient-top-bottom-2-stops(#313031, #959595, 0.5, #5a555a, 0.5, #616161) + +} +.mblTabBarStandardTabButtonLabelSelected-styles () { +} + +// barType="tallTab" +.mblTabBarTallTab-styles () { + .holoTabBarBackground-styles; +} +.mblTabBarTallTabButton-styles () { + background-color: rgba(0,0,0,0); + background-image: none; + border-radius: 0px; + height: 58px; + border-style: none; + border-bottom-color: @holo-color1; + border-bottom-width: 1px; + border-bottom-style: solid; +} +.mblTabBarTallTabButton-FirstChild-styles () { +} +.mblTabBarTallTabButton-LastChild-styles () { +} +.mblTabBarTallTabButtonIconArea-styles () { +} +.mblTabBarTallTabButtonLabel-styles () { +} +.mblTabBarTallTabButtonSelected-styles () { + background-color: rgba(0,0,0,0); + background-image: none; + border-radius: 0px; + height:53px; + border-style: none; + border-bottom-color: @holo-color1; + border-bottom-width: 6px; + border-bottom-style: solid; +} +.mblTabBarTallTabButtonLabelSelected-styles () { +} + +// TextArea.less +.mblTextArea-styles () { + .default-button-border-styles; + color: @holo-color; + border-radius: 0; + border-top-color: transparent; + font-size: 17px; +} + +// TextBox.less + +.mblTextBox-styles () { + background-color: transparent; + border-top-color: transparent; + border-left-color: transparent; + border-right-color: transparent; + border-bottom-color: @holo-color1; + border-width: 2px; + font-size: 17px; + border-style: solid; + color: @holo-color; +} + +// ToggleButton.less +.mblToggleButton-styles () { + .default-button-border-styles; + font-size: 13px; + color: black; +} +.mblToggleButtonSelected-styles () { + color: white; +} +.mblToggleButtonChecked-styles () { + color: white; +} +.mblToggleButtonChecked-after-styles () { + border-color: white; +} +.mblToggleButtonCheckedSelected-styles () { + color: white; +} +.mblToggleButtonCheckedSelected-after-styles () { +} + +// Overlay.less +.mblOverlay-styles () { + background-color: #333333; + background-image: none; +} +.mblOverlay-compat () { +} +.mblOverlay-compat-gecko () { +} + +// Tooltip.less +@mbl-tooltip-border-radius: 3px; +// +.mblTooltip-styles () { + border-color: #adaaad; + border-radius: @mbl-tooltip-border-radius; + background-color: #8c8a8c; + .background-image-linear-gradient-top-bottom(#9c9e9c, #848284); + +} +.mblTooltipBubble-styles () { + background-color: #306ea1; + background-image: none; + color: white; +} +.mblTooltipInnerArrow-Bubble-Above-styles () { + border-bottom-color: #306ea1; +} +.mblTooltipInnerArrow-Bubble-Below-styles () { + border-top-color: #306ea1; +} +.mblTooltipInnerArrow-Bubble-After-styles () { + border-left-color: #306ea1; +} +.mblTooltipInnerArrow-Bubble-Before-styles () { + border-right-color: #306ea1; +} +.mblTooltipArrow-Before-styles () { + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipArrow-After-styles () { + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipArrow-Above-styles () { + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipArrow-Below-styles () { + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow-Before-styles () { + border-left-width: 0; + border-right-color: #848284; +} +.mblTooltipInnerArrow-After-styles () { + border-right-width: 0; + border-left-color: #848284; +} +.mblTooltipInnerArrow-Above-styles () { + border-top-width: 0; + border-bottom-color: #9c9e9c; +} +.mblTooltipInnerArrow-Below-styles () { + border-bottom-width: 0; + border-top-color: #848284; +} +.mblTooltip-Heading-styles () { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblTooltip-Heading-compat () { +} +.mblTooltip-Heading-ToolbarButton-styles () { +} +.mblTooltip-Heading-ToolbarButton-compat () { +} + +// Accordion.less +.mblAccordion-styles () { + border-style:none; +} +.mblAccordionTitle-styles () { + .mbl-button-background-image(); +} +.mblAccordionTitle-compat () { +} + +.mblAccordionTitle-compat-gecko () { + .mbl-button-background-image(); +} +.mblAccordionTitleSelected-styles () { + background-color: @holo-color1; +} +.mblAccordionTitleSelected-compat () { + background-color: @holo-color1; +} +.mblAccordionTitleSelected-compat-gecko () { + background-color: @holo-color1; +} +.mblAccordionTitleAnchor-styles () { + color: @holo-color; +} +.mblAccordionTitleAnchorSelected-styles () { + color: @holo-color; +} + +// SimpleDialog.less +@mbl-simple-dialog-border-radius: 2px; +// +.mblSimpleDialog-styles () { + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration-styles () { + background-color: rgba(64,64,64,0.85); + border: 2px solid #eeeeee; + color: white; + + background-image: none; + background-color: @holo-grey1; + border-style: none; + border-top-style: solid; + border-top-width: 1px; + border-top-color: rgba(255,255,255,0.6); + border-radius: 2px; +} +.mblSimpleDialogDecoration-compat () { + background-color: #404040; +} +.mblSimpleDialogDecoration-compat-gecko () { + background-color: rgba(64,64,64,0.85); +} +.mblSimpleDialogTitle-styles () { + margin: 14px 0 7px -5px; + padding: 0 14px 14px; + width: 244px; + border-bottom: 1px solid @holo-color1; + font-size: 17px; + text-align: left; +} +.mblSimpleDialogText-styles () { + margin: 14px 9px; + width: 244px; + font-size: 17px; + text-align: left; +} + +// IconMenu.less +@mbl-icon-menu-border-radius: 6px; +@mbl-icon-menu-item-border-radius: 6px; +// +.mblIconMenu-styles () { + padding: 0; + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; +} +.mblIconMenu-compat () { + background-color: #404040; +} +.mblIconMenu-compat-gecko () { + background-color: rgba(64, 64, 64, 0.85); +} +.mblIconMenuItem-styles () { + border-left: 1px solid rgba(96, 96, 96, 0.85); + border-bottom: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemAnchor-styles () { + font-size: 13px; + color: white; +} +.mblIconMenuItemSel-styles () { + background-color: @default-selected-background-color; + color: white; +} +.mblIconMenuItemSel-compat () { + background-color: @default-selected-background-color; +} +.mblIconMenuItemSel-compat-gecko () { + background-color: @default-selected-background-color; +} + +// dijit.Calendar +.dijitCalendar-styles () { + border: none 0 transparent; + background-color: white; +} +.dijitCalendar-thead-styles () { + background-color: @holo-grey2; + +} +.dijitCalendar-thead-compat () { + background-color: @holo-grey2; +} +.dijitCalendar-thead-compat-gecko () { + background-color: @holo-grey2; +} +.dijitCalendarMonthLabel-styles () { + color: white; + font-size: 16px; +} +.dijitCalendarMonthMenu-styles () { +} +.dijitCalendarMonthMenu-compat-ff3 () { +} +.dijitCalendarMonthMenu-Label-styles () { + color: black; +} +.dijitCalendarDecrease-styles () { + border-right: 6px solid white !important; +} +.dijitCalendarIncrease-styles () { + border-left: 6px solid white !important; +} +.dijitCalendarDayLabelTemplate-styles () { + background-color: #292c31; + font-size: 12px; + color: white; +} +.dijitCalendarDateTemplate-styles () { + border-right: 1px solid lightGrey; + background-color: white; + color: black; +} +.dijitCalendarDateTemplate-LastChild-styles () { + border-right: none; +} +.dijitCalendarDateLabel-DateTemplate-styles () { + border: none; +} +.dijitCalendarDateLabel-PrevMonth-styles () { + color: lightGrey; +} +.dijitCalendarDateLabel-Hovered-styles () { + color: @holo-color1; +} +.dijitCalendarDateLabel-Selected-styles () { + color: @holo-color1; + +} +.dijitCalendarDateLabel-Selected-compat () { + color: @holo-color1; +} +.dijitCalendarDateLabel-Selected-compat-gecko () { + color: @holo-color1; +} +.dijitCalendarDateLabel-Active-styles () { + +} +.dijitCalendarDateLabel-Active-compat () { + +} +.dijitCalendarDateLabel-Active-compat-gecko () { + +} +.dijitCalendarYearLabel-styles () { + padding: 0; + background-color: @holo-grey2; +} +.dijitCalendarYearLabel-compat () { + background-color: @holo-grey2; +} +.dijitCalendarYearLabel-compat-gecko () { + background-color: @holo-grey2; +} +.dijitCalendarSelectedYear-styles () { + color: white; + font-size: 16px; +} +.dijitCalendarNextYear-styles () { + padding: 1px 6px 3px 6px; + color: white; + font-size: 12px; +} + +// SearchBox.less +@mbl-searchbox-cancel-button-color: black; +@mbl-searchbox-cancel-button-bg-color: transparent; +.mblSearchBox-Cancel-Button-styles () { + border-radius: 0; +} +@mbl-searchbox-results-decoration-color: black; + +// ProgressBar.less +.mblProgressBar-styles () { + border-radius: 0px; + height: 2px; + background-image: none; + background-color: @holo-grey2; +} +.mblProgressBarProgress-styles () { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + background-image: none; + background-color: @holo-color1; + height: 2px; +} +.mblProgressBarComplete-styles () { + border-radius: 0px; +} +.mblProgressBarNotStarted-styles () { +} +.mblProgressBarMsg-styles () { + top: 3px; +} +.mblProgressBar-compat () { + background-color: @holo-grey2; +} +.mblProgressBarProgress-compat () { + background-color: @holo-color1; +} +.mblProgressBar-compat-gecko () { + background-image: none; + background-color: @holo-grey2; +} +.mblProgressBarProgress-compat-gecko () { + background-image: none; + background-color: @holo-color1; + +} + +// ValuePicker.less +.mbl-value-picker-slot-button-background-image () {background-image: none;} +@mbl-value-picker-slot-button-background-image-gecko: none; +@mbl-value-picker-slot-button-radius: 0px; +.mbl-value-picker-slot-input-area-background-image () {background-image: none;} +@mbl-value-picker-slot-input-area-background-image-gecko: none; +.mblValuePickerSlot-style () { + margin: 0 5px; +} +.mblValuePickerSlot-input-style () { + font-size: 28px; + color: @holo-color; +} + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/variables_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/variables_rtl.less new file mode 100644 index 00000000..6819f603 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/holodark/variables_rtl.less @@ -0,0 +1,35 @@ +// Carousel_rtl +@mbl-carousel-margin-rtl: ~"2px 0px 2px 4px"; + +// IconContainer_rtl +@mbl-icon-container-right-rtl: -2px; + +// IconMenu_rtl-compat +@mbl-border-radius-rtl: 6px; + +// TabBar_rtl-compat +@mbl-moz-border-radius-rtl: 5px; + +// TabBar_rtl +@mbl-border-width-rtl: ~"1px 0px 1px 1px !important"; +@mbl-tb-border-radius-rtl: 5px; + +// ThemeID +@theme-id: holoDark; + +// Switch_rtl-compat +@mbl-bg-image-r-rtl: ~"url(compat/switch-square-r.gif)"; +@mbl-bg-image-l-rtl: ~"url(compat/switch-square-l.gif)"; + +// Switch_rtl +@mbl-switchOn-left-rtl: -53px; +@mbl-switchBg-left-rtl: 53px; +@mbl-switch-knob-rtl: 53px; +@mbl-switch-text-right-rtl: -40px; + +// ToolBarButton_rtl +@mbl-toolbar-right-arrow-rtl: -1px; +@mbl-toolbar-left-arrow-rtl: -2px; + +// ProgressIndicator_rtl +@mbl-progress-center-left-rtl: 50%; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Accordion-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Accordion-compat.css new file mode 100644 index 00000000..985987f2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Accordion-compat.css @@ -0,0 +1,24 @@ + +.mblAccordionTitleSelected { + background-color: #a7a7aa; +} +.dj_gecko .mblAccordionTitle { + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; +} +.dj_gecko .mblAccordionTitleSelected { + background-color: #a7a7aa; +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Accordion.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Accordion.css new file mode 100644 index 00000000..544a5149 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Accordion.css @@ -0,0 +1,70 @@ + +.mblAccordion { + border-style: outset; + border-width: 1px; + border-style: none; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #f7f7f7; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: #000000; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + background-color: #a7a7aa; +} +.mblAccordionTitleSelected .mblAccordionTitleAnchor { + color: #000000; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Accordion_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Accordion_rtl.css new file mode 100644 index 00000000..5b9612f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Accordion_rtl.css @@ -0,0 +1,6 @@ + +.mblAccordionIconParentRtl { + float: right; + -webkit-transform: scaleX(-1); + transform: scaleX(-1); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button-compat.css new file mode 100644 index 00000000..4af337a1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button-compat.css @@ -0,0 +1,59 @@ + +.mblButton { + background-image: url(compat/button-bg.png); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblBlueButton { + background-image: url(compat/blue-button-bg.png); +} +.mblBlueButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.mblRedButton { + background-image: url(compat/red-button-bg.png); +} +.mblRedButtonSelected { + background-image: url(compat/red-button-sel-bg.png); +} +.dj_gecko .mblButton { + background-image: none; +} +.dj_gecko .mblButtonSelected { + background-image: none; +} +.dj_gecko .mblBlueButton { + background-image: none; +} +.dj_gecko .mblBlueButtonSelected { + background-image: none; +} +.dj_gecko .mblRedButton { + background-image: none; +} +.dj_gecko .mblRedButtonSelected { + background-image: none; +} +.dj_ff3 .mblButton { + -moz-border-radius: 2px; +} +.mblButton { + background-image: none; +} +.mblButtonSelected { + background-image: none; +} +.mblBlueButton { + background-image: none; +} +.mblBlueButtonSelected { + background-image: none; +} +.mblRedButton { + background-image: none; +} +.mblRedButtonSelected { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button-compat.less new file mode 100644 index 00000000..70c0a966 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button-compat.less @@ -0,0 +1,21 @@ +@import "variables.less"; +@import "../common/Button-compat.less"; + +.mblButton { + background-image: none; +} +.mblButtonSelected { + background-image: none; +} +.mblBlueButton { + background-image: none; +} +.mblBlueButtonSelected { + background-image: none; +} +.mblRedButton { + background-image: none; +} +.mblRedButtonSelected { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button.css new file mode 100644 index 00000000..ae212184 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button.css @@ -0,0 +1,89 @@ + +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + height: 40px; + color: #000000; +} +.mblButtonSelected { + color: #000000; + border-color: transparent; + background-image: none; + background-color: #2C94BB; + box-shadow: 0px 0px 1px 4px #1F5366; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + color: #000000; + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + background-color: #0099CC; +} +.mblBlueButtonSelected { + background-image: none; +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115), color-stop(0.5, #ff4d25), color-stop(0.5, #ed4d15)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); + color: #000000; + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + background-color: #CC0000; +} +.mblRedButtonSelected { + background-image: none; +} +.mblButton { + color: #007aff; + border: solid 1px #eeeeee; + -webkit-appearance: none; +} +.mblBlueButton, +.mblRedButton { + color: white; +} +.mblButtonSelected { + background-color: rgba(0, 0, 0, 0); + background-image: none; + box-shadow: none; + color: #929292; + border-color: #007aff; +} +.mblButtonDisabled, +.mblButton:disabled { + color: #646464; + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + background-color: #929292; +} +.mblBlueButtonSelected { + color: black; + border-color: transparent; + box-shadow: 0px 0px 1px 4px #33B5E5; +} +.mblRedButtonSelected { + color: black; + border-color: transparent; + box-shadow: 0px 0px 1px 4px #FF4444; +} +.mblTooltip .mblButton { + border: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button.less new file mode 100644 index 00000000..0b98b607 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Button.less @@ -0,0 +1,42 @@ +@import "variables.less"; +@import "../common/Button.less"; + +.mblButton { + color: @ios7-base-color; + border: solid 1px @ios7-grey3; + -webkit-appearance: none; +} + +.mblBlueButton, .mblRedButton { + color: white; +} + +.mblButtonSelected { + background-color: rgba(0, 0, 0, 0); + background-image: none; + box-shadow: none; + color: @ios7-grey2; + border-color: @ios7-base-color; +} + +.mblButtonDisabled, +.mblButton:disabled { + color: #646464; + .default-button-border-styles; + background-color: @ios7-grey2; +} + +.mblBlueButtonSelected { + color: black; + border-color: transparent; + box-shadow: 0px 0px 1px 4px #33B5E5; +} +.mblRedButtonSelected { + color: black; + border-color: transparent; + box-shadow: 0px 0px 1px 4px #FF4444; +} + +.mblTooltip .mblButton { + border: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Carousel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Carousel.css new file mode 100644 index 00000000..57e43929 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Carousel.css @@ -0,0 +1,77 @@ + +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Carousel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Carousel_rtl.css new file mode 100644 index 00000000..acab0d8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Carousel_rtl.css @@ -0,0 +1,13 @@ + +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/CheckBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/CheckBox-compat.css new file mode 100644 index 00000000..c628f4f5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/CheckBox-compat.css @@ -0,0 +1,38 @@ + +.mblCheckBox { + background-image: url(compat/button-bg.png); +} +.mblCheckBoxSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblCheckBox { + background-image: none; + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: none; +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: none; +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: none; +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/CheckBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/CheckBox.css new file mode 100644 index 00000000..12f678aa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/CheckBox.css @@ -0,0 +1,81 @@ + +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + background-color: rgba(0, 0, 0, 0); + border-style: none; + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #5c5c5c; + border-width: 1px; + background-color: transparent; + background-image: none; + border-style: solid; +} +.mblCheckBoxSelected { + background-image: none; +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-color: transparent; +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; + background-color: transparent; + background-image: none; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: none; +} +.mblCheckBoxChecked.mblCheckBoxSelected::after, +.mblCheckBox:checked.mblCheckBoxSelected::after { + background-color: transparent; + background-image: none; +} +.mblCheckBox:disabled { + border-color: #007aff; +} +.mblCheckBoxSelected { + background-image: none; + border-color: #99bbca; + box-shadow: 0px 0px 1px 4px #1f5366; + background-color: #1f5366; +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: none; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: none; + border-color: #99bbca; + box-shadow: 0px 0px 3px 4px #1f5366; + background-color: #1f5366; +} +.mblCheckBox:checked::after { + border-color: #007aff; +} +.mblCheckBox:disabled::after { + border-color: #007aff; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/CheckBox.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/CheckBox.less new file mode 100644 index 00000000..5971fcad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/CheckBox.less @@ -0,0 +1,31 @@ +@import "variables.less"; +@import "../common/CheckBox.less"; + +.mblCheckBox:disabled{ + border-color: @ios7-base-color; +} +.mblCheckBoxSelected { + background-image: none; + border-color: @ios7-checkbox-selected-color; + box-shadow: 0px 0px 1px 4px @ios7-checkbox-checked-color; + background-color: @ios7-checkbox-checked-color; +} + +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: none; + &.mblCheckBoxSelected { + background-image: none; + border-color: @ios7-checkbox-selected-color; + box-shadow: 0px 0px 3px 4px @ios7-checkbox-checked-color; + background-color: @ios7-checkbox-checked-color; + } +} + +.mblCheckBox:checked::after{ + border-color: @ios7-checkbox-tick-color; +} + +.mblCheckBox:disabled::after{ + border-color: @ios7-base-color; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ComboBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ComboBox-compat.css new file mode 100644 index 00000000..75eb7d7d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ComboBox-compat.css @@ -0,0 +1,7 @@ + +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: 0 0 50px #000000; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ComboBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ComboBox.css new file mode 100644 index 00000000..33f61bcd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ComboBox.css @@ -0,0 +1,60 @@ + +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: 0 0 50px #000000; + box-shadow: 0 0 50px #000000; + border-radius: 0; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-radius: 0; + background-color: white; + color: #000000; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: #eeeeee; + border-top: none; + border-bottom: none; + height: 35px; + padding-top: 17px; +} +.mblComboBoxMenuItemSelected { + background-color: red; + color: white; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ComboBox_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ComboBox_rtl.css new file mode 100644 index 00000000..10932a96 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ComboBox_rtl.css @@ -0,0 +1,4 @@ + +.mblComboBoxMenuItemRtl { + text-align: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/DatePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/DatePicker.css new file mode 100644 index 00000000..2fa38562 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/DatePicker.css @@ -0,0 +1,191 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblSpinWheel { + background-image: none; + border: none; +} +.mblSpinWheelBar { + background-image: none; + background-color: rgba(0, 0, 0, 0); + border: none; + border-top: solid 1px #929292; + border-bottom: solid 1px #929292; +} +.mblSpinWheelSlot { + border: none; + color: #929292; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: none; +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0px; + border-top-right-radius: 0px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblValuePickerSlotButtonSelected { + background-image: none; +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: none; +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; + color: #000000; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/EdgeToEdgeCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/EdgeToEdgeCategory.css new file mode 100644 index 00000000..1a408627 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/EdgeToEdgeCategory.css @@ -0,0 +1,20 @@ + +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 35px; + background-color: rgba(0, 0, 0, 0); + color: #6D6D72; + line-height: 35px; + margin-right: 7px; + margin-left: 7px; + margin-top: 10px; + text-transform: uppercase; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/EdgeToEdgeList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/EdgeToEdgeList.css new file mode 100644 index 00000000..3fb499cd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/EdgeToEdgeList.css @@ -0,0 +1,11 @@ + +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: white; + border-top: 1px solid #C8C7CC; + border-bottom: 1px solid #C8C7CC; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/FixedSplitter.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/FixedSplitter.css new file mode 100644 index 00000000..3c88bebb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/FixedSplitter.css @@ -0,0 +1,21 @@ + +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/FormLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/FormLayout.css new file mode 100644 index 00000000..19a22b9b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/FormLayout.css @@ -0,0 +1,160 @@ + +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/FormLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/FormLayout_rtl.css new file mode 100644 index 00000000..44ebb14d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/FormLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/GridLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/GridLayout.css new file mode 100644 index 00000000..ebdc391f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/GridLayout.css @@ -0,0 +1,24 @@ + +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/GridLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/GridLayout_rtl.css new file mode 100644 index 00000000..3f5bdd0d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/GridLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblGridLayoutRtl > div { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Heading-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Heading-compat.css new file mode 100644 index 00000000..650c5a6e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Heading-compat.css @@ -0,0 +1,13 @@ + +.mblHeading { + background-image: url(compat/heading-bg.png); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: none; +} +.mblHeading { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Heading-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Heading-compat.less new file mode 100644 index 00000000..85a3b88a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Heading-compat.less @@ -0,0 +1,6 @@ +@import "variables.less"; +@import "../common/Heading-compat.less"; + +.mblHeading { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Heading.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Heading.css new file mode 100644 index 00000000..1cbb9e79 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Heading.css @@ -0,0 +1,39 @@ + +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + text-align: center; + line-height: 44px; + color: #000000; + background-color: #f7f7f7; + border-bottom-color: #a7a7aa; + border-bottom-width: 1px; + border-bottom-style: solid; + font-size: 18px; + font-weight: bold; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer-compat.css new file mode 100644 index 00000000..8a99f941 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer-compat.css @@ -0,0 +1,59 @@ + +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url(compat/icon-content-heading-bg.png); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer-compat.less new file mode 100644 index 00000000..e2df9856 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons-compat.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross-compat.css"); + +@import "variables.less"; +@import "../common/IconContainer-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer.css new file mode 100644 index 00000000..646d57b0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer.css @@ -0,0 +1,381 @@ + +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; + color: #000000; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: #000000; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer.less new file mode 100644 index 00000000..729745a1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross.css"); + +@import "variables.less"; +@import "../common/IconContainer.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer_rtl.css new file mode 100644 index 00000000..0aa248fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconContainer_rtl.css @@ -0,0 +1,13 @@ + +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: -2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu-compat.css new file mode 100644 index 00000000..a0123014 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu-compat.css @@ -0,0 +1,34 @@ + +.mblIconMenu { + background-color: #404040; +} +.mblIconMenuItemSel { + background-color: #3578b1; +} +.dj_gecko .mblIconMenu { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-color: #3578b1; +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 6px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu.css new file mode 100644 index 00000000..dcb468a4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu.css @@ -0,0 +1,60 @@ + +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 6px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-color: rgba(200, 200, 200, 0.45); + border: 1px solid #007aff; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 6px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 6px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 13px; + color: #000000; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-color: #3578b1; + color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu_rtl-compat.css new file mode 100644 index 00000000..3b1f8262 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu_rtl-compat.css @@ -0,0 +1,17 @@ + +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 6px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 6px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 6px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 6px; + -moz-border-bottom-right-radius: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu_rtl.css new file mode 100644 index 00000000..0675ffc8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/IconMenu_rtl.css @@ -0,0 +1,23 @@ +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-right-radius: 6px; + border-top-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0px; + border-top-left-radius: 6px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-right-radius: 6px; + border-bottom-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem-compat.css new file mode 100644 index 00000000..8ee7b2f6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem-compat.css @@ -0,0 +1,27 @@ + +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #3578b1; +} +.dj_gecko .mblListItemSelected { + background-image: none; +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.mblListItemSelected { + background-color: #AAAAAA; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem-compat.less new file mode 100644 index 00000000..ff377614 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem-compat.less @@ -0,0 +1,9 @@ +@import url("../common/domButtons/DomButtonGrayArrow-compat.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck-compat.css"); + +@import "variables.less"; +@import "../common/ListItem-compat.less"; + +.mblListItemSelected { + background-color: #AAAAAA; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem.css new file mode 100644 index 00000000..091175a8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem.css @@ -0,0 +1,165 @@ + +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonWhiteCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: white; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 50px; + list-style-type: none; + line-height: 50px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #C8C7CC; + margin-left: 0px; + margin-right: 0px; + background-color: white; + font-size: 18px; + color: #000000; + padding: 0 16px; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-color: #3578b1; +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: red; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: #000000; + margin-top: 14px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblListItem *[layout="right"] { + color: #8F8F8F; +} +.mblListItem .mblListItemRightIcon * { + border-color: #C8C8CD; +} +.mblListItemSelected { + background-color: #AAAAAA; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem.less new file mode 100644 index 00000000..4b8bf386 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem.less @@ -0,0 +1,17 @@ +@import url("../common/domButtons/DomButtonGrayArrow.css"); +@import url("../common/domButtons/DomButtonWhiteCheck.css"); + +@import "variables.less"; +@import "../common/ListItem.less"; + +.mblListItem *[layout = "right"] { + color: #8F8F8F; +} + +.mblListItem .mblListItemRightIcon *{ + border-color: #C8C8CD; +} + +.mblListItemSelected { + background-color: #AAAAAA; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem_rtl-compat.css new file mode 100644 index 00000000..f3e90656 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem_rtl-compat.css @@ -0,0 +1,6 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem_rtl.css new file mode 100644 index 00000000..bf0a03c1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem_rtl.css @@ -0,0 +1,40 @@ + +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonWhiteCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem_rtl.less new file mode 100644 index 00000000..c21ef273 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ListItem_rtl.less @@ -0,0 +1,4 @@ +@import url("../common/domButtons/DomButtonGrayArrow_rtl.css"); +@import url("../common/domButtons/DomButtonWhiteCheck_rtl.css"); + +@import "../common/ListItem_rtl.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Opener-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Opener-compat.css new file mode 100644 index 00000000..2ce75d30 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Opener-compat.css @@ -0,0 +1,53 @@ + +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #f7f7f7; + border-bottom: 1px solid #f7f7f7; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Opener.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Opener.css new file mode 100644 index 00000000..90f774d6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Opener.css @@ -0,0 +1,244 @@ + +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: white; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 3px; + background-color: white; + background-image: none; +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #306ea1; + background-image: none; + color: white; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #306ea1; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #306ea1; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #848284; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #848284; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #9c9e9c; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #848284; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblOpenerUnderlay { + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Overlay-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Overlay-compat.css new file mode 100644 index 00000000..6a884395 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Overlay-compat.css @@ -0,0 +1,14 @@ + +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Overlay.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Overlay.css new file mode 100644 index 00000000..d8005872 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Overlay.css @@ -0,0 +1,90 @@ +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: white; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Overlay.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Overlay.less new file mode 100644 index 00000000..e49ea9eb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Overlay.less @@ -0,0 +1,5 @@ +@import url("../common/transitions/coverv.css"); +@import url("../common/transitions/revealv.css"); + +@import "variables.less"; +@import "../common/Overlay.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/PageIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/PageIndicator-compat.css new file mode 100644 index 00000000..29d4f8ab --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/PageIndicator-compat.css @@ -0,0 +1,4 @@ + +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/PageIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/PageIndicator.css new file mode 100644 index 00000000..1d42223e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/PageIndicator.css @@ -0,0 +1,26 @@ + +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} +.mblPageIndicatorDotSelected { + background-color: #007aff; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/PageIndicator.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/PageIndicator.less new file mode 100644 index 00000000..bf6e2926 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/PageIndicator.less @@ -0,0 +1,6 @@ +@import "variables.less"; +@import "../common/PageIndicator.less"; + +.mblPageIndicatorDotSelected { + background-color: @ios7-base-color; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressBar-compat.css new file mode 100644 index 00000000..0a8dabe3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressBar-compat.css @@ -0,0 +1,17 @@ + +.mblProgressBar { + background-color: #007aff; +} +.mblProgressBarProgress { + background-color: #a7a7aa; +} +.dj_gecko .mblProgressBar { + background-image: none; + background-color: #007aff; +} +.dj_gecko .mblProgressBarProgress { + -moz-transition-property: width; + -moz-transition-duration: 0.25s; + background-image: none; + background-color: #a7a7aa; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressBar.css new file mode 100644 index 00000000..b433fd89 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressBar.css @@ -0,0 +1,35 @@ + +.mblProgressBar { + position: relative; + border-radius: 0px; + height: 2px; + background-image: none; + background-color: #a7a7aa; +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + background-image: none; + background-color: #007aff; + height: 2px; +} +.mblProgressBarComplete { + border-radius: 0px; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressIndicator-compat.css new file mode 100644 index 00000000..091d2c35 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressIndicator-compat.css @@ -0,0 +1,83 @@ + +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressIndicator.css new file mode 100644 index 00000000..24420021 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressIndicator.css @@ -0,0 +1,157 @@ + +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressIndicator_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressIndicator_rtl.css new file mode 100644 index 00000000..ea681121 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ProgressIndicator_rtl.css @@ -0,0 +1,14 @@ + +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 50%; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: -50%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RadioButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RadioButton-compat.css new file mode 100644 index 00000000..7a4a5fac --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RadioButton-compat.css @@ -0,0 +1,32 @@ + +.mblRadioButton { + background-image: url(compat/button-bg.png); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.dj_gecko .mblRadioButton { + background-image: none; + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: none; +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: none; +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RadioButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RadioButton.css new file mode 100644 index 00000000..df3d57f1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RadioButton.css @@ -0,0 +1,83 @@ + +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #5c5c5c; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-color: transparent; +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #007aff; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: none; +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: #007aff; +} +.mblRadioButton { + border-style: solid; + border-width: 1px; + border-radius: 999px; + background-image: none; + background-color: transparent; + -webkit-tap-highlight-color: none; + border-color: #5c5c5c; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: none; +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.65em; + height: 0.65em; + top: 0.17em; + left: 0.17em; + border-style: none; + background-color: #007aff; + border-radius: 1em; + border-color: #007aff; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: none; + box-shadow: 0px 0px 1px 4px #1f5366 inset; +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: #007aff; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RadioButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RadioButton.less new file mode 100644 index 00000000..5d94ee78 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RadioButton.less @@ -0,0 +1,37 @@ +@import "variables.less"; +@import "../common/RadioButton.less"; +.mblRadioButton { + border-style: solid; + border-width: 1px; + border-radius: 999px; + background-image: none; + background-color: transparent; + -webkit-tap-highlight-color: none; + .mblRadioButton-styles; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: none; + &::after { + position: absolute; + content: ""; + width: 0.65em; + height: 0.65em; + top: 0.17em; + left: 0.17em; + + border-style: none; + background-color: @ios7-checkbox-tick-color; + border-radius: 1em; + + .mblRadioButtonChecked-after-styles; + } + &.mblRadioButtonSelected { + background-image: none; + box-shadow: 0px 0px 1px 4px @ios7-checkbox-checked-color inset; + &::after { + .mblRadioButtonChecked-Selected-after-styles; + + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRect-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRect-compat.css new file mode 100644 index 00000000..7684485c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRect-compat.css @@ -0,0 +1,72 @@ + +.mblRoundRect.mblShadow { + box-shadow: none; +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 14px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: none; +} +.dj_ie .mblRoundCorner { + background-color: transparent; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #f7f7f7; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: transparent; + border-style: solid; + border-color: #f7f7f7; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #f7f7f7; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #f7f7f7; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRect.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRect.css new file mode 100644 index 00000000..d106b03e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRect.css @@ -0,0 +1,14 @@ + +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #f7f7f7; + border-radius: 14px; + background-color: transparent; + color: #000000; + border: 1px solid #C8C7CC; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: none; + box-shadow: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectCategory.css new file mode 100644 index 00000000..5b9fca0e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectCategory.css @@ -0,0 +1,11 @@ + +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #6D6D72; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectCategory_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectCategory_rtl.css new file mode 100644 index 00000000..8e8a8e88 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectCategory_rtl.css @@ -0,0 +1,4 @@ + +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectList-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectList-compat.css new file mode 100644 index 00000000..a37cdd0e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectList-compat.css @@ -0,0 +1,77 @@ + +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 14px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 14px; + -moz-border-radius-topright: 14px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 14px; + -moz-border-radius-bottomright: 14px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: transparent; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #f7f7f7; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: transparent; + border-style: solid; + border-color: #f7f7f7; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #f7f7f7; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #f7f7f7; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectList.css new file mode 100644 index 00000000..eae3941d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/RoundRectList.css @@ -0,0 +1,19 @@ + +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #f7f7f7; + border-radius: 14px; + background-color: transparent; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 14px; + border-top-right-radius: 14px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ScrollablePane.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ScrollablePane.css new file mode 100644 index 00000000..425b9209 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ScrollablePane.css @@ -0,0 +1,12 @@ + +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SearchBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SearchBox-compat.css new file mode 100644 index 00000000..7f9ee13c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SearchBox-compat.css @@ -0,0 +1,22 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 2px; +} +.mblSearchBox { + height: auto; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SearchBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SearchBox.css new file mode 100644 index 00000000..fea14a5c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SearchBox.css @@ -0,0 +1,74 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border: solid 1px #007aff; + font-size: 17px; + color: #000000; +} +.mblTextBox:disabled { + background-color: transparent; + border-top-color: transparent; + border-left-color: transparent; + border-right-color: transparent; + border-bottom-color: #007aff; + border-width: 1px; + font-size: 17px; + border-style: solid; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: transparent; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid transparent; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 0; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #000000), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #000000), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SimpleDialog-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SimpleDialog-compat.css new file mode 100644 index 00000000..677ebeaf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SimpleDialog-compat.css @@ -0,0 +1,10 @@ + +.mblSimpleDialogDecoration { + background-color: #404040; +} +.dj_gecko .mblSimpleDialogDecoration { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SimpleDialog.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SimpleDialog.css new file mode 100644 index 00000000..bb95d48c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SimpleDialog.css @@ -0,0 +1,54 @@ + +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration { + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; + color: #000000; + background-image: none; + background-color: #f7f7f7; + border-style: none; + border-top-style: solid; + border-top-width: 1px; + border-top-color: rgba(255, 255, 255, 0.6); + border-radius: 2px; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 14px 0 7px -5px; + padding: 0 14px 14px; + width: 244px; + border-bottom: 1px solid #a7a7aa; + font-size: 17px; + text-align: left; +} +.mblSimpleDialogText { + margin: 14px 9px; + width: 244px; + font-size: 17px; + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Slider-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Slider-compat.css new file mode 100644 index 00000000..907fee28 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Slider-compat.css @@ -0,0 +1,40 @@ + +.mblSlider { + background-image: url(compat/slider-h-bg.png); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url(compat/slider-h-bar-bg.png); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url(compat/slider-handle-bg.png); +} +.mblSliderV { + background-color: #bdbebd; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #00a200; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -none; + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: none; +} +.dj_gecko .mblSliderHandle { + background-image: none; +} +.dj_ff3 .mblSlider { + -moz-border-radius: 10em; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 10em; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 10em; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Slider.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Slider.css new file mode 100644 index 00000000..015a57f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Slider.css @@ -0,0 +1,97 @@ + +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 10em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 10em; + background-image: none; +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 10em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + border-color: transparent; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSlider { + border-style: none; + border-radius: 0; + background-image: none; + background-color: transparent; +} +.mblSliderH { + width: 200px; + height: 3px; + background-color: #929292; + border-style: none; +} +.mblSliderV { + height: 200px; + width: 3px; + background-color: #929292; + border-style: none; +} +.mblSliderProgressBar { + border: radius: 0; + background-image: none; + background-color: #007aff; +} +.mblSliderHandle { + background-image: none; + background-color: white; + box-shadow: 0px 0px 3px #888; + border-color: transparent; +} +.mblSliderHandle:after { + border-style: solid; + background-image: none; + border-color: transparent; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Slider.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Slider.less new file mode 100644 index 00000000..438c0082 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Slider.less @@ -0,0 +1,42 @@ +@import "variables.less"; +@import "../common/Slider.less"; + +.mblSlider { + border-style: none; + border-radius: 0; + background-image: none; + background-color: transparent; + .mblSlider-styles; +} +.mblSliderH { + width: 200px; + height: 3px; + background-color: @ios7-grey2; + border-style: none; +} + +.mblSliderV { + height: 200px; + width: 3px; + background-color: @ios7-grey2; + border-style: none; +} + +.mblSliderProgressBar { + border:radius: 0; + background-image: none; + background-color: @ios7-base-color; +} + +.mblSliderHandle { + .ios7-slider-background-image(); + .mblSliderHandle-styles; +} + +.mblSliderHandle:after { + border-style: solid; + background-image: none; + .mblSliderHandle-styles; +} + + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel-compat.css new file mode 100644 index 00000000..59c05ddc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel-compat.css @@ -0,0 +1,92 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblSpinWheel { + background-image: none; + border: none; +} +.mblSpinWheelBar { + background-image: none; + background-color: rgba(0, 0, 0, 0); + border: none; + border-top: solid 1px #929292; + border-bottom: solid 1px #929292; +} +.mblSpinWheelSlot { + border: none; + color: #929292; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel-compat.less new file mode 100644 index 00000000..532a7b72 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel-compat.less @@ -0,0 +1,20 @@ +@import "variables.less"; +@import "../common/SpinWheel.less"; + +.mblSpinWheel { + background-image: none; + border: none; +} + +.mblSpinWheelBar { + background-image: none; + background-color: rgba(0, 0, 0, 0); + border: none; + border-top: solid 1px @ios7-grey2; + border-bottom: solid 1px @ios7-grey2; +} + +.mblSpinWheelSlot { + border: none; + color: @ios7-grey2; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel.css new file mode 100644 index 00000000..59c05ddc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel.css @@ -0,0 +1,92 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblSpinWheel { + background-image: none; + border: none; +} +.mblSpinWheelBar { + background-image: none; + background-color: rgba(0, 0, 0, 0); + border: none; + border-top: solid 1px #929292; + border-bottom: solid 1px #929292; +} +.mblSpinWheelSlot { + border: none; + color: #929292; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel.less new file mode 100644 index 00000000..532a7b72 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel.less @@ -0,0 +1,20 @@ +@import "variables.less"; +@import "../common/SpinWheel.less"; + +.mblSpinWheel { + background-image: none; + border: none; +} + +.mblSpinWheelBar { + background-image: none; + background-color: rgba(0, 0, 0, 0); + border: none; + border-top: solid 1px @ios7-grey2; + border-bottom: solid 1px @ios7-grey2; +} + +.mblSpinWheelSlot { + border: none; + color: @ios7-grey2; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel_rtl-compat.css new file mode 100644 index 00000000..98aab55f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel_rtl-compat.css @@ -0,0 +1,4 @@ +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel_rtl.css new file mode 100644 index 00000000..2f94024c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/SpinWheel_rtl.css @@ -0,0 +1,5 @@ + +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch-compat.css new file mode 100644 index 00000000..fadb1a5b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch-compat.css @@ -0,0 +1,121 @@ + +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: none; +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -none; +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: none; +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 0px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 0px; + background-image: url(compat/switch-square-k.gif); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round1-k.gif); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round2-k.gif); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc1-k.gif); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc2-k.gif); +} +.dj_gecko .mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 0px; +} +.dj_gecko .mblSwDefaultShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.dj_gecko .mblSwDefaultShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.dj_gecko .mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 0px; + background-image: url(compat/switch-square-k.gif); +} +.dj_gecko .mblSwitchBgLeft { + background-color: #4BD260; + background-image: none; +} +.dj_gecko .mblSwitchBgRight { + background-color: #eeeeee; + background-image: none; +} +.dj_gecko .mblSwDefaultShape .mblSwitchBgLeft, +.dj_gecko .mblSwDefaultShape .mblSwitchBgRight { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch-compat.less new file mode 100644 index 00000000..bc1b6a3a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch-compat.less @@ -0,0 +1,22 @@ +@import "variables.less"; +@import "../common/Switch-compat.less"; + +/* Default Shape */ +.dj_gecko .mblSwDefaultShape { + .mblSwSquareShape-styles; +} + +.dj_gecko .mblSwitchBgLeft { + background-color: #4BD260; + background-image: none; +} + +.dj_gecko .mblSwitchBgRight { + background-color: @ios7-grey3; + background-image: none; +} + +.dj_gecko .mblSwDefaultShape .mblSwitchBgLeft, +.dj_gecko .mblSwDefaultShape .mblSwitchBgRight { + background-image: none; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch.css new file mode 100644 index 00000000..4886e7b6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch.css @@ -0,0 +1,233 @@ + +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 11.5px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: none; +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(157, 157, 157, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 0px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 0px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 77px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwDefaultShape .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 50px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwDefaultShape .mblSwitchText { + width: 50px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 26px; +} +.mblSwitchKnob { + background-color: white; + background-image: none; +} +.mblSwitchBgLeft { + background-color: #4BD260; + background-image: none; +} +.mblSwitchBgRight { + background-color: #eeeeee; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch.less new file mode 100644 index 00000000..b2621376 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch.less @@ -0,0 +1,22 @@ +@import "variables.less"; +@import "../common/Switch.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwRoundShape1-styles; +} + +.mblSwitchKnob { + background-color: white; + background-image: none; +} + +.mblSwitchBgLeft { + background-color: #4BD260; + background-image: none; +} + +.mblSwitchBgRight { + background-color: @ios7-grey3; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch_rtl-compat.css new file mode 100644 index 00000000..a3346662 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch_rtl-compat.css @@ -0,0 +1,37 @@ + +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch_rtl.css new file mode 100644 index 00000000..51bc7180 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Switch_rtl.css @@ -0,0 +1,110 @@ + +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar-compat.css new file mode 100644 index 00000000..fbc27c78 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar-compat.css @@ -0,0 +1,337 @@ + +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #007aff; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-color: #eeeeee; + border: none; + line-height: 0.5em; +} +.mblTabBarTabBar .mblTabBarButton { + height: 47px; +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + color: #007aff; +} +.mblTabBarSegmentedControl { + background-image: none; + background-color: #eeeeee; + border: none; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + color: #007aff; + height: 28px; + font-weight: normal; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + height: 28px; + background-color: #007aff; + color: white; + font-weight: normal; +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: none; + background-color: #eeeeee; + border: none; + font-weight: normal; +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonLabel { + font-weight: normal; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + color: white; + background-color: #007aff; +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #007aff; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-color: #eeeeee; + border: none; +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); +} +.mblTabBar { + color: #929292; + font-weight: normal; +} +.mblTabBarSegmentedControl .mblTabBarButton { + border-top: solid 2px #007aff; + border-bottom: solid 2px #007aff; + border-left: solid 1px #007aff; + border-right: solid 1px #007aff; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left: solid 2px #007aff; + border-top-left-radius: 7px; + border-bottom-left-radius: 7px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-right: solid 2px #007aff; + border-top-right-radius: 7px; + border-bottom-right-radius: 7px; +} +.mblHeading .mblTabBar { + background-color: rgba(0, 0, 0, 0); +} +.mblTabBarSlimTab { + border: none; + background-color: #007aff; + background-image: none; +} +.mblTabBarSlimTab .mblTabBarButton, +.mblTabBarFlatTab .mblTabBarButton { + background-color: rgba(0, 0, 0, 0); + background-image: none; + color: #f7f7f7; + font-weight: normal; + text-shadow: none; + border-color: white; +} +.mblTabBarFlatTab .mblTabBarButton { + color: black; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-color: white; +} +.mblTabBarSlimTab .mblTabBarButtonSelected, +.mblTabBarFlatTab .mblTabBarButtonSelected { + background-color: white; + background-image: none; + color: #007aff; + border-color: white; + font-weight: normal; +} +.mblTabBarTallTab { + background-color: #007aff; + background-image: none; + margin: 0; +} +.mblTabBarTallTab .mblTabBarButton { + background-image: none; + border: none; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + color: #007aff; + background-color: white; + border: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar-compat.less new file mode 100644 index 00000000..8272f5e9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar-compat.less @@ -0,0 +1,82 @@ +@import "variables.less"; +@import "../common/TabBar.less"; +@import "../common/domButtons/DomButtonWhiteCross.css"; + +.mblTabBar { + color: @ios7-grey2; + font-weight: normal; +} + +.mblTabBarSegmentedControl .mblTabBarButton { + border-top: solid 2px @ios7-base-color; + border-bottom: solid 2px @ios7-base-color; + border-left: solid 1px @ios7-base-color; + border-right: solid 1px @ios7-base-color; + +} + +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left: solid 2px @ios7-base-color; + border-top-left-radius: 7px; + border-bottom-left-radius: 7px; +} + +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-right: solid 2px @ios7-base-color; + border-top-right-radius: 7px; + border-bottom-right-radius: 7px; + +} + +.mblHeading .mblTabBar { + background-color: rgba(0, 0, 0, 0); +} + +.mblTabBarSlimTab { + border: none; + background-color: @ios7-base-color; + background-image: none; +} + +.mblTabBarSlimTab .mblTabBarButton, .mblTabBarFlatTab .mblTabBarButton { + background-color: rgba(0, 0, 0, 0); + background-image: none; + color: @ios7-grey1; + font-weight: normal; + text-shadow: none; + border-color: white; +} + +.mblTabBarFlatTab .mblTabBarButton { + color: black; +} + +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-color: white; +} + +.mblTabBarSlimTab .mblTabBarButtonSelected, .mblTabBarFlatTab .mblTabBarButtonSelected { + background-color: white; + background-image: none; + color: @ios7-base-color; + border-color: white; + font-weight: normal; +} + +.mblTabBarTallTab { + background-color: @ios7-base-color; + background-image: none; + margin: 0; +} + +.mblTabBarTallTab .mblTabBarButton { + background-image: none; + border: none; + +} + +.mblTabBarTallTab .mblTabBarButtonSelected { + color: @ios7-base-color; + background-color: white; + border: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar.css new file mode 100644 index 00000000..fbc27c78 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar.css @@ -0,0 +1,337 @@ + +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #007aff; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-color: #eeeeee; + border: none; + line-height: 0.5em; +} +.mblTabBarTabBar .mblTabBarButton { + height: 47px; +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + color: #007aff; +} +.mblTabBarSegmentedControl { + background-image: none; + background-color: #eeeeee; + border: none; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + color: #007aff; + height: 28px; + font-weight: normal; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + height: 28px; + background-color: #007aff; + color: white; + font-weight: normal; +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: none; + background-color: #eeeeee; + border: none; + font-weight: normal; +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonLabel { + font-weight: normal; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + color: white; + background-color: #007aff; +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #007aff; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-color: #eeeeee; + border: none; +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); +} +.mblTabBar { + color: #929292; + font-weight: normal; +} +.mblTabBarSegmentedControl .mblTabBarButton { + border-top: solid 2px #007aff; + border-bottom: solid 2px #007aff; + border-left: solid 1px #007aff; + border-right: solid 1px #007aff; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left: solid 2px #007aff; + border-top-left-radius: 7px; + border-bottom-left-radius: 7px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-right: solid 2px #007aff; + border-top-right-radius: 7px; + border-bottom-right-radius: 7px; +} +.mblHeading .mblTabBar { + background-color: rgba(0, 0, 0, 0); +} +.mblTabBarSlimTab { + border: none; + background-color: #007aff; + background-image: none; +} +.mblTabBarSlimTab .mblTabBarButton, +.mblTabBarFlatTab .mblTabBarButton { + background-color: rgba(0, 0, 0, 0); + background-image: none; + color: #f7f7f7; + font-weight: normal; + text-shadow: none; + border-color: white; +} +.mblTabBarFlatTab .mblTabBarButton { + color: black; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-color: white; +} +.mblTabBarSlimTab .mblTabBarButtonSelected, +.mblTabBarFlatTab .mblTabBarButtonSelected { + background-color: white; + background-image: none; + color: #007aff; + border-color: white; + font-weight: normal; +} +.mblTabBarTallTab { + background-color: #007aff; + background-image: none; + margin: 0; +} +.mblTabBarTallTab .mblTabBarButton { + background-image: none; + border: none; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + color: #007aff; + background-color: white; + border: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar.less new file mode 100644 index 00000000..8272f5e9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar.less @@ -0,0 +1,82 @@ +@import "variables.less"; +@import "../common/TabBar.less"; +@import "../common/domButtons/DomButtonWhiteCross.css"; + +.mblTabBar { + color: @ios7-grey2; + font-weight: normal; +} + +.mblTabBarSegmentedControl .mblTabBarButton { + border-top: solid 2px @ios7-base-color; + border-bottom: solid 2px @ios7-base-color; + border-left: solid 1px @ios7-base-color; + border-right: solid 1px @ios7-base-color; + +} + +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left: solid 2px @ios7-base-color; + border-top-left-radius: 7px; + border-bottom-left-radius: 7px; +} + +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-right: solid 2px @ios7-base-color; + border-top-right-radius: 7px; + border-bottom-right-radius: 7px; + +} + +.mblHeading .mblTabBar { + background-color: rgba(0, 0, 0, 0); +} + +.mblTabBarSlimTab { + border: none; + background-color: @ios7-base-color; + background-image: none; +} + +.mblTabBarSlimTab .mblTabBarButton, .mblTabBarFlatTab .mblTabBarButton { + background-color: rgba(0, 0, 0, 0); + background-image: none; + color: @ios7-grey1; + font-weight: normal; + text-shadow: none; + border-color: white; +} + +.mblTabBarFlatTab .mblTabBarButton { + color: black; +} + +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-color: white; +} + +.mblTabBarSlimTab .mblTabBarButtonSelected, .mblTabBarFlatTab .mblTabBarButtonSelected { + background-color: white; + background-image: none; + color: @ios7-base-color; + border-color: white; + font-weight: normal; +} + +.mblTabBarTallTab { + background-color: @ios7-base-color; + background-image: none; + margin: 0; +} + +.mblTabBarTallTab .mblTabBarButton { + background-image: none; + border: none; + +} + +.mblTabBarTallTab .mblTabBarButtonSelected { + color: @ios7-base-color; + background-color: white; + border: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar_rtl-compat.css new file mode 100644 index 00000000..9d501c64 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar_rtl-compat.css @@ -0,0 +1,19 @@ + +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 5px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 5px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar_rtl.css new file mode 100644 index 00000000..e0527eb1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TabBar_rtl.css @@ -0,0 +1,83 @@ + +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 5px; + border-top-left-radius: 0px; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 5px; + border-top-right-radius: 0px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextArea-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextArea-compat.css new file mode 100644 index 00000000..324abfbc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextArea-compat.css @@ -0,0 +1,7 @@ + +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextArea.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextArea.css new file mode 100644 index 00000000..26e25f9a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextArea.css @@ -0,0 +1,18 @@ + +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + color: #000000; + border-radius: 0; + border: solid 1px #007aff; + font-size: 17px; +} +.mblExpandingTextArea { + margin: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextBox-compat.css new file mode 100644 index 00000000..e4393baa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextBox-compat.css @@ -0,0 +1,4 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextBox.css new file mode 100644 index 00000000..93dd3b3f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextBox.css @@ -0,0 +1,21 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border: solid 1px #007aff; + font-size: 17px; + color: #000000; +} +.mblTextBox:disabled { + background-color: transparent; + border-top-color: transparent; + border-left-color: transparent; + border-right-color: transparent; + border-bottom-color: #007aff; + border-width: 1px; + font-size: 17px; + border-style: solid; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextBox.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextBox.less new file mode 100644 index 00000000..5a7391c5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TextBox.less @@ -0,0 +1,13 @@ +@import "variables.less"; +@import "../common/TextBox.less"; + +.mblTextBox:disabled { + background-color: transparent; + border-top-color: transparent; + border-left-color: transparent; + border-right-color: transparent; + border-bottom-color: @ios7-base-color; + border-width: 1px; + font-size: 17px; + border-style: solid; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TimePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TimePicker.css new file mode 100644 index 00000000..2fa38562 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/TimePicker.css @@ -0,0 +1,191 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblSpinWheel { + background-image: none; + border: none; +} +.mblSpinWheelBar { + background-image: none; + background-color: rgba(0, 0, 0, 0); + border: none; + border-top: solid 1px #929292; + border-bottom: solid 1px #929292; +} +.mblSpinWheelSlot { + border: none; + color: #929292; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: none; +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0px; + border-top-right-radius: 0px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblValuePickerSlotButtonSelected { + background-image: none; +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: none; +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; + color: #000000; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton-compat.css new file mode 100644 index 00000000..cbb78018 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton-compat.css @@ -0,0 +1,42 @@ + +.mblToggleButton { + background-image: url(compat/button-bg.png); +} +.mblToggleButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblToggleButtonChecked { + background-image: url(compat/button-chk-bg.png); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblToggleButton { + background-image: none; +} +.dj_gecko .mblToggleButtonSelected { + background-image: none; +} +.dj_gecko .mblToggleButtonChecked { + background-image: none; +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: none; +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 2px; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url(compat/togglebutton-chk-mark-bg.png); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton.css new file mode 100644 index 00000000..473cd3db --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton.css @@ -0,0 +1,57 @@ + +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + font-size: 13px; + color: #000000; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: none; + color: white; +} +.mblToggleButtonChecked { + background-color: transparent; + color: white; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: none; + color: white; +} +.mblToggleButton { + color: #007aff; +} +.mblToggleButtonChecked { + background-color: #007aff; + color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton.less new file mode 100644 index 00000000..ad291cc4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton.less @@ -0,0 +1,11 @@ +@import "variables.less"; +@import "../common/ToggleButton.less"; + +.mblToggleButton { + color: @ios7-base-color; +} + +.mblToggleButtonChecked { + background-color: @ios7-base-color; + color: white; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton_rtl.css new file mode 100644 index 00000000..f6145188 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToggleButton_rtl.css @@ -0,0 +1,7 @@ + +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton-compat.css new file mode 100644 index 00000000..e74d47b4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton-compat.css @@ -0,0 +1,63 @@ + +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url(compat/arrow-button-head-sel.png); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-right-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url(compat/arrow-button-right-head-sel.png); +} +.dj_ie .mblToolBarButtonBody { + background-image: url(compat/arrow-button-bg.png); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url(compat/arrow-button-bg-sel.png); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton.css new file mode 100644 index 00000000..55102a2a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton.css @@ -0,0 +1,135 @@ + +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + text-shadow: none; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border: 5px solid #007AFF; + border-top: none; + border-right: none; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: none; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + border: none; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblToolBarButton { + border: none; + background-color: rgba(0, 0, 0, 0); + padding-top: 3px; + color: #007AFF; +} +.mblToolBarButtonSelected { + color: #C6DEF9; +} +.mblToolBarButtonLabel { + padding: 0 7px; + color: #007AFF; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonLabel { + padding: 0 7px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding: 0 10px; +} +.mblToolBarButtonSelected .mblToolBarButtonLabel { + color: #C6DEF9; +} +.mblToolBarButtonSelected .mblToolBarButtonArrow { + border: 5px solid #C6DEF9; + border-top: none; + border-right: none; +} +.mblToolBarButtonLeftArrow { + -webkit-transform: scale(0.75, 0.75) rotate(45deg); + transform: scale(0.75, 0.75) rotate(45deg); +} +.mblToolBarButtonHasLeftArrow *, +.mblToolBarButtonHasRightArrow * { + background-color: rgba(0, 0, 0, 0); +} +.mblToolBarButtonRightArrow { + -webkit-transform: scale(0.75, 0.75) rotate(225deg); + transform: scale(0.75, 0.75) rotate(225deg); +} +.mblToolBarButtonLightIcon { + background-color: #007AFF; +} +.mblToolBarButtonSelected.mblToolBarButtonLightIcon { + background-color: #C6DEF9; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton.less new file mode 100644 index 00000000..1c4b54ae --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton.less @@ -0,0 +1,53 @@ +@import "variables.less"; +@import "../common/ToolBarButton.less"; + +.mblToolBarButton{ + border: none; + background-color: rgba(0, 0, 0, 0); + padding-top: 3px; + color: #007AFF; +} + +.mblToolBarButtonSelected{ + color: #C6DEF9; +} + +.mblToolBarButtonLabel { + padding: 0 7px; + color: #007AFF; +} + +.mblToolBarButtonHasLeftArrow .mblToolBarButtonLabel { + padding: 0 7px; +} + +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding: 0 10px; +} + +.mblToolBarButtonSelected .mblToolBarButtonLabel { + color: #C6DEF9; +} + +.mblToolBarButtonSelected .mblToolBarButtonArrow { + border: 5px solid #C6DEF9; + border-top: none; + border-right: none; +} +.mblToolBarButtonLeftArrow { + .transform(scale(.75, .75) rotate(45deg)); +} +.mblToolBarButtonHasLeftArrow *, .mblToolBarButtonHasRightArrow *{ + background-color: rgba(0,0,0,0); +} + +.mblToolBarButtonRightArrow { + .transform(scale(.75, .75) rotate(225deg)); +} + +.mblToolBarButtonLightIcon { + background-color: #007AFF; +} +.mblToolBarButtonSelected.mblToolBarButtonLightIcon { + background-color: #C6DEF9; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton_rtl.css new file mode 100644 index 00000000..4273045f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ToolBarButton_rtl.css @@ -0,0 +1,18 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Tooltip-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Tooltip-compat.css new file mode 100644 index 00000000..96126fa7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Tooltip-compat.css @@ -0,0 +1,40 @@ + +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #f7f7f7; + border-bottom: 1px solid #f7f7f7; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Tooltip.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Tooltip.css new file mode 100644 index 00000000..94d235f0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/Tooltip.css @@ -0,0 +1,151 @@ + +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 3px; + background-color: white; + background-image: none; +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #306ea1; + background-image: none; + color: white; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #306ea1; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #306ea1; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #848284; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #848284; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #9c9e9c; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #848284; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker-compat.css new file mode 100644 index 00000000..2270a66d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker-compat.css @@ -0,0 +1,22 @@ + +.mblValuePickerSlotButton { + background-image: url(compat/valuepicker-button-bg.png); +} +.mblValuePickerSlotButtonSelected { + background-color: rgba(0, 0, 0, 0); +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: none; +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: none; +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: none; +} +.mblValuePickerSlotInputArea { + background-color: transparent; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker-compat.less new file mode 100644 index 00000000..04256bad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker-compat.less @@ -0,0 +1,6 @@ +@import "variables.less"; +@import "../common/ValuePicker-compat.less"; + +.mblValuePickerSlotInputArea { + background-color: transparent; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker.css new file mode 100644 index 00000000..da667e97 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker.css @@ -0,0 +1,100 @@ + +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: none; +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0px; + border-top-right-radius: 0px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblValuePickerSlotButtonSelected { + background-image: none; +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: none; +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; + color: #000000; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker.less new file mode 100644 index 00000000..942326f6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ValuePicker.less @@ -0,0 +1,6 @@ +@import url("../common/domButtons/DomButtonGrayPlus.css"); +@import url("../common/domButtons/DomButtonGrayMinus.css"); + +@import "variables.less"; +@import "../common/ValuePicker.less"; + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/View.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/View.css new file mode 100644 index 00000000..77bd5354 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/View.css @@ -0,0 +1,123 @@ +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: #000000; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/View.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/View.less new file mode 100644 index 00000000..910651f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/View.less @@ -0,0 +1,6 @@ +@import url("../common/transitions/slide.css"); +@import url("../common/transitions/flip.css"); +@import url("../common/transitions/fade.css"); + +@import "variables.less"; +@import "../common/View.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/android-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/android-compat.css new file mode 100644 index 00000000..0556de10 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/android-compat.css @@ -0,0 +1,1604 @@ +.dj_gecko .mblColorBlue { + background-image: none; +} +.dj_gecko .mblColorBlue45 { + background-image: none; +} +.dj_gecko .mblColorDefault { + background-image: none; +} +.dj_gecko .mblColorDefault45 { + background-image: #007aff; +} +.dj_gecko .mblColorDefaultSel { + background-image: none; +} +.dj_gecko .mblColorDefaultSel45 { + background-image: #a7a7aa; +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: none; +} +.mblHeading { + background-image: none; +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: none; +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 14px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: none; +} +.dj_ie .mblRoundCorner { + background-color: transparent; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #f7f7f7; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: transparent; + border-style: solid; + border-color: #f7f7f7; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #f7f7f7; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #f7f7f7; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 14px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 14px; + -moz-border-radius-topright: 14px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 14px; + -moz-border-radius-bottomright: 14px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: transparent; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #f7f7f7; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: transparent; + border-style: solid; + border-color: #f7f7f7; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #f7f7f7; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #f7f7f7; + margin: 0 5px; +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #3578b1; +} +.dj_gecko .mblListItemSelected { + background-image: none; +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.mblListItemSelected { + background-color: #AAAAAA; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: none; +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -none; +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: none; +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 0px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 0px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.dj_gecko .mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 0px; +} +.dj_gecko .mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.dj_gecko .mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.dj_gecko .mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 0px; + background-image: url("compat/switch-square-k.gif"); +} +.dj_gecko .mblSwitchBgLeft { + background-color: #4BD260; + background-image: none; +} +.dj_gecko .mblSwitchBgRight { + background-color: #eeeeee; + background-image: none; +} +.dj_gecko .mblSwDefaultShape .mblSwitchBgLeft, +.dj_gecko .mblSwDefaultShape .mblSwitchBgRight { + background-image: none; +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} +.mblDomButtonWhitePlus { + background-image: url("../common/domButtons/compat/mblDomButtonWhitePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhitePlus div { + display: none; +} +.mblDomButtonWhiteMinus { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteMinus div { + display: none; +} +.mblDomButtonWhiteUpArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteUpArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteUpArrow div { + display: none; +} +.mblDomButtonWhiteDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteDownArrow div { + display: none; +} +.mblDomButtonWhiteSearch { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteSearch.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteSearch div { + display: none; +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonCheckboxOn { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOn.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOn div { + display: none; +} +.mblDomButtonCheckboxOff { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOff.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOff div { + display: none; +} +.mblDomButtonBlueCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleMinus > div { + display: none; +} +.mblDomButtonBlueCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCirclePlus > div { + display: none; +} +.mblDomButtonBlueCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleArrow > div { + display: none; +} +.mblDomButtonRedCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleMinus > div { + display: none; +} +.mblDomButtonRedCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCirclePlus > div { + display: none; +} +.mblDomButtonRedCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleArrow > div { + display: none; +} +.mblDomButtonGreenCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleMinus > div { + display: none; +} +.mblDomButtonGreenCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCirclePlus > div { + display: none; +} +.mblDomButtonGreenCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleArrow > div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblDomButtonGrayRoundRect > div { + -moz-border-radius: 4px; +} +.mblDomButtonSilverCircleDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleDownArrow > div { + display: none; +} +.mblDomButtonSilverCircleGreenButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenButton > div { + display: none; +} +.mblDomButtonSilverCircleGrayButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGrayButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGrayButton > div { + display: none; +} +.mblDomButtonSilverCircleOrangeButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleOrangeButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleOrangeButton > div { + display: none; +} +.mblDomButtonSilverCircleGreenPlus { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenPlus > div { + display: none; +} +.mblDomButtonSilverCircleRedCross { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleRedCross > div { + display: none; +} +.mblDomButtonBlueBall { + background-image: url("../common/domButtons/compat/mblDomButtonBlueBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueBall > div { + display: none; +} +.mblDomButtonGreenBall { + background-image: url("../common/domButtons/compat/mblDomButtonGreenBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenBall > div { + display: none; +} +.mblDomButtonOrangeBall { + background-image: url("../common/domButtons/compat/mblDomButtonOrangeBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonOrangeBall > div { + display: none; +} +.mblDomButtonRedBall { + background-image: url("../common/domButtons/compat/mblDomButtonRedBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedBall > div { + display: none; +} +.mblDomButtonYellowStar { + background-image: url("../common/domButtons/compat/mblDomButtonYellowStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonYellowStar > div { + display: none; +} +.mblDomButtonGrayStar { + background-image: url("../common/domButtons/compat/mblDomButtonGrayStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayStar > div { + display: none; +} +.mblDomButtonGrayCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonGrayCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonRedCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonGrayKnob { + background-image: url("../common/domButtons/compat/mblDomButtonGrayKnob.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayKnob > div { + display: none; +} +.mblDomButtonGrayPlus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayPlus div { + display: none; +} +.mblDomButtonGrayMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayMinus div { + display: none; +} +.mblAccordionTitleSelected { + background-color: #a7a7aa; +} +.dj_gecko .mblAccordionTitle { + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; +} +.dj_gecko .mblAccordionTitleSelected { + background-color: #a7a7aa; +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.mblButton { + background-image: url("compat/button-bg.png"); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblBlueButton { + background-image: url("compat/blue-button-bg.png"); +} +.mblBlueButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.mblRedButton { + background-image: url("compat/red-button-bg.png"); +} +.mblRedButtonSelected { + background-image: url("compat/red-button-sel-bg.png"); +} +.dj_gecko .mblButton { + background-image: none; +} +.dj_gecko .mblButtonSelected { + background-image: none; +} +.dj_gecko .mblBlueButton { + background-image: none; +} +.dj_gecko .mblBlueButtonSelected { + background-image: none; +} +.dj_gecko .mblRedButton { + background-image: none; +} +.dj_gecko .mblRedButtonSelected { + background-image: none; +} +.dj_ff3 .mblButton { + -moz-border-radius: 2px; +} +.mblButton { + background-image: none; +} +.mblButtonSelected { + background-image: none; +} +.mblBlueButton { + background-image: none; +} +.mblBlueButtonSelected { + background-image: none; +} +.mblRedButton { + background-image: none; +} +.mblRedButtonSelected { + background-image: none; +} +.mblCheckBox { + background-image: url("compat/button-bg.png"); +} +.mblCheckBoxSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblCheckBox { + background-image: none; + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: none; +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: none; +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: none; +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 2px; +} +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: 0 0 50px #000000; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: none; +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url("compat/icon-content-heading-bg.png"); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} +.mblIconMenu { + background-color: #404040; +} +.mblIconMenuItemSel { + background-color: #3578b1; +} +.dj_gecko .mblIconMenu { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-color: #3578b1; +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 6px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 6px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 6px; +} +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #f7f7f7; + border-bottom: 1px solid #f7f7f7; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} +.mblRadioButton { + background-image: url("compat/button-bg.png"); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.dj_gecko .mblRadioButton { + background-image: none; + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: none; +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: none; +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} +.mblSimpleDialogDecoration { + background-color: #404040; +} +.dj_gecko .mblSimpleDialogDecoration { + background-color: rgba(64, 64, 64, 0.85); +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 2px; +} +.mblSlider { + background-image: url("compat/slider-h-bg.png"); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url("compat/slider-h-bar-bg.png"); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url("compat/slider-handle-bg.png"); +} +.mblSliderV { + background-color: #bdbebd; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #00a200; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -none; + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: none; +} +.dj_gecko .mblSliderHandle { + background-image: none; +} +.dj_ff3 .mblSlider { + -moz-border-radius: 10em; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 10em; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 10em; +} +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblSpinWheel { + background-image: none; + border: none; +} +.mblSpinWheelBar { + background-image: none; + background-color: rgba(0, 0, 0, 0); + border: none; + border-top: solid 1px #929292; + border-bottom: solid 1px #929292; +} +.mblSpinWheelSlot { + border: none; + color: #929292; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #007aff; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-color: #eeeeee; + border: none; + line-height: 0.5em; +} +.mblTabBarTabBar .mblTabBarButton { + height: 47px; +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + color: #007aff; +} +.mblTabBarSegmentedControl { + background-image: none; + background-color: #eeeeee; + border: none; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + color: #007aff; + height: 28px; + font-weight: normal; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + height: 28px; + background-color: #007aff; + color: white; + font-weight: normal; +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: none; + background-color: #eeeeee; + border: none; + font-weight: normal; +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonLabel { + font-weight: normal; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + color: white; + background-color: #007aff; +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #007aff; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-color: #eeeeee; + border: none; +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); +} +.mblTabBar { + color: #929292; + font-weight: normal; +} +.mblTabBarSegmentedControl .mblTabBarButton { + border-top: solid 2px #007aff; + border-bottom: solid 2px #007aff; + border-left: solid 1px #007aff; + border-right: solid 1px #007aff; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left: solid 2px #007aff; + border-top-left-radius: 7px; + border-bottom-left-radius: 7px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-right: solid 2px #007aff; + border-top-right-radius: 7px; + border-bottom-right-radius: 7px; +} +.mblHeading .mblTabBar { + background-color: rgba(0, 0, 0, 0); +} +.mblTabBarSlimTab { + border: none; + background-color: #007aff; + background-image: none; +} +.mblTabBarSlimTab .mblTabBarButton, +.mblTabBarFlatTab .mblTabBarButton { + background-color: rgba(0, 0, 0, 0); + background-image: none; + color: #f7f7f7; + font-weight: normal; + text-shadow: none; + border-color: white; +} +.mblTabBarFlatTab .mblTabBarButton { + color: black; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-color: white; +} +.mblTabBarSlimTab .mblTabBarButtonSelected, +.mblTabBarFlatTab .mblTabBarButtonSelected { + background-color: white; + background-image: none; + color: #007aff; + border-color: white; + font-weight: normal; +} +.mblTabBarTallTab { + background-color: #007aff; + background-image: none; + margin: 0; +} +.mblTabBarTallTab .mblTabBarButton { + background-image: none; + border: none; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + color: #007aff; + background-color: white; + border: none; +} +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 2px; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 2px; +} +.mblToggleButton { + background-image: url("compat/button-bg.png"); +} +.mblToggleButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblToggleButtonChecked { + background-image: url("compat/button-chk-bg.png"); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblToggleButton { + background-image: none; +} +.dj_gecko .mblToggleButtonSelected { + background-image: none; +} +.dj_gecko .mblToggleButtonChecked { + background-image: none; +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: none; +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 2px; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url("compat/togglebutton-chk-mark-bg.png"); +} +.mblValuePickerSlotButton { + background-image: url("compat/valuepicker-button-bg.png"); +} +.mblValuePickerSlotButtonSelected { + background-color: rgba(0, 0, 0, 0); +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: none; +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: none; +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: none; +} +.mblValuePickerSlotInputArea { + background-color: transparent; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/android_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/android_rtl-compat.css new file mode 100644 index 00000000..d43cf584 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/android_rtl-compat.css @@ -0,0 +1,80 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 6px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 6px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 6px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 6px; + -moz-border-bottom-right-radius: 0px; +} +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 5px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 5px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base-compat.css new file mode 100644 index 00000000..e693a239 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base-compat.css @@ -0,0 +1,467 @@ +.dj_gecko .mblColorBlue { + background-image: none; +} +.dj_gecko .mblColorBlue45 { + background-image: none; +} +.dj_gecko .mblColorDefault { + background-image: none; +} +.dj_gecko .mblColorDefault45 { + background-image: #007aff; +} +.dj_gecko .mblColorDefaultSel { + background-image: none; +} +.dj_gecko .mblColorDefaultSel45 { + background-image: #a7a7aa; +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: none; +} +.mblHeading { + background-image: none; +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: none; +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 14px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: none; +} +.dj_ie .mblRoundCorner { + background-color: transparent; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #f7f7f7; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: transparent; + border-style: solid; + border-color: #f7f7f7; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #f7f7f7; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #f7f7f7; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 14px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 14px; + -moz-border-radius-topright: 14px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 14px; + -moz-border-radius-bottomright: 14px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: transparent; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #f7f7f7; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: transparent; + border-style: solid; + border-color: #f7f7f7; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #f7f7f7; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #f7f7f7; + margin: 0 5px; +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #3578b1; +} +.dj_gecko .mblListItemSelected { + background-image: none; +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.mblListItemSelected { + background-color: #AAAAAA; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: none; +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -none; +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: none; +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 0px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 0px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.dj_gecko .mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 0px; +} +.dj_gecko .mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.dj_gecko .mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.dj_gecko .mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 0px; + background-image: url("compat/switch-square-k.gif"); +} +.dj_gecko .mblSwitchBgLeft { + background-color: #4BD260; + background-image: none; +} +.dj_gecko .mblSwitchBgRight { + background-color: #eeeeee; + background-image: none; +} +.dj_gecko .mblSwDefaultShape .mblSwitchBgLeft, +.dj_gecko .mblSwDefaultShape .mblSwitchBgRight { + background-image: none; +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base.css new file mode 100644 index 00000000..dc3e69fc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base.css @@ -0,0 +1,972 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; + color: #000000; +} +.mblBackground { + background-color: white; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: none; +} +.mblColorBlue45 { + background-image: none; +} +.mblColorDefault { + color: #000000; + background-color: rgba(0, 0, 0, 0); + background-image: none; +} +.mblColorDefault45 { + background-color: #007aff; +} +.mblColorDefaultSel { + color: #eeeeee; + background-color: rgba(0, 0, 0, 0); + background-image: none; +} +.mblColorDefaultSel45 { + background-color: #a7a7aa; +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + text-align: center; + line-height: 44px; + color: #000000; + background-color: #f7f7f7; + border-bottom-color: #a7a7aa; + border-bottom-width: 1px; + border-bottom-style: solid; + font-size: 18px; + font-weight: bold; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: #000000; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + text-shadow: none; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border: 5px solid #007AFF; + border-top: none; + border-right: none; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: none; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + border: none; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblToolBarButton { + border: none; + background-color: rgba(0, 0, 0, 0); + padding-top: 3px; + color: #007AFF; +} +.mblToolBarButtonSelected { + color: #C6DEF9; +} +.mblToolBarButtonLabel { + padding: 0 7px; + color: #007AFF; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonLabel { + padding: 0 7px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding: 0 10px; +} +.mblToolBarButtonSelected .mblToolBarButtonLabel { + color: #C6DEF9; +} +.mblToolBarButtonSelected .mblToolBarButtonArrow { + border: 5px solid #C6DEF9; + border-top: none; + border-right: none; +} +.mblToolBarButtonLeftArrow { + -webkit-transform: scale(0.75, 0.75) rotate(45deg); + transform: scale(0.75, 0.75) rotate(45deg); +} +.mblToolBarButtonHasLeftArrow *, +.mblToolBarButtonHasRightArrow * { + background-color: rgba(0, 0, 0, 0); +} +.mblToolBarButtonRightArrow { + -webkit-transform: scale(0.75, 0.75) rotate(225deg); + transform: scale(0.75, 0.75) rotate(225deg); +} +.mblToolBarButtonLightIcon { + background-color: #007AFF; +} +.mblToolBarButtonSelected.mblToolBarButtonLightIcon { + background-color: #C6DEF9; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #f7f7f7; + border-radius: 14px; + background-color: transparent; + color: #000000; + border: 1px solid #C8C7CC; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: none; + box-shadow: none; +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 35px; + background-color: rgba(0, 0, 0, 0); + color: #6D6D72; + line-height: 35px; + margin-right: 7px; + margin-left: 7px; + margin-top: 10px; + text-transform: uppercase; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #6D6D72; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #f7f7f7; + border-radius: 14px; + background-color: transparent; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 14px; + border-top-right-radius: 14px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: white; + border-top: 1px solid #C8C7CC; + border-bottom: 1px solid #C8C7CC; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border: none; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonWhiteCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: white; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 50px; + list-style-type: none; + line-height: 50px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #C8C7CC; + margin-left: 0px; + margin-right: 0px; + background-color: white; + font-size: 18px; + color: #000000; + padding: 0 16px; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-color: #3578b1; +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: red; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: #000000; + margin-top: 14px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblListItem *[layout="right"] { + color: #8F8F8F; +} +.mblListItem .mblListItemRightIcon * { + border-color: #C8C8CD; +} +.mblListItemSelected { + background-color: #AAAAAA; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 11.5px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: none; +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(157, 157, 157, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 0px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 0px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 77px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwDefaultShape .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 50px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwDefaultShape .mblSwitchText { + width: 50px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 26px; +} +.mblSwitchKnob { + background-color: white; + background-image: none; +} +.mblSwitchBgLeft { + background-color: #4BD260; + background-image: none; +} +.mblSwitchBgRight { + background-color: #eeeeee; + background-image: none; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base_rtl-compat.css new file mode 100644 index 00000000..37224447 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base_rtl-compat.css @@ -0,0 +1,42 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base_rtl.css new file mode 100644 index 00000000..6f05dfdd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/base_rtl.css @@ -0,0 +1,182 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -2px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonWhiteCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 50%; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: -50%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/common-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/common-compat.css new file mode 100644 index 00000000..258c495d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/common-compat.css @@ -0,0 +1,18 @@ +.dj_gecko .mblColorBlue { + background-image: none; +} +.dj_gecko .mblColorBlue45 { + background-image: none; +} +.dj_gecko .mblColorDefault { + background-image: none; +} +.dj_gecko .mblColorDefault45 { + background-image: #007aff; +} +.dj_gecko .mblColorDefaultSel { + background-image: none; +} +.dj_gecko .mblColorDefaultSel45 { + background-image: #a7a7aa; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/common.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/common.css new file mode 100644 index 00000000..7ceb1524 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/common.css @@ -0,0 +1,55 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; + color: #000000; +} +.mblBackground { + background-color: white; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: none; +} +.mblColorBlue45 { + background-image: none; +} +.mblColorDefault { + color: #000000; + background-color: rgba(0, 0, 0, 0); + background-image: none; +} +.mblColorDefault45 { + background-color: #007aff; +} +.mblColorDefaultSel { + color: #eeeeee; + background-color: rgba(0, 0, 0, 0); + background-image: none; +} +.mblColorDefaultSel45 { + background-color: #a7a7aa; +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/arrow-button-bg-sel.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/arrow-button-bg-sel.png new file mode 100644 index 0000000000000000000000000000000000000000..5b85b727191f818ce022963ae35ac867a44748b1 GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!2~3ezCWG-q(nX+O>#`7pEbC3~C2gnx`e?W-6sd;DNG h`p-V+FY`h+hL?$gfsgk~#{-RF@O1TaS?83{1OQ*9Jqi;2}E-=Gv^p4_82BkG0dD}nK?x>bEzQ^6#~&(!^*Xml|XW< zB?#?}Dr`vxqRJ`Rl~bxKTP)l5TDBdt>^o=KcdfXsr@C*-e+Gt@ww|889-#9_!DtB3 zC_ocAwR>!AXXPUU5@6Gd6y|hV7<^P|oU@m^w z+o31*LV}wAs7#i6`&n>lc`NZ>@sDtYeaw10ZFh0=Ku|Dxy85}S Ib4q9e0Qb`4AOHXW literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/arrow-button-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/arrow-button-head.png new file mode 100644 index 0000000000000000000000000000000000000000..ac78b9ea6d8cb644411e863fc59dc77cc4c61caa GIT binary patch literal 1068 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&q9v{oCC){ui6xo&c?uz!xv327 zx0u8jS*3%8s#Jgq*h@TpUD@w2@^W*t{(R|b0~F#c@Q5sCVBq=y!i-L9OlB}JFf#=B zgt!I;1_ebX2SsK_B?3`#RAzB(*}Fwsr5my?c)zJ9hlox%20)UB7nkKFHalU^D~61tRzsb$ zTQnnk6eFi-CiW;M0!bj6qnSC!FtNulaf)H)9Lvlpnwd)tfv6CO)*4o>wX6h^TP;Co zZ*pNva^;lj$`;GEy_RjqEc?z`_Fb#)oARH5p{K70=-yE<8UpkQf#ZkIT>{!Un zr_Th|r)}P@+RL_a{fu7Cq_*_kW=G%fuwv7BS9iZRGp!1#eIBv;(oeVWRWdK<&-4T4 zwx;mq-JuU_1-tH)tr7fmMXW}EEycgYYuXEyOdSvYkQSfYTg4PN8c%qm=kYkPO!Miv tx2|2bw`YnZzE%0ddV5{RPuYKYUzk^~wQ>))J$48bpq{RNF6*2UngCj=-Rl4V literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/arrow-button-right-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/arrow-button-right-head.png new file mode 100644 index 0000000000000000000000000000000000000000..cc92700bfd768d28c162840ba1258ce3b94475c7 GIT binary patch literal 1073 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&q9v{oCC){ui6xo&c?uz!xv327 zx0u8jS*3%8s#Jgq*h@TpUD@w2@^bU)&SLX&019yyctjR6FmQbUVMeDlCNmfqm>B|m zLR^CagMuQHgCet|5`m~VDzi8_vp74mI=isC7>Fu?sHGZ&daB!c{xke*<*` zX9^I_n==Q5mM&ceL~GZsTf24J*1h}o?md3&*zsfM&Y!z>{o1|zAUBVK(GVD%A@C#g z;76d#1WJPZg8!oeh6l>Al0dn3PZ!6Kid&%24c&W7d?*F{Ce=`J})2B&iTz|!N dU5NKaQkmvv4FO#pk0t)&0} literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/blue-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/blue-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3bd558b4503a413941bda4308355b18cdb617848 GIT binary patch literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@lxT@-M2T}zYGO%dex5=|W^O72 z`zPN@TdM2G>1n-XrRPM_J3}8B%wKr<6YJ%DRlm~TUVpE| n;Ksr#+y16IkJ0#pJ*WKbpZZf5%J=>N8pz=3>gTe~DWM4fgQq@D literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/blue-button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/blue-button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d371d899b709aa0c1aec94fba6fd6678604e41f7 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rt!7sn8Z@MHtc_~Qxp%NaY)8{a6KpSIzp#kqvLRWlB5%Cv8G z{j10Jc~&mZvZ=Er9A5Q!hZ#wT>7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-arrow-head-bg.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-arrow-head-bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..77b6e9e92d83309330cddb54aab0029007a7f1a2 GIT binary patch literal 316 zcmZ?wbhEHbRAG>1Xl7stPsllc{`{LaZ*JedJ!j2<%ay@^) z`om$g1oRjH5Xir zTiRXvB5YmS*JZMI!e56RNPo(wb|-9+Q%}d^rdXM4hJno!S%br7fBtylOuVyp-K(2w z85d`HSKIX7TJ@^0;^C=jf1=W!+>Fbf-_yIhA#WNxGl#t1AM?}g43o6|>t-f8FjxZs Dm5_!W literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..0d378fafe6e0810b460e00217f8d1313bb592a49 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&Kp|gG7sn8ZaNEPD*&Gx_94`L-Z!hkt((WRZd1vySgSi_mo^SYG zcRlLQ^EoxgCGy|Ty(YCa%uDmh98XQbWR;eNjt6^>Tefc%OXi8no)RP;R^hezy}_|p QK!X`PUHx3vIVCg!0Np1z5&!@I literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-chk-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-chk-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..4bfad0604fc6f28fe5a7a8ac905ee36624740be2 GIT binary patch literal 154 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&Kp{I%7sn8ZaNfg~d=3l(3IJGb!xPD++%E)qBgTbMJdR* ynA=-BTRPghn%!MJT|C^poZnwRUp{{S4@ONrkv#3!&({M@V(@hJb6Mw<&;$U)&L*h< literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d371d899b709aa0c1aec94fba6fd6678604e41f7 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rt!7sn8Z@MHtc_~Qxp%NaY)8{a6KpSIzp#kqvLRWlB5%Cv8G z{j10Jc~&mZvZ=Er9A5Q!hZ#wT>7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-unsel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/button-unsel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d371d899b709aa0c1aec94fba6fd6678604e41f7 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rt!7sn8Z@MHtc_~Qxp%NaY)8{a6KpSIzp#kqvLRWlB5%Cv8G z{j10Jc~&mZvZ=Er9A5Q!hZ#wT>7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/gray-arrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/gray-arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..c93d17f5e8826e4caaa59410f44992f587e9965c GIT binary patch literal 920 zcmeAS@N?(olHy`uVBq!ia0vp^oFFy_Gm!MTx5WfVv6p!Iy0YJ56626i(p>F!9;Bwg zBeIx*fm;ZK886+f`@_J%%n;xc;`*QAe?vn9P{}A54S^9D0^$4K$pF30SQ6wH%;50s zMjDVK=jq}YQgJIeAt50prGdfCO=9vy7qwLqa%_`i4XPRW)-hPVNm+Rm6k49HelF{r G5}E)#zA2Ib literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..8c3999b481570684cfd214c69b9ad3b8f0b33600 GIT binary patch literal 181 zcmeAS@N?(olHy`uVBq!ia0vp^j6kf#!2~4#$}H0cQlcfU5hcz=sfi_-`FRQURVm;4~`xQ`#v%n*=n1O-o0|+xZtudJa6g2j9 zaSW-rl{~{Zn@^aTnOWxlkI&49{xv@+HYhOooA85C{O~fqw*CMAojY>!RHu{j>B*gp YPX#27B`pZs3DnNu>FVdQ&MBb@080-zM*si- literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/icon-content-heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/icon-content-heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3daa1a81de8d9b80d652d39251724d4732b181f0 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{O!2~4hKV8-UQlcfU5hcz=sfi_-`FRQ3GDm;4Z)FMKwe@P7LeL$-D$|SkfJR9T^xl z_H+M9WCijSl0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=dY0 z)7O>#7Lyp8F|(vj+b5tEKU0n z{O-Vq?HAe}=5J#?ygx*^t^Q*h&wr&-$$#wGMti=BrdGUWK620D4eQZ)4!4}AJe+GS pu$ytCw!m(Njm84jj2jngFxaoukU#0P!VqX3gQu&X%Q~loCIH@wQK7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/slider-h-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/slider-h-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..970c7ff222533db100e1946ba372482f18e797e9 GIT binary patch literal 124 zcmeAS@N?(olHy`uVBq!ia0vp^j6lr6!2~3?S1^eIDVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfIAl&ht@uQ=H9oG@{#veKY@hJ=pv1i!$ U9d7gM0M#;hy85}Sb4q9e03$mdJ^%m! literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/slider-h-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/slider-h-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..0a08c5762e4e3a9350045171a8d3623c3a00b8e1 GIT binary patch literal 135 zcmeAS@N?(olHy`uVBq!ia0vp^j6lr6!2~3?S1^eIDVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfI`}yE{-7*;fx9l_y02-Ja~}d#EBCO=g*&KxOVj#!@WEA7@j_U h%JAmp8-_0*zF2G&$*8z8vlpn1!PC{xWt~$(69ANgD^dUe literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/slider-handle-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/slider-handle-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..1988f0402cfc0a8ef1e0ceeac8e4ef90ef809a62 GIT binary patch literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{J!2~2lO_g5*DVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfI<$QE{-7*;j9N4nHmHH7!LlemQ`%I@bPBaja`xVot7K@PTA9Z z&uXp7t6o7}O2*2J zngum=OY0iy8X6lKTbf$hTG~3=I=VW#db)c0diolsH1y8wozOR7(u7Ge+;f1ZzeD{A8h6j zmO7)bVIc>%f?dN5kBy6tcJaB^+&Hmu@$r6n2`(3gO)4jtdF?AAPHtLydb*r}i@=XW z<}7I6@f43Lxzk(8{JRP?%dU_M|^rq|CcG#NCG11+j%W#l^;TQwMNd|_q44g+e z87?pg9u*WnCN6kJQ0%Oj%rP0=qq^qD%xw^>tq19JDqlVpT-Mu89Bt z|1%6Sp!k!8k%7UVK?me6P@FJu{9~BU5u$Lo?O-#9uvW~84GRyqo26(7cwB5~FEZ^r&3NfDlrPk7rnZ3a`W=@^BtPGo~~qS zJiwteNh|i$mX(*62Q2m~t#W+OCK$0f>+Y$otFNz5I9zu0qlyF9#*E9WVrQGSH?Syr zoS5sqecj#N6`x<-trll%W>@>cCFir_LyWkn(iDR;I|?6*N$9+o;j?qo)6+AIv+tdW zG!{BJ*STBHcUO^+)Y9P9aci4Bd9Q6q&Mpf|Zhw1wNAc@>XLoOZe}C`XGYo!vc6@xi zb7q9Yxjj2S%X%uzdEmHr*VorKHfP^Ix3{`XK~kY{!3V#6dwzbt+MJSMAh-AT_jjE> z78@3||NZ^r^XvQP_wWDz|F`Hy24IL~JZR)ltGF-7U?bSvB;Y3TP>9L$!C`)hv=tBA zWXfJVY*%R8u~0yS!{h+B(y|qgx^(^}xG;*`HE`)RxwhkxfcXrS1|i=sFCOngrKY8+r>U*2t+BGPwzjsnxVN~rxVpKzzQ4Y~!NJAD#l^+N$H>RZ z%F4~m&C$-$($Uh?(bUz{)!5b8+S%IN+uYvV-r?WjFw$5@9gjK?(y{S z^#A|=A^8LW002J#EC2ui08IcJ000R70DlNnkRgP@g9sBUT*$DY!-pXFKnyIRN}Wozs@1Dlvud>p;zs}xEy9W&OSY`pvuM+*HJd`fffFv`%AHHM zuHCzM^Xj#`A^`&wdjks|OjvFU2M|`kSj@Pwfrjtjz=I1PPQ1ABe2W~kwY9Cqm8hahrjLjwk=5aNj_ zrl=x@G#~)L2|L6no7}O2*2J zngum=OY0iy8X6lKTbf$hTG~3=I=VW#db)c0diolsH1y8wozOR7(u7Ge+;f1ZzeD{A8h6j z){2>7(0rg>NvC0k$HqlRyCsa98Z;g?AMaOi?vnAmwAi_k!)sNH=cfaQ`Q?&M&GFp4 z?CfkqLl*%K;pOM&n{##qJVERF2ikU4e10anp>g5;{SEw|czt$kILIKar4e^# z$HvFUCrB&z`Rpu8Wsug$xOZmf=I7@ZSo%v8EOdHtd4;q6go4IHE!Q_BpPuKt+w2Xy zgha@Ov%9yyWl|Cgnc%Qz$H&JfCTr{4IViL}y|7rHU!kD6h2zHN?EB~T?*7ifr)I{H z7I6@f43Lxzk(8{JRP?%dU_M|^rq|CcG#NCG11+j%W#l^;TQwMNd|_q44g+e z87?pg9u*WnCN6kJQ0%Oj%rP0=qq^qD%xw^>tq19JDqlVpT-Mu89Bt z|1%6Sp!k!8k%7UVK?me6P@FJu{9~BU5u$Lo?O-#9uvW~84GRyq3y7WyP}s1Dkyq9z z>&}Udi;wp!ICshX3~X-f@>i*dIJs%*>FEZ^r{;KWe&)j`%GvPaz~<%W=Q}iW$$D*B z5x7W8fTKrY(aOuq0~UMD_1e1X>gsTPjynd6R$pJAaJWm>d)u0uo6`$zI43Zzy}iBQ z@xHT)3XU8?6`x<-J-vPX{rwHh++sY<2bqPNg|*|(L~QKl67({e=d*Lu12GAm7dOuA z-2D9f0_Scy-(6cWWj##h$DQ4^HT#lh#-4e;yT4_qndZE{XM5YTSN1?Nx4hq;9UmW` zn5-SY@9;^UXBQTG&tEsEll9e&&DrkrSPpT@JvcnGTi$=)o}ZszTwWc{ufohC^7`@V z`Tp^B6L@$ZT)%&Qe|?pbu*?Q0eipHe2aOzRD;_lQn7vrg>0hpiG(6)X(? zM|jK#0lm!C`)lWh)+a>1=!PsN3L}hH{TnfWid^{WB{b_t|{2SS-jIQgT?p pPAv1uL_NMjW-lgngrKY8+r>U*2t+BGPwzjsnxVN~rxVpKzzQ4Y~!NJAD#l^+N$H>RZ z%F4~m&C$-$($Uh?(bUz{)!5b8+S%IN+uYvV-r?WjFw$5@9gjK?(y{S z^#A|=A^8LW002J#EC2ui0A2ta000R70DlNnkRgP@g9sBUT*$DY!-o(RW>6roqJa@8 zGHTq&v7^V2AVZ2A`Ei7Sia#!-Sjn=b%a<@?%A85F=FAQi3!JdYv!~CWJP!zru%f8Z zqezn~UCOkn)2B}>2*kjms@1DlvufSSwX4^!UqSo`AfkoYvuM+*UCXwu+qZDxrVw!8 zgp0d)^XlEpx3Ay7fCC3!k$?dT!H5$pUYxjv0|+Z%NS;i&vgON|Gi%<=nX?NC6grC@ zO}cbx3>9RkUd_6->({Vj%brcUwhRm%X6W9{ySMM(z=I1PPQ3UG5*=tLU(UR_^XJf` zOP@}?I*k<`YG~iiy}S4C;KTNdA5Xq~jTIVfs9(>%z5Dm@+*pMVA`=%9oaYAB&L5Kz$uI~?lhqmV{g=nfm86u<{1WUA?=oObHzr=W%^>ZqT7 K5P(1d0RTJ8MQ*eJ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round1-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round1-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..1bc8a14a5f13420a610e8120baac85612fbbdf81 GIT binary patch literal 511 zcmZ?wbhEHblxC1-Xk}o?%*f2i&dJTmEyyn@Dl94~E~zN1sH&){uC1=AuBof3%bk*2 z+)!N7P*T%WQ$D@CYD!i0%<8JSRhf%2vzBF5FQ{&)Z)j?4YH4a|Yia9f>*(s}>gnp~ z>*?#8($_nqcS7HUNfRbboIY{Nq$$&;Oq(%n#;h5$=FFNiZ_d1h^A|2&w0OzlB|xxd z)tdkR|1*#d6o0ZXGBD^d=zz3>{KUZVk0F*r#^OU`yMTgFpF(5Pg2U~4c5^He4;^vo z67yfv@WR09XupEGvl_oA( zuaXxXOw9Hov8SfEw9V4<>Y3rSb=B3?!JIp0I54daU(Xd*BO$nG&CSgjm#5WgIjz0D zU0P>?hsXAHcXyYuo;iAYdp?7ZEEBh!&yEid7?gOl0Vv=UrMG&MsSv(>~vY#S+WdE7#LPEFsx%>*u=oFlYwC`1KVyk&h4E1 z8~FLR@pJCx6kI7NwMa^8rIg@SLBaikl3OKZ_R1)=DQPro=uObmo33X&$<}VRo!wkJ zg=Gp#yOb(TTXp%54a!gP>!p^Ve)FtD& zY01gS8va#31P(DV^-8dYNE9wwc6PQ!@vA#0H>aNy6lFN@B#7Y%r-;X7t=LmrR$g8n zFn1n9phGgFkmjbWyQj9UzP>);aF_4LWJe!CtxKz7Pj6d$dwap-Q=!r>3>Q>iY(cE;k+zP-P{e|UU)zW@HZ8cpUM4>p|N zzyJULw~2}qm`oTl9yBsIF&=b~kZC;9Ea0Z`utg*+<6*0W(+n4W7RCUlHib5gMIFvJ zTqiJ^^{jZ*rR-PO;Kn1c@Q9GfwT#ET7SC2Z?z4Hdf<=&r$F+e!@Jq&%i5}l1TKU!Z zj+UslM=qko-C3%@eCS>8!87b2;pUuozw({A`&;kR;$&#!r4AuZp C;S}`% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round1-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round1-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..f62342acf36b03962824e06603533dcb69d2e68c GIT binary patch literal 936 zcmZ?wbhEHb^ktA{Xk%dD;^N}r=HcVx6BHB_6BCn`mX?#1Q&v`1S6A26)YR3{H8nN0 zvb3_ZvvYKCbaQj__45r13W|=3j*E>;OG_&#EGQ{1DK9IpuC8uqXlQF|>um4r?(CjC zY4VgwQ>IRvI&0RfxpU_(TD)lK(xoewuUNZ!?b>x~H>}^VY4fHno3?D(x@G&0?R$6c z-M4?=f&B*#9y)mR=+WaRj-Nb!5(v(oItv6BFI>EO`RdgxS8rUqaqGsdJGbxLzkC1T z{fCbqK7RV>>GLPgUp{;J_T}66Z{B}=_wmbzFaQ7lXBav_@h1x-1A`lb4#>%%IAP%U z$I#0mV^MH`nM>9~Bj&`0g@@Y(l&$VKJZxlWk}#HXoZ#5PDXQz#CF8ki$;rtY{;LcW zm6(}&C0Jt&J}z2zcD6RG2WEI}U3GPJ z#OAEKr$pPjm<{cZNO*5sb8~aX-Q5+RU)?>ueSNF|v+#-) zjypCyJlr9y9d~BO$3zKkmaGDwotvJXZgrQCEI8Em{QLsvZaLpwTV7sXoXV5&fNAUN z>l>2m*D*RC;*r@={QBP6-P_;aKhXSrTcV?L-{TXLwd2q2+4=eTg}Lnv3m5PD`ufJ^ z?EB~T?k<04VDj&cg#W%hKR>^?ygL4TTx|!ZS;dL@{`>d+{r%(f>-+Wb$648pzbHIt zU=hoB(8!^-;z1MpGl7E)IzJR1wuppfJZzOnTk)_>{GLIBpxhsYM;$8DG9GnmEL-uY zOMRKb1SS&}#m7A+*D@aWT0C3vxX<+6fddXQe-1pJ;35{OBA_B5;=t)-^76^#05{F2 zQ$oTrmrgc1U^;=(gy-SY=?QI`&t{}d%X~J|`9(s58^;9&7QupJn$PEyT+4hux8jy2 z3$Ok`7Y9xU5yck^TEwzmEbLHQwPK;elm$-%cs5*c7I4DJ10*>a h99iYpB)nR=V%e%!tJZ8=^@^Qc)Zv4M8zUowH2^W3coYBt literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round2-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round2-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..7885243d63fc35fcb2840bbdad85612a06edd445 GIT binary patch literal 566 zcmZ?wbhEHb)Mk)oXk}o?%*f2i&dJTmEyyn@Dl94~E~zN5sH&){uC1=AuBof3%bk*2 z+)!N7P*T%WQ$D@CYD!i0%<8JSRhf%2vzBF5FQ{&)Z)j?4YH4a|Yia9f>*(s}>gnp~ z>*?#8($_nqcS7HUNfRbboIY{Nq$$&;Oq(%n#;h5$=FFNiZ_d1h^A|2&w0OzlB|xxd z)tdkR|1*#d6o0ZXGBD^d=zz3>{KUZVk0F*r#^OU`yMTg_R?LZlha5s09A0x?JUZMd ztmYGQ=fuY3<2~Zx0aGLt7oVK05xmOgW>U)0sRqf*QXD@vcM4e)zq)gB^Ye3jk}6(1 zUT$7-aUQ3KfQjRxm6w+XEcTjfwdlYB{@~47cV{WC=oV5w)Ftb^ZOzTiNt`=oI54ff zy*)#8%?|^mmb<$vKEJwq`g>luU@bE@-=2d^ooyY$+HpKi2NI7>P}b*hSk(OV^bF(d zduJ?*83gA#ck|7Cc&MFECTMls* z4)Du#Xvgc>G`2M=nt06j+q>)Q>l?-_3K0vLzrBC3F+|uy@ndt_x)+yM$DgmWZR8b^ z=Gk#!-@d==#Mx}*cQQ0E@-VPzJZNAM%3xs7+F>HV%pg$Ez{KjNv4DwPfPtZg%ZsIv XnM2^g!*+!>jzvu3GadvvFjxZs$9&|# literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round2-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round2-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..04177379283d27dc5ac95d3148e248648db660e3 GIT binary patch literal 883 zcmZ?wbhEHbjAM{yXk%bt=458(VP@rJWffrM6yfBMv=UrMG&MsSv(>~vY#S+WdE7#LPEFsx%>*u=oFlYwC`1KVyk&h4E1 z8~FLR@pJCx6kI7NwMa^8rIg@SLBaikl3OKZ_R1)=DQPro=uObmo33X&$<}VRo!wkJ zg=Gp#yOb04 zrX?pQYXq-~Ik{;`JHMii!h;oo4y}UfMX&Ch+`Rn!e1~Q(S*t}%46|am8Y~(Yt-QQE zV6oR+udS=DuJ-kB&^WM>p;IK`aF?w2wlz05XIx&T`a9XtS5WKGskz?U*WKM+@%h!= zYV!_;Ch;F!ay~mg#EIFksda2zwDIxr3CiB{e0FYndU|T3jX($E=I7@ZIM?qx$>o z*Q-6vrhH>__Wg5vcYlBX;PAz6`TQeZED}#HuZ}-2XET|PFK)|x|NZ;Q)kWCOSRC5F z9~e7q8V?#+#4;8%2JswVw>_;R*5tZ1rY(BmV<&GEgFwHRHkJ- z>eN`a;!&5n+C^qZhA9Ug^_X1CSls3O$8`du*_{`U`yHlP9A%U-bZ8OsR$2LEl8@QT zCzAu*G@nlK)N*8D_7HsFED}=o^6B&hEy-4XE2X2XERg{pU4#?2y;Pg(YvbrDCOa$g jGK);e!lUzQzP)@tzkyBb#e$Z1k*w^(Q+5VAFjxZsR#zX| literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round2-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-round2-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..2cf12605fe9019ff998e8e3d499b59f87bb71478 GIT binary patch literal 974 zcmZ?wbhEHbjAM{yXk%dD;^N}r=HcVx6BHB_6BCn`mX?#1Q&v`1S6A26)YR3{H8nN0 zvb3_ZvvYKCbaQj__45r13W|=3j*E>;OG_&#EGQ{1DK9IpuC8uqXlQF|>um4r?(CjC zY4VgwQ>IRvI&0RfxpU_(TD)lK(xoewuUNZ!?b>x~H>}^VY4fHno3?D(x@G&0?R$6c z-M4?=f&B*#9y)mR=+WaRj-Nb!5(v(oItv6BFI>EO`RdgxS8rUqaqGsdJGbxLzkC1T z{fCbqK7RV>>GLPgUp{;J_T}66Z{B}=_wmbzFaQ7lXBav_@h1x-1A`lb4#>%%IAP%U z$I#0mV^MH`nM>9~Bj&`0g@@Y(l)dJxC}3`7XX41ZlfmN1Ca4y&MZ$B_l9Q7)f>*_y z+_Z#CSjkA?!HU2Gtit+5ukM`Oy!`xphh{F>tVc`?v)s5!G7Pt@yu3W1dE1MChU7*; zgH2g?Pi0F7?FEld&Gi=7>*`@PJTT+n_VxGoH!yR{ z`Rv&6@Sp;lT0r39jgOB{Q1+hZvvbqa(^C_51XeI^etv#|bG=+*$^lO46~U|H&hFa! z`uc|C)6;a59hk*87r(xDHoBabLn!Tmgx{VWA0MBXtQ~)DPi3*Rn8}kFetUO)eSKqd z_Wg5vcYl{rbolo|!hheMpPye`ULAja-`;9j1Cuv1{P*ws`}@b|*Z0rw-~V4$(Ik?^QfW7&#F zT{_!dJnA+$RB@QWt>VMsUW;cd9{1UNd-1s6flV@ni%HYLS-?YW<&#N1W-p&i4sg>{ zonmcZAi!?#v-0V*m@-LK0Tlre2TrFcna^fsEL-_(R?fDU&t_+zYPjyecERAt+=^!_ zpU=^*m( zTCY|tnU?ixr~QwFep6&^KYygh^8-O_?@j+Vq*zXH1(hYsRcOv*!H&|DORHQ2fcl$iN`M zpaYTw*~!51kHOHT!C}LKgUuYmS}g*M%&gqvN?vn3HZD5aEv}`oBVpm<O;XiB5flW(KPd7+Dm9w*G+1c4f+z~SlY+inTzC$zD+m*#DE-rTFjF@m>%gW2k z0~UMbdM!9~Wp%{zu-*e(S6^SBaJcKOSHhtin=_72i#@UJ?V+uCkB`Y3JZ!wXyW;b! zyQjbF-QCx~{9V-GVB^EX9m3jiXMSv8;OtfQ&ik{Y@#*Oq#@YAI{M^*QG1s~K-Jh9_ zFE6hMULAM#SINt382@ItH$VTnw8S7}Aks(a>ww z(`(by>(bNf)zh1(r#DTH;UELUF$RW{3=C%(I8JdeTwoA9FX-Oo?$PbxG1ntvRYb(P zh=`355!)gnc1A?(jfgl9@&EsS2HF6{pDc_F3`z_-Amc%PV&M44;L6hAuwlW$W)5Mk zm=hZoI=3^rFbEhdSah^o!Z_>BiH(bo_sjDpL^v#1a&odp@T!=To0guQZopZP5U^m` z+1VDwukM`Oy!`xp2ktXA4qH}ST;0>{r?>0h-BZWREhiJ6({i{&SUc{_ zj*X9xPf+&m`*85!lhZSdv-@HyH$OkWK)$|0VAqz+^NUqi#GT!>_4V})$*1S}?%vjN zWn1yTcZ_m%qFD|c+KfiD9@9!eV4$t@Bzwht2Pw!vfKObMq!6C+?@t}c4EaO2VhuVq< zO*~N_;+qBBG#<8aw=HmB6-it1u#G)#K_iD`j>4l3m1!A|IyIK9c+{n{X+|RlBO`+~ E00*Mt)Bpeg literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-square-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/switch-square-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..0c67709cd98d140ddebda9d6bc80de8c17ad6a7b GIT binary patch literal 686 zcmZ?wbhEHbjAM{yXk}n1DlY2k=<4h5n>caelu1*jPMtbq`ixmKXU&~EcftGxixw_g zx_IfbCCgSUTd`)$PAF57&!hhgtKHgY*=uxnL}7B=ER1D&h3n03>69s7ai@E zFwVMjV&mfD{qo8p0tO40oSdu?yej78rlqH+8>qWT2y9+9j;>w6Py>0F7 z?FEld&Gp{CE|xd*{j0mDx98v8BE!Tj=d)wO!^0iI+Hq%Q9A;teRra3eQ~9xlS=K1~ z-kF`7pPygg+%4z3>u@Unis038XLoIVeSJgn>3MG(4>j`dD1LqK?C$OF?;mL9mjAbq ziAmtZWbOEKdv<<)eqpiqe7-{!9j|X}&c1(c@9yvK9~?f@&0oma*zx(r<<;@$_wD`t z{lnwa;*E+2JAVK8{QCa+{riCd&ZhBzLqfyhP$P%hiU&2QMbV{jmJGE*D@aWT0E<0V&hrx;BmhL zo92@VE@GKaCVHrK9%AEJ^5Dtj05{F2Q$oTrpH7WPn|X+hcg2IJ(-Yb>pUp^_micUE x#?|`DJeyr`Omq264T}v(qKA%_f?d9|N4QyI37Bq`(aB^U<1^|$$Q~&?~ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..548ef738d7f98d2439e31febb5015881d3e17ed9 GIT binary patch literal 277 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bU0U})u`hX;ZXo+h?iE~kEVo7Fxo?NMQt`H&hB8B1!Kq1ZokH}&M25un`X1sK_?hjCKvZsq{csW`)BpDi0rbra>d&xmzFeEwzFK8GmO)i zF8X86X6F97)#bB!_CK@H^f%qCKX*>0q}emE9M-2BC`?)& Q40IlYr>mdKI;Vst0B_@FYXATM literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-orange-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-orange-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..56f555bbe2585be929b0330faf82e029dbaf519c GIT binary patch literal 197 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bU0U})u`hX;ZXo+h?iE~kEVo7Fxo?NMQu3#ZiPSbDK-GM@!1s;*b3=G^tAk28_ZrvZCptGloV@SoV zV!Z literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-seg-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-seg-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..7871ed1f4cd895931d2d412164a2eb93f55ef487 GIT binary patch literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!2~3ezCWG-q(nSx_+5YN znW(g5%ePL8Je~e#TX%^d2wZgCzw@z;+@#1wOFoC3yySCId}ojj_fj3NrCQpmA&x7Z z*P5($%e=n!Qm)m~``=Do;PtxWntG@Il!*G%1exB+g=TukuI`X5f1GI3JN=`X-LdOG aZpyPtx)wg#$h#Zp2nJ7AKbLh*2~7arfkvAE literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-sel-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-sel-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..c4540887f383575e8a29021189920b01cc70fe7e GIT binary patch literal 286 zcmeAS@N?(olHy`uVBq!ia0vp^%s_0Z4A6R$U)->^EbqO&e)CyQw1o2}kAFumdH38f cIQx-BX5P_?<+pEX0^P~r>FVdQ&MBb@0H}p-mjD0& literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-slim-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-slim-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..f982afb761ae3b230544c11e5b042862523e7cf6 GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^Oh7Eh0U|pOL`()!MxHK?Ar*7>9%STV5M*FD__xJF z%`NF~<3G*LEl>%>?RZ@O1TaS?83{ F1OV6dAQb=r literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-tall-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/tab-tall-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..50a237196fd797e2c2ee32fc032f38555c20780c GIT binary patch literal 161 zcmeAS@N?(olHy`uVBq!ia0vp^OhD|w0V4Oi7>WR?3{Mxwkcv5`M_u`t7#Ua&9-Djg zZtVa6wv*I?r$5rRd$jh8kpIVkUEQ-Ug~l9-e5ums#lA88R_EFq8f%YwWon8gtuql0 zUfL<4-FqZ}XA0NF@K>GdUTAD}^IJGb!xPD++%E)qBgTbMJdR* ynA=-BTRPghn%!MJT|C^poZnwRUp{{S4@ONrkv#3!&({M@V(@hJb6Mw<&;$U)&L*h< literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/togglebutton-chk-mark-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/togglebutton-chk-mark-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..2262424c3d3f2697db4434de34b06db63eae08fe GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CF!3HE7boT!OQk(@Ik;On70_G;E839=yo-U3d z6?3KrIPx(la5Vk8` qe{1rSOUteOu222(^7Q6UD>$Y5O85k?&7OV~WV)xTpUXO@geCyFl`csD literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/valuepicker-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/compat/valuepicker-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..965db4bc4f83b730611ddf532a51bb8c1185705c GIT binary patch literal 246 zcmeAS@N?(olHy`uVBq!ia0vp^!a%Ib!3HE36knzV5rDrop7CM);{ zD@15Aq%b#u)U%g(`ns~;VdLlJ;61SW+Y_KrsHcl#NX4ADQx0-67;rH2irlS_oWIPN zqmttlgZrM26F##t;zCzOe2dtW@F=A?@d;OYxm4{9v2>gC+!>u#$0gQ8^BYH)zD?hdapQ18-1g>!YpS@L zGoQM#P2RMX=a}khiJq=$h7!;8(+o~TpI9(|cY~vTx?OYJHygIQYj*PNnprGSVw7f_ zvHUz!^4cvkd1kFNmM{rkW}KnopB&&n>(qjI7OjrDiAD@!JeueI->Uxsx{1Nl)z4*} HQ$iB}-q=fn literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/compat/calendar-datelabel-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/compat/calendar-datelabel-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..bd89c1d921530bdcef4fae63ff6aa1052cc8f8e3 GIT binary patch literal 144 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfw!2~2@+FN~r6id3JuOkD)#(wTUiL5}ryQhm| zh(tK=VN1Ry1_6cxfB#!+c<5+oc!W4iaQ1VxJK|#`=;^ZL-kCGHdwze&%uIcI`q;JY rbN4ncmRC;~4>vF0|Ig-6^)c2PwGvjn+NS0}BN;qh{an^LB{Ts5hc+$R literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/compat/calendar-month-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/compat/calendar-month-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..cfc5a647321e3d033300e8480a8008f083473234 GIT binary patch literal 186 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{I!2~4r?VV-=DVB6cUq=Rpjs4tz5?O)#LQfaR z5Q%WsgS_lah71i4%Xc z!!J*j-M^UEXR=!MbK2RIZA;|zC3=>H{GAnNs`A{&t5ZTbHB!jwK(&9Mh{f{_*OGc1 hvwMTMG*z8C>}NEIHfsq4=>sii@O1TaS?83{1OPVyLJR-^ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/compat/calendar-year-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/dijit/compat/calendar-year-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3e279013e768de27e82d3ec323c54203ee22a1e2 GIT binary patch literal 177 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{O!2~4hKV8-UQY`6?zK#qG8~eHcB(ehe8J;eV zArj%DM+4bg3>Xf4{C`@aS|XW0`AuR^?ZU@>i!{0x&Dk+W<+XrrL|IOw5nX^-hbde_uGAbAKv%(Jn!?ozYp(BwYR-}icf+M005k_FgF1o zSu6l>O!+tNBk!V|rRkA5i7>P=1OV7$BX&@YBQ73p3JrG*^$(BqLBauscS3#P7c4@2 z5O6Tu=T3B34_pTT5IkXFV(1h#vHD^mQ^th<)scXL_!iV$Xqnj>``k9@6%98 zfiV~-B@(fBi*f6Y4w;@TTQL?d^(Eke|I&%IpPye`<)m+v$ZrB#?#8tr|2O7c9#xqs z&+g*(VQ2o{ZJu}T*cByx|I(No*wKZ4qj>Q0#>6@RrP#*dKFmmmlO6UAHd@&g?r%0W z8EOT;OGs>9#an9%7$>|Flr3P!7R2wk`W+tpnxXi0nOT(%1%@0{%uAzJ%F%W5eq12~ zp7yI*QEKTK8A9vhwM%MM^qq;O35dfT_dHQ;xi9h(I5jVruBN6Y^6Q6p`6qY;b@bHL z2dmb!M0s$MhY!RVd&Frvot{)b6B9hUKHa20azLU!w3!5oz9bKHOkB3o`4K~xdP)jy z`LXz|s(G`QNnIO7&&sPRvyQS$>_{utS(3d((>i4KJhGi?-LRhQOMVd#IyLmsS&E@H z`xDe)ef#JsD2dfc&QeIIA9=TCIoJJINDmsf(E&W%>6XcOZZ0J6FX~+5JbFcvdHhc8 zxE+6zk*V)5Fv$+o-dHjkB!_*KtovT=KXo~mO0ZXPfHfO?uPbT-!okE(`pX6T>RChOe;SLyDQIG}6&max@lTZ(d# z3DIpP+fMJxDM3M1Ocdk=MW;Q{DXI5$S-^p1ZsbF*A;ZX76gEDS-=GC+^$^DQA90|C~(&5XV-Nj*FB6^Sg~gqk?Qe#TVIA| z=&_^Hx-qXm{1bQ=ul!D6b@t7}ZzCfkrz*UxqfSphgLcj-xm0?@F6Big#B46~RJeKB zFL<0()iAkjrqdFwHM6}kT9u*jZvUlQ1#D>Vc9?81$iCVHbyoW8AHHNK#b2v^_^V6X zKN{wbH9bxHtFxt+;bl~9{);6@HDfM+YvQH2LDXh*QM0?lu6+X3q0y4>ne(iTjg5mY zso2%G-QC^N4_3#*kV^x3*==oYpPoE@?;4rVVxlOe9Uk!c>s*^(P-?<{k6eLH#C&_I zc>JzXM}a37sS%#jJQobY7RX0l?>L*}y4PI%rmBk57BX4q`EU`B=oKdC_uOfYp%2)H zpEf*w4RQRk)7OKa9AL)zTbft2w06(OUnhO1`@Wff$+*KGDFe~OP$3GPVs=U`q;t*! zwD>}lx{s`w2>PMILFJ92=PphjP)H!ziQMo9;}-4i&B7>i%3%Du)iuuh=qI+hH#;Ia zxRSQVwLCya(w?tVal%T|!JkAjZLUYS5~Q{3y7)Y0iE<06p%X!>XQy^Lco^k{{ag~M zd*a%(#3$Yk^X=WNn_v)vCr+!A- zq0Mu;yHltcjFJnML&5s_`nKi=#G+6rn4O)Fei+cP+^M;xMUPX8gKe7KzD=*||EX)x zxjd9k^)S?ef=9i=r$Ikk_h}88=P4CdHCZj3LTwekEt+4zIyx zglB;}LT`u)PkyZD`&O=;49&}~$l7er2%FysZ3x+bYPqGyi@uisW8=i)iyC~t+O@Xb zUsSis-FtM_={J?R+fhO-!|i+`K0{+9br8)v^ty-RR1UwPZyykxXxfvGNl*=#cZ7jGiG|c|D10pCOqd{x#8q;XPr<@#Q3U+{0buDH;$y7Gk^MP~dU`XuMq!v@9RaQ$(_F+3h$S z^%mT6Z@N>tjxS+VE+K(p>eHcIffTZTZfY@sDHb`DV5-1M%cM1~$TExV zD1(~anKyqp)GrfQppHgQ!I0YsUsI2vr3k~*Iu)FQ@*5@Ha<&T~?0fuGZgH0bB09xs zuti^AUm9y!nzoqA4xWJ7$>m;%SP9r3vh?oPVE6y6rO#Pekv#YN?{VziUy^$XU`lUZ zneE~-dK1|2+~uyrYIE4fPG^*{MOkrK4?djjb{RYPmjU}Pyay%?sFsiQK9OWJ7sgxX zKC4guZXV_uHk>Cw(FQV{NMc?tIzB~rF*xATD*|C)cV`Du(dz1zf8Qq)>eFi9q(mkr z4=@J?Y#}6;NEW%lr!6@om`xtXFqe30##bXoQLG-_S`B&&AU1$zp#jqNwzL(kGZzFXRx!{*~KWLa>&UW$tc<}*`pCjLLZLsAPRCabYkeRO=Yl+Om0Edxp@2y%^N{7CTUE9)uV*+8mQVYl1&`mf5*vl=*0=W#+)C!^bv`Vm-6 zg}*bcQb9Fv^13rwd<`-Lby+aBX;D^utis`Qse(=0_qaF2Y!lUr`X;(#R9S4IM4kAW zYXw``nahQ3^->*@it%TJM_FKZR#F^(V27 zB_mggwrPa0iU2y12@1~aI~5I9r*Ly~8#z~3hjb!=d=>FS$NEDERh|ZEHJ7T=#ylXl z3PaX4PcUH?X%3CdtGG@rq!3mT`4-DBfebf_6{YdEnr{yKuyE_KE|wI&@-r?xH- z-8mKN^-{N{YT#CF8kn`J&2y>|x1xD8h9;Y%QI3KUhtE(;1E$*LrG#Ws)1s4^T>ocj z-%yh%EahCmPiY2JGhbK%tU>9Dh0t?VGJpRK6J9(wH)l_0)hzim0$OrKyMM+#g5IC~ dDt(L_u;)qmKAq<-d-O8`EKF@pDvi7o{{_Ck0iFN= literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/images/thumb-overlay-small.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/images/thumb-overlay-small.png new file mode 100644 index 0000000000000000000000000000000000000000..b6836d967b132a52b84783cccb5f7678201faa71 GIT binary patch literal 1549 zcmbW1`8(7J9LI-TjjNT#=vGKr8Q%;=j!>o<$GES?U^0{J#JG1IsTt8uDwLyKgF=lQ zVO+B^?lO+Sx_7BTBUck6*G~R}-5)-$_w#w)KYgC(^?VZTY%WWKmBAnoNZR^}1xk=e z!DLE^3Ag}lRTqSazZudD1RDB_ZR-jZ?2r&k*ANH7^^kB(FcxIyNASTOw+_VkV^LU) zUt~}x)(8X=&9SyHbBq{Wm|$J?b&(feUf0u2>h9o*?Mm~jV@>Z@4Uu}^X602` z%+=k`3s5B0%@zIq&dWt~A~oKi?m$6SlDpj1y!7Jq8^{Yt!2K)tQ{ymkI$Afe*{0iW zZhYx>_ivL%;*$x)C3?nfy%KI6cshp!26DGyI3#BaxCntjB6Z}!^R&AqXDn478Ngo* zpa+uC{ii2L*ZU)sC|2SMii(W>P-7iD6hAgL)+i|{DeLU)e6)|1GeuepGdLU*8xX*y zuB-(0)M_e2X=t0HL?W@$KR9^Rw{ADJ&2}=us-gReC5q7$Z9BDz;s zq2U`{lOzSf^}k_4L%#`4B%Hd|v^AMGF)=ZMP&?@NbW}E=(pquG%gO23g9i^5t*Cv} z@^al$S1ou-XbfYD((1$M??>(K?Cfx9+!(8Y@#$U#stjd`UU;HgrawJzB`H0nSm?+F zdHgBd?cG!m) zXL)KEp)@zr4V%<80-w1^QEU|&RyW1Q5pSGPkCo(mc@p#EpBMwkT#>`=c+IEX+hojp zT;|$iCMj;SVYYK7PPW=_Me_)s-VLln!y%M)?Uw2<`sX(o2vKjcn8}-yZ0y3T_npDX zZCQ>|JrV>`lg3t&XAP&iaT~6g29JsI)>4vM6-VDAh*jtt!I(n3m%WBf3jCrdwAm_Q z!-2y~%OwNi+Q4E>O$|En+_RJ|X0xd+4qpT&nVY=sSZev_Y}ua`;iJQ+MYpSRHqyu! z2jvpN*|%__WZdQ|IG^KWnWh$r*84dmf$?qFV!_-RJCyyQL>#t5fO?12KbBK!aZ2{$ z!{T3P6v8?`3V)fRxf}rPiPw8z&r2~tWY0?>X`wwYO)vfTx@uR|-D_&UMRYCf`NrqW zjOB(ecBgSB(VEY=FRLvFm=xc!u#9)+)f3>w7DpAJx|o;5W>Ny(oQqwxf|sg5YxSQ| zyaBM3BABG5D!)$tc#~L?VU@CRQ-6~`Jst01%b>E?@1zFunVXEXPQR!Ql83!wBSMdf zbaNW?IsZJSp|bK|R(d)=mrC{hgA;2{%Yt_eRiyPrv3hzY@3s0&af0bo8jTkJ6i;5y zrE!fSvk_{H3xhva{0*WcD_`)>LDrTw7BqA3_M2bcb1Or&;QZ#{p(i1`zP=ZSd5RIZHAW{+_p-EK; zW$7JU*L0sl;?(UD9-I=>T-uupcXWpB6e|)}=c-6s5TtqP-5$uY2)d+8Wuk_m=7)9Nt!qfK?!@du zU0K^Z>djYW>y@h}WQo?Bqz{?|>ynbQNJvjrP+$^EBe&~379Z;fYcioaj2P(I6u~58 zCt4y`a)C`oWG9xX-8)!Y0aBFAmsJ*&;+ehN$bub#X)VWDyqd5S(?J2_B>$UvJFUVy z%>yN|?IG;OM~->0ZB9>*`G8B*x%wMAtFKd4CF4~JHDlZ}CC-n8THn$FWRL?wGcz-6 zE|)twwph3g3sw*eQ^HsT#>aOSo!XmErf=?}fY}+(dvXWH-2r9>` z1<>nm@Fe1`h=>gxV)XTSM2GXJ8}y!poQ22uV52RpSWHQ^Z>kHA-+oty=vr)m5R$|5 zv`>@<&}T_iE;k!~{=p;r_|V33TKG|_2wb1Si)vY@opSSMJs^~nz~hTz%7W0l;Q!l`y8qv^f9YL6xK|dt{5x`B zH5@fUrBdMq!`~UN-V{HudV2I@1)BF0;7iJvI11Z(k$l#ofAZ0@Y2mdH2YPyXy5r}q zj-hDoB$%I?cG5IEFK_QtcY>(n603n;$V*mPi31~DAeKqtZkXa~{kH5^`5#Ml!2lWn5|APJ%i$`u!ADf5{eiv20pn*dit1L<;VbR7B1~<= zM#OAmu7TB01WL1B{hL${n^*fW11dUr4S4L~%?*}6M5WU+dalRoFB{i{juUmXK7IZD z5Z@`WjC`Ys-CYv$PB>!m8x zd2KnKB`cMWFZw$Ri+608F01F~-eH7!OCzqNsV$xGyB&g>bRxfIx7y`b zR|}1y2T1B>^kzA9&sOU_`Cq^Ca|kiG04;8-WS76f{0A?nPuyXH&K~Xl^KFBQXb&vn zqO#w80{B0S{fmja|FZ|V@J~edcl`s~{qXuXwtwRNmJIk3$Q5Q(3_yCjvunTWajOmv z6kCd*-skJv%g7|)zdOVe!D#LMTMedRugoabN}hRM=~yj|L3*EDdX{3LW)M4=`+ZJe zwt^~~K6OyFcyytD=G=;cP#h4kR{}8-HO61Kh9ED+2`eN^O>yhXql(`KFd*|f4JohX zWQ(ymqa-Y%df@a`4>1i!;yCdNd@{Pyx*{ZwO8U*}x!1E0YA>rX)fAlxi& VotbGLx&N#|HWm)%RhPU8e*m0swgLbE literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/images/vseparator.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/images/vseparator.png new file mode 100644 index 0000000000000000000000000000000000000000..c6f4f8c2c29078316d9b3485809d325f71ec903a GIT binary patch literal 160 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{G!2~3?tYhc}2^0spJ29*~C-V}>VM%xNb!1@J z*w6hZkrl}2EbxddW?ry&{fUZZ-KpDF#nhKbLh*2~7Zdl_~oG literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ios7.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ios7.css new file mode 100644 index 00000000..c6e551bf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ios7.css @@ -0,0 +1,5750 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; + color: #000000; +} +.mblBackground { + background-color: white; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: none; +} +.mblColorBlue45 { + background-image: none; +} +.mblColorDefault { + color: #000000; + background-color: rgba(0, 0, 0, 0); + background-image: none; +} +.mblColorDefault45 { + background-color: #007aff; +} +.mblColorDefaultSel { + color: #eeeeee; + background-color: rgba(0, 0, 0, 0); + background-image: none; +} +.mblColorDefaultSel45 { + background-color: #a7a7aa; +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + text-align: center; + line-height: 44px; + color: #000000; + background-color: #f7f7f7; + border-bottom-color: #a7a7aa; + border-bottom-width: 1px; + border-bottom-style: solid; + font-size: 18px; + font-weight: bold; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: #000000; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + text-shadow: none; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border: 5px solid #007AFF; + border-top: none; + border-right: none; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: none; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + border: none; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblToolBarButton { + border: none; + background-color: rgba(0, 0, 0, 0); + padding-top: 3px; + color: #007AFF; +} +.mblToolBarButtonSelected { + color: #C6DEF9; +} +.mblToolBarButtonLabel { + padding: 0 7px; + color: #007AFF; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonLabel { + padding: 0 7px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding: 0 10px; +} +.mblToolBarButtonSelected .mblToolBarButtonLabel { + color: #C6DEF9; +} +.mblToolBarButtonSelected .mblToolBarButtonArrow { + border: 5px solid #C6DEF9; + border-top: none; + border-right: none; +} +.mblToolBarButtonLeftArrow { + -webkit-transform: scale(0.75, 0.75) rotate(45deg); + transform: scale(0.75, 0.75) rotate(45deg); +} +.mblToolBarButtonHasLeftArrow *, +.mblToolBarButtonHasRightArrow * { + background-color: rgba(0, 0, 0, 0); +} +.mblToolBarButtonRightArrow { + -webkit-transform: scale(0.75, 0.75) rotate(225deg); + transform: scale(0.75, 0.75) rotate(225deg); +} +.mblToolBarButtonLightIcon { + background-color: #007AFF; +} +.mblToolBarButtonSelected.mblToolBarButtonLightIcon { + background-color: #C6DEF9; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #f7f7f7; + border-radius: 14px; + background-color: transparent; + color: #000000; + border: 1px solid #C8C7CC; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: none; + box-shadow: none; +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 35px; + background-color: rgba(0, 0, 0, 0); + color: #6D6D72; + line-height: 35px; + margin-right: 7px; + margin-left: 7px; + margin-top: 10px; + text-transform: uppercase; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #6D6D72; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #f7f7f7; + border-radius: 14px; + background-color: transparent; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 14px; + border-top-right-radius: 14px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 14px; + border-bottom-right-radius: 14px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: white; + border-top: 1px solid #C8C7CC; + border-bottom: 1px solid #C8C7CC; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border: none; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonWhiteCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonWhiteCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: white; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 50px; + list-style-type: none; + line-height: 50px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #C8C7CC; + margin-left: 0px; + margin-right: 0px; + background-color: white; + font-size: 18px; + color: #000000; + padding: 0 16px; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-color: #3578b1; +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: red; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 10.5px; + margin-bottom: -10.5px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: #000000; + margin-top: 14px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblListItem *[layout="right"] { + color: #8F8F8F; +} +.mblListItem .mblListItemRightIcon * { + border-color: #C8C8CD; +} +.mblListItemSelected { + background-color: #AAAAAA; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 11.5px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(176, 176, 176, 0.5) 1px inset; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: none; +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: rgba(157, 157, 157, 0.5) 1px outset; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 0px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 0px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 77px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwDefaultShape .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 50px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwDefaultShape .mblSwitchText { + width: 50px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 26px; +} +.mblSwitchKnob { + background-color: white; + background-image: none; +} +.mblSwitchBgLeft { + background-color: #4BD260; + background-image: none; +} +.mblSwitchBgRight { + background-color: #eeeeee; + background-image: none; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} +.mblDomButtonWhitePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhitePlus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhitePlus > div > div { + + position: absolute; + top: -6px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteMinus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteUpArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteUpArrow div { + position: absolute; + left: 0px; + clip: rect(0px 30px 20px 0px); +} +.mblDomButtonWhiteUpArrow > div > div { + top: 9px; + left: 4px; + width: 20px; + height: 20px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteDownArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteDownArrow div { + position: absolute; + left: 0px; + clip: rect(7px 50px 40px 0px); +} +.mblDomButtonWhiteDownArrow > div > div { + top: -10px; + left: 2px; + width: 25px; + height: 25px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteSearch { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteSearch > div { + position: absolute; + top: 5px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + border: 2px solid white; + border-radius: 6px; +} +.mblDomButtonWhiteSearch > div > div { + position: absolute; + top: 10px; + left: 7px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border: none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 0px; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonCheckboxOn { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOn > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOn > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: none; + border-bottom: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonCheckboxOff { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOff > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOff > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: none; + border-top: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonBlueCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlueCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonBlueCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonRedCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonGreenCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblDomButtonGrayRoundRect { + position: relative; + width: 29px; + height: 29px; + text-align: right; +} +.mblDomButtonGrayRoundRect > div { + position: absolute; + right: 0px; + display: inline; + padding: 0px 5px; + top: 7px; + color: white; + font-family: Helvetica; + font-size: 12px; + border-radius: 4px; + background-color: #949ba5; + text-align: center; +} +.mblDomButtonGrayRoundRect > div > div { + display: none; +} +.mblDomButtonSilverCircleDownArrow { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleDownArrow > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div { + position: relative; + top: 3px; + left: 3px; + width: 20px; + height: 20px; + border-radius: 10px; + background: -webkit-gradient(linear, left top, left bottom, from(#979797), to(#616161)); + background: linear-gradient(to bottom, #979797 0%, #616161 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div > div { + position: absolute; + left: 0px; + clip: rect(6px 50px 40px 0px); +} +.mblDomButtonSilverCircleDownArrow > div > div > div > div { + position: absolute; + top: -5px; + left: 1px; + width: 18px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #d1d1d1; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.7) rotate(45deg); + transform: scaleX(0.7) rotate(45deg); +} +.mblDomButtonSilverCircleGreenButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #1b991c; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#17df25), to(#1ba51c)); + background: radial-gradient(6px at center, #17df25 0%, #1ba51c 100%); +} +.mblDomButtonSilverCircleGrayButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGrayButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGrayButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #aeaeae; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#d4d4d4), to(#bababa)); + background: linear-gradient(to bottom, #d4d4d4 0%, #bababa 100%); +} +.mblDomButtonSilverCircleOrangeButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleOrangeButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleOrangeButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #ca701a; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#ff7a07), to(#e66b03)); + background: radial-gradient(6px at center, #ff7a07 0%, #e66b03 100%); +} +.mblDomButtonSilverCircleGreenPlus { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenPlus > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenPlus > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleGreenPlus > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleRedCross { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleRedCross > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleRedCross > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonSilverCircleRedCross > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; +} +.mblDomButtonBlueBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonBlueBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#84aff4), to(#2758b3)); + background: linear-gradient(to bottom, #84aff4 0%, #2758b3 100%); +} +.mblDomButtonGreenBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonGreenBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#59e738), to(#0aa908)); + background: linear-gradient(to bottom, #59e738 0%, #0aa908 100%); +} +.mblDomButtonOrangeBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonOrangeBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#f9e20a), to(#ff6b0a)); + background: linear-gradient(to bottom, #f9e20a 0%, #ff6b0a 100%); +} +.mblDomButtonRedBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonRedBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#ec9b9d), to(#d73c3f)); + background: linear-gradient(to bottom, #ec9b9d 0%, #d73c3f 100%); +} +.mblDomButtonTransparent19 { + position: relative; + width: 19px; + height: 19px; +} +.mblDomButtonTransparent29 { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonTransparent30 { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonYellowStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonYellowStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonYellowStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #cd853f; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonYellowStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonYellowStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonGrayStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #8c8e8c; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonGrayStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonGrayStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonGrayCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + border-radius: 2px; +} +.mblDomButtonRedCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonRedCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + border-radius: 2px; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblDomButtonGrayKnob { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayKnob > div { + + position: absolute; + top: 6px; + left: 2px; + width: 23px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDissolve.mblOut { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveOut; + animation-name: mblDissolveOut; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +.mblDissolve.mblIn { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveIn; + animation-name: mblDissolveIn; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +@-webkit-keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-webkit-keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +.mblCover { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCover.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCover.mblOut { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblCover.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblCover.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblCover.mblOut.mblTransition, +.mblCover.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblCover.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCube { + -webkit-animation-duration: 0.8s; + animation-duration: 0.8s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblCube.mblOut { + -webkit-animation-name: mblCubeOut; + animation-name: mblCubeOut; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +.mblCube.mblIn { + -webkit-animation-name: mblCubeIn; + animation-name: mblCubeIn; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +@-webkit-keyframes mblCubeOut { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOut { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeIn { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeIn { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse; + animation-name: mblCubeOutReverse; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +.mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse; + animation-name: mblCubeInReverse; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOutReverse { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeInReverse { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeInReverse { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.dj_ios .mblCube { + -webkit-transform-style: preserve-3d !important; +} +.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone; + animation-name: mblCubeOut_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone; + animation-name: mblCubeIn_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@keyframes mblCubeOut_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeIn_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeIn_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone_l; + animation-name: mblCubeOut_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone_l; + animation-name: mblCubeIn_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@keyframes mblCubeOut_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeIn_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeIn_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone; + animation-name: mblCubeOutReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone; + animation-name: mblCubeInReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@keyframes mblCubeOutReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeInReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone_l; + animation-name: mblCubeOutReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone_l; + animation-name: mblCubeInReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@keyframes mblCubeOutReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeInReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad; + animation-name: mblCubeOut_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad; + animation-name: mblCubeIn_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@keyframes mblCubeOut_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeIn_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeIn_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad_l; + animation-name: mblCubeOut_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad_l; + animation-name: mblCubeIn_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@keyframes mblCubeOut_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeIn_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeIn_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad; + animation-name: mblCubeOutReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad; + animation-name: mblCubeInReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@keyframes mblCubeOutReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeInReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad_l; + animation-name: mblCubeOutReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad_l; + animation-name: mblCubeInReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@keyframes mblCubeOutReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeInReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.mblReveal { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblReveal.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblReveal.mblOut { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblTransition { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblReveal.mblIn { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblReveal.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblReveal.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSlidev { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlidev.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlidev.mblOut.mblReverse.mblTransition, +.mblSlidev.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblSlidev.mblOut.mblTransition, +.mblSlidev.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblSlidev.mblOut, +.mblSlidev.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblSlidev.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSwirl.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlOut; + animation-name: mblSwirlOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlIn; + animation-name: mblSwirlIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblOut.mblReverse { + -webkit-animation-name: mblSwirlOutReverse; + animation-name: mblSwirlOutReverse; +} +@-webkit-keyframes mblSwirlOut { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(-360deg) scale(0); + } +} +@keyframes mblSwirlOut { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(-360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlOutReverse { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(360deg) scale(0); + } +} +@keyframes mblSwirlOutReverse { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblSwirlIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutOut; + animation-name: mblScaleOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblScaleOut.mblOut { + -webkit-animation-name: mblScaleOutOutAndroid; + animation-name: mblScaleOutOutAndroid; +} +.mblScaleOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutIn; + animation-name: mblScaleOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblScaleOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblScaleOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblScaleOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblScaleOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblScaleOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInOut; + animation-name: mblScaleInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblScaleIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInIn; + animation-name: mblScaleInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblScaleIn.mblIn { + -webkit-animation-name: mblScaleInInAndroid; + animation-name: mblScaleInInAndroid; +} +@-webkit-keyframes mblScaleInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblScaleInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblScaleInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblScaleInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblSwap { + -webkit-animation-duration: 0.6s; + animation-duration: 0.6s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblSwap.mblOut { + -webkit-animation-name: mblSwapOut; + animation-name: mblSwapOut; +} +.mblSwap.mblIn { + -webkit-animation-name: mblSwapIn; + animation-name: mblSwapIn; +} +.mblSwap.mblOut.mblReverse { + -webkit-animation-name: mblSwapOutReverse; + animation-name: mblSwapOutReverse; +} +.mblSwap.mblIn.mblReverse { + -webkit-animation-name: mblSwapInReverse; + animation-name: mblSwapInReverse; +} +@-webkit-keyframes mblSwapOut { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOut { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapIn { + 0% { + z-index: -100; + -webkit-transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapIn { + 0% { + z-index: -100; + transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblSwapOutReverse { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOutReverse { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapInReverse { + 0% { + z-index: -100; + -webkit-transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapInReverse { + 0% { + z-index: -100; + transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +.mblZoomOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutOut; + animation-name: mblZoomOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblZoomOut.mblOut { + -webkit-animation-name: mblZoomOutOutAndroid; + animation-name: mblZoomOutOutAndroid; +} +.mblZoomOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutIn; + animation-name: mblZoomOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblZoomOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblZoomOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblZoomOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblZoomOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblZoomOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblZoomIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInOut; + animation-name: mblZoomInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblZoomIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInIn; + animation-name: mblZoomInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblZoomIn.mblIn { + -webkit-animation-name: mblZoomInInAndroid; + animation-name: mblZoomInInAndroid; +} +@-webkit-keyframes mblZoomInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblZoomInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblZoomInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblZoomInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblAccordion { + border-style: outset; + border-width: 1px; + border-style: none; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #f7f7f7; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: #000000; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + background-color: #a7a7aa; +} +.mblAccordionTitleSelected .mblAccordionTitleAnchor { + color: #000000; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + height: 40px; + color: #000000; +} +.mblButtonSelected { + color: #000000; + border-color: transparent; + background-image: none; + background-color: #2C94BB; + box-shadow: 0px 0px 1px 4px #1F5366; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + color: #000000; + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + background-color: #0099CC; +} +.mblBlueButtonSelected { + background-image: none; +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115), color-stop(0.5, #ff4d25), color-stop(0.5, #ed4d15)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); + color: #000000; + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + background-color: #CC0000; +} +.mblRedButtonSelected { + background-image: none; +} +.mblButton { + color: #007aff; + border: solid 1px #eeeeee; + -webkit-appearance: none; +} +.mblBlueButton, +.mblRedButton { + color: white; +} +.mblButtonSelected { + background-color: rgba(0, 0, 0, 0); + background-image: none; + box-shadow: none; + color: #929292; + border-color: #007aff; +} +.mblButtonDisabled, +.mblButton:disabled { + color: #646464; + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + background-color: #929292; +} +.mblBlueButtonSelected { + color: black; + border-color: transparent; + box-shadow: 0px 0px 1px 4px #33B5E5; +} +.mblRedButtonSelected { + color: black; + border-color: transparent; + box-shadow: 0px 0px 1px 4px #FF4444; +} +.mblTooltip .mblButton { + border: none; +} +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + background-color: rgba(0, 0, 0, 0); + border-style: none; + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #5c5c5c; + border-width: 1px; + background-color: transparent; + background-image: none; + border-style: solid; +} +.mblCheckBoxSelected { + background-image: none; +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-color: transparent; +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; + background-color: transparent; + background-image: none; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: none; +} +.mblCheckBoxChecked.mblCheckBoxSelected::after, +.mblCheckBox:checked.mblCheckBoxSelected::after { + background-color: transparent; + background-image: none; +} +.mblCheckBox:disabled { + border-color: #007aff; +} +.mblCheckBoxSelected { + background-image: none; + border-color: #99bbca; + box-shadow: 0px 0px 1px 4px #1f5366; + background-color: #1f5366; +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: none; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: none; + border-color: #99bbca; + box-shadow: 0px 0px 3px 4px #1f5366; + background-color: #1f5366; +} +.mblCheckBox:checked::after { + border-color: #007aff; +} +.mblCheckBox:disabled::after { + border-color: #007aff; +} +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: 0 0 50px #000000; + box-shadow: 0 0 50px #000000; + border-radius: 0; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-radius: 0; + background-color: white; + color: #000000; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: #eeeeee; + border-top: none; + border-bottom: none; + height: 35px; + padding-top: 17px; +} +.mblComboBoxMenuItemSelected { + background-color: red; + color: white; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; + color: #000000; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: #000000; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 6px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-color: rgba(200, 200, 200, 0.45); + border: 1px solid #007aff; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 6px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 6px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 6px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 13px; + color: #000000; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-color: #3578b1; + color: white; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-color: white; + background-image: none; +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #adaaad; + border-radius: 3px; + background-color: white; + background-image: none; +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #306ea1; + background-image: none; + color: white; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #306ea1; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #306ea1; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #306ea1; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adaaad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adaaad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adaaad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adaaad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #848284; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #848284; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #9c9e9c; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #848284; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblOpenerUnderlay { + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} +.mblPageIndicatorDotSelected { + background-color: #007aff; +} +.mblProgressBar { + position: relative; + border-radius: 0px; + height: 2px; + background-image: none; + background-color: #a7a7aa; +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + background-image: none; + background-color: #007aff; + height: 2px; +} +.mblProgressBarComplete { + border-radius: 0px; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: 3px; +} +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #5c5c5c; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-color: transparent; +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #007aff; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: none; +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: #007aff; +} +.mblRadioButton { + border-style: solid; + border-width: 1px; + border-radius: 999px; + background-image: none; + background-color: transparent; + -webkit-tap-highlight-color: none; + border-color: #5c5c5c; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: none; +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.65em; + height: 0.65em; + top: 0.17em; + left: 0.17em; + border-style: none; + background-color: #007aff; + border-radius: 1em; + border-color: #007aff; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: none; + box-shadow: 0px 0px 1px 4px #1f5366 inset; +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: #007aff; +} +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration { + background-color: rgba(64, 64, 64, 0.85); + border: 2px solid #eeeeee; + color: #000000; + background-image: none; + background-color: #f7f7f7; + border-style: none; + border-top-style: solid; + border-top-width: 1px; + border-top-color: rgba(255, 255, 255, 0.6); + border-radius: 2px; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 14px 0 7px -5px; + padding: 0 14px 14px; + width: 244px; + border-bottom: 1px solid #a7a7aa; + font-size: 17px; + text-align: left; +} +.mblSimpleDialogText { + margin: 14px 9px; + width: 244px; + font-size: 17px; + text-align: left; +} +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 10em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#bdbebd), to(#f7f3f7)); + background-image: linear-gradient(to bottom, #bdbebd 0%, #f7f3f7 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 10em; + background-image: none; +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 10em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#9c9a9c), to(#848284)); + background-image: linear-gradient(to bottom, #9c9a9c 0%, #848284 100%); + border-color: transparent; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSlider { + border-style: none; + border-radius: 0; + background-image: none; + background-color: transparent; +} +.mblSliderH { + width: 200px; + height: 3px; + background-color: #929292; + border-style: none; +} +.mblSliderV { + height: 200px; + width: 3px; + background-color: #929292; + border-style: none; +} +.mblSliderProgressBar { + border: radius: 0; + background-image: none; + background-color: #007aff; +} +.mblSliderHandle { + background-image: none; + background-color: white; + box-shadow: 0px 0px 3px #888; + border-color: transparent; +} +.mblSliderHandle:after { + border-style: solid; + background-image: none; + border-color: transparent; +} +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblSpinWheel { + background-image: none; + border: none; +} +.mblSpinWheelBar { + background-image: none; + background-color: rgba(0, 0, 0, 0); + border: none; + border-top: solid 1px #929292; + border-bottom: solid 1px #929292; +} +.mblSpinWheelSlot { + border: none; + color: #929292; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #007aff; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-color: #eeeeee; + border: none; + line-height: 0.5em; +} +.mblTabBarTabBar .mblTabBarButton { + height: 47px; +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + color: #007aff; +} +.mblTabBarSegmentedControl { + background-image: none; + background-color: #eeeeee; + border: none; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + color: #007aff; + height: 28px; + font-weight: normal; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + height: 28px; + background-color: #007aff; + color: white; + font-weight: normal; +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: none; + background-color: #eeeeee; + border: none; + font-weight: normal; +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonLabel { + font-weight: normal; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + color: white; + background-color: #007aff; +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #007aff; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-color: #eeeeee; + border: none; +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); +} +.mblTabBar { + color: #929292; + font-weight: normal; +} +.mblTabBarSegmentedControl .mblTabBarButton { + border-top: solid 2px #007aff; + border-bottom: solid 2px #007aff; + border-left: solid 1px #007aff; + border-right: solid 1px #007aff; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left: solid 2px #007aff; + border-top-left-radius: 7px; + border-bottom-left-radius: 7px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-right: solid 2px #007aff; + border-top-right-radius: 7px; + border-bottom-right-radius: 7px; +} +.mblHeading .mblTabBar { + background-color: rgba(0, 0, 0, 0); +} +.mblTabBarSlimTab { + border: none; + background-color: #007aff; + background-image: none; +} +.mblTabBarSlimTab .mblTabBarButton, +.mblTabBarFlatTab .mblTabBarButton { + background-color: rgba(0, 0, 0, 0); + background-image: none; + color: #f7f7f7; + font-weight: normal; + text-shadow: none; + border-color: white; +} +.mblTabBarFlatTab .mblTabBarButton { + color: black; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-color: white; +} +.mblTabBarSlimTab .mblTabBarButtonSelected, +.mblTabBarFlatTab .mblTabBarButtonSelected { + background-color: white; + background-image: none; + color: #007aff; + border-color: white; + font-weight: normal; +} +.mblTabBarTallTab { + background-color: #007aff; + background-image: none; + margin: 0; +} +.mblTabBarTallTab .mblTabBarButton { + background-image: none; + border: none; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + color: #007aff; + background-color: white; + border: none; +} +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + color: #000000; + border-radius: 0; + border: solid 1px #007aff; + font-size: 17px; +} +.mblExpandingTextArea { + margin: 2px; +} +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border: solid 1px #007aff; + font-size: 17px; + color: #000000; +} +.mblTextBox:disabled { + background-color: transparent; + border-top-color: transparent; + border-left-color: transparent; + border-right-color: transparent; + border-bottom-color: #007aff; + border-width: 1px; + font-size: 17px; + border-style: solid; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: transparent; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #000000), color-stop(0.54, #000000), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid transparent; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 0; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #000000), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #000000), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; + font-size: 13px; + color: #000000; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: none; + color: white; +} +.mblToggleButtonChecked { + background-color: transparent; + color: white; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: none; + color: white; +} +.mblToggleButton { + color: #007aff; +} +.mblToggleButtonChecked { + background-color: #007aff; + color: white; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: none; +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0px; + border-top-right-radius: 0px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; +} +.mblValuePickerSlotButtonSelected { + background-image: none; +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: none; +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 28px; + color: #000000; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ios7_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ios7_rtl.css new file mode 100644 index 00000000..93916b96 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/ios7_rtl.css @@ -0,0 +1,327 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -2px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonWhiteCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 50%; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: -50%; +} +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} +.mblComboBoxMenuItemRtl { + text-align: right; +} +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: -2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid rgba(96, 96, 96, 0.85); +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-right-radius: 6px; + border-top-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0px; + border-top-left-radius: 6px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-right-radius: 6px; + border-bottom-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 6px; +} +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 5px; + border-top-left-radius: 0px; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 5px; + border-top-right-radius: 0px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/variables.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/variables.less new file mode 100644 index 00000000..32a12d4f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/variables.less @@ -0,0 +1,957 @@ +@import "../common/css3.less"; + +@ios7-color: black; +@ios7-base-color: #007AFF; +@ios7-grey1: #F7F7F7; +@ios7-grey2: #929292; +@ios7-grey3: #EEEEEE; +@ios7-grey4: #A7A7AA; +@ios7-checkbox-border-color: #5C5C5C; +@ios7-checkbox-selected-color: #99BBCA; +@ios7-checkbox-tick-color: @ios7-base-color; +@ios7-checkbox-checked-color: #1F5366; +@ios7-switch-on-color: #0C86AF; +@ios7-switch-off-color: @ios7-base-color; +@ios7-switch-knob-color: #606060; +@ios7-slider-thumb-color: rgba(31, 83, 102, 0.8); +@ios7-slider-background-image-gecko: -moz-linear-gradient(top, @ios7-grey4 0%, @ios7-slider-thumb-color 100%); +@ios7-slider-track-color: #292929; +@default-blue-button-color: white; +@default-blue-button-background-color: #366edf; +@default-blue-button-background-image-gecko: none; + +@mbl-color-blue-45-gecko: none; +@mbl-color-default-45-gecko: @ios7-base-color; +@mbl-color-default-sel-45-gecko: @ios7-grey4; + +@default-button-color: @ios7-base-color; + +@default-button-background-color: rgba(0, 0, 0, 0); +.default-button-background-image() {background-image: none}; +@default-button-background-image-gecko: none; +@default-button-border-radius: 2px; + +@default-button-selected-color: @ios7-grey3; +@default-button-selected-background-color: rgba(0, 0, 0, 0); +.default-button-selected-background-image () {background-image: none;} +@default-button-selected-background-image-gecko: none; + +@default-selected-color: white; +@default-selected-background-color: #3578b1; +@default-selected-background-image: none; +@default-selected-background-image-gecko: none; + +@heading-background-color: #F7F7F7; +.heading-background-image () { background-image: none; } +@heading-background-image-gecko: none; +@heading-border-top-color: #cdd5df; +@heading-border-bottom-color: @ios7-base-color; + + +.default-blue-button-background-image () { + background-image: none; +} +.mbl-color-blue-45 () { + background-image: none; +} +.mbl-color-default-45 () { background-color: @ios7-base-color; } +.mbl-color-default-sel-45 () {background-color: @ios7-grey4; } + + +.default-button-border-styles () { + background-image: none; + background-color: rgba(0, 0, 0, 0); + border-style: none; +} + +.mblToolBarButtonBodyInLeftArrow-styles () { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + border: none; +} + +.mblToolBarButtonBodyInRightArrow-styles () { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +// background styles of form controls +.mbl-button-background-image () { .default-button-border-styles; } + +.mbl-button-selected-background-image () { .default-button-selected-background-image(); } +.mbl-blue-button-background-image () { .default-blue-button-background-image(); } +.mbl-blue-button-selected-background-image () { .default-button-selected-background-image(); } +.mbl-red-button-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#fa9d58, #ee4115, 0.5, #ff4d25, 0.5, #ed4d15);} + +.mbl-red-button-selected-background-image () { .default-button-selected-background-image(); } +.mbl-button-checked-background-image () { background-color: transparent; } + +// background styles of form controls (for gecko) +@mbl-button-background-image-gecko: none; +@mbl-button-selected-background-image-gecko: @default-button-selected-background-image-gecko; +@mbl-blue-button-background-image-gecko: @default-blue-button-background-image-gecko; +@mbl-blue-button-selected-background-image-gecko: @default-button-selected-background-image-gecko; +@mbl-red-button-background-image-gecko: none; +@mbl-red-button-selected-background-image-gecko: none; +@mbl-button-checked-background-image-gecko: none; + +// common.less +.mobile-body-styles () { + font-family: Helvetica; + font-size: 17px; + color: @ios7-color; +} + +.mblBackground-styles () { + background-color: white; +} + +.mblView-styles () { + color: @ios7-color; +} + +.mblColorBlue-styles () { + color: @default-blue-button-color; + background-color: @default-blue-button-background-color; + .default-blue-button-background-image(); +} + +.mblColorDefault-styles () { + color: @ios7-color; + background-color: @default-button-background-color; + .default-button-background-image(); +} + +.mblColorDefaultSel-styles () { + color: @default-button-selected-color; + background-color: @default-button-selected-background-color; + .default-button-selected-background-image(); +} + +// Heading.less +.mblHeading-styles () { + color: @ios7-color; + background-color: @heading-background-color; + border-bottom-color: @ios7-grey4; + border-bottom-width: 1px; + border-bottom-style: solid; + font-size: 18px; + font-weight: bold; +} + +// ToolBarButton.less +@mbl-tool-bar-button-body-border-radius: 0; + +.mblToolBarButton-styles () { + text-shadow: none; +} + +.mblToolBarButtonArrow-styles () { + border: 5px solid #007AFF; + border-top: none; + border-right: none; +} + +.mblToolBarButtonArrowInHeading-styles () { +} +.mblToolBarButtonHasLeftArrowInHeading-styles () { +} +.mblToolBarButtonHasLeftArrowInHeading-compat-gecko () { +} +.mblToolBarButtonHasRightArrowInHeading-styles () { +} +.mblToolBarButtonHasRightArrowInHeading-compat-gecko () { +} +.mblToolBarButtonArrowInLeftArrow-styles () { + left: -1px; +} +.mblToolBarButtonArrowInRightArrow-styles () { + right: -1px; +} +.mblToolBarButtonBody-styles () { + border: none; +} +.mblToolBarButtonBodyInHeading-styles () { +} +.mblToolBarButtonBodyInHeading-compat-gecko () { +} + +// RoundRect.less & RoundRectList.less +@mbl-round-rect-border-color: @ios7-grey1; +@mbl-round-rect-border-radius: 14px; +@mbl-round-rect-background-color: transparent; +@mbl-round-rect-box-shadow: none; + +.mblRoundRect-styles () { + color: @ios7-color; + border: 1px solid #C8C7CC; +} + +// EdgeToEdgeCategory.less +.mblEdgeToEdgeCategory-styles () { + height: 35px; + background-color: rgba(0,0,0,0); + color: #6D6D72; + line-height: 35px; + margin-right:7px; + margin-left:7px; + margin-top: 10px; + text-transform: uppercase; +} + +// RoundRectCategory.less +@mbl-value-picker-slot-margin: 0 5px; +.mblRoundRectCategory-styles () { + color: #6D6D72; +} + +// EdgeToEdgeList.less +.mblEdgeToEdgeList-styles () { + background-color: white; + border-top: 1px solid #C8C7CC; + border-bottom: 1px solid #C8C7CC; +} + +.mblEdgeToEdgeList-LastListItem-styles () { + border: none; +} + +// ListItem.less +@mbl-list-item-height: 50px; + +.mblListItem-styles () { + border-bottom: 1px solid #C8C7CC; + margin-left: 0px; + margin-right: 0px; + background-color: white; + font-size: 18px; + color: @ios7-color; + padding: 0 16px; +} + +.mblListItemSelected-styles () { + color: @default-selected-color; + background-color: @default-selected-background-color; +} + +.mblListItemLabelSelected-styles () { + background-color: red; +} + +.mblListItemChecked-styles () { +} + +.mblListItemRightText-styles () { + color: @ios7-color; + margin-top: 14px; +} + +.mblListItemSubText-styles () { + font-size: 14px; + color: gray; +} + +// Switch.less +@mbl-switch-bg-left-background-color: #00a200; +.mbl-switch-bg-left-background-image () {background-image: none; } +@mbl-switch-bg-right-background-color: #bdbebd; +.mbl-switch-bg-right-background-image () {.background-image-linear-gradient-top-bottom(#bdbebd, #f7f3f7); } +.mbl-switch-knob-background-image () {.background-image-linear-gradient-top-bottom(#9c9a9c, #848284); } + +@mbl-switch-bg-left-background-image-gecko: none; +@mbl-switch-bg-right-background-image-gecko: -none; +@mbl-switch-knob-background-image-gecko: none; +@mbl-switch-square-border-radius: 0px; + +.mblSwitchBg-styles () { + border: rgba(176,176,176,0.5) 1px inset; +} +.mblSwitchKnob-styles () { + border: rgba(157,157,157,0.5) 1px outset; +} + +// Button.less +.mblButton-styles () { + .default-button-border-styles; + height: 40px; + color: @ios7-color; +} + +.mblButtonSelected-styles () { + color: @ios7-color; + border-color: transparent; + background-image: none; + background-color: #2C94BB; + box-shadow: 0px 0px 1px 4px #1F5366; +} + +.mblButton-mblBlueButton-styles () { + color: @ios7-color; + .default-button-border-styles; + background-color: #0099CC; +} + +.mblButton-mblRedButton-styles () { + color: @ios7-color; + .default-button-border-styles; + background-color: #CC0000; +} + +// CheckBox.less +.mblCheckBox-styles () { + border-color: @ios7-checkbox-border-color; + border-width: 1px; + background-color: transparent; + background-image: none; + border-style: solid; +} + +.mblCheckBoxChecked-after-styles () { + border-color: white; + background-color: transparent; + background-image: none; +} + +.mblCheckBoxChecked-mblCheckBoxSelected-after-styles () { + background-color: transparent; + background-image: none; +} + +// ComboBox.less +@mbl-combo-box-popup-box-shadow: 0 0 50px @ios7-color; + +.dijitPopup-styles () { + border-radius: 0; +} + +.mblComboBoxMenu-styles () { + border-radius: 0; + background-color: white; + color: @ios7-color; +} + +.mblComboBoxMenuItem-styles () { + border-color: @ios7-grey3; + border-top: none; + border-bottom: none; + height: 35px; + padding-top: 17px; +} + +.mblComboBoxMenuItemSelected-styles () { + background-color: red; + color: white; +} + +// IconContainer.less +.mblIconItemSub-styles () { + background-color: white; + color: @ios7-color; +} + +.mblIconArea-styles () { + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: @ios7-color; +} + +.mblIconItemDeleteIcon-styles () { + top: -4px; + left: -2px; +} + +// RadioButton.less +.mblRadioButton-styles () { + border-color: @ios7-checkbox-border-color; +} + +.mblRadioButtonChecked-after-styles () { + border-color: @ios7-checkbox-tick-color; +} + +.mblRadioButtonChecked-Selected-after-styles () { + border-color: @ios7-checkbox-tick-color; +} + +// Slider.less +@mbl-slider-bar-border-radius: 10em; +@mbl-slider-knob-border-radius: 10em; + +.mblSlider-styles () { +} + +.mblSliderHandle-styles () { + border-color: transparent; +} + +.ios7-slider-background-image () { + background-image: none; + background-color: white; + box-shadow: 0px 0px 3px #888;; +} + +// TabBar.less +.ios7TabBarBackground-styles () { + background-color: @ios7-grey3; + border: none; +} + +.mblTabBar-styles () { +} + +// barType="tabBar" +.mblTabBarTabBar-styles () { + .ios7TabBarBackground-styles; + line-height: 0.5em; +} + +.mblTabBarTabBar-compat () { + line-height: 0.5em; +} + +.mblTabBarTabBarButton-styles () { + height:47px; +} + +.mblTabBarTabBarButtonIconArea-styles () { +} + +.mblTabBarTabBarButtonLabel-styles () { +} + +.mblTabBarTabBarButtonSelected-styles () { + color: @ios7-base-color; +} + +.mblTabBarTabBarButtonLabelSelected-styles () { +} + +// barType="segmentedControl" +@mbl-tab-bar-segmented-control-border-radius: 0px; + +.mblTabBarSegmentedControl-styles () { + .ios7TabBarBackground-styles; +} + +.mblTabBarSegmentedControlButton-styles () { + color: @ios7-base-color; + height:28px; + font-weight: normal; +} + +.mblTabBarSegmentedControlButton-compat-gecko () { +} + +.mblTabBarSegmentedControlButtonSelected-styles () { + height:28px; + background-color: @ios7-base-color; + color: white; + font-weight: normal; +} + +// barType="standardTab" +.mblTabBarStandardTab-styles () { + .ios7TabBarBackground-styles; + font-weight: normal; +} + +.mblTabBarStandardTabButton-styles () { +} + +.mblTabBarStandardTabButtonIconArea-styles () { +} + +.mblTabBarStandardTabButtonLabel-styles () { + font-weight: normal; +} + +.mblTabBarStandardTabButtonSelected-styles () { + color: white; + background-color: @ios7-base-color; +} + +.mblTabBarStandardTabButtonLabelSelected-styles () { +} + +// barType="tallTab" +.mblTabBarTallTab-styles () { + .ios7TabBarBackground-styles; +} + +.mblTabBarTallTabButton-styles () { +} + +.mblTabBarTallTabButton-FirstChild-styles () { +} + +.mblTabBarTallTabButton-LastChild-styles () { +} + +.mblTabBarTallTabButtonIconArea-styles () { +} + +.mblTabBarTallTabButtonLabel-styles () { +} + +.mblTabBarTallTabButtonSelected-styles () { + +} + +.mblTabBarTallTabButtonLabelSelected-styles () { +} + +// TextArea.less +.mblTextArea-styles () { + .default-button-border-styles; + color: @ios7-color; + border-radius: 0; + border: solid 1px @ios7-base-color; + font-size: 17px; +} + +// TextBox.less +.mblTextBox-styles () { + border: solid 1px @ios7-base-color; + font-size: 17px; + color: @ios7-color; +} + +// ToggleButton.less +.mblToggleButton-styles () { + .default-button-border-styles; + font-size: 13px; + color: @ios7-color; +} + +.mblToggleButtonSelected-styles () { + color: white; +} + +.mblToggleButtonChecked-styles () { + color: white; +} + +.mblToggleButtonChecked-after-styles () { + border-color: white; +} + +.mblToggleButtonCheckedSelected-styles () { + color: white; +} + +.mblToggleButtonCheckedSelected-after-styles () { +} + +// Overlay.less +.mblOverlay-styles () { + background-color: white; + background-image: none; +} + +.mblOverlay-compat () { +} + +.mblOverlay-compat-gecko () { +} + +// Tooltip.less +@mbl-tooltip-border-radius: 3px; + +.mblTooltip-styles () { + border-color: #adaaad; + border-radius: @mbl-tooltip-border-radius; + background-color: white; + background-image: none; +} + +.mblTooltipBubble-styles () { + background-color: #306ea1; + background-image: none; + color: white; +} + +.mblTooltipInnerArrow-Bubble-Above-styles () { + border-bottom-color: #306ea1; +} + +.mblTooltipInnerArrow-Bubble-Below-styles () { + border-top-color: #306ea1; +} + +.mblTooltipInnerArrow-Bubble-After-styles () { + border-left-color: #306ea1; +} + +.mblTooltipInnerArrow-Bubble-Before-styles () { + border-right-color: #306ea1; +} + +.mblTooltipArrow-Before-styles () { + border-left-width: 0; + border-right-color: #adaaad; +} + +.mblTooltipArrow-After-styles () { + border-right-width: 0; + border-left-color: #adaaad; +} + +.mblTooltipArrow-Above-styles () { + border-top-width: 0; + border-bottom-color: #adaaad; +} + +.mblTooltipArrow-Below-styles () { + border-bottom-width: 0; + border-top-color: #adaaad; +} + +.mblTooltipInnerArrow-Before-styles () { + border-left-width: 0; + border-right-color: #848284; +} + +.mblTooltipInnerArrow-After-styles () { + border-right-width: 0; + border-left-color: #848284; +} + +.mblTooltipInnerArrow-Above-styles () { + border-top-width: 0; + border-bottom-color: #9c9e9c; +} + +.mblTooltipInnerArrow-Below-styles () { + border-bottom-width: 0; + border-top-color: #848284; +} + +.mblTooltip-Heading-styles () { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} + +.mblTooltip-Heading-compat () { +} + +.mblTooltip-Heading-ToolbarButton-styles () { +} + +.mblTooltip-Heading-ToolbarButton-compat () { +} + +// Accordion.less +.mblAccordion-styles () { + border-style:none; +} + +.mblAccordionTitle-styles () { + .mbl-button-background-image(); +} + +.mblAccordionTitle-compat () { +} + +.mblAccordionTitle-compat-gecko () { + .mbl-button-background-image(); +} + +.mblAccordionTitleSelected-styles () { + background-color: @ios7-grey4; +} + +.mblAccordionTitleSelected-compat () { + background-color: @ios7-grey4; +} + +.mblAccordionTitleSelected-compat-gecko () { + background-color: @ios7-grey4; +} + +.mblAccordionTitleAnchor-styles () { + color: @ios7-color; +} + +.mblAccordionTitleAnchorSelected-styles () { + color: @ios7-color; +} + +// SimpleDialog.less +@mbl-simple-dialog-border-radius: 2px; + +.mblSimpleDialog-styles () { + padding: 5px; + width: 262px; +} + +.mblSimpleDialogDecoration-styles () { + background-color: rgba(64,64,64,0.85); + border: 2px solid #eeeeee; + color: @ios7-color; + + background-image: none; + background-color: @ios7-grey1; + border-style: none; + border-top-style: solid; + border-top-width: 1px; + border-top-color: rgba(255,255,255,0.6); + border-radius: 2px; +} + +.mblSimpleDialogDecoration-compat () { + background-color: #404040; +} + +.mblSimpleDialogDecoration-compat-gecko () { + background-color: rgba(64,64,64,0.85); +} + +.mblSimpleDialogTitle-styles () { + margin: 14px 0 7px -5px; + padding: 0 14px 14px; + width: 244px; + border-bottom: 1px solid @ios7-grey4; + font-size: 17px; + text-align: left; +} + +.mblSimpleDialogText-styles () { + margin: 14px 9px; + width: 244px; + font-size: 17px; + text-align: left; +} + +// IconMenu.less +@mbl-icon-menu-border-radius: 6px; +@mbl-icon-menu-item-border-radius: 6px; + +.mblIconMenu-styles () { + padding: 0; + background-color: rgba(200, 200, 200, 0.45); + border: 1px solid @ios7-base-color; +} + +.mblIconMenu-compat () { + background-color: #404040; +} + +.mblIconMenu-compat-gecko () { + background-color: rgba(64, 64, 64, 0.85); +} + +.mblIconMenuItem-styles () { +} + +.mblIconMenuItemAnchor-styles () { + font-size: 13px; + color: @ios7-color; +} + +.mblIconMenuItemSel-styles () { + background-color: @default-selected-background-color; + color: white; +} + +.mblIconMenuItemSel-compat () { + background-color: @default-selected-background-color; +} + +.mblIconMenuItemSel-compat-gecko () { + background-color: @default-selected-background-color; +} + +// dijit.Calendar +.dijitCalendar-styles () { + border: none 0 transparent; + background-color: white; +} + +.dijitCalendar-thead-styles () { + background-color: @ios7-base-color; + +} + +.dijitCalendar-thead-compat () { + background-color: @ios7-base-color; +} + +.dijitCalendar-thead-compat-gecko () { + background-color: @ios7-base-color; +} + +.dijitCalendarMonthLabel-styles () { + color: white; + font-size: 16px; +} + +.dijitCalendarMonthMenu-styles () { +} + +.dijitCalendarMonthMenu-compat-ff3 () { +} + +.dijitCalendarMonthMenu-Label-styles () { + color: @ios7-color; +} + +.dijitCalendarDecrease-styles () { + border-right: 6px solid white !important; +} + +.dijitCalendarIncrease-styles () { + border-left: 6px solid white !important; +} + +.dijitCalendarDayLabelTemplate-styles () { + background-color: white; + font-size: 12px; + color: black; +} + +.dijitCalendarDateTemplate-styles () { + border-right: 1px solid lightGrey; + background-color: white; + color: @ios7-color; +} + +.dijitCalendarDateTemplate-LastChild-styles () { + border-right: none; +} + +.dijitCalendarDateLabel-DateTemplate-styles () { + border: none; +} + +.dijitCalendarDateLabel-PrevMonth-styles () { + color: lightGrey; +} + +.dijitCalendarDateLabel-Hovered-styles () { + color: @ios7-grey4; +} + +.dijitCalendarDateLabel-Selected-styles () { + color: @ios7-grey4; + +} + +.dijitCalendarDateLabel-Selected-compat () { + color: @ios7-grey4; +} + +.dijitCalendarDateLabel-Selected-compat-gecko () { + color: @ios7-grey4; +} + +.dijitCalendarDateLabel-Active-styles () { + +} + +.dijitCalendarDateLabel-Active-compat () { + +} + +.dijitCalendarDateLabel-Active-compat-gecko () { + +} + +.dijitCalendarYearLabel-styles () { + padding: 0; + background-color: @ios7-base-color; +} + +.dijitCalendarYearLabel-compat () { + background-color: @ios7-base-color; +} + +.dijitCalendarYearLabel-compat-gecko () { + background-color: @ios7-base-color; +} + +.dijitCalendarSelectedYear-styles () { + color: white; + font-size: 16px; +} + +.dijitCalendarNextYear-styles () { + padding: 1px 6px 3px 6px; + color: white; + font-size: 12px; +} + +// SearchBox.less +@mbl-searchbox-cancel-button-color: @ios7-color; +@mbl-searchbox-cancel-button-bg-color: transparent; +.mblSearchBox-Cancel-Button-styles () { + border-radius: 0; +} +@mbl-searchbox-results-decoration-color: @ios7-color; + +// ProgressBar.less +.mblProgressBar-styles () { + border-radius: 0px; + height: 2px; + background-image: none; + background-color: @ios7-grey4; +} + +.mblProgressBarProgress-styles () { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; + background-image: none; + background-color: @ios7-base-color; + height: 2px; +} + +.mblProgressBarComplete-styles () { + border-radius: 0px; +} + +.mblProgressBarNotStarted-styles () { +} + +.mblProgressBarMsg-styles () { + top: 3px; +} + +.mblProgressBar-compat () { + background-color: @ios7-base-color; +} + +.mblProgressBarProgress-compat () { + background-color: @ios7-grey4; +} + +.mblProgressBar-compat-gecko () { + background-image: none; + background-color: @ios7-base-color; +} + +.mblProgressBarProgress-compat-gecko () { + background-image: none; + background-color: @ios7-grey4; +} + +// ValuePicker.less +.mbl-value-picker-slot-button-background-image () {background-image: none;} +@mbl-value-picker-slot-button-background-image-gecko: none; +@mbl-value-picker-slot-button-radius: 0px; +.mbl-value-picker-slot-input-area-background-image () {background-image: none;} +@mbl-value-picker-slot-input-area-background-image-gecko: none; + +.mblValuePickerSlot-style () { + margin: 0 5px; +} + +.mblValuePickerSlot-input-style () { + font-size: 28px; + color: @ios7-color; +} + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/variables_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/variables_rtl.less new file mode 100644 index 00000000..b4f819a5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/ios7/variables_rtl.less @@ -0,0 +1,35 @@ +// Carousel_rtl +@mbl-carousel-margin-rtl: ~"2px 0px 2px 4px"; + +// IconContainer_rtl +@mbl-icon-container-right-rtl: -2px; + +// IconMenu_rtl-compat +@mbl-border-radius-rtl: 6px; + +// TabBar_rtl-compat +@mbl-moz-border-radius-rtl: 5px; + +// TabBar_rtl +@mbl-border-width-rtl: ~"1px 0px 1px 1px !important"; +@mbl-tb-border-radius-rtl: 5px; + +// ThemeID +@theme-id: ios7; + +// Switch_rtl-compat +@mbl-bg-image-r-rtl: ~"url(compat/switch-square-r.gif)"; +@mbl-bg-image-l-rtl: ~"url(compat/switch-square-l.gif)"; + +// Switch_rtl +@mbl-switchOn-left-rtl: -53px; +@mbl-switchBg-left-rtl: 53px; +@mbl-switch-knob-rtl: 53px; +@mbl-switch-text-right-rtl: -40px; + +// ToolBarButton_rtl +@mbl-toolbar-right-arrow-rtl: -1px; +@mbl-toolbar-left-arrow-rtl: -2px; + +// ProgressIndicator_rtl +@mbl-progress-center-left-rtl: 50%; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Accordion-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Accordion-compat.css new file mode 100644 index 00000000..2cea31bc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Accordion-compat.css @@ -0,0 +1,25 @@ + +.mblAccordionTitle { + background-color: #f0f2f3; +} +.mblAccordionTitleSelected { + background-color: #7796ac; +} +.dj_gecko .mblAccordionTitle { + background-image: -moz-linear-gradient(top, #fcfcfc 0%, #f0f2f3 20%, #e1e5e8 100%); +} +.dj_gecko .mblAccordionTitleSelected { + background-image: -moz-linear-gradient(top, #97afc0 0%, #7796ac 20%, #46708e 100%); +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Accordion.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Accordion.css new file mode 100644 index 00000000..fa500546 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Accordion.css @@ -0,0 +1,73 @@ + +.mblAccordion { + border-style: outset; + border-width: 1px; + border-color: #8c8f91; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + border-top: 1px solid #8c8f91; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcfcfc), to(#e1e5e8), color-stop(0.2, #f0f2f3)); + background-image: linear-gradient(to bottom, #fcfcfc 0%, #f0f2f3 20%, #e1e5e8 100%); +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: black; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + border-bottom: 1px solid #8c8f91; + background-image: -webkit-gradient(linear, left top, left bottom, from(#97afc0), to(#46708e), color-stop(0.2, #7796ac)); + background-image: linear-gradient(to bottom, #97afc0 0%, #7796ac 20%, #46708e 100%); + color: white; +} +.mblAccordionTitleSelected .mblAccordionTitleAnchor { + color: white; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Accordion_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Accordion_rtl.css new file mode 100644 index 00000000..5b9612f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Accordion_rtl.css @@ -0,0 +1,6 @@ + +.mblAccordionIconParentRtl { + float: right; + -webkit-transform: scaleX(-1); + transform: scaleX(-1); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Button-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Button-compat.css new file mode 100644 index 00000000..4fcc547d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Button-compat.css @@ -0,0 +1,41 @@ + +.mblButton { + background-image: url(compat/button-bg.png); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblBlueButton { + background-image: url(compat/blue-button-bg.png); +} +.mblBlueButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.mblRedButton { + background-image: url(compat/red-button-bg.png); +} +.mblRedButtonSelected { + background-image: url(compat/red-button-sel-bg.png); +} +.dj_gecko .mblButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblButtonSelected { + background-image: -moz-linear-gradient(top, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.dj_gecko .mblBlueButton { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblBlueButtonSelected { + background-image: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_gecko .mblRedButton { + background-image: -moz-linear-gradient(top, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); +} +.dj_gecko .mblRedButtonSelected { + background-image: -moz-linear-gradient(top, #c1a48e 0%, #a27758 50%, #996947 50%, #9b6c4a 100%); +} +.dj_ff3 .mblButton { + -moz-border-radius: 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Button.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Button.css new file mode 100644 index 00000000..696f55a6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Button.css @@ -0,0 +1,47 @@ + +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 5px; + color: black; + font-size: 13px; +} +.mblButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#bfbfbf), color-stop(0.5, #ebebeb), color-stop(0.5, #dedede)); + background-image: linear-gradient(to bottom, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); + color: black; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + color: white; +} +.mblBlueButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115), color-stop(0.5, #ff4d25), color-stop(0.5, #ed4d15)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); + color: white; +} +.mblRedButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#c1a48e), to(#9b6c4a), color-stop(0.5, #a27758), color-stop(0.5, #996947)); + background-image: linear-gradient(to bottom, #c1a48e 0%, #a27758 50%, #996947 50%, #9b6c4a 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Carousel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Carousel.css new file mode 100644 index 00000000..57e43929 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Carousel.css @@ -0,0 +1,77 @@ + +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Carousel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Carousel_rtl.css new file mode 100644 index 00000000..1fe79bbd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Carousel_rtl.css @@ -0,0 +1,13 @@ + +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 4px 2px 0px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/CheckBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/CheckBox-compat.css new file mode 100644 index 00000000..ce8cd633 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/CheckBox-compat.css @@ -0,0 +1,38 @@ + +.mblCheckBox { + background-image: url(compat/button-bg.png); +} +.mblCheckBoxSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblCheckBox { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/CheckBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/CheckBox.css new file mode 100644 index 00000000..b23d1aa4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/CheckBox.css @@ -0,0 +1,49 @@ + +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; + border-radius: 5px; +} +.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#bfbfbf), color-stop(0.5, #ebebeb), color-stop(0.5, #dedede)); + background-image: linear-gradient(to bottom, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ComboBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ComboBox-compat.css new file mode 100644 index 00000000..b376126a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ComboBox-compat.css @@ -0,0 +1,7 @@ + +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: 0 0 50px #000000; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: -moz-linear-gradient(top, #048bf4 0%, #005ce5 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ComboBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ComboBox.css new file mode 100644 index 00000000..f1b741e5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ComboBox.css @@ -0,0 +1,57 @@ + +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: 0 0 50px #000000; + box-shadow: 0 0 50px #000000; + border-radius: 0; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-radius: 0; + background-color: white; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: #ffffff; + color: inherit; +} +.mblComboBoxMenuItemSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#048bf4), to(#005ce5)); + background-image: linear-gradient(to bottom, #048bf4 0%, #005ce5 100%); + color: white; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ComboBox_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ComboBox_rtl.css new file mode 100644 index 00000000..10932a96 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ComboBox_rtl.css @@ -0,0 +1,4 @@ + +.mblComboBoxMenuItemRtl { + text-align: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/DatePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/DatePicker.css new file mode 100644 index 00000000..3b68f497 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/DatePicker.css @@ -0,0 +1,184 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.dj_ios6 .mblSpinWheelSlotLabelBlue { + color: #0160f2; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 3px; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + border-radius: 3px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #9cb1c9), color-stop(0.35, #f0f1f5), color-stop(0.65, #f0f1f5), color-stop(0.9, #9cb1c9)); + background-image: linear-gradient(to bottom, #9cb1c9 10%, #f0f1f5 35%, #f0f1f5 65%, #9cb1c9 90%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #eaeaea), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #efefef)); + background-image: linear-gradient(to bottom, #eaeaea 10%, #fafafa 20%, #ffffff 50%, #efefef 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/EdgeToEdgeCategory-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/EdgeToEdgeCategory-compat.css new file mode 100644 index 00000000..3ae66572 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/EdgeToEdgeCategory-compat.css @@ -0,0 +1,7 @@ + +.mblEdgeToEdgeCategory { + background-image: url(compat/edge-categ-bg.png); +} +.dj_gecko .mblEdgeToEdgeCategory { + background-image: -moz-linear-gradient(top, #8f9ea9 0%, #b7c0c7 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/EdgeToEdgeCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/EdgeToEdgeCategory.css new file mode 100644 index 00000000..fe6852b6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/EdgeToEdgeCategory.css @@ -0,0 +1,20 @@ + +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 22px; + border-top: 1px solid #a4b0b9; + border-bottom: 1px solid #979da3; + background-image: -webkit-gradient(linear, left top, left bottom, from(#8f9ea9), to(#b7c0c7)); + background-image: linear-gradient(to bottom, #8f9ea9 0%, #b7c0c7 100%); + color: white; + line-height: 22px; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/EdgeToEdgeList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/EdgeToEdgeList.css new file mode 100644 index 00000000..6af90b49 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/EdgeToEdgeList.css @@ -0,0 +1,9 @@ + +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: white; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #707c84; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/FixedSplitter.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/FixedSplitter.css new file mode 100644 index 00000000..3c88bebb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/FixedSplitter.css @@ -0,0 +1,21 @@ + +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/FormLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/FormLayout.css new file mode 100644 index 00000000..19a22b9b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/FormLayout.css @@ -0,0 +1,160 @@ + +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/FormLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/FormLayout_rtl.css new file mode 100644 index 00000000..44ebb14d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/FormLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/GridLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/GridLayout.css new file mode 100644 index 00000000..ebdc391f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/GridLayout.css @@ -0,0 +1,24 @@ + +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/GridLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/GridLayout_rtl.css new file mode 100644 index 00000000..3f5bdd0d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/GridLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblGridLayoutRtl > div { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Heading-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Heading-compat.css new file mode 100644 index 00000000..4138d74d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Heading-compat.css @@ -0,0 +1,10 @@ + +.mblHeading { + background-image: url(compat/heading-bg.png); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Heading.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Heading.css new file mode 100644 index 00000000..93c8340f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Heading.css @@ -0,0 +1,51 @@ + +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.dj_ios6.dj_phone .mblHeading { + border-top: 1px solid #eff2f7; + border-bottom: 1px solid #3f5c80; + background-image: -webkit-gradient(linear, left top, left bottom, from(#d0d9e6), to(#587397), color-stop(0.025, #d0d9e6), color-stop(0.025, #beccdd)); + background-image: linear-gradient(to bottom, #d0d9e6 0%, #d0d9e6 2.5%, #beccdd 2.5%, #587397 100%); +} +.dj_ios6.dj_phone .mblHeading.mblFixedBottomBar { + border-top: 1px solid #5e748c; + border-bottom: 1px solid #577296; + background-image: -webkit-gradient(linear, left top, left bottom, from(#dee4ec), to(#577296), color-stop(0.025, #dee4ec), color-stop(0.025, #c1cddd), color-stop(0.05, #c1cddd), color-stop(0.05, #b0bfd3)); + background-image: linear-gradient(to bottom, #dee4ec 0%, #dee4ec 2.5%, #c1cddd 2.5%, #c1cddd 5%, #b0bfd3 5%, #577296 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Heading.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Heading.less new file mode 100644 index 00000000..c04e4470 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Heading.less @@ -0,0 +1,15 @@ +@import "variables.less"; +@import "../common/Heading.less"; +/* iOS 6 specific */ +.dj_ios6.dj_phone { + .mblHeading { + border-top: 1px solid #eff2f7; + border-bottom: 1px solid #3f5c80; + .background-image-linear-gradient-top-bottom-2-stops(#d0d9e6, #587397, 0.025, #d0d9e6, 0.025, #beccdd); + } + .mblHeading.mblFixedBottomBar { + border-top: 1px solid #5e748c; + border-bottom: 1px solid #577296; + .background-image-linear-gradient-top-bottom-4-stops(#dee4ec, #577296, 0.025, #dee4ec, 0.025, #c1cddd, 0.05, #c1cddd, 0.05, #b0bfd3); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer-compat.css new file mode 100644 index 00000000..8a99f941 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer-compat.css @@ -0,0 +1,59 @@ + +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url(compat/icon-content-heading-bg.png); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer-compat.less new file mode 100644 index 00000000..e2df9856 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons-compat.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross-compat.css"); + +@import "variables.less"; +@import "../common/IconContainer-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer.css new file mode 100644 index 00000000..3e1adc8a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer.css @@ -0,0 +1,379 @@ + +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer.less new file mode 100644 index 00000000..729745a1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross.css"); + +@import "variables.less"; +@import "../common/IconContainer.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer_rtl.css new file mode 100644 index 00000000..0aa248fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconContainer_rtl.css @@ -0,0 +1,13 @@ + +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: -2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu-compat.css new file mode 100644 index 00000000..3132d57b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu-compat.css @@ -0,0 +1,37 @@ + +.mblIconMenu { + background-color: #040404; +} +.mblIconMenuItemSel { + background-color: #0a36e9; +} +.dj_gecko .mblIconMenu { + background-color: transparent; + background-image: -moz-linear-gradient(top, rgba(102, 102, 119, 0.85) 0%, rgba(22, 22, 30, 0.85) 35%, rgba(4, 4, 4, 0.85) 100%); + -moz-box-shadow: 1px 3px 5px rgba(0, 0, 0, 0.5); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-color: transparent; + background-image: -moz-linear-gradient(top, rgba(139, 157, 229, 0.6) 0%, rgba(10, 54, 233, 0.8) 60%, rgba(10, 54, 233, 0.8) 100%); +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 10px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 10px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 10px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 10px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 10px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu.css new file mode 100644 index 00000000..db98c6e2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu.css @@ -0,0 +1,66 @@ + +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 10px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(102, 102, 119, 0.85)), to(rgba(4, 4, 4, 0.85)), color-stop(0.35, rgba(22, 22, 30, 0.85))); + background-image: linear-gradient(to bottom, rgba(102, 102, 119, 0.85) 0%, rgba(22, 22, 30, 0.85) 35%, rgba(4, 4, 4, 0.85) 100%); + border: 2px solid #9a9a9e; + border-top-color: #f2f2f3; + -webkit-box-shadow: 1px 3px 5px rgba(0, 0, 0, 0.5); + box-shadow: 1px 3px 5px rgba(0, 0, 0, 0.5); +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid #6b6c6f; + border-bottom: 1px solid #6b6c6f; +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 10px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 10px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 10px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 10px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 11px; + color: #b8bbc0; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(139, 157, 229, 0.6)), to(rgba(10, 54, 233, 0.8)), color-stop(0.6, rgba(10, 54, 233, 0.8))); + background-image: linear-gradient(to bottom, rgba(139, 157, 229, 0.6) 0%, rgba(10, 54, 233, 0.8) 60%, rgba(10, 54, 233, 0.8) 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu_rtl-compat.css new file mode 100644 index 00000000..42aaed4a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu_rtl-compat.css @@ -0,0 +1,17 @@ + +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 10px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 10px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 10px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 10px; + -moz-border-bottom-right-radius: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu_rtl.css new file mode 100644 index 00000000..776c11b1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/IconMenu_rtl.css @@ -0,0 +1,23 @@ +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid #6b6c6f; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-right-radius: 10px; + border-top-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0px; + border-top-left-radius: 10px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-right-radius: 10px; + border-bottom-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 10px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem-compat.css new file mode 100644 index 00000000..eb5aabd0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem-compat.css @@ -0,0 +1,24 @@ + +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #048bf4; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #048bf4 0%, #005ce5 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem-compat.less new file mode 100644 index 00000000..332107ef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayArrow-compat.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck-compat.css"); + +@import "variables.less"; +@import "../common/ListItem-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem.css new file mode 100644 index 00000000..1953441d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem.css @@ -0,0 +1,160 @@ + +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 43px; + list-style-type: none; + line-height: 43px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #adaaad; + font-weight: bold; + color: black; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#048bf4), to(#005ce5)); + background-image: linear-gradient(to bottom, #048bf4 0%, #005ce5 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked { + color: #314e84; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: #324f85; + margin-top: 12px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.dj_ios6 .mblListItemRightText { + color: #385487; + font-weight: normal; +} +.dj_ios6 .mblListItem { + + -webkit-perspective: 1000; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem.less new file mode 100644 index 00000000..fefce260 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem.less @@ -0,0 +1,17 @@ +@import url("../common/domButtons/DomButtonGrayArrow.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck.css"); + +@import "variables.less"; +@import "../common/ListItem.less"; +/* iOS 6 specific */ +.dj_ios6 { + .mblListItemRightText { + color: #385487; + font-weight: normal; + } + + .mblListItem { + /* enables hardware acc. to avoid flickering issues - see #16956 */ + -webkit-perspective: 1000; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem_rtl-compat.css new file mode 100644 index 00000000..f3e90656 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem_rtl-compat.css @@ -0,0 +1,6 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem_rtl.css new file mode 100644 index 00000000..f1009b9f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem_rtl.css @@ -0,0 +1,40 @@ + +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonDarkBlueCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem_rtl.less new file mode 100644 index 00000000..3d3e9eb2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ListItem_rtl.less @@ -0,0 +1,4 @@ +@import url("../common/domButtons/DomButtonGrayArrow_rtl.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck_rtl.css"); + +@import "../common/ListItem_rtl.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Opener-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Opener-compat.css new file mode 100644 index 00000000..f4f276da --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Opener-compat.css @@ -0,0 +1,63 @@ + +.mblOverlay { + text-align: center; + background-color: #cecece; + background-image: none; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #cecece 100%); +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.mblTooltip .mblHeading { + background-image: url("compat/tooltip-heading-bg.png"); +} +.mblTooltip .mblHeading .mblToolBarButton { + background-color: #000924; + background-image: url("compat/tooltip-button-bg.png"); +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 8px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #889bb3; + border-bottom: 1px solid #889bb3; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Opener.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Opener.css new file mode 100644 index 00000000..f0f49745 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Opener.css @@ -0,0 +1,250 @@ + +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #cecece 100%); +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #5a5a5a; + border-radius: 8px; + background-color: #121b2f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#656872), to(#121b2f), color-stop(0.1, #2c3345), color-stop(0.1, #161f32)); + background-image: linear-gradient(to bottom, #656872 0%, #2c3345 10%, #161f32 10%, #121b2f 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #f9f7ba; + background-image: none; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #f9f7ba; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #f9f7ba; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #f9f7ba; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #f9f7ba; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #5a5a5a; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #5a5a5a; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #5a5a5a; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #5a5a5a; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #192235; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #192235; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #656872; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #172035; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + border-top: 3px solid #4f5055; + border-bottom: 1px solid #2d3642; + border-left: 1px solid #2a2d47; + border-radius: 3px 3px 0 0; + background-color: #889bb3; + background-image: -webkit-gradient(linear, left top, left bottom, from(#5e6167), to(#1a1d24), color-stop(0.5, #2e322b)); + background-image: linear-gradient(to bottom, #5e6167 0%, #2e322b 50%, #1a1d24 100%); + font-weight: normal; +} +.mblTooltip .mblHeading .mblToolBarButton { + border: 1px inset #434450; + background-image: -webkit-gradient(linear, left top, left bottom, from(#686f80), to(#000924), color-stop(0.5, #000b29)); + background-image: linear-gradient(to bottom, #686f80 0%, #000b29 50%, #000924 100%); + font-weight: normal; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Overlay-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Overlay-compat.css new file mode 100644 index 00000000..6cc0c285 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Overlay-compat.css @@ -0,0 +1,17 @@ + +.mblOverlay { + text-align: center; + background-color: #cecece; + background-image: none; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #cecece 100%); +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Overlay.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Overlay.css new file mode 100644 index 00000000..a96aecd8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Overlay.css @@ -0,0 +1,90 @@ +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #cecece 100%); +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Overlay.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Overlay.less new file mode 100644 index 00000000..e49ea9eb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Overlay.less @@ -0,0 +1,5 @@ +@import url("../common/transitions/coverv.css"); +@import url("../common/transitions/revealv.css"); + +@import "variables.less"; +@import "../common/Overlay.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/PageIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/PageIndicator-compat.css new file mode 100644 index 00000000..29d4f8ab --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/PageIndicator-compat.css @@ -0,0 +1,4 @@ + +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/PageIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/PageIndicator.css new file mode 100644 index 00000000..0b40e78d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/PageIndicator.css @@ -0,0 +1,23 @@ + +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressBar-compat.css new file mode 100644 index 00000000..c9062822 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressBar-compat.css @@ -0,0 +1,15 @@ + +.mblProgressBar { + background-color: white; +} +.mblProgressBarProgress { + background-color: #3186e7; +} +.dj_gecko .mblProgressBar { + background-image: -moz-linear-gradient(top, #a5a6a5 0%, #d6d7d6 50%, #ffffff 50%, #ffffff 90%, #b5b6b5 100%); +} +.dj_gecko .mblProgressBarProgress { + -moz-transition-property: width; + -moz-transition-duration: 0.25s; + background-image: -moz-linear-gradient(top, #b0c0ff 0%, #70b2ff 60%, #3470b6 60%, #2f83e1 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressBar.css new file mode 100644 index 00000000..d0474178 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressBar.css @@ -0,0 +1,33 @@ + +.mblProgressBar { + position: relative; + border-radius: 6px; + height: 9px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#a5a6a5), to(#b5b6b5), color-stop(0.5, #d6d7d6), color-stop(0.5, #ffffff), color-stop(0.9, #ffffff)); + background-image: linear-gradient(to bottom, #a5a6a5 0%, #d6d7d6 50%, #ffffff 50%, #ffffff 90%, #b5b6b5 100%); +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + height: 7px; + border: 1px solid #5e6fa3; + border-radius: 6px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0c0ff), to(#2f83e1), color-stop(0.6, #70b2ff), color-stop(0.6, #3470b6)); + background-image: linear-gradient(to bottom, #b0c0ff 0%, #70b2ff 60%, #3470b6 60%, #2f83e1 100%); +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: -1px; + font-size: 10px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressIndicator-compat.css new file mode 100644 index 00000000..091d2c35 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressIndicator-compat.css @@ -0,0 +1,83 @@ + +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressIndicator.css new file mode 100644 index 00000000..24420021 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressIndicator.css @@ -0,0 +1,157 @@ + +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressIndicator_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressIndicator_rtl.css new file mode 100644 index 00000000..e611fc4e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ProgressIndicator_rtl.css @@ -0,0 +1,14 @@ + +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 0px; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RadioButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RadioButton-compat.css new file mode 100644 index 00000000..e353cef0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RadioButton-compat.css @@ -0,0 +1,32 @@ + +.mblRadioButton { + background-image: url(compat/button-bg.png); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.dj_gecko .mblRadioButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RadioButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RadioButton.css new file mode 100644 index 00000000..7689de18 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RadioButton.css @@ -0,0 +1,49 @@ + +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRect-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRect-compat.css new file mode 100644 index 00000000..68a6dd12 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRect-compat.css @@ -0,0 +1,72 @@ + +.mblRoundRect.mblShadow { + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRect.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRect.css new file mode 100644 index 00000000..25df3fd4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRect.css @@ -0,0 +1,12 @@ + +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectCategory.css new file mode 100644 index 00000000..786e4044 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectCategory.css @@ -0,0 +1,12 @@ + +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #4c566c; + text-shadow: #ffffff 0 1px 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectCategory_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectCategory_rtl.css new file mode 100644 index 00000000..8e8a8e88 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectCategory_rtl.css @@ -0,0 +1,4 @@ + +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectList-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectList-compat.css new file mode 100644 index 00000000..6eb84bad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectList-compat.css @@ -0,0 +1,77 @@ + +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectList.css new file mode 100644 index 00000000..164175a5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/RoundRectList.css @@ -0,0 +1,19 @@ + +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ScrollablePane.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ScrollablePane.css new file mode 100644 index 00000000..425b9209 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ScrollablePane.css @@ -0,0 +1,12 @@ + +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SearchBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SearchBox-compat.css new file mode 100644 index 00000000..0141623b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SearchBox-compat.css @@ -0,0 +1,22 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 5px; +} +.mblSearchBox { + height: auto; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SearchBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SearchBox.css new file mode 100644 index 00000000..af99c761 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SearchBox.css @@ -0,0 +1,63 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 5px; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: #b2b2b2; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid #b2b2b2; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 1em; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #93989c), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #93989c), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SimpleDialog-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SimpleDialog-compat.css new file mode 100644 index 00000000..cba8e708 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SimpleDialog-compat.css @@ -0,0 +1,12 @@ + +.mblSimpleDialogDecoration { + background-color: #233260; +} +.dj_gecko .mblSimpleDialogDecoration { + background-color: rgba(35, 50, 96, 0.85); + background-image: -moz-linear-gradient(top, rgba(150, 150, 170, 0.85) 0%, rgba(77, 85, 119, 0.85) 15%, rgba(35, 50, 96, 0.85) 15%, rgba(18, 29, 68, 0.85) 100%); + -moz-box-shadow: 0 3px 2px #000000; +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 10px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SimpleDialog.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SimpleDialog.css new file mode 100644 index 00000000..7c4aef4a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SimpleDialog.css @@ -0,0 +1,69 @@ + +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration { + border-radius: 10px; + background-color: rgba(35, 50, 96, 0.85); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(150, 150, 170, 0.85)), to(rgba(18, 29, 68, 0.85)), color-stop(0.15, rgba(77, 85, 119, 0.85)), color-stop(0.15, rgba(35, 50, 96, 0.85))); + background-image: linear-gradient(to bottom, rgba(150, 150, 170, 0.85) 0%, rgba(77, 85, 119, 0.85) 15%, rgba(35, 50, 96, 0.85) 15%, rgba(18, 29, 68, 0.85) 100%); + border: 2px solid #bac1d3; + border-top-color: #eaeaf2; + -webkit-box-shadow: 0 3px 2px #000000; + box-shadow: 0 3px 2px #000000; + color: white; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 14px 0 7px; + width: 262px; + font-weight: bold; +} +.mblSimpleDialogText { + margin: 7px 0 14px; + width: 262px; +} +.dj_ios6 .mblSimpleDialogDecoration { + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(179, 184, 199, 0.85)), to(rgba(35, 50, 90, 0.85)), color-stop(0.2, rgba(109, 120, 148, 0.85)), color-stop(0.2, rgba(33, 48, 88, 0.85))); + background-image: linear-gradient(to bottom, rgba(179, 184, 199, 0.85) 0%, rgba(109, 120, 148, 0.85) 20%, rgba(33, 48, 88, 0.85) 20%, rgba(35, 50, 90, 0.85) 100%); + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.dj_ios6 .mblSimpleDialogButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b3b8c7), to(#6c7692), color-stop(0.5, #6d7894), color-stop(0.5, #586484)); + background-image: linear-gradient(to bottom, #b3b8c7 0%, #6d7894 50%, #586484 50%, #6c7692 100%); + border-color: #273a52; + font-weight: bold; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.dj_ios6 .mblSimpleDialogButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#4f5157), to(#4f5157), color-stop(0.5, #6d6f74), color-stop(0.5, #61656f)); + background-image: linear-gradient(to bottom, #4f5157 0%, #6d6f74 50%, #61656f 50%, #4f5157 100%); + border-color: #273a52; + font-weight: bold; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SimpleDialog.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SimpleDialog.less new file mode 100644 index 00000000..478459fe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SimpleDialog.less @@ -0,0 +1,23 @@ +@import "variables.less"; +@import "../common/SimpleDialog.less"; +/* iOS 6 specific */ +.dj_ios6 { + .mblSimpleDialogDecoration { + .background-image-linear-gradient-top-bottom-2-stops(rgba(179,184,199,0.85), rgba(35,50,90,0.85), 0.2, rgba(109,120,148,0.85), 0.2, rgba(33,48,88,0.85)); + text-shadow: rgba(0,0,0,0.6) 0 -1px 0; + } + .mblSimpleDialogButton { + .background-image-linear-gradient-top-bottom-2-stops(#b3b8c7, #6c7692, 0.5, #6d7894, 0.5, #586484); + border-color: rgb(39, 58, 82); + font-weight: bold; + color: white; + text-shadow: rgba(0,0,0,0.6) 0 -1px 0; + } + .mblSimpleDialogButtonSelected { + .background-image-linear-gradient-top-bottom-2-stops(#4f5157, #4f5157, 0.5, #6d6f74, 0.5, #61656f); + border-color: rgb(39, 58, 82); + font-weight: bold; + color: white; + text-shadow: rgba(0,0,0,0.6) 0 -1px 0; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Slider-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Slider-compat.css new file mode 100644 index 00000000..4fc26530 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Slider-compat.css @@ -0,0 +1,40 @@ + +.mblSlider { + background-image: url(compat/slider-h-bg.png); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url(compat/slider-h-bar-bg.png); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url(compat/slider-handle-bg.png); +} +.mblSliderV { + background-color: #cecece; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #2859b1; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -moz-linear-gradient(top, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: -moz-linear-gradient(top, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.dj_gecko .mblSliderHandle { + background-image: -moz-linear-gradient(top, #cccccc 0%, #fafafa 100%); +} +.dj_ff3 .mblSlider { + -moz-border-radius: 8px; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 8px; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 10px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Slider.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Slider.css new file mode 100644 index 00000000..ae27e5b3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Slider.css @@ -0,0 +1,65 @@ + +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 8px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cecece), to(#fdfdfd), color-stop(0.5, #eeeeee), color-stop(0.5, #f8f8f8)); + background-image: linear-gradient(to bottom, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border-color: #b0b0b0; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 8px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2859b1), to(#75acfb), color-stop(0.5, #3f84eb), color-stop(0.5, #4c8eee)); + background-image: linear-gradient(to bottom, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 10px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cccccc), to(#fafafa)); + background-image: linear-gradient(to bottom, #cccccc 0%, #fafafa 100%); + border-color: #9d9d9d; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel-compat.css new file mode 100644 index 00000000..4d605d58 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel-compat.css @@ -0,0 +1,36 @@ +.mblSpinWheel { + background-image: url(../common/compat/spinwheel-bg.png); +} +.mblSpinWheelBar { + background-image: url(../common/compat/spinwheel-bar.png); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel.css new file mode 100644 index 00000000..cb82a290 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel.css @@ -0,0 +1,80 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.dj_ios6 .mblSpinWheelSlotLabelBlue { + color: #0160f2; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel.less new file mode 100644 index 00000000..fe794be4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel.less @@ -0,0 +1,8 @@ +@import "variables.less"; +@import "../common/SpinWheel.less"; +/* iOS6 specific */ +.dj_ios6 { + .mblSpinWheelSlotLabelBlue { + color: #0160f2; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel_rtl-compat.css new file mode 100644 index 00000000..98aab55f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel_rtl-compat.css @@ -0,0 +1,4 @@ +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel_rtl.css new file mode 100644 index 00000000..2f94024c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/SpinWheel_rtl.css @@ -0,0 +1,5 @@ + +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch-compat.css new file mode 100644 index 00000000..8d4ddb51 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch-compat.css @@ -0,0 +1,109 @@ + +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #cccccc 0%, #fafafa 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 5px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 5px; + background-image: url(compat/switch-square-k.gif); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round1-k.gif); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round2-k.gif); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc1-k.gif); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc2-k.gif); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round1-k.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch-compat.less new file mode 100644 index 00000000..7fe42fd0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch-compat.less @@ -0,0 +1,7 @@ +@import "variables.less"; +@import "../common/Switch-compat.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwRoundShape1-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch.css new file mode 100644 index 00000000..3ba4f557 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch.css @@ -0,0 +1,231 @@ + +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 8px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-width: 1px; + border-style: solid; + border-color: #939393 #aaaaaa #cbcbcb #767676; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2859b1), to(#75acfb), color-stop(0.5, #3f84eb), color-stop(0.5, #4c8eee)); + background-image: linear-gradient(to bottom, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cecece), to(#fdfdfd), color-stop(0.5, #eeeeee), color-stop(0.5, #f8f8f8)); + background-image: linear-gradient(to bottom, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cccccc), to(#fafafa)); + background-image: linear-gradient(to bottom, #cccccc 0%, #fafafa 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-width: 1px; + border-style: solid; + border-color: #5e5e5e #9e9e9e #828282 #797979; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 5px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 5px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 77px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwDefaultShape .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 50px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwDefaultShape .mblSwitchText { + width: 50px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 26px; +} +.dj_ios6 .mblSwitchBgLeft { + background-color: #007fea; + background-image: -webkit-gradient(linear, left top, left bottom, from(#0060b1), to(#73b3ea), color-stop(0.5, #007fea), color-stop(0.5, #218fec)); + background-image: linear-gradient(to bottom, #0060b1 0%, #007fea 50%, #218fec 50%, #73b3ea 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch.less new file mode 100644 index 00000000..003bba5c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch.less @@ -0,0 +1,15 @@ +@import "variables.less"; +@import "../common/Switch.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwRoundShape1-styles; +} +/* i0S 6 specific */ +.dj_ios6 { + .mblSwitchBgLeft { + background-color: #007fea; + .background-image-linear-gradient-top-bottom-2-stops(#0060b1, #73b3ea, 0.5, #007fea, 0.5, #218fec); + } +} + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch_rtl-compat.css new file mode 100644 index 00000000..0ae0917d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch_rtl-compat.css @@ -0,0 +1,37 @@ + +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-round1-l.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch_rtl.css new file mode 100644 index 00000000..bae50d77 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Switch_rtl.css @@ -0,0 +1,110 @@ + +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 50px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 50px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -26px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar-compat.css new file mode 100644 index 00000000..9900539c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar-compat.css @@ -0,0 +1,63 @@ + +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-image: none; + background-color: #000000; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url(compat/heading-bg.png); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url(compat/tab-seg-button-bg.png); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url(compat/tab-seg-sel-button-bg.png); +} +.dj_gecko .mblTabBarSegmentedControl .mblTabBarButton { + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url(compat/tab-slim-bar-bg.png); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url(compat/tab-tall-bar-bg.png); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar-compat.less new file mode 100644 index 00000000..c0476f34 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar-compat.less @@ -0,0 +1,3 @@ +@import "variables.less"; +@import "../common/TabBar-compat.less"; +@import "../common/domButtons/DomButtonWhiteCross-compat.css"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar.css new file mode 100644 index 00000000..cb1c0b22 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar.css @@ -0,0 +1,303 @@ + +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + color: #979797; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#484848), to(#242424), color-stop(0.5, #353535), color-stop(0.5, #242424)); + background-image: linear-gradient(to bottom, #484848 0%, #353535 50%, #242424 50%, #242424 100%); +} +.mblTabBarTabBar .mblTabBarButtonSelected .mblTabBarButtonLabel { + color: white; +} +.mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-style: solid; + border-color: #2f3740 #405a7e #375073 #3a4755; + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-color: #5877a2; + background-image: -webkit-gradient(linear, left top, left bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #2d3642; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; + background-color: #212421; + background-image: none; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); + background-color: #636363; + background-image: none; +} +.dj_ios6.dj_phone .mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#d0d9e6), to(#587397), color-stop(0.025, #d0d9e6), color-stop(0.025, #beccdd)); + background-image: linear-gradient(to bottom, #d0d9e6 0%, #d0d9e6 2.5%, #beccdd 2.5%, #587397 100%); +} +.dj_ios6.dj_phone .mblTabBarSegmentedControl .mblTabBarButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #6d84a2 100%); +} +.dj_ios6.dj_phone .mblTabBarSegmentedControl .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #4a6c9b 100%); +} +.dj_ios6.dj_phone .mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#d0d9e6), to(#587397), color-stop(0.025, #d0d9e6), color-stop(0.025, #beccdd)); + background-image: linear-gradient(to bottom, #d0d9e6 0%, #d0d9e6 2.5%, #beccdd 2.5%, #587397 100%); +} +.dj_ios6.dj_phone .mblTabBarStandardTab .mblTabBarButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #6d84a2 100%); +} +.dj_ios6.dj_phone .mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #4a6c9b 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar.less new file mode 100644 index 00000000..f8ff1b2b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar.less @@ -0,0 +1,24 @@ +@import "variables.less"; +@import "../common/TabBar.less"; +@import "../common/domButtons/DomButtonWhiteCross.css"; +/* iOS 6 specific */ +.dj_ios6.dj_phone { + .mblTabBarSegmentedControl { + .background-image-linear-gradient-top-bottom-2-stops(#d0d9e6, #587397, 0.025, #d0d9e6, 0.025, #beccdd); + .mblTabBarButton { + .background-image-linear-gradient-top-bottom(#b0bccd, #6d84a2); + } + .mblTabBarButtonSelected { + .background-image-linear-gradient-top-bottom(#8ea4c1, #4a6c9b); + } + } + .mblTabBarStandardTab { + .background-image-linear-gradient-top-bottom-2-stops(#d0d9e6, #587397, 0.025, #d0d9e6, 0.025, #beccdd); + .mblTabBarButton { + .background-image-linear-gradient-top-bottom(#b0bccd, #6d84a2); + } + .mblTabBarButtonSelected { + .background-image-linear-gradient-top-bottom(#8ea4c1, #4a6c9b); + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar_rtl-compat.css new file mode 100644 index 00000000..9d501c64 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar_rtl-compat.css @@ -0,0 +1,19 @@ + +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 5px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 5px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar_rtl.css new file mode 100644 index 00000000..e0527eb1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TabBar_rtl.css @@ -0,0 +1,83 @@ + +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 5px; + border-top-left-radius: 0px; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 5px; + border-top-right-radius: 0px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextArea-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextArea-compat.css new file mode 100644 index 00000000..d91a1f04 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextArea-compat.css @@ -0,0 +1,7 @@ + +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextArea.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextArea.css new file mode 100644 index 00000000..5bdd8b46 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextArea.css @@ -0,0 +1,13 @@ + +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 5px; +} +.mblExpandingTextArea { + margin: 2px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextBox-compat.css new file mode 100644 index 00000000..72c9f0cc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextBox-compat.css @@ -0,0 +1,4 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextBox.css new file mode 100644 index 00000000..fc60b01b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TextBox.css @@ -0,0 +1,10 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TimePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TimePicker.css new file mode 100644 index 00000000..3b68f497 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/TimePicker.css @@ -0,0 +1,184 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.dj_ios6 .mblSpinWheelSlotLabelBlue { + color: #0160f2; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 3px; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + border-radius: 3px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #9cb1c9), color-stop(0.35, #f0f1f5), color-stop(0.65, #f0f1f5), color-stop(0.9, #9cb1c9)); + background-image: linear-gradient(to bottom, #9cb1c9 10%, #f0f1f5 35%, #f0f1f5 65%, #9cb1c9 90%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #eaeaea), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #efefef)); + background-image: linear-gradient(to bottom, #eaeaea 10%, #fafafa 20%, #ffffff 50%, #efefef 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToggleButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToggleButton-compat.css new file mode 100644 index 00000000..b6ca0250 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToggleButton-compat.css @@ -0,0 +1,42 @@ + +.mblToggleButton { + background-image: url(compat/button-bg.png); +} +.mblToggleButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblToggleButtonChecked { + background-image: url(compat/button-chk-bg.png); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblToggleButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.dj_gecko .mblToggleButtonChecked { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 5px; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url(compat/togglebutton-chk-mark-bg.png); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToggleButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToggleButton.css new file mode 100644 index 00000000..ffa538bf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToggleButton.css @@ -0,0 +1,52 @@ + +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 5px; + font-size: 13px; + color: black; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#bfbfbf), color-stop(0.5, #ebebeb), color-stop(0.5, #dedede)); + background-image: linear-gradient(to bottom, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.mblToggleButtonChecked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + color: white; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToggleButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToggleButton_rtl.css new file mode 100644 index 00000000..f6145188 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToggleButton_rtl.css @@ -0,0 +1,7 @@ + +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton-compat.css new file mode 100644 index 00000000..b0fcb153 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton-compat.css @@ -0,0 +1,72 @@ + +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_gecko .mblHeading .mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.dj_gecko .mblHeading .mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + -moz-box-shadow: 1px 0 0 rgba(255, 255, 255, 0.305); +} +.dj_gecko .mblHeading .mblToolBarButtonBody { + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 5px; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url(compat/arrow-button-head-sel.png); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-right-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url(compat/arrow-button-right-head-sel.png); +} +.dj_ie .mblToolBarButtonBody { + background-image: url(compat/arrow-button-bg.png); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url(compat/arrow-button-bg-sel.png); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton.css new file mode 100644 index 00000000..748adf12 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton.css @@ -0,0 +1,109 @@ + +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + -webkit-transform: scale(0.75, 1) rotate(45deg); + transform: scale(0.75, 1) rotate(45deg); + border: 1px solid #9cacc0; + border-top-left-radius: 1px; + border-bottom-right-radius: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 0px; +} +.mblHeading .mblToolBarButtonArrow { + border-width: 1px; + border-style: solid; + border-color: #405a7e #405a7e #3a4755 #3a4755; +} +.mblHeading .mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.mblHeading .mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + -webkit-box-shadow: 1px 0 0 rgba(255, 255, 255, 0.305); + box-shadow: 1px 0 0 rgba(255, 255, 255, 0.305); +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 5px; + border: 1px outset #9cacc0; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblHeading .mblToolBarButtonBody { + border-width: 1px; + border-style: solid; + border-color: #2f3740 #405a7e #375073 #3a4755; + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.dj_ios6.dj_phone .mblHeading .mblToolBarButtonBody { + border-color: #343a42 #425167 #2f4769 #415066; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton.less new file mode 100644 index 00000000..cdb87c27 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton.less @@ -0,0 +1,10 @@ +@import "variables.less"; +@import "../common/ToolBarButton.less"; +/* iOS 6 specific */ +.dj_ios6.dj_phone { + .mblHeading { + .mblToolBarButtonBody { + border-color: #343a42 #425167 #2f4769 #415066; + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton_rtl.css new file mode 100644 index 00000000..fd451779 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ToolBarButton_rtl.css @@ -0,0 +1,18 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Tooltip-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Tooltip-compat.css new file mode 100644 index 00000000..6ccc69b4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Tooltip-compat.css @@ -0,0 +1,47 @@ + +.mblTooltip { + background-image: none; +} +.mblTooltip .mblHeading { + background-image: url(compat/tooltip-heading-bg.png); +} +.mblTooltip .mblHeading .mblToolBarButton { + background-color: #000924; + background-image: url(compat/tooltip-button-bg.png); +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 8px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #889bb3; + border-bottom: 1px solid #889bb3; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Tooltip.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Tooltip.css new file mode 100644 index 00000000..27c0e12c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/Tooltip.css @@ -0,0 +1,160 @@ + +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #5a5a5a; + border-radius: 8px; + background-color: #121b2f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#656872), to(#121b2f), color-stop(0.1, #2c3345), color-stop(0.1, #161f32)); + background-image: linear-gradient(to bottom, #656872 0%, #2c3345 10%, #161f32 10%, #121b2f 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #f9f7ba; + background-image: none; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #f9f7ba; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #f9f7ba; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #f9f7ba; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #f9f7ba; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #5a5a5a; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #5a5a5a; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #5a5a5a; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #5a5a5a; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #192235; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #192235; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #656872; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #172035; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + border-top: 3px solid #4f5055; + border-bottom: 1px solid #2d3642; + border-left: 1px solid #2a2d47; + border-radius: 3px 3px 0 0; + background-color: #889bb3; + background-image: -webkit-gradient(linear, left top, left bottom, from(#5e6167), to(#1a1d24), color-stop(0.5, #2e322b)); + background-image: linear-gradient(to bottom, #5e6167 0%, #2e322b 50%, #1a1d24 100%); + font-weight: normal; +} +.mblTooltip .mblHeading .mblToolBarButton { + border: 1px inset #434450; + background-image: -webkit-gradient(linear, left top, left bottom, from(#686f80), to(#000924), color-stop(0.5, #000b29)); + background-image: linear-gradient(to bottom, #686f80 0%, #000b29 50%, #000924 100%); + font-weight: normal; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ValuePicker-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ValuePicker-compat.css new file mode 100644 index 00000000..259babb5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ValuePicker-compat.css @@ -0,0 +1,19 @@ + +.mblValuePickerSlotButton { + background-image: url(compat/valuepicker-button-bg.png); +} +.mblValuePickerSlotButtonSelected { + background-color: #394d77; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: -moz-linear-gradient(top, #9cb1c9 10%, #f0f1f5 35%, #f0f1f5 65%, #9cb1c9 90%); +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: -moz-linear-gradient(top, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: -moz-linear-gradient(top, #eaeaea 10%, #fafafa 20%, #ffffff 50%, #efefef 90%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ValuePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ValuePicker.css new file mode 100644 index 00000000..d415d20e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ValuePicker.css @@ -0,0 +1,105 @@ + +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 3px; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + border-radius: 3px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #9cb1c9), color-stop(0.35, #f0f1f5), color-stop(0.65, #f0f1f5), color-stop(0.9, #9cb1c9)); + background-image: linear-gradient(to bottom, #9cb1c9 10%, #f0f1f5 35%, #f0f1f5 65%, #9cb1c9 90%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #eaeaea), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #efefef)); + background-image: linear-gradient(to bottom, #eaeaea 10%, #fafafa 20%, #ffffff 50%, #efefef 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ValuePicker.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ValuePicker.less new file mode 100644 index 00000000..1561b85c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ValuePicker.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayPlus.css"); +@import url("../common/domButtons/DomButtonGrayMinus.css"); + +@import "variables.less"; +@import "../common/ValuePicker.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/View.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/View.css new file mode 100644 index 00000000..ecaeed43 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/View.css @@ -0,0 +1,122 @@ +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/View.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/View.less new file mode 100644 index 00000000..910651f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/View.less @@ -0,0 +1,6 @@ +@import url("../common/transitions/slide.css"); +@import url("../common/transitions/flip.css"); +@import url("../common/transitions/fade.css"); + +@import "variables.less"; +@import "../common/View.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base-compat.css new file mode 100644 index 00000000..a3b7dc1d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base-compat.css @@ -0,0 +1,464 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_gecko .mblHeading .mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.dj_gecko .mblHeading .mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + -moz-box-shadow: 1px 0 0 rgba(255, 255, 255, 0.305); +} +.dj_gecko .mblHeading .mblToolBarButtonBody { + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 5px; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} +.mblEdgeToEdgeCategory { + background-image: url("compat/edge-categ-bg.png"); +} +.dj_gecko .mblEdgeToEdgeCategory { + background-image: -moz-linear-gradient(top, #8f9ea9 0%, #b7c0c7 100%); +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #048bf4; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #048bf4 0%, #005ce5 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #cccccc 0%, #fafafa 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 5px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 5px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base.css new file mode 100644 index 00000000..c2c1dee8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base.css @@ -0,0 +1,995 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; +} +.mblBackground { + background-color: #c5ccd3; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorDefault { + color: #ffffff; + background-color: #5877a2; + background-image: -webkit-gradient(linear, left top, left bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to right bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #394d77; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to right bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.dj_ios6 .mblColorBlue { + background-image: -webkit-gradient(linear, left top, left bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to bottom, #89abec 0%, #2057c1 100%); +} +.dj_ios6 .mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to right bottom, #89abec 0%, #2057c1 100%); +} +.dj_ios6.dj_phone { + +} +.dj_ios6.dj_phone body { + background-color: #d7dce5; +} +.dj_ios6.dj_phone body.mblIOS6Stripes { + + background-image: -webkit-gradient(linear, left top, right top, from(transparent), to(#d4d9e3), color-stop(0.7, transparent), color-stop(0.7, #d4d9e3)); + background-size: 8px 8px; +} +.dj_ios6.dj_phone .mblColorDefault { + background-image: -webkit-gradient(linear, left top, left bottom, from(#99aac2), to(#41618d)); + background-image: linear-gradient(to bottom, #99aac2 0%, #41618d 100%); +} +.dj_ios6.dj_phone .mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#99aac2), to(#41618d)); + background-image: linear-gradient(to right bottom, #99aac2 0%, #41618d 100%); +} +.dj_ios6.dj_phone .mblColorDefaultSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8b97af), to(#273e6b)); + background-image: linear-gradient(to bottom, #8b97af 0%, #273e6b 100%); +} +.dj_ios6.dj_phone .mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#8b97af), to(#273e6b)); + background-image: linear-gradient(to right bottom, #8b97af 0%, #273e6b 100%); +} +.dj_ios6.dj_phone .mblColorBlue { + background-image: -webkit-gradient(linear, left top, left bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to bottom, #89abec 0%, #2057c1 100%); +} +.dj_ios6.dj_phone .mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to right bottom, #89abec 0%, #2057c1 100%); +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.dj_ios6.dj_phone .mblHeading { + border-top: 1px solid #eff2f7; + border-bottom: 1px solid #3f5c80; + background-image: -webkit-gradient(linear, left top, left bottom, from(#d0d9e6), to(#587397), color-stop(0.025, #d0d9e6), color-stop(0.025, #beccdd)); + background-image: linear-gradient(to bottom, #d0d9e6 0%, #d0d9e6 2.5%, #beccdd 2.5%, #587397 100%); +} +.dj_ios6.dj_phone .mblHeading.mblFixedBottomBar { + border-top: 1px solid #5e748c; + border-bottom: 1px solid #577296; + background-image: -webkit-gradient(linear, left top, left bottom, from(#dee4ec), to(#577296), color-stop(0.025, #dee4ec), color-stop(0.025, #c1cddd), color-stop(0.05, #c1cddd), color-stop(0.05, #b0bfd3)); + background-image: linear-gradient(to bottom, #dee4ec 0%, #dee4ec 2.5%, #c1cddd 2.5%, #c1cddd 5%, #b0bfd3 5%, #577296 100%); +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + -webkit-transform: scale(0.75, 1) rotate(45deg); + transform: scale(0.75, 1) rotate(45deg); + border: 1px solid #9cacc0; + border-top-left-radius: 1px; + border-bottom-right-radius: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 0px; +} +.mblHeading .mblToolBarButtonArrow { + border-width: 1px; + border-style: solid; + border-color: #405a7e #405a7e #3a4755 #3a4755; +} +.mblHeading .mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.mblHeading .mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + -webkit-box-shadow: 1px 0 0 rgba(255, 255, 255, 0.305); + box-shadow: 1px 0 0 rgba(255, 255, 255, 0.305); +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 5px; + border: 1px outset #9cacc0; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblHeading .mblToolBarButtonBody { + border-width: 1px; + border-style: solid; + border-color: #2f3740 #405a7e #375073 #3a4755; + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.dj_ios6.dj_phone .mblHeading .mblToolBarButtonBody { + border-color: #343a42 #425167 #2f4769 #415066; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 22px; + border-top: 1px solid #a4b0b9; + border-bottom: 1px solid #979da3; + background-image: -webkit-gradient(linear, left top, left bottom, from(#8f9ea9), to(#b7c0c7)); + background-image: linear-gradient(to bottom, #8f9ea9 0%, #b7c0c7 100%); + color: white; + line-height: 22px; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #4c566c; + text-shadow: #ffffff 0 1px 0; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: white; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #707c84; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 43px; + list-style-type: none; + line-height: 43px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #adaaad; + font-weight: bold; + color: black; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#048bf4), to(#005ce5)); + background-image: linear-gradient(to bottom, #048bf4 0%, #005ce5 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked { + color: #314e84; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: #324f85; + margin-top: 12px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.dj_ios6 .mblListItemRightText { + color: #385487; + font-weight: normal; +} +.dj_ios6 .mblListItem { + + -webkit-perspective: 1000; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 8px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-width: 1px; + border-style: solid; + border-color: #939393 #aaaaaa #cbcbcb #767676; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2859b1), to(#75acfb), color-stop(0.5, #3f84eb), color-stop(0.5, #4c8eee)); + background-image: linear-gradient(to bottom, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cecece), to(#fdfdfd), color-stop(0.5, #eeeeee), color-stop(0.5, #f8f8f8)); + background-image: linear-gradient(to bottom, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cccccc), to(#fafafa)); + background-image: linear-gradient(to bottom, #cccccc 0%, #fafafa 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-width: 1px; + border-style: solid; + border-color: #5e5e5e #9e9e9e #828282 #797979; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 5px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 5px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 77px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwDefaultShape .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 50px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwDefaultShape .mblSwitchText { + width: 50px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 26px; +} +.dj_ios6 .mblSwitchBgLeft { + background-color: #007fea; + background-image: -webkit-gradient(linear, left top, left bottom, from(#0060b1), to(#73b3ea), color-stop(0.5, #007fea), color-stop(0.5, #218fec)); + background-image: linear-gradient(to bottom, #0060b1 0%, #007fea 50%, #218fec 50%, #73b3ea 100%); +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base_rtl-compat.css new file mode 100644 index 00000000..1c6a213c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base_rtl-compat.css @@ -0,0 +1,42 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base_rtl.css new file mode 100644 index 00000000..e3af4364 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/base_rtl.css @@ -0,0 +1,182 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 0px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonDarkBlueCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 50px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 50px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -26px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 0px; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/common-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/common-compat.css new file mode 100644 index 00000000..124ffa47 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/common-compat.css @@ -0,0 +1,18 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/common.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/common.css new file mode 100644 index 00000000..08236e07 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/common.css @@ -0,0 +1,103 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; +} +.mblBackground { + background-color: #c5ccd3; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorDefault { + color: #ffffff; + background-color: #5877a2; + background-image: -webkit-gradient(linear, left top, left bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to right bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #394d77; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to right bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.dj_ios6 .mblColorBlue { + background-image: -webkit-gradient(linear, left top, left bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to bottom, #89abec 0%, #2057c1 100%); +} +.dj_ios6 .mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to right bottom, #89abec 0%, #2057c1 100%); +} +.dj_ios6.dj_phone { + +} +.dj_ios6.dj_phone body { + background-color: #d7dce5; +} +.dj_ios6.dj_phone body.mblIOS6Stripes { + + background-image: -webkit-gradient(linear, left top, right top, from(transparent), to(#d4d9e3), color-stop(0.7, transparent), color-stop(0.7, #d4d9e3)); + background-size: 8px 8px; +} +.dj_ios6.dj_phone .mblColorDefault { + background-image: -webkit-gradient(linear, left top, left bottom, from(#99aac2), to(#41618d)); + background-image: linear-gradient(to bottom, #99aac2 0%, #41618d 100%); +} +.dj_ios6.dj_phone .mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#99aac2), to(#41618d)); + background-image: linear-gradient(to right bottom, #99aac2 0%, #41618d 100%); +} +.dj_ios6.dj_phone .mblColorDefaultSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8b97af), to(#273e6b)); + background-image: linear-gradient(to bottom, #8b97af 0%, #273e6b 100%); +} +.dj_ios6.dj_phone .mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#8b97af), to(#273e6b)); + background-image: linear-gradient(to right bottom, #8b97af 0%, #273e6b 100%); +} +.dj_ios6.dj_phone .mblColorBlue { + background-image: -webkit-gradient(linear, left top, left bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to bottom, #89abec 0%, #2057c1 100%); +} +.dj_ios6.dj_phone .mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to right bottom, #89abec 0%, #2057c1 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/common.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/common.less new file mode 100644 index 00000000..f6de45fe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/common.less @@ -0,0 +1,42 @@ +@import "variables.less"; +@import "../common/common.less"; +/* iOS 6 specific */ +.dj_ios6 { + .mblColorBlue { + .background-image-linear-gradient-top-bottom(#89abec, #2057c1); + } + .mblColorBlue45 { + .background-image-linear-gradient-top-left-bottom-right(#89abec, #2057c1); + } +} +.dj_ios6.dj_phone { + + body { + background-color: #d7dce5; + &.mblIOS6Stripes { + /* Vertical stripes on webkit */ + background-image: -webkit-gradient(linear, left top, right top, from(transparent), to(#d4d9e3), color-stop(0.70, transparent), color-stop(0.70, #d4d9e3)); + background-size: 8px 8px; + } + } + + .mblColorDefault { + .background-image-linear-gradient-top-bottom(#99aac2, #41618d); + } + .mblColorDefault45 { + .background-image-linear-gradient-top-left-bottom-right(#99aac2, #41618d); + } + .mblColorDefaultSel { + .background-image-linear-gradient-top-bottom(#8b97af, #273e6b); + } + .mblColorDefaultSel45 { + .background-image-linear-gradient-top-left-bottom-right(#8b97af, #273e6b); + } + /* mblColorBlue also defined here to correctly show up in openers */ + .mblColorBlue { + .background-image-linear-gradient-top-bottom(#89abec, #2057c1); + } + .mblColorBlue45 { + .background-image-linear-gradient-top-left-bottom-right(#89abec, #2057c1); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/arrow-button-bg-sel.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/arrow-button-bg-sel.png new file mode 100644 index 0000000000000000000000000000000000000000..33112b1264c9beed8e8cd6aa45bdf3a3c1cf20ee GIT binary patch literal 183 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!2~3ezCWG-q(nfK|goCN{=4mNvFF hW*#;N3r2YshIzO7Cf+f%oB~wO;OXk;vd$@?2>>~1NzwoS literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/arrow-button-head-sel.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/arrow-button-head-sel.png new file mode 100644 index 0000000000000000000000000000000000000000..d9389d704a272c94c549bd6780e6249080e6624e GIT binary patch literal 418 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&?EyX^u4*>v@!9pR!RdCMQKc>O z!&9nqDrb6xWfYXwnEDl)xrC<_w&**>M`iWe1y#n{ zqTT59cf~)UbDJ*QD7HVEdCKVg)+Mj*ltym!UfcD4>H0GU#itXl9#53Buv=5%@loMT z?5m^AdS^}D4OCjgUM4QRFiE6Gh->LBuZQbc*0;E2CNB-J&^+UH!%}mKd{vd{{+mZ< R{{*^;!PC{xWt~$(69AMnyYv76 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/arrow-button-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/arrow-button-head.png new file mode 100644 index 0000000000000000000000000000000000000000..5b63fc84c5b33f555d5336aed22ae1736731083f GIT binary patch literal 453 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&a{_!qT&=z1;wtC5Cij+2*z6ve zlh?UEsi-})cy?ZGU)RF@_91zpX*Ep~7y88Hr8cc}&zxx=Rp%0t5?j5rX5yNX&ZSvx zYno?nbMlM!Pj4?Mt;uhg7LwBw7+>fVQ|Ay?R5yJ`QSU|@zm&wv>F()M93sjx%6lTp z7ukoGHcnmd6I%Zp5>0-QHlAJ^j!Ze!)O4KEMzYBmEYr zmb1VkvKZ(}K@euFPl=xh6zunOaSW-L<9qQn-ysDa)(35xizY2()aRbQ?|*bu82j@- z4RwmXTo*bOOa3mJR>rn<+q0EZf_R))FX1~XvHh%!*3uS%e`{4zS6mefy}Dyz_4#{V zdrwvGN~!iv+1atgNGenH=DfJ%84B+jPgSU0_WQyA;_7-dxz2 zpIp=yS~xAcaY5I@{f$%C2WR)CHm!8eoS9NH*FLJQcJex}aAp@SahYlsX+E!{T-e#5Z@xq<|qE@%_e%CCtm-AX+Qexb(t>xBoZH=Xm zg{RhR_XrJkSlL(qsdP%sI_PN@TdM2G>1n-XrRPM_J3}8B%wKr<6YJ%DRlm~TUVpE| n;Ksr#+y16IkJ0#pJ*WKbpZZf5%J=>N8pz=3>gTe~DWM4fgQq@D literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/blue-button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/blue-button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..696845879d800204ec48eb59f25e8735722bfbb1 GIT binary patch literal 182 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@lxT@-M2T}zYGO%dex5=|W^O72 z`zF!$uFXdCcHdZA!u6{1-oD!M<#_cow literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-arrow-head-bg.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-arrow-head-bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..77b6e9e92d83309330cddb54aab0029007a7f1a2 GIT binary patch literal 316 zcmZ?wbhEHbRAG>1Xl7stPsllc{`{LaZ*JedJ!j2<%ay@^) z`om$g1oRjH5Xir zTiRXvB5YmS*JZMI!e56RNPo(wb|-9+Q%}d^rdXM4hJno!S%br7fBtylOuVyp-K(2w z85d`HSKIX7TJ@^0;^C=jf1=W!+>Fbf-_yIhA#WNxGl#t1AM?}g43o6|>t-f8FjxZs Dm5_!W literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..0d378fafe6e0810b460e00217f8d1313bb592a49 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&Kp|gG7sn8ZaNEPD*&Gx_94`L-Z!hkt((WRZd1vySgSi_mo^SYG zcRlLQ^EoxgCGy|Ty(YCa%uDmh98XQbWR;eNjt6^>Tefc%OXi8no)RP;R^hezy}_|p QK!X`PUHx3vIVCg!0Np1z5&!@I literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-chk-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-chk-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3bd558b4503a413941bda4308355b18cdb617848 GIT binary patch literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@lxT@-M2T}zYGO%dex5=|W^O72 z`zPN@TdM2G>1n-XrRPM_J3}8B%wKr<6YJ%DRlm~TUVpE| n;Ksr#+y16IkJ0#pJ*WKbpZZf5%J=>N8pz=3>gTe~DWM4fgQq@D literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..c8a71b8360932acd7b82458f0b98f125d0ab31b8 GIT binary patch literal 170 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&Kp{U*7sn8ZaNEPtYz~Sd4i|0z2dYjwA?T^%yWqJ%k$qnGQOowd z-*;boWdHn$^|6ZT_gk*5*c#-e_}s^zopr0EW*t1ONa4 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-unsel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/button-unsel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..696845879d800204ec48eb59f25e8735722bfbb1 GIT binary patch literal 182 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@lxT@-M2T}zYGO%dex5=|W^O72 z`zF!$uFXdCcHdZA!u6{1-oD!M<#_cow literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/edge-categ-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/edge-categ-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3a62e144514fedc8cca0b982d33b51e8debab774 GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{L!2~4xmL&cKQtTz3zOL-ISXnt4G_Q?N_Hq=h-HAycGK#Y|ajYd|o= Y*8NPW+rK`L0xD+kboFyt=akR{0DjaXIRF3v literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/gray-arrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/gray-arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..c93d17f5e8826e4caaa59410f44992f587e9965c GIT binary patch literal 920 zcmeAS@N?(olHy`uVBq!ia0vp^oFFy_Gm!MTx5WfVv6p!Iy0YJ56626i(p>F!9;Bwg zBeIx*fm;ZK886+f`@_J%%n;xc;`*QAe?vn9P{}A54S^9D0^$4K$pF30SQ6wH%;50s zMjDVK=jq}YQgJIeAt50prGdfCO=9vy7qwLqa%_`i4XPRW)-hPVNm+Rm6k49HelF{r G5}E)#zA2Ib literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..888a92eede82ecfd010e897172f4221c8da398f2 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6kf#!2~4#$}H0cQlcfU5hcz=sfi_-`FRQRT&zopr0Awvk+yDRo literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/icon-content-heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/icon-content-heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3daa1a81de8d9b80d652d39251724d4732b181f0 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{O!2~4hKV8-UQlcfU5hcz=sfi_-`FRQ3GDm;4Z)FMKG<)r)9eJe`pUMVm=8KQPKnWq4Bf;(IPo7lWs(pUXO@geCyAxmh6q literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-arrow-button-head-sel.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-arrow-button-head-sel.png new file mode 100644 index 0000000000000000000000000000000000000000..04080422bba3be4aa343466a8f07481150dd22a9 GIT binary patch literal 382 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&$pJnguBNtLB^C9d5izM*MNXcf zNvYYvVKMPZsXhVWg{8Gyw(W_Gj?XD9Z*1=J_7Agi@~f$9$;>PB4^4=S&nT;E3XM*6 z^NmPKF9--rj7`e+36714OUWy$^z@Iia}CVSulWD}|C8Been9IKOM?7@fn27aF-*6nGjE9k<;$>ggoA;_$bB{*|}1 zp7S%?vxv@}VV1tZZSmA^3tPV_rYTji9y!y`_iUl+y!4*$GX?kb->VM&c1yKoA4|i! zNmUn?b%uIQoh&F9mHF7N{iNs4@Cr|b?2a2>j{dpwzS%RVZm&SoKH<7qT}`34*OYpA sz1{m?NbRFaOqZJqR%UnyGss1k>G2GD&Bp00i_>zopr05;sHE&u=k literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-arrow-button-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-arrow-button-head.png new file mode 100644 index 0000000000000000000000000000000000000000..970c47cfbbf5fca2be467a3548b92a232ba9f1f7 GIT binary patch literal 393 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&IRQQ)t}$`Ry_08`SJ$U!<}O*W zzNLFgQ)_oodF|{4%X14$>YLhk?L8cyls0qTvg+FA%NZdPtlXa9`<|Nl#{SA785 zt5Oo=7YyVQ0t^v4ydXz&7I;J!16?f$!i@DP@e_f9lRaG=Ln`KkUVO-PSb@ha(0WB{ z?k>^X?5Quj?){e)SKoGDkHuy`Q=nmrr~+Gn&wKCVkM68Yl6mni$SXG5YkJ(4E3?+9 zM|G@tx!{_=fAIWcGgeugnKV%_)AqZ|ZJr=!ZI4%myy0Eu{f}A&uBNtL&21B6lX855V{?nD zGV{tJqT`)BLu=|LuA|YETBTp0*}aIpvwe7 zn6W-3ej-qChNp{TNX4Aci*LCOEATj6^bwwMMDy;7t}lP*7av={O#Ihlg`mYB_Jufj zu0FCPbkT0n-vMcA9%bvzZsrn3IuCd9vy_4q@SG6ozu|B7$ zrlosIMsCU6MJpTI`gZR>nx2_6YyR@u=H9iNb`+G=O`Wxfh>9E$=^kce6jvB6lkAv-TvQ;}|?${an^LB{Ts5X4$OF literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-arrow-button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/ipad-arrow-button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..831de068a7c71db2384ab0ddc6c69d593ed03273 GIT binary patch literal 229 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!3-pCdAEE8QuYBpA+Cm&Zm~%@-a#>WMO7}| zVGi!Wm9;HaPJWqrWf5^1B^C84nMEN{DWG|2Ipn zC+knhzj~aAxyhn=Ddo|UOJ@&xn{*~0`_79THRiD9u*Nn!Z(Pfra`E+1ly83J#p_R&m!w%ilIFxo zP8g*G&lo?5cz7Z1J-~5&u8xO&aj|TNqjkePoY|T-x^ZH)*|S{jP&ETZ)tM@5MiUK5 xUNDsA2;z*cFs9v;X?7&)Es<(tK&96I{sCXvYbpZGsk#6F002ovPDHLkV1hUzQEUJJ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/red-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/red-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..799870fcd1976c3e07b6c5a3545543439655a45a GIT binary patch literal 248 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsLD0>we@P7LeL$-D$|SkfJR9T^xl z_H+M9WCijSl0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=dY0 z)7O>#7Lyp8F|(vj+b5tEKU0n z{O-Vq?HAe}=5J#?ygx*^t^Q*h&wr&-$$#wGMti=BrdGUWK620D4eQZ)4!4}AJe+GS pu$ytCw!m(Njm84jj2jngFxaoukU#0P!VqX3gQu&X%Q~loCIH@wQK#9&R{$%KfTGY)Ooqt}?|S;}+xj88esxlai*T6;FzN~S43yy@`mjf}nk a8-wKzjl||l-V1?NFnGH9xvXVr<6Dk~(dlfI^y{E{-7*;mHEuqE9P`Z=LI?{Z*kk^I;}i`>oYHc5}Z=9$LOH e#Ut*6B*U@=JOUjy_g?`uF?hQAxvXVr<6Dk~(dlfI=FcE{-7*;j9N20(Em7-te#ftW8ywT(A3Mj|ncJiL+Ho%#9Df bD=O#Lnk)RFpY=x+P!EHrtDnm{r-UW|JoY0D literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/slider-handle-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/slider-handle-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..4b5bb6c1cf7e5f0aa3f508c96a746fe466c86537 GIT binary patch literal 163 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{J!2~2lO_g5*DVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfI{w`E{-7*;j9NIGBGIdI2`=`KYo(RWX}mcY!?+gCjrq4>maWu za|8uLrUr3s4LieAzI>~j%Z2Lno`Z8HZxyS~KWBNTy7GPPaZ4R3rscOmPGInK^>bP0 Hl+XkKmS!;d literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..60fa6e09bff814b5aed511d8a65f2b270b4b9fb5 GIT binary patch literal 1028 zcmZ?wbhEHbjAM{tXk%b-jcuQ_>0Wrp`S66Cs;PU@7k#rUIv!uSD5GP`rANQ27v0j1 zTDRrY^Yq%qla?QeES$Dt--DQ0U+kJ*rp(KN!*j(xO)2Pqft{{+NCU+x9L*b-2El}+m2j)pFQ_U;KcWl?I-7~IpCSl z9+Xm-wcwpY(f-8F!=JwWXR_4I8If;(=6B^5>1Zme4RNGoRRzN?>8YgcSJ`q-oOe$uQr#<^z#dY^~3 zpYL3DUN7Z9Qsb7%tIy2ccB^gv;RDydgiZaJz4V7u>EZO=lV5-SPb!@dk=X%L3 zqyPW^GtdPn{$ycfV2EYV0oewM69$fd47)kr2&tZKP+%8UidnHi@o+nzveO)mjY>xq zBHeiIWUw4yQgX3tW6|8Ca&oeA@T`!|qNS&&8ANW1VK{K&n4WS?!=00xm!F^S(99+4 zW%7bmlsR$3g@;R4US1xs*lVuW)>T(m2bac3SUh67wm#u-*U?`rO%BRRa{>w$x#&i3 z&%J)ER$F}C-CY$gU(G%J{axJt+NW7BF0#4_sCEcz$DP@+@$vBq%HDlB2N-*lb=0!& zo!R+0O-QY(;Dp1jEiW&x2woj`cGuSI>*0&uEcm!<+uPeaavygT9yrCTXI{t7uD8eH z9!{qe=+)$!})PPQos zJvu$#fB(L}zkhswegAxXQ1RXa^&5OY*H_=iIp8ZnccIouQ|a@4L)YR1D`}=@~j;5-w zUubj1&f1!urT6&xeT0p-y1l5j$XjG^)7j#}%GHXGn7zi*@bU9^eu$!`t?uvf)7IJJ z=Id{EfT6F#$j{iRw#C`qd~BzRv&u{{R300000000000000000000000000 z00000A^8LW001@sEC2ui0A2tb000R70Bs1g!2$$;g9sBUT*$DY!-o(fCM3XOphXn~ z22j|@v7^V2AVZ2ANwQ?e0R&W7v_ZlJgO@O4%A85Frp=o;bJl!7!r}uAI)e%wN)#uC z0|QBDD9W^{Q<@hTT(HnWpaTaNvTEJRwX4^!V8e({PH)OgSUw(Z-vbKh3Uj`7gV88(-=BVS2%t?@e4HbaM+*pLfO(rwsuC06T)z#VA+1=gU;^N}v<>l$=>Fw?9 z@bK{U_4WDr`Tzg_A^8LW0018VEC2ui02=@s000R706z%)5CDL|g9sBE95Aq9fCm#I zN}NbB;)4JUKOBHqu_MI?3mP7vK(eIClPDPsGynmm%a;-c5};6_rp=o;b5>BPQKwIz zAwMLrK(wgQqezK55C|cuQ>QTxK)67)s@1DlsY;MAz(UrqUoAWk;1#S{s|^HPz`(Yx z+qZDrCQuu({H7ekcIDc5MX%Ep*t;ySMM(7#<8v@VmHi;R6+9 mFwT6ph6WiAXz)P2y7lYSH5|w&(7=H2;KK%s|8AgRKma@4iNA{g literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc1-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc1-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..6bfb2d40fa35f1d4872b074211a0bc57b3ed0570 GIT binary patch literal 903 zcmZ?wbhEHb^ktA{Xk%a~D=Vw3tJ93$tR1&QCvlHe%38hDg9aJLjB-wyg36jXU&>5W$~Vc3m2|hwQAkEbxT)mSi5Dd-t9_d-n3> z%lGf!fBg9I+qZAOe*OCQ?;pcp0*XIb7#SD>7<5360>udf$3KRJ94<-8Z3mk-8e@<(4+7qGoyrY)}0d@7a#9ea89e)(4sVjlR0Qr%*jnlPfs^UK9#bvanU3u zmZDd8PHtX)e!fF9*Hg}god;ytCTYc<+OqQU@_@x&rB*HvTA3p@XWc!ub@lc235Uzp zG9K+@X34m`D)#iYwYRqyJl=NpgGy%$OU36`cTaC$e}8`i^Y^zKTHIM!JA}34&g|Iu z`1k~6^JfJt?5(UbjI-~Z*}3`o`3279_X1kjnlG;iULALK*Vfn9H^j0pytrW7+uJ*e zU*9{sdwc#pM}`myzdbuXK0Yy7JN{gZB_D(QBJcTrdv|?(ePeU>@j7OPj`t4^Kkb(H z-?!)I=ND)1a|kTj`}_Nc$EWA}@84JZ%Oa!W#`*pG|Nm!T(|FLp!XC}j{l~1R| zB&}?AaGLYs(2SI6na^fsEL-_(R?aNW!!7|PjZQoz*D{~at$4Qb`MjEMmCyP80$NxE m>cp~MENo|DRCjd~c=%%R1UIdhOQwWnyCc?s;aK8 zuClVSwzjsuzP`c1!NtYJ%F4>l&d$-%(bd(}+1c6M-QD2e;N|7z>gww7@bLNh`TYF+ z000000000000000A^8LW00062EC2ui08IcJ000R700ju7aA1JJg9sBUT*$DY!-oS7 zP!LE_K!XSvGiuz(v7^V2AVX$sP*K1F2`E#lT*$evBRw(Z-vbL-xnJ3(yTz=I1PPCG#W;>eRL z*Px)l^5@WVJ6K>Ly7lN7A{4#OUHOFw5F%J~A3xly00!jK^Ohjcfcp2iw-VSuzrOwZ z`19-E&%b|uk^<1>-+%-bXy67IOeBy42R7*7ffZClK?V<2Xd!+XC`ge65OnC_haiS1 Q;)o=cXrhPg2^0_jJ8|FdPyhe` literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc2-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc2-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..9619926a088f2ebc21ab7a0241f780f60038e5db GIT binary patch literal 435 zcmV;k0Zjf!Nk%w1VJiR|0E7SlUS3{tadCNhd4Yj}goK2Mh=`Gqk(rs9o}QkirKPE< zsjjZBv9YnYx3{^uxxKx;z`(%8#l^|V$)z#VA+1=gU;^N}v<>l$=>Fw?9 z@$vEX_4WDr`Tzg_A^8LW0018VEC2ui04o3+000R706z%)5CDL|g9sBUT$pgcz=r`I zOqfWqqQ#3CEj|eF@WTO#8AFQ1_+Y`q0~AuKT*QkmiqDYexHTfZdg{M%XN}WozDpUs^Az0nY)v5#v2OwM+OSY`pvuM+jl^|h& z+P84uT6iEJuHCz18wkL_x3Ay7fCCHun_%zY!-x+f5Rjp<g36jXU&>5W$~Vc3m2|hwQAkEbxT)mSi5Dd-t9_d-n3> z%lGf!fBg9I+qZAOe*OCQ?;pcp0*XIb7#SD>7<5360>udf$3KRJ94<-8Z3mkT|o4fgVKgalh~PzvhJMNxcGR#f^(P5&yNQubp@#LM4a5T^z?Lt;PI)s-rLvR-Cgl9tzwdkQ`7ziW^Os39UC4V?hsagx1q(I zg>{0m_dK7So1UJYVVr&K%tH=7E^eo8Ip1AdUS3`iygF`gm9wA}PtxgmzPq=*y}hIO z^}VyR9R;L#o4Dou_U!oh_{3!G_;Y(41sFsZdC<yX))g8=JH5pWDmC#~^>`U$?yf zzCAxbzqq_Q{`|kgybKDDPS5w>zwhtwAD>^}KQDizmqC$5<3R(9SjK}!4z(2znt0k8 zn0b|4G#<8ygk?Nzl}KChuuY~*;0T{wkHVu4m1!A|IyIK9c+{n{X@--a^$dqYJto&O z9`{;2Tk*Kh=G%?OT&@CvO&1c= zv8)#hJJeQbEHVgSaTV4$qVRIbl(4LqOJ}65dbw;))~{w^QAI|V0ySe fo4~_Ys|7b4(|WyT%eAc6Yj<4Aa&cv3WUvMR-;AP_ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc2-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-arc2-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..b054a06bbe7b4fb1671e16f94e6e11ae2799e551 GIT binary patch literal 492 zcmVCc?s;aK8 zuClVSwzjsuzP`c1!NtYJ%F4>l&d$-%(bd(}+1c6M-QD2e;N|7z>gww7@bLNh`TYF+ z000000000000000A^8LW00062EC2ui0A2ta000R700jsXaA1JJg9sBUT*$DY!-o(R z9vDcmL4=DKGiuz(v7^V2AVYR+KvBQ~2`E#lT*KY&FIa=lTRN$eE74q+t~#e}8)2r~HfkiCiK_hEXI1{&S!G=Q&9Bvv58=2QA d9CBt{!{EdyQ}*IvyF%LyMGk2fg#ZTzYXA$u1x^3} literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-default-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-default-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..c42f5ba964359416ac50bc87d7eda0d3e56b0b05 GIT binary patch literal 745 zcmVgPc|Ns9000000000000000000000 z00000A^8LW001}uEC2ui0A2ta000R70CC{xa3Vqk3l*?45w?mQOSWuT6JcSjh`JVPTeWQCx|Iue zuHCwL-|D5i_io>{D?C_OLAbEt!-x|rUd*_$({Vj%brcUHVVNqa_ipBySMM(z=I1PPFx1=;>eRLUoISVZUHi& zOOH-{y7lVVuWQfFeY^MW-39 znjm`Sa-0t6$H)z5DkgP>*0S!h!w!`19-E&%eL_ z{{a3c7z+dzXyAbeCaBVW8oL9Cqm8haiS1;)o=ch=E`= zq^RPGEVk(4i!jD0u0d(o*mtck|=9pxbY37+|27sCdY_{pF}L9cg~+bKV`=JPoF;TJajIvw0`@6(@$T%o3rM? zmhHPwUA}wo;nVLwekEm>t>1HI(XzD_^&KnMY`Aje%9AHg)^6B*?)-)MOILsU{^QW` zbNOWruU@@cu>RnNy=U(|e)a3uuhhKCOIL3E|NozX20-yA3nK%AGJ_7tY>=NAIQ}uX z_h>XcWNc{W5Y~!0v0>rib^&EQp2md@2L!qKe0ChzxcGR#f^(OQ=cXl|6NULYBmy5E zVC6DMJ~hX4^RlzEEs9?qsZ?ZOXA&#plJ(m1B7m1oP9pZymX&^tB1{Yd4qI1UT^+GG z>+Y$otFNzT67ga6-nQoE=GdcQ3wDJ$+}@t^c-K_!@^yE2RlIz)celBI{8rIxY-QRz z3?3eC7M2d{so41V*aS)Mx){cS2d8HkXWu)sbMy1_3!J0*e0Obmd3njvqKLD*w!Xf; zA^G$?-`(4C`Bvq>zIS%FdG1DqCT@AZJv%-=J~3H4{+vw94JL&J-u-^HyS~1|-#u7Z$ei!DZ_m%qr;aa*MYJ|9|(B{XxTX zO#!Axj!ohYEaECJ6e>jx0vcHO!&bv9Lh2phA$HjYXh=No`R@QkTxU d7mKN literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..6061d6d7f4b4b4309ea1a1bd9c272a4910f43730 GIT binary patch literal 1058 zcmZ?wbhEHbjAM{tXk%cokLjPf@uqM8yYPgZ>PZ{SO0J&2@w|QEQN8F@>5IOF)$f?L z`dCrd`ijMm;);6SeEj7bU$gDZYlDoVc1)I7h5=y50{Qb`%X|`+b>fGi9 zX|tY~#x9<-<$7>ReaHNxS08+8UwtpM{rrrT`!gq;{rdBtb3*^|OHXWacltG)3(IPM z_5R!1BTvoKwsfqyXH)m6V)d7T)}^`gpWDVv3F^EZl33g_=kWQv?<*GE)QZ`fz4S*> z&&KGYNuR#`G0r{Hx%lLRSHGgBytGeSu9tFP;<_unt1gF4{b*TnyJ*#~+SPB9%4cRb zuS}Zvb@tX9F|9}EtU2JD(t7;L3y;?Ok@*ug9KQ4a|9=MR0mYvzj0_BE3_2hqL2<&s z@sHswhm6IAPBtcq9-e>`1q%YRpX=i2|2yS6uc*rU=L2mAxh6_wfFD~|&tQC7|%gW&8x(X(aj91RE zDr-&&xOr;p>g($h4tL3VZ_}A7;#SeHXV#%Lx3?EOZhCs)iDQ7W-3ptFr_0yh-`DV; zi_fQG!^1-z{J-BiG`>2Z8$8crp3lxrPfyP<&c1g>^0T-G^U)T~3p=;Gyu89vzEiQl zy^m=_^67cLySKf)y`%W`v9--jGuidaxaIx!{P@7^XSaf(iIuzf`Pup2{eH5$zP`M^ zI{E&(z182|-^l*=<-sM!j-Q`jTwWc2e&62T-#tWjt(^NL%r+jj5r~Nl-CHv7tkyFC(c_W8R9S zE}eBRlDZA{{a7R-Z(w*>)Z*ES$9*>6UOeu1VAEVOL5Jl*6O*&r$|sY2v~D`E@V^Og zWDW9(RGk`@*7o8W|7#&Eba61+3bR2n$PEyT+4huw~X&& zql3qUi$~`-uxY(m&?1)gVqu3`)e2D+9+e~Fu_^*DmrM%tdbxC3TGz{Ev&v4rTs|-A zmMf>8KuZ&cq{@OE)*oQgezW0-SoWKZ zC)A{KI1^U<3@qZ+(0;q+N|^QVWPAuhd|1+HQb+O*&8crq>f-Od-wy4Q)x?^uu> z8d&q8ktd2};k&&*o^`Jmi#nn3o;9>FMS#b>A@RdO4)rx34)K`3`EZy`zOaR@j8Rm8 G!5RQv8uvZ` literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..cf5308693f6b0a77becaeeba296be9351755362f GIT binary patch literal 683 zcmV;c0#yA+Nk%w1VO{_n0EGYmS72BUU_k||V8e>_`PFNI8(K3`Fi_!Z+qZDz%AHHM zuHCzLy|!H-BS1zA4e$ycOt^4i6eJm6=jBri6w(Za;9&niPp||hfz=I1PPQ1ABI*RnUP55kwGxn{NgX=bUiXDW{!u-l=Dv ReB$Y603vjNQBwf{06SKlOl|-G literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round1-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round1-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..634e5e5b4695bae456a8f4cc933be403c8f198a7 GIT binary patch literal 500 zcmZ?wbhEHblxC1-Xk}oCi;K(7&aSMitgWqWY;0_8ZSCmj=US1xs*snrj>#D2E99<1A9N4=0 z`uc>OZUPG(oNjDR*Y0o#U|bu$UR;CY!iI(G?(VMme5=+VeEt3X+$=c{9CmDYc({Yx z-l0HoWAbrH4UGjC7H)cadWLcMK7|X7&(6MZR%R%l%0C12MscgndKZY$~k3{f8H|x zxLNUKi?SP*Rd=mx9|q;mi!Pn-ox9SvXpK+B?x3PoS=G~0sus9apSEpymf5^2rEx=L z*W#M)Wo1+LS5Dp=+j%Ci?OH_d4WGVu{uAB@P5uxz^<(7pPcgGTC$=3(=sJvpc*v}f(+eYhh&INT-cy=~3S%^3%OZP>x= z*tEUi@u|7q+t=OQUGY%Q!l|ICX@3JVx17(84G#}@ur8OF(cJj>_ylF|c|JQgJv}|S zo1^E#g3Zs*FL3Ub^WC*2^P>DNpM?(=Y<+!wL-Of)zPq>O-c;BkaPY%|?eFg&Xy%sp z+q0waq2j6sCl2h{`T6;U#oqJ%_WmkSVQ|a1e{S#Y@9!TR{@pDvUw496=*8vL@#pvL z{r&yJ_z^M6j-AOcfMZ%#*4z(2znt04!JZKg$I?*H+n^AD6 zRU&Q0!#0_+7Z2MNidM8ZSS?6+)Tyy-#iK5rZ7&{mYfBkk;L^X6@wnIG*^0+~Hs4+- z_ZbKrY38;U%X~7?{g^&1c=v8)vf{9_iXJBB%2 vY!PmE(|Wn2-s&QYNSIESpm=nO zsjRH5wzjsqy1Ko+y}`l3#l^+S%F52p&e74))z#J6+1cIQ-QeKh<>lq+>FMq5?eg;S z^z`)k`T6|(`~Uy|A^8LW00031EC2ui08IcJ000R700RgdNN|D!1OyT)T*$DY!-o(X zCU7u;pv8*=6D)85L4wDRAVZ2ANwOqK2o4q`z=&}{g9$KW%A85Frp=o;X*O8Ea^M09 z6oLvJO0=laqezn;mB5pw0;N!+N}U?C0mcIrvTEJRwX4^!V8e>l>cFA_3Kr6;UCXwu z+qZDz%2ivT>_7%{^XlEp*FuDW1uh64Ot`S&!-x|rUVPYUfCLyKOP)-*vgON|Gi$c| zAOM61n?s8pO({Vj%braewgm|TYU|$3ySM8G06GXCPQ1ABWRvuDpBp`-Ti;FWq?s1RU5`19yHNDx>cy?gC;J-?qHo&3N9 z8|dpt&Y?5G1p5U@90V9W;K6|iCaB670Yi@2%n%kAIVBy-^+Y26_n)}+UiGx+>#jCsC+nYF8M1OF})igFW@OB7m z$DP@+@$pf9KKpq-m7kaxWsI`#o!Pnh`T05W3Og8fZOObKsiCpp!osbuuWv{`J@4(W zCI|K{#jls?9$eaf|3EXhyx$&+f~{O?67lEe>}YM0wey(ow|Cdq*VnCYsP16c{r&xo z?Hiu3Zdt!zJek1#L^By4cx;80uf fpouH5fsuuuRYH)NOCaH4t3+BwVi+SE3xhQP?{nWE literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round2-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-round2-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..38b9669a75d63f6355bafe6646f78f5d51a62f55 GIT binary patch literal 968 zcmZ?wbhEHbjAM{yXk%a~D=X8C-mD$BLnm>MZR%R%l%0C12MscgndKZY$~k3{f8H|x zxLNUKi?SP*Rd=mx9|q;mi!Pn-ox9SvXpK+B?x3PoS=G~0sus9apSEpymf5^2rEx=L z*W#M)Wo1+LS5Dp=+j%Ci?OH_d4WGVu{uAB@P5uxz^<(7pPcgGTC$=3(=sJvpc*v}f(+eY%5TatUe2o!PPR@$m`D-t%NEj~o{QUgFV( zsjRH5wzjsqy1Ko+y}`l3#l^+S%F52p&e74))z#J6+1cIQ-QeKh<>lq+>FMq5?eg;S z^z`)k`T6|(`~Uy|A^8LW00031EC2ui0A2ta000R700RgdNHBl{1OyT)T*$DY!-o(f zN=%r*LBWd{10-1B0D^>%AVZ2ANwTELlPE(%aIhdj#)}IYOqfZtrp=o;bL!m5vuA?^ zF9j};K%uD7qezn~UCOkn)2Brx0L`cXs@1DlvodXf@j!*IV8ewdga8XBWSC96w(Z-vbL-yCyLWF35(fAlPQ18r;|&0G zSkAn;^XJf`OP@}?y7dkU1YF|;j-OHaZJ$--z z^z-ZY3qimC_7xCxzy|*n_#FqP5tM*|3~mPjMh|!(;e-@cXyJtzW~kwY99jrpM&flS z;)o=cSYZbrzEnX5CbsC}ix~tM)IbzmpaBOj=BOiu9B6O>1v6rlfdv#qVC0cVCaL6- ROg8D{lSaOkK~Mn!06U`804@Lk literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-square-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-square-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..f745933cc8416999ce8f48eb423d9141c5721cc0 GIT binary patch literal 405 zcmV;G0c!q7Nk%w1VJQF`0E7SlUS3{mYHE3TdH?_af`WpEhK7iUh>?+znwpxPo}Qth zp`@gwsi~>7w6wUmxW2x=z`(%D%F52p&e74))YR12*x23O-Qwcn=H}+<>FMn3?C|jL z_4W1n`S}0<00000A^8LW00093EC2ui04V?)000R700#&x0HC13g9sBUJQ!esz=r`C zJdi-KqQ#3CGgf@SAizTc5j2V%sWE~>1PvyrT*N5dPqDYetHCmym)2C3QN}cMIDb=f3ry8}uwX4^!V8e>-x^=ACvtrAlU5nP} zg|~3y%AHHME?l>E^Xjc@6ocQtfCCF2O!#l#!iW({VjvsNv;w(Z!PIq2TaySMM(z&T`CfIvd<L~Bey{ZZ|Nn-Jmy?r|nwpxK zpsT8?s;{rFqN%j9va*1u-jB8G!otGK%gfHr&cMgf)YR1C;^F`R000000000000000 z00000A^8LW001cfEC2ui0A2ta000R708({Vj%brcUw(Z*y+)CKZySMM(z=I1PPQ18r32rYaU(UR_^XJf` zOP@}?`USTbvTNVYy}S4C;KTciA5R{G+YIQ_t6$H)z5Dm@7<0BFvATM36z5kHFWCfr=W%^>Zqia PYU-(>+K@v<0RaFzl*D)6 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-square-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/switch-square-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..1d4be9d2a8d2f1355d1e11805e5b1a68a506e0cc GIT binary patch literal 484 zcmVUIb%g)Zu(b3V>)z#YC+TGpV;o;%s<>l(?>h10A^78Wb_V)St`TYF+ z000000000000000A^8LW00062EC2ui0A2ta000R700jtSV4#4(g9sBUT*$DY!-o(R z8ekx>qJaes9%$Uiv7^V2AVZ2ANz!A31qLb(cmScL%a<@?%A85Frp=o*A0QBrKtY6` zK!XY$O0=laqezn`%@_cJ(x*_PN`(pm0RRbDvufSSwX4^!V8eeRL zUoQMO^XJf`|8_3Dx^?B$uWR4#J3II9+r46gA1_@z`SZ)oqhC+_KmZII;>({;zrOwZ z`19-EzaImF1Q75i;D7`cI3NWP2tYsv1~%y6gZXKoKt&K-z#xPeW+-3=7eG*vKomUS az=$N4XyS<|rl{hIEVg*!0~Ayg5CA)9OYzkJ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..f8d6ef074196ca8d53ce4dbe2ff3258c7771bf3b GIT binary patch literal 197 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{Q!2~3qBu}&hQlcfU5hcz=sfi_-`FRQ4nJaD4z_MyE9S6y{fyOa-y85}Sb4q9e0Ef0m9RL6T literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-seg-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-seg-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..f8bb99ee9679309ababf0110cdfa7d7ae70907de GIT binary patch literal 205 zcmeAS@N?(olHy`uVBq!ia0vp^OhBx_0V20=u=4{_q9v{oCC){ui6xo&c?uz!xv327 zcNlru%q=U{7^DLgu$OrHy0YJ4=4WPH#MA-68w>wqau{|Khp_kps@^|u6{1-oD!M?NMQuIzW1`I#9Nrrp@Q2q?r^ z;1OBOz`!j8!i<;h*8KqrdU(1xhE&{2&Y8D&c4K4X)A#r56JFi7SGgxY<3W9js)kmg z*S~+qukbCsSNDf)$qb1D3|<=zjG8pr*xYz5LsTQ4CU_~_`nZyX!S$#1_M81S-+^W_ Nc)I$ztaD0e0syTtI9vb# literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-sel-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-sel-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..c3b0a333d99d4d224612e7eb7ba5b90c0ba0106d GIT binary patch literal 200 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{Q!2~3qBu}&hQlcfU5hcz=sfi_-`FRQ{BKK34z$ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-slim-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-slim-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..f982afb761ae3b230544c11e5b042862523e7cf6 GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^Oh7Eh0U|pOL`()!MxHK?Ar*7>9%STV5M*FD__xJF z%`NF~<3G*LEl>%>?RZ@O1TaS?83{ F1OV6dAQb=r literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-tall-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tab-tall-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..41313421407ca6bc204e87b15ee5e99300370999 GIT binary patch literal 126 zcmeAS@N?(olHy`uVBq!ia0vp^OhD|w0V4Oi7>WQXS5Ftmkcv5XkGk_7U=TR4q2a~7 z>go1-y(ad#{54!(aYR?IP|NCwo|)_Fh$A{`u8SpH)~^s=o8hu{h0szBk*7++D?N^! ZuZ=$~kvQ?=U7&dk44$rjF6*2UngIShDp3Fc literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/togglebutton-chk-mark-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/togglebutton-chk-mark-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..2262424c3d3f2697db4434de34b06db63eae08fe GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CF!3HE7boT!OQk(@Ik;On70_G;E839=yo-U3d z6?3KrIPx(la5Vk8` qe{1rSOUteOu222(^7Q6UD>$Y5O85k?&7OV~WV)xTpUXO@geCyFl`csD literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tooltip-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tooltip-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..03bf47ff575355ef335004379f69c1def52935db GIT binary patch literal 181 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{Q!2~3qBu}&hQY`6?zK#qG8~eHcB(ehe>?NMQ zuI#s%#Mq3PC3V_90fizxT^vIs!jnDD=O=iaSdrA>qm{_fcQXA0-`RwMkKSn;in~({ ziaF9RZ0AY2VDc?7;8J1ggs|cSfr;Cb9!xYyOc1`(oD{3TdxS}0O>@iE#vF}j*OL;O blYJSEvhXjdO56SbXbFR-tDnm{r-UW|vrapX literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tooltip-heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/tooltip-heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..e7a64fa676f1abea7e2183c0406f2f1cec978149 GIT binary patch literal 298 zcmeAS@N?(olHy`uVBq!ia0vp^j6kf#!2~4#$}H0c2^0spJ29*~C-V}>VM%xNb!1@J z*w6hZkrl{SNcITwWnidMV_;}#VPN?QL70(Y)*K0-ph}5rL`iUdT1k0gQ7S`VX=ZYENM>%Tg1Mf#o}q$3nH$>98nngd1q}vxyfBop*Pj$aO zkMG+p-tBm7pZxr;#h)FkG}gs*zj?Z8?)7g87FPeo|1VSSye`rd544lP)78&qol`;+ E0BlKHZvX%Q literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/white-arrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/compat/white-arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..84e435a27b0b2c25ff614e2501ed95f050f1e7cc GIT binary patch literal 920 zcmeAS@N?(olHy`uVBq!ia0vp^oFFy_Gm!MTx5WfVv6p!Iy0YJ56626mGT2bw2U1hu z5n0T@z%2yAjF;}#{b68WW(e>JasAKm9|(X-M!{$ZjKC1senvhA=xxT5AirP+hi5m^ zfE+nb7srr_TgeFt2`MQJ3~p``lP9{Ut&)&qneG b1-kUf3v$aJPAOR%0W#Io)z4*}Q$iB}Mj|IP literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/dijit/compat/calendar-month-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/dijit/compat/calendar-month-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..f32e5e37c49b5a0509f9da1c9b37f6f342d530d4 GIT binary patch literal 185 zcmeAS@N?(olHy`uVBq!ia0vp^j6kf&!2~3y-wt~Lq*&4&eH|GXHuiJ>Nn{1`3p`yM zLnOjk4?YxgR$yqj`2O$wvj;OWRy_>ho_zA<_jjsGkJR2jBC&H__vb%?hfWrNn{1`Gdx`! zLnOjk4+aV~DKI!3EdRfIrSijug(ow-3>;?sxUcuUHaPp~F1>S~-8Eb1>|Zja(@@aq z$nS>Yd5?c=c;Azg&$ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/images/thumb-overlay-large.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/images/thumb-overlay-large.png new file mode 100644 index 0000000000000000000000000000000000000000..dfac3707a7c710ba5bea5d9ef6091c88069c4d83 GIT binary patch literal 3697 zcmdT{=Q|sU8czp~QCg!ZPHC&LM`=r|_NqOCh!v|5qpA{WYmXKcdK@E3XrrL|IOw5nX^-hbde_uGAbAKv%(Jn!?ozYp(BwYR-}icf+M005k_FgF1o zSu6l>O!+tNBk!V|rRkA5i7>P=1OV7$BX&@YBQ73p3JrG*^$(BqLBauscS3#P7c4@2 z5O6Tu=T3B34_pTT5IkXFV(1h#vHD^mQ^th<)scXL_!iV$Xqnj>``k9@6%98 zfiV~-B@(fBi*f6Y4w;@TTQL?d^(Eke|I&%IpPye`<)m+v$ZrB#?#8tr|2O7c9#xqs z&+g*(VQ2o{ZJu}T*cByx|I(No*wKZ4qj>Q0#>6@RrP#*dKFmmmlO6UAHd@&g?r%0W z8EOT;OGs>9#an9%7$>|Flr3P!7R2wk`W+tpnxXi0nOT(%1%@0{%uAzJ%F%W5eq12~ zp7yI*QEKTK8A9vhwM%MM^qq;O35dfT_dHQ;xi9h(I5jVruBN6Y^6Q6p`6qY;b@bHL z2dmb!M0s$MhY!RVd&Frvot{)b6B9hUKHa20azLU!w3!5oz9bKHOkB3o`4K~xdP)jy z`LXz|s(G`QNnIO7&&sPRvyQS$>_{utS(3d((>i4KJhGi?-LRhQOMVd#IyLmsS&E@H z`xDe)ef#JsD2dfc&QeIIA9=TCIoJJINDmsf(E&W%>6XcOZZ0J6FX~+5JbFcvdHhc8 zxE+6zk*V)5Fv$+o-dHjkB!_*KtovT=KXo~mO0ZXPfHfO?uPbT-!okE(`pX6T>RChOe;SLyDQIG}6&max@lTZ(d# z3DIpP+fMJxDM3M1Ocdk=MW;Q{DXI5$S-^p1ZsbF*A;ZX76gEDS-=GC+^$^DQA90|C~(&5XV-Nj*FB6^Sg~gqk?Qe#TVIA| z=&_^Hx-qXm{1bQ=ul!D6b@t7}ZzCfkrz*UxqfSphgLcj-xm0?@F6Big#B46~RJeKB zFL<0()iAkjrqdFwHM6}kT9u*jZvUlQ1#D>Vc9?81$iCVHbyoW8AHHNK#b2v^_^V6X zKN{wbH9bxHtFxt+;bl~9{);6@HDfM+YvQH2LDXh*QM0?lu6+X3q0y4>ne(iTjg5mY zso2%G-QC^N4_3#*kV^x3*==oYpPoE@?;4rVVxlOe9Uk!c>s*^(P-?<{k6eLH#C&_I zc>JzXM}a37sS%#jJQobY7RX0l?>L*}y4PI%rmBk57BX4q`EU`B=oKdC_uOfYp%2)H zpEf*w4RQRk)7OKa9AL)zTbft2w06(OUnhO1`@Wff$+*KGDFe~OP$3GPVs=U`q;t*! zwD>}lx{s`w2>PMILFJ92=PphjP)H!ziQMo9;}-4i&B7>i%3%Du)iuuh=qI+hH#;Ia zxRSQVwLCya(w?tVal%T|!JkAjZLUYS5~Q{3y7)Y0iE<06p%X!>XQy^Lco^k{{ag~M zd*a%(#3$Yk^X=WNn_v)vCr+!A- zq0Mu;yHltcjFJnML&5s_`nKi=#G+6rn4O)Fei+cP+^M;xMUPX8gKe7KzD=*||EX)x zxjd9k^)S?ef=9i=r$Ikk_h}88=P4CdHCZj3LTwekEt+4zIyx zglB;}LT`u)PkyZD`&O=;49&}~$l7er2%FysZ3x+bYPqGyi@uisW8=i)iyC~t+O@Xb zUsSis-FtM_={J?R+fhO-!|i+`K0{+9br8)v^ty-RR1UwPZyykxXxfvGNl*=#cZ7jGiG|c|D10pCOqd{x#8q;XPr<@#Q3U+{0buDH;$y7Gk^MP~dU`XuMq!v@9RaQ$(_F+3h$S z^%mT6Z@N>tjxS+VE+K(p>eHcIffTZTZfY@sDHb`DV5-1M%cM1~$TExV zD1(~anKyqp)GrfQppHgQ!I0YsUsI2vr3k~*Iu)FQ@*5@Ha<&T~?0fuGZgH0bB09xs zuti^AUm9y!nzoqA4xWJ7$>m;%SP9r3vh?oPVE6y6rO#Pekv#YN?{VziUy^$XU`lUZ zneE~-dK1|2+~uyrYIE4fPG^*{MOkrK4?djjb{RYPmjU}Pyay%?sFsiQK9OWJ7sgxX zKC4guZXV_uHk>Cw(FQV{NMc?tIzB~rF*xATD*|C)cV`Du(dz1zf8Qq)>eFi9q(mkr z4=@J?Y#}6;NEW%lr!6@om`xtXFqe30##bXoQLG-_S`B&&AU1$zp#jqNwzL(kGZzFXRx!{*~KWLa>&UW$tc<}*`pCjLLZLsAPRCabYkeRO=Yl+Om0Edxp@2y%^N{7CTUE9)uV*+8mQVYl1&`mf5*vl=*0=W#+)C!^bv`Vm-6 zg}*bcQb9Fv^13rwd<`-Lby+aBX;D^utis`Qse(=0_qaF2Y!lUr`X;(#R9S4IM4kAW zYXw``nahQ3^->*@it%TJM_FKZR#F^(V27 zB_mggwrPa0iU2y12@1~aI~5I9r*Ly~8#z~3hjb!=d=>FS$NEDERh|ZEHJ7T=#ylXl z3PaX4PcUH?X%3CdtGG@rq!3mT`4-DBfebf_6{YdEnr{yKuyE_KE|wI&@-r?xH- z-8mKN^-{N{YT#CF8kn`J&2y>|x1xD8h9;Y%QI3KUhtE(;1E$*LrG#Ws)1s4^T>ocj z-%yh%EahCmPiY2JGhbK%tU>9Dh0t?VGJpRK6J9(wH)l_0)hzim0$OrKyMM+#g5IC~ dDt(L_u;)qmKAq<-d-O8`EKF@pDvi7o{{_Ck0iFN= literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/images/thumb-overlay-small.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/images/thumb-overlay-small.png new file mode 100644 index 0000000000000000000000000000000000000000..b6836d967b132a52b84783cccb5f7678201faa71 GIT binary patch literal 1549 zcmbW1`8(7J9LI-TjjNT#=vGKr8Q%;=j!>o<$GES?U^0{J#JG1IsTt8uDwLyKgF=lQ zVO+B^?lO+Sx_7BTBUck6*G~R}-5)-$_w#w)KYgC(^?VZTY%WWKmBAnoNZR^}1xk=e z!DLE^3Ag}lRTqSazZudD1RDB_ZR-jZ?2r&k*ANH7^^kB(FcxIyNASTOw+_VkV^LU) zUt~}x)(8X=&9SyHbBq{Wm|$J?b&(feUf0u2>h9o*?Mm~jV@>Z@4Uu}^X602` z%+=k`3s5B0%@zIq&dWt~A~oKi?m$6SlDpj1y!7Jq8^{Yt!2K)tQ{ymkI$Afe*{0iW zZhYx>_ivL%;*$x)C3?nfy%KI6cshp!26DGyI3#BaxCntjB6Z}!^R&AqXDn478Ngo* zpa+uC{ii2L*ZU)sC|2SMii(W>P-7iD6hAgL)+i|{DeLU)e6)|1GeuepGdLU*8xX*y zuB-(0)M_e2X=t0HL?W@$KR9^Rw{ADJ&2}=us-gReC5q7$Z9BDz;s zq2U`{lOzSf^}k_4L%#`4B%Hd|v^AMGF)=ZMP&?@NbW}E=(pquG%gO23g9i^5t*Cv} z@^al$S1ou-XbfYD((1$M??>(K?Cfx9+!(8Y@#$U#stjd`UU;HgrawJzB`H0nSm?+F zdHgBd?cG!m) zXL)KEp)@zr4V%<80-w1^QEU|&RyW1Q5pSGPkCo(mc@p#EpBMwkT#>`=c+IEX+hojp zT;|$iCMj;SVYYK7PPW=_Me_)s-VLln!y%M)?Uw2<`sX(o2vKjcn8}-yZ0y3T_npDX zZCQ>|JrV>`lg3t&XAP&iaT~6g29JsI)>4vM6-VDAh*jtt!I(n3m%WBf3jCrdwAm_Q z!-2y~%OwNi+Q4E>O$|En+_RJ|X0xd+4qpT&nVY=sSZev_Y}ua`;iJQ+MYpSRHqyu! z2jvpN*|%__WZdQ|IG^KWnWh$r*84dmf$?qFV!_-RJCyyQL>#t5fO?12KbBK!aZ2{$ z!{T3P6v8?`3V)fRxf}rPiPw8z&r2~tWY0?>X`wwYO)vfTx@uR|-D_&UMRYCf`NrqW zjOB(ecBgSB(VEY=FRLvFm=xc!u#9)+)f3>w7DpAJx|o;5W>Ny(oQqwxf|sg5YxSQ| zyaBM3BABG5D!)$tc#~L?VU@CRQ-6~`Jst01%b>E?@1zFunVXEXPQR!Ql83!wBSMdf zbaNW?IsZJSp|bK|R(d)=mrC{hgA;2{%Yt_eRiyPrv3hzY@3s0&af0bo8jTkJ6i;5y zrE!fSvk_{H3xhva{0*WcD_`)>LDrTw7BqA3_M2bcb1Or&;QZ#{p(i1`zP=ZSd5RIZHAW{+_p-EK; zW$7JU*L0sl;?(UD9-I=>T-uupcXWpB6e|)}=c-6s5TtqP-5$uY2)d+8Wuk_m=7)9Nt!qfK?!@du zU0K^Z>djYW>y@h}WQo?Bqz{?|>ynbQNJvjrP+$^EBe&~379Z;fYcioaj2P(I6u~58 zCt4y`a)C`oWG9xX-8)!Y0aBFAmsJ*&;+ehN$bub#X)VWDyqd5S(?J2_B>$UvJFUVy z%>yN|?IG;OM~->0ZB9>*`G8B*x%wMAtFKd4CF4~JHDlZ}CC-n8THn$FWRL?wGcz-6 zE|)twwph3g3sw*eQ^HsT#>aOSo!XmErf=?}fY}+(dvXWH-2r9>` z1<>nm@Fe1`h=>gxV)XTSM2GXJ8}y!poQ22uV52RpSWHQ^Z>kHA-+oty=vr)m5R$|5 zv`>@<&}T_iE;k!~{=p;r_|V33TKG|_2wb1Si)vY@opSSMJs^~nz~hTz%7W0l;Q!l`y8qv^f9YL6xK|dt{5x`B zH5@fUrBdMq!`~UN-V{HudV2I@1)BF0;7iJvI11Z(k$l#ofAZ0@Y2mdH2YPyXy5r}q zj-hDoB$%I?cG5IEFK_QtcY>(n603n;$V*mPi31~DAeKqtZkXa~{kH5^`5#Ml!2lWn5|APJ%i$`u!ADf5{eiv20pn*dit1L<;VbR7B1~<= zM#OAmu7TB01WL1B{hL${n^*fW11dUr4S4L~%?*}6M5WU+dalRoFB{i{juUmXK7IZD z5Z@`WjC`Ys-CYv$PB>!m8x zd2KnKB`cMWFZw$Ri+608F01F~-eH7!OCzqNsV$xGyB&g>bRxfIx7y`b zR|}1y2T1B>^kzA9&sOU_`Cq^Ca|kiG04;8-WS76f{0A?nPuyXH&K~Xl^KFBQXb&vn zqO#w80{B0S{fmja|FZ|V@J~edcl`s~{qXuXwtwRNmJIk3$Q5Q(3_yCjvunTWajOmv z6kCd*-skJv%g7|)zdOVe!D#LMTMedRugoabN}hRM=~yj|L3*EDdX{3LW)M4=`+ZJe zwt^~~K6OyFcyytD=G=;cP#h4kR{}8-HO61Kh9ED+2`eN^O>yhXql(`KFd*|f4JohX zWQ(ymqa-Y%df@a`4>1i!;yCdNd@{Pyx*{ZwO8U*}x!1E0YA>rX)fAlxi& VotbGLx&N#|HWm)%RhPU8e*m0swgLbE literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ipad-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ipad-compat.css new file mode 100644 index 00000000..7fe5c5a6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ipad-compat.css @@ -0,0 +1,69 @@ + +.dj_tablet .mblHeading { + background-image: url(compat/ipad-heading-bg.png); +} +.dj_gecko.dj_tablet .mblHeading { + background-image: -moz-linear-gradient(top, #f3f4f6 0%, #a7abb8 100%); +} +.dj_ie.dj_tablet .mblToolBarButtonHasLeftArrow .mblToolBarButtonLeftArrow { + background-image: url(compat/ipad-arrow-button-head.png); +} +.dj_ie.dj_tablet .mblToolBarButtonHasRightArrow .mblToolBarButtonRightArrow { + background-image: url(compat/ipad-arrow-button-right-head.png); +} +.dj_ie.dj_tablet .mblToolBarButtonBody { + background-image: url(compat/ipad-arrow-button-bg.png); +} +.dj_ie.dj_tablet .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url(compat/ipad-arrow-button-head-sel.png); +} +.dj_ie.dj_tablet .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url(compat/ipad-arrow-button-right-head-sel.png); +} +.dj_ie.dj_tablet .mblToolBarButtonSelected .mblToolBarButtonBody { + background-image: url(compat/ipad-arrow-button-sel-bg.png); +} +.dj_tablet .mblTabBarSegmentedControl, +.dj_tablet .mblTabBarStandardTab, +.dj_tablet .mblTabBarSegmentedControl .mblTabBarButton { + background-image: url(compat/ipad-heading-bg.png); +} +.dj_tablet .mblTabBarSegmentedControl .mblTabBarButtonSelected { + background-image: url(compat/ipad-arrow-button-bg.png); +} +.dj_tablet .mblTabBarStandardTab .mblTabBarButtonSelected { + background-color: #f3f4f6; + background-image: none; +} +.dj_gecko.dj_tablet .mblTabBarSegmentedControl, +.dj_gecko.dj_tablet .mblTabBarStandardTab, +.dj_gecko.dj_tablet .mblTabBarSegmentedControl .mblTabBarButton { + background-image: -moz-linear-gradient(top, #f3f4f6 0%, #a7abb8 100%); +} +.dj_gecko.dj_tablet .mblTabBarSegmentedControl .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #b1b5bb 0%, #6a727d 100%); +} +.dj_gecko.dj_tablet .mblTabBarStandardTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #f0f0f2 0%, #959da0 100%); +} +.dj_gecko.dj_tablet .mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #f3f4f6 0%, #f2f3f7 100%); +} +.dj_tablet .mblColorDefault { + background-color: #8b919a; +} +.dj_gecko.dj_tablet .mblColorDefault { + background-image: -moz-linear-gradient(top, #b1b5bb 0%, #6a727d 100%); +} +.dj_gecko.dj_tablet .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #b1b5bb 0%, #6a727d 100%); +} +.dj_tablet .mblColorDefaultSel { + background-color: #515761; +} +.dj_gecko.dj_tablet .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #7a7e85 0%, #303845 100%); +} +.dj_gecko.dj_tablet .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #7a7e85 0%, #303845 100%); +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ipad.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ipad.css new file mode 100644 index 00000000..2bd0f08f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/ipad.css @@ -0,0 +1,96 @@ + +.dj_tablet .mblHeading { + background: -webkit-gradient(linear, left top, left bottom, from(#f3f4f6), to(#a7abb8)); + border-top: 1px solid #fefefe; + border-bottom: 1px solid #787e8f; + color: #70777f; + text-shadow: rgba(256,256,256,0.6) 0px 1px 0px; +} +.dj_tablet .mblToolBarButton { + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; +} +.dj_tablet .mblHeading .mblToolBarButtonArrow { + border-color: #60656f #60656f #5a5c5f #5a5c5f; +} +.dj_tablet .mblHeading .mblToolBarButtonBody { + border-color: #4e4f51 #60656f #565b64 #5a5c5f; +} +.dj_tablet .mblTooltip .mblHeading { + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; +} +.dj_tablet .mblRoundRect { + margin: 7px 30px 30px 30px; +} +.dj_tablet .mblHeading + .mblRoundRect { + margin-top: 30px; +} +.dj_tablet .mblRoundRectCategory { + margin: 18px 0px 0px 41px; +} +.dj_tablet .mblRoundRectList { + margin: 7px 30px 30px 30px; +} +.dj_tablet .mblRoundRectList:first-child { + margin-top: 25px; +} +.dj_tablet .mblHeading + .mblRoundRectList { + margin-top: 30px; +} +.dj_tablet .mblFilteredRoundRectListSearchBox { + padding-left: 30px; + padding-right: 30px; +} +.dj_tablet .mblTabBar { + color: #70777f; + text-shadow: rgba(255,255,255,0.6) 0px 1px 0px; +} +.dj_tablet .mblTabBarTabBar { + border-top: 1px solid #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); +} +.dj_tablet .mblTabBarSegmentedControl, +.dj_tablet .mblTabBarStandardTab { + border-top: 1px solid #fefefe; + border-bottom: 1px solid #787e8f; + background: -webkit-gradient(linear, left top, left bottom, from(#f3f4f6), to(#a7abb8)); +} +.dj_tablet .mblTabBarSegmentedControl .mblTabBarButton { + background-color: #889bb3; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f3f4f6), to(#a7abb8)); + border-color: #4e4f51 #60656f #565b64 #5a5c5f; + color: #70777f; + text-shadow: none; +} +.dj_tablet .mblTabBarSegmentedControl .mblTabBarButtonSelected { + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + background-color: #8b919a; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b1b5bb), to(#6a727d)); +} +.dj_tablet .mblHeading .mblTabBarSegmentedControl { + border: none; +} +.dj_tablet .mblTabBarStandardTab .mblTabBarButton { + color: #000000; + text-shadow: rgba(255, 255, 255, 0.6) 0px 1px 0px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f2), to(#959da0)); +} +.dj_tablet .mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f3f4f6), to(#f2f3f7)); +} +.dj_tablet .mblTabBarFlatTab .mblTabBarButton { + color: white; +} +.dj_tablet .mblColorDefault { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b1b5bb), to(#6a727d)); +} +.dj_tablet .mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#b1b5bb), to(#6a727d)); +} +.dj_tablet .mblColorDefaultSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a7e85), to(#303845)); +} +.dj_tablet .mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a7e85), to(#303845)); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone-app-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone-app-compat.css new file mode 100644 index 00000000..2ab4429d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone-app-compat.css @@ -0,0 +1,1311 @@ + +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_gecko .mblHeading .mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.dj_gecko .mblHeading .mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + -moz-box-shadow: 1px 0 0 rgba(255, 255, 255, 0.305); +} +.dj_gecko .mblHeading .mblToolBarButtonBody { + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 5px; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} +.mblEdgeToEdgeCategory { + background-image: url("compat/edge-categ-bg.png"); +} +.dj_gecko .mblEdgeToEdgeCategory { + background-image: -moz-linear-gradient(top, #8f9ea9 0%, #b7c0c7 100%); +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #048bf4; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #048bf4 0%, #005ce5 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #cccccc 0%, #fafafa 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 5px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 5px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} +.mblDomButtonWhitePlus { + background-image: url("../common/domButtons/compat/mblDomButtonWhitePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhitePlus div { + display: none; +} +.mblDomButtonWhiteMinus { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteMinus div { + display: none; +} +.mblDomButtonWhiteUpArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteUpArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteUpArrow div { + display: none; +} +.mblDomButtonWhiteDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteDownArrow div { + display: none; +} +.mblDomButtonWhiteSearch { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteSearch.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteSearch div { + display: none; +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonCheckboxOn { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOn.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOn div { + display: none; +} +.mblDomButtonCheckboxOff { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOff.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOff div { + display: none; +} +.mblDomButtonBlueCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleMinus > div { + display: none; +} +.mblDomButtonBlueCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCirclePlus > div { + display: none; +} +.mblDomButtonBlueCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleArrow > div { + display: none; +} +.mblDomButtonRedCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleMinus > div { + display: none; +} +.mblDomButtonRedCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCirclePlus > div { + display: none; +} +.mblDomButtonRedCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleArrow > div { + display: none; +} +.mblDomButtonGreenCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleMinus > div { + display: none; +} +.mblDomButtonGreenCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCirclePlus > div { + display: none; +} +.mblDomButtonGreenCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleArrow > div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblDomButtonGrayRoundRect > div { + -moz-border-radius: 4px; +} +.mblDomButtonSilverCircleDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleDownArrow > div { + display: none; +} +.mblDomButtonSilverCircleGreenButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenButton > div { + display: none; +} +.mblDomButtonSilverCircleGrayButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGrayButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGrayButton > div { + display: none; +} +.mblDomButtonSilverCircleOrangeButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleOrangeButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleOrangeButton > div { + display: none; +} +.mblDomButtonSilverCircleGreenPlus { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenPlus > div { + display: none; +} +.mblDomButtonSilverCircleRedCross { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleRedCross > div { + display: none; +} +.mblDomButtonBlueBall { + background-image: url("../common/domButtons/compat/mblDomButtonBlueBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueBall > div { + display: none; +} +.mblDomButtonGreenBall { + background-image: url("../common/domButtons/compat/mblDomButtonGreenBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenBall > div { + display: none; +} +.mblDomButtonOrangeBall { + background-image: url("../common/domButtons/compat/mblDomButtonOrangeBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonOrangeBall > div { + display: none; +} +.mblDomButtonRedBall { + background-image: url("../common/domButtons/compat/mblDomButtonRedBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedBall > div { + display: none; +} +.mblDomButtonYellowStar { + background-image: url("../common/domButtons/compat/mblDomButtonYellowStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonYellowStar > div { + display: none; +} +.mblDomButtonGrayStar { + background-image: url("../common/domButtons/compat/mblDomButtonGrayStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayStar > div { + display: none; +} +.mblDomButtonGrayCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonGrayCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonRedCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonGrayKnob { + background-image: url("../common/domButtons/compat/mblDomButtonGrayKnob.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayKnob > div { + display: none; +} +.mblDomButtonGrayPlus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayPlus div { + display: none; +} +.mblDomButtonGrayMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayMinus div { + display: none; +} +.mblAccordionTitle { + background-color: #f0f2f3; +} +.mblAccordionTitleSelected { + background-color: #7796ac; +} +.dj_gecko .mblAccordionTitle { + background-image: -moz-linear-gradient(top, #fcfcfc 0%, #f0f2f3 20%, #e1e5e8 100%); +} +.dj_gecko .mblAccordionTitleSelected { + background-image: -moz-linear-gradient(top, #97afc0 0%, #7796ac 20%, #46708e 100%); +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.mblButton { + background-image: url("compat/button-bg.png"); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblBlueButton { + background-image: url("compat/blue-button-bg.png"); +} +.mblBlueButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.mblRedButton { + background-image: url("compat/red-button-bg.png"); +} +.mblRedButtonSelected { + background-image: url("compat/red-button-sel-bg.png"); +} +.dj_gecko .mblButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblButtonSelected { + background-image: -moz-linear-gradient(top, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.dj_gecko .mblBlueButton { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblBlueButtonSelected { + background-image: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_gecko .mblRedButton { + background-image: -moz-linear-gradient(top, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); +} +.dj_gecko .mblRedButtonSelected { + background-image: -moz-linear-gradient(top, #c1a48e 0%, #a27758 50%, #996947 50%, #9b6c4a 100%); +} +.dj_ff3 .mblButton { + -moz-border-radius: 5px; +} +.mblCheckBox { + background-image: url("compat/button-bg.png"); +} +.mblCheckBoxSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblCheckBox { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 5px; +} +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: 0 0 50px #000000; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: -moz-linear-gradient(top, #048bf4 0%, #005ce5 100%); +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url("compat/icon-content-heading-bg.png"); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} +.mblIconMenu { + background-color: #040404; +} +.mblIconMenuItemSel { + background-color: #0a36e9; +} +.dj_gecko .mblIconMenu { + background-color: transparent; + background-image: -moz-linear-gradient(top, rgba(102, 102, 119, 0.85) 0%, rgba(22, 22, 30, 0.85) 35%, rgba(4, 4, 4, 0.85) 100%); + -moz-box-shadow: 1px 3px 5px rgba(0, 0, 0, 0.5); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-color: transparent; + background-image: -moz-linear-gradient(top, rgba(139, 157, 229, 0.6) 0%, rgba(10, 54, 233, 0.8) 60%, rgba(10, 54, 233, 0.8) 100%); +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 10px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 10px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 10px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 10px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 10px; +} +.mblOverlay { + text-align: center; + background-color: #cecece; + background-image: none; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #cecece 100%); +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.mblTooltip .mblHeading { + background-image: url("compat/tooltip-heading-bg.png"); +} +.mblTooltip .mblHeading .mblToolBarButton { + background-color: #000924; + background-image: url("compat/tooltip-button-bg.png"); +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 8px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #889bb3; + border-bottom: 1px solid #889bb3; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} +.mblRadioButton { + background-image: url("compat/button-bg.png"); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.dj_gecko .mblRadioButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 5px; +} +.mblSearchBox { + height: auto; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblSimpleDialogDecoration { + background-color: #233260; +} +.dj_gecko .mblSimpleDialogDecoration { + background-color: rgba(35, 50, 96, 0.85); + background-image: -moz-linear-gradient(top, rgba(150, 150, 170, 0.85) 0%, rgba(77, 85, 119, 0.85) 15%, rgba(35, 50, 96, 0.85) 15%, rgba(18, 29, 68, 0.85) 100%); + -moz-box-shadow: 0 3px 2px #000000; +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 10px; +} +.mblSlider { + background-image: url("compat/slider-h-bg.png"); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url("compat/slider-h-bar-bg.png"); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url("compat/slider-handle-bg.png"); +} +.mblSliderV { + background-color: #cecece; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #2859b1; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -moz-linear-gradient(top, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: -moz-linear-gradient(top, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.dj_gecko .mblSliderHandle { + background-image: -moz-linear-gradient(top, #cccccc 0%, #fafafa 100%); +} +.dj_ff3 .mblSlider { + -moz-border-radius: 8px; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 8px; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 10px; +} +.mblSpinWheel { + background-image: url("../common/compat/spinwheel-bg.png"); +} +.mblSpinWheelBar { + background-image: url("../common/compat/spinwheel-bar.png"); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-image: none; + background-color: #000000; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url("compat/heading-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url("compat/tab-seg-button-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url("compat/tab-seg-sel-button-bg.png"); +} +.dj_gecko .mblTabBarSegmentedControl .mblTabBarButton { + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url("compat/tab-slim-bar-bg.png"); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url("compat/tab-tall-bar-bg.png"); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 5px; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 5px; +} +.mblToggleButton { + background-image: url("compat/button-bg.png"); +} +.mblToggleButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblToggleButtonChecked { + background-image: url("compat/button-chk-bg.png"); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblToggleButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.dj_gecko .mblToggleButtonChecked { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 5px; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url("compat/togglebutton-chk-mark-bg.png"); +} +.mblValuePickerSlotButton { + background-image: url("compat/valuepicker-button-bg.png"); +} +.mblValuePickerSlotButtonSelected { + background-color: #394d77; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: -moz-linear-gradient(top, #9cb1c9 10%, #f0f1f5 35%, #f0f1f5 65%, #9cb1c9 90%); +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: -moz-linear-gradient(top, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: -moz-linear-gradient(top, #eaeaea 10%, #fafafa 20%, #ffffff 50%, #efefef 90%); +} +.alertDialogBody { + -moz-border-radius: 10px; +} +.alertTitle { + background-image: url(compat/heading-bg.png); +} +.mblImageThumbView .mblThumb { + -moz-transition: all 0.5s ease-in-out; + -o-transition: all 0.5s ease-in-out; +} +.mblImageThumbView .mblThumb:hover { + -moz-transform: scale(1.2); + -moz-transition: all 0.3s ease-in-out; + -o-transform: scale(1.2); + -o-transition: all 0.3s ease-in-out; +} +.mblImageThumbView .mblThumbInner .mblThumbMask .mblThumbSrc { + -moz-background-size: 100% 100%; + -moz-border-radius: 5px; + -o-background-size: 100% 100%; + -o-border-radius: 5px; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone-app.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone-app.css new file mode 100644 index 00000000..04d961e5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone-app.css @@ -0,0 +1,5885 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; +} +.mblBackground { + background-color: #c5ccd3; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorDefault { + color: #ffffff; + background-color: #5877a2; + background-image: -webkit-gradient(linear, left top, left bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to right bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #394d77; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to right bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.dj_ios6 .mblColorBlue { + background-image: -webkit-gradient(linear, left top, left bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to bottom, #89abec 0%, #2057c1 100%); +} +.dj_ios6 .mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to right bottom, #89abec 0%, #2057c1 100%); +} +.dj_ios6.dj_phone { + +} +.dj_ios6.dj_phone body { + background-color: #d7dce5; +} +.dj_ios6.dj_phone body.mblIOS6Stripes { + + background-image: -webkit-gradient(linear, left top, right top, from(transparent), to(#d4d9e3), color-stop(0.7, transparent), color-stop(0.7, #d4d9e3)); + background-size: 8px 8px; +} +.dj_ios6.dj_phone .mblColorDefault { + background-image: -webkit-gradient(linear, left top, left bottom, from(#99aac2), to(#41618d)); + background-image: linear-gradient(to bottom, #99aac2 0%, #41618d 100%); +} +.dj_ios6.dj_phone .mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#99aac2), to(#41618d)); + background-image: linear-gradient(to right bottom, #99aac2 0%, #41618d 100%); +} +.dj_ios6.dj_phone .mblColorDefaultSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8b97af), to(#273e6b)); + background-image: linear-gradient(to bottom, #8b97af 0%, #273e6b 100%); +} +.dj_ios6.dj_phone .mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#8b97af), to(#273e6b)); + background-image: linear-gradient(to right bottom, #8b97af 0%, #273e6b 100%); +} +.dj_ios6.dj_phone .mblColorBlue { + background-image: -webkit-gradient(linear, left top, left bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to bottom, #89abec 0%, #2057c1 100%); +} +.dj_ios6.dj_phone .mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to right bottom, #89abec 0%, #2057c1 100%); +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.dj_ios6.dj_phone .mblHeading { + border-top: 1px solid #eff2f7; + border-bottom: 1px solid #3f5c80; + background-image: -webkit-gradient(linear, left top, left bottom, from(#d0d9e6), to(#587397), color-stop(0.025, #d0d9e6), color-stop(0.025, #beccdd)); + background-image: linear-gradient(to bottom, #d0d9e6 0%, #d0d9e6 2.5%, #beccdd 2.5%, #587397 100%); +} +.dj_ios6.dj_phone .mblHeading.mblFixedBottomBar { + border-top: 1px solid #5e748c; + border-bottom: 1px solid #577296; + background-image: -webkit-gradient(linear, left top, left bottom, from(#dee4ec), to(#577296), color-stop(0.025, #dee4ec), color-stop(0.025, #c1cddd), color-stop(0.05, #c1cddd), color-stop(0.05, #b0bfd3)); + background-image: linear-gradient(to bottom, #dee4ec 0%, #dee4ec 2.5%, #c1cddd 2.5%, #c1cddd 5%, #b0bfd3 5%, #577296 100%); +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + -webkit-transform: scale(0.75, 1) rotate(45deg); + transform: scale(0.75, 1) rotate(45deg); + border: 1px solid #9cacc0; + border-top-left-radius: 1px; + border-bottom-right-radius: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 0px; +} +.mblHeading .mblToolBarButtonArrow { + border-width: 1px; + border-style: solid; + border-color: #405a7e #405a7e #3a4755 #3a4755; +} +.mblHeading .mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.mblHeading .mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + -webkit-box-shadow: 1px 0 0 rgba(255, 255, 255, 0.305); + box-shadow: 1px 0 0 rgba(255, 255, 255, 0.305); +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 5px; + border: 1px outset #9cacc0; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblHeading .mblToolBarButtonBody { + border-width: 1px; + border-style: solid; + border-color: #2f3740 #405a7e #375073 #3a4755; + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.dj_ios6.dj_phone .mblHeading .mblToolBarButtonBody { + border-color: #343a42 #425167 #2f4769 #415066; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 22px; + border-top: 1px solid #a4b0b9; + border-bottom: 1px solid #979da3; + background-image: -webkit-gradient(linear, left top, left bottom, from(#8f9ea9), to(#b7c0c7)); + background-image: linear-gradient(to bottom, #8f9ea9 0%, #b7c0c7 100%); + color: white; + line-height: 22px; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #4c566c; + text-shadow: #ffffff 0 1px 0; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: white; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #707c84; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 43px; + list-style-type: none; + line-height: 43px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #adaaad; + font-weight: bold; + color: black; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#048bf4), to(#005ce5)); + background-image: linear-gradient(to bottom, #048bf4 0%, #005ce5 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked { + color: #314e84; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: #324f85; + margin-top: 12px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.dj_ios6 .mblListItemRightText { + color: #385487; + font-weight: normal; +} +.dj_ios6 .mblListItem { + + -webkit-perspective: 1000; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 8px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-width: 1px; + border-style: solid; + border-color: #939393 #aaaaaa #cbcbcb #767676; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2859b1), to(#75acfb), color-stop(0.5, #3f84eb), color-stop(0.5, #4c8eee)); + background-image: linear-gradient(to bottom, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cecece), to(#fdfdfd), color-stop(0.5, #eeeeee), color-stop(0.5, #f8f8f8)); + background-image: linear-gradient(to bottom, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cccccc), to(#fafafa)); + background-image: linear-gradient(to bottom, #cccccc 0%, #fafafa 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-width: 1px; + border-style: solid; + border-color: #5e5e5e #9e9e9e #828282 #797979; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 5px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 5px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 77px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwDefaultShape .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 50px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwDefaultShape .mblSwitchText { + width: 50px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 26px; +} +.dj_ios6 .mblSwitchBgLeft { + background-color: #007fea; + background-image: -webkit-gradient(linear, left top, left bottom, from(#0060b1), to(#73b3ea), color-stop(0.5, #007fea), color-stop(0.5, #218fec)); + background-image: linear-gradient(to bottom, #0060b1 0%, #007fea 50%, #218fec 50%, #73b3ea 100%); +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} +.mblDomButtonWhitePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhitePlus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhitePlus > div > div { + + position: absolute; + top: -6px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteMinus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteUpArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteUpArrow div { + position: absolute; + left: 0px; + clip: rect(0px 30px 20px 0px); +} +.mblDomButtonWhiteUpArrow > div > div { + top: 9px; + left: 4px; + width: 20px; + height: 20px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteDownArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteDownArrow div { + position: absolute; + left: 0px; + clip: rect(7px 50px 40px 0px); +} +.mblDomButtonWhiteDownArrow > div > div { + top: -10px; + left: 2px; + width: 25px; + height: 25px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteSearch { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteSearch > div { + position: absolute; + top: 5px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + border: 2px solid white; + border-radius: 6px; +} +.mblDomButtonWhiteSearch > div > div { + position: absolute; + top: 10px; + left: 7px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border: none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 0px; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonCheckboxOn { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOn > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOn > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: none; + border-bottom: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonCheckboxOff { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOff > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOff > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: none; + border-top: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonBlueCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlueCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonBlueCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonRedCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonGreenCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblDomButtonGrayRoundRect { + position: relative; + width: 29px; + height: 29px; + text-align: right; +} +.mblDomButtonGrayRoundRect > div { + position: absolute; + right: 0px; + display: inline; + padding: 0px 5px; + top: 7px; + color: white; + font-family: Helvetica; + font-size: 12px; + border-radius: 4px; + background-color: #949ba5; + text-align: center; +} +.mblDomButtonGrayRoundRect > div > div { + display: none; +} +.mblDomButtonSilverCircleDownArrow { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleDownArrow > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div { + position: relative; + top: 3px; + left: 3px; + width: 20px; + height: 20px; + border-radius: 10px; + background: -webkit-gradient(linear, left top, left bottom, from(#979797), to(#616161)); + background: linear-gradient(to bottom, #979797 0%, #616161 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div > div { + position: absolute; + left: 0px; + clip: rect(6px 50px 40px 0px); +} +.mblDomButtonSilverCircleDownArrow > div > div > div > div { + position: absolute; + top: -5px; + left: 1px; + width: 18px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #d1d1d1; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.7) rotate(45deg); + transform: scaleX(0.7) rotate(45deg); +} +.mblDomButtonSilverCircleGreenButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #1b991c; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#17df25), to(#1ba51c)); + background: radial-gradient(6px at center, #17df25 0%, #1ba51c 100%); +} +.mblDomButtonSilverCircleGrayButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGrayButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGrayButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #aeaeae; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#d4d4d4), to(#bababa)); + background: linear-gradient(to bottom, #d4d4d4 0%, #bababa 100%); +} +.mblDomButtonSilverCircleOrangeButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleOrangeButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleOrangeButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #ca701a; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#ff7a07), to(#e66b03)); + background: radial-gradient(6px at center, #ff7a07 0%, #e66b03 100%); +} +.mblDomButtonSilverCircleGreenPlus { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenPlus > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenPlus > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleGreenPlus > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleRedCross { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleRedCross > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleRedCross > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonSilverCircleRedCross > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; +} +.mblDomButtonBlueBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonBlueBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#84aff4), to(#2758b3)); + background: linear-gradient(to bottom, #84aff4 0%, #2758b3 100%); +} +.mblDomButtonGreenBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonGreenBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#59e738), to(#0aa908)); + background: linear-gradient(to bottom, #59e738 0%, #0aa908 100%); +} +.mblDomButtonOrangeBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonOrangeBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#f9e20a), to(#ff6b0a)); + background: linear-gradient(to bottom, #f9e20a 0%, #ff6b0a 100%); +} +.mblDomButtonRedBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonRedBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#ec9b9d), to(#d73c3f)); + background: linear-gradient(to bottom, #ec9b9d 0%, #d73c3f 100%); +} +.mblDomButtonTransparent19 { + position: relative; + width: 19px; + height: 19px; +} +.mblDomButtonTransparent29 { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonTransparent30 { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonYellowStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonYellowStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonYellowStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #cd853f; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonYellowStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonYellowStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonGrayStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #8c8e8c; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonGrayStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonGrayStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonGrayCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + border-radius: 2px; +} +.mblDomButtonRedCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonRedCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + border-radius: 2px; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblDomButtonGrayKnob { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayKnob > div { + + position: absolute; + top: 6px; + left: 2px; + width: 23px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDissolve.mblOut { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveOut; + animation-name: mblDissolveOut; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +.mblDissolve.mblIn { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveIn; + animation-name: mblDissolveIn; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +@-webkit-keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-webkit-keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +.mblCover { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCover.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCover.mblOut { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblCover.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblCover.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblCover.mblOut.mblTransition, +.mblCover.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblCover.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCube { + -webkit-animation-duration: 0.8s; + animation-duration: 0.8s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblCube.mblOut { + -webkit-animation-name: mblCubeOut; + animation-name: mblCubeOut; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +.mblCube.mblIn { + -webkit-animation-name: mblCubeIn; + animation-name: mblCubeIn; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +@-webkit-keyframes mblCubeOut { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOut { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeIn { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeIn { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse; + animation-name: mblCubeOutReverse; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +.mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse; + animation-name: mblCubeInReverse; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOutReverse { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeInReverse { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeInReverse { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.dj_ios .mblCube { + -webkit-transform-style: preserve-3d !important; +} +.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone; + animation-name: mblCubeOut_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone; + animation-name: mblCubeIn_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@keyframes mblCubeOut_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeIn_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeIn_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone_l; + animation-name: mblCubeOut_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone_l; + animation-name: mblCubeIn_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@keyframes mblCubeOut_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeIn_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeIn_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone; + animation-name: mblCubeOutReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone; + animation-name: mblCubeInReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@keyframes mblCubeOutReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeInReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone_l; + animation-name: mblCubeOutReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone_l; + animation-name: mblCubeInReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@keyframes mblCubeOutReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeInReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad; + animation-name: mblCubeOut_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad; + animation-name: mblCubeIn_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@keyframes mblCubeOut_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeIn_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeIn_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad_l; + animation-name: mblCubeOut_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad_l; + animation-name: mblCubeIn_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@keyframes mblCubeOut_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeIn_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeIn_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad; + animation-name: mblCubeOutReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad; + animation-name: mblCubeInReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@keyframes mblCubeOutReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeInReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad_l; + animation-name: mblCubeOutReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad_l; + animation-name: mblCubeInReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@keyframes mblCubeOutReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeInReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.mblReveal { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblReveal.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblReveal.mblOut { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblTransition { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblReveal.mblIn { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblReveal.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblReveal.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSlidev { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlidev.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlidev.mblOut.mblReverse.mblTransition, +.mblSlidev.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblSlidev.mblOut.mblTransition, +.mblSlidev.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblSlidev.mblOut, +.mblSlidev.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblSlidev.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSwirl.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlOut; + animation-name: mblSwirlOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlIn; + animation-name: mblSwirlIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblOut.mblReverse { + -webkit-animation-name: mblSwirlOutReverse; + animation-name: mblSwirlOutReverse; +} +@-webkit-keyframes mblSwirlOut { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(-360deg) scale(0); + } +} +@keyframes mblSwirlOut { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(-360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlOutReverse { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(360deg) scale(0); + } +} +@keyframes mblSwirlOutReverse { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblSwirlIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutOut; + animation-name: mblScaleOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblScaleOut.mblOut { + -webkit-animation-name: mblScaleOutOutAndroid; + animation-name: mblScaleOutOutAndroid; +} +.mblScaleOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutIn; + animation-name: mblScaleOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblScaleOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblScaleOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblScaleOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblScaleOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblScaleOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInOut; + animation-name: mblScaleInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblScaleIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInIn; + animation-name: mblScaleInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblScaleIn.mblIn { + -webkit-animation-name: mblScaleInInAndroid; + animation-name: mblScaleInInAndroid; +} +@-webkit-keyframes mblScaleInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblScaleInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblScaleInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblScaleInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblSwap { + -webkit-animation-duration: 0.6s; + animation-duration: 0.6s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblSwap.mblOut { + -webkit-animation-name: mblSwapOut; + animation-name: mblSwapOut; +} +.mblSwap.mblIn { + -webkit-animation-name: mblSwapIn; + animation-name: mblSwapIn; +} +.mblSwap.mblOut.mblReverse { + -webkit-animation-name: mblSwapOutReverse; + animation-name: mblSwapOutReverse; +} +.mblSwap.mblIn.mblReverse { + -webkit-animation-name: mblSwapInReverse; + animation-name: mblSwapInReverse; +} +@-webkit-keyframes mblSwapOut { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOut { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapIn { + 0% { + z-index: -100; + -webkit-transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapIn { + 0% { + z-index: -100; + transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblSwapOutReverse { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOutReverse { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapInReverse { + 0% { + z-index: -100; + -webkit-transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapInReverse { + 0% { + z-index: -100; + transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +.mblZoomOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutOut; + animation-name: mblZoomOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblZoomOut.mblOut { + -webkit-animation-name: mblZoomOutOutAndroid; + animation-name: mblZoomOutOutAndroid; +} +.mblZoomOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutIn; + animation-name: mblZoomOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblZoomOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblZoomOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblZoomOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblZoomOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblZoomOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblZoomIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInOut; + animation-name: mblZoomInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblZoomIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInIn; + animation-name: mblZoomInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblZoomIn.mblIn { + -webkit-animation-name: mblZoomInInAndroid; + animation-name: mblZoomInInAndroid; +} +@-webkit-keyframes mblZoomInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblZoomInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblZoomInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblZoomInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblAccordion { + border-style: outset; + border-width: 1px; + border-color: #8c8f91; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + border-top: 1px solid #8c8f91; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcfcfc), to(#e1e5e8), color-stop(0.2, #f0f2f3)); + background-image: linear-gradient(to bottom, #fcfcfc 0%, #f0f2f3 20%, #e1e5e8 100%); +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: black; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + border-bottom: 1px solid #8c8f91; + background-image: -webkit-gradient(linear, left top, left bottom, from(#97afc0), to(#46708e), color-stop(0.2, #7796ac)); + background-image: linear-gradient(to bottom, #97afc0 0%, #7796ac 20%, #46708e 100%); + color: white; +} +.mblAccordionTitleSelected .mblAccordionTitleAnchor { + color: white; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 5px; + color: black; + font-size: 13px; +} +.mblButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#bfbfbf), color-stop(0.5, #ebebeb), color-stop(0.5, #dedede)); + background-image: linear-gradient(to bottom, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); + color: black; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + color: white; +} +.mblBlueButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115), color-stop(0.5, #ff4d25), color-stop(0.5, #ed4d15)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); + color: white; +} +.mblRedButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#c1a48e), to(#9b6c4a), color-stop(0.5, #a27758), color-stop(0.5, #996947)); + background-image: linear-gradient(to bottom, #c1a48e 0%, #a27758 50%, #996947 50%, #9b6c4a 100%); +} +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; + border-radius: 5px; +} +.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#bfbfbf), color-stop(0.5, #ebebeb), color-stop(0.5, #dedede)); + background-image: linear-gradient(to bottom, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: 0 0 50px #000000; + box-shadow: 0 0 50px #000000; + border-radius: 0; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-radius: 0; + background-color: white; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: #ffffff; + color: inherit; +} +.mblComboBoxMenuItemSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#048bf4), to(#005ce5)); + background-image: linear-gradient(to bottom, #048bf4 0%, #005ce5 100%); + color: white; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 10px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(102, 102, 119, 0.85)), to(rgba(4, 4, 4, 0.85)), color-stop(0.35, rgba(22, 22, 30, 0.85))); + background-image: linear-gradient(to bottom, rgba(102, 102, 119, 0.85) 0%, rgba(22, 22, 30, 0.85) 35%, rgba(4, 4, 4, 0.85) 100%); + border: 2px solid #9a9a9e; + border-top-color: #f2f2f3; + -webkit-box-shadow: 1px 3px 5px rgba(0, 0, 0, 0.5); + box-shadow: 1px 3px 5px rgba(0, 0, 0, 0.5); +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid #6b6c6f; + border-bottom: 1px solid #6b6c6f; +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 10px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 10px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 10px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 10px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 11px; + color: #b8bbc0; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(139, 157, 229, 0.6)), to(rgba(10, 54, 233, 0.8)), color-stop(0.6, rgba(10, 54, 233, 0.8))); + background-image: linear-gradient(to bottom, rgba(139, 157, 229, 0.6) 0%, rgba(10, 54, 233, 0.8) 60%, rgba(10, 54, 233, 0.8) 100%); +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #cecece 100%); +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #5a5a5a; + border-radius: 8px; + background-color: #121b2f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#656872), to(#121b2f), color-stop(0.1, #2c3345), color-stop(0.1, #161f32)); + background-image: linear-gradient(to bottom, #656872 0%, #2c3345 10%, #161f32 10%, #121b2f 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #f9f7ba; + background-image: none; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #f9f7ba; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #f9f7ba; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #f9f7ba; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #f9f7ba; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #5a5a5a; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #5a5a5a; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #5a5a5a; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #5a5a5a; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #192235; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #192235; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #656872; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #172035; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + border-top: 3px solid #4f5055; + border-bottom: 1px solid #2d3642; + border-left: 1px solid #2a2d47; + border-radius: 3px 3px 0 0; + background-color: #889bb3; + background-image: -webkit-gradient(linear, left top, left bottom, from(#5e6167), to(#1a1d24), color-stop(0.5, #2e322b)); + background-image: linear-gradient(to bottom, #5e6167 0%, #2e322b 50%, #1a1d24 100%); + font-weight: normal; +} +.mblTooltip .mblHeading .mblToolBarButton { + border: 1px inset #434450; + background-image: -webkit-gradient(linear, left top, left bottom, from(#686f80), to(#000924), color-stop(0.5, #000b29)); + background-image: linear-gradient(to bottom, #686f80 0%, #000b29 50%, #000924 100%); + font-weight: normal; +} +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} +.mblProgressBar { + position: relative; + border-radius: 6px; + height: 9px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#a5a6a5), to(#b5b6b5), color-stop(0.5, #d6d7d6), color-stop(0.5, #ffffff), color-stop(0.9, #ffffff)); + background-image: linear-gradient(to bottom, #a5a6a5 0%, #d6d7d6 50%, #ffffff 50%, #ffffff 90%, #b5b6b5 100%); +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + height: 7px; + border: 1px solid #5e6fa3; + border-radius: 6px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0c0ff), to(#2f83e1), color-stop(0.6, #70b2ff), color-stop(0.6, #3470b6)); + background-image: linear-gradient(to bottom, #b0c0ff 0%, #70b2ff 60%, #3470b6 60%, #2f83e1 100%); +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: -1px; + font-size: 10px; +} +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: white; +} +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 5px; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: #b2b2b2; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid #b2b2b2; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 1em; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #93989c), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #93989c), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration { + border-radius: 10px; + background-color: rgba(35, 50, 96, 0.85); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(150, 150, 170, 0.85)), to(rgba(18, 29, 68, 0.85)), color-stop(0.15, rgba(77, 85, 119, 0.85)), color-stop(0.15, rgba(35, 50, 96, 0.85))); + background-image: linear-gradient(to bottom, rgba(150, 150, 170, 0.85) 0%, rgba(77, 85, 119, 0.85) 15%, rgba(35, 50, 96, 0.85) 15%, rgba(18, 29, 68, 0.85) 100%); + border: 2px solid #bac1d3; + border-top-color: #eaeaf2; + -webkit-box-shadow: 0 3px 2px #000000; + box-shadow: 0 3px 2px #000000; + color: white; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 14px 0 7px; + width: 262px; + font-weight: bold; +} +.mblSimpleDialogText { + margin: 7px 0 14px; + width: 262px; +} +.dj_ios6 .mblSimpleDialogDecoration { + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(179, 184, 199, 0.85)), to(rgba(35, 50, 90, 0.85)), color-stop(0.2, rgba(109, 120, 148, 0.85)), color-stop(0.2, rgba(33, 48, 88, 0.85))); + background-image: linear-gradient(to bottom, rgba(179, 184, 199, 0.85) 0%, rgba(109, 120, 148, 0.85) 20%, rgba(33, 48, 88, 0.85) 20%, rgba(35, 50, 90, 0.85) 100%); + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.dj_ios6 .mblSimpleDialogButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b3b8c7), to(#6c7692), color-stop(0.5, #6d7894), color-stop(0.5, #586484)); + background-image: linear-gradient(to bottom, #b3b8c7 0%, #6d7894 50%, #586484 50%, #6c7692 100%); + border-color: #273a52; + font-weight: bold; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.dj_ios6 .mblSimpleDialogButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#4f5157), to(#4f5157), color-stop(0.5, #6d6f74), color-stop(0.5, #61656f)); + background-image: linear-gradient(to bottom, #4f5157 0%, #6d6f74 50%, #61656f 50%, #4f5157 100%); + border-color: #273a52; + font-weight: bold; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 8px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cecece), to(#fdfdfd), color-stop(0.5, #eeeeee), color-stop(0.5, #f8f8f8)); + background-image: linear-gradient(to bottom, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border-color: #b0b0b0; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 8px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2859b1), to(#75acfb), color-stop(0.5, #3f84eb), color-stop(0.5, #4c8eee)); + background-image: linear-gradient(to bottom, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 10px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cccccc), to(#fafafa)); + background-image: linear-gradient(to bottom, #cccccc 0%, #fafafa 100%); + border-color: #9d9d9d; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.dj_ios6 .mblSpinWheelSlotLabelBlue { + color: #0160f2; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + color: #979797; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#484848), to(#242424), color-stop(0.5, #353535), color-stop(0.5, #242424)); + background-image: linear-gradient(to bottom, #484848 0%, #353535 50%, #242424 50%, #242424 100%); +} +.mblTabBarTabBar .mblTabBarButtonSelected .mblTabBarButtonLabel { + color: white; +} +.mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-style: solid; + border-color: #2f3740 #405a7e #375073 #3a4755; + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-color: #5877a2; + background-image: -webkit-gradient(linear, left top, left bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #2d3642; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; + background-color: #212421; + background-image: none; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); + background-color: #636363; + background-image: none; +} +.dj_ios6.dj_phone .mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#d0d9e6), to(#587397), color-stop(0.025, #d0d9e6), color-stop(0.025, #beccdd)); + background-image: linear-gradient(to bottom, #d0d9e6 0%, #d0d9e6 2.5%, #beccdd 2.5%, #587397 100%); +} +.dj_ios6.dj_phone .mblTabBarSegmentedControl .mblTabBarButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #6d84a2 100%); +} +.dj_ios6.dj_phone .mblTabBarSegmentedControl .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #4a6c9b 100%); +} +.dj_ios6.dj_phone .mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#d0d9e6), to(#587397), color-stop(0.025, #d0d9e6), color-stop(0.025, #beccdd)); + background-image: linear-gradient(to bottom, #d0d9e6 0%, #d0d9e6 2.5%, #beccdd 2.5%, #587397 100%); +} +.dj_ios6.dj_phone .mblTabBarStandardTab .mblTabBarButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #6d84a2 100%); +} +.dj_ios6.dj_phone .mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #4a6c9b 100%); +} +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 5px; +} +.mblExpandingTextArea { + margin: 2px; +} +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 5px; + font-size: 13px; + color: black; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#bfbfbf), color-stop(0.5, #ebebeb), color-stop(0.5, #dedede)); + background-image: linear-gradient(to bottom, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.mblToggleButtonChecked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + color: white; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 3px; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + border-radius: 3px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #9cb1c9), color-stop(0.35, #f0f1f5), color-stop(0.65, #f0f1f5), color-stop(0.9, #9cb1c9)); + background-image: linear-gradient(to bottom, #9cb1c9 10%, #f0f1f5 35%, #f0f1f5 65%, #9cb1c9 90%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #eaeaea), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #efefef)); + background-image: linear-gradient(to bottom, #eaeaea 10%, #fafafa 20%, #ffffff 50%, #efefef 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} +.alertDialog { + width: 100%; + padding-left: 2px; + padding-right: 2px; + z-index: 1000; +} +.alertDialogBody { + border: 1px solid #adaaad; + border-radius: 10px; + + background-color: white; + margin-left: 2px; + margin-right: 4px; +} +.alertTitle { + height: 42px; + margin: 0px; + padding: 0px; + background-color: #889bb3; + background: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + font-family: Helvetica; + font-size: 20px; + color: white; + text-align: center; + line-height: 44px; + text-shadow: rgba(0,0,0,0.6) 0px -1px 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + text-align: center; +} +.alertText { + text-align: center; +} +.alertBtns { + padding: 5px; + text-align: center; +} +.alertBtns .mblButton { + width: 100%; + margin-top: 5px; +} +.alertDialog.mblOut { + position: absolute; +} +.alertDialog.mblIn { + position: absolute; +} +.mblSlidev.mblOut { + -webkit-animation-duration: .4s; + -webkit-animation-name: mblSlideOut; + -webkit-animation-timing-function: linear; + -webkit-transform: translateY(-100%); +} +.mblSlidev.mblIn { + -webkit-animation-duration: .4s; + -webkit-animation-name: mblSlideIn; + -webkit-animation-timing-function: linear; + -webkit-transform: translateY(0px); +} +.mblSlidev.mblOut.mblReverse { + -webkit-animation-name: mblSlideOutReverse; +} +.mblSlidev.mblIn.mblReverse { + -webkit-animation-name: mblSlideInReverse; +} +.dialogUnderlayWrapper { + position: absolute; + left: 0; + top: 0; + z-index: 998; + background: transparent !important; + visibility: visible; + height: 100%; + width: 100%; +} +.dialogUnderlay { + background-color: #eee; + opacity: 0.5; + width: 100%; + height: 100%; +} +.list .row { + padding: 10px; + border-bottom: 1px solid #444; + position: relative; + background-color: white; + z-index: 6; +} +.list .row.mblListItem { + padding: 0px; +} +.list .row.last { + border-bottom: none; +} +.list .row.hold { + background-color: #ddd; +} +.list .buttons { + position: absolute; + text-align: center; + padding-top: 10px; + width: 100%; + height: 100%; + z-index: 5; +} +.list .buttons .mblButton { +} +.list .buttons .deleteBtn { + background-color: red; +} +.list .buttons .cancelBtn { + margin-left: 10px; + background-color: blue; +} +.row.collapsed { + -webkit-animation-name: collapse-vert; + -webkit-animation-duration: 0.5s; + -webkit-animation-timing-function: linear; +} +@-webkit-keyframes collapse-vert { + from { + height: 100%; + padding: 10px; + } + to { + height: 0px; + padding: 0px; + } +} +.listSelector { + position: absolute; + border-radius: 10px; + -moz-border-radius: 10px; + border: 1px solid #666; + background-color: #ccc; + color: #333; + z-index: 1000; +} +.listSelectorRow { + padding: 10px; + border-bottom: 1px solid #666; + white-space: nowrap; +} +.listSelectorRow-selected { + background-color: #666; + color: #ccc; +} +.listSelectorRow.last { + border-bottom: none; +} +.mblImageView, .mblImageView canvas { + width: 100%; + height: 100%; +} +.mblPillar { + display: none; +} +input { + -webkit-text-size-adjust: 140%; +} +.mblImageThumbView { + position: relative; + -webkit-transition-property: height; + -webkit-transition-duration: 0.8s; + -webkit-transition-delay: 0; +} +.mblImageThumbView .mblThumb { + width: 100px; + min-height: 100px; + display: inline-block; + z-index: 2; + position: absolute; +} +.mblImageThumbView.animated .mblThumb { + -webkit-transition-property: -webkit-transform, opacity; + -webkit-transition-duration: 1.3s, 1s; + -webkit-transition-delay: 0, 0; +} +.mblImageThumbView .mblThumb.hidden { + z-index: 1; + opacity: 0; +} +.mblImageThumbView .mblThumbInner { + width: 102px; + height: 102px; + position: relative; +} +.mblImageThumbView .mblThumbOverlay { + width: 102px; + height: 102px; + background: url(images/thumb-overlay.png) center top no-repeat; + position: absolute; + z-index: 20; + overflow: hidden; +} +.mblImageThumbView .mblThumb.selected .mblThumbOverlay { + background-position: center bottom; +} +.mblImageThumbView .mblThumbInner .mblThumbMask { + width: 90px; + height: 90px; + overflow: hidden; + padding-left: 6px; + padding-top: 5px; + z-index: 10; +} +.mblImageThumbView .mblThumbInner .mblThumbMask img { + left: 0px; + top: 0px; + width: 90px; + height: 90px; +} +.mblImageThumbView .mblThumbInner .mblThumbMask .mblThumbSrc { + left: 6px; + top: 5px; + background-position: center center; + background-repeat: no-repeat; + overflow: hidden; + position: absolute; + -webkit-background-size: 100% 100%; + border-radius: 5px; + width: 90px; + height: 90px; + z-index: 5; +} +.mblImageThumbView .mblThumbMask div { + left: 0px; + top: 0px; + width: 90px; + height: 90px; + background-repeat: no-repeat; +} +.mblImageThumbView .mblThumb:hover, +.mblImageThumbView .mblThumb.selected { + -webkit-transform: scale(1.2); + transform: scale(1.2); +} +.mblImageThumbView.large .mblThumb { + width: 150px; + min-height: 150px; +} +.mblImageThumbView.large .mblThumbInner{ + width: 152px; + height: 152px; +} +.mblImageThumbView.large .mblThumbOverlay { + background: url(images/thumb-overlay-large.png) center top no-repeat; + width: 152px; + height: 152px; +} +.mblImageThumbView.large .mblThumbInner .mblThumbMask, +.mblImageThumbView.large .mblThumbInner .mblThumbMask img, +.mblImageThumbView.large .mblThumbInner .mblThumbMask .mblThumbSrc, +.mblImageThumbView.large .mblThumbMask div { + width: 133px; + height: 133px; +} +.mblImageThumbView.large .mblThumbInner .mblThumbMask .mblThumbSrc { + left: 9px; + top: 7px; +} +.mblImageThumbView.small .mblThumb { + width: 75px; + min-height: 75px; +} +.mblImageThumbView.small .mblThumbInner{ + width: 77px; + height: 77px; +} +.mblImageThumbView.small .mblThumbOverlay { + background: url(images/thumb-overlay-small.png) center top no-repeat; + width: 77px; + height: 77px; +} +.mblImageThumbView.small .mblThumbInner .mblThumbMask, +.mblImageThumbView.small .mblThumbInner .mblThumbMask img, +.mblImageThumbView.small .mblThumbInner .mblThumbMask .mblThumbSrc, +.mblImageThumbView.small .mblThumbMask div { + width: 70px; + height: 70px; +} +.mblImageThumbView.small .mblThumbInner .mblThumbMask .mblThumbSrc { + left: 4px; + top: 3px; +} +.mblImageThumbView .mblThumbLabel { + font-size: smaller; + overflow: hidden; + white-space: nowrap; + text-align: center; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone-compat.css new file mode 100644 index 00000000..49618cb8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone-compat.css @@ -0,0 +1,1288 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: -moz-linear-gradient(top, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: -moz-linear-gradient(top, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: -moz-linear-gradient(top, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_gecko .mblHeading .mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.dj_gecko .mblHeading .mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + -moz-box-shadow: 1px 0 0 rgba(255, 255, 255, 0.305); +} +.dj_gecko .mblHeading .mblToolBarButtonBody { + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 5px; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #adaaad; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #adaaad; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #adaaad; + margin: 0 5px; +} +.mblEdgeToEdgeCategory { + background-image: url("compat/edge-categ-bg.png"); +} +.dj_gecko .mblEdgeToEdgeCategory { + background-image: -moz-linear-gradient(top, #8f9ea9 0%, #b7c0c7 100%); +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: #048bf4; +} +.dj_gecko .mblListItemSelected { + background-image: -moz-linear-gradient(top, #048bf4 0%, #005ce5 100%); +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: -moz-linear-gradient(top, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: -moz-linear-gradient(top, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: -moz-linear-gradient(top, #cccccc 0%, #fafafa 100%); +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 5px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 5px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} +.mblDomButtonWhitePlus { + background-image: url("../common/domButtons/compat/mblDomButtonWhitePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhitePlus div { + display: none; +} +.mblDomButtonWhiteMinus { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteMinus div { + display: none; +} +.mblDomButtonWhiteUpArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteUpArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteUpArrow div { + display: none; +} +.mblDomButtonWhiteDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteDownArrow div { + display: none; +} +.mblDomButtonWhiteSearch { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteSearch.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteSearch div { + display: none; +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonCheckboxOn { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOn.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOn div { + display: none; +} +.mblDomButtonCheckboxOff { + background-image: url("../common/domButtons/compat/mblDomButtonCheckboxOff.png"); + background-repeat: no-repeat; +} +.mblDomButtonCheckboxOff div { + display: none; +} +.mblDomButtonBlueCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleMinus > div { + display: none; +} +.mblDomButtonBlueCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCirclePlus > div { + display: none; +} +.mblDomButtonBlueCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleArrow > div { + display: none; +} +.mblDomButtonRedCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleMinus > div { + display: none; +} +.mblDomButtonRedCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCirclePlus > div { + display: none; +} +.mblDomButtonRedCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleArrow > div { + display: none; +} +.mblDomButtonGreenCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleMinus > div { + display: none; +} +.mblDomButtonGreenCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCirclePlus > div { + display: none; +} +.mblDomButtonGreenCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleArrow > div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblDomButtonGrayRoundRect > div { + -moz-border-radius: 4px; +} +.mblDomButtonSilverCircleDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleDownArrow > div { + display: none; +} +.mblDomButtonSilverCircleGreenButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenButton > div { + display: none; +} +.mblDomButtonSilverCircleGrayButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGrayButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGrayButton > div { + display: none; +} +.mblDomButtonSilverCircleOrangeButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleOrangeButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleOrangeButton > div { + display: none; +} +.mblDomButtonSilverCircleGreenPlus { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenPlus > div { + display: none; +} +.mblDomButtonSilverCircleRedCross { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleRedCross > div { + display: none; +} +.mblDomButtonBlueBall { + background-image: url("../common/domButtons/compat/mblDomButtonBlueBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueBall > div { + display: none; +} +.mblDomButtonGreenBall { + background-image: url("../common/domButtons/compat/mblDomButtonGreenBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenBall > div { + display: none; +} +.mblDomButtonOrangeBall { + background-image: url("../common/domButtons/compat/mblDomButtonOrangeBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonOrangeBall > div { + display: none; +} +.mblDomButtonRedBall { + background-image: url("../common/domButtons/compat/mblDomButtonRedBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedBall > div { + display: none; +} +.mblDomButtonYellowStar { + background-image: url("../common/domButtons/compat/mblDomButtonYellowStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonYellowStar > div { + display: none; +} +.mblDomButtonGrayStar { + background-image: url("../common/domButtons/compat/mblDomButtonGrayStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayStar > div { + display: none; +} +.mblDomButtonGrayCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonGrayCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonRedCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonGrayKnob { + background-image: url("../common/domButtons/compat/mblDomButtonGrayKnob.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayKnob > div { + display: none; +} +.mblDomButtonGrayPlus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayPlus div { + display: none; +} +.mblDomButtonGrayMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayMinus div { + display: none; +} +.mblAccordionTitle { + background-color: #f0f2f3; +} +.mblAccordionTitleSelected { + background-color: #7796ac; +} +.dj_gecko .mblAccordionTitle { + background-image: -moz-linear-gradient(top, #fcfcfc 0%, #f0f2f3 20%, #e1e5e8 100%); +} +.dj_gecko .mblAccordionTitleSelected { + background-image: -moz-linear-gradient(top, #97afc0 0%, #7796ac 20%, #46708e 100%); +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.mblButton { + background-image: url("compat/button-bg.png"); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblBlueButton { + background-image: url("compat/blue-button-bg.png"); +} +.mblBlueButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.mblRedButton { + background-image: url("compat/red-button-bg.png"); +} +.mblRedButtonSelected { + background-image: url("compat/red-button-sel-bg.png"); +} +.dj_gecko .mblButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblButtonSelected { + background-image: -moz-linear-gradient(top, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.dj_gecko .mblBlueButton { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblBlueButtonSelected { + background-image: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_gecko .mblRedButton { + background-image: -moz-linear-gradient(top, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); +} +.dj_gecko .mblRedButtonSelected { + background-image: -moz-linear-gradient(top, #c1a48e 0%, #a27758 50%, #996947 50%, #9b6c4a 100%); +} +.dj_ff3 .mblButton { + -moz-border-radius: 5px; +} +.mblCheckBox { + background-image: url("compat/button-bg.png"); +} +.mblCheckBoxSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblCheckBox { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 5px; +} +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: 0 0 50px #000000; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: -moz-linear-gradient(top, #048bf4 0%, #005ce5 100%); +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url("compat/icon-content-heading-bg.png"); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} +.mblIconMenu { + background-color: #040404; +} +.mblIconMenuItemSel { + background-color: #0a36e9; +} +.dj_gecko .mblIconMenu { + background-color: transparent; + background-image: -moz-linear-gradient(top, rgba(102, 102, 119, 0.85) 0%, rgba(22, 22, 30, 0.85) 35%, rgba(4, 4, 4, 0.85) 100%); + -moz-box-shadow: 1px 3px 5px rgba(0, 0, 0, 0.5); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_gecko .mblIconMenuItemSel { + background-color: transparent; + background-image: -moz-linear-gradient(top, rgba(139, 157, 229, 0.6) 0%, rgba(10, 54, 233, 0.8) 60%, rgba(10, 54, 233, 0.8) 100%); +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 10px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 10px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 10px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 10px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 10px; +} +.mblOverlay { + text-align: center; + background-color: #cecece; + background-image: none; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #cecece 100%); +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.mblTooltip .mblHeading { + background-image: url("compat/tooltip-heading-bg.png"); +} +.mblTooltip .mblHeading .mblToolBarButton { + background-color: #000924; + background-image: url("compat/tooltip-button-bg.png"); +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 8px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid #889bb3; + border-bottom: 1px solid #889bb3; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} +.mblRadioButton { + background-image: url("compat/button-bg.png"); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.dj_gecko .mblRadioButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 5px; +} +.mblSearchBox { + height: auto; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblSimpleDialogDecoration { + background-color: #233260; +} +.dj_gecko .mblSimpleDialogDecoration { + background-color: rgba(35, 50, 96, 0.85); + background-image: -moz-linear-gradient(top, rgba(150, 150, 170, 0.85) 0%, rgba(77, 85, 119, 0.85) 15%, rgba(35, 50, 96, 0.85) 15%, rgba(18, 29, 68, 0.85) 100%); + -moz-box-shadow: 0 3px 2px #000000; +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 10px; +} +.mblSlider { + background-image: url("compat/slider-h-bg.png"); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url("compat/slider-h-bar-bg.png"); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url("compat/slider-handle-bg.png"); +} +.mblSliderV { + background-color: #cecece; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: #2859b1; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: -moz-linear-gradient(top, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: -moz-linear-gradient(top, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.dj_gecko .mblSliderHandle { + background-image: -moz-linear-gradient(top, #cccccc 0%, #fafafa 100%); +} +.dj_ff3 .mblSlider { + -moz-border-radius: 8px; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 8px; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 10px; +} +.mblSpinWheel { + background-image: url("../common/compat/spinwheel-bg.png"); +} +.mblSpinWheelBar { + background-image: url("../common/compat/spinwheel-bar.png"); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-image: none; + background-color: #000000; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url("compat/heading-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url("compat/tab-seg-button-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url("compat/tab-seg-sel-button-bg.png"); +} +.dj_gecko .mblTabBarSegmentedControl .mblTabBarButton { + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url("compat/tab-slim-bar-bg.png"); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url("compat/tab-tall-bar-bg.png"); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 5px; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 5px; +} +.mblToggleButton { + background-image: url("compat/button-bg.png"); +} +.mblToggleButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblToggleButtonChecked { + background-image: url("compat/button-chk-bg.png"); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblToggleButton { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +} +.dj_gecko .mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.dj_gecko .mblToggleButtonChecked { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 5px; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url("compat/togglebutton-chk-mark-bg.png"); +} +.mblValuePickerSlotButton { + background-image: url("compat/valuepicker-button-bg.png"); +} +.mblValuePickerSlotButtonSelected { + background-color: #394d77; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: -moz-linear-gradient(top, #9cb1c9 10%, #f0f1f5 35%, #f0f1f5 65%, #9cb1c9 90%); +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: -moz-linear-gradient(top, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: -moz-linear-gradient(top, #eaeaea 10%, #fafafa 20%, #ffffff 50%, #efefef 90%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone.css new file mode 100644 index 00000000..59ca3f31 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone.css @@ -0,0 +1,5591 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + font-family: Helvetica; + font-size: 17px; +} +.mblBackground { + background-color: #c5ccd3; +} +.mblColorBlue { + color: #ffffff; + background-color: #366edf; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblColorDefault { + color: #ffffff; + background-color: #5877a2; + background-image: -webkit-gradient(linear, left top, left bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to right bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: #394d77; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to right bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +.dj_ios6 .mblColorBlue { + background-image: -webkit-gradient(linear, left top, left bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to bottom, #89abec 0%, #2057c1 100%); +} +.dj_ios6 .mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to right bottom, #89abec 0%, #2057c1 100%); +} +.dj_ios6.dj_phone { + +} +.dj_ios6.dj_phone body { + background-color: #d7dce5; +} +.dj_ios6.dj_phone body.mblIOS6Stripes { + + background-image: -webkit-gradient(linear, left top, right top, from(transparent), to(#d4d9e3), color-stop(0.7, transparent), color-stop(0.7, #d4d9e3)); + background-size: 8px 8px; +} +.dj_ios6.dj_phone .mblColorDefault { + background-image: -webkit-gradient(linear, left top, left bottom, from(#99aac2), to(#41618d)); + background-image: linear-gradient(to bottom, #99aac2 0%, #41618d 100%); +} +.dj_ios6.dj_phone .mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#99aac2), to(#41618d)); + background-image: linear-gradient(to right bottom, #99aac2 0%, #41618d 100%); +} +.dj_ios6.dj_phone .mblColorDefaultSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8b97af), to(#273e6b)); + background-image: linear-gradient(to bottom, #8b97af 0%, #273e6b 100%); +} +.dj_ios6.dj_phone .mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#8b97af), to(#273e6b)); + background-image: linear-gradient(to right bottom, #8b97af 0%, #273e6b 100%); +} +.dj_ios6.dj_phone .mblColorBlue { + background-image: -webkit-gradient(linear, left top, left bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to bottom, #89abec 0%, #2057c1 100%); +} +.dj_ios6.dj_phone .mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#89abec), to(#2057c1)); + background-image: linear-gradient(to right bottom, #89abec 0%, #2057c1 100%); +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +.dj_ios6.dj_phone .mblHeading { + border-top: 1px solid #eff2f7; + border-bottom: 1px solid #3f5c80; + background-image: -webkit-gradient(linear, left top, left bottom, from(#d0d9e6), to(#587397), color-stop(0.025, #d0d9e6), color-stop(0.025, #beccdd)); + background-image: linear-gradient(to bottom, #d0d9e6 0%, #d0d9e6 2.5%, #beccdd 2.5%, #587397 100%); +} +.dj_ios6.dj_phone .mblHeading.mblFixedBottomBar { + border-top: 1px solid #5e748c; + border-bottom: 1px solid #577296; + background-image: -webkit-gradient(linear, left top, left bottom, from(#dee4ec), to(#577296), color-stop(0.025, #dee4ec), color-stop(0.025, #c1cddd), color-stop(0.05, #c1cddd), color-stop(0.05, #b0bfd3)); + background-image: linear-gradient(to bottom, #dee4ec 0%, #dee4ec 2.5%, #c1cddd 2.5%, #c1cddd 5%, #b0bfd3 5%, #577296 100%); +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + -webkit-transform: scale(0.75, 1) rotate(45deg); + transform: scale(0.75, 1) rotate(45deg); + border: 1px solid #9cacc0; + border-top-left-radius: 1px; + border-bottom-right-radius: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 0px; +} +.mblHeading .mblToolBarButtonArrow { + border-width: 1px; + border-style: solid; + border-color: #405a7e #405a7e #3a4755 #3a4755; +} +.mblHeading .mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.mblHeading .mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + -webkit-box-shadow: 1px 0 0 rgba(255, 255, 255, 0.305); + box-shadow: 1px 0 0 rgba(255, 255, 255, 0.305); +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 5px; + border: 1px outset #9cacc0; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblHeading .mblToolBarButtonBody { + border-width: 1px; + border-style: solid; + border-color: #2f3740 #405a7e #375073 #3a4755; + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.dj_ios6.dj_phone .mblHeading .mblToolBarButtonBody { + border-color: #343a42 #425167 #2f4769 #415066; +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + height: 22px; + border-top: 1px solid #a4b0b9; + border-bottom: 1px solid #979da3; + background-image: -webkit-gradient(linear, left top, left bottom, from(#8f9ea9), to(#b7c0c7)); + background-image: linear-gradient(to bottom, #8f9ea9 0%, #b7c0c7 100%); + color: white; + line-height: 22px; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #4c566c; + text-shadow: #ffffff 0 1px 0; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: white; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #707c84; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 43px; + list-style-type: none; + line-height: 43px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-bottom: 1px solid #adaaad; + font-weight: bold; + color: black; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#048bf4), to(#005ce5)); + background-image: linear-gradient(to bottom, #048bf4 0%, #005ce5 100%); +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked { + color: #314e84; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + color: #324f85; + margin-top: 12px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.dj_ios6 .mblListItemRightText { + color: #385487; + font-weight: normal; +} +.dj_ios6 .mblListItem { + + -webkit-perspective: 1000; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 8px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-width: 1px; + border-style: solid; + border-color: #939393 #aaaaaa #cbcbcb #767676; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2859b1), to(#75acfb), color-stop(0.5, #3f84eb), color-stop(0.5, #4c8eee)); + background-image: linear-gradient(to bottom, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.mblSwitchBgRight { + color: #7f7f7f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cecece), to(#fdfdfd), color-stop(0.5, #eeeeee), color-stop(0.5, #f8f8f8)); + background-image: linear-gradient(to bottom, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cccccc), to(#fafafa)); + background-image: linear-gradient(to bottom, #cccccc 0%, #fafafa 100%); + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-width: 1px; + border-style: solid; + border-color: #5e5e5e #9e9e9e #828282 #797979; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 5px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 5px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 77px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwDefaultShape .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 50px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwDefaultShape .mblSwitchText { + width: 50px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 26px; +} +.dj_ios6 .mblSwitchBgLeft { + background-color: #007fea; + background-image: -webkit-gradient(linear, left top, left bottom, from(#0060b1), to(#73b3ea), color-stop(0.5, #007fea), color-stop(0.5, #218fec)); + background-image: linear-gradient(to bottom, #0060b1 0%, #007fea 50%, #218fec 50%, #73b3ea 100%); +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} +.mblDomButtonWhitePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhitePlus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhitePlus > div > div { + + position: absolute; + top: -6px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteMinus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteUpArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteUpArrow div { + position: absolute; + left: 0px; + clip: rect(0px 30px 20px 0px); +} +.mblDomButtonWhiteUpArrow > div > div { + top: 9px; + left: 4px; + width: 20px; + height: 20px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteDownArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteDownArrow div { + position: absolute; + left: 0px; + clip: rect(7px 50px 40px 0px); +} +.mblDomButtonWhiteDownArrow > div > div { + top: -10px; + left: 2px; + width: 25px; + height: 25px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteSearch { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteSearch > div { + position: absolute; + top: 5px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + border: 2px solid white; + border-radius: 6px; +} +.mblDomButtonWhiteSearch > div > div { + position: absolute; + top: 10px; + left: 7px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border: none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 0px; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonCheckboxOn { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOn > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOn > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: none; + border-bottom: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonCheckboxOff { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOff > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOff > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: none; + border-top: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonBlueCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlueCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonBlueCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonRedCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonGreenCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblDomButtonGrayRoundRect { + position: relative; + width: 29px; + height: 29px; + text-align: right; +} +.mblDomButtonGrayRoundRect > div { + position: absolute; + right: 0px; + display: inline; + padding: 0px 5px; + top: 7px; + color: white; + font-family: Helvetica; + font-size: 12px; + border-radius: 4px; + background-color: #949ba5; + text-align: center; +} +.mblDomButtonGrayRoundRect > div > div { + display: none; +} +.mblDomButtonSilverCircleDownArrow { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleDownArrow > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div { + position: relative; + top: 3px; + left: 3px; + width: 20px; + height: 20px; + border-radius: 10px; + background: -webkit-gradient(linear, left top, left bottom, from(#979797), to(#616161)); + background: linear-gradient(to bottom, #979797 0%, #616161 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div > div { + position: absolute; + left: 0px; + clip: rect(6px 50px 40px 0px); +} +.mblDomButtonSilverCircleDownArrow > div > div > div > div { + position: absolute; + top: -5px; + left: 1px; + width: 18px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #d1d1d1; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.7) rotate(45deg); + transform: scaleX(0.7) rotate(45deg); +} +.mblDomButtonSilverCircleGreenButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #1b991c; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#17df25), to(#1ba51c)); + background: radial-gradient(6px at center, #17df25 0%, #1ba51c 100%); +} +.mblDomButtonSilverCircleGrayButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGrayButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGrayButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #aeaeae; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#d4d4d4), to(#bababa)); + background: linear-gradient(to bottom, #d4d4d4 0%, #bababa 100%); +} +.mblDomButtonSilverCircleOrangeButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleOrangeButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleOrangeButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #ca701a; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#ff7a07), to(#e66b03)); + background: radial-gradient(6px at center, #ff7a07 0%, #e66b03 100%); +} +.mblDomButtonSilverCircleGreenPlus { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenPlus > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenPlus > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleGreenPlus > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleRedCross { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleRedCross > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleRedCross > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonSilverCircleRedCross > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; +} +.mblDomButtonBlueBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonBlueBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#84aff4), to(#2758b3)); + background: linear-gradient(to bottom, #84aff4 0%, #2758b3 100%); +} +.mblDomButtonGreenBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonGreenBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#59e738), to(#0aa908)); + background: linear-gradient(to bottom, #59e738 0%, #0aa908 100%); +} +.mblDomButtonOrangeBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonOrangeBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#f9e20a), to(#ff6b0a)); + background: linear-gradient(to bottom, #f9e20a 0%, #ff6b0a 100%); +} +.mblDomButtonRedBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonRedBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#ec9b9d), to(#d73c3f)); + background: linear-gradient(to bottom, #ec9b9d 0%, #d73c3f 100%); +} +.mblDomButtonTransparent19 { + position: relative; + width: 19px; + height: 19px; +} +.mblDomButtonTransparent29 { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonTransparent30 { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonYellowStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonYellowStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonYellowStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #cd853f; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonYellowStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonYellowStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonGrayStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #8c8e8c; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonGrayStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonGrayStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonGrayCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + border-radius: 2px; +} +.mblDomButtonRedCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonRedCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + border-radius: 2px; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblDomButtonGrayKnob { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayKnob > div { + + position: absolute; + top: 6px; + left: 2px; + width: 23px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDissolve.mblOut { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveOut; + animation-name: mblDissolveOut; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +.mblDissolve.mblIn { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveIn; + animation-name: mblDissolveIn; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +@-webkit-keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-webkit-keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +.mblCover { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCover.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCover.mblOut { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblCover.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblCover.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblCover.mblOut.mblTransition, +.mblCover.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblCover.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCube { + -webkit-animation-duration: 0.8s; + animation-duration: 0.8s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblCube.mblOut { + -webkit-animation-name: mblCubeOut; + animation-name: mblCubeOut; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +.mblCube.mblIn { + -webkit-animation-name: mblCubeIn; + animation-name: mblCubeIn; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +@-webkit-keyframes mblCubeOut { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOut { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeIn { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeIn { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse; + animation-name: mblCubeOutReverse; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +.mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse; + animation-name: mblCubeInReverse; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOutReverse { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeInReverse { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeInReverse { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.dj_ios .mblCube { + -webkit-transform-style: preserve-3d !important; +} +.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone; + animation-name: mblCubeOut_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone; + animation-name: mblCubeIn_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@keyframes mblCubeOut_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeIn_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeIn_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone_l; + animation-name: mblCubeOut_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone_l; + animation-name: mblCubeIn_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@keyframes mblCubeOut_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeIn_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeIn_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone; + animation-name: mblCubeOutReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone; + animation-name: mblCubeInReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@keyframes mblCubeOutReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeInReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone_l; + animation-name: mblCubeOutReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone_l; + animation-name: mblCubeInReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@keyframes mblCubeOutReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeInReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad; + animation-name: mblCubeOut_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad; + animation-name: mblCubeIn_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@keyframes mblCubeOut_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeIn_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeIn_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad_l; + animation-name: mblCubeOut_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad_l; + animation-name: mblCubeIn_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@keyframes mblCubeOut_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeIn_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeIn_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad; + animation-name: mblCubeOutReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad; + animation-name: mblCubeInReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@keyframes mblCubeOutReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeInReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad_l; + animation-name: mblCubeOutReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad_l; + animation-name: mblCubeInReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@keyframes mblCubeOutReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeInReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.mblReveal { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblReveal.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblReveal.mblOut { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblTransition { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblReveal.mblIn { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblReveal.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblReveal.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSlidev { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlidev.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlidev.mblOut.mblReverse.mblTransition, +.mblSlidev.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblSlidev.mblOut.mblTransition, +.mblSlidev.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblSlidev.mblOut, +.mblSlidev.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblSlidev.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSwirl.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlOut; + animation-name: mblSwirlOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlIn; + animation-name: mblSwirlIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblOut.mblReverse { + -webkit-animation-name: mblSwirlOutReverse; + animation-name: mblSwirlOutReverse; +} +@-webkit-keyframes mblSwirlOut { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(-360deg) scale(0); + } +} +@keyframes mblSwirlOut { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(-360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlOutReverse { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(360deg) scale(0); + } +} +@keyframes mblSwirlOutReverse { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblSwirlIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutOut; + animation-name: mblScaleOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblScaleOut.mblOut { + -webkit-animation-name: mblScaleOutOutAndroid; + animation-name: mblScaleOutOutAndroid; +} +.mblScaleOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutIn; + animation-name: mblScaleOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblScaleOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblScaleOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblScaleOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblScaleOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblScaleOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInOut; + animation-name: mblScaleInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblScaleIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInIn; + animation-name: mblScaleInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblScaleIn.mblIn { + -webkit-animation-name: mblScaleInInAndroid; + animation-name: mblScaleInInAndroid; +} +@-webkit-keyframes mblScaleInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblScaleInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblScaleInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblScaleInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblSwap { + -webkit-animation-duration: 0.6s; + animation-duration: 0.6s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblSwap.mblOut { + -webkit-animation-name: mblSwapOut; + animation-name: mblSwapOut; +} +.mblSwap.mblIn { + -webkit-animation-name: mblSwapIn; + animation-name: mblSwapIn; +} +.mblSwap.mblOut.mblReverse { + -webkit-animation-name: mblSwapOutReverse; + animation-name: mblSwapOutReverse; +} +.mblSwap.mblIn.mblReverse { + -webkit-animation-name: mblSwapInReverse; + animation-name: mblSwapInReverse; +} +@-webkit-keyframes mblSwapOut { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOut { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapIn { + 0% { + z-index: -100; + -webkit-transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapIn { + 0% { + z-index: -100; + transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblSwapOutReverse { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOutReverse { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapInReverse { + 0% { + z-index: -100; + -webkit-transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapInReverse { + 0% { + z-index: -100; + transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +.mblZoomOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutOut; + animation-name: mblZoomOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblZoomOut.mblOut { + -webkit-animation-name: mblZoomOutOutAndroid; + animation-name: mblZoomOutOutAndroid; +} +.mblZoomOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutIn; + animation-name: mblZoomOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblZoomOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblZoomOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblZoomOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblZoomOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblZoomOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblZoomIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInOut; + animation-name: mblZoomInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblZoomIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInIn; + animation-name: mblZoomInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblZoomIn.mblIn { + -webkit-animation-name: mblZoomInInAndroid; + animation-name: mblZoomInInAndroid; +} +@-webkit-keyframes mblZoomInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblZoomInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblZoomInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblZoomInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblAccordion { + border-style: outset; + border-width: 1px; + border-color: #8c8f91; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #adaaad; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + border-top: 1px solid #8c8f91; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcfcfc), to(#e1e5e8), color-stop(0.2, #f0f2f3)); + background-image: linear-gradient(to bottom, #fcfcfc 0%, #f0f2f3 20%, #e1e5e8 100%); +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: black; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + border-bottom: 1px solid #8c8f91; + background-image: -webkit-gradient(linear, left top, left bottom, from(#97afc0), to(#46708e), color-stop(0.2, #7796ac)); + background-image: linear-gradient(to bottom, #97afc0 0%, #7796ac 20%, #46708e 100%); + color: white; +} +.mblAccordionTitleSelected .mblAccordionTitleAnchor { + color: white; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 5px; + color: black; + font-size: 13px; +} +.mblButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#bfbfbf), color-stop(0.5, #ebebeb), color-stop(0.5, #dedede)); + background-image: linear-gradient(to bottom, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); + color: black; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + color: white; +} +.mblBlueButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115), color-stop(0.5, #ff4d25), color-stop(0.5, #ed4d15)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); + color: white; +} +.mblRedButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#c1a48e), to(#9b6c4a), color-stop(0.5, #a27758), color-stop(0.5, #996947)); + background-image: linear-gradient(to bottom, #c1a48e 0%, #a27758 50%, #996947 50%, #9b6c4a 100%); +} +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; + border-radius: 5px; +} +.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#bfbfbf), color-stop(0.5, #ebebeb), color-stop(0.5, #dedede)); + background-image: linear-gradient(to bottom, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: 0 0 50px #000000; + box-shadow: 0 0 50px #000000; + border-radius: 0; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border-radius: 0; + background-color: white; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + white-space: nowrap; + border-color: #ffffff; + color: inherit; +} +.mblComboBoxMenuItemSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#048bf4), to(#005ce5)); + background-image: linear-gradient(to bottom, #048bf4 0%, #005ce5 100%); + color: white; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 10px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(102, 102, 119, 0.85)), to(rgba(4, 4, 4, 0.85)), color-stop(0.35, rgba(22, 22, 30, 0.85))); + background-image: linear-gradient(to bottom, rgba(102, 102, 119, 0.85) 0%, rgba(22, 22, 30, 0.85) 35%, rgba(4, 4, 4, 0.85) 100%); + border: 2px solid #9a9a9e; + border-top-color: #f2f2f3; + -webkit-box-shadow: 1px 3px 5px rgba(0, 0, 0, 0.5); + box-shadow: 1px 3px 5px rgba(0, 0, 0, 0.5); +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid #6b6c6f; + border-bottom: 1px solid #6b6c6f; +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 10px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 10px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 10px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 10px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 11px; + color: #b8bbc0; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(139, 157, 229, 0.6)), to(rgba(10, 54, 233, 0.8)), color-stop(0.6, rgba(10, 54, 233, 0.8))); + background-image: linear-gradient(to bottom, rgba(139, 157, 229, 0.6) 0%, rgba(10, 54, 233, 0.8) 60%, rgba(10, 54, 233, 0.8) 100%); +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #cecece 100%); +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #5a5a5a; + border-radius: 8px; + background-color: #121b2f; + background-image: -webkit-gradient(linear, left top, left bottom, from(#656872), to(#121b2f), color-stop(0.1, #2c3345), color-stop(0.1, #161f32)); + background-image: linear-gradient(to bottom, #656872 0%, #2c3345 10%, #161f32 10%, #121b2f 100%); +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #f9f7ba; + background-image: none; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #f9f7ba; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #f9f7ba; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #f9f7ba; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #f9f7ba; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #5a5a5a; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #5a5a5a; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #5a5a5a; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #5a5a5a; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #192235; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #192235; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #656872; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #172035; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + border-top: 3px solid #4f5055; + border-bottom: 1px solid #2d3642; + border-left: 1px solid #2a2d47; + border-radius: 3px 3px 0 0; + background-color: #889bb3; + background-image: -webkit-gradient(linear, left top, left bottom, from(#5e6167), to(#1a1d24), color-stop(0.5, #2e322b)); + background-image: linear-gradient(to bottom, #5e6167 0%, #2e322b 50%, #1a1d24 100%); + font-weight: normal; +} +.mblTooltip .mblHeading .mblToolBarButton { + border: 1px inset #434450; + background-image: -webkit-gradient(linear, left top, left bottom, from(#686f80), to(#000924), color-stop(0.5, #000b29)); + background-image: linear-gradient(to bottom, #686f80 0%, #000b29 50%, #000924 100%); + font-weight: normal; +} +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} +.mblProgressBar { + position: relative; + border-radius: 6px; + height: 9px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#a5a6a5), to(#b5b6b5), color-stop(0.5, #d6d7d6), color-stop(0.5, #ffffff), color-stop(0.9, #ffffff)); + background-image: linear-gradient(to bottom, #a5a6a5 0%, #d6d7d6 50%, #ffffff 50%, #ffffff 90%, #b5b6b5 100%); +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + height: 7px; + border: 1px solid #5e6fa3; + border-radius: 6px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0c0ff), to(#2f83e1), color-stop(0.6, #70b2ff), color-stop(0.6, #3470b6)); + background-image: linear-gradient(to bottom, #b0c0ff 0%, #70b2ff 60%, #3470b6 60%, #2f83e1 100%); +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: -1px; + font-size: 10px; +} +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border-color: #9cacc0; +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: white; +} +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 5px; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: #b2b2b2; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid #b2b2b2; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 1em; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #93989c), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #93989c), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblSimpleDialog { + position: absolute; + z-index: 100; + margin: 0; + text-align: center; + outline: none; + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration { + border-radius: 10px; + background-color: rgba(35, 50, 96, 0.85); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(150, 150, 170, 0.85)), to(rgba(18, 29, 68, 0.85)), color-stop(0.15, rgba(77, 85, 119, 0.85)), color-stop(0.15, rgba(35, 50, 96, 0.85))); + background-image: linear-gradient(to bottom, rgba(150, 150, 170, 0.85) 0%, rgba(77, 85, 119, 0.85) 15%, rgba(35, 50, 96, 0.85) 15%, rgba(18, 29, 68, 0.85) 100%); + border: 2px solid #bac1d3; + border-top-color: #eaeaf2; + -webkit-box-shadow: 0 3px 2px #000000; + box-shadow: 0 3px 2px #000000; + color: white; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 14px 0 7px; + width: 262px; + font-weight: bold; +} +.mblSimpleDialogText { + margin: 7px 0 14px; + width: 262px; +} +.dj_ios6 .mblSimpleDialogDecoration { + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(179, 184, 199, 0.85)), to(rgba(35, 50, 90, 0.85)), color-stop(0.2, rgba(109, 120, 148, 0.85)), color-stop(0.2, rgba(33, 48, 88, 0.85))); + background-image: linear-gradient(to bottom, rgba(179, 184, 199, 0.85) 0%, rgba(109, 120, 148, 0.85) 20%, rgba(33, 48, 88, 0.85) 20%, rgba(35, 50, 90, 0.85) 100%); + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.dj_ios6 .mblSimpleDialogButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b3b8c7), to(#6c7692), color-stop(0.5, #6d7894), color-stop(0.5, #586484)); + background-image: linear-gradient(to bottom, #b3b8c7 0%, #6d7894 50%, #586484 50%, #6c7692 100%); + border-color: #273a52; + font-weight: bold; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.dj_ios6 .mblSimpleDialogButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#4f5157), to(#4f5157), color-stop(0.5, #6d6f74), color-stop(0.5, #61656f)); + background-image: linear-gradient(to bottom, #4f5157 0%, #6d6f74 50%, #61656f 50%, #4f5157 100%); + border-color: #273a52; + font-weight: bold; + color: white; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 8px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cecece), to(#fdfdfd), color-stop(0.5, #eeeeee), color-stop(0.5, #f8f8f8)); + background-image: linear-gradient(to bottom, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border-color: #b0b0b0; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 8px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2859b1), to(#75acfb), color-stop(0.5, #3f84eb), color-stop(0.5, #4c8eee)); + background-image: linear-gradient(to bottom, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 10px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#cccccc), to(#fafafa)); + background-image: linear-gradient(to bottom, #cccccc 0%, #fafafa 100%); + border-color: #9d9d9d; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.dj_ios6 .mblSpinWheelSlotLabelBlue { + color: #0160f2; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid #cdd5df; + border-bottom: 1px solid #2d3642; + text-shadow: rgba(0, 0, 0, 0.6) 0 -1px 0; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + color: #979797; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#484848), to(#242424), color-stop(0.5, #353535), color-stop(0.5, #242424)); + background-image: linear-gradient(to bottom, #484848 0%, #353535 50%, #242424 50%, #242424 100%); +} +.mblTabBarTabBar .mblTabBarButtonSelected .mblTabBarButtonLabel { + color: white; +} +.mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-style: solid; + border-color: #2f3740 #405a7e #375073 #3a4755; + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); + -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: #ffffff; + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2), color-stop(0.5, #889bb3), color-stop(0.5, #8195af)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-color: #5877a2; + background-image: -webkit-gradient(linear, left top, left bottom, from(#222222), to(#4a6c9b), color-stop(0.02, #8ea4c1), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid #2d3642; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; + background-color: #212421; + background-image: none; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); + background-color: #636363; + background-image: none; +} +.dj_ios6.dj_phone .mblTabBarSegmentedControl { + background-image: -webkit-gradient(linear, left top, left bottom, from(#d0d9e6), to(#587397), color-stop(0.025, #d0d9e6), color-stop(0.025, #beccdd)); + background-image: linear-gradient(to bottom, #d0d9e6 0%, #d0d9e6 2.5%, #beccdd 2.5%, #587397 100%); +} +.dj_ios6.dj_phone .mblTabBarSegmentedControl .mblTabBarButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #6d84a2 100%); +} +.dj_ios6.dj_phone .mblTabBarSegmentedControl .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #4a6c9b 100%); +} +.dj_ios6.dj_phone .mblTabBarStandardTab { + background-image: -webkit-gradient(linear, left top, left bottom, from(#d0d9e6), to(#587397), color-stop(0.025, #d0d9e6), color-stop(0.025, #beccdd)); + background-image: linear-gradient(to bottom, #d0d9e6 0%, #d0d9e6 2.5%, #beccdd 2.5%, #587397 100%); +} +.dj_ios6.dj_phone .mblTabBarStandardTab .mblTabBarButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#b0bccd), to(#6d84a2)); + background-image: linear-gradient(to bottom, #b0bccd 0%, #6d84a2 100%); +} +.dj_ios6.dj_phone .mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #4a6c9b 100%); +} +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + border-color: #9cacc0; + border-radius: 5px; +} +.mblExpandingTextArea { + margin: 2px; +} +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + background-image: -webkit-gradient(linear, left top, left bottom, from(#fdfdfd), to(#cecece), color-stop(0.5, #f8f8f8), color-stop(0.5, #eeeeee)); + background-image: linear-gradient(to bottom, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border-color: #9cacc0; + border-radius: 5px; + font-size: 13px; + color: black; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0f0f0), to(#bfbfbf), color-stop(0.5, #ebebeb), color-stop(0.5, #dedede)); + background-image: linear-gradient(to bottom, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +} +.mblToggleButtonChecked { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + color: white; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background-image: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 3px; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + border-radius: 3px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #9cb1c9), color-stop(0.35, #f0f1f5), color-stop(0.65, #f0f1f5), color-stop(0.9, #9cb1c9)); + background-image: linear-gradient(to bottom, #9cb1c9 10%, #f0f1f5 35%, #f0f1f5 65%, #9cb1c9 90%); +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} +.mblValuePickerSlotButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7c87a4), to(#263e6c), color-stop(0.5, #394d77), color-stop(0.5, #243b69)); + background-image: linear-gradient(to bottom, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #eaeaea), color-stop(0.2, #fafafa), color-stop(0.5, #ffffff), color-stop(0.9, #efefef)); + background-image: linear-gradient(to bottom, #eaeaea 10%, #fafafa 20%, #ffffff 50%, #efefef 90%); +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone_rtl-compat.css new file mode 100644 index 00000000..0a10077b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone_rtl-compat.css @@ -0,0 +1,80 @@ + +.mblListItemRtl .mblDomButtonGrayArrow, +.mblListItemRtl .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow_rtl.png"); + background-repeat: no-repeat; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url("compat/switch-round1-l.gif"); +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 10px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 10px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 10px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 10px; + -moz-border-bottom-right-radius: 0px; +} +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 5px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 5px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone_rtl.css new file mode 100644 index 00000000..d05ff919 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/iphone_rtl.css @@ -0,0 +1,327 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 0px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblDomButtonGrayArrow > div, +.mblListItemRtl .mblDomButtonArrow > div { + right: 6px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + border-width: 3px 0px 0px 3px; +} +.mblListItemRtl .mblDomButtonDarkBlueCheck > div, +.mblListItemRtl .mblDomButtonCheck > div { + right: 0px; + -webkit-transform: scaleX(-0.7) rotate(-135deg); + transform: scaleX(-0.7) rotate(-135deg); + border-width: 3px 0px 0px 4px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 50px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 50px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: -26px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 0px; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: 0px; +} +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 4px 2px 0px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} +.mblComboBoxMenuItemRtl { + text-align: right; +} +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: -2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid #6b6c6f; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-right-radius: 10px; + border-top-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0px; + border-top-left-radius: 10px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-right-radius: 10px; + border-bottom-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 10px; +} +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 5px; + border-top-left-radius: 0px; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 5px; + border-top-right-radius: 0px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/variables.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/variables.less new file mode 100644 index 00000000..5103a2f2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/variables.less @@ -0,0 +1,779 @@ +@import "../common/css3.less"; + +@default-blue-button-color: white; +@default-blue-button-background-color: #366edf; +.default-blue-button-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#7a9de9, #2362dd, 0.5, #366edf, 0.5, #215fdc); } +@default-blue-button-background-image-gecko: -moz-linear-gradient(top, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); + +.mbl-color-blue-45 () { .background-image-linear-gradient-top-left-bottom-right-2-stops(#7a9de9, #2362dd, 0.5, #366edf, 0.5, #215fdc); } +.mbl-color-default-45 () { .background-image-linear-gradient-top-left-bottom-right-3-stops(#222222, #4a6c9b, 0.02, #8ea4c1, 0.5, #5877a2, 0.5, #476999); } +.mbl-color-default-sel-45 () { .background-image-linear-gradient-top-left-bottom-right-2-stops(#7c87a4, #263e6c, 0.5, #394d77, 0.5, #243b69); } + +@mbl-color-blue-45-gecko: -moz-linear-gradient(top left, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +@mbl-color-default-45-gecko: -moz-linear-gradient(top left, #222222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +@mbl-color-default-sel-45-gecko: -moz-linear-gradient(top left, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); + +@default-button-color: white; +@default-button-background-color: #5877a2; +.default-button-background-image () { .background-image-linear-gradient-top-bottom-3-stops(#222, #4a6c9b, .02, #8ea4c1, 0.5, #5877a2, 0.5, #476999); } +@default-button-background-image-gecko: -moz-linear-gradient(top, #222 0%, #8ea4c1 2%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +@default-button-border-radius: 5px; + +@default-button-selected-color: white; +@default-button-selected-background-color: #394d77; +.default-button-selected-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#7c87a4, #263e6c, 0.5, #394d77, 0.5, #243b69); } +@default-button-selected-background-image-gecko: -moz-linear-gradient(top, #7c87a4 0%, #394d77 50%, #243b69 50%, #263e6c 100%); + +@default-selected-color: white; +@default-selected-background-color: #048bf4; +.default-selected-background-image () { .background-image-linear-gradient-top-bottom(#048bf4, #005ce5); } +@default-selected-background-image-gecko: -moz-linear-gradient(top, #048bf4 0%, #005ce5 100%); + +@heading-background-color: #889bb3; +.heading-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#b0bccd, #6d84a2, 0.5, #889bb3, 0.5, #8195af); } +@heading-background-image-gecko: -moz-linear-gradient(top, #b0bccd 0%, #889bb3 50%, #8195af 50%, #6d84a2 100%); +@heading-border-top-color: #cdd5df; +@heading-border-bottom-color: #2d3642; + +.default-button-border-styles () { + border-color: #9cacc0; + border-radius: @default-button-border-radius; +} + +.mblToolBarButtonBodyInLeftArrow-styles () { + border-left-width: 0; +} + +.mblToolBarButtonBodyInRightArrow-styles () { + border-right-width: 0; +} + +// background styles of form controls +.mbl-button-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#fdfdfd, #cecece, 0.5, #f8f8f8, 0.5, #eeeeee); } +.mbl-button-selected-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#f0f0f0, #bfbfbf, 0.5, #ebebeb, 0.5, #dedede); } +.mbl-blue-button-background-image () { .default-blue-button-background-image(); } +.mbl-blue-button-selected-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#8ea4c1, #4a6c9b, 0.5, #5877a2, 0.5, #476999); } +.mbl-red-button-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#fa9d58, #ee4115, 0.5, #ff4d25, 0.5, #ed4d15); } +.mbl-red-button-selected-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#c1a48e, #9b6c4a, 0.5, #a27758, 0.5, #996947); } +.mbl-button-checked-background-image () { .default-blue-button-background-image(); } + +// background styles of form controls (for gecko) +@mbl-button-background-image-gecko: -moz-linear-gradient(top, #fdfdfd 0%, #f8f8f8 50%, #eeeeee 50%, #cecece 100%); +@mbl-button-selected-background-image-gecko: -moz-linear-gradient(top, #f0f0f0 0%, #ebebeb 50%, #dedede 50%, #bfbfbf 100%); +@mbl-blue-button-background-image-gecko: @default-blue-button-background-image-gecko; +@mbl-blue-button-selected-background-image-gecko: -moz-linear-gradient(top, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +@mbl-red-button-background-image-gecko: -moz-linear-gradient(top, #fa9d58 0%, #ff4d25 50%, #ed4d15 50%, #ee4115 100%); +@mbl-red-button-selected-background-image-gecko: -moz-linear-gradient(top, #c1a48e 0%, #a27758 50%, #996947 50%, #9b6c4a 100%); +@mbl-button-checked-background-image-gecko: @default-blue-button-background-image-gecko; + +// common.less +.mobile-body-styles () { + font-family: Helvetica; + font-size: 17px; +} + +.mblBackground-styles () { + background-color: #c5ccd3; +} + +.mblView-styles () { +} + +.mblColorBlue-styles () { + color: @default-blue-button-color; + background-color: @default-blue-button-background-color; + .default-blue-button-background-image(); +} +.mblColorDefault-styles () { + color: @default-button-color; + background-color: @default-button-background-color; + .default-button-background-image(); +} +.mblColorDefaultSel-styles () { + color: @default-button-selected-color; + background-color: @default-button-selected-background-color; + .default-button-selected-background-image(); +} + +// Heading.less +.mblHeading-styles () { + .heading-background-image(); + border-top: 1px solid @heading-border-top-color; + border-bottom: 1px solid @heading-border-bottom-color; + color: white; + text-shadow: rgba(0,0,0,0.6) 0 -1px 0; +} + +// ToolBarButton.less +@mbl-tool-bar-button-body-border-radius: 5px; +// +.mblToolBarButton-styles () { +} +.mblToolBarButtonArrow-styles () { + .transform(scale(0.75, 1.0) rotate(45deg)); + border: 1px solid #9cacc0; + border-top-left-radius: 1px; + border-bottom-right-radius: 1px; +} +.mblToolBarButtonArrowInHeading-styles () { + border-width: 1px; + border-style: solid; + border-color: #405a7e #405a7e #3a4755 #3a4755; +} +.mblToolBarButtonHasLeftArrowInHeading-styles () { + .box-shadow(0 1px 0 rgba(255, 255, 255, 0.305)); +} +.mblToolBarButtonHasLeftArrowInHeading-compat-gecko () { + -moz-box-shadow: 0 1px 0 rgba(255,255,255,0.305); +} +.mblToolBarButtonHasRightArrowInHeading-styles () { + .box-shadow(1px 0 0 rgba(255, 255, 255, 0.305)); +} +.mblToolBarButtonHasRightArrowInHeading-compat-gecko () { + -moz-box-shadow: 1px 0 0 rgba(255,255,255,0.305); +} +.mblToolBarButtonArrowInLeftArrow-styles () { + left: 1px; +} +.mblToolBarButtonArrowInRightArrow-styles () { + right: 0px; +} +.mblToolBarButtonBody-styles () { + border: 1px outset #9cacc0; +} +.mblToolBarButtonBodyInHeading-styles () { + border-width: 1px; + border-style: solid; + border-color: #2f3740 #405a7e #375073 #3a4755; + .box-shadow(0 1px 0 rgba(255,255,255,0.305)); +} +.mblToolBarButtonBodyInHeading-compat-gecko () { + -moz-box-shadow: 0 1px 0 rgba(255,255,255,0.305); +} + +// RoundRect.less & RoundRectList.less +@mbl-round-rect-border-color: #adaaad; +@mbl-round-rect-border-radius: 8px; +@mbl-round-rect-background-color: white; +@mbl-round-rect-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); +// +.mblRoundRect-styles () { +} + +// EdgeToEdgeCategory.less +.mblEdgeToEdgeCategory-styles () { + height: 22px; + border-top: 1px solid #a4b0b9; + border-bottom: 1px solid #979da3; + .background-image-linear-gradient-top-bottom(#8f9ea9, #b7c0c7); + color: white; + line-height: 22px; + text-shadow: rgba(0,0,0,0.6) 0 -1px 0; +} + +// RoundRectCategory.less +.mblRoundRectCategory-styles () { + color: #4c566c; + text-shadow: rgba(255, 255, 255, 1) 0 1px 0; +} + +// EdgeToEdgeList.less +.mblEdgeToEdgeList-styles () { + background-color: white; +} +.mblEdgeToEdgeList-LastListItem-styles () { + border-bottom-color: #707c84; +} + +// ListItem.less +@mbl-list-item-height: 43px; +// +.mblListItem-styles () { + border-bottom: 1px solid #adaaad; + font-weight: bold; + color: black; +} +.mblListItemSelected-styles () { + color: @default-selected-color; + .default-selected-background-image(); +} +.mblListItemLabelSelected-styles () { + background-color: #048bf4; +} +.mblListItemChecked-styles () { + color: #314e84; +} +.mblListItemRightText-styles () { + color: #324f85; + margin-top: 12px; +} +.mblListItemSubText-styles () { +} + +// Switch.less +@mbl-switch-bg-left-background-color: #2859b1; +.mbl-switch-bg-left-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#2859b1, #75acfb, 0.5, #3f84eb, 0.5, #4c8eee); } +@mbl-switch-bg-right-background-color: #cecece; +.mbl-switch-bg-right-background-image () { .background-image-linear-gradient-top-bottom-2-stops(#cecece, #fdfdfd, 0.5, #eeeeee, 0.5, #f8f8f8); } +.mbl-switch-knob-background-image () { .background-image-linear-gradient-top-bottom(#cccccc, #fafafa); } +// +@mbl-switch-bg-left-background-image-gecko: -moz-linear-gradient(top, #2859b1 0%, #3f84eb 50%, #4c8eee 50%, #75acfb 100%); +@mbl-switch-bg-right-background-image-gecko: -moz-linear-gradient(top, #cecece 0%, #eeeeee 50%, #f8f8f8 50%, #fdfdfd 100%); +@mbl-switch-knob-background-image-gecko: -moz-linear-gradient(top, #cccccc 0%, #fafafa 100%); +// +@mbl-switch-square-border-radius: 5px; +// +.mblSwitchBg-styles () { + border-width: 1px; + border-style: solid; + border-color: #939393 #aaaaaa #cbcbcb #767676; +} +.mblSwitchKnob-styles () { + border-width: 1px; + border-style: solid; + border-color: #5e5e5e #9e9e9e #828282 #797979; +} + +// Button.less +.mblButton-styles () { + .default-button-border-styles; + color: black; + font-size: 13px; +} +.mblButtonSelected-styles () { + color: black; +} +.mblButton-mblBlueButton-styles () { + color: white; +} +.mblButton-mblRedButton-styles () { + color: white; +} + +// CheckBox.less +.mblCheckBox-styles () { + .default-button-border-styles; +} +.mblCheckBoxChecked-after-styles () { + border-color: white; +} +.mblCheckBoxChecked-mblCheckBoxSelected-after-styles () { +} + +// ComboBox.less +@mbl-combo-box-popup-box-shadow: 0 0 50px black; +// +.dijitPopup-styles () { + border-radius: 0; +} +.mblComboBoxMenu-styles () { + border-radius: 0; + background-color: white; +} +.mblComboBoxMenuItem-styles () { + border-color: #ffffff; + color: inherit; +} +.mblComboBoxMenuItemSelected-styles () { + .default-selected-background-image(); + color: white; +} + +// IconContainer.less +.mblIconItemSub-styles () { + background-color: white; +} +.mblIconArea-styles () { + margin-top: 5px; + margin-bottom: 5px; + width: 74px; +} +.mblIconItemDeleteIcon-styles () { + top: -4px; + left: -2px; +} + +// RadioButton.less +.mblRadioButton-styles () { + border-color: #9cacc0; +} +.mblRadioButtonChecked-after-styles () { + border-color: white; +} +.mblRadioButtonChecked-Selected-after-styles () { + border-color: white; +} + +// Slider.less +@mbl-slider-bar-border-radius: 8px; +@mbl-slider-knob-border-radius: 10px; +// +.mblSlider-styles () { + border-color: #b0b0b0; +} +.mblSliderHandle-styles () { + border-color: #9d9d9d; +} + +// TabBar.less +.mblTabBar-styles () { + text-shadow: rgba(0,0,0,0.6) 0 -1px 0; +} + +// barType="tabBar" +.mblTabBarTabBar-styles () { + .background-image-linear-gradient-top-bottom-2-stops(#2d2d2d, #000000, 0.5, #141414, 0.5, #000000); +} +.mblTabBarTabBar-compat () { + background-color: #000000; +} +.mblTabBarTabBarButton-styles () { +} +.mblTabBarTabBarButtonIconArea-styles () { +} +.mblTabBarTabBarButtonLabel-styles () { + color: #979797; +} +.mblTabBarTabBarButtonSelected-styles () { + background-color: #404040; + .background-image-linear-gradient-top-bottom-2-stops(#484848, #242424, 0.5, #353535, 0.5, #242424); +} +.mblTabBarTabBarButtonLabelSelected-styles () { + color: white; +} + +// barType="segmentedControl" +@mbl-tab-bar-segmented-control-border-radius: 5px; +// +.mblTabBarSegmentedControl-styles () { +} +.mblTabBarSegmentedControlButton-styles () { + border-style: solid; + border-color: #2f3740 #405a7e #375073 #3a4755; + color: @default-button-color; + .heading-background-image(); + .box-shadow(0 1px 0 rgba(255, 255, 255, 0.305)); +} +.mblTabBarSegmentedControlButton-compat-gecko () { + -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.305); +} +.mblTabBarSegmentedControlButtonSelected-styles () { + .default-button-background-image(); +} + +// barType="standardTab" +.mblTabBarStandardTab-styles () { +} +.mblTabBarStandardTabButton-styles () { + color: @default-button-color; + .heading-background-image(); +} +.mblTabBarStandardTabButtonIconArea-styles () { +} +.mblTabBarStandardTabButtonLabel-styles () { +} +.mblTabBarStandardTabButtonSelected-styles () { + background-color: @default-button-background-color; + .default-button-background-image(); +} +.mblTabBarStandardTabButtonLabelSelected-styles () { +} + +// barType="tallTab" +.mblTabBarTallTab-styles () { + .background-image-linear-gradient-top-bottom-2-stops(#2d2d2d, #000000, 0.5, #141414, 0.5, #000000); +} +.mblTabBarTallTabButton-styles () { + background-color: #212421; + background-image: none; +} +.mblTabBarTallTabButton-FirstChild-styles () { +} +.mblTabBarTallTabButton-LastChild-styles () { +} +.mblTabBarTallTabButtonIconArea-styles () { +} +.mblTabBarTallTabButtonLabel-styles () { +} +.mblTabBarTallTabButtonSelected-styles () { + background-color: #636363; + background-image: none; +} +.mblTabBarTallTabButtonLabelSelected-styles () { +} + +// TextArea.less +.mblTextArea-styles () { + .default-button-border-styles; +} + +// TextBox.less +.mblTextBox-styles () { + .default-button-border-styles; +} + +// ToggleButton.less +.mblToggleButton-styles () { + .default-button-border-styles; + font-size: 13px; + color: black; +} +.mblToggleButtonSelected-styles () { +} +.mblToggleButtonChecked-styles () { + color: white; +} +.mblToggleButtonChecked-after-styles () { + border-color: white; +} +.mblToggleButtonCheckedSelected-styles () { +} +.mblToggleButtonCheckedSelected-after-styles () { +} + +// Overlay.less +.mblOverlay-styles () { + .background-image-linear-gradient-top-bottom(#fdfdfd, #cecece); +} +.mblOverlay-compat () { + background-color: #cecece; + background-image: none; +} +.mblOverlay-compat-gecko () { + background-image: -moz-linear-gradient(top, #fdfdfd 0%, #cecece 100%); +} + +// Tooltip.less +@mbl-tooltip-border-radius: 8px; +// +.mblTooltip-styles () { + border-color: #5a5a5a; + border-radius: @mbl-tooltip-border-radius; + background-color: #121b2f; + .background-image-linear-gradient-top-bottom-2-stops(#656872, #121b2f, 0.1, #2c3345, 0.1, #161f32); +} +.mblTooltipBubble-styles () { + background-color: #f9f7ba; + background-image: none; +} +.mblTooltipInnerArrow-Bubble-Above-styles () { + border-bottom-color: #f9f7ba; +} +.mblTooltipInnerArrow-Bubble-Below-styles () { + border-top-color: #f9f7ba; +} +.mblTooltipInnerArrow-Bubble-After-styles () { + border-left-color: #f9f7ba; +} +.mblTooltipInnerArrow-Bubble-Before-styles () { + border-right-color: #f9f7ba; +} +.mblTooltipArrow-Before-styles () { + border-left-width: 0; + border-right-color: #5a5a5a; +} +.mblTooltipArrow-After-styles () { + border-right-width: 0; + border-left-color: #5a5a5a; +} +.mblTooltipArrow-Above-styles () { + border-top-width: 0; + border-bottom-color: #5a5a5a; +} +.mblTooltipArrow-Below-styles () { + border-bottom-width: 0; + border-top-color: #5a5a5a; +} +.mblTooltipInnerArrow-Before-styles () { + border-left-width: 0; + border-right-color: #192235; +} +.mblTooltipInnerArrow-After-styles () { + border-right-width: 0; + border-left-color: #192235; +} +.mblTooltipInnerArrow-Above-styles () { + border-top-width: 0; + border-bottom-color: #656872; +} +.mblTooltipInnerArrow-Below-styles () { + border-bottom-width: 0; + border-top-color: #172035; +} +.mblTooltip-Heading-styles () { + border-top: 3px solid #4f5055; + border-bottom: 1px solid #2d3642; + border-left: 1px solid #2a2d47; + border-radius: 3px 3px 0 0; + background-color: #889bb3; + .background-image-linear-gradient-top-bottom-1-stop(#5e6167, #1a1d24, 0.5, #2e322b); + font-weight: normal; +} +.mblTooltip-Heading-compat () { + background-image: url(compat/tooltip-heading-bg.png); +} +.mblTooltip-Heading-ToolbarButton-styles () { + border: 1px inset #434450; + .background-image-linear-gradient-top-bottom-1-stop(#686f80, #000924, 0.5, #000b29); + font-weight: normal; +} +.mblTooltip-Heading-ToolbarButton-compat () { + background-color: #000924; + background-image: url(compat/tooltip-button-bg.png); +} + +// Accordion.less +.mblAccordion-styles () { + border-color: #8c8f91; +} +.mblAccordionTitle-styles () { + border-top: 1px solid #8c8f91; + .background-image-linear-gradient-top-bottom-1-stop(#fcfcfc, #e1e5e8, 0.2, #f0f2f3); +} +.mblAccordionTitle-compat () { + background-color: #f0f2f3; +} +.mblAccordionTitle-compat-gecko () { + background-image: -moz-linear-gradient(top, #fcfcfc 0%, #f0f2f3 20%, #e1e5e8 100%); +} +.mblAccordionTitleSelected-styles () { + border-bottom: 1px solid #8c8f91; + .background-image-linear-gradient-top-bottom-1-stop(#97afc0, #46708e, 0.2, #7796ac); + color: white; +} +.mblAccordionTitleSelected-compat () { + background-color: #7796ac; +} +.mblAccordionTitleSelected-compat-gecko () { + background-image: -moz-linear-gradient(top, #97afc0 0%, #7796ac 20%, #46708e 100%); +} +.mblAccordionTitleAnchor-styles () { + color: black; +} +.mblAccordionTitleAnchorSelected-styles () { + color: white; +} + +// SimpleDialog.less +@mbl-simple-dialog-border-radius: 10px; +// +.mblSimpleDialog-styles () { + padding: 5px; + width: 262px; +} +.mblSimpleDialogDecoration-styles () { + background-color: rgba(35,50,96,0.85); + .background-image-linear-gradient-top-bottom-2-stops(rgba(150,150,170,0.85), rgba(18,29,68,0.85), 0.15, rgba(77,85,119,0.85), 0.15, rgba(35,50,96,0.85)); + border: 2px solid #bac1d3; + border-top-color: #eaeaf2; + .box-shadow(0 3px 2px #000000); + color: white; +} +.mblSimpleDialogDecoration-compat () { + background-color: #233260; +} +.mblSimpleDialogDecoration-compat-gecko () { + background-color: rgba(35,50,96,0.85); + background-image: -moz-linear-gradient(top, rgba(150,150,170,0.85) 0%, rgba(77,85,119,0.85) 15%, rgba(35,50,96,0.85) 15%, rgba(18,29,68,0.85) 100%); + -moz-box-shadow: 0 3px 2px #000000; +} +.mblSimpleDialogTitle-styles () { + margin: 14px 0 7px; + width: 262px; + font-weight: bold; +} +.mblSimpleDialogText-styles () { + margin: 7px 0 14px; + width: 262px; +} + +// IconMenu.less +@mbl-icon-menu-border-radius: 10px; +@mbl-icon-menu-item-border-radius: 10px; +// +.mblIconMenu-styles () { + padding: 0; + .background-image-linear-gradient-top-bottom-1-stop(rgba(102,102,119,0.85), rgba(4,4,4,0.85), 0.35, rgba(22,22,30,0.85)); + border: 2px solid #9a9a9e; + border-top-color: #f2f2f3; + .box-shadow(1px 3px 5px rgba(0,0,0,0.5)); +} +.mblIconMenu-compat () { + background-color: #040404; +} +.mblIconMenu-compat-gecko () { + background-color: transparent; + background-image: -moz-linear-gradient(top, rgba(102,102,119,0.85) 0%, rgba(22,22,30,0.85) 35%, rgba(4,4,4,0.85) 100%); + -moz-box-shadow: 1px 3px 5px rgba(0,0,0,0.5); +} +.mblIconMenuItem-styles () { + border-left: 1px solid #6b6c6f; + border-bottom: 1px solid #6b6c6f; +} +.mblIconMenuItemAnchor-styles () { + font-size: 11px; + color: #b8bbc0; +} +.mblIconMenuItemSel-styles () { + .background-image-linear-gradient-top-bottom-1-stop(rgba(139,157,229,0.6), rgba(10,54,233,0.8), 0.6, rgba(10,54,233,0.8)); +} +.mblIconMenuItemSel-compat () { + background-color: #0a36e9; +} +.mblIconMenuItemSel-compat-gecko () { + background-color: transparent; + background-image: -moz-linear-gradient(top, rgba(139,157,229,0.6) 0%, rgba(10,54,233,0.8) 60%, rgba(10,54,233,0.8) 100%); +} + +// dijit.Calendar +.dijitCalendar-styles () { + border: solid 1px #b5bcc7; + background-color: #dddde0; +} +.dijitCalendar-thead-styles () { + .background-image-linear-gradient-top-bottom(#f6f6f6, #ccccd1); +} +.dijitCalendar-thead-compat () { + background-image: url(compat/calendar-month-bg.png); +} +.dijitCalendar-thead-compat-gecko () { + background-image: -moz-linear-gradient(top, #f6f6f6 0%, #ccccd1 100%); +} +.dijitCalendarMonthLabel-styles () { + color: #545454; + font-size: 22px; +} +.dijitCalendarMonthMenu-styles () { +} +.dijitCalendarMonthMenu-compat-ff3 () { +} +.dijitCalendarMonthMenu-Label-styles () { +} +.dijitCalendarDecrease-styles () { + border-right: 6px solid #545454 !important; +} +.dijitCalendarIncrease-styles () { + border-left: 6px solid #545454 !important; +} +.dijitCalendarDayLabelTemplate-styles () { + font-size: 9px; + color: #545454; +} +.dijitCalendarDateTemplate-styles () { + background-color: #dddde0; + color: #4a5b6e; + text-shadow: rgba(231,231,233,1.0) 0 1px 0; +} +.dijitCalendarDateTemplate-LastChild-styles () { +} +.dijitCalendarDateLabel-DateTemplate-styles () { + border-top: solid 1px #eceeef; + border-bottom: solid 1px #a6aab3; + border-left: solid 1px #a0a4ad; + border-right: solid 1px #ececed; + background-color: rgba(171, 212, 251, 0); + .transition-property-2(background-color, border); + .transition-duration(0.35s); +} +.dijitCalendarDateLabel-PrevMonth-styles () { + color: #9099a4; +} +.dijitCalendarDateLabel-Hovered-styles () { + border: solid 1px #769dc0; + color: black; +} +.dijitCalendarDateLabel-Selected-styles () { + border: solid 1px #1037b3; + background-color: #1a80e5; + color: white; + text-shadow: rgba(0,0,0,0.4) 0 1px 0; +} +.dijitCalendarDateLabel-Selected-compat () { +} +.dijitCalendarDateLabel-Selected-compat-gecko () { +} +.dijitCalendarDateLabel-Active-styles () { + border: solid 1px white; + background-color: #1a80e5; + .transition-duration(0.1s); +} +.dijitCalendarDateLabel-Active-compat () { +} +.dijitCalendarDateLabel-Active-compat-gecko () { +} +.dijitCalendarYearLabel-styles () { + padding: 2px 0 0 0; + .background-image-linear-gradient-top-bottom(#f6f6f6, #ccccd1); +} +.dijitCalendarYearLabel-compat () { + background-image: url(compat/calendar-year-bg.png); +} +.dijitCalendarYearLabel-compat-gecko () { + background-image: -moz-linear-gradient(top, #f6f6f6 0%, #ccccd1 100%); +} +.dijitCalendarSelectedYear-styles () { + color: #545454; + font-size: 1.091em; +} +.dijitCalendarNextYear-styles () { + padding: 1px 6px 1px 6px; + color: #545454; + font-size: 0.909em; +} + +// SearchBox.less +@mbl-searchbox-cancel-button-color: white; +@mbl-searchbox-cancel-button-bg-color: #b2b2b2; +.mblSearchBox-Cancel-Button-styles () { + border-radius: 1em; +} +@mbl-searchbox-results-decoration-color: #93989c; + +// ProgressBar.less +.mblProgressBar-styles () { + border-radius: 6px; + height: 9px; + .background-image-linear-gradient-top-bottom-3-stops(#a5a6a5, #b5b6b5, 0.5, #d6d7d6, 0.5, #ffffff, 0.9, #ffffff); +} +.mblProgressBarProgress-styles () { + height: 7px; + border:1px solid #5e6fa3; + border-radius: 6px; + .background-image-linear-gradient-top-bottom-2-stops(#b0c0ff, #2f83e1, 0.6, #70b2ff, 0.6, #3470b6); +} +.mblProgressBarComplete-styles () { +} +.mblProgressBarNotStarted-styles () { +} +.mblProgressBarMsg-styles () { + top: -1px; + font-size: 10px; +} +.mblProgressBar-compat () { + background-color: white; +} +.mblProgressBarProgress-compat () { + background-color: #3186e7; +} +.mblProgressBar-compat-gecko () { + background-image: -moz-linear-gradient(top, #a5a6a5 0%, #d6d7d6 50%, #ffffff 50%, #ffffff 90%, #b5b6b5 100%); +} +.mblProgressBarProgress-compat-gecko () { + background-image: -moz-linear-gradient(top, #b0c0ff 0%, #70b2ff 60%, #3470b6 60%, #2f83e1 100%); +} + +// ValuePicker.less +.mbl-value-picker-slot-button-background-image () { .background-image-linear-gradient-top-bottom-4-stops-no-from-to(0.1, #9cb1c9, 0.35, #f0f1f5, 0.65, #f0f1f5, 0.9, #9cb1c9); } +@mbl-value-picker-slot-button-background-image-gecko: -moz-linear-gradient(top, #9cb1c9 10%, #f0f1f5 35%, #f0f1f5 65%, #9cb1c9 90%); +@mbl-value-picker-slot-button-radius: 0; +.mbl-value-picker-slot-input-area-background-image () { .background-image-linear-gradient-top-bottom-4-stops-no-from-to(0.1, #eaeaea, 0.2, #fafafa, 0.5, #ffffff, 0.9, #efefef); } +@mbl-value-picker-slot-input-area-background-image-gecko: -moz-linear-gradient(top, #eaeaea 10%, #fafafa 20%, #ffffff 50%, #efefef 90%); +.mblValuePickerSlot-style () { + margin: 0 3px; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + border-radius: 3px; +} +.mblValuePickerSlot-input-style () { + font: bold 24px/44px Helvetica, sans-serif; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/variables_rtl.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/variables_rtl.less new file mode 100644 index 00000000..c8586e0d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/iphone/variables_rtl.less @@ -0,0 +1,35 @@ +// Carousel_rtl +@mbl-carousel-margin-rtl: ~"2px 4px 2px 0px"; + +// IconContainer_rtl +@mbl-icon-container-right-rtl: -2px; + +// IconMenu_rtl-compat +@mbl-border-radius-rtl: 10px; + +// TabBar_rtl-compat +@mbl-moz-border-radius-rtl: 5px; + +// TabBar_rtl +@mbl-border-width-rtl: ~"1px 0px 1px 1px !important"; +@mbl-tb-border-radius-rtl: 5px; + +// ThemeID +@theme-id: iphone; + +// Switch_rtl-compat +@mbl-bg-image-r-rtl: ~"url(compat/switch-round1-r.gif)"; +@mbl-bg-image-l-rtl: ~"url(compat/switch-round1-l.gif)"; + +// Switch_rtl +@mbl-switchOn-left-rtl: -50px; +@mbl-switchBg-left-rtl: 50px; +@mbl-switch-knob-rtl: 50px; +@mbl-switch-text-right-rtl: -26px; + +// ToolBarButton_rtl +@mbl-toolbar-right-arrow-rtl: 1px; +@mbl-toolbar-left-arrow-rtl: 0px; + +// ProgressIndicator_rtl +@mbl-progress-center-left-rtl: 0px; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/README new file mode 100644 index 00000000..a3c44df0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/README @@ -0,0 +1,26 @@ +------------------------------------------------------------------------------- +Dojo Mobile Themes +------------------------------------------------------------------------------- + +Dojo provides platform-specific themes for Android 2, Android 3/4, iOS and Blackberry. There is also a generic theme named "custom". + +All themes are generated using the Less CSS library (http://lesscss.org/). + +Building mobile themes +---------------------- + +1. Install Node.js (http://nodejs.org/). + +2. Run compile.bat or compile.sh to generate all themes. + +You can also run cleanup.bat or cleanup.sh to remove all the generated css files. + + +Creating a new theme from the Custom theme +------------------------------------------ + +The 'custom' theme (i.e. mobile/themes/custom folder) is a generic grey theme. It is a good starting point for creating a new theme. All colors of this theme are derived from 2 colors defined at the beginning of themes/custom/variables.less. + +To create a new theme, you can change these colors (i.e. @lightColor and @darkColor) as well as other part of variables.less and then run the compile script. + + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/cleanup.bat b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/cleanup.bat new file mode 100644 index 00000000..1032ff3e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/cleanup.bat @@ -0,0 +1,2 @@ +node cleanup.js +pause diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/cleanup.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/cleanup.js new file mode 100644 index 00000000..eb89f1a7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/cleanup.js @@ -0,0 +1,46 @@ +var fs = require("fs"); + +clean("../android"); +clean("../android/dijit"); +clean("../iphone"); +clean("../iphone/dijit"); +clean("../blackberry"); +clean("../blackberry/dijit"); +clean("../holodark"); +clean("../holodark/dijit"); +clean("../windows"); +clean("../windows/dijit"); +clean("../custom"); +clean("../custom/dijit"); + +clean("../common/transitions"); +clean("../common/domButtons"); + +// Remove css files that have a matching less file in the same folder or in common folder +function clean(folder){ + var cssFiles = []; + getFiles(folder, /.*.css$/, cssFiles); + var lessFiles = {}; + getFiles("../common/", /.*.less$/, lessFiles); + getFiles(folder, /.*.less$/, lessFiles); + + for(var i=0; i < cssFiles.length; i++){ + if(lessFiles[cssFiles[i].replace(".css", ".less")]){ + console.log("deleting", folder + "/" + cssFiles[i]); + fs.unlink(folder + "/" + cssFiles[i], function(err){if(err){console.log(err);}}); + } + } + +} + +function getFiles(folder, pattern, dest){ + fs.readdirSync(folder).map(function(file){ + if(pattern.test(file)){ + if(dest instanceof Array){ + dest.push(file); + }else{ + dest[file] = true; + } + } + }); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/cleanup.sh b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/cleanup.sh new file mode 100644 index 00000000..e4060cb5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/cleanup.sh @@ -0,0 +1 @@ +node cleanup.js diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/compile.bat b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/compile.bat new file mode 100644 index 00000000..fddf3603 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/compile.bat @@ -0,0 +1,3 @@ +@set NODE_PATH=../../../../util/less/lib +node compile.js +pause diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/compile.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/compile.js new file mode 100644 index 00000000..989554b7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/compile.js @@ -0,0 +1,117 @@ +var fs = require("fs"); +var path = require("path"); +var less = require("less"); + +var themeFolders = ["../android", "../iphone", "../blackberry", "../holodark", "../windows", "../custom", "../ios7"]; +var commonFolders = ["../common/domButtons", "../common/transitions"]; + +var batchQueue = []; +var batchIndex = 0; +var processProgress = 0; + +themeFolders.forEach(function(folder){ + batchQueue.push(function(){ + processFolder(folder, true); + processFolder(folder + "/dijit", false); + }); +}); + +commonFolders.forEach(function(folder){ + batchQueue.push(function(){ + processFolder(folder, false); + }); +}); + +batch(); + +/////////////////////////////////////////////////////////////////////////////////////////////////// + +function batch(){ + if(batchIndex < batchQueue.length){ + batchQueue[batchIndex](); + batchIndex++; + } +} + +function beginProcess(){ + processProgress++; +} +function endProcess(){ + processProgress--; + if (processProgress == 0){ + batch(); + } +} + +function processFolder(folder, usingCommonSubstitution){ + var folderFiles = getLessFiles(folder); + + if(usingCommonSubstitution){ + var commonFiles = getLessFiles("../common"); + var outputFile; + commonFiles.array.forEach(function(commonFile){ + var themeFile = folderFiles.dic[commonFiles.dic[commonFile]]; + if(themeFile){ + // If there is a .less file in the theme folder, use it. + outputFile = themeFile.replace(".less", ".css"); + applyLess(themeFile, null, outputFile); + }else{ + // Otherwise, fall back to the .less file which is in 'common'. + var fileName = commonFiles.dic[commonFile]; + outputFile = folder + "/" + fileName.replace(".less", ".css"); + // dojox.mobile mirroring support + if(fileName.indexOf("_rtl") == -1){ + applyLess(commonFile, '@import "' + folder + '/variables.less";', outputFile); + }else{ + applyLess(commonFile, '@import "' + folder + '/variables_rtl.less";', outputFile); + } + } + }); + }else{ + folderFiles.array.forEach(function(file){ + applyLess(file, null, file.replace(".less", ".css")); + }); + } +} + +function applyLess(file, prependText, outputFile){ + beginProcess(); + console.log("compiling:", file); + + var parser = new(less.Parser)({paths: [path.dirname(file)], filename: file, optimization: 1}); + var lessContent = fs.readFileSync(file, "utf-8"); + + if(prependText){ + lessContent = prependText + lessContent; + } + parser.parse(lessContent, function(error, tree){ + if(error){ + less.writeError(error); + process.exit(1); + } + var fd = fs.openSync(outputFile, "w"); + + fs.write(fd, tree.toCSS({compress: false}).replace(/\n/g, "\r\n"), 0, "utf-8", function(f){ + fs.close(fd); + console.log("writing:", outputFile); + endProcess(); + }); + }); +} + +function getLessFiles(folder){ + var filesMap = {}; + var filesArray = fs.readdirSync(folder); + filesArray = filesArray.filter(function(file){ + return file && /\.less$/.test(file) && !/variables\.less$/.test(file) && !/css3\.less$/.test(file) + && !/variables_rtl\.less$/.test(file); + }); + + filesArray = filesArray.map(function(file){ + filesMap[file] = folder + "/" + file; + filesMap[folder + "/" + file] = file; + return filesMap[file]; + }); + + return {array: filesArray, dic: filesMap}; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/compile.sh b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/compile.sh new file mode 100644 index 00000000..c13822d8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/utils/compile.sh @@ -0,0 +1,2 @@ +export NODE_PATH=../../../../util/less/lib +node compile.js diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion-compat.css new file mode 100644 index 00000000..cea43a97 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion-compat.css @@ -0,0 +1,16 @@ + +.mblAccordionTitleSelected { + background-color: #e2e2e2; +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion.css new file mode 100644 index 00000000..62038f79 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion.css @@ -0,0 +1,97 @@ + +.mblAccordion { + border-style: outset; + border-width: 1px; + border: none; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #cccccc; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + border: none; + background-color: transparent; + background-image: none; + font-weight: normal; + color: #ffffff; + font-size: 15pt; + margin-top: 8px; + margin-bottom: 8px; +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: #ffffff; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + border: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} +.mblAccordionPane { + margin-top: -5px; + padding-left: 50px; + background-color: transparent; + overflow: hidden; + position: relative; +} +.mblAccordionPane:before { + content: ''; + position: absolute; + height: 100%; + width: 2px; + border-left: 2px solid #ffffff; + left: 40px; + z-index: -1; +} +.mblAccordionTitleLabel:active { + color: Highlight; +} +.mblAccordionIconParent { + margin-left: 0px; +} +.mblAccordionRoundRect { + border: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion.less new file mode 100644 index 00000000..5d2d714a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion.less @@ -0,0 +1,31 @@ +@import "variables.less"; +@import "../common/Accordion.less"; + +.mblAccordionPane { + margin-top: -5px; + padding-left: 50px; + background-color: @win-control-bg-color; + overflow: hidden; + position: relative; + &:before { + content: ''; + position: absolute; + height: 100%; + width: 2px; + border-left: 2px solid @win-foreground-color; + left: 40px; + z-index: -1; + } +} + +.mblAccordionTitleLabel:active { + color: @win-accent-color; +} + +.mblAccordionIconParent { + margin-left: 0px; +} + +.mblAccordionRoundRect { + border: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion_rtl.css new file mode 100644 index 00000000..5b9612f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Accordion_rtl.css @@ -0,0 +1,6 @@ + +.mblAccordionIconParentRtl { + float: right; + -webkit-transform: scaleX(-1); + transform: scaleX(-1); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Button-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Button-compat.css new file mode 100644 index 00000000..1aeebfd8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Button-compat.css @@ -0,0 +1,41 @@ + +.mblButton { + background-image: url(compat/button-bg.png); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblBlueButton { + background-image: url(compat/blue-button-bg.png); +} +.mblBlueButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.mblRedButton { + background-image: url(compat/red-button-bg.png); +} +.mblRedButtonSelected { + background-image: url(compat/red-button-sel-bg.png); +} +.dj_gecko .mblButton { + background-image: none; +} +.dj_gecko .mblButtonSelected { + background-image: ''; +} +.dj_gecko .mblBlueButton { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #2362dd 100%); +} +.dj_gecko .mblBlueButtonSelected { + background-image: ''; +} +.dj_gecko .mblRedButton { + background-image: none; +} +.dj_gecko .mblRedButtonSelected { + background-image: ''; +} +.dj_ff3 .mblButton { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Button.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Button.css new file mode 100644 index 00000000..3607fa56 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Button.css @@ -0,0 +1,50 @@ + +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border: 2px solid #ffffff; + border-radius: 0; + margin-top: 8px; + margin-bottom: 8px; + color: #ffffff; + background-color: transparent; + font-size: 9pt; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + background-image: none; + line-height: 0; + text-transform: lowercase; + -ms-user-select: none; + height: 32px; + padding-bottom: 3px; + text-decoration: none; +} +.mblButtonSelected { + color: #ffffff; + background-color: Highlight; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #2362dd 100%); + color: white; +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ee4115 100%); + color: white; +} +.mblButton:not([disabled]):active { + background-color: Highlight; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Button.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Button.less new file mode 100644 index 00000000..bdfcc926 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Button.less @@ -0,0 +1,6 @@ +@import "variables.less"; +@import "../common/Button.less"; + +.mblButton:not([disabled]):active { + background-color: @win-accent-color; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Carousel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Carousel.css new file mode 100644 index 00000000..57e43929 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Carousel.css @@ -0,0 +1,77 @@ + +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Carousel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Carousel_rtl.css new file mode 100644 index 00000000..1fe79bbd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Carousel_rtl.css @@ -0,0 +1,13 @@ + +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 4px 2px 0px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/CheckBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/CheckBox-compat.css new file mode 100644 index 00000000..ddc2bdd4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/CheckBox-compat.css @@ -0,0 +1,38 @@ + +.mblCheckBox { + background-image: url(compat/button-bg.png); +} +.mblCheckBoxSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblCheckBox { + background-image: none; + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: ''; +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: none; +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: ''; +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/CheckBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/CheckBox.css new file mode 100644 index 00000000..0eba6e69 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/CheckBox.css @@ -0,0 +1,83 @@ + +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border: 2px solid #ffffff; + border-radius: 0; + opacity: 0; + margin: 0; + margin-top: 8px; + margin-bottom: 8px; + transform: none; + z-index: 1; +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: black; +} +.mblCheckBoxChecked.mblCheckBoxSelected::after, +.mblCheckBox:checked.mblCheckBoxSelected::after { + border-color: white; +} +.mblCheckBox + .mblCheckableInputDecorator:before { + content: ''; + width: 20px; + height: 20px; + position: absolute; + border: 2px solid #ffffff; + background-color: transparent; + margin-left: -25px; + z-index: 0; + border-radius: 0; + margin-top: 8px; + margin-bottom: 8px; +} +.mblCheckBox:not([disabled]):active + .mblCheckableInputDecorator:before, +.mblCheckBox:not([disabled]) + .mblCheckableInputDecorator:active:before { + background-color: Highlight; +} +.mblCheckBoxChecked + .mblCheckableInputDecorator:before { + background-image: url("images/dark/check.png"); + background-position: 50% 50%; + background-size: 32px 32px; + background-repeat: no-repeat; +} +.mblCheckBox[disabled] + .mblCheckableInputDecorator:before { + border-color: #808080; +} +.mblCheckBox[disabled].mblCheckBoxChecked + .mblCheckableInputDecorator:before { + background-image: url("images/check-disabled.png"); + background-position: 50% 50%; + background-size: 32px 32px; + background-repeat: no-repeat; +} +.mblCheckableInputContainer + label { + color: #ffffff; + margin: 0 5px 0 5px; + margin-top: 8px; + margin-bottom: 8px; + -ms-user-select: none; + display: inline-block; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/CheckBox.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/CheckBox.less new file mode 100644 index 00000000..4bcbcc5d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/CheckBox.less @@ -0,0 +1,37 @@ +@import "variables.less"; +@import "../common/CheckBox.less"; + +.mblCheckBox + .mblCheckableInputDecorator { + &:before { + .mblCheckRadioBorder; + } +} + +.mblCheckBox:not([disabled]) { + &:active + .mblCheckableInputDecorator:before, + & + .mblCheckableInputDecorator:active:before { + background-color: @win-accent-color; + } +} + +.mblCheckBoxChecked + .mblCheckableInputDecorator { + &:before { + .mblImage(@imgCheckUrl); + } +} + +.mblCheckBox[disabled] { + & + .mblCheckableInputDecorator { + &:before { + border-color: @win-disabled-color; + } + } + + &.mblCheckBoxChecked + .mblCheckableInputDecorator:before { + .mblImage("images/check-disabled.png"); + } +} + +.mblCheckableInputContainer + label { + .mblCheckRadioLabel; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox-compat.css new file mode 100644 index 00000000..b800b961 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox-compat.css @@ -0,0 +1,7 @@ + +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: none; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox.css new file mode 100644 index 00000000..adfaa129 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox.css @@ -0,0 +1,87 @@ + +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: none; + border-radius: 0; + box-shadow: none; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border: none; + border-radius: 0; + background-color: #1f1f1f; + color: #ffffff; + width: 100% !important; + height: calc(100% - 20px) !important; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + border: none; + color: inherit; + font-size: 15pt; + line-height: 1.4; + padding-left: 15px; + -ms-user-select: none; + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; +} +.mblComboBoxMenuItemSelected { + color: Highlight; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} +.mblComboBoxMenuPopup { + background-color: #1f1f1f; + color: #ffffff; + width: 100%; + height: calc(100% - 50px) !important; + padding: 50px 0 0 0; + left: 0px !important; + -ms-touch-action: none; +} +.mblComboBoxMenuPopup:before { + content: 'CHOOSE AN ITEM'; + position: absolute; + top: 20px; + left: 15px; + font-weight: 600; +} +.mblComboBoxMenu > div { + width: 100%; +} +.mblComboBoxMenuItem:active { + color: Highlight; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox.less new file mode 100644 index 00000000..081ca2ff --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox.less @@ -0,0 +1,28 @@ +@import "variables.less"; +@import "../common/ComboBox.less"; + +.mblComboBoxMenuPopup { + background-color: @win-dialog-color; + color: @win-foreground-color; + width: 100%; + height: calc(~'100% - @{mbl-combo-box-padding-top}') !important; + padding: @mbl-combo-box-padding-top 0 0 0; + left: 0px !important; + -ms-touch-action: none; + + &:before { + content: 'CHOOSE AN ITEM'; + position: absolute; + top: @mbl-combo-box-title-top; + left: @default-padding-left; + font-weight: 600; + } +} + +.mblComboBoxMenu > div { + width: 100%; +} + +.mblComboBoxMenuItem:active { + color: @win-accent-color; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox_rtl.css new file mode 100644 index 00000000..10932a96 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ComboBox_rtl.css @@ -0,0 +1,4 @@ + +.mblComboBoxMenuItemRtl { + text-align: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/DatePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/DatePicker.css new file mode 100644 index 00000000..f28940d4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/DatePicker.css @@ -0,0 +1,300 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblSpinWheel { + background-image: none !important; + border: none !important; + margin: auto 0; + height: 400px !important; + width: auto !important; + display: -ms-flexbox; + color: #ffffff; +} +.mblSpinWheel .mblSpinWheelSlot { + -ms-flex-preferred-size: auto; + border: none; + -ms-user-select: none; + text-align: left !important; + overflow: hidden; + margin: 0px !important; + width: 100px !important; +} +.mblSpinWheel .mblSpinWheelSlot:empty { + display: none !important; +} +.mblSpinWheel .mblSpinWheelSlot:not([widgetId]) { + top: 150px; + height: 94px !important; + width: 86px !important; + padding: 0 0 0 8px !important; + margin-right: 6px !important; + background-color: #666666; + line-height: 4.5; +} +.mblSpinWheel .mblSpinWheelSlotContainer:not(.mblSelectedSlot) .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem) { + opacity: 0; + -ms-transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotContainer:not(.mblSelectedSlot) .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem):before { + opacity: 0; + transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem) { + opacity: 1; + -ms-transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem):before { + opacity: 1; + transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotLabel { + border: none; + margin: 0px; + color: #808080; + height: 100px; + line-height: 3.5; + font-size: 17pt; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSelectedSlotItem { + color: #ffffff; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSelectedSlotItem:before { + background-color: #808080; + z-index: -1; +} +.mblSpinWheel .mblSpinWheelSlotLabel:before { + content: ''; + position: absolute; + width: 90px; + height: 90px; + border: 2px solid #808080; + left: 0px; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSpinWheelSlotLabelGray { + opacity: 0.3; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSpinWheelSlotLabelGray:before { + opacity: 0.3; +} +.mblSpinWheel .mblSpinWheelBar { + display: none; +} +.mblSpinWheel .mblSpinWheelSlotTouch { + background-color: #000000; + opacity: 0.01; +} +.mblTooltip.mblOpener .mblSpinWheelDatePicker { + left: calc(50% - 150px); + position: absolute !important; + top: 50%; + bottom: 50%; + width: 300px !important; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 17pt; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +.mblValuePicker { + margin-top: 8px; + margin-bottom: 8px; +} +.mblValuePickerSlot { + border: 2px solid #ffffff; +} +.mblValuePickerSlot:first-child { + margin-left: 0px !important; +} +.mblValuePickerSlotInputArea { + border-top: 2px solid #ffffff; + border-bottom: 2px solid #ffffff; +} +.mblValuePickerSlotInput { + color: #ffffff; +} +.mblValuePickerSlotButton { + color: #ffffff; + border-radius: 0px; +} +.mblValuePickerSlotButton .mblValuePickerSlotIcon { + width: 100%; + height: 100%; + top: 0px; + display: -ms-flexbox; + -ms-flex-pack: center; + -ms-flex-align: center; +} +.mblValuePickerSlotButton .mblValuePickerSlotIcon:active { + background-color: Highlight; +} +.mblValuePickerSlotButton > div > div { + position: relative; + background-color: #ffffff; + left: 0px; + top: 0px; +} +.mblValuePickerSlotButton > div > div > div { + background-color: #ffffff; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeCategory.css new file mode 100644 index 00000000..9bbb0ee1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeCategory.css @@ -0,0 +1,31 @@ + +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + display: inline-block; + padding: 0 0 0 5px; + font-size: 15pt; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + font-weight: 200; + line-height: 2; + height: 43px; + width: 38px; + background-color: Highlight; + border: none; + color: #ffffff; + text-transform: lowercase; + overflow: visible; +} +.mblEdgeToEdgeCategoryLong { + width: 100%; +} +.mblEdgeToEdgeCategory:first-of-type { + margin-top: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeCategory.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeCategory.less new file mode 100644 index 00000000..db5701c6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeCategory.less @@ -0,0 +1,10 @@ +@import "variables.less"; +@import "../common/EdgeToEdgeCategory.less"; + +.mblEdgeToEdgeCategoryLong { + width: 100%; +} + +.mblEdgeToEdgeCategory:first-of-type { + margin-top: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeList.css new file mode 100644 index 00000000..74bd470c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeList.css @@ -0,0 +1,10 @@ + +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: transparent; + padding: 0px; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #bfbfbf; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeList.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeList.less new file mode 100644 index 00000000..227627cc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/EdgeToEdgeList.less @@ -0,0 +1,2 @@ +@import "variables.less"; +@import "../common/EdgeToEdgeList.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/FixedSplitter.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/FixedSplitter.css new file mode 100644 index 00000000..3c88bebb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/FixedSplitter.css @@ -0,0 +1,21 @@ + +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/FormLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/FormLayout.css new file mode 100644 index 00000000..19a22b9b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/FormLayout.css @@ -0,0 +1,160 @@ + +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/FormLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/FormLayout_rtl.css new file mode 100644 index 00000000..44ebb14d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/FormLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/GridLayout.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/GridLayout.css new file mode 100644 index 00000000..ebdc391f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/GridLayout.css @@ -0,0 +1,24 @@ + +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/GridLayout_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/GridLayout_rtl.css new file mode 100644 index 00000000..3f5bdd0d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/GridLayout_rtl.css @@ -0,0 +1,4 @@ + +.mblGridLayoutRtl > div { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Heading-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Heading-compat.css new file mode 100644 index 00000000..8cf323fa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Heading-compat.css @@ -0,0 +1,10 @@ + +.mblHeading { + background-image: url(compat/heading-bg.png); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Heading.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Heading.css new file mode 100644 index 00000000..a5127efb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Heading.css @@ -0,0 +1,74 @@ + +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + border: none; + color: #ffffff; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + font-weight: 400; + text-align: left; + font-size: 17pt; + overflow: visible; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +h1, +h2, +h3, +h4, +h5, +h6 { + line-height: normal; + font-weight: 400; + margin: 0; +} +h1.mblHeading { + font-size: 19pt; +} +h2.mblHeading { + font-size: 17pt; +} +h3.mblHeading { + font-size: 15pt; +} +h4.mblHeading { + font-size: 11pt; +} +h5.mblHeading { + font-size: 10pt; +} +h6.mblHeading { + font-size: 9pt; +} +.mblHeading .mblToolBarButton ~ .mblHeadingDivTitle { + text-align: center; +} +.mblHeading .mblToolBarButton.mblToolBarButtonHasRightArrow { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Heading.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Heading.less new file mode 100644 index 00000000..15c00f07 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Heading.less @@ -0,0 +1,42 @@ +@import "variables.less"; +@import "../common/Heading.less"; + +h1, h2, h3, h4, h5, h6 { + line-height: normal; + font-weight: 400; + margin: 0; +} + +h1.mblHeading { + font-size: @win-font-size-huge; +} + +h2.mblHeading { + font-size: @win-font-size-extra-large; +} + +h3.mblHeading { + font-size: @win-font-size-large; +} + +h4.mblHeading { + font-size: @win-font-size-medium-large; +} + +h5.mblHeading { + font-size: @win-font-size-medium; +} + +h6.mblHeading { + font-size: @win-font-size-normal; +} + +.mblHeading { + & .mblToolBarButton ~ .mblHeadingDivTitle { + text-align: center; + } + + & .mblToolBarButton.mblToolBarButtonHasRightArrow { + float: right; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer-compat.css new file mode 100644 index 00000000..8a99f941 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer-compat.css @@ -0,0 +1,59 @@ + +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url(compat/icon-content-heading-bg.png); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer-compat.less new file mode 100644 index 00000000..e2df9856 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonColorButtons-compat.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross-compat.css"); + +@import "variables.less"; +@import "../common/IconContainer-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer.css new file mode 100644 index 00000000..6bf2579b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer.css @@ -0,0 +1,468 @@ + +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +@-webkit-keyframes mblVibrate{ + 0%{ + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: scale(0.01); } +} +@-webkit-keyframes mblShrink0{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: translate(-40%,-70%) scale(0.01); } +} +@-webkit-keyframes mblShrink1{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: translate(-14%,-70%) scale(0.01); } +} +@-webkit-keyframes mblShrink2{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: translate(14%,-70%) scale(0.01); } +} +@-webkit-keyframes mblShrink3{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: translate(40%,-70%) scale(0.01); } +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; + color: black; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: #ffffff; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} +.mblIconItemPaneHeading { + display: -ms-flexbox; + -ms-flex-direction: column-reverse; + text-shadow: none; + background-image: none; + border: none; + position: relative; + height: auto; + padding: 0px; +} +.mblIconContainer { + margin: 0px; +} +.mblIconItemPane { + background-color: #1f1f1f; + color: white !important; + position: fixed; + width: 100%; + top: 0px; + z-index: 100; + padding-left: 15px; + padding-right: 10px; + margin-left: -15px; + display: -ms-flexbox; + -ms-flex-direction: column-reverse; +} +.mblContent { + padding: 8px 0px; +} +.mblIconItemPaneIcon { + position: relative; + margin-top: 8px; + margin-bottom: 8px; +} +.mblIconItemPaneIcon:not([title='']) .mblDomButton { + display: none; +} +.mblCloseButton { + display: inline !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer.less new file mode 100644 index 00000000..204eb351 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer.less @@ -0,0 +1,51 @@ +@import url("../common/domButtons/DomButtonColorButtons.css"); +@import url("../common/domButtons/DomButtonBlackCircleCross.css"); +@import url("../common/IconContainer_keyframes.css"); + +@import "variables.less"; +@import "../common/IconContainer.less"; + +.mblIconItemPaneHeading { + display: -ms-flexbox; + -ms-flex-direction: column-reverse; + text-shadow: none; + background-image: none; + border: none; + position: relative; + height: auto; + padding: 0px; +} + +.mblIconContainer { + margin: 0px; +} + +.mblIconItemPane { + background-color: @win-dialog-color; + color: white !important; + position: fixed; + width: 100%; + top: 0px; + z-index: 100; + padding-left: @default-padding-left; + padding-right: @default-padding-right; + margin-left: -@default-padding-left; + display: -ms-flexbox; + -ms-flex-direction: column-reverse; +} + +.mblContent { + padding: 8px 0px; +} + +.mblIconItemPaneIcon { + position: relative; + .default-vertical-margin; + &:not([title='']) .mblDomButton { + display: none; + } +} + +.mblCloseButton { + display: inline !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer_rtl.css new file mode 100644 index 00000000..0aa248fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconContainer_rtl.css @@ -0,0 +1,13 @@ + +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: -2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu-compat.css new file mode 100644 index 00000000..33af7942 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu-compat.css @@ -0,0 +1,31 @@ + +.mblIconMenu { + background-color: #a0a0a0; +} +.mblIconMenuItemSel { + background-color: Highlight; +} +.dj_gecko .mblIconMenu { + background-color: rgba(160, 160, 160, 0.85); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 3px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 3px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 3px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 3px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu.css new file mode 100644 index 00000000..26b2b4a2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu.css @@ -0,0 +1,62 @@ + +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 3px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-color: rgba(160, 160, 160, 0.85); + border: 1px solid #869cbf; + margin: 0px; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid rgba(192, 192, 192, 0.85); + border-bottom: 1px solid rgba(192, 192, 192, 0.85); +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 3px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 3px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 3px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 3px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 10pt; + color: #ffffff; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-color: Highlight; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu_rtl-compat.css new file mode 100644 index 00000000..63807bda --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu_rtl-compat.css @@ -0,0 +1,17 @@ + +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-right-radius: 3px; + -moz-border-top-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-left-radius: 3px; + -moz-border-top-right-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-right-radius: 3px; + -moz-border-bottom-left-radius: 0px; +} +.dj_ff3 .mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-left-radius: 3px; + -moz-border-bottom-right-radius: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu_rtl.css new file mode 100644 index 00000000..52791b50 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/IconMenu_rtl.css @@ -0,0 +1,23 @@ +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid rgba(192, 192, 192, 0.85); +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-right-radius: 3px; + border-top-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0px; + border-top-left-radius: 3px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem-compat.css new file mode 100644 index 00000000..7e82b6f9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem-compat.css @@ -0,0 +1,24 @@ + +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: Highlight; +} +.dj_gecko .mblListItemSelected { + background-image: none; +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem-compat.less new file mode 100644 index 00000000..332107ef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem-compat.less @@ -0,0 +1,5 @@ +@import url("../common/domButtons/DomButtonGrayArrow-compat.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck-compat.css"); + +@import "variables.less"; +@import "../common/ListItem-compat.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem.css new file mode 100644 index 00000000..9348c621 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem.css @@ -0,0 +1,183 @@ + +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 43px; + list-style-type: none; + line-height: 43px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border: none; + background-color: transparent; + color: #ffffff; + font-size: 15pt; + padding: 0; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: Highlight; +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked { + color: #314e84; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + margin-top: 12px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblListItem { + margin-top: 8px; + margin-bottom: 8px; +} +.mblListItem .mblListItemLabel:active { + color: Highlight; +} +.mblListItem .mblListItemLabel:first-child { + margin-left: 53px; + overflow: visible; +} +.mblListItem .mblListItemLabel:first-child:before { + content: ''; + width: 43px; + height: 43px; + background-color: #1f1f1f; + position: absolute; + margin-left: -53px; +} +.mblListItem .mblListItemIcon { + height: 43px; + width: 43px; + margin: 0 10px 0 0; +} +.mblListItem .mblListItemEmptyIcon { + padding-top: 43px; + background-color: #1f1f1f; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem.less new file mode 100644 index 00000000..1a168b4b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem.less @@ -0,0 +1,40 @@ +@import url("../common/domButtons/DomButtonGrayArrow.css"); +@import url("../common/domButtons/DomButtonDarkBlueCheck.css"); + +@import "variables.less"; +@import "../common/ListItem.less"; + +.mblListItem { + .default-vertical-margin; + + & .mblListItemLabel { + &:active { + color: @win-accent-color; + } + + &:first-child { + margin-left: @mbl-list-item-height + 10px; + overflow: visible; + + &:before { + content: ''; + width: @mbl-list-item-height; + height: @mbl-list-item-height; + background-color: @win-app-bar-color; + position: absolute; + margin-left: -@mbl-list-item-height - 10px; + } + } + } + + & .mblListItemIcon { + height: @mbl-list-item-height; + width: @mbl-list-item-height; + margin: 0 10px 0 0; + } + + & .mblListItemEmptyIcon { + padding-top: @mbl-list-item-height; + background-color: @win-app-bar-color; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem_rtl.css new file mode 100644 index 00000000..3f946ae3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ListItem_rtl.css @@ -0,0 +1,26 @@ + +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Opener-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Opener-compat.css new file mode 100644 index 00000000..427aaea2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Opener-compat.css @@ -0,0 +1,53 @@ + +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Opener.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Opener.css new file mode 100644 index 00000000..16473d7d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Opener.css @@ -0,0 +1,358 @@ + +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + position: fixed !important; + top: 0px !important; + background-color: #1f1f1f; + background-image: none; + padding: 12px 10px 12px 15px; + width: calc(100% - 15px); +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #869cbf; + border-radius: 3px; + background-color: #dedede; + background-image: none; +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #f6f6f6; + background-image: none; + color: black; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #f6f6f6; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adadad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adadad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adadad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adadad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #dedede; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #dedede; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #dedede; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #dedede; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblOpener { + background-color: #1f1f1f; + width: calc(100% - 10px - 15px); + height: calc(100% - 50px); + border: none; + top: 0px !important; + left: 0 !important; + margin: 0 !important; + position: fixed; + padding: 50px 10px 0 15px; + opacity: 1; + -ms-touch-action: none; +} +.mblOpener .mblTooltipAnchor, +.mblOpener .mblOpenerUnderlay { + display: none; +} +.mblOpener .mblHeading { + min-height: 50px; + position: absolute; + bottom: 0px; + text-transform: uppercase; + font-size: 9pt; + width: calc(100% - 10px - 15px); + z-index: 3; +} +.mblOpener .mblHeading .mblHeadingDivTitle { + text-align: left; + position: fixed; + top: 0px; + width: auto; + padding-left: 15px; +} +.mblOpener .mblHeading ~ .mblScrollableView { + height: calc(100% - 60px) !important; +} +.mblOpener .mblHeading .mblButton, +.mblOpener .mblHeading .mblToolBarButton { + bottom: 10px; + border: 2px solid #ffffff; + position: absolute; + width: 100%; + max-width: 45%; + padding: 0px; +} +.mblOpener .mblHeading .mblButton:nth-of-type(odd), +.mblOpener .mblHeading .mblToolBarButton:nth-of-type(odd) { + left: 0px; +} +.mblOpener .mblHeading .mblButton:nth-of-type(even), +.mblOpener .mblHeading .mblToolBarButton:nth-of-type(even) { + left: auto !important; + right: 0px; +} +.mblOpener .dijitColorPalette { + width: calc(100% - 10px - 15px); + height: calc(100% - 50px); +} +.mblOpener .dijitColorPalette table { + width: 100%; + height: 100%; + padding: 0px !important; +} +.mblOpener .dijitColorPalette tbody { + width: 100%; + height: 100%; + position: absolute; +} +.mblOpener .dijitColorPalette tr { + display: -ms-flexbox; + -ms-flex: 1; + -ms-flex-align: center; +} +.mblOpener .dijitColorPalette td { + -ms-flex: 1; + display: inline-block; +} +.mblOpener .dijitColorPalette .dijitPaletteImg { + border: none !important; + padding: 2px !important; +} +.mblOpener .dijitColorPalette .dijitColorPaletteSwatch { + border-radius: 0px!important; + border: 2px solid transparent; +} +.mblOpener .dijitColorPalette .dijitPaletteCellSelected .dijitPaletteImg { + margin: 2px 0px !important; +} +.mblOpener .dijitColorPalette .dijitPaletteCellSelected .dijitColorPaletteSwatch { + border: 2px solid Highlight !important; +} +@media screen and (orientation: landscape) { + .dijitColorPalette tbody { + display: -ms-flexbox; + -ms-flex-direction: column; + } +} +.mblTooltip:not(.mblOpener).mblTooltipAbove .mblSpinWheel { + bottom: auto; +} +.mblTooltip:not(.mblOpener).mblTooltipBelow .mblSpinWheel { + top: auto; +} +.mblTooltip:not(.mblOpener).mblTooltipBefore .mblSpinWheel { + left: 0px; +} +.mblTooltip:not(.mblOpener).mblTooltipAfter .mblSpinWheel { + left: auto; + right: 0px; +} +.mblOpenerUnderlay { + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Overlay-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Overlay-compat.css new file mode 100644 index 00000000..6a884395 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Overlay-compat.css @@ -0,0 +1,14 @@ + +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Overlay.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Overlay.css new file mode 100644 index 00000000..1a7cd0e3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Overlay.css @@ -0,0 +1,94 @@ +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + position: fixed !important; + top: 0px !important; + background-color: #1f1f1f; + background-image: none; + padding: 12px 10px 12px 15px; + width: calc(100% - 15px); +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Overlay.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Overlay.less new file mode 100644 index 00000000..e49ea9eb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Overlay.less @@ -0,0 +1,5 @@ +@import url("../common/transitions/coverv.css"); +@import url("../common/transitions/revealv.css"); + +@import "variables.less"; +@import "../common/Overlay.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/PageIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/PageIndicator-compat.css new file mode 100644 index 00000000..29d4f8ab --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/PageIndicator-compat.css @@ -0,0 +1,4 @@ + +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/PageIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/PageIndicator.css new file mode 100644 index 00000000..0b40e78d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/PageIndicator.css @@ -0,0 +1,23 @@ + +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressBar-compat.css new file mode 100644 index 00000000..cbe64dfd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressBar-compat.css @@ -0,0 +1,9 @@ + +.mblProgressBarProgress { + background-color: Highlight; +} +.dj_gecko .mblProgressBarProgress { + -moz-transition-property: width; + -moz-transition-duration: 0.25s; + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressBar.css new file mode 100644 index 00000000..78b09ce5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressBar.css @@ -0,0 +1,48 @@ + +.mblProgressBar { + position: relative; + height: 3px; + background-color: transparent; + border: none; + margin-top: 8px; + margin-bottom: 8px; +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + height: 3px; + border: none; + background-color: Highlight; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: 3px; +} +.mblProgressBar:before { + content: ''; + position: absolute; + height: 3px; + width: 100%; + background-color: Highlight; + opacity: 0.2; +} +.mblProgressBar[disabled]:before { + background-color: #808080; +} +.mblProgressBar[disabled] .mblProgressBarProgress { + background-color: #808080; +} +.mblProgressBar[disabled] .mblProgressBarMsg { + color: #808080; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressBar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressBar.less new file mode 100644 index 00000000..cec8c5de --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressBar.less @@ -0,0 +1,27 @@ +@import "variables.less"; +@import "../common/ProgressBar.less"; + +.mblProgressBar { + &:before { + content: ''; + position: absolute; + height: @mbl-progressBar-height; + width: 100%; + background-color: @win-accent-color; + opacity: 0.2; + } +} + +.mblProgressBar[disabled] { + &:before{ + background-color: @win-disabled-color; + } + + .mblProgressBarProgress { + background-color: @win-disabled-color; + } + + .mblProgressBarMsg { + color: @win-disabled-color; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator-compat.css new file mode 100644 index 00000000..091d2c35 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator-compat.css @@ -0,0 +1,83 @@ + +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator.css new file mode 100644 index 00000000..c91e7657 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator.css @@ -0,0 +1,160 @@ + +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} +.mblHeading .mblProgressIndicator { + right: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator.less new file mode 100644 index 00000000..92a13da3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator.less @@ -0,0 +1,6 @@ +@import "variables.less"; +@import "../common/ProgressIndicator.less"; + +.mblHeading .mblProgressIndicator { + right: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator_rtl.css new file mode 100644 index 00000000..e611fc4e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ProgressIndicator_rtl.css @@ -0,0 +1,14 @@ + +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 0px; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RadioButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RadioButton-compat.css new file mode 100644 index 00000000..ae88f747 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RadioButton-compat.css @@ -0,0 +1,32 @@ + +.mblRadioButton { + background-image: url(compat/button-bg.png); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url(compat/button-chk-bg.png); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url(compat/blue-button-sel-bg.png); +} +.dj_gecko .mblRadioButton { + background-image: none; + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: none; +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: ''; +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RadioButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RadioButton.css new file mode 100644 index 00000000..cbbb8beb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RadioButton.css @@ -0,0 +1,74 @@ + +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + opacity: 0; + margin: 0; + margin-top: 8px; + margin-bottom: 8px; + transform: none; + z-index: 1; +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: black; +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: white; +} +.mblRadioButton + .mblCheckableInputDecorator:before { + content: ''; + width: 20px; + height: 20px; + position: absolute; + border: 2px solid #ffffff; + background-color: transparent; + margin-left: -25px; + z-index: 0; + border-radius: 15px; + margin-top: 8px; + margin-bottom: 8px; +} +.mblRadioButton:not([disabled]):active + .mblCheckableInputDecorator:before, +.mblRadioButton:not([disabled]) + .mblCheckableInputDecorator:active:before { + background-color: Highlight; +} +.mblRadioButtonChecked + .mblCheckableInputDecorator:before { + background-image: url("images/dark/radiobtn.png"); + background-position: 50% 50%; + background-size: 13px 13px; + background-repeat: no-repeat; +} +.mblRadioButton[disabled] + .mblCheckableInputDecorator:before { + border-color: #808080; +} +.mblRadioButton[disabled].mblRadioButtonChecked + .mblCheckableInputDecorator:before { + background-image: url("images/radiobtn-disabled.png"); + background-position: 50% 50%; + background-size: 13px 13px; + background-repeat: no-repeat; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RadioButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RadioButton.less new file mode 100644 index 00000000..f2b7077b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RadioButton.less @@ -0,0 +1,33 @@ +@import "variables.less"; +@import "../common/RadioButton.less"; + +.mblRadioButton + .mblCheckableInputDecorator { + &:before { + .mblCheckRadioBorder(15px); + } +} + +.mblRadioButton:not([disabled]) { + &:active + .mblCheckableInputDecorator:before, + & + .mblCheckableInputDecorator:active:before { + background-color: @win-accent-color; + } +} + +.mblRadioButtonChecked + .mblCheckableInputDecorator { + &:before { + .mblImage(@imgRadioBtnUrl, 13px 13px); + } +} + +.mblRadioButton[disabled] { + & + .mblCheckableInputDecorator { + &:before { + border-color: @win-disabled-color; + } + } + + &.mblRadioButtonChecked + .mblCheckableInputDecorator:before { + .mblImage("images/radiobtn-disabled.png", 13px 13px); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRect-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRect-compat.css new file mode 100644 index 00000000..db4353c0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRect-compat.css @@ -0,0 +1,72 @@ + +.mblRoundRect.mblShadow { + box-shadow: none; +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: none; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #cccccc; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #cccccc; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #cccccc; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #cccccc; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRect.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRect.css new file mode 100644 index 00000000..741d38fa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRect.css @@ -0,0 +1,17 @@ + +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #cccccc; + border-radius: 8px; + background-color: #ffffff; + border: none; + background-color: transparent; + border-radius: 0px; + margin: 0px; + padding: 0px; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: none; + box-shadow: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectCategory.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectCategory.css new file mode 100644 index 00000000..cce9acdf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectCategory.css @@ -0,0 +1,12 @@ + +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #ffffff; + margin: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectCategory_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectCategory_rtl.css new file mode 100644 index 00000000..8e8a8e88 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectCategory_rtl.css @@ -0,0 +1,4 @@ + +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectList-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectList-compat.css new file mode 100644 index 00000000..a65cdf6d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectList-compat.css @@ -0,0 +1,77 @@ + +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #cccccc; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #cccccc; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #cccccc; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #cccccc; + margin: 0 5px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectList.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectList.css new file mode 100644 index 00000000..78e3de3b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectList.css @@ -0,0 +1,28 @@ + +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #cccccc; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblRoundRectList { + padding: 0; + border: none; + background-color: transparent; + margin: 0px; +} +.mblRoundRectList .mblListItem { + border-radius: 0px !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectList.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectList.less new file mode 100644 index 00000000..b7e5b1ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/RoundRectList.less @@ -0,0 +1,13 @@ +@import "variables.less"; +@import "../common/RoundRectList.less"; + +.mblRoundRectList { + padding: 0; + border: none; + background-color: transparent; + margin: 0px; + + & .mblListItem { + border-radius: 0px !important; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ScrollablePane.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ScrollablePane.css new file mode 100644 index 00000000..a7a6fe30 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ScrollablePane.css @@ -0,0 +1,19 @@ + +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} +.mblScrollableView:not(.mblView) { + padding: 0px; +} +.mblView.mblScrollableView .mblScrollableViewContainer { + min-width: calc(100% - 15px - 10px) !important; + width: auto !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ScrollablePane.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ScrollablePane.less new file mode 100644 index 00000000..f8f4962d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ScrollablePane.less @@ -0,0 +1,11 @@ +@import "variables.less"; +@import "../common/ScrollablePane.less"; + +.mblScrollableView:not(.mblView) { + padding: 0px; +} + +.mblView.mblScrollableView .mblScrollableViewContainer { + min-width: calc(~'100% - @{default-padding-left} - @{default-padding-right}') !important; + width: auto !important; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SearchBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SearchBox-compat.css new file mode 100644 index 00000000..bbd864fc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SearchBox-compat.css @@ -0,0 +1,22 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 0; +} +.mblSearchBox { + height: auto; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + -moz-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SearchBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SearchBox.css new file mode 100644 index 00000000..46818f27 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SearchBox.css @@ -0,0 +1,94 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + display: block; + background-color: #bfbfbf; + border: 2px solid #ffffff; + margin-top: 8px; + margin-bottom: 8px; + border-radius: 0; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + border-color: #bfbfbf; + padding: 0 0 0 3px; + font-size: 9pt; + width: calc(100% - 10px); + height: 2em; +} +.mblTextBox:active, +.mblTextBox:focus { + border-color: Highlight; + background-color: white; + color: black; +} +.mblTextBox[disabled] { + border-color: #808080; + background-color: transparent; + color: #808080; +} +.mblTextBox::-ms-clear { + display: none; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: #bbc4d0; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid #bbc4d0; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 1em; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #bbc4d0), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #bbc4d0), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblSearchBox { + height: 2em; +} +.mblFilteredRoundRectListSearchBox, +.mblFilteredEdgeToEdgeListSearchBox { + padding: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SearchBox.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SearchBox.less new file mode 100644 index 00000000..82c5595f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SearchBox.less @@ -0,0 +1,11 @@ +@import "variables.less"; +@import "../common/SearchBox.less"; + +.mblSearchBox { + height: @win-text-input-height; +} + +.mblFilteredRoundRectListSearchBox, +.mblFilteredEdgeToEdgeListSearchBox { + padding: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SimpleDialog-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SimpleDialog-compat.css new file mode 100644 index 00000000..7d98d81a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SimpleDialog-compat.css @@ -0,0 +1,4 @@ + +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SimpleDialog.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SimpleDialog.css new file mode 100644 index 00000000..beca1773 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SimpleDialog.css @@ -0,0 +1,69 @@ + +.mblSimpleDialog { + position: absolute; + z-index: 100; + text-align: center; + outline: none; + background-color: #1f1f1f; + padding: 0 10px 12px 15px; + width: calc(100% - 15px - 10px); + margin: 0; + text-align: left; + left: 0px !important; +} +.mblSimpleDialogDecoration { + border-radius: 0; + background-color: #1f1f1f; + color: #ffffff; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 12px 0; + padding: 0; + width: auto; + font-size: 11pt; + font-weight: 400; + text-align: left; +} +.mblSimpleDialogText { + margin: 12px 0; + width: auto; + text-align: left; +} +.mblSimpleDialog { + position: fixed; + top: 0px !important; + -ms-touch-action: none; +} +.mblSimpleDialog .mblButton { + width: 100%; + max-width: 46%; +} +.mblSimpleDialog .mblButton:nth-of-type(odd) { + float: left; +} +.mblSimpleDialog .mblButton:nth-of-type(even) { + float: right; +} +.mblSimpleDialogCover { + position: fixed; + top: 0px !important; + -ms-touch-action: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SimpleDialog.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SimpleDialog.less new file mode 100644 index 00000000..98bc0a21 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SimpleDialog.less @@ -0,0 +1,27 @@ +@import "variables.less"; +@import "../common/SimpleDialog.less"; + +.mblSimpleDialog { + position: fixed; + top: 0px !important; + -ms-touch-action: none; + + & .mblButton { + width: 100%; + max-width: 46%; + + &:nth-of-type(odd) { + float: left; + } + + &:nth-of-type(even) { + float: right; + } + } +} + +.mblSimpleDialogCover { + position: fixed; + top: 0px !important; + -ms-touch-action: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Slider-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Slider-compat.css new file mode 100644 index 00000000..faf0305e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Slider-compat.css @@ -0,0 +1,40 @@ + +.mblSlider { + background-image: url(compat/slider-h-bg.png); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url(compat/slider-h-bar-bg.png); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url(compat/slider-handle-bg.png); +} +.mblSliderV { + background-color: #e2e2e2; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: Highlight; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: none; + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: none; +} +.dj_gecko .mblSliderHandle { + background-image: none; +} +.dj_ff3 .mblSlider { + -moz-border-radius: 0; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 0; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Slider.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Slider.css new file mode 100644 index 00000000..2619d37a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Slider.css @@ -0,0 +1,109 @@ + +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 0; + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border: none; + margin-top: 8px; + margin-bottom: 8px; + margin-left: 0px; + margin-right: 0px; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 0; +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 0; + border: none; + background-color: #ffffff; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSlider > div:before { + content: ''; + position: absolute; + width: 100%; + height: 100%; + background-color: #1f1f1f; +} +.mblSlider .mblSliderProgressBar { + background-color: Highlight; +} +.mblSlider .mblSliderTouchBox { + left: 0px; + top: -4px; + padding: 4px 0px; +} +.mblSlider[disabled] > div:before { + opacity: 0.5; +} +.mblSlider[disabled] .mblSliderProgressBar { + background-color: #808080; +} +.mblSliderV { + width: 0.5em !important; + height: 100% !important; +} +.mblSliderV > div { + min-height: 100px; +} +.mblSliderV .mblSliderHandle { + height: 0.5em; + width: 1.1em; + margin-top: -4px; + margin-left: -8px; +} +.mblSliderH { + min-width: 100px; + width: 100% !important; + height: 0.5em !important; +} +.mblSliderH .mblSliderHandle { + height: 1.1em; + width: 0.5em; + margin-top: -8px; + margin-left: -4px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Slider.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Slider.less new file mode 100644 index 00000000..05c74c99 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Slider.less @@ -0,0 +1,52 @@ +@import "variables.less"; +@import "../common/Slider.less"; + +.mblSlider { + > div:before { + content: ''; + position: absolute; + width: 100%; + height: 100%; + background-color: @win-app-bar-color; + } + + .mblSliderProgressBar { + background-color: @win-accent-color; + } + + & .mblSliderTouchBox { + left: 0px; + top: -4px; + padding: 4px 0px; + } +} + +.mblSlider[disabled] { + > div:before { + opacity: 0.5; + } + + .mblSliderProgressBar { + background-color: @win-disabled-color; + } +} + +.mblSliderV { + > div { + min-height: 100px; + }; + .mblSlider-size(@mbl-slider-height, 100%); + + & .mblSliderHandle { + .mblSliderHandle-markup("V"); + } +} + +.mblSliderH { + min-width: 100px; + .mblSlider-size(100%, @mbl-slider-height); + + & .mblSliderHandle { + .mblSliderHandle-markup("H"); + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel-compat.css new file mode 100644 index 00000000..4d605d58 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel-compat.css @@ -0,0 +1,36 @@ +.mblSpinWheel { + background-image: url(../common/compat/spinwheel-bg.png); +} +.mblSpinWheelBar { + background-image: url(../common/compat/spinwheel-bar.png); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel.css new file mode 100644 index 00000000..ba6c01f1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel.css @@ -0,0 +1,166 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblSpinWheel { + background-image: none !important; + border: none !important; + margin: auto 0; + height: 400px !important; + width: auto !important; + display: -ms-flexbox; + color: #ffffff; +} +.mblSpinWheel .mblSpinWheelSlot { + -ms-flex-preferred-size: auto; + border: none; + -ms-user-select: none; + text-align: left !important; + overflow: hidden; + margin: 0px !important; + width: 100px !important; +} +.mblSpinWheel .mblSpinWheelSlot:empty { + display: none !important; +} +.mblSpinWheel .mblSpinWheelSlot:not([widgetId]) { + top: 150px; + height: 94px !important; + width: 86px !important; + padding: 0 0 0 8px !important; + margin-right: 6px !important; + background-color: #666666; + line-height: 4.5; +} +.mblSpinWheel .mblSpinWheelSlotContainer:not(.mblSelectedSlot) .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem) { + opacity: 0; + -ms-transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotContainer:not(.mblSelectedSlot) .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem):before { + opacity: 0; + transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem) { + opacity: 1; + -ms-transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem):before { + opacity: 1; + transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotLabel { + border: none; + margin: 0px; + color: #808080; + height: 100px; + line-height: 3.5; + font-size: 17pt; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSelectedSlotItem { + color: #ffffff; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSelectedSlotItem:before { + background-color: #808080; + z-index: -1; +} +.mblSpinWheel .mblSpinWheelSlotLabel:before { + content: ''; + position: absolute; + width: 90px; + height: 90px; + border: 2px solid #808080; + left: 0px; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSpinWheelSlotLabelGray { + opacity: 0.3; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSpinWheelSlotLabelGray:before { + opacity: 0.3; +} +.mblSpinWheel .mblSpinWheelBar { + display: none; +} +.mblSpinWheel .mblSpinWheelSlotTouch { + background-color: #000000; + opacity: 0.01; +} +.mblTooltip.mblOpener .mblSpinWheelDatePicker { + left: calc(50% - 150px); + position: absolute !important; + top: 50%; + bottom: 50%; + width: 300px !important; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel.less new file mode 100644 index 00000000..8ebb20cf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel.less @@ -0,0 +1,112 @@ +@import "variables.less"; +@import "../common/SpinWheel.less"; + +@mbl-PickerItemHeight: 100px; +@mbl-PickerItemWidth: 100px; + +.mblSpinWheel { + background-image: none !important; + border: none !important; + margin: auto 0; + height: 400px !important; + width: auto !important; + display: -ms-flexbox; + color: @win-foreground-color; + + & .mblSpinWheelSlot { + -ms-flex-preferred-size: auto; + border: none; + -ms-user-select: none; + text-align: left !important; + overflow: hidden; + margin: 0px !important; + width: @mbl-PickerItemWidth !important; + + &:empty { + display: none !important; + } + + &:not([widgetId]) { + top: 150px; + height: 94px !important; + width: 86px !important; + padding: 0 0 0 8px !important; + margin-right: 6px !important; + background-color: @win-inactive-color; + line-height: 4.5; + } + } + + & .mblSpinWheelSlotContainer:not(.mblSelectedSlot) { + & .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem) { + opacity: 0; + -ms-transition: opacity 0.4s ease-out; + &:before { + opacity: 0; + transition: opacity 0.4s ease-out; + } + } + } + + & .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem) { + opacity: 1; + -ms-transition: opacity 0.4s ease-out; + &:before { + opacity: 1; + transition: opacity 0.4s ease-out; + } + } + + & .mblSpinWheelSlotLabel { + border: none; + margin: 0px; + color: @win-disabled-color; + height: @mbl-PickerItemHeight; + line-height: 3.5; + font-size: @win-font-size-extra-large; + + &.mblSelectedSlotItem { + color: @win-foreground-color; + &:before { + background-color: @win-disabled-color; + z-index: -1; + } + } + + &:before { + content: ''; + position: absolute; + width: 90px; + height: 90px; + border: 2px solid @win-disabled-color; + left: 0px; + } + + &.mblSpinWheelSlotLabelGray { + opacity: 0.3; + + &:before{ + opacity: 0.3; + } + } + } + + & .mblSpinWheelBar { + display: none; + } + + & .mblSpinWheelSlotTouch { + background-color: @win-bg-color; + opacity: 0.01; + } +} + +.mblTooltip.mblOpener { + & .mblSpinWheelDatePicker { + left: calc(~"50% - 150px"); + position: absolute !important; + top: 50%; + bottom: 50%; + width: 300px !important; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel_rtl-compat.css new file mode 100644 index 00000000..98aab55f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel_rtl-compat.css @@ -0,0 +1,4 @@ +.mblSpinWheelSlotRtl .mblSpinWheelSlotTouch, +.mblSpinWheelSlotRtl .mblSpinWheelSlotPanel { + right: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel_rtl.css new file mode 100644 index 00000000..2f94024c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/SpinWheel_rtl.css @@ -0,0 +1,5 @@ + +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch-compat.css new file mode 100644 index 00000000..02958c42 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch-compat.css @@ -0,0 +1,109 @@ + +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: none; +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: none; +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: none; +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url(compat/switch-square-k.gif); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round1-k.gif); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url(compat/switch-round2-k.gif); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc1-k.gif); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url(compat/switch-arc2-k.gif); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url(compat/switch-square-l.gif); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url(compat/switch-square-r.gif); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url(compat/switch-square-k.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch-compat.less new file mode 100644 index 00000000..f15894c8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch-compat.less @@ -0,0 +1,7 @@ +@import "variables.less"; +@import "../common/Switch-compat.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwSquareShape-styles; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch.css new file mode 100644 index 00000000..bbaa5b18 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch.css @@ -0,0 +1,275 @@ + +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 8px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: none; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; +} +.mblSwitchBgRight { + color: #7f7f7f; +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: 2px solid #000000; + background-color: #ffffff; + width: 18px !important; + z-index: 3; + border-radius: 0 !important; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblSwitchBgLeft { + background-color: Highlight; + height: 14px; + margin: auto 4px; + top: 50%; + bottom: 50%; + border-radius: 0 !important; + width: 45px !important; + z-index: 1; +} +.mblSwitch { + width: 65px; + float: right; + display: block; + clear: right; +} +.mblSwitch:before { + content: ''; + width: 85%; + height: 65%; + position: absolute; + border: 2px solid #ffffff; + margin: auto 0; + top: 50%; + bottom: 50%; + z-index: 2; +} +.mblSwitch.mblSwitchOn .mblSwitchKnob { + left: 45px !important; +} +.mblSwitch .mblSwitchInner { + width: 100%; +} +.mblSwitch[disabled] .mblSwitchKnob, +.mblSwitch[disabled] .mblSwitchBgLeft { + background-color: #808080; +} +.mblSwitch[disabled]:before { + border-color: #808080; +} +.mblSwitchText { + display: none !important; +} +.mblSwitchLabel { + color: #ffffff; + position: relative; + float: left; + clear: both; + margin: 3px 0; +} +.mblSwitchContainer { + width: 100%; + min-height: 27px; + margin-top: 8px; + margin-bottom: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch.less new file mode 100644 index 00000000..a531b76e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch.less @@ -0,0 +1,73 @@ +@import "variables.less"; +@import "../common/Switch.less"; + +/* Default Shape */ +.mblSwDefaultShape { + .mblSwSquareShape-styles; +} + +.mblSwitchBgLeft { + background-color: @mbl-switch-bg-left-background-color; + height: 14px; + margin: auto 4px; + top: 50%; + bottom: 50%; + border-radius: 0 !important; + width: 45px !important; + z-index: 1; +} + +.mblSwitch { + width: 65px; + float: right; + display: block; + clear: right; + + &:before { + content: ''; + width: 85%; + height: 65%; + position: absolute; + border: 2px solid @win-contrast-bg-color; + margin: auto 0; + top: 50%; + bottom: 50%; + z-index: 2; + } + + &.mblSwitchOn .mblSwitchKnob { + left: 45px !important; + } + + & .mblSwitchInner{ + width: 100%; + } +} + +.mblSwitch[disabled] { + & .mblSwitchKnob, + & .mblSwitchBgLeft { + background-color: @win-disabled-color; + } + &:before { + border-color: @win-disabled-color; + } +} + +.mblSwitchText { + display: none !important; +} + +.mblSwitchLabel { + color: @win-foreground-color; + position: relative; + float: left; + clear: both; + margin: 3px 0; +} + +.mblSwitchContainer { + width: 100%; + min-height: 27px; + .default-vertical-margin; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch_rtl-compat.css new file mode 100644 index 00000000..a3346662 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch_rtl-compat.css @@ -0,0 +1,37 @@ + +.mblSwSquareShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwSquareShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} +.mblSwRoundShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round1-r.gif); +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round1-l.gif); +} +.mblSwRoundShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-round2-r.gif); +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-round2-l.gif); +} +.mblSwArcShape1 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc1-r.gif); +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc1-l.gif); +} +.mblSwArcShape2 .mblSwitchBgLeftRtl { + background-image: url(compat/switch-arc2-r.gif); +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + background-image: url(compat/switch-arc2-l.gif); +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + background-image: url(compat/switch-square-r.gif); +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + background-image: url(compat/switch-square-l.gif); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch_rtl.css new file mode 100644 index 00000000..9a065b4d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Switch_rtl.css @@ -0,0 +1,110 @@ + +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: 40px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar-compat.css new file mode 100644 index 00000000..af81377c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar-compat.css @@ -0,0 +1,60 @@ + +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-image: none; + background-color: #000000; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url(compat/heading-bg.png); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url(compat/tab-seg-button-bg.png); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url(compat/tab-seg-sel-button-bg.png); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url(compat/tab-slim-bar-bg.png); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url(compat/tab-tall-bar-bg.png); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar-compat.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar-compat.less new file mode 100644 index 00000000..c0476f34 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar-compat.less @@ -0,0 +1,3 @@ +@import "variables.less"; +@import "../common/TabBar-compat.less"; +@import "../common/domButtons/DomButtonWhiteCross-compat.css"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar.css new file mode 100644 index 00000000..363c1ec1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar.css @@ -0,0 +1,287 @@ + +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + padding: 0px; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; +} +.mblTabBarTabBar .mblTabBarButton { + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + color: white; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + background-color: #404040; +} +.mblTabBarTabBar .mblTabBarButtonSelected .mblTabBarButtonLabel { + color: white; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-style: solid; + border-color: #9b9b9b #9b9b9b #767676 #9b9b9b; + color: black; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + color: #ffffff; +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + border-top: none; + border-bottom: none; +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: black; + border-color: #9b9b9b; +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid transparent; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); +} +.mblTabBar { + border: none; + background-image: none; +} +.mblTabBar .mblTabBarButton { + text-shadow: none; + background-image: none; + border: none; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; +} +.mblTabBarSegmentedControl { + min-width: 480px; + padding: 0px !important; +} +.mblTabBarSegmentedControl .mblTabBarButton { + color: #808080; + border: none; + font-size: 17pt; + font-weight: 400; + width: auto; + margin: 0 8px 0 0; + height: auto; + line-height: normal; + display: inline; + float: left; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + color: #ffffff; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar.less new file mode 100644 index 00000000..e0fda806 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar.less @@ -0,0 +1,37 @@ +@import "variables.less"; +@import "../common/TabBar.less"; +@import "../common/domButtons/DomButtonWhiteCross.css"; + +.mblTabBar { + border: none; + background-image: none; + + .mblTabBarButton { + text-shadow: none; + background-image: none; + border: none; + font-family: @win-font-family; + } +} + +.mblTabBarSegmentedControl { + min-width: 480px; + padding: 0px !important; + + .mblTabBarButton { + color: @win-disabled-color; + border: none; + font-size: @win-font-size-extra-large; + font-weight: 400; + width: auto; + margin: 0 8px 0 0; + height: auto; + line-height: normal; + display: inline; + float: left; + } + + .mblTabBarButtonSelected { + color: @win-foreground-color; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar_rtl-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar_rtl-compat.css new file mode 100644 index 00000000..9d501c64 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar_rtl-compat.css @@ -0,0 +1,19 @@ + +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-bottomright: 5px; + -moz-border-radius-bottomleft: 0px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-topright: 0px; + -moz-border-radius-bottomleft: 5px; + -moz-border-radius-bottomright: 0px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButtonRtl { + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 0px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar_rtl.css new file mode 100644 index 00000000..e0527eb1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TabBar_rtl.css @@ -0,0 +1,83 @@ + +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 5px; + border-top-left-radius: 0px; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 5px; + border-top-right-radius: 0px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextArea-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextArea-compat.css new file mode 100644 index 00000000..b4ad7551 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextArea-compat.css @@ -0,0 +1,7 @@ + +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextArea.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextArea.css new file mode 100644 index 00000000..12d958b3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextArea.css @@ -0,0 +1,33 @@ + +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + display: block; + background-color: #bfbfbf; + border: 2px solid #ffffff; + margin-top: 8px; + margin-bottom: 8px; + border-radius: 0; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + border-color: #bfbfbf; + padding: 0 0 0 3px; + font-size: 9pt; + width: calc(100% - 10px); +} +.mblExpandingTextArea { + margin: 2px; +} +.mblTextArea:active, +.mblTextArea:focus { + border-color: Highlight; + background-color: white; + color: black; +} +.mblTextArea[disabled] { + border-color: #808080; + background-color: transparent; + color: #808080; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextArea.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextArea.less new file mode 100644 index 00000000..a958fb21 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextArea.less @@ -0,0 +1,12 @@ +@import "variables.less"; +@import "../common/TextArea.less"; + +.mblTextArea { + &:active, &:focus { + .mblTextInputFocused-styles; + } + + &[disabled] { + .mblTextInputDisabled-styles + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextBox-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextBox-compat.css new file mode 100644 index 00000000..abab4893 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextBox-compat.css @@ -0,0 +1,4 @@ + +.dj_ff3 .mblTextBox { + -moz-border-radius: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextBox.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextBox.css new file mode 100644 index 00000000..c93afb38 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextBox.css @@ -0,0 +1,34 @@ + +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + display: block; + background-color: #bfbfbf; + border: 2px solid #ffffff; + margin-top: 8px; + margin-bottom: 8px; + border-radius: 0; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + border-color: #bfbfbf; + padding: 0 0 0 3px; + font-size: 9pt; + width: calc(100% - 10px); + height: 2em; +} +.mblTextBox:active, +.mblTextBox:focus { + border-color: Highlight; + background-color: white; + color: black; +} +.mblTextBox[disabled] { + border-color: #808080; + background-color: transparent; + color: #808080; +} +.mblTextBox::-ms-clear { + display: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextBox.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextBox.less new file mode 100644 index 00000000..001cb7ee --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TextBox.less @@ -0,0 +1,16 @@ +@import "variables.less"; +@import "../common/TextBox.less"; + +.mblTextBox { + &:active, &:focus { + .mblTextInputFocused-styles; + } + + &[disabled] { + .mblTextInputDisabled-styles; + } + + &::-ms-clear { + display: none; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TimePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TimePicker.css new file mode 100644 index 00000000..f28940d4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/TimePicker.css @@ -0,0 +1,300 @@ + +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblSpinWheel { + background-image: none !important; + border: none !important; + margin: auto 0; + height: 400px !important; + width: auto !important; + display: -ms-flexbox; + color: #ffffff; +} +.mblSpinWheel .mblSpinWheelSlot { + -ms-flex-preferred-size: auto; + border: none; + -ms-user-select: none; + text-align: left !important; + overflow: hidden; + margin: 0px !important; + width: 100px !important; +} +.mblSpinWheel .mblSpinWheelSlot:empty { + display: none !important; +} +.mblSpinWheel .mblSpinWheelSlot:not([widgetId]) { + top: 150px; + height: 94px !important; + width: 86px !important; + padding: 0 0 0 8px !important; + margin-right: 6px !important; + background-color: #666666; + line-height: 4.5; +} +.mblSpinWheel .mblSpinWheelSlotContainer:not(.mblSelectedSlot) .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem) { + opacity: 0; + -ms-transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotContainer:not(.mblSelectedSlot) .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem):before { + opacity: 0; + transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem) { + opacity: 1; + -ms-transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem):before { + opacity: 1; + transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotLabel { + border: none; + margin: 0px; + color: #808080; + height: 100px; + line-height: 3.5; + font-size: 17pt; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSelectedSlotItem { + color: #ffffff; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSelectedSlotItem:before { + background-color: #808080; + z-index: -1; +} +.mblSpinWheel .mblSpinWheelSlotLabel:before { + content: ''; + position: absolute; + width: 90px; + height: 90px; + border: 2px solid #808080; + left: 0px; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSpinWheelSlotLabelGray { + opacity: 0.3; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSpinWheelSlotLabelGray:before { + opacity: 0.3; +} +.mblSpinWheel .mblSpinWheelBar { + display: none; +} +.mblSpinWheel .mblSpinWheelSlotTouch { + background-color: #000000; + opacity: 0.01; +} +.mblTooltip.mblOpener .mblSpinWheelDatePicker { + left: calc(50% - 150px); + position: absolute !important; + top: 50%; + bottom: 50%; + width: 300px !important; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 17pt; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +.mblValuePicker { + margin-top: 8px; + margin-bottom: 8px; +} +.mblValuePickerSlot { + border: 2px solid #ffffff; +} +.mblValuePickerSlot:first-child { + margin-left: 0px !important; +} +.mblValuePickerSlotInputArea { + border-top: 2px solid #ffffff; + border-bottom: 2px solid #ffffff; +} +.mblValuePickerSlotInput { + color: #ffffff; +} +.mblValuePickerSlotButton { + color: #ffffff; + border-radius: 0px; +} +.mblValuePickerSlotButton .mblValuePickerSlotIcon { + width: 100%; + height: 100%; + top: 0px; + display: -ms-flexbox; + -ms-flex-pack: center; + -ms-flex-align: center; +} +.mblValuePickerSlotButton .mblValuePickerSlotIcon:active { + background-color: Highlight; +} +.mblValuePickerSlotButton > div > div { + position: relative; + background-color: #ffffff; + left: 0px; + top: 0px; +} +.mblValuePickerSlotButton > div > div > div { + background-color: #ffffff; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton-compat.css new file mode 100644 index 00000000..5132e010 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton-compat.css @@ -0,0 +1,42 @@ + +.mblToggleButton { + background-image: url(compat/button-bg.png); +} +.mblToggleButtonSelected { + background-image: url(compat/button-sel-bg.png); +} +.mblToggleButtonChecked { + background-image: url(compat/button-chk-bg.png); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url(compat/button-unsel-bg.png); +} +.dj_gecko .mblToggleButton { + background-image: none; +} +.dj_gecko .mblToggleButtonSelected { + background-image: ''; +} +.dj_gecko .mblToggleButtonChecked { + background-image: none; +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: ''; +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 0; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url(compat/togglebutton-chk-mark-bg.png); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton.css new file mode 100644 index 00000000..7dd33ae5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton.css @@ -0,0 +1,103 @@ + +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin-top: 8px; + margin-bottom: 8px; + margin-left: 0px!important; + font-size: 8pt; + color: #ffffff; + background-color: transparent; + border: none; + overflow: visible; + padding: 40px 0 0 0; + text-align: center; + width: 35px; + height: auto; + line-height: normal; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + color: white; +} +.mblToggleButtonChecked { + color: #ffffff; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #000000; + width: 6px; + height: 12px; + left: 13px; + top: 7px; + border-width: 3.5px; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected:after { + border-color: white; +} +.mblToggleButton:before { + content: ''; + position: absolute; + width: 30px; + height: 30px; + top: 0px; + border: 2px solid #ffffff; +} +.mblToggleButton:active:not([disabled]):before { + background-color: Highlight; +} +.mblToggleButton:after { + position: absolute; + content: ""; + border-color: #000000; + width: 6px; + height: 12px; + left: 13px; + top: 7px; + border-width: 3.5px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; +} +.mblToggleButtonChecked:before, +.mblToggleButtonSelected[aria-pressed='true']:before { + background-color: #ffffff; +} +.mblToggleButtonChecked:after, +.mblToggleButtonSelected[aria-pressed='true']:after { + border-color: #000000 !important; +} +.mblToggleButton[disabled]:before { + border-color: #808080; +} +.mblToggleButton[disabled].mblToggleButtonChecked:before { + background-color: #808080; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton.less new file mode 100644 index 00000000..89f8be65 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton.less @@ -0,0 +1,49 @@ +@import "variables.less"; +@import "../common/ToggleButton.less"; + +.mblToggleButton { + &:before { + content: ''; + position: absolute; + width: 30px; + height: 30px; + top: 0px; + border: 2px solid @win-foreground-color; + } + + &:active:not([disabled]):before { + background-color: @win-accent-color; + } + + &:after { + position: absolute; + content: ""; + .mblToggleButtonChecked-after-styles; + border-style: none solid solid none; + .transform(rotate(45deg) skew(10deg)); + .transform-origin(50% 50%); + } +} + +.mblToggleButtonChecked, +.mblToggleButtonSelected[aria-pressed='true'] { + &:before { + background-color: @win-foreground-color; + } + + &:after { + border-color: @win-bg-color !important; + } +} + +.mblToggleButton[disabled] { + &:before { + border-color: @win-disabled-color; + } + + &.mblToggleButtonChecked{ + &:before { + background-color: @win-disabled-color; + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton_rtl.css new file mode 100644 index 00000000..f6145188 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToggleButton_rtl.css @@ -0,0 +1,7 @@ + +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton-compat.css new file mode 100644 index 00000000..e74d47b4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton-compat.css @@ -0,0 +1,63 @@ + +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url(compat/arrow-button-head-sel.png); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url(compat/arrow-button-right-head.png); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url(compat/arrow-button-right-head-sel.png); +} +.dj_ie .mblToolBarButtonBody { + background-image: url(compat/arrow-button-bg.png); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url(compat/arrow-button-bg-sel.png); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton.css new file mode 100644 index 00000000..34662b10 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton.css @@ -0,0 +1,121 @@ + +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1.05) rotate(45deg); + transform: scale(0.7, 1.05) rotate(45deg); + border: 1px solid #9b9b9b; + border-right-color: #767676; + border-bottom-color: #767676; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: none; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblToolBarButton { + border: 2px solid #ffffff; +} +.mblToolBarButtonHasLeftArrow, +.mblToolBarButtonHasRightArrow { + width: 27px; + height: 27px; + border-radius: 20px; + border: 2px solid #ffffff; + padding: 0px; + margin: 0px; + margin-top: 8px; + margin-bottom: 8px; + background-image: url("images/dark/back.png"); + background-position: 50% 50%; + background-size: 27px 27px; + background-repeat: no-repeat; +} +.mblToolBarButtonHasLeftArrow *, +.mblToolBarButtonHasRightArrow * { + display: none; +} +.mblToolBarButtonHasLeftArrow:active, +.mblToolBarButtonHasRightArrow:active { + background-color: Highlight; +} +.mblToolBarButtonHasRightArrow { + transform: rotate(180deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton.less new file mode 100644 index 00000000..1e276a67 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton.less @@ -0,0 +1,22 @@ +@import "variables.less"; +@import "../common/ToolBarButton.less"; + +.mblToolBarButton{ + border: @default-border-width solid @win-foreground-color; +} + +.mblToolBarButtonHasLeftArrow, +.mblToolBarButtonHasRightArrow { + .mblToolBarButtonHasArrow-styles; + & * { + display: none; + } + + &:active { + background-color: @win-accent-color; + } +} + +.mblToolBarButtonHasRightArrow { + transform:rotate(180deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton_rtl.css new file mode 100644 index 00000000..fd451779 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ToolBarButton_rtl.css @@ -0,0 +1,18 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Tooltip-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Tooltip-compat.css new file mode 100644 index 00000000..3ca10dd4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Tooltip-compat.css @@ -0,0 +1,40 @@ + +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Tooltip.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Tooltip.css new file mode 100644 index 00000000..1d5989eb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Tooltip.css @@ -0,0 +1,261 @@ + +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #869cbf; + border-radius: 3px; + background-color: #dedede; + background-image: none; +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #f6f6f6; + background-image: none; + color: black; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #f6f6f6; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adadad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adadad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adadad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adadad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #dedede; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #dedede; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #dedede; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #dedede; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblOpener { + background-color: #1f1f1f; + width: calc(100% - 10px - 15px); + height: calc(100% - 50px); + border: none; + top: 0px !important; + left: 0 !important; + margin: 0 !important; + position: fixed; + padding: 50px 10px 0 15px; + opacity: 1; + -ms-touch-action: none; +} +.mblOpener .mblTooltipAnchor, +.mblOpener .mblOpenerUnderlay { + display: none; +} +.mblOpener .mblHeading { + min-height: 50px; + position: absolute; + bottom: 0px; + text-transform: uppercase; + font-size: 9pt; + width: calc(100% - 10px - 15px); + z-index: 3; +} +.mblOpener .mblHeading .mblHeadingDivTitle { + text-align: left; + position: fixed; + top: 0px; + width: auto; + padding-left: 15px; +} +.mblOpener .mblHeading ~ .mblScrollableView { + height: calc(100% - 60px) !important; +} +.mblOpener .mblHeading .mblButton, +.mblOpener .mblHeading .mblToolBarButton { + bottom: 10px; + border: 2px solid #ffffff; + position: absolute; + width: 100%; + max-width: 45%; + padding: 0px; +} +.mblOpener .mblHeading .mblButton:nth-of-type(odd), +.mblOpener .mblHeading .mblToolBarButton:nth-of-type(odd) { + left: 0px; +} +.mblOpener .mblHeading .mblButton:nth-of-type(even), +.mblOpener .mblHeading .mblToolBarButton:nth-of-type(even) { + left: auto !important; + right: 0px; +} +.mblOpener .dijitColorPalette { + width: calc(100% - 10px - 15px); + height: calc(100% - 50px); +} +.mblOpener .dijitColorPalette table { + width: 100%; + height: 100%; + padding: 0px !important; +} +.mblOpener .dijitColorPalette tbody { + width: 100%; + height: 100%; + position: absolute; +} +.mblOpener .dijitColorPalette tr { + display: -ms-flexbox; + -ms-flex: 1; + -ms-flex-align: center; +} +.mblOpener .dijitColorPalette td { + -ms-flex: 1; + display: inline-block; +} +.mblOpener .dijitColorPalette .dijitPaletteImg { + border: none !important; + padding: 2px !important; +} +.mblOpener .dijitColorPalette .dijitColorPaletteSwatch { + border-radius: 0px!important; + border: 2px solid transparent; +} +.mblOpener .dijitColorPalette .dijitPaletteCellSelected .dijitPaletteImg { + margin: 2px 0px !important; +} +.mblOpener .dijitColorPalette .dijitPaletteCellSelected .dijitColorPaletteSwatch { + border: 2px solid Highlight !important; +} +@media screen and (orientation: landscape) { + .dijitColorPalette tbody { + display: -ms-flexbox; + -ms-flex-direction: column; + } +} +.mblTooltip:not(.mblOpener).mblTooltipAbove .mblSpinWheel { + bottom: auto; +} +.mblTooltip:not(.mblOpener).mblTooltipBelow .mblSpinWheel { + top: auto; +} +.mblTooltip:not(.mblOpener).mblTooltipBefore .mblSpinWheel { + left: 0px; +} +.mblTooltip:not(.mblOpener).mblTooltipAfter .mblSpinWheel { + left: auto; + right: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Tooltip.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Tooltip.less new file mode 100644 index 00000000..97fed1d8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/Tooltip.less @@ -0,0 +1,146 @@ +@import "variables.less"; +@import "../common/Tooltip.less"; + +.mblOpener { + background-color: @win-dialog-color; + width: calc(~"100% - @{default-padding-right} - @{default-padding-left}"); + height: calc(~'100% - 50px'); + border: none; + top: 0px !important; + left: 0 !important; + margin: 0 !important; + position: fixed; + padding: 50px @default-padding-right 0 @default-padding-left; + opacity: 1; + -ms-touch-action: none; + + & .mblTooltipAnchor, + & .mblOpenerUnderlay { + display: none; + } + + & .mblHeading { + min-height: 50px; + position: absolute; + bottom: 0px; + text-transform: uppercase; + font-size: @win-font-size-normal; + width: calc(~"100% - @{default-padding-right} - @{default-padding-left}"); + z-index:3; + + & .mblHeadingDivTitle { + text-align: left; + position: fixed; + top: 0px; + width: auto; + padding-left: @default-padding-left; + } + + & ~ .mblScrollableView { + height: calc(~"100% - 60px") !important; + } + + & .mblButton, + & .mblToolBarButton { + bottom: 10px; + border: 2px solid @win-foreground-color; + position: absolute; + width: 100%; + max-width: 45%; + padding: 0px; + &:nth-of-type(odd) { + left: 0px; + } + + &:nth-of-type(even) { + left: auto !important; + right: 0px; + } + } + + } + +} + +.mblOpener .dijitColorPalette { + width: calc(~"100% - @{default-padding-right} - @{default-padding-left}"); + height: calc(~'100% - 50px'); + + table { + width: 100%; + height: 100%; + padding: 0px !important; + } + + tbody { + width: 100%; + + height: 100%; + position: absolute; + } + + tr { + display: -ms-flexbox; + -ms-flex: 1; + -ms-flex-align: center; + } + + td { + -ms-flex:1; + display: inline-block; + } + + .dijitPaletteImg { + border: none !important; + padding: 2px !important; + } + + .dijitColorPaletteSwatch { + border-radius: 0px!important; + border: 2px solid transparent; + } + + .dijitPaletteCellSelected { + .dijitPaletteImg { + margin: 2px 0px !important; + } + .dijitColorPaletteSwatch { + border: 2px solid @win-accent-color !important; + } + } +} + +@media screen and (orientation: landscape) { + .dijitColorPalette tbody { + display: -ms-flexbox; + -ms-flex-direction: column; + } + +} + +.mblTooltip:not(.mblOpener) { + &.mblTooltipAbove { + & .mblSpinWheel { + bottom: auto; + } + } + + &.mblTooltipBelow { + & .mblSpinWheel { + top: auto; + } + } + + &.mblTooltipBefore { + & .mblSpinWheel { + left: 0px; + } + } + + &.mblTooltipAfter { + & .mblSpinWheel { + left: auto; + right: 0px; + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ValuePicker-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ValuePicker-compat.css new file mode 100644 index 00000000..cc2f7297 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ValuePicker-compat.css @@ -0,0 +1,19 @@ + +.mblValuePickerSlotButton { + background-image: url(compat/valuepicker-button-bg.png); +} +.mblValuePickerSlotButtonSelected { + background-color: Highlight; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: none; +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: none; +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ValuePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ValuePicker.css new file mode 100644 index 00000000..462dcc9a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ValuePicker.css @@ -0,0 +1,135 @@ + +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 17pt; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +.mblValuePicker { + margin-top: 8px; + margin-bottom: 8px; +} +.mblValuePickerSlot { + border: 2px solid #ffffff; +} +.mblValuePickerSlot:first-child { + margin-left: 0px !important; +} +.mblValuePickerSlotInputArea { + border-top: 2px solid #ffffff; + border-bottom: 2px solid #ffffff; +} +.mblValuePickerSlotInput { + color: #ffffff; +} +.mblValuePickerSlotButton { + color: #ffffff; + border-radius: 0px; +} +.mblValuePickerSlotButton .mblValuePickerSlotIcon { + width: 100%; + height: 100%; + top: 0px; + display: -ms-flexbox; + -ms-flex-pack: center; + -ms-flex-align: center; +} +.mblValuePickerSlotButton .mblValuePickerSlotIcon:active { + background-color: Highlight; +} +.mblValuePickerSlotButton > div > div { + position: relative; + background-color: #ffffff; + left: 0px; + top: 0px; +} +.mblValuePickerSlotButton > div > div > div { + background-color: #ffffff; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ValuePicker.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ValuePicker.less new file mode 100644 index 00000000..c8934216 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/ValuePicker.less @@ -0,0 +1,55 @@ +@import url("../common/domButtons/DomButtonGrayPlus.css"); +@import url("../common/domButtons/DomButtonGrayMinus.css"); + +@import "variables.less"; +@import "../common/ValuePicker.less"; + +.mblValuePicker { + .default-vertical-margin; +} + +.mblValuePickerSlot { + border: 2px solid @win-foreground-color; + + &:first-child { + margin-left: 0px !important; + } +} + +.mblValuePickerSlotInputArea { + border-top: 2px solid @win-foreground-color; + border-bottom: 2px solid @win-foreground-color; +} + +.mblValuePickerSlotInput { + color: @win-foreground-color; +} + +.mblValuePickerSlotButton { + color: @win-foreground-color; + border-radius: 0px; + + & .mblValuePickerSlotIcon { + width: 100%; + height: 100%; + top: 0px; + display: -ms-flexbox; + -ms-flex-pack: center; + -ms-flex-align: center; + + &:active { + background-color: @win-accent-color; + } + } + + & > div > div { + position: relative; + background-color: @win-foreground-color; + left: 0px; + top: 0px; + + & > div { + background-color: @win-foreground-color; + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/View.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/View.css new file mode 100644 index 00000000..a9e8ca44 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/View.css @@ -0,0 +1,125 @@ +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: #ffffff; + padding: 0 10px 0 15px; + width: auto; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/View.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/View.less new file mode 100644 index 00000000..910651f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/View.less @@ -0,0 +1,6 @@ +@import url("../common/transitions/slide.css"); +@import url("../common/transitions/flip.css"); +@import url("../common/transitions/fade.css"); + +@import "variables.less"; +@import "../common/View.less"; diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/base-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/base-compat.css new file mode 100644 index 00000000..dc2b9ab8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/base-compat.css @@ -0,0 +1,449 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: none; +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: none; +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #bbbbbb 0%, #666666 100%); +} +.mblHeading { + background-image: url("compat/heading-bg.png"); +} +.mblHeadingSpanTitle { + white-space: normal; +} +.dj_gecko .mblHeading { + background-image: none; +} +.dj_gecko .mblToolBarButtonArrow { + -moz-transform: scale(0.77, 1.05) rotate(45deg); +} +.dj_ff3 .mblToolBarButtonArrow { + -moz-border-radius: 1px; +} +.dj_ff3 .mblToolBarButtonBody { + -moz-border-radius: 0; +} +.dj_ff3 .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + -moz-border-radius-topleft: 0; + -moz-border-radius-bottomleft: 0; +} +.dj_ff3 .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + -moz-border-radius-topright: 0; + -moz-border-radius-bottomright: 0; +} +.dj_ie .mblToolBarButtonLeftArrow { + top: 0; + left: -2px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonLeftArrow { + background-image: url("compat/arrow-button-head-sel.png"); +} +.dj_ie .mblToolBarButtonRightArrow { + top: 0; + right: -3px; + width: 13px; + height: 31px; + border-style: none; + border-radius: 0; + background-image: url("compat/arrow-button-right-head.png"); +} +.dj_ie .mblToolBarButtonSelected .mblToolBarButtonRightArrow { + background-image: url("compat/arrow-button-right-head-sel.png"); +} +.dj_ie .mblToolBarButtonBody { + background-image: url("compat/arrow-button-bg.png"); + background-position: left bottom; +} +.dj_ie .mblToolBarButtonBodySelected { + background-image: url("compat/arrow-button-bg-sel.png"); +} +.dj_ie .mblToolBarButtonBody table { + margin: 0; +} +.dj_ie .mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.dj_ie .mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.dj_ie6 .mblToolBarButton .mblToolBarButtonBody { + background-position: left top; +} +.mblRoundRect.mblShadow { + box-shadow: none; +} +.dj_ff3 .mblRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRect.mblShadow { + -moz-box-shadow: none; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #cccccc; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #cccccc; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #cccccc; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #cccccc; + margin: 0 5px; +} +.dj_ff3 .mblRoundRectList { + -moz-border-radius: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblRoundRectList .mblListItem:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.dj_ie .mblRoundRectList { + position: relative; +} +.dj_ie .mblRoundCorner { + background-color: #ffffff; + height: 1px; + font-size: 1px; + overflow: hidden; + border-style: solid; + border-color: #cccccc; + border-width: 0 1px; +} +.dj_ie .mblRoundRectContainer { + padding: 3px 8px; + background-color: #ffffff; + border-style: solid; + border-color: #cccccc; + border-width: 0 1px; +} +.dj_ie .mblRoundRectList .mblRoundRectContainer { + margin: 0; + padding: 0; +} +.dj_ie .mblRoundCorner0T { + height: 0; +} +.dj_ie .mblRoundCorner1T { + background-color: #cccccc; + margin: 0 5px; +} +.dj_ie .mblRoundCorner2T { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner3T { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner5T { + margin: 0 1px; +} +.dj_ie .mblRoundCorner0B { + height: 0; +} +.dj_ie .mblRoundCorner1B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner2B { + margin: 0 1px; +} +.dj_ie .mblRoundCorner3B { + margin: 0 1px; + border-width: 0 2px; +} +.dj_ie .mblRoundCorner4B { + margin: 0 2px; + border-width: 0 3px; +} +.dj_ie .mblRoundCorner5B { + background-color: #cccccc; + margin: 0 5px; +} +.mblDomButtonGrayArrow, .mblDomButtonArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGrayArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayArrow div, .mblDomButtonArrow div { + display: none; +} +.mblDomButtonDarkBlueCheck, .mblDomButtonCheck { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueCheck.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueCheck div, .mblDomButtonCheck div { + display: none; +} +.mblListItemSelected { + background-color: Highlight; +} +.dj_gecko .mblListItemSelected { + background-image: none; +} +.dj_ie6 .mblListItem { + vertical-align: bottom; +} +.dj_gecko .mblSwitchBg { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitchKnob { + -moz-box-sizing: border-box; +} +.dj_gecko .mblSwitch .mblSwitchBgLeft { + background-image: none; +} +.dj_gecko .mblSwitch .mblSwitchBgRight { + background-image: none; +} +.dj_gecko .mblSwitch .mblSwitchKnob { + background-image: none; +} +.dj_ie .mblSwitchBg { + border: none; + background: none; +} +.dj_ie .mblSwitchBgLeft { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchBgRight { + background-repeat: no-repeat; +} +.dj_ie .mblSwitchKnob { + background: none; + background-repeat: no-repeat; + border: none; +} +.mblSwSquareShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwSquareShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwSquareShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url("compat/switch-square-k.gif"); +} +.mblSwRoundShape1 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-round1-l.gif"); +} +.mblSwRoundShape1 .mblSwitchBgRight { + background-image: url("compat/switch-round1-r.gif"); +} +.mblSwRoundShape1 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round1-k.gif"); +} +.mblSwRoundShape2 .mblSwitchBg { + -moz-border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-round2-l.gif"); +} +.mblSwRoundShape2 .mblSwitchBgRight { + background-image: url("compat/switch-round2-r.gif"); +} +.mblSwRoundShape2 .mblSwitchKnob { + -moz-border-radius: 13px; + background-image: url("compat/switch-round2-k.gif"); +} +.mblSwArcShape1 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgLeft { + background-image: url("compat/switch-arc1-l.gif"); +} +.mblSwArcShape1 .mblSwitchBgRight { + background-image: url("compat/switch-arc1-r.gif"); +} +.mblSwArcShape1 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc1-k.gif"); +} +.mblSwArcShape2 .mblSwitchBg { + -moz-border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgLeft { + background-image: url("compat/switch-arc2-l.gif"); +} +.mblSwArcShape2 .mblSwitchBgRight { + background-image: url("compat/switch-arc2-r.gif"); +} +.mblSwArcShape2 .mblSwitchKnob { + -moz-border-radius: 5px/13px; + background-image: url("compat/switch-arc2-k.gif"); +} +.mblSwDefaultShape .mblSwitchBg { + -moz-border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgLeft { + background-image: url("compat/switch-square-l.gif"); +} +.mblSwDefaultShape .mblSwitchBgRight { + background-image: url("compat/switch-square-r.gif"); +} +.mblSwDefaultShape .mblSwitchKnob { + -moz-border-radius: 2px; + background-image: url("compat/switch-square-k.gif"); +} +.dj_ie .mblProg { + width: 4px; + height: 36px; +} +.dj_ie .mblProg0 { + left: 0px; +} +.dj_ie .mblProg1 { + left: 8px; +} +.dj_ie .mblProg2 { + left: 16px; +} +.dj_ie .mblProg3 { + left: 24px; +} +.dj_ie .mblProg4 { + left: 32px; +} +.dj_ie .mblProg5 { + left: 40px; +} +.dj_ie .mblProg6 { + left: 48px; +} +.dj_ie .mblProg7 { + left: 56px; +} +.dj_ie .mblProg8 { + left: 64px; +} +.dj_ie .mblProg9 { + left: 72px; +} +.dj_ie .mblProg10 { + left: 80px; +} +.dj_ie .mblProg11 { + left: 80px; +} +.dj_gecko .mblProgressIndicatorCenter .mblProgContainer { + -moz-transform-origin: 50% 0; +} +.dj_gecko .mblProg { + -moz-transform-origin: 0 2px; +} +.dj_gecko .mblProg0 { + -moz-transform: translate(18px, 10px) rotate(-90.1deg); +} +.dj_gecko .mblProg1 { + -moz-transform: translate(22px, 11px) rotate(-60deg); +} +.dj_gecko .mblProg2 { + -moz-transform: translate(25px, 14px) rotate(-30deg); +} +.dj_gecko .mblProg3 { + -moz-transform: translate(26px, 18px) rotate(0deg); +} +.dj_gecko .mblProg4 { + -moz-transform: translate(25px, 22px) rotate(30deg); +} +.dj_gecko .mblProg5 { + -moz-transform: translate(22px, 25px) rotate(60deg); +} +.dj_gecko .mblProg6 { + -moz-transform: translate(18px, 26px) rotate(90.1deg); +} +.dj_gecko .mblProg7 { + -moz-transform: translate(14px, 25px) rotate(120deg); +} +.dj_gecko .mblProg8 { + -moz-transform: translate(11px, 22px) rotate(150deg); +} +.dj_gecko .mblProg9 { + -moz-transform: translate(10px, 18px) rotate(180deg); +} +.dj_gecko .mblProg10 { + -moz-transform: translate(11px, 14px) rotate(210deg); +} +.dj_gecko .mblProg11 { + -moz-transform: translate(14px, 11px) rotate(240deg); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/base.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/base.css new file mode 100644 index 00000000..c6f7a2be --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/base.css @@ -0,0 +1,1126 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + background-color: #000000; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + font-size: 9pt; + color: #ffffff; + padding: 8px 0 8px 0; +} +.mblBackground { + background-color: #000000; +} +.mblColorBlue { + color: #ffffff; + background-color: #2362dd; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #2362dd 100%); +} +.mblColorDefault { + color: #ffffff; + background-color: transparent; + background-image: none; +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to right bottom, #e2e2e2 0%, #a4a4a4 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: Highlight; +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#bbbbbb), to(#666666)); + background-image: linear-gradient(to right bottom, #bbbbbb 0%, #666666 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +body { + -ms-touch-action: pan-y; +} +label { + margin-right: 5px; +} +@-ms-viewport { + user-zoom: fixed; + max-zoom: 1; + min-zoom: 1; + zoom: 1; +} +@media screen and (orientation: portrait) and (min-device-width: 768px) { + @-ms-viewport { + width: device-width; + } +} +@media screen and (orientation: landscape) and (min-device-width: 1366px) { + @-ms-viewport { + width: device-width; + } +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + border: none; + color: #ffffff; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + font-weight: 400; + text-align: left; + font-size: 17pt; + overflow: visible; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +h1, +h2, +h3, +h4, +h5, +h6 { + line-height: normal; + font-weight: 400; + margin: 0; +} +h1.mblHeading { + font-size: 19pt; +} +h2.mblHeading { + font-size: 17pt; +} +h3.mblHeading { + font-size: 15pt; +} +h4.mblHeading { + font-size: 11pt; +} +h5.mblHeading { + font-size: 10pt; +} +h6.mblHeading { + font-size: 9pt; +} +.mblHeading .mblToolBarButton ~ .mblHeadingDivTitle { + text-align: center; +} +.mblHeading .mblToolBarButton.mblToolBarButtonHasRightArrow { + float: right; +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: #ffffff; + padding: 0 10px 0 15px; + width: auto; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1.05) rotate(45deg); + transform: scale(0.7, 1.05) rotate(45deg); + border: 1px solid #9b9b9b; + border-right-color: #767676; + border-bottom-color: #767676; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: none; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblToolBarButton { + border: 2px solid #ffffff; +} +.mblToolBarButtonHasLeftArrow, +.mblToolBarButtonHasRightArrow { + width: 27px; + height: 27px; + border-radius: 20px; + border: 2px solid #ffffff; + padding: 0px; + margin: 0px; + margin-top: 8px; + margin-bottom: 8px; + background-image: url("images/dark/back.png"); + background-position: 50% 50%; + background-size: 27px 27px; + background-repeat: no-repeat; +} +.mblToolBarButtonHasLeftArrow *, +.mblToolBarButtonHasRightArrow * { + display: none; +} +.mblToolBarButtonHasLeftArrow:active, +.mblToolBarButtonHasRightArrow:active { + background-color: Highlight; +} +.mblToolBarButtonHasRightArrow { + transform: rotate(180deg); +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #cccccc; + border-radius: 8px; + background-color: #ffffff; + border: none; + background-color: transparent; + border-radius: 0px; + margin: 0px; + padding: 0px; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: none; + box-shadow: none; +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + display: inline-block; + padding: 0 0 0 5px; + font-size: 15pt; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + font-weight: 200; + line-height: 2; + height: 43px; + width: 38px; + background-color: Highlight; + border: none; + color: #ffffff; + text-transform: lowercase; + overflow: visible; +} +.mblEdgeToEdgeCategoryLong { + width: 100%; +} +.mblEdgeToEdgeCategory:first-of-type { + margin-top: 8px; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #ffffff; + margin: 0px; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #cccccc; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblRoundRectList { + padding: 0; + border: none; + background-color: transparent; + margin: 0px; +} +.mblRoundRectList .mblListItem { + border-radius: 0px !important; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: transparent; + padding: 0px; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #bfbfbf; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 43px; + list-style-type: none; + line-height: 43px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border: none; + background-color: transparent; + color: #ffffff; + font-size: 15pt; + padding: 0; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: Highlight; +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked { + color: #314e84; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + margin-top: 12px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblListItem { + margin-top: 8px; + margin-bottom: 8px; +} +.mblListItem .mblListItemLabel:active { + color: Highlight; +} +.mblListItem .mblListItemLabel:first-child { + margin-left: 53px; + overflow: visible; +} +.mblListItem .mblListItemLabel:first-child:before { + content: ''; + width: 43px; + height: 43px; + background-color: #1f1f1f; + position: absolute; + margin-left: -53px; +} +.mblListItem .mblListItemIcon { + height: 43px; + width: 43px; + margin: 0 10px 0 0; +} +.mblListItem .mblListItemEmptyIcon { + padding-top: 43px; + background-color: #1f1f1f; +} +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} +.mblScrollableView:not(.mblView) { + padding: 0px; +} +.mblView.mblScrollableView .mblScrollableViewContainer { + min-width: calc(100% - 15px - 10px) !important; + width: auto !important; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 8px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: none; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; +} +.mblSwitchBgRight { + color: #7f7f7f; +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: 2px solid #000000; + background-color: #ffffff; + width: 18px !important; + z-index: 3; + border-radius: 0 !important; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblSwitchBgLeft { + background-color: Highlight; + height: 14px; + margin: auto 4px; + top: 50%; + bottom: 50%; + border-radius: 0 !important; + width: 45px !important; + z-index: 1; +} +.mblSwitch { + width: 65px; + float: right; + display: block; + clear: right; +} +.mblSwitch:before { + content: ''; + width: 85%; + height: 65%; + position: absolute; + border: 2px solid #ffffff; + margin: auto 0; + top: 50%; + bottom: 50%; + z-index: 2; +} +.mblSwitch.mblSwitchOn .mblSwitchKnob { + left: 45px !important; +} +.mblSwitch .mblSwitchInner { + width: 100%; +} +.mblSwitch[disabled] .mblSwitchKnob, +.mblSwitch[disabled] .mblSwitchBgLeft { + background-color: #808080; +} +.mblSwitch[disabled]:before { + border-color: #808080; +} +.mblSwitchText { + display: none !important; +} +.mblSwitchLabel { + color: #ffffff; + position: relative; + float: left; + clear: both; + margin: 3px 0; +} +.mblSwitchContainer { + width: 100%; + min-height: 27px; + margin-top: 8px; + margin-bottom: 8px; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} +.mblHeading .mblProgressIndicator { + right: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/base_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/base_rtl.css new file mode 100644 index 00000000..5d7bc3d4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/base_rtl.css @@ -0,0 +1,168 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 0px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: 40px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 0px; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: 0px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/common-compat.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/common-compat.css new file mode 100644 index 00000000..9f4c08e4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/common-compat.css @@ -0,0 +1,18 @@ +.dj_gecko .mblColorBlue { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #2362dd 100%); +} +.dj_gecko .mblColorBlue45 { + background-image: -moz-linear-gradient(top left, #7a9de9 0%, #2362dd 100%); +} +.dj_gecko .mblColorDefault { + background-image: none; +} +.dj_gecko .mblColorDefault45 { + background-image: -moz-linear-gradient(top left, #e2e2e2 0%, #a4a4a4 100%); +} +.dj_gecko .mblColorDefaultSel { + background-image: none; +} +.dj_gecko .mblColorDefaultSel45 { + background-image: -moz-linear-gradient(top left, #bbbbbb 0%, #666666 100%); +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/common.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/common.css new file mode 100644 index 00000000..82376820 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/common.css @@ -0,0 +1,82 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + background-color: #000000; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + font-size: 9pt; + color: #ffffff; + padding: 8px 0 8px 0; +} +.mblBackground { + background-color: #000000; +} +.mblColorBlue { + color: #ffffff; + background-color: #2362dd; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #2362dd 100%); +} +.mblColorDefault { + color: #ffffff; + background-color: transparent; + background-image: none; +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to right bottom, #e2e2e2 0%, #a4a4a4 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: Highlight; +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#bbbbbb), to(#666666)); + background-image: linear-gradient(to right bottom, #bbbbbb 0%, #666666 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +body { + -ms-touch-action: pan-y; +} +label { + margin-right: 5px; +} +@-ms-viewport { + user-zoom: fixed; + max-zoom: 1; + min-zoom: 1; + zoom: 1; +} +@media screen and (orientation: portrait) and (min-device-width: 768px) { + @-ms-viewport { + width: device-width; + } +} +@media screen and (orientation: landscape) and (min-device-width: 1366px) { + @-ms-viewport { + width: device-width; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/common.less b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/common.less new file mode 100644 index 00000000..6409403e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/common.less @@ -0,0 +1,29 @@ +@import "variables.less"; +@import "../common/common.less"; + +body { + -ms-touch-action: pan-y; +} + +label { + margin-right: 5px; +} + +@-ms-viewport { + user-zoom: fixed; + max-zoom: 1; + min-zoom: 1; + zoom: 1; +} + +@media screen and (orientation: portrait) and (min-device-width: 768px) { + @-ms-viewport { + width: device-width; + } +} + +@media screen and (orientation: landscape) and (min-device-width: 1366px) { + @-ms-viewport { + width: device-width; + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/arrow-button-bg-sel.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/arrow-button-bg-sel.png new file mode 100644 index 0000000000000000000000000000000000000000..5b85b727191f818ce022963ae35ac867a44748b1 GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!2~3ezCWG-q(nX+O>#`7pEbC3~C2gnx`e?W-6sd;DNG h`p-V+FY`h+hL?$gfsgk~#{-RF@O1TaS?83{1OQ*9Jqi;2}E-=Gv^p4_82BkG0dD}nK?x>bEzQ^6#~&(!^*Xml|XW< zB?#?}Dr`vxqRJ`Rl~bxKTP)l5TDBdt>^o=KcdfXsr@C*-e+Gt@ww|889-#9_!DtB3 zC_ocAwR>!AXXPUU5@6Gd6y|hV7<^P|oU@m^w z+o31*LV}wAs7#i6`&n>lc`NZ>@sDtYeaw10ZFh0=Ku|Dxy85}S Ib4q9e0Qb`4AOHXW literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/arrow-button-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/arrow-button-head.png new file mode 100644 index 0000000000000000000000000000000000000000..ac78b9ea6d8cb644411e863fc59dc77cc4c61caa GIT binary patch literal 1068 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&q9v{oCC){ui6xo&c?uz!xv327 zx0u8jS*3%8s#Jgq*h@TpUD@w2@^W*t{(R|b0~F#c@Q5sCVBq=y!i-L9OlB}JFf#=B zgt!I;1_ebX2SsK_B?3`#RAzB(*}Fwsr5my?c)zJ9hlox%20)UB7nkKFHalU^D~61tRzsb$ zTQnnk6eFi-CiW;M0!bj6qnSC!FtNulaf)H)9Lvlpnwd)tfv6CO)*4o>wX6h^TP;Co zZ*pNva^;lj$`;GEy_RjqEc?z`_Fb#)oARH5p{K70=-yE<8UpkQf#ZkIT>{!Un zr_Th|r)}P@+RL_a{fu7Cq_*_kW=G%fuwv7BS9iZRGp!1#eIBv;(oeVWRWdK<&-4T4 zwx;mq-JuU_1-tH)tr7fmMXW}EEycgYYuXEyOdSvYkQSfYTg4PN8c%qm=kYkPO!Miv tx2|2bw`YnZzE%0ddV5{RPuYKYUzk^~wQ>))J$48bpq{RNF6*2UngCj=-Rl4V literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/arrow-button-right-head.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/arrow-button-right-head.png new file mode 100644 index 0000000000000000000000000000000000000000..cc92700bfd768d28c162840ba1258ce3b94475c7 GIT binary patch literal 1073 zcmeAS@N?(olHy`uVBq!ia0vp@KrGL}3?#X=x8DO&q9v{oCC){ui6xo&c?uz!xv327 zx0u8jS*3%8s#Jgq*h@TpUD@w2@^bU)&SLX&019yyctjR6FmQbUVMeDlCNmfqm>B|m zLR^CagMuQHgCet|5`m~VDzi8_vp74mI=isC7>Fu?sHGZ&daB!c{xke*<*` zX9^I_n==Q5mM&ceL~GZsTf24J*1h}o?md3&*zsfM&Y!z>{o1|zAUBVK(GVD%A@C#g z;76d#1WJPZg8!oeh6l>Al0dn3PZ!6Kid&%24c&W7d?*F{Ce=`J})2B&iTz|!N dU5NKaQkmvv4FO#pk0t)&0} literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/blue-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/blue-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3bd558b4503a413941bda4308355b18cdb617848 GIT binary patch literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@lxT@-M2T}zYGO%dex5=|W^O72 z`zPN@TdM2G>1n-XrRPM_J3}8B%wKr<6YJ%DRlm~TUVpE| n;Ksr#+y16IkJ0#pJ*WKbpZZf5%J=>N8pz=3>gTe~DWM4fgQq@D literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/blue-button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/blue-button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d371d899b709aa0c1aec94fba6fd6678604e41f7 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rt!7sn8Z@MHtc_~Qxp%NaY)8{a6KpSIzp#kqvLRWlB5%Cv8G z{j10Jc~&mZvZ=Er9A5Q!hZ#wT>7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-arrow-head-bg.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-arrow-head-bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..77b6e9e92d83309330cddb54aab0029007a7f1a2 GIT binary patch literal 316 zcmZ?wbhEHbRAG>1Xl7stPsllc{`{LaZ*JedJ!j2<%ay@^) z`om$g1oRjH5Xir zTiRXvB5YmS*JZMI!e56RNPo(wb|-9+Q%}d^rdXM4hJno!S%br7fBtylOuVyp-K(2w z85d`HSKIX7TJ@^0;^C=jf1=W!+>Fbf-_yIhA#WNxGl#t1AM?}g43o6|>t-f8FjxZs Dm5_!W literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..0d378fafe6e0810b460e00217f8d1313bb592a49 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&Kp|gG7sn8ZaNEPD*&Gx_94`L-Z!hkt((WRZd1vySgSi_mo^SYG zcRlLQ^EoxgCGy|Ty(YCa%uDmh98XQbWR;eNjt6^>Tefc%OXi8no)RP;R^hezy}_|p QK!X`PUHx3vIVCg!0Np1z5&!@I literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-chk-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-chk-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..4bfad0604fc6f28fe5a7a8ac905ee36624740be2 GIT binary patch literal 154 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&Kp{I%7sn8ZaNfg~d=3l(3IJGb!xPD++%E)qBgTbMJdR* ynA=-BTRPghn%!MJT|C^poZnwRUp{{S4@ONrkv#3!&({M@V(@hJb6Mw<&;$U)&L*h< literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-sel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-sel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d371d899b709aa0c1aec94fba6fd6678604e41f7 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rt!7sn8Z@MHtc_~Qxp%NaY)8{a6KpSIzp#kqvLRWlB5%Cv8G z{j10Jc~&mZvZ=Er9A5Q!hZ#wT>7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-unsel-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/button-unsel-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..d371d899b709aa0c1aec94fba6fd6678604e41f7 GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{S!2~3YtcsL@6id3JuOkD)#(wTUiL5|Adx@v7 zEBh@bF*ajnNu9P&K%rt!7sn8Z@MHtc_~Qxp%NaY)8{a6KpSIzp#kqvLRWlB5%Cv8G z{j10Jc~&mZvZ=Er9A5Q!hZ#wT>7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/gray-arrow.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/gray-arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..c93d17f5e8826e4caaa59410f44992f587e9965c GIT binary patch literal 920 zcmeAS@N?(olHy`uVBq!ia0vp^oFFy_Gm!MTx5WfVv6p!Iy0YJ56626i(p>F!9;Bwg zBeIx*fm;ZK886+f`@_J%%n;xc;`*QAe?vn9P{}A54S^9D0^$4K$pF30SQ6wH%;50s zMjDVK=jq}YQgJIeAt50prGdfCO=9vy7qwLqa%_`i4XPRW)-hPVNm+Rm6k49HelF{r G5}E)#zA2Ib literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..8c3999b481570684cfd214c69b9ad3b8f0b33600 GIT binary patch literal 181 zcmeAS@N?(olHy`uVBq!ia0vp^j6kf#!2~4#$}H0cQlcfU5hcz=sfi_-`FRQURVm;4~`xQ`#v%n*=n1O-o0|+xZtudJa6g2j9 zaSW-rl{~{Zn@^aTnOWxlkI&49{xv@+HYhOooA85C{O~fqw*CMAojY>!RHu{j>B*gp YPX#27B`pZs3DnNu>FVdQ&MBb@080-zM*si- literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/icon-content-heading-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/icon-content-heading-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..3daa1a81de8d9b80d652d39251724d4732b181f0 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{O!2~4hKV8-UQlcfU5hcz=sfi_-`FRQ3GDm;4Z)FMKwe@P7LeL$-D$|SkfJR9T^xl z_H+M9WCijSl0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=dY0 z)7O>#7Lyp8F|(vj+b5tEKU0n z{O-Vq?HAe}=5J#?ygx*^t^Q*h&wr&-$$#wGMti=BrdGUWK620D4eQZ)4!4}AJe+GS pu$ytCw!m(Njm84jj2jngFxaoukU#0P!VqX3gQu&X%Q~loCIH@wQK7^Q+h(57k{_X}x`*geJxNkOWch~IXv6@*dQDT&4 zoU#0T(gm;CCl}1LYIZbEwQ6?zWWx4!$x5Cq&dH3A=P3KDdt?D^XJGJj^>bP0l+XkK DF#JV% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/slider-h-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/slider-h-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..970c7ff222533db100e1946ba372482f18e797e9 GIT binary patch literal 124 zcmeAS@N?(olHy`uVBq!ia0vp^j6lr6!2~3?S1^eIDVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfIAl&ht@uQ=H9oG@{#veKY@hJ=pv1i!$ U9d7gM0M#;hy85}Sb4q9e03$mdJ^%m! literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/slider-h-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/slider-h-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..0a08c5762e4e3a9350045171a8d3623c3a00b8e1 GIT binary patch literal 135 zcmeAS@N?(olHy`uVBq!ia0vp^j6lr6!2~3?S1^eIDVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfI`}yE{-7*;fx9l_y02-Ja~}d#EBCO=g*&KxOVj#!@WEA7@j_U h%JAmp8-_0*zF2G&$*8z8vlpn1!PC{xWt~$(69ANgD^dUe literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/slider-handle-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/slider-handle-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..1988f0402cfc0a8ef1e0ceeac8e4ef90ef809a62 GIT binary patch literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{J!2~2lO_g5*DVB6cUq=Rpjs4tz5?O(K_7YED zSN2;>Vr<6Dk~(dlfI<$QE{-7*;j9N4nHmHH7!LlemQ`%I@bPBaja`xVot7K@PTA9Z z&uXp7t6o7}O2*2J zngum=OY0iy8X6lKTbf$hTG~3=I=VW#db)c0diolsH1y8wozOR7(u7Ge+;f1ZzeD{A8h6j zmO7)bVIc>%f?dN5kBy6tcJaB^+&Hmu@$r6n2`(3gO)4jtdF?AAPHtLydb*r}i@=XW z<}7I6@f43Lxzk(8{JRP?%dU_M|^rq|CcG#NCG11+j%W#l^;TQwMNd|_q44g+e z87?pg9u*WnCN6kJQ0%Oj%rP0=qq^qD%xw^>tq19JDqlVpT-Mu89Bt z|1%6Sp!k!8k%7UVK?me6P@FJu{9~BU5u$Lo?O-#9uvW~84GRyqo26(7cwB5~FEZ^r&3NfDlrPk7rnZ3a`W=@^BtPGo~~qS zJiwteNh|i$mX(*62Q2m~t#W+OCK$0f>+Y$otFNz5I9zu0qlyF9#*E9WVrQGSH?Syr zoS5sqecj#N6`x<-trll%W>@>cCFir_LyWkn(iDR;I|?6*N$9+o;j?qo)6+AIv+tdW zG!{BJ*STBHcUO^+)Y9P9aci4Bd9Q6q&Mpf|Zhw1wNAc@>XLoOZe}C`XGYo!vc6@xi zb7q9Yxjj2S%X%uzdEmHr*VorKHfP^Ix3{`XK~kY{!3V#6dwzbt+MJSMAh-AT_jjE> z78@3||NZ^r^XvQP_wWDz|F`Hy24IL~JZR)ltGF-7U?bSvB;Y3TP>9L$!C`)hv=tBA zWXfJVY*%R8u~0yS!{h+B(y|qgx^(^}xG;*`HE`)RxwhkxfcXrS1|i=sFCOngrKY8+r>U*2t+BGPwzjsnxVN~rxVpKzzQ4Y~!NJAD#l^+N$H>RZ z%F4~m&C$-$($Uh?(bUz{)!5b8+S%IN+uYvV-r?WjFw$5@9gjK?(y{S z^#A|=A^8LW002J#EC2ui08IcJ000R70DlNnkRgP@g9sBUT*$DY!-pXFKnyIRN}Wozs@1Dlvud>p;zs}xEy9W&OSY`pvuM+*HJd`fffFv`%AHHM zuHCzM^Xj#`A^`&wdjks|OjvFU2M|`kSj@Pwfrjtjz=I1PPQ1ABe2W~kwY9Cqm8hahrjLjwk=5aNj_ zrl=x@G#~)L2|L6no7}O2*2J zngum=OY0iy8X6lKTbf$hTG~3=I=VW#db)c0diolsH1y8wozOR7(u7Ge+;f1ZzeD{A8h6j z){2>7(0rg>NvC0k$HqlRyCsa98Z;g?AMaOi?vnAmwAi_k!)sNH=cfaQ`Q?&M&GFp4 z?CfkqLl*%K;pOM&n{##qJVERF2ikU4e10anp>g5;{SEw|czt$kILIKar4e^# z$HvFUCrB&z`Rpu8Wsug$xOZmf=I7@ZSo%v8EOdHtd4;q6go4IHE!Q_BpPuKt+w2Xy zgha@Ov%9yyWl|Cgnc%Qz$H&JfCTr{4IViL}y|7rHU!kD6h2zHN?EB~T?*7ifr)I{H z7I6@f43Lxzk(8{JRP?%dU_M|^rq|CcG#NCG11+j%W#l^;TQwMNd|_q44g+e z87?pg9u*WnCN6kJQ0%Oj%rP0=qq^qD%xw^>tq19JDqlVpT-Mu89Bt z|1%6Sp!k!8k%7UVK?me6P@FJu{9~BU5u$Lo?O-#9uvW~84GRyq3y7WyP}s1Dkyq9z z>&}Udi;wp!ICshX3~X-f@>i*dIJs%*>FEZ^r{;KWe&)j`%GvPaz~<%W=Q}iW$$D*B z5x7W8fTKrY(aOuq0~UMD_1e1X>gsTPjynd6R$pJAaJWm>d)u0uo6`$zI43Zzy}iBQ z@xHT)3XU8?6`x<-J-vPX{rwHh++sY<2bqPNg|*|(L~QKl67({e=d*Lu12GAm7dOuA z-2D9f0_Scy-(6cWWj##h$DQ4^HT#lh#-4e;yT4_qndZE{XM5YTSN1?Nx4hq;9UmW` zn5-SY@9;^UXBQTG&tEsEll9e&&DrkrSPpT@JvcnGTi$=)o}ZszTwWc{ufohC^7`@V z`Tp^B6L@$ZT)%&Qe|?pbu*?Q0eipHe2aOzRD;_lQn7vrg>0hpiG(6)X(? zM|jK#0lm!C`)lWh)+a>1=!PsN3L}hH{TnfWid^{WB{b_t|{2SS-jIQgT?p pPAv1uL_NMjW-lgngrKY8+r>U*2t+BGPwzjsnxVN~rxVpKzzQ4Y~!NJAD#l^+N$H>RZ z%F4~m&C$-$($Uh?(bUz{)!5b8+S%IN+uYvV-r?WjFw$5@9gjK?(y{S z^#A|=A^8LW002J#EC2ui0A2ta000R70DlNnkRgP@g9sBUT*$DY!-o(RW>6roqJa@8 zGHTq&v7^V2AVZ2A`Ei7Sia#!-Sjn=b%a<@?%A85F=FAQi3!JdYv!~CWJP!zru%f8Z zqezn~UCOkn)2B}>2*kjms@1DlvufSSwX4^!UqSo`AfkoYvuM+*UCXwu+qZDxrVw!8 zgp0d)^XlEpx3Ay7fCC3!k$?dT!H5$pUYxjv0|+Z%NS;i&vgON|Gi%<=nX?NC6grC@ zO}cbx3>9RkUd_6->({Vj%brcUwhRm%X6W9{ySMM(z=I1PPQ3UG5*=tLU(UR_^XJf` zOP@}?I*k<`YG~iiy}S4C;KTNdA5Xq~jTIVfs9(>%z5Dm@+*pMVA`=%9oaYAB&L5Kz$uI~?lhqmV{g=nfm86u<{1WUA?=oObHzr=W%^>ZqT7 K5P(1d0RTJ8MQ*eJ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round1-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round1-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..1bc8a14a5f13420a610e8120baac85612fbbdf81 GIT binary patch literal 511 zcmZ?wbhEHblxC1-Xk}o?%*f2i&dJTmEyyn@Dl94~E~zN1sH&){uC1=AuBof3%bk*2 z+)!N7P*T%WQ$D@CYD!i0%<8JSRhf%2vzBF5FQ{&)Z)j?4YH4a|Yia9f>*(s}>gnp~ z>*?#8($_nqcS7HUNfRbboIY{Nq$$&;Oq(%n#;h5$=FFNiZ_d1h^A|2&w0OzlB|xxd z)tdkR|1*#d6o0ZXGBD^d=zz3>{KUZVk0F*r#^OU`yMTgFpF(5Pg2U~4c5^He4;^vo z67yfv@WR09XupEGvl_oA( zuaXxXOw9Hov8SfEw9V4<>Y3rSb=B3?!JIp0I54daU(Xd*BO$nG&CSgjm#5WgIjz0D zU0P>?hsXAHcXyYuo;iAYdp?7ZEEBh!&yEid7?gOl0Vv=UrMG&MsSv(>~vY#S+WdE7#LPEFsx%>*u=oFlYwC`1KVyk&h4E1 z8~FLR@pJCx6kI7NwMa^8rIg@SLBaikl3OKZ_R1)=DQPro=uObmo33X&$<}VRo!wkJ zg=Gp#yOb(TTXp%54a!gP>!p^Ve)FtD& zY01gS8va#31P(DV^-8dYNE9wwc6PQ!@vA#0H>aNy6lFN@B#7Y%r-;X7t=LmrR$g8n zFn1n9phGgFkmjbWyQj9UzP>);aF_4LWJe!CtxKz7Pj6d$dwap-Q=!r>3>Q>iY(cE;k+zP-P{e|UU)zW@HZ8cpUM4>p|N zzyJULw~2}qm`oTl9yBsIF&=b~kZC;9Ea0Z`utg*+<6*0W(+n4W7RCUlHib5gMIFvJ zTqiJ^^{jZ*rR-PO;Kn1c@Q9GfwT#ET7SC2Z?z4Hdf<=&r$F+e!@Jq&%i5}l1TKU!Z zj+UslM=qko-C3%@eCS>8!87b2;pUuozw({A`&;kR;$&#!r4AuZp C;S}`% literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round1-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round1-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..f62342acf36b03962824e06603533dcb69d2e68c GIT binary patch literal 936 zcmZ?wbhEHb^ktA{Xk%dD;^N}r=HcVx6BHB_6BCn`mX?#1Q&v`1S6A26)YR3{H8nN0 zvb3_ZvvYKCbaQj__45r13W|=3j*E>;OG_&#EGQ{1DK9IpuC8uqXlQF|>um4r?(CjC zY4VgwQ>IRvI&0RfxpU_(TD)lK(xoewuUNZ!?b>x~H>}^VY4fHno3?D(x@G&0?R$6c z-M4?=f&B*#9y)mR=+WaRj-Nb!5(v(oItv6BFI>EO`RdgxS8rUqaqGsdJGbxLzkC1T z{fCbqK7RV>>GLPgUp{;J_T}66Z{B}=_wmbzFaQ7lXBav_@h1x-1A`lb4#>%%IAP%U z$I#0mV^MH`nM>9~Bj&`0g@@Y(l&$VKJZxlWk}#HXoZ#5PDXQz#CF8ki$;rtY{;LcW zm6(}&C0Jt&J}z2zcD6RG2WEI}U3GPJ z#OAEKr$pPjm<{cZNO*5sb8~aX-Q5+RU)?>ueSNF|v+#-) zjypCyJlr9y9d~BO$3zKkmaGDwotvJXZgrQCEI8Em{QLsvZaLpwTV7sXoXV5&fNAUN z>l>2m*D*RC;*r@={QBP6-P_;aKhXSrTcV?L-{TXLwd2q2+4=eTg}Lnv3m5PD`ufJ^ z?EB~T?k<04VDj&cg#W%hKR>^?ygL4TTx|!ZS;dL@{`>d+{r%(f>-+Wb$648pzbHIt zU=hoB(8!^-;z1MpGl7E)IzJR1wuppfJZzOnTk)_>{GLIBpxhsYM;$8DG9GnmEL-uY zOMRKb1SS&}#m7A+*D@aWT0C3vxX<+6fddXQe-1pJ;35{OBA_B5;=t)-^76^#05{F2 zQ$oTrmrgc1U^;=(gy-SY=?QI`&t{}d%X~J|`9(s58^;9&7QupJn$PEyT+4hux8jy2 z3$Ok`7Y9xU5yck^TEwzmEbLHQwPK;elm$-%cs5*c7I4DJ10*>a h99iYpB)nR=V%e%!tJZ8=^@^Qc)Zv4M8zUowH2^W3coYBt literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round2-k.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round2-k.gif new file mode 100644 index 0000000000000000000000000000000000000000..7885243d63fc35fcb2840bbdad85612a06edd445 GIT binary patch literal 566 zcmZ?wbhEHb)Mk)oXk}o?%*f2i&dJTmEyyn@Dl94~E~zN5sH&){uC1=AuBof3%bk*2 z+)!N7P*T%WQ$D@CYD!i0%<8JSRhf%2vzBF5FQ{&)Z)j?4YH4a|Yia9f>*(s}>gnp~ z>*?#8($_nqcS7HUNfRbboIY{Nq$$&;Oq(%n#;h5$=FFNiZ_d1h^A|2&w0OzlB|xxd z)tdkR|1*#d6o0ZXGBD^d=zz3>{KUZVk0F*r#^OU`yMTg_R?LZlha5s09A0x?JUZMd ztmYGQ=fuY3<2~Zx0aGLt7oVK05xmOgW>U)0sRqf*QXD@vcM4e)zq)gB^Ye3jk}6(1 zUT$7-aUQ3KfQjRxm6w+XEcTjfwdlYB{@~47cV{WC=oV5w)Ftb^ZOzTiNt`=oI54ff zy*)#8%?|^mmb<$vKEJwq`g>luU@bE@-=2d^ooyY$+HpKi2NI7>P}b*hSk(OV^bF(d zduJ?*83gA#ck|7Cc&MFECTMls* z4)Du#Xvgc>G`2M=nt06j+q>)Q>l?-_3K0vLzrBC3F+|uy@ndt_x)+yM$DgmWZR8b^ z=Gk#!-@d==#Mx}*cQQ0E@-VPzJZNAM%3xs7+F>HV%pg$Ez{KjNv4DwPfPtZg%ZsIv XnM2^g!*+!>jzvu3GadvvFjxZs$9&|# literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round2-l.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round2-l.gif new file mode 100644 index 0000000000000000000000000000000000000000..04177379283d27dc5ac95d3148e248648db660e3 GIT binary patch literal 883 zcmZ?wbhEHbjAM{yXk%bt=458(VP@rJWffrM6yfBMv=UrMG&MsSv(>~vY#S+WdE7#LPEFsx%>*u=oFlYwC`1KVyk&h4E1 z8~FLR@pJCx6kI7NwMa^8rIg@SLBaikl3OKZ_R1)=DQPro=uObmo33X&$<}VRo!wkJ zg=Gp#yOb04 zrX?pQYXq-~Ik{;`JHMii!h;oo4y}UfMX&Ch+`Rn!e1~Q(S*t}%46|am8Y~(Yt-QQE zV6oR+udS=DuJ-kB&^WM>p;IK`aF?w2wlz05XIx&T`a9XtS5WKGskz?U*WKM+@%h!= zYV!_;Ch;F!ay~mg#EIFksda2zwDIxr3CiB{e0FYndU|T3jX($E=I7@ZIM?qx$>o z*Q-6vrhH>__Wg5vcYlBX;PAz6`TQeZED}#HuZ}-2XET|PFK)|x|NZ;Q)kWCOSRC5F z9~e7q8V?#+#4;8%2JswVw>_;R*5tZ1rY(BmV<&GEgFwHRHkJ- z>eN`a;!&5n+C^qZhA9Ug^_X1CSls3O$8`du*_{`U`yHlP9A%U-bZ8OsR$2LEl8@QT zCzAu*G@nlK)N*8D_7HsFED}=o^6B&hEy-4XE2X2XERg{pU4#?2y;Pg(YvbrDCOa$g jGK);e!lUzQzP)@tzkyBb#e$Z1k*w^(Q+5VAFjxZsR#zX| literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round2-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-round2-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..2cf12605fe9019ff998e8e3d499b59f87bb71478 GIT binary patch literal 974 zcmZ?wbhEHbjAM{yXk%dD;^N}r=HcVx6BHB_6BCn`mX?#1Q&v`1S6A26)YR3{H8nN0 zvb3_ZvvYKCbaQj__45r13W|=3j*E>;OG_&#EGQ{1DK9IpuC8uqXlQF|>um4r?(CjC zY4VgwQ>IRvI&0RfxpU_(TD)lK(xoewuUNZ!?b>x~H>}^VY4fHno3?D(x@G&0?R$6c z-M4?=f&B*#9y)mR=+WaRj-Nb!5(v(oItv6BFI>EO`RdgxS8rUqaqGsdJGbxLzkC1T z{fCbqK7RV>>GLPgUp{;J_T}66Z{B}=_wmbzFaQ7lXBav_@h1x-1A`lb4#>%%IAP%U z$I#0mV^MH`nM>9~Bj&`0g@@Y(l)dJxC}3`7XX41ZlfmN1Ca4y&MZ$B_l9Q7)f>*_y z+_Z#CSjkA?!HU2Gtit+5ukM`Oy!`xphh{F>tVc`?v)s5!G7Pt@yu3W1dE1MChU7*; zgH2g?Pi0F7?FEld&Gi=7>*`@PJTT+n_VxGoH!yR{ z`Rv&6@Sp;lT0r39jgOB{Q1+hZvvbqa(^C_51XeI^etv#|bG=+*$^lO46~U|H&hFa! z`uc|C)6;a59hk*87r(xDHoBabLn!Tmgx{VWA0MBXtQ~)DPi3*Rn8}kFetUO)eSKqd z_Wg5vcYl{rbolo|!hheMpPye`ULAja-`;9j1Cuv1{P*ws`}@b|*Z0rw-~V4$(Ik?^QfW7&#F zT{_!dJnA+$RB@QWt>VMsUW;cd9{1UNd-1s6flV@ni%HYLS-?YW<&#N1W-p&i4sg>{ zonmcZAi!?#v-0V*m@-LK0Tlre2TrFcna^fsEL-_(R?fDU&t_+zYPjyecERAt+=^!_ zpU=^*m( zTCY|tnU?ixr~QwFep6&^KYygh^8-O_?@j+Vq*zXH1(hYsRcOv*!H&|DORHQ2fcl$iN`M zpaYTw*~!51kHOHT!C}LKgUuYmS}g*M%&gqvN?vn3HZD5aEv}`oBVpm<O;XiB5flW(KPd7+Dm9w*G+1c4f+z~SlY+inTzC$zD+m*#DE-rTFjF@m>%gW2k z0~UMbdM!9~Wp%{zu-*e(S6^SBaJcKOSHhtin=_72i#@UJ?V+uCkB`Y3JZ!wXyW;b! zyQjbF-QCx~{9V-GVB^EX9m3jiXMSv8;OtfQ&ik{Y@#*Oq#@YAI{M^*QG1s~K-Jh9_ zFE6hMULAM#SINt382@ItH$VTnw8S7}Aks(a>ww z(`(by>(bNf)zh1(r#DTH;UELUF$RW{3=C%(I8JdeTwoA9FX-Oo?$PbxG1ntvRYb(P zh=`355!)gnc1A?(jfgl9@&EsS2HF6{pDc_F3`z_-Amc%PV&M44;L6hAuwlW$W)5Mk zm=hZoI=3^rFbEhdSah^o!Z_>BiH(bo_sjDpL^v#1a&odp@T!=To0guQZopZP5U^m` z+1VDwukM`Oy!`xp2ktXA4qH}ST;0>{r?>0h-BZWREhiJ6({i{&SUc{_ zj*X9xPf+&m`*85!lhZSdv-@HyH$OkWK)$|0VAqz+^NUqi#GT!>_4V})$*1S}?%vjN zWn1yTcZ_m%qFD|c+KfiD9@9!eV4$t@Bzwht2Pw!vfKObMq!6C+?@t}c4EaO2VhuVq< zO*~N_;+qBBG#<8aw=HmB6-it1u#G)#K_iD`j>4l3m1!A|IyIK9c+{n{X+|RlBO`+~ E00*Mt)Bpeg literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-square-r.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/switch-square-r.gif new file mode 100644 index 0000000000000000000000000000000000000000..0c67709cd98d140ddebda9d6bc80de8c17ad6a7b GIT binary patch literal 686 zcmZ?wbhEHbjAM{yXk}n1DlY2k=<4h5n>caelu1*jPMtbq`ixmKXU&~EcftGxixw_g zx_IfbCCgSUTd`)$PAF57&!hhgtKHgY*=uxnL}7B=ER1D&h3n03>69s7ai@E zFwVMjV&mfD{qo8p0tO40oSdu?yej78rlqH+8>qWT2y9+9j;>w6Py>0F7 z?FEld&Gp{CE|xd*{j0mDx98v8BE!Tj=d)wO!^0iI+Hq%Q9A;teRra3eQ~9xlS=K1~ z-kF`7pPygg+%4z3>u@Unis038XLoIVeSJgn>3MG(4>j`dD1LqK?C$OF?;mL9mjAbq ziAmtZWbOEKdv<<)eqpiqe7-{!9j|X}&c1(c@9yvK9~?f@&0oma*zx(r<<;@$_wD`t z{lnwa;*E+2JAVK8{QCa+{riCd&ZhBzLqfyhP$P%hiU&2QMbV{jmJGE*D@aWT0E<0V&hrx;BmhL zo92@VE@GKaCVHrK9%AEJ^5Dtj05{F2Q$oTrpH7WPn|X+hcg2IJ(-Yb>pUp^_micUE x#?|`DJeyr`Omq264T}v(qKA%_f?d9|N4QyI37Bq`(aB^U<1^|$$Q~&?~ literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..548ef738d7f98d2439e31febb5015881d3e17ed9 GIT binary patch literal 277 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bU0U})u`hX;ZXo+h?iE~kEVo7Fxo?NMQt`H&hB8B1!Kq1ZokH}&M25un`X1sK_?hjCKvZsq{csW`)BpDi0rbra>d&xmzFeEwzFK8GmO)i zF8X86X6F97)#bB!_CK@H^f%qCKX*>0q}emE9M-2BC`?)& Q40IlYr>mdKI;Vst0B_@FYXATM literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-orange-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-orange-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..56f555bbe2585be929b0330faf82e029dbaf519c GIT binary patch literal 197 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bU0U})u`hX;ZXo+h?iE~kEVo7Fxo?NMQu3#ZiPSbDK-GM@!1s;*b3=G^tAk28_ZrvZCptGloV@SoV zV!Z literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-seg-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-seg-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..7871ed1f4cd895931d2d412164a2eb93f55ef487 GIT binary patch literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{M!2~3ezCWG-q(nSx_+5YN znW(g5%ePL8Je~e#TX%^d2wZgCzw@z;+@#1wOFoC3yySCId}ojj_fj3NrCQpmA&x7Z z*P5($%e=n!Qm)m~``=Do;PtxWntG@Il!*G%1exB+g=TukuI`X5f1GI3JN=`X-LdOG aZpyPtx)wg#$h#Zp2nJ7AKbLh*2~7arfkvAE literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-sel-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-sel-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..c4540887f383575e8a29021189920b01cc70fe7e GIT binary patch literal 286 zcmeAS@N?(olHy`uVBq!ia0vp^%s_0Z4A6R$U)->^EbqO&e)CyQw1o2}kAFumdH38f cIQx-BX5P_?<+pEX0^P~r>FVdQ&MBb@0H}p-mjD0& literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-slim-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-slim-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..f982afb761ae3b230544c11e5b042862523e7cf6 GIT binary patch literal 107 zcmeAS@N?(olHy`uVBq!ia0vp^Oh7Eh0U|pOL`()!MxHK?Ar*7>9%STV5M*FD__xJF z%`NF~<3G*LEl>%>?RZ@O1TaS?83{ F1OV6dAQb=r literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-tall-bar-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/tab-tall-bar-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..50a237196fd797e2c2ee32fc032f38555c20780c GIT binary patch literal 161 zcmeAS@N?(olHy`uVBq!ia0vp^OhD|w0V4Oi7>WR?3{Mxwkcv5`M_u`t7#Ua&9-Djg zZtVa6wv*I?r$5rRd$jh8kpIVkUEQ-Ug~l9-e5ums#lA88R_EFq8f%YwWon8gtuql0 zUfL<4-FqZ}XA0NF@K>GdUTAD}^IJGb!xPD++%E)qBgTbMJdR* ynA=-BTRPghn%!MJT|C^poZnwRUp{{S4@ONrkv#3!&({M@V(@hJb6Mw<&;$U)&L*h< literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/togglebutton-chk-mark-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/togglebutton-chk-mark-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..2262424c3d3f2697db4434de34b06db63eae08fe GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CF!3HE7boT!OQk(@Ik;On70_G;E839=yo-U3d z6?3KrIPx(la5Vk8` qe{1rSOUteOu222(^7Q6UD>$Y5O85k?&7OV~WV)xTpUXO@geCyFl`csD literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/valuepicker-button-bg.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/compat/valuepicker-button-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..965db4bc4f83b730611ddf532a51bb8c1185705c GIT binary patch literal 246 zcmeAS@N?(olHy`uVBq!ia0vp^!a%Ib!3HE36knzV5rDrop7CM);{ zD@15Aq%b#u)U%g(`ns~;VdLlJ;61SW+Y_KrsHcl#NX4ADQx0-67;rH2irlS_oWIPN zqmttlgZrM26F##t;zCzOe2dtW@F=A?@d;OYxm4{9v2>gC+!(_`g8%^e{{R4h=>PzAFaQARU;qF*m;eA5Z<1fd zMgRZ=AW1|)RCwC#oJ)utMHt7ctDn{NaM6n_3bN`c7h&;WFbEPo`*TvQC=CAZBXn3Dz%vS@Wx_4KPc2VInbN!RYq^vt;5 z|2Xw^&Gc`+`d;(!+O|a?cVR#PzyKHk17H9Q1i%0o00UqE3ns0wez5=GIEQ4|r!827#;-Wo}Tx_eVDhMHu&sC+LW!dYDv7h5OUf9lLX__A1E%-D|KfxGxrbKJ44Z|>* zt7(Ola)}V~5ylt~*F$-p|FYA#6^7xJ?Y5^QBO;~Li<1s9c-*kUF#KWE4H80@vMf93 z3M&YLn}m?39W&y(5aPSJ0){bOA%rY;G|FGQ?B#jhp$D}+L;d9DBr@W}fwgV>SC>r` zMO-QMVMh#nnKAZ_%X1b*v6ZIjfxgO{u>#|qUnt8m@3JF=oRU&LJZe2jk}nz6$)n-@&KBmCfa-( zV@^8&V=l8TYppfLJRyYG`riWMoNtt6smD;?A+7a0LWq0Q9y3jRyi*j#D|_8TYkiS( zegVyZCJu~qem&3gyL+hXeq)TCL^GmZCazUgJ!`FPcX8byNs`CV45=4jLWnJ6%;lY2 z(=?6E^L!c2n0lM(Gsafxx~_MSVc!%&Z0=iN2qBc`xl?tnl)A_{{}|1ndIiQgKU);V zpBaKzk+Ym>$KrgE9d z?oV=c`^LNN@$sshU0X(Y~)bo6}5ux`Dp(Z~beJ`@`(ROt^FEq9W&~r_4{5{g>5V9ASJwOl^(7 z@h0Vn=Io_%G5ZfZ^;whnWt(u=;)A;`%b8d!TeryF(b{VIOX#_wv9k4yPs~fdO}hU; z$L`DtK9w~GgJ!?~x^m*YSrh-V$1gp-@kHj)v^gG^+sm(hZTT88J3O~1U*X$BiCspY znI&?W`zuqsY6>_+leL4?YdFbL7)siFVdQ&MBb@01t&>%>V!Z literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/dark/check.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/dark/check.png new file mode 100644 index 0000000000000000000000000000000000000000..e824b9b10f5ccefa83952af2b4f6c2dc93c66416 GIT binary patch literal 1034 zcmV+l1oiugP)(_`g8%^e{{R4h=>PzAFaQARU;qF*m;eA5Z<1fd zMgRZFXfC~kymAr#djDgue1mqoRxhzM6n5m8W3 z;3hODS_BnMWr9?sWknQ7ttz2KSo8u4QE6F`z35D%nT|Nld|P;2G|YX@opGM$zWsl2 zH+Rl?9?s{U`Jd;Wb89M*<})V<0xZA+EWiRR5?}!qU;!3jkpK&@01L1H3$RFl1z3Ou zSjAZgEC=cVmd{+^HsD#{eqd=?H>!2XG23;(3&4fI2=EcG1^5s+8DRg;8EbROxqp6 zlfY0XKDeHjmi{x%`M_hq&6#$)(!cAzvg$!unU|i8ZcS)wfgjIcMZ6nWlWF%W@C5LA zX`@ohc%7|2sP0xzsH5t@46ij$U9ApToFnO;l=&*-qV+Vuzb6f7k9zquuT@hoRe#H1 zjjDs{{7wU_t5>R@O);pG>SncX8dxjUkIm;D_1vm*2ESG9PwfZQ zqZzDy>ea2nDjN*-9`#TGz)|%^^>|0WiAM0f>(u{d8o$3@}ZAi0>UI!Zi-U5CuDDqDOf41w z!;{|sKCOtmGc&NYXMHXDG0I}#DqvOGaQq@YZ~euo6KevjF(_`g8%^e{{R4h=>PzAFaQARU;qF*m;eA5Z<1fd zMgRZ=3Q0skRCwC#+)rp+RTRhZPuisZYf%tet!)yOwo=rJF8q($MHRcSR&b>tF17wy zDQ*;TQxFxj_0LKdy6_LSQ512Zh=@vyv<+yi($scp5V5v3E{tR1;@$xlon+oj=FfZY z{vga|=Dz#BIp^JT&pYS#&CJY5YFrBvf&?r9OTcoh{w`j72-jmRR>!}kI2!|)!7)t6 z&;9rT-{VV+cVp6h9b6?BVFPZ*dR*Azc;omCJMjtrE()+gJdAsAPMfZA6tClD{FGN< ztMEAPjxN>-P2*iWh41nLY)PE(gI#<^R`C*^!0}!Nb_cd$d5ER!&`VY&ao#fY$e{u>?W|a_&7q#gC=k*_I1N0ufi8Of>m?T&tt&c zQ46~QpW@7%?r@Id28?zB*b3~%vYc-VE4UE{+Ub&~V59)BYXA5VoZe1g&qjAFiY~z` z?Q+RY*rAxZ3-8P)u*Dd|`2__wfs1iszFhLj0>i3>8&A)dg4!|QB7sFu=OQ` zMR;qqp&6Ilti0OXj7$D3yzwcceyJCC*0ZqT62lUoVXLwLyGGL0S%6)Zcv+VP*qX%4 z>MXzp6E8zqfGtbBPR^hnuqBC?v$Dit)wp{vyZRcnu&KmKHH%CBnRuB@z_RH?7GQrQ zUXEq~b};dBI18}-iI=e~!1g9yCohSr2ke`~%hy=~*V=PzsHCtmClKMI5?fc@d!G&1 zjuHc_TbMGNOZLa5_1u!dIwGXErn6dDRcJ>ko8GJkYc2~TybL%XR34T=Q^L!SL(M$H zYOBR-C9pHZD|Bn7GUs!&=poRZ5P_08&cLzkkf?zqALpm>swqaL%(>l ztutT6&pfLl)R0uN{AfXw7rITI6mCxRTfB!#)*m+8{x^zSatiGjHfo}itrcK|j<%cP zlAIS!;AZSRs$DsNwL8vrPb-7WN0WR7*Wr2L_?KSPHlYjmP^$yY_c06` zh4UhMWk+xr4`qq7I$>e|*N1TfyH$7VGycIdaV|UObKrI!B{Pgiai7lR)24)^=T>bx z{izd&6)lf@wR?p&yLRYTA#b<6nb@k=fYr1xF6nm)XGaXTINq3WvcX9Ftajoi`nq_^ z=3rdr*9k?)D}>{+77OX5T9#xoM&=cvgkewI&rWn>(tYVz((bO330P7BmVk9q{|x}3 Wg9lJOl#gQo0000A44*vI!fr)&xc^6(N1I_0F}BFLTOm~-OTu{NEPr{*7Y`^V|+ZSC46q^hdwI`RH~ zBeTul&+RqdZfSfzdh?#{pI`13-~T-4a;c-hf=%I$EKI^P4zQ>hOa&2*oIa``A^|Aq zl~5Qez@lpF8X~%ZndMlzuJ8N!ybW0i*Ezm&>nvZJc#1QO`Hkepx`tMhy2Gbf!?@o_ zZ`{|obBmtmQ-;;-eLWHL50uQh{$a_%Sq;I;*Q5>ReUsm-axkiaTlpHd!JETVCWu5x z7o;AkV)<1oxq1@AYlgg@i0=;D{fjg1B*Y$=EBIRM#h2WIe&IFZ6$VMM%x~@9l{{jS zW|-F#G2LPH`sl+J2izLMm9I%&c=I`KSI8R92ZuXKnM{7k*-dFOWv-Fj$k(__XNl>$ z86C$g&G~bfMUVB*X+NBKYw@~yKca=i4!=-6aVxp2P z#8dwluS-0T6?R=eyIpki3;m~+7uV}7QZ}Dk{Qf}LwPRf_{WlwKax}ko3}d?bP0l+XkKZaE24 literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/light/check.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/light/check.png new file mode 100644 index 0000000000000000000000000000000000000000..40e9b875024ac545e76cb3f910a463097edb69e5 GIT binary patch literal 1344 zcmV-G1;6@(_`g8%^e{{R4h=>PzAFaQARU;qF*m;eA5Z<1fd zMgRZ=#z{m$RCwC#+D}L$R~P{BnPieoG%;ixBe99dPSm)Lqehz@Vq=mr8HxEb1L4ua z!cuzZ%}f74d)Pyv)WhCNdnkoM3+=%W(9&KC?e?_&18#-IdT7xuf>=!dP*<(Gndzm1 zh-PMYGn1r#AIvF<^8I-4d*6F+a8*??2>oFJ0ssRr00S@pg8(o9126ysFbDtxFaQHE z00S@x00S@pYl$H0`Nwb^Z&)J5VzKY=@Q`ylonMzqr3Ys}uiIshs;YH+8Wjj3XCxB& zhN7qgmStD6*{o<(p8pH5cs%}r&1O?D3{!C&S81Bw=XrhsA>;zEGa-uNTzh-_F@|C4 z>4zW)g=N{hk|bRLu>T^P&5ATl@14auc`O!-+Sk{&H8V5wQoV9)*;P`Kq$_J{YadoB zm9~q%qbLfty}jLCtyaC4x~)J6b*-r?Ck7wE!l_Va=B+jQJi~HutK5mY)?+V z!C+LsDoP5W@>8cBb~=J zJ>A{if9omo>2&%Pv--`tf=QAz;&eJ6)=IFWqvNPhC?vG7LZQ&FdWw8J9)Hiw2EFbz zjOY21R-&V$qu(Ng>=z{$jYdD$Q{*|0`@!rTP2KmB!C>$PP16UpzO%ZzdTn=i_r`gj zO;1n1yS%)d)oO$phPgjDIG8nkBWpxkAqc{&7K^3k2w@mzQ<9|qGfi$m&$frA={>C? z-%@=TLdY5lh3;!jsbn%af2uhhp(sjo+v9S%jx(9e3ym5WhIRV6TrQ(ETDrQr9>}sh zfngXH2m~rRioB9YByKfwCKf8LCnqPrthHFQJeVX& zSG7(T2!c?wP%#WsS(g0~A>?dytv39$A{L8%qGxNPwe684X`~qzH^Yyp{eJ&ze!u^Z z$NfD;QHSH>2Nrzk2j;;`Fy+id|qhQfnn-J?&9L&3d1l91VNmuOOm9*aon3EN#1VO zOJvh;zI{I5{J_A#>e+Y6Y&M(9aoiVPulJo&sZ?!NFub1kiF#kClO*Zt&d$#3TU%Sg z{{DW4&*%H4x3_oR>2%&Hm&=<*)#{c7I}KN@Rw;+W@pHLc{>|vct?9rnL%>VH00v+H z24DaN0bl?IU;qYS5C8^X00v+H24D~X24D?}e+K|u`T{sE(5=`20000(_`g8%^e{{R4h=>PzAFaQARU;qF*m;eA5Z<1fd zMgRZ-IMYO4)g!&`OeajX>K~PZI zi|9erB3iWTABdor^jcU}ny*O=ACy6klefh^7i_$D=AP@^_xZw?0UeloKm5+?ch2u5 zG)+UvzLqEi3YY?>fQ4AaW`9g15?=gvEwC481{#GcfVDsgpaE0BwD{}=J^?+zGoat? z2Q(cJHBDP!m$Vc(1l$C^3LuMdA8-pe43xSBYyle&fYksOfUyEVvhuk2jV)mY)&SfF z(k_C^_Fv$kXy%~-Rt{VQW<3Oz?OEUwusZ0#jshb-g35LZI37e`%Ye=Rfy(v`@r;20 zRt>xfFf7AwfjYl|H3NeofHl8~w)zEZml)2qka+Qo6tKz;FuMuF(?C^( z^MV_JGtMVx|7)|)3u&*M0k#$*!cJLbW+SE|(UNj1Vb*8OOHo$?UqrSv4w?g+#5W*$XdI{n(y|e@FNUxXyH*Esg`kz%iLct7G|2(6;}b`v zfGU|LSr=nih(4@Arb+HWX}1ipR>g}p8DLF{7mYH&Y7{SOWq_?$yv!L`0V`L$SR*qJ z%ZSx`tfgsM!fu46Re+I^X_CJbFQyeRIsKFYHmP_qAp`82;>C~*uwKQBk21jCDPFvn z0ro=i;<*g40pYkRh1fZ=3k={%jDcCcdoEy)V+`z()jx9O^ozyNx*=w;M$pq+bF$lP z8Q^XVqw4|s4!CrLfxa2ghfBpz0aO}&^J7qCE2JXK7%lF^D7x+&uqY4fq=0R9U(T%(<|Obk1h8HqdC11iBKZ=r8kh?xtWGBh1TU^(I2f=M!614S zo+Ej6(MK6@4w&%~R2n#Mw%iFKFhg~~Rp5_@pk~nTsHiW*3;1+Rltkz7(~aszE>6-G+V$ISH&2{Z84uEXg$R zL(KPj(Qi0;3Ve6_0ZrMcYf0s#?m$$)6fgxW%=$L~M1MP$>RvBm00000NkvXXu0mjf D0$$T? literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/radiobtn-disabled.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/images/radiobtn-disabled.png new file mode 100644 index 0000000000000000000000000000000000000000..148a128a5e310ac150c3bf6f4ef273ebe4797a08 GIT binary patch literal 1160 zcmV;31b6$1P)(_`g8%^e{{R4h=>PzAFaQARU;qF*m;eA5Z<1fd zMgRZ=4oO5oRCwC#+)Id8RU8NKkCquVrX?lX_(;o0%851=wJ4znMO1?BENW3OV{a&G zOY|o8xjXh||3|j5o0nKeg&L>>|7#ci_>Su};i6aUFZ{PCU(925cH$!1uT(UXSW| z6I+R0ScmD&4t6K@;E_6CAIG}XJQ!~fE1MDQbi9oBFsF%H0kh*N`fA+9rU09Zudup_ zn@{&)8x}MgY)NbrUETt1&Mth3rHul+5?{n4tW`1_pT`DsUBRxvC-HXPYMFtL#%Kr^ z2G)tqMclIMnCWpJ78VUQ6(3+$8$3sM#(g=XNU-PQ>DVs06t5Hob_aU2Ushp7-e4VA zuYI!)XXOdD2Isdi*lawV7uX^^to_r2OY#7FqQMW+^~x#nOsWZNF78&ItiXk}fb|Hk zmdldK=&lxQitqxkY`JTqgJdGGWx`jSvSp_5u_iOva^=nPYQSzTG1yI6!4?Rg$I6;H z!dI_~!LF8aRTi+N$xBxju#1zI#aY1SB`@={fXzx?V;hVIHZ6IXkp-+Hd6}98?0E7r zoCWN!H4rc+|pS&E*0=6%C*^>oqSMu^*7O=0Amu*?VevVUFGhm$V z>l3|k-CSa@arb>9u=h(0_HH#`TkvZMv3|j4)qo8Psw{V~qFnAV2CBPcS+LO&x30R*{Y}M|02|wlmM(CY)pv~`$Ybu$sQm~_% zyOyZdtTxUI!)n3cL!m0H-LgR_gO)cKp$_t!Hp2QAk7fA}S;77m`s??%0am|Iuz##b zu+bIWVw_jFEt22kK4kvGS6j`tTj)d8ifBi0YupF*0)rj6F5Z$`C5Lc5wpY7=S}SsQ z3;n3Jw*c0TxUD;DSx6o=-~G4-FABrIG-K8aRk$@bzVjMYU`QBfS?VmA(=i;_(%5%X*jEr&=PYS&lH>&UZwBvX!uKV#yA9orJHk$oH z8OlOD6Yo$(<+pfLFT(u_94f0G1Fj9=DWTBo2BBnle-6vtgWlL4?2Jcs;ZGp-EbIG6 z__#3ofni>}&3DC9s8bjLssm^K@AMvwE%Sb%3&T!fyo^H{kV$D+(&jrQ6IcRENnl0g azX1T}?zUxOD6Mq>0000 div { + display: none; +} +.mblDomButtonBlueCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCirclePlus > div { + display: none; +} +.mblDomButtonBlueCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonBlueCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueCircleArrow > div { + display: none; +} +.mblDomButtonRedCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleMinus > div { + display: none; +} +.mblDomButtonRedCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCirclePlus > div { + display: none; +} +.mblDomButtonRedCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonRedCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCircleArrow > div { + display: none; +} +.mblDomButtonGreenCircleMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleMinus > div { + display: none; +} +.mblDomButtonGreenCirclePlus { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCirclePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCirclePlus > div { + display: none; +} +.mblDomButtonGreenCircleArrow { + background-image: url("../common/domButtons/compat/mblDomButtonGreenCircleArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenCircleArrow > div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblDomButtonGrayRoundRect > div { + -moz-border-radius: 4px; +} +.mblDomButtonSilverCircleDownArrow { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleDownArrow.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleDownArrow > div { + display: none; +} +.mblDomButtonSilverCircleGreenButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenButton > div { + display: none; +} +.mblDomButtonSilverCircleGrayButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGrayButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGrayButton > div { + display: none; +} +.mblDomButtonSilverCircleOrangeButton { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleOrangeButton.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleOrangeButton > div { + display: none; +} +.mblDomButtonSilverCircleGreenPlus { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleGreenPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleGreenPlus > div { + display: none; +} +.mblDomButtonSilverCircleRedCross { + background-image: url("../common/domButtons/compat/mblDomButtonSilverCircleRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonSilverCircleRedCross > div { + display: none; +} +.mblDomButtonBlueBall { + background-image: url("../common/domButtons/compat/mblDomButtonBlueBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueBall > div { + display: none; +} +.mblDomButtonGreenBall { + background-image: url("../common/domButtons/compat/mblDomButtonGreenBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonGreenBall > div { + display: none; +} +.mblDomButtonOrangeBall { + background-image: url("../common/domButtons/compat/mblDomButtonOrangeBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonOrangeBall > div { + display: none; +} +.mblDomButtonRedBall { + background-image: url("../common/domButtons/compat/mblDomButtonRedBall.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedBall > div { + display: none; +} +.mblDomButtonYellowStar { + background-image: url("../common/domButtons/compat/mblDomButtonYellowStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonYellowStar > div { + display: none; +} +.mblDomButtonGrayStar { + background-image: url("../common/domButtons/compat/mblDomButtonGrayStar.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayStar > div { + display: none; +} +.mblDomButtonGrayCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonGrayCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonRedCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonRedCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.mblDomButtonGrayKnob { + background-image: url("../common/domButtons/compat/mblDomButtonGrayKnob.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayKnob > div { + display: none; +} +.mblDomButtonGrayPlus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayPlus div { + display: none; +} +.mblDomButtonGrayMinus { + background-image: url("../common/domButtons/compat/mblDomButtonGrayMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonGrayMinus div { + display: none; +} +.mblAccordionTitleSelected { + background-color: #e2e2e2; +} +.dj_ff3 .mblAccordionRoundRect { + -moz-border-radius: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitle:first-child { + -moz-border-radius-topleft: 8px; + -moz-border-radius-topright: 8px; +} +.dj_ff3 .mblAccordionRoundRect .mblAccordionTitleLast, +.dj_ff3 .mblAccordionRoundRect .mblAccordionPane:last-child { + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; +} +.mblButton { + background-image: url("compat/button-bg.png"); + background-repeat: repeat-x; +} +.mblButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblBlueButton { + background-image: url("compat/blue-button-bg.png"); +} +.mblBlueButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.mblRedButton { + background-image: url("compat/red-button-bg.png"); +} +.mblRedButtonSelected { + background-image: url("compat/red-button-sel-bg.png"); +} +.dj_gecko .mblButton { + background-image: none; +} +.dj_gecko .mblButtonSelected { + background-image: ''; +} +.dj_gecko .mblBlueButton { + background-image: -moz-linear-gradient(top, #7a9de9 0%, #2362dd 100%); +} +.dj_gecko .mblBlueButtonSelected { + background-image: ''; +} +.dj_gecko .mblRedButton { + background-image: none; +} +.dj_gecko .mblRedButtonSelected { + background-image: ''; +} +.dj_ff3 .mblButton { + -moz-border-radius: 0; +} +.mblCheckBox { + background-image: url("compat/button-bg.png"); +} +.mblCheckBoxSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblCheckBoxChecked, +.mblCheckBox:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblCheckBoxChecked.mblCheckBoxSelected, +.mblCheckBox:checked.mblCheckBoxSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblCheckBox { + background-image: none; + -moz-appearance: none; +} +.dj_gecko .mblCheckBoxSelected { + background-image: ''; +} +.dj_gecko .mblCheckBoxChecked, +.dj_gecko .mblCheckBox:checked { + background-image: none; +} +.dj_gecko .mblCheckBoxChecked::after, +.dj_gecko .mblCheckBox:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblCheckBoxChecked.mblCheckBoxSelected, +.dj_gecko .mblCheckBox:checked.mblCheckBoxSelected { + background-image: ''; +} +.dj_ff3 .mblCheckBox { + -moz-border-radius: 0; +} +.dj_gecko .dijitPopup.mblComboBoxMenuPopup { + -moz-box-shadow: none; +} +.dj_gecko .mblComboBoxMenuItemSelected { + background-image: none; +} +.mblDomButtonBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlueMinus div { + display: none; +} +.mblDomButtonBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonBluePlus div { + display: none; +} +.mblDomButtonDarkBlueMinus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBlueMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBlueMinus div { + display: none; +} +.mblDomButtonDarkBluePlus { + background-image: url("../common/domButtons/compat/mblDomButtonDarkBluePlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonDarkBluePlus div { + display: none; +} +.mblDomButtonRedMinus { + background-image: url("../common/domButtons/compat/mblDomButtonRedMinus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedMinus div { + display: none; +} +.mblDomButtonRedPlus { + background-image: url("../common/domButtons/compat/mblDomButtonRedPlus.png"); + background-repeat: no-repeat; +} +.mblDomButtonRedPlus div { + display: none; +} +.mblDomButtonBlackCircleCross { + background-image: url("../common/domButtons/compat/mblDomButtonBlackCircleCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonBlackCircleCross > div { + display: none; +} +.mblIconItemPaneHeading { + background-image: url("compat/icon-content-heading-bg.png"); +} +.dj_gecko .mblIconItemPaneHeading { + background-image: -moz-linear-gradient(top, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); +} +.dj_ie7 .mblIconAreaInner { + font-size: 60px; +} +.mblIconMenu { + background-color: #a0a0a0; +} +.mblIconMenuItemSel { + background-color: Highlight; +} +.dj_gecko .mblIconMenu { + background-color: rgba(160, 160, 160, 0.85); +} +.dj_gecko .mblIconMenuItem { + -moz-box-sizing: border-box; +} +.dj_ff3 .mblIconMenu { + -moz-border-radius: 3px; +} +.dj_ff3 .mblIconMenuItemIcon img { + border: 1px solid red; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + -moz-border-top-left-radius: 3px; +} +.dj_ff3 .mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + -moz-border-top-right-radius: 3px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + -moz-border-bottom-left-radius: 3px; +} +.dj_ff3 .mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + -moz-border-bottom-right-radius: 3px; +} +.mblOverlay { + text-align: center; +} +.dj_gecko .mblOverlay { + text-align: -moz-center; +} +.dj_ie9 .mblOverlay > *, +.dj_ie8 .mblOverlay > * { + margin: 0 auto; +} +.dj_ie6 .mblOverlay { + *position: absolute; +} +.mblTooltip { + background-image: none; +} +.dj_ff3 .mblTooltip { + -moz-border-radius: 3px; +} +.dj_ie9 .mblTooltip .mblHeading { + width: auto; +} +.dj_ie6 .mblTooltipBefore .mblTooltipArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipArrow { + right: 0; +} +.dj_ie6 .mblTooltipAbove .mblTooltipArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipArrow { + bottom: 0; +} +.dj_ie6 .mblTooltipBefore .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipBefore .mblTooltipInnerArrow { + right: -1px; +} +.dj_ie6 .mblTooltipAbove .mblTooltipInnerArrow, +.dj_ie7 .mblTooltipAbove .mblTooltipInnerArrow { + bottom: -1px; +} +.dj_ie6 .mblTooltip .mblHeading, +.dj_ie7 .mblTooltip .mblHeading { + padding: 0 9px 12px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + width: auto; + height: auto; + overflow: visible; + line-height: normal; +} +.dj_ie6 .mblTooltip .mblHeading .mblToolBarButton, +.dj_ie7 .mblTooltip .mblHeading .mblToolBarButton { + margin: auto 6px; +} +.mblPageIndicatorDot { + -moz-border-radius: 3px; +} +.mblRadioButton { + background-image: url("compat/button-bg.png"); +} +.mblRadioButtonChecked, +.mblRadioButton:checked { + background-image: url("compat/button-chk-bg.png"); +} +.mblRadioButtonChecked.mblRadioButtonSelected, +.mblRadioButton:checked.mblRadioButtonSelected { + background-image: url("compat/blue-button-sel-bg.png"); +} +.dj_gecko .mblRadioButton { + background-image: none; + -moz-appearance: none; +} +.dj_gecko .mblRadioButtonChecked, +.dj_gecko .mblRadioButton:checked { + background-image: none; +} +.dj_gecko .mblRadioButtonChecked::after, +.dj_gecko .mblRadioButton:checked::after { + -moz-transform: rotate(45deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblRadioButtonChecked.mblRadioButtonSelected, +.dj_gecko .mblRadioButton:checked.mblRadioButtonSelected { + background-image: ''; +} +.dj_ff3 .mblRadioButton { + -moz-border-radius: 0.5em; +} +.dj_ff3 .mblSimpleDialogDecoration { + -moz-border-radius: 0; +} +.mblSlider { + background-image: url("compat/slider-h-bg.png"); + background-repeat: repeat-x; +} +.mblSliderProgressBar { + background-image: url("compat/slider-h-bar-bg.png"); + background-repeat: repeat-x; +} +.mblSliderHandle { + background-image: url("compat/slider-handle-bg.png"); +} +.mblSliderV { + background-color: #e2e2e2; + background-image: none; +} +.mblSliderV .mblSliderProgressBar { + background-color: Highlight; + background-image: none; +} +.dj_gecko .mblSlider { + background-image: none; + -moz-user-select: none; + -moz-box-sizing: content-box; +} +.dj_gecko .mblSliderProgressBar { + background-image: none; +} +.dj_gecko .mblSliderHandle { + background-image: none; +} +.dj_ff3 .mblSlider { + -moz-border-radius: 0; +} +.dj_ff3 .mblSliderProgressBar { + -moz-border-radius: 0; +} +.dj_ff3 .mblSliderHandle { + -moz-border-radius: 0; +} +.mblSpinWheel { + background-image: url("../common/compat/spinwheel-bg.png"); +} +.mblSpinWheelBar { + background-image: url("../common/compat/spinwheel-bar.png"); +} +.mblSpinWheelSlotTouch, +.mblSpinWheelSlotPanel { + left: 0; +} +.dj_gecko .mblSpinWheel { + background-image: -moz-linear-gradient(top, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); +} +.dj_gecko .mblSpinWheelBar { + background-image: -moz-linear-gradient(top, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 1%); +} +.dj_ff3 .mblSpinWheel { + -moz-border-radius: 3px; +} +.dj_ie .mblSpinWheelBar { + filter: progid:DXImageTransform.Microsoft.alpha(opacity=60); +} +.dj_ie6 .mblSpinWheelBar, +.dj_ie7 .mblSpinWheelBar { + z-index: -1; +} +.dj_ie7 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.dj_ie6 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); + height: 200px; +} +.mblDomButtonWhiteCross, .mblDomButtonCross { + background-image: url("../common/domButtons/compat/mblDomButtonWhiteCross.png"); + background-repeat: no-repeat; +} +.mblDomButtonWhiteCross div, .mblDomButtonCross div { + display: none; +} +.dj_ie6 .mblTabBar .mblTabBarButton { + display: inline; +} +.mblTabBarTabBar { + background-image: none; + background-color: #000000; +} +.dj_ff3 .mblTabBarTabBar .mblTabBarButtonSelected { + -moz-border-radius: 3px; +} +.mblTabBarSegmentedControl, +.mblTabBarStandardTab { + background-image: url("compat/heading-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButton, +.mblTabBarStandardTab .mblTabBarButton { + background-image: url("compat/tab-seg-button-bg.png"); +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected, +.mblTabBarStandardTab .mblTabBarButtonSelected { + background-image: url("compat/tab-seg-sel-button-bg.png"); +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:first-child { + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; +} +.dj_ff3 .mblTabBarSegmentedControl .mblTabBarButton:last-child { + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; +} +.dj_ff3 .mblTabBarStandardTab .mblTabBarButton { + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; +} +.mblTabBarSlimTab { + background-image: url("compat/tab-slim-bar-bg.png"); +} +.dj_gecko .mblTabBarSlimTab { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButton { + background-image: -moz-linear-gradient(top, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.dj_gecko .mblTabBarSlimTab .mblTabBarButtonSelected { + background-image: -moz-linear-gradient(top, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarTallTab { + background-image: url("compat/tab-tall-bar-bg.png"); +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-color: #8c8e8c; +} +.mblTextArea { + overflow: auto; +} +.dj_ff3 .mblTextArea { + -moz-border-radius: 0; +} +.dj_ff3 .mblTextBox { + -moz-border-radius: 0; +} +.mblToggleButton { + background-image: url("compat/button-bg.png"); +} +.mblToggleButtonSelected { + background-image: url("compat/button-sel-bg.png"); +} +.mblToggleButtonChecked { + background-image: url("compat/button-chk-bg.png"); +} +.mblToggleButtonChecked.mblToggleButtonSelected { + background-image: url("compat/button-unsel-bg.png"); +} +.dj_gecko .mblToggleButton { + background-image: none; +} +.dj_gecko .mblToggleButtonSelected { + background-image: ''; +} +.dj_gecko .mblToggleButtonChecked { + background-image: none; +} +.dj_gecko .mblToggleButtonChecked:after { + -moz-transform: rotate(45deg) skew(10deg); + -moz-transform-origin: 50% 50%; +} +.dj_gecko .mblToggleButtonChecked.mblToggleButtonSelected { + background-image: ''; +} +.dj_ff3 .mblToggleButton { + -moz-border-radius: 0; +} +.dj_ff3 .mblToggleButton.mblToggleButtonChecked::after { + -moz-transform: translate(-25px, -6px) rotate(45deg) skew(10deg); +} +.dj_ie .mblToggleButtonChecked:after { + top: 9px; + left: 5px; + width: 12px; + border: none; + background-image: url("compat/togglebutton-chk-mark-bg.png"); +} +.mblValuePickerSlotButton { + background-image: url("compat/valuepicker-button-bg.png"); +} +.mblValuePickerSlotButtonSelected { + background-color: Highlight; +} +.mblValuePickerSlotInputArea { + background-color: #f7f7f7; +} +.dj_gecko .mblValuePickerSlotButton { + background-image: none; +} +.dj_gecko .mblValuePickerSlotButtonSelected { + background-image: none; +} +.dj_gecko .mblValuePickerSlotInputArea { + background-image: none; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/windows.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/windows.css new file mode 100644 index 00000000..e2f4458a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/windows.css @@ -0,0 +1,6458 @@ +html.mobile, +.mobile body { + width: 100%; + margin: 0; + padding: 0; +} +.mobile body { + overflow-x: hidden; + -webkit-text-size-adjust: none; + background-color: #000000; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + font-size: 9pt; + color: #ffffff; + padding: 8px 0 8px 0; +} +.mblBackground { + background-color: #000000; +} +.mblColorBlue { + color: #ffffff; + background-color: #2362dd; + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #2362dd 100%); +} +.mblColorBlue45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#7a9de9), to(#2362dd)); + background-image: linear-gradient(to right bottom, #7a9de9 0%, #2362dd 100%); +} +.mblColorDefault { + color: #ffffff; + background-color: transparent; + background-image: none; +} +.mblColorDefault45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#e2e2e2), to(#a4a4a4)); + background-image: linear-gradient(to right bottom, #e2e2e2 0%, #a4a4a4 100%); +} +.mblColorDefaultSel { + color: #ffffff; + background-color: Highlight; +} +.mblColorDefaultSel45 { + background-image: -webkit-gradient(linear, left top, right bottom, from(#bbbbbb), to(#666666)); + background-image: linear-gradient(to right bottom, #bbbbbb 0%, #666666 100%); +} +.mblSpriteIcon { + position: absolute; +} +.mblSpriteIconParent { + position: relative; + font-size: 1px; +} +.mblImageIcon { + vertical-align: top; +} +.unselectable { + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; +} +body { + -ms-touch-action: pan-y; +} +label { + margin-right: 5px; +} +@-ms-viewport { + user-zoom: fixed; + max-zoom: 1; + min-zoom: 1; + zoom: 1; +} +@media screen and (orientation: portrait) and (min-device-width: 768px) { + @-ms-viewport { + width: device-width; + } +} +@media screen and (orientation: landscape) and (min-device-width: 1366px) { + @-ms-viewport { + width: device-width; + } +} +.mblHeading { + position: relative; + margin: 0; + width: 100%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 1; + padding: 0; + height: 42px; + font-family: Helvetica; + font-size: 20px; + font-weight: bold; + text-align: center; + line-height: 44px; + border: none; + color: #ffffff; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + font-weight: 400; + text-align: left; + font-size: 17pt; + overflow: visible; +} +.mblHeading * { + z-index: 2; +} +.mblHeadingDivTitle { + position: absolute; + width: 100%; + display: none; + left: 0; + z-index: 1; +} +.mblHeadingCenterTitle .mblHeadingDivTitle { + display: block; +} +.mblHeadingCenterTitle .mblHeadingSpanTitle { + display: none; +} +h1, +h2, +h3, +h4, +h5, +h6 { + line-height: normal; + font-weight: 400; + margin: 0; +} +h1.mblHeading { + font-size: 19pt; +} +h2.mblHeading { + font-size: 17pt; +} +h3.mblHeading { + font-size: 15pt; +} +h4.mblHeading { + font-size: 11pt; +} +h5.mblHeading { + font-size: 10pt; +} +h6.mblHeading { + font-size: 9pt; +} +.mblHeading .mblToolBarButton ~ .mblHeadingDivTitle { + text-align: center; +} +.mblHeading .mblToolBarButton.mblToolBarButtonHasRightArrow { + float: right; +} +.mblSlide { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlide.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlide.mblOut.mblReverse.mblTransition, +.mblSlide.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblSlide.mblOut.mblTransition, +.mblSlide.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblSlide.mblOut, +.mblSlide.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblSlide.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFlip.mblTransition { + -webkit-transition-property: all; + transition-property: all; + -webkit-transition-duration: 0.2s; + transition-duration: 0.2s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblFlip.mblOut { + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.mblFlip.mblOut.mblTransition { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, 30deg) !important; + transform: scale(0, 0.8) skew(0, 30deg) !important; +} +.mblFlip.mblIn { + opacity: 0; + -webkit-transform: scale(0, 0.8) skew(0, -30deg) !important; + transform: scale(0, 0.8) skew(0, -30deg) !important; +} +.mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.2s; + transition-delay: 0.2s; + opacity: 1; + -webkit-transform: scale(1, 1) skew(0, 0) !important; + transform: scale(1, 1) skew(0, 0) !important; +} +.dj_android.dj_tablet .mblFlip.mblTransition { + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.dj_android.dj_tablet .mblFlip.mblIn.mblTransition { + -webkit-transition-delay: 0.4s; + transition-delay: 0.4s; +} +.mblFade { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblFade.mblTransition { + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; +} +.mblFade.mblOut { + opacity: 1; +} +.mblFade.mblOut.mblTransition { + -webkit-transition-timing-function: ease-out; + transition-timing-function: ease-out; + opacity: 0; +} +.mblFade.mblIn { + opacity: 0; +} +.mblFade.mblIn.mblTransition { + -webkit-transition-timing-function: ease-in; + transition-timing-function: ease-in; + opacity: 1; +} +.mblView { + position: relative; + top: 0px; + left: 0px; + width: 100%; + color: #ffffff; + padding: 0 10px 0 15px; + width: auto; +} +.mblView.mblIn { + position: absolute; +} +.mblFixedHeaderBar { + z-index: 1; +} +.mblFixedBottomBar { + position: absolute !important; + width: 100%; + z-index: 1; +} +.mblToolBarButton { + display: inline-block; + position: relative; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin: 6px; + padding: 0 10px; + height: 29px; + line-height: 29px; + text-align: center; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + vertical-align: middle; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; +} +.mblToolBarButtonHasIcon, +.mblToolBarButtonLightIcon { + padding: 0; +} +.mblHeading .mblToolBarButton { + float: left; +} +.mblHeading span.mblToolBarButtonLightIcon { + padding: 0; +} +.mblToolBarButtonHasLeftArrow { + padding-right: 0; + padding-left: 10px; +} +.mblToolBarButtonHasRightArrow { + padding-left: 0; + padding-right: 10px; +} +.mblToolBarButtonArrow { + position: absolute; + top: 5px; + width: 20px; + height: 19px; + border-radius: 1px; + -webkit-transform: scale(0.7, 1.05) rotate(45deg); + transform: scale(0.7, 1.05) rotate(45deg); + border: 1px solid #9b9b9b; + border-right-color: #767676; + border-bottom-color: #767676; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: -1px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: -1px; +} +.mblToolBarButtonBody { + display: inline-block; + position: relative; + overflow: hidden; + border-radius: 0; + border: none; +} +.mblToolBarButton .mblToolBarButtonBody { + width: 100%; +} +.mblToolBarButtonBody table { + margin: 0 auto; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonBody { + border-left-width: 0; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonBody { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.mblToolBarButtonText .mblToolBarButtonIcon { + padding-left: 10px; +} +.mblToolBarButtonText .mblToolBarButtonLabel { + padding-right: 10px; + height: 29px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonIcon { + padding-left: 4px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonLabel { + padding-right: 4px; +} +.mblToolBarButtonIcon > div { + height: 29px; +} +.mblToolBarButton { + border: 2px solid #ffffff; +} +.mblToolBarButtonHasLeftArrow, +.mblToolBarButtonHasRightArrow { + width: 27px; + height: 27px; + border-radius: 20px; + border: 2px solid #ffffff; + padding: 0px; + margin: 0px; + margin-top: 8px; + margin-bottom: 8px; + background-image: url("images/dark/back.png"); + background-position: 50% 50%; + background-size: 27px 27px; + background-repeat: no-repeat; +} +.mblToolBarButtonHasLeftArrow *, +.mblToolBarButtonHasRightArrow * { + display: none; +} +.mblToolBarButtonHasLeftArrow:active, +.mblToolBarButtonHasRightArrow:active { + background-color: Highlight; +} +.mblToolBarButtonHasRightArrow { + transform: rotate(180deg); +} +.mblRoundRect { + margin: 7px 9px 16px; + padding: 8px; + border: 1px solid #cccccc; + border-radius: 8px; + background-color: #ffffff; + border: none; + background-color: transparent; + border-radius: 0px; + margin: 0px; + padding: 0px; +} +.mblRoundRect.mblShadow { + -webkit-box-shadow: none; + box-shadow: none; +} +.mblEdgeToEdgeCategory { + position: relative; + margin: 0; + padding: 0 10px; + overflow: hidden; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + text-overflow: ellipsis; + white-space: nowrap; + display: inline-block; + padding: 0 0 0 5px; + font-size: 15pt; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + font-weight: 200; + line-height: 2; + height: 43px; + width: 38px; + background-color: Highlight; + border: none; + color: #ffffff; + text-transform: lowercase; + overflow: visible; +} +.mblEdgeToEdgeCategoryLong { + width: 100%; +} +.mblEdgeToEdgeCategory:first-of-type { + margin-top: 8px; +} +.mblRoundRectCategory { + margin: 18px 0 0 20px; + padding: 0; + font-family: Helvetica; + font-size: 16px; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + color: #ffffff; + margin: 0px; +} +.mblRoundRectList { + margin: 7px 9px 16px; + padding: 0; + border: 1px solid #cccccc; + border-radius: 8px; + background-color: #ffffff; +} +.mblRoundRectList .mblListItem:first-child, +.mblRoundRectList .mblEdgeToEdgeCategory:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblRoundRectList .mblListItem:last-child, +.mblRoundRectList .mblEdgeToEdgeCategory:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblRoundRectList { + padding: 0; + border: none; + background-color: transparent; + margin: 0px; +} +.mblRoundRectList .mblListItem { + border-radius: 0px !important; +} +.mblEdgeToEdgeList { + margin: 0; + padding: 0; + background-color: transparent; + padding: 0px; +} +.mblEdgeToEdgeList .mblListItem:last-child { + border-bottom-color: #bfbfbf; +} +.mblDomButtonGrayArrow, +.mblDomButtonArrow { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonGrayArrow > div, +.mblDomButtonArrow > div { + position: absolute; + top: 10px; + left: 6px; + width: 6px; + height: 6px; + font-size: 1px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-width: 3px 3px 0px 0px; + border-style: solid; + border-color: #808080; +} +.mblDomButtonDarkBlueCheck, +.mblDomButtonCheck { + position: relative; + width: 20px; + height: 29px; +} +.mblDomButtonDarkBlueCheck > div, +.mblDomButtonCheck > div { + position: absolute; + left: 0px; + top: 8px; + width: 16px; + height: 6px; + font-size: 1px; + -webkit-transform: scaleX(0.7) rotate(135deg); + transform: scaleX(0.7) rotate(135deg); + border-width: 3px 4px 0px 0px; + border-style: solid; + border-color: #314e84; +} +.mblListItem { + position: relative; + overflow: hidden; + + padding: 0 8px; + height: 43px; + list-style-type: none; + line-height: 43px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border: none; + background-color: transparent; + color: #ffffff; + font-size: 15pt; + padding: 0; +} +.mblListItem.mblVariableHeight { + padding: 11px 8px; + height: auto; + line-height: normal; +} +.mblListItemSelected { + color: Highlight; +} +.mblListItemSelected .mblDomButton div { + border-color: white; +} +.mblListItemLabelSelected { + background-color: #048bf4; +} +.mblListItemChecked { + color: #314e84; +} +.mblListItemChecked .mblListItemRightIcon { + visibility: visible; +} +.mblListItemChecked .mblListItemUncheckIcon { + position: absolute; + visibility: hidden; +} +.mblListItemUnchecked .mblListItemRightIcon { + visibility: hidden; +} +.mblListItemUnchecked .mblListItemUncheckIcon { + visibility: visible; +} +.mblListItemDeleteIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemIcon { + position: relative; + float: left; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; + margin-right: 11px; +} +.mblListItemRightIcon, +.mblListItemRightIcon2, +.mblListItemUncheckIcon { + position: relative; + float: right; + line-height: normal; + margin-top: 7px; + margin-bottom: -7px; +} +.mblListItemRightText { + position: relative; + float: right; + line-height: normal; + margin-right: 4px; + margin-top: 12px; +} +.mblListItemLabel { + position: relative; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 100%; +} +.mblVariableHeight .mblListItemLabel { + white-space: normal; +} +.mblListItemSubText { + font-size: 14px; + color: gray; +} +.mblListItemLayoutLeft { + position: relative; + float: left; + margin-right: 11px; +} +.mblListItemLayoutCenter { + position: absolute; + width: 100%; + text-align: center; +} +.mblListItemLayoutRight { + position: relative; + float: right; +} +.mblListItemFloat { + position: absolute; + border: 1px solid gray; + opacity: 0.5; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + border-radius: 0px !important; + -moz-border-radius: 0px !important; +} +.mblListItem { + margin-top: 8px; + margin-bottom: 8px; +} +.mblListItem .mblListItemLabel:active { + color: Highlight; +} +.mblListItem .mblListItemLabel:first-child { + margin-left: 53px; + overflow: visible; +} +.mblListItem .mblListItemLabel:first-child:before { + content: ''; + width: 43px; + height: 43px; + background-color: #1f1f1f; + position: absolute; + margin-left: -53px; +} +.mblListItem .mblListItemIcon { + height: 43px; + width: 43px; + margin: 0 10px 0 0; +} +.mblListItem .mblListItemEmptyIcon { + padding-top: 43px; + background-color: #1f1f1f; +} +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} +.mblScrollableView:not(.mblView) { + padding: 0px; +} +.mblView.mblScrollableView .mblScrollableViewContainer { + min-width: calc(100% - 15px - 10px) !important; + width: auto !important; +} +.mblSwitch { + margin: 0; + position: relative; + display: inline-block; + height: 27px; + line-height: 29px; + overflow: hidden; + text-align: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblListItem .mblSwitch { + position: absolute; + right: 12px; + top: 8px; +} +.mblSwitchInner { + position: absolute; + top: 0; + height: 27px; +} +.mblSwitchAnimation .mblSwitchInner { + -webkit-transition-property: left; + transition-property: left; + -webkit-transition-duration: 0.1s; + transition-duration: 0.1s; +} +.mblSwitchOn .mblSwitchInner { + left: 0; +} +.mblSwitchBg { + position: absolute; + top: 0; + width: 94px; + height: 27px; + font-family: Helvetica; + font-size: 16px; + font-weight: bold; + line-height: 29px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: none; +} +.mblSwitchBgLeft { + left: 0; + color: white; + background-color: #3f84eb; +} +.mblSwitchBgRight { + color: #7f7f7f; +} +.mblSwitchKnob { + position: absolute; + top: 0; + height: 27px; + font-size: 1px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: 2px solid #000000; + background-color: #ffffff; + width: 18px !important; + z-index: 3; + border-radius: 0 !important; +} +.mblSwitchText { + position: relative; + top: 0; + width: 53px; + height: 27px; + padding: 0; + line-height: 28px; + text-align: center; +} +.mblSwitchTextLeft { + left: 0; +} +.mblSwitchTextRight { + left: 40px; +} +.mblSwSquareShape { + width: 94px; +} +.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchBgRight { + left: 53px; +} +.mblSwSquareShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwSquareShape .mblSwitchText { + width: 53px; +} +.mblSwSquareShape .mblSwitchTextRight { + left: 40px; +} +.mblSwRoundShape1 { + width: 77px; +} +.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwRoundShape1 .mblSwitchBg { + width: 77px; + border-radius: 14px; +} +.mblSwRoundShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 13px; +} +.mblSwRoundShape1 .mblSwitchText { + width: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwRoundShape2 { + width: 94px; +} +.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBg { + border-radius: 14px; +} +.mblSwRoundShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 13px; +} +.mblSwRoundShape2 .mblSwitchText { + width: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwArcShape1 { + width: 77px; +} +.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: -50px; +} +.mblSwArcShape1 .mblSwitchBg { + width: 77px; + border-radius: 5px/14px; +} +.mblSwArcShape1 .mblSwitchBgRight { + left: 50px; +} +.mblSwArcShape1 .mblSwitchKnob { + left: 50px; + width: 27px; + border-radius: 5px/13px; +} +.mblSwArcShape1 .mblSwitchText { + width: 50px; +} +.mblSwArcShape1 .mblSwitchTextRight { + left: 26px; +} +.mblSwArcShape2 { + width: 94px; +} +.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBg { + border-radius: 5px/14px; +} +.mblSwArcShape2 .mblSwitchBgRight { + left: 51px; +} +.mblSwArcShape2 .mblSwitchKnob { + left: 51px; + width: 43px; + border-radius: 5px/13px; +} +.mblSwArcShape2 .mblSwitchText { + width: 51px; +} +.mblSwArcShape2 .mblSwitchTextRight { + left: 42px; +} +.mblSwDefaultShape { + width: 94px; +} +.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBg { + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchBgRight { + left: 53px; +} +.mblSwDefaultShape .mblSwitchKnob { + left: 53px; + width: 41px; + border-radius: 2px; +} +.mblSwDefaultShape .mblSwitchText { + width: 53px; +} +.mblSwDefaultShape .mblSwitchTextRight { + left: 40px; +} +.mblSwitchBgLeft { + background-color: Highlight; + height: 14px; + margin: auto 4px; + top: 50%; + bottom: 50%; + border-radius: 0 !important; + width: 45px !important; + z-index: 1; +} +.mblSwitch { + width: 65px; + float: right; + display: block; + clear: right; +} +.mblSwitch:before { + content: ''; + width: 85%; + height: 65%; + position: absolute; + border: 2px solid #ffffff; + margin: auto 0; + top: 50%; + bottom: 50%; + z-index: 2; +} +.mblSwitch.mblSwitchOn .mblSwitchKnob { + left: 45px !important; +} +.mblSwitch .mblSwitchInner { + width: 100%; +} +.mblSwitch[disabled] .mblSwitchKnob, +.mblSwitch[disabled] .mblSwitchBgLeft { + background-color: #808080; +} +.mblSwitch[disabled]:before { + border-color: #808080; +} +.mblSwitchText { + display: none !important; +} +.mblSwitchLabel { + color: #ffffff; + position: relative; + float: left; + clear: both; + margin: 3px 0; +} +.mblSwitchContainer { + width: 100%; + min-height: 27px; + margin-top: 8px; + margin-bottom: 8px; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} +.mblHeading .mblProgressIndicator { + right: 0px; +} +.mblDomButtonWhitePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhitePlus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhitePlus > div > div { + + position: absolute; + top: -6px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteMinus > div { + + position: absolute; + top: 12px; + left: 8px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonWhiteUpArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteUpArrow div { + position: absolute; + left: 0px; + clip: rect(0px 30px 20px 0px); +} +.mblDomButtonWhiteUpArrow > div > div { + top: 9px; + left: 4px; + width: 20px; + height: 20px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteDownArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteDownArrow div { + position: absolute; + left: 0px; + clip: rect(7px 50px 40px 0px); +} +.mblDomButtonWhiteDownArrow > div > div { + top: -10px; + left: 2px; + width: 25px; + height: 25px; + margin: 0px; + font-size: 1px; + background-color: white; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.6) rotate(45deg); + transform: scaleX(0.6) rotate(45deg); +} +.mblDomButtonWhiteSearch { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteSearch > div { + position: absolute; + top: 5px; + left: 6px; + width: 10px; + height: 10px; + margin: 0px; + font-size: 1px; + border: 2px solid white; + border-radius: 6px; +} +.mblDomButtonWhiteSearch > div > div { + position: absolute; + top: 10px; + left: 7px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: white; + border: none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 0px; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonCheckboxOn { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOn > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOn > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #00cf00; + border-top: none; + border-bottom: 1px solid #4a5a71; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonCheckboxOff { + position: relative; + width: 30px; + height: 30px; + border-width: 1px; + border-style: outset; + border-color: #a5a2a5; + color: white; + border-radius: 3px; + background-color: #d6d3d6; + background: -webkit-gradient(linear, left top, left bottom, from(#eff3ef), to(#bdbebd)); + background: linear-gradient(to bottom, #eff3ef 0%, #bdbebd 100%); +} +.mblDomButtonCheckboxOff > div { + position: absolute; + top: 15px; + left: 3px; + width: 14px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(50deg); + transform: rotate(50deg); +} +.mblDomButtonCheckboxOff > div > div { + position: absolute; + top: -10px; + left: 0px; + width: 20px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #bdbabd; + border-bottom: none; + border-top: 1px solid #8c8e8c; + border-radius: 2px; + -webkit-transform: rotate(-100deg); + transform: rotate(-100deg); +} +.mblDomButtonBlueCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonBlueCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlueCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlueCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#6ba2e7), to(#216dd6), color-stop(0.5, #4282de), color-stop(0.5, #216dd6)); + background: linear-gradient(to bottom, #6ba2e7 0%, #4282de 50%, #216dd6 50%, #216dd6 100%); +} +.mblDomButtonBlueCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonBlueCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonRedCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonRedCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonRedCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonRedCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonRedCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleMinus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleMinus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleMinus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 12px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCirclePlus > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCirclePlus > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCirclePlus > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; +} +.mblDomButtonGreenCirclePlus > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonGreenCircleArrow { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGreenCircleArrow > div { + position: relative; + top: 2px; + left: 2px; + width: 22px; + height: 22px; + border: 1px solid #b5b6b5; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonGreenCircleArrow > div > div { + position: relative; + top: 2px; + left: 2px; + width: 18px; + height: 18px; + border-radius: 9px; + background: -webkit-gradient(linear, left top, left bottom, from(#7be75a), to(#398c08), color-stop(0.5, #6bc642), color-stop(0.5, #4aad21)); + background: linear-gradient(to bottom, #7be75a 0%, #6bc642 50%, #4aad21 50%, #398c08 100%); +} +.mblDomButtonGreenCircleArrow > div > div > div { + position: absolute; + top: 5px; + left: 6px; + width: 8px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonGreenCircleArrow > div > div > div > div { + position: absolute; + top: 1px; + left: 6px; + width: 3px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +.mblDomButtonGrayRoundRect { + position: relative; + width: 29px; + height: 29px; + text-align: right; +} +.mblDomButtonGrayRoundRect > div { + position: absolute; + right: 0px; + display: inline; + padding: 0px 5px; + top: 7px; + color: white; + font-family: Helvetica; + font-size: 12px; + border-radius: 4px; + background-color: #949ba5; + text-align: center; +} +.mblDomButtonGrayRoundRect > div > div { + display: none; +} +.mblDomButtonSilverCircleDownArrow { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleDownArrow > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div { + position: relative; + top: 3px; + left: 3px; + width: 20px; + height: 20px; + border-radius: 10px; + background: -webkit-gradient(linear, left top, left bottom, from(#979797), to(#616161)); + background: linear-gradient(to bottom, #979797 0%, #616161 100%); +} +.mblDomButtonSilverCircleDownArrow > div > div > div { + position: absolute; + left: 0px; + clip: rect(6px 50px 40px 0px); +} +.mblDomButtonSilverCircleDownArrow > div > div > div > div { + position: absolute; + top: -5px; + left: 1px; + width: 18px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #d1d1d1; + border-top: 1px solid #4a5a71; + -webkit-transform: scaleX(0.7) rotate(45deg); + transform: scaleX(0.7) rotate(45deg); +} +.mblDomButtonSilverCircleGreenButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #1b991c; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#17df25), to(#1ba51c)); + background: radial-gradient(6px at center, #17df25 0%, #1ba51c 100%); +} +.mblDomButtonSilverCircleGrayButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGrayButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGrayButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #aeaeae; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#d4d4d4), to(#bababa)); + background: linear-gradient(to bottom, #d4d4d4 0%, #bababa 100%); +} +.mblDomButtonSilverCircleOrangeButton { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleOrangeButton > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleOrangeButton > div > div { + position: relative; + top: 6px; + left: 6px; + width: 12px; + height: 12px; + border: 1px inset #ca701a; + border-radius: 7px; + background: -webkit-gradient(radial, center center, 0, center center, 6, from(#ff7a07), to(#e66b03)); + background: radial-gradient(6px at center, #ff7a07 0%, #e66b03 100%); +} +.mblDomButtonSilverCircleGreenPlus { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleGreenPlus > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleGreenPlus > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleGreenPlus > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #17df25; +} +.mblDomButtonSilverCircleRedCross { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonSilverCircleRedCross > div { + position: relative; + top: 0px; + left: 0px; + width: 26px; + height: 26px; + border: 1px solid #b5b6b5; + border-radius: 13px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#c2c2c2)); + background: linear-gradient(to bottom, #efefef 0%, #c2c2c2 100%); +} +.mblDomButtonSilverCircleRedCross > div > div { + position: absolute; + top: 11px; + left: 4px; + width: 18px; + height: 4px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} +.mblDomButtonSilverCircleRedCross > div > div > div { + position: absolute; + top: -7px; + left: 7px; + width: 4px; + height: 18px; + margin: 0px; + font-size: 1px; + background-color: #f00e5a; +} +.mblDomButtonBlueBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonBlueBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#84aff4), to(#2758b3)); + background: linear-gradient(to bottom, #84aff4 0%, #2758b3 100%); +} +.mblDomButtonGreenBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonGreenBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#59e738), to(#0aa908)); + background: linear-gradient(to bottom, #59e738 0%, #0aa908 100%); +} +.mblDomButtonOrangeBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonOrangeBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#f9e20a), to(#ff6b0a)); + background: linear-gradient(to bottom, #f9e20a 0%, #ff6b0a 100%); +} +.mblDomButtonRedBall { + position: relative; + width: 19px; + height: 29px; +} +.mblDomButtonRedBall > div { + position: relative; + top: 8px; + left: 4px; + width: 14px; + height: 14px; + border-radius: 7px; + background: -webkit-gradient(linear, left top, left bottom, from(#ec9b9d), to(#d73c3f)); + background: linear-gradient(to bottom, #ec9b9d 0%, #d73c3f 100%); +} +.mblDomButtonTransparent19 { + position: relative; + width: 19px; + height: 19px; +} +.mblDomButtonTransparent29 { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonTransparent30 { + position: relative; + width: 30px; + height: 30px; +} +.mblDomButtonYellowStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonYellowStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonYellowStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #cd853f; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonYellowStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonYellowStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #ffff00 transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayStar { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayStar > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 12px; + left: 3px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblDomButtonGrayStar > div > div { + position: absolute; + width: 24px; + height: 0px; + border-style: solid; + border-color: #8c8e8c; + border-width: 1px 0px 0px 0px; + top: -10px; + left: -12px; +} +.mblDomButtonGrayStar > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: 0px; + left: 0px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(72deg); + transform: rotate(72deg); +} +.mblDomButtonGrayStar > div > div > div > div { + position: absolute; + width: 0px; + height: 0px; + border-style: solid; + border-color: #bdbabd transparent transparent transparent; + top: -10px; + left: -12px; + border-width: 9px 12px 0px 12px; + -webkit-transform: rotate(216deg); + transform: rotate(216deg); +} +.mblDomButtonGrayCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonGrayCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #0d1721; + background-color: #6c6e6d; + border-radius: 2px; +} +.mblDomButtonRedCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonRedCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonRedCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #ad3213; + background-color: #e54d1f; + border-radius: 2px; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblDomButtonGrayKnob { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayKnob > div { + + position: absolute; + top: 6px; + left: 2px; + width: 23px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayKnob > div > div > div { + + position: absolute; + top: 6px; + width: 23px; + height: 3px; + background-color: #cecfce; + border-width: 1px 1px 0 0; + border-style: solid; + border-color: #9c9e9c; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDissolve.mblOut { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveOut; + animation-name: mblDissolveOut; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +.mblDissolve.mblIn { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-name: mblDissolveIn; + animation-name: mblDissolveIn; + -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); + animation-timing-function: cubic-bezier(0.25, 1, 0.75, 0); +} +@-webkit-keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@keyframes mblDissolveOut { + from { + opacity: 1; + } + to { + opacity: 0; + } +} +@-webkit-keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes mblDissolveIn { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +.mblCover { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCover.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCover.mblOut { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblCover.mblIn { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblCover.mblIn.mblReverse { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblCover.mblOut.mblTransition, +.mblCover.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblCover.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCube { + -webkit-animation-duration: 0.8s; + animation-duration: 0.8s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblCube.mblOut { + -webkit-animation-name: mblCubeOut; + animation-name: mblCubeOut; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +.mblCube.mblIn { + -webkit-animation-name: mblCubeIn; + animation-name: mblCubeIn; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +@-webkit-keyframes mblCubeOut { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOut { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeIn { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeIn { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse; + animation-name: mblCubeOutReverse; + -webkit-transform-origin: 100% 50% !important; + transform-origin: 100% 50% !important; +} +.mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse; + animation-name: mblCubeInReverse; + -webkit-transform-origin: 0% 50% !important; + transform-origin: 0% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse { + 0% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeOutReverse { + 0% { + transform: scale(1, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, -3deg); + } + 100% { + transform: scale(0, 1) skew(0deg, 0deg); + } +} +@-webkit-keyframes mblCubeInReverse { + 0% { + -webkit-transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + -webkit-transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + -webkit-transform: scale(1, 1) skew(0deg, 0deg); + } +} +@keyframes mblCubeInReverse { + 0% { + transform: scale(0, 1) skew(0deg, 0deg); + } + 50% { + transform: scale(0.5, 1) skew(0deg, 3deg); + } + 100% { + transform: scale(1, 1) skew(0deg, 0deg); + } +} +.dj_ios .mblCube { + -webkit-transform-style: preserve-3d !important; +} +.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone; + animation-name: mblCubeOut_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone; + animation-name: mblCubeIn_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@keyframes mblCubeOut_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeIn_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeIn_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_iphone_l; + animation-name: mblCubeOut_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_iphone_l; + animation-name: mblCubeIn_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@keyframes mblCubeOut_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeIn_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeIn_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone; + animation-name: mblCubeOutReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone; + animation-name: mblCubeInReverse_iphone; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@keyframes mblCubeOutReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(90deg) translateZ(160px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone { + from { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + -webkit-transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +@keyframes mblCubeInReverse_iphone { + from { + transform: scale3d(0.835, 0.835, 0.835) rotateY(-90deg) translateZ(160px); + } + to { + transform: scale3d(0.835, 0.835, 0.835) rotateY(0deg) translateZ(160px); + } +} +.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_iphone_l; + animation-name: mblCubeOutReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_iphone_l; + animation-name: mblCubeInReverse_iphone_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@keyframes mblCubeOutReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(90deg) translateZ(240px); + } +} +@-webkit-keyframes mblCubeInReverse_iphone_l { + from { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + -webkit-transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +@keyframes mblCubeInReverse_iphone_l { + from { + transform: scale3d(0.77, 0.77, 0.77) rotateY(-90deg) translateZ(240px); + } + to { + transform: scale3d(0.77, 0.77, 0.77) rotateY(0deg) translateZ(240px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad; + animation-name: mblCubeOut_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad; + animation-name: mblCubeIn_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@keyframes mblCubeOut_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeIn_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeIn_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut { + -webkit-animation-name: mblCubeOut_ipad_l; + animation-name: mblCubeOut_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn { + -webkit-animation-name: mblCubeIn_ipad_l; + animation-name: mblCubeIn_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOut_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@keyframes mblCubeOut_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeIn_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeIn_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.dj_ipad.dj_ios .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad; + animation-name: mblCubeOutReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad; + animation-name: mblCubeInReverse_ipad; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@keyframes mblCubeOutReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(90deg) translateZ(384px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad { + from { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + -webkit-transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +@keyframes mblCubeInReverse_ipad { + from { + transform: scale3d(0.806, 0.806, 0.806) rotateY(-90deg) translateZ(384px); + } + to { + transform: scale3d(0.806, 0.806, 0.806) rotateY(0deg) translateZ(384px); + } +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblOut.mblReverse { + -webkit-animation-name: mblCubeOutReverse_ipad_l; + animation-name: mblCubeOutReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +.dj_ipad.dj_ios.dj_landscape .mblCube.mblIn.mblReverse { + -webkit-animation-name: mblCubeInReverse_ipad_l; + animation-name: mblCubeInReverse_ipad_l; + -webkit-transform-origin: 50% 50% !important; + transform-origin: 50% 50% !important; +} +@-webkit-keyframes mblCubeOutReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@keyframes mblCubeOutReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(90deg) translateZ(512px); + } +} +@-webkit-keyframes mblCubeInReverse_ipad_l { + from { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + -webkit-transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +@keyframes mblCubeInReverse_ipad_l { + from { + transform: scale3d(0.758, 0.758, 0.758) rotateY(-90deg) translateZ(512px); + } + to { + transform: scale3d(0.758, 0.758, 0.758) rotateY(0deg) translateZ(512px); + } +} +.mblReveal { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblReveal.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblReveal.mblOut { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblTransition { + -webkit-transform: translate3d(-100%, 0px, 0px) !important; + transform: translate3d(-100%, 0px, 0px) !important; +} +.mblReveal.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(100%, 0px, 0px) !important; + transform: translate3d(100%, 0px, 0px) !important; +} +.mblReveal.mblIn { + z-index: -100; + -webkit-transform: translate3d(0%, 0px, -1px) !important; + transform: translate3d(0%, 0px, -1px) !important; +} +.mblReveal.mblIn.mblTransition { + -webkit-transform: translate3d(0%, 0px, 0px) !important; + transform: translate3d(0%, 0px, 0px) !important; +} +.dj_android.dj_tablet .mblReveal.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSlidev { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblSlidev.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.mblSlidev.mblOut.mblReverse.mblTransition, +.mblSlidev.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblSlidev.mblOut.mblTransition, +.mblSlidev.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblSlidev.mblOut, +.mblSlidev.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblSlidev.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblSwirl.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlOut; + animation-name: mblSwirlOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblSwirlIn; + animation-name: mblSwirlIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.mblSwirl.mblOut.mblReverse { + -webkit-animation-name: mblSwirlOutReverse; + animation-name: mblSwirlOutReverse; +} +@-webkit-keyframes mblSwirlOut { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(-360deg) scale(0); + } +} +@keyframes mblSwirlOut { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(-360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlOutReverse { + from { + -webkit-transform: rotate(0deg) scale(1); + } + to { + -webkit-transform: rotate(360deg) scale(0); + } +} +@keyframes mblSwirlOutReverse { + from { + transform: rotate(0deg) scale(1); + } + to { + transform: rotate(360deg) scale(0); + } +} +@-webkit-keyframes mblSwirlIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblSwirlIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutOut; + animation-name: mblScaleOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblScaleOut.mblOut { + -webkit-animation-name: mblScaleOutOutAndroid; + animation-name: mblScaleOutOutAndroid; +} +.mblScaleOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleOutIn; + animation-name: mblScaleOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblScaleOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblScaleOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblScaleOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblScaleOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblScaleOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblScaleIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInOut; + animation-name: mblScaleInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblScaleIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblScaleInIn; + animation-name: mblScaleInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblScaleIn.mblIn { + -webkit-animation-name: mblScaleInInAndroid; + animation-name: mblScaleInInAndroid; +} +@-webkit-keyframes mblScaleInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblScaleInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblScaleInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblScaleInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblScaleInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblSwap { + -webkit-animation-duration: 0.6s; + animation-duration: 0.6s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; +} +.mblSwap.mblOut { + -webkit-animation-name: mblSwapOut; + animation-name: mblSwapOut; +} +.mblSwap.mblIn { + -webkit-animation-name: mblSwapIn; + animation-name: mblSwapIn; +} +.mblSwap.mblOut.mblReverse { + -webkit-animation-name: mblSwapOutReverse; + animation-name: mblSwapOutReverse; +} +.mblSwap.mblIn.mblReverse { + -webkit-animation-name: mblSwapInReverse; + animation-name: mblSwapInReverse; +} +@-webkit-keyframes mblSwapOut { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOut { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(-45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(-20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapIn { + 0% { + z-index: -100; + -webkit-transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapIn { + 0% { + z-index: -100; + transform: translate3d(-20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblSwapOutReverse { + 0% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + -webkit-transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + -webkit-transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@keyframes mblSwapOutReverse { + 0% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } + 50% { + z-index: -60; + transform: translate3d(45%, 5%, 0px) scale(0.6); + opacity: 0.4; + } + 100% { + z-index: -100; + transform: translate3d(20%, 10%, 0px) scale(0.4); + opacity: 0; + } +} +@-webkit-keyframes mblSwapInReverse { + 0% { + z-index: -100; + -webkit-transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + -webkit-transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + -webkit-transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +@keyframes mblSwapInReverse { + 0% { + z-index: -100; + transform: translate3d(20%, 0%, 0px) scale(0.5); + opacity: 0.4; + } + 50% { + z-index: -40; + transform: translate3d(-45%, 0%, 0px) scale(0.7); + opacity: 1; + } + 100% { + z-index: auto; + transform: translate3d(0%, 0%, 0px) scale(1); + opacity: 1; + } +} +.mblZoomOut.mblOut { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutOut; + animation-name: mblZoomOutOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +.dj_android .mblZoomOut.mblOut { + -webkit-animation-name: mblZoomOutOutAndroid; + animation-name: mblZoomOutOutAndroid; +} +.mblZoomOut.mblIn { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomOutIn; + animation-name: mblZoomOutIn; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} +@-webkit-keyframes mblZoomOutOut { + from { + -webkit-transform: scale(1); + opacity: 1; + } + to { + -webkit-transform: scale(0); + opacity: 0; + } +} +@keyframes mblZoomOutOut { + from { + transform: scale(1); + opacity: 1; + } + to { + transform: scale(0); + opacity: 0; + } +} +@-webkit-keyframes mblZoomOutOutAndroid { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0); + } +} +@keyframes mblZoomOutOutAndroid { + from { + transform: scale(1); + } + to { + transform: scale(0); + } +} +@-webkit-keyframes mblZoomOutIn { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomOutIn { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +.mblZoomIn.mblOut { + z-index: -100; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInOut; + animation-name: mblZoomInOut; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.mblZoomIn.mblIn { + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-name: mblZoomInIn; + animation-name: mblZoomInIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.dj_android .mblZoomIn.mblIn { + -webkit-animation-name: mblZoomInInAndroid; + animation-name: mblZoomInInAndroid; +} +@-webkit-keyframes mblZoomInOut { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInOut { + from { + transform: scale(1); + } + to { + transform: scale(1); + } +} +@-webkit-keyframes mblZoomInIn { + from { + -webkit-transform: scale(0); + opacity: 0; + } + to { + -webkit-transform: scale(1); + opacity: 1; + } +} +@keyframes mblZoomInIn { + from { + transform: scale(0); + opacity: 0; + } + to { + transform: scale(1); + opacity: 1; + } +} +@-webkit-keyframes mblZoomInInAndroid { + from { + -webkit-transform: scale(0); + } + to { + -webkit-transform: scale(1); + } +} +@keyframes mblZoomInInAndroid { + from { + transform: scale(0); + } + to { + transform: scale(1); + } +} +.mblAccordion { + border-style: outset; + border-width: 1px; + border: none; +} +.mblAccordionRoundRect { + margin: 7px 9px 16px 9px; + padding: 0; + border: 1px solid #cccccc; + border-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitle:first-child { + border-top-left-radius: 8px; + border-top-right-radius: 8px; +} +.mblAccordionRoundRect .mblAccordionTitleLast, +.mblAccordionRoundRect .mblAccordionPane:last-child { + border-bottom-width: 0; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; +} +.mblAccordionTitle { + position: relative; + height: 30px; + width: 100%; + font-family: Helvetica; + font-size: 17px; + font-weight: bold; + line-height: 30px; + vertical-align: middle; + white-space: nowrap; + border: none; + background-color: transparent; + background-image: none; + font-weight: normal; + color: #ffffff; + font-size: 15pt; + margin-top: 8px; + margin-bottom: 8px; +} +.mblAccordionTitle:first-child { + border-top: none; +} +.mblAccordionTitleAnchor { + display: block; + height: 100%; + text-decoration: none; + white-space: nowrap; + color: #ffffff; + cursor: pointer; +} +.mblAccordionIconParent { + float: left; + margin: 6px 4px 0 6px; + line-height: normal; +} +.mblAccordionIconParent1 { + display: block; +} +.mblAccordionIconParent2 { + display: none; +} +.mblAccordionTitleSelected { + border: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent1 { + display: none; +} +.mblAccordionTitleSelected .mblAccordionIconParent2 { + display: block; +} +.mblAccordionPane { + margin-top: -5px; + padding-left: 50px; + background-color: transparent; + overflow: hidden; + position: relative; +} +.mblAccordionPane:before { + content: ''; + position: absolute; + height: 100%; + width: 2px; + border-left: 2px solid #ffffff; + left: 40px; + z-index: -1; +} +.mblAccordionTitleLabel:active { + color: Highlight; +} +.mblAccordionIconParent { + margin-left: 0px; +} +.mblAccordionRoundRect { + border: none; +} +.mblButton { + padding: 0 10px; + height: 29px; + border-style: outset; + border-width: 1px; + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + border: 2px solid #ffffff; + border-radius: 0; + margin-top: 8px; + margin-bottom: 8px; + color: #ffffff; + background-color: transparent; + font-size: 9pt; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + background-image: none; + line-height: 0; + text-transform: lowercase; + -ms-user-select: none; + height: 32px; + padding-bottom: 3px; + text-decoration: none; +} +.mblButtonSelected { + color: #ffffff; + background-color: Highlight; +} +.mblButtonDisabled, +.mblButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblBlueButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd)); + background-image: linear-gradient(to bottom, #7a9de9 0%, #2362dd 100%); + color: white; +} +.mblRedButton { + background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9d58), to(#ee4115)); + background-image: linear-gradient(to bottom, #fa9d58 0%, #ee4115 100%); + color: white; +} +.mblButton:not([disabled]):active { + background-color: Highlight; +} +.mblCarousel { + overflow: hidden; + height: 300px; +} +.mblCarouselSlot { + position: relative; + float: left; + text-align: left; + box-sizing: border-box; +} +.mblCarouselHeaderBar { + background-color: #3a3a3b; + color: #b1b1b1; + font: bold 16px arial, helvetica, clean, sans-serif; + padding: 1px; +} +.mblCarouselBtnContainer { + float: right; +} +.mblCarouselBtn { + height: 18px; + width: 46px; + font: bold 14px arial, helvetica, clean, sans-serif; + color: gray; + padding-top: 0px; + margin: 0px 2px; + border-width: 1px; + +} +.mblCarouselTitle { + margin: 2px 0px 2px 4px; +} +.mblCarouselHeaderBar .mblPageIndicator { + float: right; + width: auto; + padding: 0px 20px; +} +.mblCarouselHeaderBar .mblPageIndicatorContainer { + margin-left: 0px; + margin-right: 0px; +} +.mblCarouselPages { + position: relative; + text-align: center; +} +.mblCarouselItem { + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblCarouselItemHeaderText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 8px; + margin-bottom: 5px; +} +.mblCarouselItemFooterText { + color: white; + font: 14px arial, helvetica, clean, sans-serif; + text-align: center; + margin-top: 5px; + margin-bottom: 8px; +} +.mblCarouselItemImage { + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5); + vertical-align: bottom; +} +.mblCarouselItemBlank { + display: none; +} +.mblCarouselSlotSelected .mblCarouselItemImage { + opacity: 0.6; + -webkit-box-shadow: none; + box-shadow: none; +} +.mblCheckBox { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + border: 2px solid #ffffff; + border-radius: 0; + opacity: 0; + margin: 0; + margin-top: 8px; + margin-bottom: 8px; + transform: none; + z-index: 1; +} +.mblCheckBoxChecked::after, +.mblCheckBox:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.3em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: black; +} +.mblCheckBoxChecked.mblCheckBoxSelected::after, +.mblCheckBox:checked.mblCheckBoxSelected::after { + border-color: white; +} +.mblCheckBox + .mblCheckableInputDecorator:before { + content: ''; + width: 20px; + height: 20px; + position: absolute; + border: 2px solid #ffffff; + background-color: transparent; + margin-left: -25px; + z-index: 0; + border-radius: 0; + margin-top: 8px; + margin-bottom: 8px; +} +.mblCheckBox:not([disabled]):active + .mblCheckableInputDecorator:before, +.mblCheckBox:not([disabled]) + .mblCheckableInputDecorator:active:before { + background-color: Highlight; +} +.mblCheckBoxChecked + .mblCheckableInputDecorator:before { + background-image: url("images/dark/check.png"); + background-position: 50% 50%; + background-size: 32px 32px; + background-repeat: no-repeat; +} +.mblCheckBox[disabled] + .mblCheckableInputDecorator:before { + border-color: #808080; +} +.mblCheckBox[disabled].mblCheckBoxChecked + .mblCheckableInputDecorator:before { + background-image: url("images/check-disabled.png"); + background-position: 50% 50%; + background-size: 32px 32px; + background-repeat: no-repeat; +} +.mblCheckableInputContainer + label { + color: #ffffff; + margin: 0 5px 0 5px; + margin-top: 8px; + margin-bottom: 8px; + -ms-user-select: none; + display: inline-block; +} +.dijitPopup.mblComboBoxMenuPopup { + margin: 0; + padding: 0; + position: absolute; + border: 0; + background-color: transparent; + -webkit-box-shadow: none; + border-radius: 0; + box-shadow: none; +} +.dijitPopup.mblComboBoxMenuPopup .dijitBackgroundIframe { + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: -1; + border: 0; + padding: 0; + margin: 0; +} +.mblReset { + margin: 0; + padding: 0; + border: 0; + line-height: normal; + font: inherit; + color: inherit; +} +.mblComboBoxMenu { + position: relative; + overflow-y: hidden !important; + overflow: hidden; + border: 1px solid black; + border: none; + border-radius: 0; + background-color: #1f1f1f; + color: #ffffff; + width: 100% !important; + height: calc(100% - 20px) !important; +} +.mblComboBoxMenuItem { + padding: .1em .2em; + border-width: 1px 0 1px 0; + border-style: solid; + text-align: left; + border: none; + color: inherit; + font-size: 15pt; + line-height: 1.4; + padding-left: 15px; + -ms-user-select: none; + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; +} +.mblComboBoxMenuItemSelected { + color: Highlight; +} +.mblComboBoxMenuPreviousButton, +.mblComboBoxMenuNextButton { + font-style: italic; + overflow: hidden; +} +.mblComboBoxMenuPopup { + background-color: #1f1f1f; + color: #ffffff; + width: 100%; + height: calc(100% - 50px) !important; + padding: 50px 0 0 0; + left: 0px !important; + -ms-touch-action: none; +} +.mblComboBoxMenuPopup:before { + content: 'CHOOSE AN ITEM'; + position: absolute; + top: 20px; + left: 15px; + font-weight: 600; +} +.mblComboBoxMenu > div { + width: 100%; +} +.mblComboBoxMenuItem:active { + color: Highlight; +} +.mblFixedSplitter { + width: 100%; + height: 100%; +} +.mblFixedSplitter > * { + position: absolute; + overflow-x: hidden; + overflow-y: auto; +} +.mblFixedSplitterH > * { + top: 0px; + bottom: 0px; +} +.mblFixedSplitterV > * { + width: 100%; + left: 0px; +} +.mblFixedSplitterH > .mblFixedSplitter { + height: auto; +} +.mblGridLayout { + width: 100%; + height: 100%; + padding: 0; +} +.mblGridLayout > div { + margin: 0; + border: 0; + padding: 0; + float: left; + min-height: 1px; +} +.mblGridItemFirstColumn { + clear: left; +} +.mblGridItemTerminator { + clear: both; +} +.mblGridItemLastItem:after { + content: ""; + display: block; + clear: both; +} +.mblDomButtonBlueMinus, +.mblDomButtonBluePlus, +.mblDomButtonDarkBlueMinus, +.mblDomButtonDarkBluePlus, +.mblDomButtonRedMinus, +.mblDomButtonRedPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div, +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div, +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + position: relative; + top: 4px; + left: 3px; + width: 22px; + height: 18px; + border-width: 1px 1px 1px 0px; + border-style: outset; + color: white; + border-radius: 3px; +} +.mblDomButtonBlueMinus > div, +.mblDomButtonBluePlus > div { + border-color: #6d89c7; + background-color: #366edf; + background: -webkit-gradient(linear, left top, left bottom, from(#7a9de9), to(#2362dd), color-stop(0.5, #366edf), color-stop(0.5, #215fdc)); + background: linear-gradient(to bottom, #7a9de9 0%, #366edf 50%, #215fdc 50%, #2362dd 100%); +} +.mblDomButtonDarkBlueMinus > div, +.mblDomButtonDarkBluePlus > div { + border-color: #6d89c7; + background-color: #5877a2; + background: -webkit-gradient(linear, left top, left bottom, from(#8ea4c1), to(#4a6c9b), color-stop(0.5, #5877a2), color-stop(0.5, #476999)); + background: linear-gradient(to bottom, #8ea4c1 0%, #5877a2 50%, #476999 50%, #4a6c9b 100%); +} +.mblDomButtonRedMinus > div, +.mblDomButtonRedPlus > div { + border-color: #cc1122; + background-color: #c9404b; + background: -webkit-gradient(linear, left top, left bottom, from(#d3656d), to(#bc1320), color-stop(0.5, #c9404b), color-stop(0.5, #bc1421)); + background: linear-gradient(to bottom, #d3656d 0%, #c9404b 50%, #bc1421 50%, #bc1320 100%); +} +.mblDomButtonBlueMinus > div > div, +.mblDomButtonBluePlus > div > div, +.mblDomButtonDarkBlueMinus > div > div, +.mblDomButtonDarkBluePlus > div > div, +.mblDomButtonRedMinus > div > div, +.mblDomButtonRedPlus > div > div { + position: absolute; + top: 7px; + left: 7px; + width: 8px; + height: 2px; + margin: 0px; + font-size: 1px; + border-style: none; + background: white; + border-top: 1px solid #4a5a71; +} +.mblDomButtonBluePlus > div > div > div, +.mblDomButtonDarkBluePlus > div > div > div, +.mblDomButtonRedPlus > div > div > div { + position: absolute; + top: -3px; + left: 3px; + width: 2px; + height: 8px; + margin: 0px; + font-size: 1px; + background-color: white; +} +.mblDomButtonBlackCircleCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonBlackCircleCross > div { + position: relative; + top: 3px; + left: 3px; + width: 23px; + height: 23px; + background-color: white; + border-radius: 12px; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5); +} +.mblDomButtonBlackCircleCross > div > div { + position: relative; + top: 2px; + left: 2px; + width: 19px; + height: 19px; + background-color: black; + border-radius: 10px; +} +.mblDomButtonBlackCircleCross > div > div > div { + position: absolute; + top: 8px; + left: 3px; + width: 13px; + height: 3px; + margin: 0px; + font-size: 1px; + border-style: none; + background-color: white; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + border-radius: 1px; +} +.mblDomButtonBlackCircleCross > div > div > div > div { + position: absolute; + top: -5px; + left: 5px; + width: 3px; + height: 13px; + margin: 0px; + font-size: 1px; + background-color: white; + border-radius: 1px; +} +@-webkit-keyframes mblVibrate{ + 0%{ + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: scale(0.01); } +} +@-webkit-keyframes mblShrink0{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: translate(-40%,-70%) scale(0.01); } +} +@-webkit-keyframes mblShrink1{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: translate(-14%,-70%) scale(0.01); } +} +@-webkit-keyframes mblShrink2{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: translate(14%,-70%) scale(0.01); } +} +@-webkit-keyframes mblShrink3{ + from { -webkit-transform: scale(1); } + to { -webkit-transform: translate(40%,-70%) scale(0.01); } +} +.mblIconContainer { + margin: 20px 10px; + padding: 0; +} +.mblIconItem { + position: relative; + overflow: hidden; + + list-style-type: none; + float: left; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblIconItemTerminator { + list-style-type: none; + clear: both; +} +.mblIconItemPane { + list-style-type: none; + background-color: white; + color: black; +} +.mblIconArea { + position: relative; + height: 78px; + font-family: Helvetica; + font-size: 12px; + text-align: center; + margin-top: 5px; + margin-bottom: 5px; + width: 74px; + color: #ffffff; +} +.mblIconArea img { + vertical-align: middle; +} +.mblIconAreaInner { + position: relative; + height: 65px; + line-height: 65px; + text-align: center; +} +.mblIconItemDeleteIcon { + position: absolute; + top: -4px; + left: -2px; +} +.mblIconItemSpriteIcon { + position: absolute; +} +.mblContent { + clear: both; + padding-bottom: 20px; +} +table.mblClose { + clear: both; + cursor: pointer; +} +.mblVibrate { + position: relative; + -webkit-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: mblVibrate; + animation-name: mblVibrate; + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.mblCloseContent { + -webkit-animation-duration: 0.3s; + animation-duration: 0.3s; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: mblShrink; + animation-name: mblShrink; + -webkit-transform: scale(0.01); + transform: scale(0.01); +} +.mblCloseContent.mblShrink0 { + -webkit-animation-name: mblShrink0; + animation-name: mblShrink0; +} +.mblCloseContent.mblShrink1 { + -webkit-animation-name: mblShrink1; + animation-name: mblShrink1; +} +.mblCloseContent.mblShrink2 { + -webkit-animation-name: mblShrink2; + animation-name: mblShrink2; +} +.mblCloseContent.mblShrink3 { + -webkit-animation-name: mblShrink3; + animation-name: mblShrink3; +} +.mblIconItemPaneHeading { + position: relative; + clear: both; + overflow: hidden; + margin-top: 0px; + padding-left: 40px; + height: 25px; + border-top: 1px solid #f1f3f4; + border-bottom: 1px solid #717d85; + background-image: -webkit-gradient(linear, left top, left bottom, from(#e0e4e7), to(#b4bec6), color-stop(0.5, #c4ccd2), color-stop(0.5, #bfc8ce)); + background-image: linear-gradient(to bottom, #e0e4e7 0%, #c4ccd2 50%, #bfc8ce 50%, #b4bec6 100%); + font-family: Helvetica; + font-size: 14px; + color: white; + line-height: 26px; + text-shadow: rgba(0, 0, 0, 0.6) 0px -1px 0px; + text-overflow: ellipsis; + white-space: nowrap; +} +.mblIconItemPaneIcon { + position: absolute; + top: -2px; + left: 1px; +} +@-webkit-keyframes mblVibrate { + 0% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + -webkit-transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + -webkit-transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + -webkit-transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + -webkit-transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@keyframes mblVibrate { + 0% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } + 25% { + transform: rotate(1deg); + bottom: 2px; + left: 1px; + } + 50% { + transform: rotate(-1deg); + bottom: -2px; + left: -1px; + } + 75% { + transform: rotate(2deg); + bottom: 2px; + left: 1px; + } + 100% { + transform: rotate(-2deg); + bottom: -1px; + left: -1px; + } +} +@-webkit-keyframes mblShrink { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: scale(0.01); + } +} +@keyframes mblShrink { + from { + transform: scale(1); + } + to { + transform: scale(0.01); + } +} +@-webkit-keyframes mblShrink0 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-40%, -70%) scale(0.01); + } +} +@keyframes mblShrink0 { + from { + transform: scale(1); + } + to { + transform: translate(-40%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink1 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(-14%, -70%) scale(0.01); + } +} +@keyframes mblShrink1 { + from { + transform: scale(1); + } + to { + transform: translate(-14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink2 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(14%, -70%) scale(0.01); + } +} +@keyframes mblShrink2 { + from { + transform: scale(1); + } + to { + transform: translate(14%, -70%) scale(0.01); + } +} +@-webkit-keyframes mblShrink3 { + from { + -webkit-transform: scale(1); + } + to { + -webkit-transform: translate(40%, -70%) scale(0.01); + } +} +@keyframes mblShrink3 { + from { + transform: scale(1); + } + to { + transform: translate(40%, -70%) scale(0.01); + } +} +.mblIconItemPaneHeading { + display: -ms-flexbox; + -ms-flex-direction: column-reverse; + text-shadow: none; + background-image: none; + border: none; + position: relative; + height: auto; + padding: 0px; +} +.mblIconContainer { + margin: 0px; +} +.mblIconItemPane { + background-color: #1f1f1f; + color: white !important; + position: fixed; + width: 100%; + top: 0px; + z-index: 100; + padding-left: 15px; + padding-right: 10px; + margin-left: -15px; + display: -ms-flexbox; + -ms-flex-direction: column-reverse; +} +.mblContent { + padding: 8px 0px; +} +.mblIconItemPaneIcon { + position: relative; + margin-top: 8px; + margin-bottom: 8px; +} +.mblIconItemPaneIcon:not([title='']) .mblDomButton { + display: none; +} +.mblCloseButton { + display: inline !important; +} +.mblIconMenu { + width: 100%; + height: 100%; + border-radius: 3px; + text-align: center; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + padding: 0; + background-color: rgba(160, 160, 160, 0.85); + border: 1px solid #869cbf; + margin: 0px; +} +.mblIconMenuItem { + float: left; + list-style-type: none; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border-left: 1px solid rgba(192, 192, 192, 0.85); + border-bottom: 1px solid rgba(192, 192, 192, 0.85); +} +.mblIconMenuItemIcon { + position: relative; + margin-left: auto; + margin-right: auto; +} +.mblIconMenuItemFirstColumn { + border-left: none; +} +.mblIconMenuItemLastRow { + border-bottom: none; +} +.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-left-radius: 3px; +} +.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 3px; +} +.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-left-radius: 3px; +} +.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 3px; +} +.mblIconMenuItemAnchor { + display: block; + height: 100%; + font-family: Helvetica; + text-decoration: none; + font-size: 10pt; + color: #ffffff; + cursor: pointer; +} +.mblIconMenuItemTable { + width: 100%; + height: 100%; +} +.mblIconMenuItemTable img { + border: none; +} +.mblIconMenuItemSel { + background-color: Highlight; +} +.mblCoverv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblCoverv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblCoverv.mblOut { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblCoverv.mblIn { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblCoverv.mblIn.mblReverse { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblCoverv.mblOut.mblTransition, +.mblCoverv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblCoverv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblRevealv { + -webkit-transition-property: none; + transition-property: none; + -webkit-transition-duration: 0s; + transition-duration: 0s; +} +.mblRevealv.mblTransition { + -webkit-transition-property: -webkit-transform; + transition-property: transform; + -webkit-transition-duration: 0.4s; + transition-duration: 0.4s; +} +.mblRevealv.mblOut { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.mblRevealv.mblOut.mblTransition { + -webkit-transform: translate3d(0px, -100%, 0px) !important; + transform: translate3d(0px, -100%, 0px) !important; +} +.mblRevealv.mblOut.mblReverse.mblTransition { + -webkit-transform: translate3d(0px, 100%, 0px) !important; + transform: translate3d(0px, 100%, 0px) !important; +} +.mblRevealv.mblIn { + z-index: -100; + -webkit-transform: translate3d(0px, 0%, -1px) !important; + transform: translate3d(0px, 0%, -1px) !important; +} +.mblRevealv.mblIn.mblTransition { + -webkit-transform: translate3d(0px, 0%, 0px) !important; + transform: translate3d(0px, 0%, 0px) !important; +} +.dj_android.dj_tablet .mblRevealv.mblTransition { + -webkit-transition-duration: 0.6s; + transition-duration: 0.6s; + -webkit-transition-timing-function: linear; + transition-timing-function: linear; +} +.mblOverlay { + position: fixed; + z-index: 2000; + left: 0; + bottom: 0; + margin: 0; + width: 100%; + text-align: -webkit-center; + position: fixed !important; + top: 0px !important; + background-color: #1f1f1f; + background-image: none; + padding: 12px 10px 12px 15px; + width: calc(100% - 15px); +} +.mblOverlayHidden *, +.mblOverlayHidden { + visibility: hidden !important; +} +.mblTooltip { + position: absolute; + z-index: 2000; + display: block; + margin: 0; + padding: 5px; + border-width: 1px; + border-style: solid; + opacity: .97; + border-color: #869cbf; + border-radius: 3px; + background-color: #dedede; + background-image: none; +} +.mblTooltipBubble { + overflow: visible; + padding: 3px; + background-color: #f6f6f6; + background-image: none; + color: black; +} +.mblTooltipBubble.mblTooltipAbove .mblTooltipInnerArrow { + border-bottom-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipBelow .mblTooltipInnerArrow { + border-top-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipAfter .mblTooltipInnerArrow { + border-left-color: #f6f6f6; +} +.mblTooltipBubble.mblTooltipBefore .mblTooltipInnerArrow { + border-right-color: #f6f6f6; +} +.mblTooltip.mblTooltipAfter { + margin-left: -11px; +} +.mblTooltip.mblTooltipBefore { + margin-left: 11px; +} +.mblTooltip.mblTooltipAbove { + margin-top: 11px; +} +.mblTooltip.mblTooltipBelow { + margin-top: -11px; +} +.mblTooltipAnchor { + position: absolute; + width: 1px; + height: 1px; + background-color: transparent; + line-height: 0; + font-size: 0; +} +.mblTooltipBefore .mblTooltipAnchor { + left: -1px; +} +.mblTooltipAfter .mblTooltipAnchor { + right: -1px; +} +.mblTooltipAbove .mblTooltipAnchor { + top: -1px; +} +.mblTooltipBelow .mblTooltipAnchor { + bottom: -1px; +} +.mblTooltipArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 11px solid transparent; +} +.mblTooltipBefore .mblTooltipArrow { + left: auto; + right: 1px; + top: 0; + bottom: auto; + border-left-width: 0; + border-right-color: #adadad; +} +.mblTooltipAfter .mblTooltipArrow { + left: 1px; + right: auto; + top: 0; + bottom: auto; + border-right-width: 0; + border-left-color: #adadad; +} +.mblTooltipAbove .mblTooltipArrow { + top: auto; + bottom: 1px; + left: auto; + right: auto; + border-top-width: 0; + border-bottom-color: #adadad; +} +.mblTooltipBelow .mblTooltipArrow { + top: 1px; + bottom: auto; + left: auto; + right: auto; + border-bottom-width: 0; + border-top-color: #adadad; +} +.mblTooltipInnerArrow { + position: absolute; + width: 0; + height: 0; + line-height: 0; + border: 10px solid transparent; +} +.mblTooltipBefore .mblTooltipInnerArrow { + right: 0; + top: 0; + border-left-width: 0; + border-right-color: #dedede; +} +.mblTooltipAfter .mblTooltipInnerArrow { + left: 0; + top: 0; + border-right-width: 0; + border-left-color: #dedede; +} +.mblTooltipAbove .mblTooltipInnerArrow { + bottom: 0; + left: 0; + border-top-width: 0; + border-bottom-color: #dedede; +} +.mblTooltipBelow .mblTooltipInnerArrow { + top: 0; + left: 0; + border-bottom-width: 0; + border-top-color: #dedede; +} +.mblTooltipHidden, +.mblTooltipHidden * { + visibility: hidden !important; +} +.mblTooltipHidden { + top: -99999px !important; + left: -99999px !important; +} +.mblTooltip .mblHeading { + padding-bottom: 3px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + background-color: transparent; + background-image: none; +} +.mblOpener { + background-color: #1f1f1f; + width: calc(100% - 10px - 15px); + height: calc(100% - 50px); + border: none; + top: 0px !important; + left: 0 !important; + margin: 0 !important; + position: fixed; + padding: 50px 10px 0 15px; + opacity: 1; + -ms-touch-action: none; +} +.mblOpener .mblTooltipAnchor, +.mblOpener .mblOpenerUnderlay { + display: none; +} +.mblOpener .mblHeading { + min-height: 50px; + position: absolute; + bottom: 0px; + text-transform: uppercase; + font-size: 9pt; + width: calc(100% - 10px - 15px); + z-index: 3; +} +.mblOpener .mblHeading .mblHeadingDivTitle { + text-align: left; + position: fixed; + top: 0px; + width: auto; + padding-left: 15px; +} +.mblOpener .mblHeading ~ .mblScrollableView { + height: calc(100% - 60px) !important; +} +.mblOpener .mblHeading .mblButton, +.mblOpener .mblHeading .mblToolBarButton { + bottom: 10px; + border: 2px solid #ffffff; + position: absolute; + width: 100%; + max-width: 45%; + padding: 0px; +} +.mblOpener .mblHeading .mblButton:nth-of-type(odd), +.mblOpener .mblHeading .mblToolBarButton:nth-of-type(odd) { + left: 0px; +} +.mblOpener .mblHeading .mblButton:nth-of-type(even), +.mblOpener .mblHeading .mblToolBarButton:nth-of-type(even) { + left: auto !important; + right: 0px; +} +.mblOpener .dijitColorPalette { + width: calc(100% - 10px - 15px); + height: calc(100% - 50px); +} +.mblOpener .dijitColorPalette table { + width: 100%; + height: 100%; + padding: 0px !important; +} +.mblOpener .dijitColorPalette tbody { + width: 100%; + height: 100%; + position: absolute; +} +.mblOpener .dijitColorPalette tr { + display: -ms-flexbox; + -ms-flex: 1; + -ms-flex-align: center; +} +.mblOpener .dijitColorPalette td { + -ms-flex: 1; + display: inline-block; +} +.mblOpener .dijitColorPalette .dijitPaletteImg { + border: none !important; + padding: 2px !important; +} +.mblOpener .dijitColorPalette .dijitColorPaletteSwatch { + border-radius: 0px!important; + border: 2px solid transparent; +} +.mblOpener .dijitColorPalette .dijitPaletteCellSelected .dijitPaletteImg { + margin: 2px 0px !important; +} +.mblOpener .dijitColorPalette .dijitPaletteCellSelected .dijitColorPaletteSwatch { + border: 2px solid Highlight !important; +} +@media screen and (orientation: landscape) { + .dijitColorPalette tbody { + display: -ms-flexbox; + -ms-flex-direction: column; + } +} +.mblTooltip:not(.mblOpener).mblTooltipAbove .mblSpinWheel { + bottom: auto; +} +.mblTooltip:not(.mblOpener).mblTooltipBelow .mblSpinWheel { + top: auto; +} +.mblTooltip:not(.mblOpener).mblTooltipBefore .mblSpinWheel { + left: 0px; +} +.mblTooltip:not(.mblOpener).mblTooltipAfter .mblSpinWheel { + left: auto; + right: 0px; +} +.mblOpenerUnderlay { + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicator { + position: relative; + width: 100%; + height: 20px; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblPageIndicatorContainer { + margin-top: 4px; + margin-left: auto; + margin-right: auto; +} +.mblPageIndicatorDot { + margin: 0px 3px; + width: 6px; + height: 6px; + font-size: 1px; + background-color: #949294; + border-radius: 3px; +} +.mblPageIndicatorDotSelected { + background-color: white; +} +.mblProgressBar { + position: relative; + height: 3px; + background-color: transparent; + border: none; + margin-top: 8px; + margin-bottom: 8px; +} +.mblProgressBarProgress { + -webkit-transition-property: width; + transition-property: width; + -webkit-transition-duration: 0.25s; + transition-duration: 0.25s; + height: 3px; + border: none; + background-color: Highlight; +} +.mblProgressBarNotStarted { + border-left: none; + border-right: none; +} +.mblProgressBarMsg { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + text-align: center; + font-size: 12px; + top: 3px; +} +.mblProgressBar:before { + content: ''; + position: absolute; + height: 3px; + width: 100%; + background-color: Highlight; + opacity: 0.2; +} +.mblProgressBar[disabled]:before { + background-color: #808080; +} +.mblProgressBar[disabled] .mblProgressBarProgress { + background-color: #808080; +} +.mblProgressBar[disabled] .mblProgressBarMsg { + color: #808080; +} +.mblProgressIndicator { + position: relative; + top: 0px; +} +.mblHeading .mblProgressIndicator { + margin: 5px; + float: left; +} +.mblProgContainer { + position: absolute; + width: 100%; + height: 100%; +} +.mblProgressIndicatorCenter { + position: absolute; + top: 180px; + left: 50%; +} +.mblProgressIndicatorCenter .mblProgContainer { + left: -50%; + -webkit-transform-origin: 50% 0; + transform-origin: 50% 0; +} +.mblProg { + position: absolute; + left: 2px; + top: 0px; + width: 11px; + font-size: 1px; + height: 4px; + overflow: hidden; + -webkit-transform-origin: 0 2px; + transform-origin: 0 2px; + background-color: #c0c0c0; + border-radius: 2px; +} +.mblProg0 { + -webkit-transform: translate(18px, 10px) rotate(-90.1deg); + transform: translate(18px, 10px) rotate(-90.1deg); +} +.mblProg1 { + -webkit-transform: translate(22px, 11px) rotate(-60deg); + transform: translate(22px, 11px) rotate(-60deg); +} +.mblProg2 { + -webkit-transform: translate(25px, 14px) rotate(-30deg); + transform: translate(25px, 14px) rotate(-30deg); +} +.mblProg3 { + -webkit-transform: translate(26px, 18px) rotate(0deg); + transform: translate(26px, 18px) rotate(0deg); +} +.mblProg4 { + -webkit-transform: translate(25px, 22px) rotate(30deg); + transform: translate(25px, 22px) rotate(30deg); +} +.mblProg5 { + -webkit-transform: translate(22px, 25px) rotate(60deg); + transform: translate(22px, 25px) rotate(60deg); +} +.mblProg6 { + -webkit-transform: translate(18px, 26px) rotate(90.1deg); + transform: translate(18px, 26px) rotate(90.1deg); +} +.mblProg7 { + -webkit-transform: translate(14px, 25px) rotate(120deg); + transform: translate(14px, 25px) rotate(120deg); +} +.mblProg8 { + -webkit-transform: translate(11px, 22px) rotate(150deg); + transform: translate(11px, 22px) rotate(150deg); +} +.mblProg9 { + -webkit-transform: translate(10px, 18px) rotate(180deg); + transform: translate(10px, 18px) rotate(180deg); +} +.mblProg10 { + -webkit-transform: translate(11px, 14px) rotate(210deg); + transform: translate(11px, 14px) rotate(210deg); +} +.mblProg11 { + -webkit-transform: translate(14px, 11px) rotate(240deg); + transform: translate(14px, 11px) rotate(240deg); +} +.mblProg0Color { + background-color: #c0c0c0; +} +.mblProg1Color { + background-color: #c0c0c0; +} +.mblProg2Color { + background-color: #c0c0c0; +} +.mblProg3Color { + background-color: #c0c0c0; +} +.mblProg4Color { + background-color: #c0c0c0; +} +.mblProg5Color { + background-color: #c0c0c0; +} +.mblProg6Color { + background-color: #b8b9b8; +} +.mblProg7Color { + background-color: #aeafae; +} +.mblProg8Color { + background-color: #a4a5a4; +} +.mblProg9Color { + background-color: #9a9a9a; +} +.mblProg10Color { + background-color: #8e8e8e; +} +.mblProg11Color { + background-color: #838383; +} +.mblProgWhite .mblProg0Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg1Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg2Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg3Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg4Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg5Color { + background-color: #adb9c9; +} +.mblProgWhite .mblProg6Color { + background-color: #acb9cb; +} +.mblProgWhite .mblProg7Color { + background-color: #b7c2d2; +} +.mblProgWhite .mblProg8Color { + background-color: #c4cdda; +} +.mblProgWhite .mblProg9Color { + background-color: #d1d8e2; +} +.mblProgWhite .mblProg10Color { + background-color: #dee3ea; +} +.mblProgWhite .mblProg11Color { + background-color: #eceff3; +} +.mblHeading .mblProgressIndicator { + right: 0px; +} +.mblRadioButton { + position: relative; + margin: -0.5em 3px 0.3em 4px; + width: 1em; + height: 1em; + border-style: outset; + border-width: 1px; + border-radius: 0.5em; + font: inherit; + cursor: pointer; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-transform: translateY(0.45em); + transform: translateY(0.45em); + opacity: 0; + margin: 0; + margin-top: 8px; + margin-bottom: 8px; + transform: none; + z-index: 1; +} +.mblRadioButtonChecked::after, +.mblRadioButton:checked::after { + position: absolute; + content: ""; + width: 0.3em; + height: 0.6em; + top: 0; + left: 0.25em; + border-width: 0.15em; + border-style: none solid solid none; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: black; +} +.mblRadioButtonChecked.mblRadioButtonSelected::after, +.mblRadioButton:checked.mblRadioButtonSelected::after { + border-color: white; +} +.mblRadioButton + .mblCheckableInputDecorator:before { + content: ''; + width: 20px; + height: 20px; + position: absolute; + border: 2px solid #ffffff; + background-color: transparent; + margin-left: -25px; + z-index: 0; + border-radius: 15px; + margin-top: 8px; + margin-bottom: 8px; +} +.mblRadioButton:not([disabled]):active + .mblCheckableInputDecorator:before, +.mblRadioButton:not([disabled]) + .mblCheckableInputDecorator:active:before { + background-color: Highlight; +} +.mblRadioButtonChecked + .mblCheckableInputDecorator:before { + background-image: url("images/dark/radiobtn.png"); + background-position: 50% 50%; + background-size: 13px 13px; + background-repeat: no-repeat; +} +.mblRadioButton[disabled] + .mblCheckableInputDecorator:before { + border-color: #808080; +} +.mblRadioButton[disabled].mblRadioButtonChecked + .mblCheckableInputDecorator:before { + background-image: url("images/radiobtn-disabled.png"); + background-position: 50% 50%; + background-size: 13px 13px; + background-repeat: no-repeat; +} +.mblScrollablePane { + position: relative; + overflow: hidden; +} +.mblScrollableViewContainer { + position: absolute; + top: 0px; +} +.mblScrollablePaneMask { + position: relative; +} +.mblScrollableView:not(.mblView) { + padding: 0px; +} +.mblView.mblScrollableView .mblScrollableViewContainer { + min-width: calc(100% - 15px - 10px) !important; + width: auto !important; +} +.mblSimpleDialog { + position: absolute; + z-index: 100; + text-align: center; + outline: none; + background-color: #1f1f1f; + padding: 0 10px 12px 15px; + width: calc(100% - 15px - 10px); + margin: 0; + text-align: left; + left: 0px !important; +} +.mblSimpleDialogDecoration { + border-radius: 0; + background-color: #1f1f1f; + color: #ffffff; +} +.mblSimpleDialogContainer { + position: relative; + width: 100%; + height: 100%; +} +.mblSimpleDialogCover { + background-color: #000000; + opacity: 0.5; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 99; +} +.mblSimpleDialogCloseBtn { + position: absolute !important; +} +.mblSimpleDialogTitle { + margin: 12px 0; + padding: 0; + width: auto; + font-size: 11pt; + font-weight: 400; + text-align: left; +} +.mblSimpleDialogText { + margin: 12px 0; + width: auto; + text-align: left; +} +.mblSimpleDialog { + position: fixed; + top: 0px !important; + -ms-touch-action: none; +} +.mblSimpleDialog .mblButton { + width: 100%; + max-width: 46%; +} +.mblSimpleDialog .mblButton:nth-of-type(odd) { + float: left; +} +.mblSimpleDialog .mblButton:nth-of-type(even) { + float: right; +} +.mblSimpleDialogCover { + position: fixed; + top: 0px !important; + -ms-touch-action: none; +} +.mblSlider { + margin: 15px; + border-style: inset; + border-width: 1px; + border-radius: 0; + -webkit-user-select: none; + -ms-user-select: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + border: none; + margin-top: 8px; + margin-bottom: 8px; + margin-left: 0px; + margin-right: 0px; +} +.mblSliderH { + width: 200px; + height: 8px; +} +.mblSliderH .mblSliderProgressBar { + height: 100%; +} +.mblSliderH .mblSliderHandle { + top: 50%; +} +.mblSliderV { + height: 200px; + width: 8px; +} +.mblSliderV .mblSliderProgressBar { + width: 100%; +} +.mblSliderV .mblSliderHandle { + left: 50%; +} +.mblSliderProgressBar { + border-radius: 0; +} +.mblSliderHandle { + margin: -10px 0 0 -10px; + width: 18px; + height: 18px; + border-style: outset; + border-width: 1px; + border-radius: 0; + border: none; + background-color: #ffffff; +} +.mblSliderTransition { + -webkit-transition-duration: 400ms; + transition-duration: 400ms; +} +.mblSliderTouchBox { + margin: 0; + padding: 12pt; + left: -12pt; + top: -12pt; + border: none; + width: 100%; + height: 100%; + background-color: transparent; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSlider > div:before { + content: ''; + position: absolute; + width: 100%; + height: 100%; + background-color: #1f1f1f; +} +.mblSlider .mblSliderProgressBar { + background-color: Highlight; +} +.mblSlider .mblSliderTouchBox { + left: 0px; + top: -4px; + padding: 4px 0px; +} +.mblSlider[disabled] > div:before { + opacity: 0.5; +} +.mblSlider[disabled] .mblSliderProgressBar { + background-color: #808080; +} +.mblSliderV { + width: 0.5em !important; + height: 100% !important; +} +.mblSliderV > div { + min-height: 100px; +} +.mblSliderV .mblSliderHandle { + height: 0.5em; + width: 1.1em; + margin-top: -4px; + margin-left: -8px; +} +.mblSliderH { + min-width: 100px; + width: 100% !important; + height: 0.5em !important; +} +.mblSliderH .mblSliderHandle { + height: 1.1em; + width: 0.5em; + margin-top: -8px; + margin-left: -4px; +} +.mblSpinWheel { + position: relative; + overflow: hidden; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #313137), color-stop(0.05, #73747d), color-stop(0.07, #92939b), color-stop(0.09, #ababb5), color-stop(0.12, #c5c6ce), color-stop(0.16, #dfe0e4), color-stop(0.22, #f4f5f6), color-stop(0.35, #fbfcfc), color-stop(0.5, #fbfcfc), color-stop(0.61, #fbfcfc), color-stop(0.61, #b4c1c7), color-stop(0.65, #fbfcfc), color-stop(0.78, #f4f5f6), color-stop(0.84, #dfe0e4), color-stop(0.88, #c5c6ce), color-stop(0.91, #ababb5), color-stop(0.93, #92939b), color-stop(0.95, #73747d), color-stop(1, #313137)); + background: linear-gradient(to bottom, #313137 0%, #73747d 5%, #92939b 7%, #ababb5 9%, #c5c6ce 12%, #dfe0e4 16%, #f4f5f6 22%, #fbfcfc 35%, #fbfcfc 50%, #fbfcfc 61%, #b4c1c7 61%, #fbfcfc 65%, #f4f5f6 78%, #dfe0e4 84%, #c5c6ce 88%, #ababb5 91%, #92939b 93%, #73747d 95%, #313137 100%); + height: 200px; + border-left: solid 3px #000000; + border-right: solid 3px #000000; + color: #000000; + border-radius: 3px; +} +.mblSpinWheelBar { + position: absolute; + top: 79px; + background: -webkit-gradient(linear, left top, left bottom, from(#edeef2), to(#a7adca), color-stop(0, #edeef2), color-stop(0.25, #c8cadd), color-stop(0.49, #bbbfd4), color-stop(0.51, #9fa8c6), color-stop(0.81, #a2a9c7), color-stop(0.82, #a6abc9), color-stop(1, #a7adca)); + background: linear-gradient(to bottom, #edeef2 0%, #c8cadd 25%, #bbbfd4 49%, #9fa8c6 51%, #a2a9c7 81%, #a6abc9 82%, #a7adca 100%); + border: solid 1px #7b8497; + height: 42px; + width: 100%; + clear: both; + opacity: 0.6; +} +.mblSpinWheelDatePicker { + width: 312px; +} +.mblSpinWheelTimePicker { + width: 98px; +} +.mblSpinWheelSlot { + position: relative; + top: 0px; + float: left; + width: 100px; + height: 100%; + border-left: solid 2px #000000; + border-right: solid 2px #000000; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); +} +.mblSpinWheelSlotLabel { + padding: 0 8px; + height: 44px; + overflow: hidden; + font: bold 24px/44px Helvetica, sans-serif; +} +.mblSpinWheelSlotLabel img { + vertical-align: middle; + opacity: 0.7; +} +.mblSpinWheelSlotLabelGray { + color: #cccccc; +} +.mblSpinWheelSlotLabelBlue { + color: #0959d2; +} +.mblSpinWheelSlotContainer { + position: relative; +} +.mblSpinWheelSlotPanel { + position: absolute; + top: 0px; + width: 100%; +} +.mblSpinWheelSlotTouch { + position: absolute; + top: 0px; + width: 100%; + height: 100%; + z-index: 1; +} +.dj_ie .mblSpinWheelSlotTouch { + background-color: rgba(255, 255, 255, 0.01); +} +.dj_ie8 .mblSpinWheelSlotTouch { + background: white; + filter: alpha(opacity=0); +} +.mblSpinWheel { + background-image: none !important; + border: none !important; + margin: auto 0; + height: 400px !important; + width: auto !important; + display: -ms-flexbox; + color: #ffffff; +} +.mblSpinWheel .mblSpinWheelSlot { + -ms-flex-preferred-size: auto; + border: none; + -ms-user-select: none; + text-align: left !important; + overflow: hidden; + margin: 0px !important; + width: 100px !important; +} +.mblSpinWheel .mblSpinWheelSlot:empty { + display: none !important; +} +.mblSpinWheel .mblSpinWheelSlot:not([widgetId]) { + top: 150px; + height: 94px !important; + width: 86px !important; + padding: 0 0 0 8px !important; + margin-right: 6px !important; + background-color: #666666; + line-height: 4.5; +} +.mblSpinWheel .mblSpinWheelSlotContainer:not(.mblSelectedSlot) .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem) { + opacity: 0; + -ms-transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotContainer:not(.mblSelectedSlot) .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem):before { + opacity: 0; + transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem) { + opacity: 1; + -ms-transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotLabel:not(.mblSelectedSlotItem):before { + opacity: 1; + transition: opacity 0.4s ease-out; +} +.mblSpinWheel .mblSpinWheelSlotLabel { + border: none; + margin: 0px; + color: #808080; + height: 100px; + line-height: 3.5; + font-size: 17pt; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSelectedSlotItem { + color: #ffffff; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSelectedSlotItem:before { + background-color: #808080; + z-index: -1; +} +.mblSpinWheel .mblSpinWheelSlotLabel:before { + content: ''; + position: absolute; + width: 90px; + height: 90px; + border: 2px solid #808080; + left: 0px; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSpinWheelSlotLabelGray { + opacity: 0.3; +} +.mblSpinWheel .mblSpinWheelSlotLabel.mblSpinWheelSlotLabelGray:before { + opacity: 0.3; +} +.mblSpinWheel .mblSpinWheelBar { + display: none; +} +.mblSpinWheel .mblSpinWheelSlotTouch { + background-color: #000000; + opacity: 0.01; +} +.mblTooltip.mblOpener .mblSpinWheelDatePicker { + left: calc(50% - 150px); + position: absolute !important; + top: 50%; + bottom: 50%; + width: 300px !important; +} +.mblDomButtonWhiteCross { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonWhiteCross > div { + position: absolute; + top: 12px; + left: 7px; + width: 14px; + height: 2px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -moz-transform: rotate(45deg); + border-radius: 2px; +} +.mblDomButtonWhiteCross > div > div { + position: absolute; + top: -7px; + left: 5px; + width: 2px; + height: 14px; + margin: 0px; + font-size: 1px; + border: 1px solid #808080; + background-color: #ffffff; + border-radius: 2px; +} +.mblTabBar { + position: relative; + margin: 0px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + padding: 0px 6px; + height: 42px; + text-align: center; + color: white; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + padding: 0px; +} +.mblTabBarFill .mblTabBarButton { + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblTabBarButton { + overflow: hidden; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + position: relative; + list-style-type: none; + float: left; +} +.mblTabBarButtonIconArea { + margin: 0 auto; + width: 29px; +} +.mblTabBarButtonIconParent1 { + display: block; +} +.mblTabBarButtonIconParent2 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent1 { + display: none; +} +.mblTabBarButtonSelected .mblTabBarButtonIconParent2 { + display: block; +} +.mblTabBarTabBar { + height: 48px; + border-top: 1px solid #000000; +} +.mblTabBarTabBar .mblTabBarButton { + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; +} +.mblTabBarTabBar .mblTabBarButtonIconArea { + padding-top: 4px; +} +.mblTabBarTabBar .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; + color: white; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; +} +.mblTabBarTabBar .mblTabBarButtonSelected { + border-radius: 3px; + background-color: #404040; +} +.mblTabBarTabBar .mblTabBarButtonSelected .mblTabBarButtonLabel { + color: white; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButton { + width: auto; + padding: 0 3px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconArea { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButton { + margin: 6px 0; + width: 100px; + height: 29px; + border-width: 1px 1px 1px 0px; + font-family: Helvetica; + font-size: 13px; + font-weight: bold; + text-align: center; + line-height: 29px; + border-style: solid; + border-color: #9b9b9b #9b9b9b #767676 #9b9b9b; + color: black; +} +.mblTabBarSegmentedControl .mblTabBarButton:first-child { + border-left-width: 1px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButton:last-child { + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + color: #ffffff; +} +.mblHeading .mblTabBarSegmentedControl { + display: inline; + float: left; + height: auto; + border: none; +} +.mblTabBarStandardTab { + border-top: none; + border-bottom: none; +} +.mblTabBarStandardTab .mblTabBarButton { + margin-top: 9px; + padding: 9px; + border: 1px solid #62676d; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: black; + border-color: #9b9b9b; +} +.mblTabBarStandardTab .mblTabBarButtonIconArea { + position: absolute; + top: 3px; + left: 0px; +} +.mblTabBarStandardTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarSlimTab { + height: 30px; + padding: 0px; + border: 1px solid transparent; + background-color: #000000; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); +} +.mblTabBarSlimTab .mblTabBarButton { + padding: 7px; + border-right: 1px solid #4e4e4e; + background-image: -webkit-gradient(linear, left top, left bottom, from(#2d2d2d), to(#000000), color-stop(0.5, #141414), color-stop(0.5, #000000)); + background-image: linear-gradient(to bottom, #2d2d2d 0%, #141414 50%, #000000 50%, #000000 100%); + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + color: white; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarSlimTab .mblTabBarButton:first-child { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonSelected { + background-color: #404040; + background-image: -webkit-gradient(linear, left top, left bottom, from(#313031), to(#959595), color-stop(0.5, #5a555a), color-stop(0.5, #616161)); + background-image: linear-gradient(to bottom, #313031 0%, #5a555a 50%, #616161 50%, #959595 100%); +} +.mblTabBarSlimTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarFlatTab { + height: 30px; + padding: 0px; + border-style: none; + background-color: transparent; + background-image: none; +} +.mblTabBarFlatTab .mblTabBarButton { + padding: 7px; + background-image: none; + font-family: Helvetica; + font-size: 14px; + font-weight: bold; + text-shadow: rgba(100, 100, 100, 0.6) 0px -1px 0px; + text-align: center; +} +.mblTabBarFlatTab .mblTabBarButtonIconArea { + position: absolute; + top: 0px; + left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-left: 20px; +} +.mblTabBarTallTab { + height: 64px; + border-top: 1px solid #cdd5df; + border-bottom: 2px solid #949694; +} +.mblTabBarTallTab .mblTabBarButton { + margin-top: 3px; + margin-right: 2px; + width: 78px; + height: 61px; + border-width: 0px 1px 0px 1px; + border-style: solid; + border-color: black #182018 black #393c39; + background-image: -webkit-gradient(linear, left top, left bottom, from(#181818), to(#100c10), color-stop(0.1, #313031)); + background-image: linear-gradient(to bottom, #181818 0%, #313031 10%, #100c10 100%); + font-family: Helvetica; + font-size: 13px; + color: white; + text-align: center; +} +.mblTabBarTallTab .mblTabBarButtonIconArea { + margin-top: 8px; +} +.mblTabBarTallTab .mblTabBarButtonLabel { + font-family: "Helvetica Neue", Helvetica; + font-size: 11px; +} +.mblTabBarTallTab .mblTabBarButtonSelected { + background-image: -webkit-gradient(linear, left top, left bottom, from(#a59ea5), to(#848284)); + background-image: linear-gradient(to bottom, #a59ea5 0%, #848284 100%); +} +.mblTabBar { + border: none; + background-image: none; +} +.mblTabBar .mblTabBarButton { + text-shadow: none; + background-image: none; + border: none; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; +} +.mblTabBarSegmentedControl { + min-width: 480px; + padding: 0px !important; +} +.mblTabBarSegmentedControl .mblTabBarButton { + color: #808080; + border: none; + font-size: 17pt; + font-weight: 400; + width: auto; + margin: 0 8px 0 0; + height: auto; + line-height: normal; + display: inline; + float: left; +} +.mblTabBarSegmentedControl .mblTabBarButtonSelected { + color: #ffffff; +} +.mblTextArea { + padding: 4px 1px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + display: block; + background-color: #bfbfbf; + border: 2px solid #ffffff; + margin-top: 8px; + margin-bottom: 8px; + border-radius: 0; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + border-color: #bfbfbf; + padding: 0 0 0 3px; + font-size: 9pt; + width: calc(100% - 10px); +} +.mblExpandingTextArea { + margin: 2px; +} +.mblTextArea:active, +.mblTextArea:focus { + border-color: Highlight; + background-color: white; + color: black; +} +.mblTextArea[disabled] { + border-color: #808080; + background-color: transparent; + color: #808080; +} +.mblTextBox { + height: 22px; + border-width: 1px; + border-style: inset; + font-family: Helvetica; + font-size: 13px; + display: block; + background-color: #bfbfbf; + border: 2px solid #ffffff; + margin-top: 8px; + margin-bottom: 8px; + border-radius: 0; + font-family: "Segoe WP", "Segoe UI", "HelveticaNeue", "Helvetica-Neue", "Helvetica", "BBAlpha Sans", "sans-serif"; + border-color: #bfbfbf; + padding: 0 0 0 3px; + font-size: 9pt; + width: calc(100% - 10px); + height: 2em; +} +.mblTextBox:active, +.mblTextBox:focus { + border-color: Highlight; + background-color: white; + color: black; +} +.mblTextBox[disabled] { + border-color: #808080; + background-color: transparent; + color: #808080; +} +.mblTextBox::-ms-clear { + display: none; +} +.mblSearchBox.iphone4:focus::-webkit-search-cancel-button { + background: none !important; + border-color: transparent !important; +} +.mblSearchBox::-webkit-search-cancel-button { + -webkit-appearance: none; + background-color: #bbc4d0; + background-repeat: no-repeat; + background-position: center center; + background-size: 15px 15px; + background-image: -webkit-gradient(linear, left top, right bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.46, transparent), color-stop(0.46, #ffffff), color-stop(0.54, #ffffff), color-stop(0.54, transparent), to(transparent)) !important; + border: 2px solid #bbc4d0; + box-sizing: border-box; + height: 15px; + width: 15px; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; + border-radius: 1em; +} +.mblSearchBox::-webkit-search-results-decoration { + -webkit-appearance: none; + background-repeat: no-repeat; + background-size: 13px 13px, 9px 9px; + background-position: 0px 0px, 10px 10px; + background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 6, from(transparent), color-stop(0.65, transparent), color-stop(0.8, #bbc4d0), color-stop(0.95, transparent), to(transparent)), -webkit-gradient(linear, right top, left bottom, from(transparent), color-stop(0.425, transparent), color-stop(0.5, #bbc4d0), color-stop(0.575, transparent), to(transparent)) !important; + width: 15px; + height: 15px; + display: inline-block; + vertical-align: middle; +} +.mblSearchBox { + height: auto; +} +.dj_chrome .mblSearchBox { + border-radius: 0; +} +.mblFilteredRoundRectListSearchBox { + width: 100%; + padding-left: 9px; + padding-right: 9px; + box-sizing: border-box; + -webkit-box-sizing: border-box; +} +.mblFilteredRoundRectListSearchBox > input { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox { + width: 100%; +} +.mblFilteredEdgeToEdgeListSearchBox > input { + width: 100%; +} +.mblSearchBox { + height: 2em; +} +.mblFilteredRoundRectListSearchBox, +.mblFilteredEdgeToEdgeListSearchBox { + padding: 0px; +} +.mblToggleButton { + position: relative; + padding: 0 10px 0 25px; + height: 29px; + border-width: 1px 1px 1px 1px; + border-style: outset; + font-family: Helvetica; + line-height: 29px; + cursor: pointer; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + margin-top: 8px; + margin-bottom: 8px; + margin-left: 0px!important; + font-size: 8pt; + color: #ffffff; + background-color: transparent; + border: none; + overflow: visible; + padding: 40px 0 0 0; + text-align: center; + width: 35px; + height: auto; + line-height: normal; +} +.mblToggleButton:disabled { + border-color: grey; + background-image: none; + color: grey; + cursor: default; +} +.mblToggleButtonSelected { + color: white; +} +.mblToggleButtonChecked { + color: #ffffff; +} +.mblToggleButtonChecked:after { + position: absolute; + content: ""; + top: 6px; + left: 7px; + width: 5px; + height: 10px; + border-width: 2px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; + border-color: #000000; + width: 6px; + height: 12px; + left: 13px; + top: 7px; + border-width: 3.5px; +} +.mblToggleButtonChecked.mblToggleButtonSelected { + color: white; +} +.mblToggleButtonChecked.mblToggleButtonSelected:after { + border-color: white; +} +.mblToggleButton:before { + content: ''; + position: absolute; + width: 30px; + height: 30px; + top: 0px; + border: 2px solid #ffffff; +} +.mblToggleButton:active:not([disabled]):before { + background-color: Highlight; +} +.mblToggleButton:after { + position: absolute; + content: ""; + border-color: #000000; + width: 6px; + height: 12px; + left: 13px; + top: 7px; + border-width: 3.5px; + border-style: none solid solid none; + -webkit-transform: rotate(45deg) skew(10deg); + transform: rotate(45deg) skew(10deg); + -webkit-transform-origin: 50% 50%; + transform-origin: 50% 50%; +} +.mblToggleButtonChecked:before, +.mblToggleButtonSelected[aria-pressed='true']:before { + background-color: #ffffff; +} +.mblToggleButtonChecked:after, +.mblToggleButtonSelected[aria-pressed='true']:after { + border-color: #000000 !important; +} +.mblToggleButton[disabled]:before { + border-color: #808080; +} +.mblToggleButton[disabled].mblToggleButtonChecked:before { + background-color: #808080; +} +.mblDomButtonGrayPlus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayPlus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblDomButtonGrayPlus > div > div { + + position: absolute; + top: -8px; + left: 7px; + width: 3px; + height: 17px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-left: 1px solid #808080; + border-radius: 2px; +} +.mblDomButtonGrayMinus { + position: relative; + width: 29px; + height: 29px; +} +.mblDomButtonGrayMinus > div { + + position: absolute; + top: 12px; + left: 6px; + width: 18px; + height: 3px; + margin: 0px; + font-size: 1px; + background-color: #848684; + border-top: 1px solid #525152; + border-radius: 2px; +} +.mblValuePicker { + height: 126px; +} +.mblValuePicker > .mblValuePickerSlot { + float: left; + margin: 0 5px; +} +.mblValuePickerSlotButton { + position: relative; + height: 38px; +} +.mblValuePickerSlotPlusButton { + border-top-left-radius: 5px; + border-top-right-radius: 5px; +} +.mblValuePickerSlotMinusButton { + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; +} +.mblValuePickerSlotIcon { + top: 5px; + margin: 0 auto; +} +.mblValuePickerSlotInputArea { + position: relative; + height: 48px; + border-top: 1px solid #7b797b; + border-bottom: 1px solid #c6c3c6; +} +.mblValuePickerSlotInput { + display: block; + width: 90%; + height: 90%; + margin: 5% auto; + padding: 0; + text-align: center; + border-style: none; + background-color: transparent; + font-size: 17pt; +} +.mblValuePickerTimePicker > .mblToolBarButton { + top: 45px; +} +.mblValuePicker { + margin-top: 8px; + margin-bottom: 8px; +} +.mblValuePickerSlot { + border: 2px solid #ffffff; +} +.mblValuePickerSlot:first-child { + margin-left: 0px !important; +} +.mblValuePickerSlotInputArea { + border-top: 2px solid #ffffff; + border-bottom: 2px solid #ffffff; +} +.mblValuePickerSlotInput { + color: #ffffff; +} +.mblValuePickerSlotButton { + color: #ffffff; + border-radius: 0px; +} +.mblValuePickerSlotButton .mblValuePickerSlotIcon { + width: 100%; + height: 100%; + top: 0px; + display: -ms-flexbox; + -ms-flex-pack: center; + -ms-flex-align: center; +} +.mblValuePickerSlotButton .mblValuePickerSlotIcon:active { + background-color: Highlight; +} +.mblValuePickerSlotButton > div > div { + position: relative; + background-color: #ffffff; + left: 0px; + top: 0px; +} +.mblValuePickerSlotButton > div > div > div { + background-color: #ffffff; +} +@media all and (max-width: 500px) { + .mblFormLayout.mblFormLayoutAuto fieldset { + padding-left: 0; + padding-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto > * + * { + margin-top: 0.6em; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 100%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutSingleCol fieldset { + padding-left: 0; + padding-right: 0; +} +.mblFormLayout.mblFormLayoutSingleCol > * + * { + margin-top: 0.6em; +} +.mblFormLayout.mblFormLayoutSingleCol .mblTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutSingleCol .mblTextBox, +.mblFormLayout.mblFormLayoutSingleCol .mblSearchBox { + width: 100%; + box-sizing: border-box; +} +@media all and (min-width: 500px) { + + .mblFormLayout.mblFormLayoutAuto { + display: table; + width: 100%; + } + + .mblFormLayout.mblFormLayoutAuto > * { + display: table-row; + } + + .mblFormLayout.mblFormLayoutAuto > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; + } + + .mblFormLayout.mblFormLayoutAuto > * > *:first-child { + width: 20%; + padding-right: 0.5em; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; + } + + .mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; + } + + .mblFormLayout.mblFormLayoutAuto .mblTextArea, + .mblFormLayout.mblFormLayoutAuto .mblExpandingTextArea, + .mblFormLayout.mblFormLayoutAuto .mblTextBox, + .mblFormLayout.mblFormLayoutAuto .mblSearchBox { + width: 50%; + box-sizing: border-box; + } +} +.mblFormLayout.mblFormLayoutTwoCol { + display: table; + width: 100%; +} +.mblFormLayout.mblFormLayoutTwoCol > * { + display: table-row; +} +.mblFormLayout.mblFormLayoutTwoCol > * > * { + display: table-cell; + vertical-align: top; + padding: 0.5em 0; +} +.mblFormLayout.mblFormLayoutTwoCol > * > *:first-child { + width: 20%; + padding-right: 0.5em; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child { + text-align: right; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblToggleButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblCheckBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSwitch:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblRadioButton:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblExpandingTextArea:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblTextBox:last-child, +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSearchBox:last-child { + margin-right: 0; +} +.mblFormLayout.mblFormLayoutTwoCol.mblFormLayoutRightAlign > * > *:last-child > .mblSlider:last-child { + display: inline-block; + margin-right: 10px; + margin-top: 0px; +} +.mblFormLayout.mblFormLayoutTwoCol .mblTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblExpandingTextArea, +.mblFormLayout.mblFormLayoutTwoCol .mblTextBox, +.mblFormLayout.mblFormLayoutTwoCol .mblSearchBox { + width: 50%; + box-sizing: border-box; +} +.mblFormLayout fieldset { + border: none; + margin: 0; +} +.mblFormLayout > * > *:first-child { + font-weight: bold; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblToggleButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblCheckBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSwitch:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblRadioButton:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblExpandingTextArea:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblTextBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSearchBox:first-child, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblToggleButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblCheckBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSwitch, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblRadioButton, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblExpandingTextArea, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblTextBox, +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > br + .mblSearchBox { + margin-left: 0; +} +.mblFormLayout:not(.mblFormLayoutRightAlign) > * > *:last-child > .mblSlider:first-child { + display: inline-block; + margin-left: 10px; + margin-top: 0; + margin-bottom: 0; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/windows_rtl.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/windows_rtl.css new file mode 100644 index 00000000..55efe995 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/themes/windows/windows_rtl.css @@ -0,0 +1,313 @@ + +.mblHeading .mblToolBarButtonRtl { + float: right; +} +.mblToolBarButtonTextRtl .mblToolBarButtonIcon { + padding-right: 10px; + padding-left: 0px; +} +.mblToolBarButtonTextRtl .mblToolBarButtonLabel { + padding-left: 10px; + padding-right: 0px; +} +.mblToolBarButtonHasRightArrow .mblToolBarButtonArrow { + right: 1px; +} +.mblToolBarButtonHasLeftArrow .mblToolBarButtonArrow { + left: 0px; +} +.mblRoundRectCategoryRtl { + margin: 18px 20px 0px 0px; +} +.mblListItemRtl .mblListItemDeleteIcon { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemIcon { + float: right; + margin-left: 11px; + margin-right: 0px; +} +.mblListItemRtl .mblListItemRightIcon, +.mblListItemRtl .mblListItemRightIcon2, +.mblListItemRtl .mblListItemUncheckIcon { + float: left; +} +.mblListItemRtl .mblListItemRightText { + float: left; + margin-left: 4px; +} +.mblListItemRtl .mblListItemLayoutLeft { + float: right; + margin-left: 11px; +} +.mblListItemRtl .mblListItemLayoutRight { + float: left; +} +.mblSwitchRtl { + text-align: right; +} +.mblListItemRtl .mblSwitch { + left: 12px; + right: auto; +} +.mblSwitchRtl.mblSwitchOn .mblSwitchInner { + left: -50px; +} +.mblSwitchBgLeftRtl { + left: 51px; +} +.mblSwitchTextLeftRtl { + left: 0px; +} +.mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwSquareShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwSquareShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwSquareShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwSquareShape .mblSwitchKnob { + left: 53px; +} +.mblSwSquareShape .mblSwitchTextRightRtl { + left: -40px; +} +.mblSwitchRtl.mblSwRoundShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwRoundShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwRoundShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwRoundShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwRoundShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwRoundShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwArcShape1.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape1 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape1 .mblSwitchKnob { + left: 50px; +} +.mblSwArcShape1 .mblSwitchTextRightRtl { + left: -26px; +} +.mblSwitchRtl.mblSwArcShape2.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwArcShape2.mblSwitchOn .mblSwitchInner { + left: -51px; +} +.mblSwArcShape2 .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwitchRtl.mblSwArcShape2 .mblSwitchKnob { + left: 51px; +} +.mblSwArcShape2 .mblSwitchTextRightRtl { + left: -42px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOff .mblSwitchInner { + left: 0px; +} +.mblSwitchRtl.mblSwDefaultShape.mblSwitchOn .mblSwitchInner { + left: -53px; +} +.mblSwDefaultShape .mblSwitchBgRightRtl { + left: 0px; +} +.mblSwDefaultShape .mblSwitchBgLeftRtl { + left: 53px; +} +.mblSwitchRtl.mblSwDefaultShape .mblSwitchKnob { + left: 53px; +} +.mblSwDefaultShape .mblSwitchTextRightRtl { + left: 40px; +} +.mblHeading .mblProgressIndicatorRtl { + float: right; +} +.mblProgContainerRtl { + left: 0; +} +.mblProgressIndicatorCenterRtl { + left: 0px; + display: inline-block; +} +.mblProgressIndicatorCenterRtl .mblProgContainerRtl { + left: 0px; +} +.mblCarouselItemRtl.mblCarouselSlot { + float: right; +} +.mblCarouselRtl .mblCarouselBtnContainer { + float: left; +} +.mblCarouselRtl .mblCarouselTitle { + margin: 2px 4px 2px 0px; +} +.mblCarouselRtl .mblCarouselHeaderBar .mblPageIndicator { + float: left; +} +.mblComboBoxMenuItemRtl { + text-align: right; +} +.mblIconItemRtl { + float: right; +} +.mblIconItemRtl .mblIconItemDeleteIcon { + right: -2px; +} +.mblIconItemPaneRtl .mblIconItemPaneHeading { + padding-right: 40px; +} +.mblIconItemPaneRtl .mblIconItemPaneIcon { + right: 1px; +} +.mblIconMenuItemRtl { + float: right; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstColumn { + border-right: none; + border-left: 1px solid rgba(192, 192, 192, 0.85); +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemFirstColumn { + border-top-right-radius: 3px; + border-top-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemFirstRow.mblIconMenuItemLastColumn { + border-top-right-radius: 0px; + border-top-left-radius: 3px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemFirstColumn { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 0px; +} +.mblIconMenuItemRtl.mblIconMenuItemLastRow.mblIconMenuItemLastColumn { + border-bottom-right-radius: 0px; + border-bottom-left-radius: 3px; +} +.mblSpinWheelSlotRtl, +.mblSpinWheelRtl .mblSpinWheelSlot { + float: right; +} +.mblTabBarButtonRtl { + float: right; +} +.mblTabBarButtonIconAreaRtl { + margin: 0 auto; + width: 29px; +} +.mblTabBarTabBar .mblTabBarButtonIconAreaRtl { + padding-top: 4px; +} +.mblTabBarSegmentedControl.mblTabBarNoText .mblTabBarButtonIconAreaRtl { + position: relative; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl { + border-width: 1px 0px 1px 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:first-child { + border-right-width: 1px !important; + border-left-width: 0px; + border-top-right-radius: 5px; + border-top-left-radius: 0px; + border-bottom-right-radius: 5px; + border-bottom-left-radius: 0px; +} +.mblTabBarSegmentedControl .mblTabBarButtonRtl:last-child { + border-top-left-radius: 5px; + border-top-right-radius: 0px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 0px; + border-left-width: 1px !important; +} +.mblTabBarSegmentedControl .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblHeading .mblTabBarSegmentedControl.mblTabBarRtl { + float: right; +} +.mblTabBarStandardTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 3px; + right: 0px; + left: auto; +} +.mblTabBarStandardTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarSlimTab .mblTabBarButtonRtl { + border-left: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonRtl:first-child { + border-right: 1px solid #4e4e4e; +} +.mblTabBarSlimTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarSlimTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarFlatTab .mblTabBarButtonIconAreaRtl { + position: absolute; + top: 0px; + right: 0px; + left: auto; +} +.mblTabBarFlatTab .mblTabBarButtonRtl.mblTabBarButtonHasIcon .mblTabBarButtonLabel { + margin-right: 20px; + margin-left: 0px; +} +.mblTabBarTallTab .mblTabBarButtonRtl { + margin-left: 2px; +} +.mblTabBarTallTab .mblTabBarButtonIconAreaRtl { + margin-top: 8px; +} +.mblToggleButtonRtl { + padding: 0 25px 0 10px!important; +} +.mblToggleButtonRtl.mblToggleButtonChecked:after { + right: 7px; +} +.mblFormLayout.mblFormLayoutAuto.mblFormLayoutRightAlignRtl > * > *:last-child { + text-align: left; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/transition.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/transition.js new file mode 100644 index 00000000..5d958a56 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/transition.js @@ -0,0 +1,11 @@ +//>>built +define("dojox/mobile/transition",["dojo/_base/Deferred","dojo/_base/config"],function(_1,_2){ +if(_2.mblCSS3Transition){ +var _3=new _1(); +require([_2.mblCSS3Transition],function(_4){ +_3.resolve(_4); +}); +return _3; +} +return null; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/transition.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/transition.js.uncompressed.js new file mode 100644 index 00000000..f42ce6f3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/transition.js.uncompressed.js @@ -0,0 +1,23 @@ +define("dojox/mobile/transition", [ + "dojo/_base/Deferred", + "dojo/_base/config" +], function(Deferred, config){ + /*===== + return { + // summary: + // This is the wrapper module which loads + // dojox/css3/transit conditionally. If mblCSS3Transition + // is set to 'dojox/css3/transit', it will be loaded as + // the module to conduct view transitions, otherwise this module returns null. + }; + =====*/ + if(config.mblCSS3Transition){ + //require dojox/css3/transit and resolve it as the result of transitDeferred. + var transitDeferred = new Deferred(); + require([config.mblCSS3Transition], function(transit){ + transitDeferred.resolve(transit); + }); + return transitDeferred; + } + return null; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/uacss.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/uacss.js new file mode 100644 index 00000000..0daabe31 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/uacss.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/mobile/uacss",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/window","./sniff"],function(_1,_2,_3,_4){ +var _5=_3.doc.documentElement; +_5.className=_2.trim(_5.className+" "+[_4("bb")?"dj_bb":"",_4("android")?"dj_android":"",_4("ios")?"dj_ios":"",_4("ios")>=6?"dj_ios6":"",_4("ios")?"dj_iphone":"",_4("ipod")?"dj_ipod":"",_4("ipad")?"dj_ipad":"",_4("ie")?"dj_ie":""].join(" ").replace(/ +/g," ")); +return _1; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/uacss.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/uacss.js.uncompressed.js new file mode 100644 index 00000000..efda1757 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/uacss.js.uncompressed.js @@ -0,0 +1,34 @@ +define("dojox/mobile/uacss", [ + "dojo/_base/kernel", + "dojo/_base/lang", + "dojo/_base/window", + "./sniff" +], function(dojo, lang, win, has){ + var html = win.doc.documentElement; + html.className = lang.trim(html.className + " " + [ + has('bb') ? "dj_bb" : "", + has('android') ? "dj_android" : "", + has("ios") ? "dj_ios" : "", + has("ios") >= 6 ? "dj_ios6" : "", + has("ios") ? "dj_iphone" : "", // TODO: remove for 2.0 + has('ipod') ? "dj_ipod" : "", + has('ipad') ? "dj_ipad" : "", + has('ie') ? "dj_ie": "" + ].join(" ").replace(/ +/g," ")); + + /*===== + return { + // summary: + // Requiring this module adds CSS classes to your document's ` tag: + // + // - "dj_android" when running on Android; + // - "dj_bb" when running on BlackBerry; + // - "dj_ios" when running on iOS (iPhone, iPad or iPod); + // - "dj_ios6" when running on iOS6+; this class is intended for the iphone theme to detect if it must use the iOS 6 variant of the theme. Currently applies on iOS 6 or later. + // - "dj_iphone" when running on iPhone, iPad or iPod (Note: will be changed in future versions to be set only on iPhone); + // - "dj_ipod" when running on iPod; + // - "dj_ipad" when running on iPad. + }; + =====*/ + return dojo; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/viewRegistry.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/viewRegistry.js new file mode 100644 index 00000000..c84cad84 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/viewRegistry.js @@ -0,0 +1,44 @@ +//>>built +define("dojox/mobile/viewRegistry",["dojo/_base/array","dojo/dom-class","dijit/registry"],function(_1,_2,_3){ +var _4={length:0,hash:{},initialView:null,add:function(_5){ +this.hash[_5.id]=_5; +this.length++; +},remove:function(id){ +if(this.hash[id]){ +delete this.hash[id]; +this.length--; +} +},getViews:function(){ +var _6=[]; +for(var i in this.hash){ +_6.push(this.hash[i]); +} +return _6; +},getParentView:function(_7){ +for(var v=_7.getParent();v;v=v.getParent()){ +if(_2.contains(v.domNode,"mblView")){ +return v; +} +} +return null; +},getChildViews:function(_8){ +return _1.filter(this.getViews(),function(v){ +return this.getParentView(v)===_8; +},this); +},getEnclosingView:function(_9){ +for(var n=_9;n&&n.tagName!=="BODY";n=n.parentNode){ +if(n.nodeType===1&&_2.contains(n,"mblView")){ +return _3.byNode(n); +} +} +return null; +},getEnclosingScrollable:function(_a){ +for(var w=_3.getEnclosingWidget(_a);w;w=w.getParent()){ +if(w.scrollableParams&&w._v){ +return w; +} +} +return null; +}}; +return _4; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/viewRegistry.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/viewRegistry.js.uncompressed.js new file mode 100644 index 00000000..6c4f3222 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mobile/viewRegistry.js.uncompressed.js @@ -0,0 +1,94 @@ +define("dojox/mobile/viewRegistry", [ + "dojo/_base/array", + "dojo/dom-class", + "dijit/registry" +], function(array, domClass, registry){ + + // module: + // dojox/mobile/viewRegistry + + var viewRegistry = { + // summary: + // A registry of existing views. + + // length: Number + // The number of registered views. + length: 0, + + // hash: [private] Object + // The object used to register views. + hash: {}, + + // initialView: [private] dojox/mobile/View + // The initial view. + initialView: null, + + add: function(/*dojox/mobile/View*/ view){ + // summary: + // Adds a view to the registry. + this.hash[view.id] = view; + this.length++; + }, + + remove: function(/*String*/ id){ + // summary: + // Removes a view from the registry. + if(this.hash[id]){ + delete this.hash[id]; + this.length--; + } + }, + + getViews: function(){ + // summary: + // Gets all registered views. + // returns: Array + var arr = []; + for(var i in this.hash){ + arr.push(this.hash[i]); + } + return arr; + }, + + getParentView: function(/*dojox/mobile/View*/ view){ + // summary: + // Gets the parent view of the specified view. + // returns: dojox/mobile/View + for(var v = view.getParent(); v; v = v.getParent()){ + if(domClass.contains(v.domNode, "mblView")){ return v; } + } + return null; + }, + + getChildViews: function(/*dojox/mobile/View*/ parent){ + // summary: + // Gets the children views of the specified view. + // returns: Array + return array.filter(this.getViews(), function(v){ return this.getParentView(v) === parent; }, this); + }, + + getEnclosingView: function(/*DomNode*/ node){ + // summary: + // Gets the view containing the specified DOM node. + // returns: dojox/mobile/View + for(var n = node; n && n.tagName !== "BODY"; n = n.parentNode){ + if(n.nodeType === 1 && domClass.contains(n, "mblView")){ + return registry.byNode(n); + } + } + return null; + }, + + getEnclosingScrollable: function(/*DomNode*/ node){ + // summary: + // Gets the dojox/mobile/scrollable object containing the specified DOM node. + // returns: dojox/mobile/scrollable + for(var w = registry.getEnclosingWidget(node); w; w = w.getParent()){ + if(w.scrollableParams && w._v){ return w; } + } + return null; + } + }; + + return viewRegistry; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc.js new file mode 100644 index 00000000..e30561ba --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc.js @@ -0,0 +1,4 @@ +//>>built +define("dojox/mvc",["./mvc/_base"],function(_1){ +return _1; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc.js.uncompressed.js new file mode 100644 index 00000000..da90e2ff --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc.js.uncompressed.js @@ -0,0 +1,14 @@ +define("dojox/mvc", ["./mvc/_base"], function(dxmvc){ + // module: + // dojox/mvc + + /*===== + return { + // summary: + // Deprecated. Should require dojox/mvc modules directly rather than trying to access them through + // this module. + }; + =====*/ + + return dxmvc; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Bind.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Bind.js new file mode 100644 index 00000000..55bb11ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Bind.js @@ -0,0 +1,19 @@ +//>>built +define("dojox/mvc/Bind",["dojo/_base/lang","dojo/_base/array"],function(_1,_2){ +var _3=_1.getObject("dojox.mvc",true); +return _1.mixin(_3,{bind:function(_4,_5,_6,_7,_8,_9){ +var _a; +return _4.watch(_5,function(_b,_c,_d){ +_a=_1.isFunction(_8)?_8(_d):_d; +if(!_9||_a!=_6.get(_7)){ +_6.set(_7,_a); +} +}); +},bindInputs:function(_e,_f){ +var _10=[]; +_2.forEach(_e,function(h){ +_10.push(h.watch("value",_f)); +}); +return _10; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Bind.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Bind.js.uncompressed.js new file mode 100644 index 00000000..312a67f0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Bind.js.uncompressed.js @@ -0,0 +1,58 @@ +define("dojox/mvc/Bind", [ + "dojo/_base/lang", + "dojo/_base/array" +], function(lang, array){ + var mvc = lang.getObject("dojox.mvc", true); + + return lang.mixin(mvc, { + bind: function(/*dojo/Stateful*/ source, /*String*/ sourceProp, + /*dojo/Stateful*/ target, /*String*/ targetProp, + /*Function?*/ func, /*Boolean?*/ bindOnlyIfUnequal){ + // summary: + // Bind the specified property of the target to the specified + // property of the source with the supplied transformation. + // source: + // The source dojo/Stateful object for the bind. + // sourceProp: + // The name of the source's property whose change triggers the bind. + // target: + // The target dojo/Stateful object for the bind whose + // property will be updated with the result of the function. + // targetProp: + // The name of the target's property to be updated with the + // result of the function. + // func: + // The optional calculation to be performed to obtain the target + // property value. + // bindOnlyIfUnequal: + // Whether the bind notification should happen only if the old and + // new values are unequal (optional, defaults to false). + var convertedValue; + return source.watch(sourceProp, function(prop, oldValue, newValue){ + convertedValue = lang.isFunction(func) ? func(newValue) : newValue; + if(!bindOnlyIfUnequal || convertedValue != target.get(targetProp)){ + target.set(targetProp, convertedValue); + } + }); + }, + + bindInputs: function(/*dojo/Stateful[]*/ sourceBindArray, /*Function*/ func){ + // summary: + // Bind the values at the sources specified in the first argument + // array such that a composing function in the second argument is + // called when any of the values changes. + // sourceBindArray: + // The array of dojo/Stateful objects to watch values changes on. + // func: + // The composing function that is called when any of the source + // values changes. + // tags: + // protected + var watchHandles = []; + array.forEach(sourceBindArray, function(h){ + watchHandles.push(h.watch("value", func)); + }); + return watchHandles; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditModelRefController.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditModelRefController.js new file mode 100644 index 00000000..8b977c27 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditModelRefController.js @@ -0,0 +1,32 @@ +//>>built +define("dojox/mvc/EditModelRefController",["dojo/_base/declare","dojo/_base/lang","./getPlainValue","./getStateful","./ModelRefController"],function(_1,_2,_3,_4,_5){ +function _6(_7,_8,_9){ +if(_8!==_9){ +_7.set(_7._refOriginalModelProp,_7.holdModelUntilCommit?_9:_7.cloneModel(_9)); +_7.set(_7._refEditModelProp,_7.holdModelUntilCommit?_7.cloneModel(_9):_9); +} +}; +return _1("dojox.mvc.EditModelRefController",_5,{getStatefulOptions:null,getPlainValueOptions:null,holdModelUntilCommit:false,originalModel:null,sourceModel:null,_refOriginalModelProp:"originalModel",_refSourceModelProp:"sourceModel",_refEditModelProp:"model",postscript:function(_a,_b){ +for(var s in {getStatefulOptions:1,getPlainValueOptions:1,holdModelUntilCommit:1}){ +var _c=(_a||{})[s]; +if(typeof _c!="undefined"){ +this[s]=_c; +} +} +this.inherited(arguments); +},set:function(_d,_e){ +if(_d==this._refSourceModelProp){ +_6(this,this[this._refSourceModelProp],_e); +} +this.inherited(arguments); +},cloneModel:function(_f){ +var _10=_2.isFunction((_f||{}).set)&&_2.isFunction((_f||{}).watch)?_3(_f,this.getPlainValueOptions):_f; +return _4(_10,this.getStatefulOptions); +},commit:function(){ +this.set(this.holdModelUntilCommit?this._refSourceModelProp:this._refOriginalModelProp,this.cloneModel(this.get(this._refEditModelProp))); +},reset:function(){ +this.set(this.holdModelUntilCommit?this._refEditModelProp:this._refSourceModelProp,this.cloneModel(this.get(this._refOriginalModelProp))); +},hasControllerProperty:function(_11){ +return this.inherited(arguments)||_11==this._refOriginalModelProp||_11==this._refSourceModelProp; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditModelRefController.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditModelRefController.js.uncompressed.js new file mode 100644 index 00000000..e8c15b8d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditModelRefController.js.uncompressed.js @@ -0,0 +1,204 @@ +define("dojox/mvc/EditModelRefController", [ + "dojo/_base/declare", + "dojo/_base/lang", + "./getPlainValue", + "./getStateful", + "./ModelRefController" +], function(declare, lang, getPlainValue, getStateful, ModelRefController){ + // module: + // dojox/mvc/EditModelRefController + + function setRefSourceModel(/*dojox/mvc/EditModelRefController*/ ctrl, /*Anything*/ old, /*Anything*/ current){ + // summary: + // A function called when this controller gets newer value as the data source. + // ctrl: dojox/mvc/EditModelRefController + // The controller. + // old: Anything + // The older value. + // current: Anything + // The newer value. + + if(old !== current){ + ctrl.set(ctrl._refOriginalModelProp, ctrl.holdModelUntilCommit ? current : ctrl.cloneModel(current)); + ctrl.set(ctrl._refEditModelProp, ctrl.holdModelUntilCommit ? ctrl.cloneModel(current) : current); + } + } + + return declare("dojox.mvc.EditModelRefController", ModelRefController, { + // summary: + // A child class of dojox/mvc/ModelRefController. + // Keeps a copy (originalModel) of given data model (sourceModel) so that it can manage the data model of before/after the edit. + // description: + // Has two modes: + // + // - Directly reflect the edits to sourceModel (holdModelUntilCommit=false) + // - Don't reflect the edits to sourceModel, until commit() is called (holdModelUntilCommit=true) + // + // For the 1st case, dojo/Stateful get()/set()/watch() interfaces will work with sourceModel. + // For the 2nd case, dojo/Stateful get()/set()/watch() interfaces will work with a copy of sourceModel, and sourceModel will be replaced with such copy when commit() is called. + // + // NOTE - If this class is used with a widget by data-dojo-mixins, make sure putting the widget in data-dojo-type and putting this class to data-dojo-mixins. + // example: + // The check box refers to "value" property in the controller (with "ctrl" ID). + // The controller provides the "value" property on behalf of the model ("model" property in the controller, which comes from "sourceModel" property). + // Two seconds later, the check box changes from unchecked to checked, and the controller saves the state. + // Two seconds later then, the check box changes from checked to unchecked. + // Two seconds later then, the controller goes back to the last saved state, and the check box changes from unchecked to checked as the result. + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + // example: + // The controller with "ctrlSource" ID specifies holding changes until commit() is called (by setting true to holdModelUntilCommit). + // As the change in the second check box is committed two seconds later from the change, the first check box is checked at then (when the change is committed). + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | Source: + // | + // | Edit: + // | + // | + // | + + // getStatefulOptions: dojox/mvc/getStatefulOptions + // The options to get stateful object from plain value. + getStatefulOptions: null, + + // getPlainValueOptions: dojox/mvc/getPlainValueOptions + // The options to get plain value from stateful object. + getPlainValueOptions: null, + + // holdModelUntilCommit: Boolean + // True not to send the change in model back to sourceModel until commit() is called. + holdModelUntilCommit: false, + + // originalModel: dojo/Stateful + // The data model, that serves as the original data. + originalModel: null, + + // originalModel: dojo/Stateful + // The data model, that serves as the data source. + sourceModel: null, + + // _refOriginalModelProp: String + // The property name for the data model, that serves as the original data. + _refOriginalModelProp: "originalModel", + + // _refSourceModelProp: String + // The property name for the data model, that serves as the data source. + _refSourceModelProp: "sourceModel", + + // _refEditModelProp: String + // The property name for the data model, that is being edited. + _refEditModelProp: "model", + + postscript: function(/*Object?*/ params, /*DomNode|String?*/ srcNodeRef){ + // summary: + // Sets certain properties before setting models. + + for(var s in {getStatefulOptions: 1, getPlainValueOptions: 1, holdModelUntilCommit: 1}){ + var value = (params || {})[s]; + if(typeof value != "undefined"){ + this[s] = value; + } + } + this.inherited(arguments); + }, + + set: function(/*String*/ name, /*Anything*/ value){ + // summary: + // Set a property to this. + // name: String + // The property to set. + // value: Anything + // The value to set in the property. + + if(name == this._refSourceModelProp){ + setRefSourceModel(this, this[this._refSourceModelProp], value); + } + this.inherited(arguments); + }, + + cloneModel: function(/*Anything*/ value){ + // summary: + // Create a clone object of the data source. + // Child classes of this controller can override it to achieve its specific needs. + // value: Anything + // The data serving as the data source. + + var plain = lang.isFunction((value || {}).set) && lang.isFunction((value || {}).watch) ? getPlainValue(value, this.getPlainValueOptions) : value; + return getStateful(plain, this.getStatefulOptions); + }, + + commit: function(){ + // summary: + // Send the change back to the data source. + + this.set(this.holdModelUntilCommit ? this._refSourceModelProp : this._refOriginalModelProp, this.cloneModel(this.get(this._refEditModelProp))); + }, + + reset: function(){ + // summary: + // Change the model back to its original state. + + this.set(this.holdModelUntilCommit ? this._refEditModelProp : this._refSourceModelProp, this.cloneModel(this.get(this._refOriginalModelProp))); + }, + + hasControllerProperty: function(/*String*/ name){ + // summary: + // Returns true if this controller itself owns the given property. + // name: String + // The property name. + + return this.inherited(arguments) || name == this._refOriginalModelProp || name == this._refSourceModelProp; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditStoreRefController.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditStoreRefController.js new file mode 100644 index 00000000..f2ae60ec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditStoreRefController.js @@ -0,0 +1,61 @@ +//>>built +define("dojox/mvc/EditStoreRefController",["dojo/_base/declare","dojo/_base/lang","dojo/when","./getPlainValue","./EditModelRefController","./StoreRefController"],function(_1,_2,_3,_4,_5,_6){ +return _1("dojox.mvc.EditStoreRefController",[_6,_5],{getPlainValueOptions:null,_removals:[],_resultsWatchHandle:null,_refSourceModelProp:"sourceModel",queryStore:function(_7,_8){ +if(!(this.store||{}).query){ +return; +} +if(this._resultsWatchHandle){ +this._resultsWatchHandle.unwatch(); +} +this._removals=[]; +var _9=this,_a=this.inherited(arguments),_b=_3(_a,function(_c){ +if(_9._beingDestroyed){ +return; +} +if(_2.isArray(_c)){ +_9._resultsWatchHandle=_c.watchElements(function(_d,_e,_f){ +[].push.apply(_9._removals,_e); +}); +} +return _c; +}); +if(_b.then){ +_b=_2.delegate(_b); +} +for(var s in _a){ +if(isNaN(s)&&_a.hasOwnProperty(s)&&_2.isFunction(_a[s])){ +_b[s]=_a[s]; +} +} +return _b; +},getStore:function(id,_10){ +if(this._resultsWatchHandle){ +this._resultsWatchHandle.unwatch(); +} +return this.inherited(arguments); +},commit:function(){ +if(this._removals){ +for(var i=0;i + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + + // getPlainValueOptions: dojox/mvc/getPlainValueOptions + // The options to get plain value from stateful object. + getPlainValueOptions: null, + + // _removals: Object[] + // The list of removed elements. + _removals: [], + + // _resultsWatchHandle: dojox/mvc/StatefulArray.watchElements.handle + // The watch handle for model array elements. + _resultsWatchHandle: null, + + // _refSourceModelProp: String + // The property name for the data model, that serves as the data source. + _refSourceModelProp: "sourceModel", + + queryStore: function(/*Object*/ query, /*dojo/store/api/Store.QueryOptions?*/ options){ + // summary: + // Queries the store for objects. + // query: Object + // The query to use for retrieving objects from the store. + // options: dojo/store/api/Store.QueryOptions? + // The optional arguments to apply to the resultset. + // returns: dojo/store/api/Store.QueryResults + // The results of the query, extended with iterative methods. + + if(!(this.store || {}).query){ return; } + if(this._resultsWatchHandle){ this._resultsWatchHandle.unwatch(); } + this._removals = []; + var _self = this, + queryResult = this.inherited(arguments), + result = when(queryResult, function(results){ + if(_self._beingDestroyed){ return; } + if(lang.isArray(results)){ + _self._resultsWatchHandle = results.watchElements(function(idx, removals, adds){ + [].push.apply(_self._removals, removals); + }); + } + return results; + }); + if(result.then){ + result = lang.delegate(result); + } + // For dojo/store/Observable, which adds a function to query result + for(var s in queryResult){ + if(isNaN(s) && queryResult.hasOwnProperty(s) && lang.isFunction(queryResult[s])){ + result[s] = queryResult[s]; + } + } + return result; + }, + + getStore: function(/*Number*/ id, /*Object*/ options){ + // summary: + // Retrieves an object by its identity. + // id: Number + // The identity to use to lookup the object. + // options: Object + // The options for dojo/store/*/get(). + // returns: Object + // The object in the store that matches the given id. + + if(this._resultsWatchHandle){ this._resultsWatchHandle.unwatch(); } + return this.inherited(arguments); + }, + + commit: function(){ + // summary: + // Send the change back to the data source. + + if(this._removals){ + for(var i = 0; i < this._removals.length; i++){ + this.store.remove(this.store.getIdentity(this._removals[i])); + } + this._removals = []; + } + var data = getPlainValue(this.get(this._refEditModelProp), this.getPlainValueOptions); + if(lang.isArray(data)){ + for(var i = 0; i < data.length; i++){ + this.store.put(data[i]); + } + }else{ + this.store.put(data); + } + this.inherited(arguments); + }, + + reset: function(){ + // summary: + // Change the model back to its original state. + + this.inherited(arguments); + this._removals = []; + }, + + destroy: function(){ + // summary: + // Clean up model watch handle as this object is destroyed. + + if(this._resultsWatchHandle){ this._resultsWatchHandle.unwatch(); } + this.inherited(arguments); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditStoreRefListController.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditStoreRefListController.js new file mode 100644 index 00000000..2c424cc5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/EditStoreRefListController.js @@ -0,0 +1,13 @@ +//>>built +define("dojox/mvc/EditStoreRefListController",["dojo/_base/declare","dojo/_base/lang","./getPlainValue","./EditStoreRefController","./ListController"],function(_1,_2,_3,_4,_5){ +return _1("dojox.mvc.EditStoreRefListController",[_4,_5],{commitCurrent:function(){ +var id=this.cursor[this.idProperty]; +for(var i=0;i + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + + commitCurrent: function(){ + // summary: + // Send the change back to the data source for the current index. + + var id = this.cursor[this.idProperty]; + for(var i = 0; i < this.originalModel.length; i++){ + if(this.originalModel[i][this.idProperty] == id){ + this.originalModel.set(i, this.cloneModel(this.cursor)); + break; + } + } + this.store.put(this.cursor); + } + + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Element.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Element.js new file mode 100644 index 00000000..b50b3e11 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Element.js @@ -0,0 +1,17 @@ +//>>built +define("dojox/mvc/Element",["dojo/_base/declare","dijit/_WidgetBase"],function(_1,_2){ +return _1("dojox.mvc.Element",_2,{_setInnerTextAttr:{node:"domNode",type:"innerText"},_setInnerHTMLAttr:{node:"domNode",type:"innerHTML"},buildRendering:function(){ +this.inherited(arguments); +if(/select|input|textarea/i.test(this.domNode.tagName)){ +var _3=this,_4=this.focusNode=this.domNode; +this.on("change",function(e){ +var _5=/^checkbox$/i.test(_4.getAttribute("type"))?"checked":"value"; +_3._set(_5,_3.get(_5)); +}); +} +},_getCheckedAttr:function(){ +return this.domNode.checked; +},_getValueAttr:function(){ +return this.domNode.value; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Element.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Element.js.uncompressed.js new file mode 100644 index 00000000..6aef0159 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Element.js.uncompressed.js @@ -0,0 +1,31 @@ +define("dojox/mvc/Element", [ + "dojo/_base/declare", + "dijit/_WidgetBase" +], function(declare, _WidgetBase){ + return declare("dojox.mvc.Element", _WidgetBase, { + // summary: + // A widget implicitly created by dojox/mvc/parserExtension. + // Maps "value" attribute to form element value, innerText/innerHTML to element's innerText/innerHTML, and other attributes to DOM attributes. + // Also, for form element, updates value (or checked for check box) as user edits. + + _setInnerTextAttr: {node: "domNode", type: "innerText"}, + _setInnerHTMLAttr: {node: "domNode", type: "innerHTML"}, + + buildRendering: function(){ + // summary: + // Set onchange event handler for form elements. + + this.inherited(arguments); + if(/select|input|textarea/i.test(this.domNode.tagName)){ + var _self = this, node = this.focusNode = this.domNode; + this.on("change", function(e){ + var attr = /^checkbox$/i.test(node.getAttribute("type")) ? "checked" : "value"; + _self._set(attr, _self.get(attr)); + }); + } + }, + + _getCheckedAttr: function(){ return this.domNode.checked; }, + _getValueAttr: function(){ return this.domNode.value; } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Generate.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Generate.js new file mode 100644 index 00000000..5aafd96c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Generate.js @@ -0,0 +1,74 @@ +//>>built +define("dojox/mvc/Generate",["dojo/_base/array","dojo/_base/lang","dojo/_base/declare","./_Container","./at","./Group","dijit/form/TextBox"],function(_1,_2,_3,_4,at){ +return _3("dojox.mvc.Generate",[_4],{_counter:0,_defaultWidgetMapping:{"String":"dijit/form/TextBox"},_defaultClassMapping:{"Label":"generate-label-cell","String":"generate-dijit-cell","Heading":"generate-heading","Row":"row"},_defaultIdNameMapping:{"String":"textbox_t"},children:null,_relTargetProp:"children",startup:function(){ +this.inherited(arguments); +this._setChildrenAttr(this.children); +},_setChildrenAttr:function(_5){ +var _6=this.children; +this._set("children",_5); +if(this.binding!=_5){ +this.set("ref",_5); +} +if(this._started&&(!this._builtOnce||_6!=_5)){ +this._builtOnce=true; +this._buildContained(_5); +} +},_buildContained:function(_7){ +if(!_7){ +return; +} +this._destroyBody(); +this._counter=0; +this.srcNodeRef.innerHTML=this._generateBody(_7); +this._createBody(); +},_generateBody:function(_8,_9){ +if(_8===void 0){ +return ""; +} +var _a=[]; +var _b=_2.isFunction(_8.toPlainObject); +function _c(_d,_e){ +if(_b?(_d&&_2.isFunction(_d.toPlainObject)):!_2.isFunction(_d)){ +if(_2.isArray(_d)){ +_a.push(this._generateRepeat(_d,_e)); +}else{ +if(_b?_d.value:((_d==null||{}.toString.call(_d)!="[object Object]")&&(!(_d||{}).set||!(_d||{}).watch))){ +_a.push(this._generateTextBox(_e,_b)); +}else{ +_a.push(this._generateGroup(_d,_e,_9)); +} +} +} +}; +if(_2.isArray(_8)){ +_1.forEach(_8,_c,this); +}else{ +for(var s in _8){ +if(_8.hasOwnProperty(s)){ +_c.call(this,_8[s],s); +} +} +} +return _a.join(""); +},_generateRepeat:function(_f,_10){ +var _11=(this.classMapping&&this.classMapping["Heading"])?this.classMapping["Heading"]:this._defaultClassMapping["Heading"]; +return "
    "+"
    "+_10+"
    "+this._generateBody(_f,true)+"
    "; +},_generateGroup:function(_12,_13,_14){ +var _15=["
    "]; +if(!_14){ +var _16=(this.classMapping&&this.classMapping["Heading"])?this.classMapping["Heading"]:this._defaultClassMapping["Heading"]; +_15.push("
    "+_13+"
    "); +} +_15.push(this._generateBody(_12)+"
    "); +return _15.join(""); +},_generateTextBox:function(_17,_18){ +var _19=this.idNameMapping?this.idNameMapping["String"]:this._defaultIdNameMapping["String"]; +_19=_19+this._counter++; +var _1a=this.widgetMapping?this.widgetMapping["String"]:this._defaultWidgetMapping["String"]; +var _1b=(this.classMapping&&this.classMapping["Label"])?this.classMapping["Label"]:this._defaultClassMapping["Label"]; +var _1c=(this.classMapping&&this.classMapping["String"])?this.classMapping["String"]:this._defaultClassMapping["String"]; +var _1d=(this.classMapping&&this.classMapping["Row"])?this.classMapping["Row"]:this._defaultClassMapping["Row"]; +var _1e="value: at('rel:"+(_18&&_17||"")+"', '"+(_18?"value":_17)+"')"; +return "
    "+""+""+"
    "; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Generate.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Generate.js.uncompressed.js new file mode 100644 index 00000000..cf3b07bb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Generate.js.uncompressed.js @@ -0,0 +1,200 @@ +define("dojox/mvc/Generate", [ + "dojo/_base/array", + "dojo/_base/lang", + "dojo/_base/declare", + "./_Container", + "./at", + "./Group", + "dijit/form/TextBox" +], function(array, lang, declare, Container, at){ + + return declare("dojox.mvc.Generate", [Container], { + // summary: + // A container that generates a view based on the data model its bound to. + // + // description: + // A generate introspects its data binding and creates a view contained in + // it that allows displaying the bound data. Child dijits or custom view + // components inside it inherit their parent data binding context from it. + + // _counter: [private] Integer + // A count maintained internally to always generate predictable widget + // IDs in the view generated by this container. + _counter : 0, + + // defaultWidgetMapping: Object + // The mapping of types to a widget class. Set widgetMapping to override this. + // + _defaultWidgetMapping: {"String" : "dijit/form/TextBox"}, + + // defaultClassMapping: Object + // The mapping of class to use. Set classMapping to override this. + // + _defaultClassMapping: {"Label" : "generate-label-cell", "String" : "generate-dijit-cell", "Heading" : "generate-heading", "Row" : "row"}, + + + // defaultIdNameMapping: Object + // The mapping of id and name to use. Set idNameMapping to override this. A count will be added to the id and name + // + _defaultIdNameMapping: {"String" : "textbox_t"}, + + // children: dojo/Stateful + // The array of data model that is used to render child nodes. + children: null, + + // _relTargetProp: String + // The name of the property that is used by child widgets for relative data binding. + _relTargetProp : "children", + + startup: function(){ + this.inherited(arguments); + this._setChildrenAttr(this.children); + }, + + ////////////////////// PRIVATE METHODS //////////////////////// + + _setChildrenAttr: function(/*dojo/Stateful*/ value){ + // summary: + // Handler for calls to set("children", val). + // description: + // Sets "ref" property so that child widgets can refer to, and then rebuilds the children. + + var children = this.children; + this._set("children", value); + // this.binding is the resolved ref, so not matching with the new value means change in repeat target. + if(this.binding != value){ + this.set("ref", value); + } + if(this._started && (!this._builtOnce || children != value)){ + this._builtOnce = true; + this._buildContained(value); + } + }, + + _buildContained: function(/*dojo/Stateful*/ children){ + // summary: + // Destroy any existing generated view, recreate it from scratch + // parse the new contents. + // children: dojo/Stateful + // The array of child widgets. + // tags: + // private + + if(!children){ return; } + + this._destroyBody(); + + this._counter = 0; + this.srcNodeRef.innerHTML = this._generateBody(children); + + this._createBody(); + }, + + _generateBody: function(/*dojo/Stateful*/ children, /*Boolean*/ hideHeading){ + // summary: + // Generate the markup for the view associated with this generate + // container. + // children: dojo/Stateful + // The associated data to generate a view for. + // hideHeading: Boolean + // Whether the property name should be displayed as a heading. + // tags: + // private + + if(children === void 0){ return ""; } + + var body = []; + var isStatefulModel = lang.isFunction(children.toPlainObject); + + function generateElement(value, prop){ + if(isStatefulModel ? (value && lang.isFunction(value.toPlainObject)) : !lang.isFunction(value)){ + if(lang.isArray(value)){ + body.push(this._generateRepeat(value, prop)); + }else if(isStatefulModel ? value.value : ((value == null || {}.toString.call(value) != "[object Object]") && (!(value || {}).set || !(value || {}).watch))){ + // TODO: Data types based widgets + body.push(this._generateTextBox(prop, isStatefulModel)); + }else{ + body.push(this._generateGroup(value, prop, hideHeading)); + } + } + } + + if(lang.isArray(children)){ + array.forEach(children, generateElement, this); + }else{ + for(var s in children){ + if(children.hasOwnProperty(s)){ + generateElement.call(this, children[s], s); + } + } + } + + return body.join(""); + }, + + _generateRepeat: function(/*dojox/mvc/StatefulArray*/ children, /*String*/ repeatHeading){ + // summary: + // Generate a repeating model-bound view. + // children: dojox/mvc/StatefulArray + // The bound node (a collection/array node) to generate a + // repeating UI/view for. + // repeatHeading: String + // The heading to be used for this portion. + // tags: + // private + + var headingClass = (this.classMapping && this.classMapping["Heading"]) ? this.classMapping["Heading"] : this._defaultClassMapping["Heading"]; + return '
    ' + + '
    ' + repeatHeading + '
    ' + + this._generateBody(children, true) + + '
    '; + }, + + _generateGroup: function(/*dojo/Stateful*/ model, /*String*/ groupHeading, /*Boolean*/ hideHeading){ + // summary: + // Generate a hierarchical model-bound view. + // model: dojo/Stateful + // The bound (intermediate) model to generate a hierarchical view portion for. + // groupHeading: String + // The heading to be used for this portion. + // hideHeading: Boolean + // Whether the heading should be hidden for this portion. + // tags: + // private + + var html = ['
    ']; + if(!hideHeading){ + var headingClass = (this.classMapping && this.classMapping["Heading"]) ? this.classMapping["Heading"] : this._defaultClassMapping["Heading"]; + html.push('
    ' + groupHeading + '
    '); + } + html.push(this._generateBody(model) + '
    '); + return html.join(""); + }, + + _generateTextBox: function(/*String*/ prop, /*Boolean*/ referToValue){ + // summary: + // Produce a widget for a simple value. + // prop: String + // The data model property name. + // referToValue: Boolean + // True if the property is dojox/mvc/StatefulModel with "value" attribute. + // tags: + // private + // TODO: Data type based widget generation / enhanced meta-data + + var idname = this.idNameMapping ? this.idNameMapping["String"] : this._defaultIdNameMapping["String"]; + idname = idname + this._counter++; + var widClass = this.widgetMapping ? this.widgetMapping["String"] : this._defaultWidgetMapping["String"]; + var labelClass = (this.classMapping && this.classMapping["Label"]) ? this.classMapping["Label"] : this._defaultClassMapping["Label"]; + var stringClass = (this.classMapping && this.classMapping["String"]) ? this.classMapping["String"] : this._defaultClassMapping["String"]; + var rowClass = (this.classMapping && this.classMapping["Row"]) ? this.classMapping["Row"] : this._defaultClassMapping["Row"]; + var bindingSyntax = 'value: at(\'rel:' + (referToValue && prop || '') + '\', \'' + (referToValue ? 'value' : prop) + '\')'; + + return '
    ' + + '' + + '' + + '
    '; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Group.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Group.js new file mode 100644 index 00000000..3e4b6329 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Group.js @@ -0,0 +1,18 @@ +//>>built +define("dojox/mvc/Group",["dojo/_base/declare","dijit/_WidgetBase","dojo/_base/lang"],function(_1,_2,_3){ +return _1("dojox.mvc.Group",_2,{target:null,startup:function(){ +var _4=null; +if(_3.isFunction(this.getParent)){ +if(this.getParent()&&this.getParent().removeRepeatNode){ +this.select=this.getParent().select; +this.onCheckStateChanged=this.getParent().onCheckStateChanged; +} +} +this.inherited(arguments); +},_setTargetAttr:function(_5){ +this._set("target",_5); +if(this.binding!=_5){ +this.set("ref",_5); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Group.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Group.js.uncompressed.js new file mode 100644 index 00000000..a08990ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Group.js.uncompressed.js @@ -0,0 +1,43 @@ +define("dojox/mvc/Group", ["dojo/_base/declare", "dijit/_WidgetBase", "dojo/_base/lang"], function(declare, _WidgetBase, lang){ + + return declare("dojox.mvc.Group", _WidgetBase, { + // summary: + // A simple model-bound container widget with single-node binding to a data model. + // + // description: + // A group is usually bound to an intermediate dojo/Stateful node in the data model. + // Child dijits or custom view components inside a group inherit their parent + // data binding context from it. + + // target: dojo/Stateful + // The data model used for relative data binding. + target: null, + + startup: function(){ + // This code needed for ticket 14423 is using removeRepeatNode on a repeat to work with mobile.lists + // this.select and this.onCheckStateChanged are called by ListItem so they need to be set + // but it seems like a bit of a hack. + var parent = null; + if(lang.isFunction(this.getParent)){ + if(this.getParent() && this.getParent().removeRepeatNode){ + this.select = this.getParent().select; + this.onCheckStateChanged = this.getParent().onCheckStateChanged; + } + } + this.inherited(arguments); + }, + + _setTargetAttr: function(/*dojo/Stateful*/ value){ + // summary: + // Handler for calls to set("target", val). + // description: + // Sets target and "ref" property so that child widgets can refer to. + + this._set("target", value); + if(this.binding != value){ + // The new value not matching to this.binding means that the change is not initiated by ref change. + this.set("ref", value); + } + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ListController.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ListController.js new file mode 100644 index 00000000..ea46ef84 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ListController.js @@ -0,0 +1,123 @@ +//>>built +define("dojox/mvc/ListController",["dojo/_base/array","dojo/_base/lang","dojo/_base/declare","./ModelRefController"],function(_1,_2,_3,_4){ +function _5(c){ +for(var s in {"_listModelWatchHandle":1,"_tableModelWatchHandle":1}){ +if(c[s]){ +c[s].unwatch(); +c[s]=null; +} +} +}; +function _6(_7,_8,_9){ +_5(_7); +if(_9&&_8!==_9){ +if(_9.watchElements){ +_7._listModelWatchHandle=_9.watchElements(function(_a,_b,_c){ +if(_b&&_c){ +var _d=_7.get("cursorIndex"); +if(_b&&_d>=_a&&_d<_a+_b.length){ +_7.set("cursorIndex",-1); +return; +} +if((_b.length||_c.length)&&_d>=_a){ +_7.set(_7._refCursorProp,_7.get("cursor")); +} +}else{ +_7.set(_7._refCursorProp,_7.get(_7._refCursorProp)); +} +}); +}else{ +if(_9.set&&_9.watch){ +if(_7.get("cursorIndex")<0){ +_7._set("cursorIndex",""); +} +_7._tableModelWatchHandle=_9.watch(function(_e,_f,_10){ +if(_f!==_10&&_e==_7.get("cursorIndex")){ +_7.set(_7._refCursorProp,_10); +} +}); +} +} +} +_7._setCursorIndexAttr(_7.cursorIndex); +}; +function _11(_12,old,_13){ +var _14=_12[_12._refInModelProp]; +if(!_14){ +return; +} +if(old!==_13){ +if(_2.isArray(_14)){ +var _15=_1.indexOf(_14,_13); +if(_15<0){ +var _16=_12.get("cursorIndex"); +if(_16>=0&&_16<_14.length){ +_14.set(_16,_13); +} +}else{ +_12.set("cursorIndex",_15); +} +}else{ +for(var s in _14){ +if(_14[s]==_13){ +_12.set("cursorIndex",s); +return; +} +} +var _16=_12.get("cursorIndex"); +if(_16){ +_14.set(_16,_13); +} +} +} +}; +return _3("dojox.mvc.ListController",_4,{idProperty:"uniqueId",cursorId:null,cursorIndex:-1,cursor:null,model:null,_listModelWatchHandle:null,_tableModelWatchHandle:null,_refCursorProp:"cursor",_refModelProp:"cursor",destroy:function(){ +_5(this); +this.inherited(arguments); +},set:function(_17,_18){ +var _19=this[this._refCursorProp]; +var _1a=this[this._refInModelProp]; +this.inherited(arguments); +if(_17==this._refCursorProp){ +_11(this,_19,_18); +} +if(_17==this._refInModelProp){ +_6(this,_1a,_18); +} +},_setCursorIdAttr:function(_1b){ +var old=this.cursorId; +this._set("cursorId",_1b); +var _1c=this[this._refInModelProp]; +if(!_1c){ +return; +} +if(old!==_1b){ +if(_2.isArray(_1c)){ +for(var i=0;i<_1c.length;i++){ +if(_1c[i][this.idProperty]==_1b){ +this.set("cursorIndex",i); +return; +} +} +this._set("cursorIndex",-1); +}else{ +for(var s in _1c){ +if(_1c[s][this.idProperty]==_1b){ +this.set("cursorIndex",s); +return; +} +} +this._set("cursorIndex",""); +} +} +},_setCursorIndexAttr:function(_1d){ +this._set("cursorIndex",_1d); +if(!this[this._refInModelProp]){ +return; +} +this.set(this._refCursorProp,this[this._refInModelProp][_1d]); +this.set("cursorId",this[this._refInModelProp][_1d]&&this[this._refInModelProp][_1d][this.idProperty]); +},hasControllerProperty:function(_1e){ +return this.inherited(arguments)||_1e==this._refCursorProp; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ListController.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ListController.js.uncompressed.js new file mode 100644 index 00000000..b094f6bc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ListController.js.uncompressed.js @@ -0,0 +1,229 @@ +define("dojox/mvc/ListController", [ + "dojo/_base/array", + "dojo/_base/lang", + "dojo/_base/declare", + "./ModelRefController" +], function(array, lang, declare, ModelRefController){ + function unwatchHandles(/*dojox/mvc/ListController*/ c){ + // summary: + // Unwatch model watch handles. + + for(var s in {"_listModelWatchHandle": 1, "_tableModelWatchHandle": 1}){ + if(c[s]){ + c[s].unwatch(); + c[s] = null; + } + } + } + + function setRefInModel(/*dojox/mvc/ListController*/ ctrl, /*dojo/Stateful*/ old, /*dojo/Stateful*/ current){ + // summary: + // A function called when this controller gets newer value as the list data. + + unwatchHandles(ctrl); + if(current && old !== current){ + if(current.watchElements){ + ctrl._listModelWatchHandle = current.watchElements(function(idx, removals, adds){ + if(removals && adds){ + var curIdx = ctrl.get("cursorIndex"); + // If selected element is removed, make "no selection" state + if(removals && curIdx >= idx && curIdx < idx + removals.length){ + ctrl.set("cursorIndex", -1); + return; + } + // If selected element is equal to or larger than the removals/adds point, update the selected index + if((removals.length || adds.length) && curIdx >= idx){ + ctrl.set(ctrl._refCursorProp, ctrl.get("cursor")); + } + }else{ + // If there is a update to the whole array, update the selected index + ctrl.set(ctrl._refCursorProp, ctrl.get(ctrl._refCursorProp)); + } + }); + }else if(current.set && current.watch){ + if(ctrl.get("cursorIndex") < 0){ ctrl._set("cursorIndex", ""); } + ctrl._tableModelWatchHandle = current.watch(function(name, old, current){ + if(old !== current && name == ctrl.get("cursorIndex")){ + ctrl.set(ctrl._refCursorProp, current); + } + }); + } + } + ctrl._setCursorIndexAttr(ctrl.cursorIndex); + } + + function setRefCursor(/*dojox/mvc/ListController*/ ctrl, /*dojo/Stateful*/ old, /*dojo/Stateful*/ current){ + // summary: + // A function called when this controller gets newer value as the data of current selection. + // description: + // Finds the index associated with the given element, and updates cursorIndex property. + + var model = ctrl[ctrl._refInModelProp]; + if(!model){ return; } + if(old !== current){ + if(lang.isArray(model)){ + var foundIdx = array.indexOf(model, current); + if(foundIdx < 0){ + var targetIdx = ctrl.get("cursorIndex"); + if(targetIdx >= 0 && targetIdx < model.length){ + model.set(targetIdx, current); + } + }else{ + ctrl.set("cursorIndex", foundIdx); + } + }else{ + for(var s in model){ + if(model[s] == current){ + ctrl.set("cursorIndex", s); + return; + } + } + var targetIdx = ctrl.get("cursorIndex"); + if(targetIdx){ + model.set(targetIdx, current); + } + } + } + } + + return declare("dojox.mvc.ListController", ModelRefController, { + // summary: + // A controller working with array model, managing its cursor. + // NOTE - If this class is used with a widget by data-dojo-mixins, make sure putting the widget in data-dojo-type and putting this class to data-dojo-mixins. + // example: + // The text box changes its value every two seconds. + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + + // idProperty: String + // The property name in element in the model array, that works as its identifier. + idProperty: "uniqueId", + + // cursorId: String + // The ID of the selected element in the model array. + cursorId: null, + + // cursorIndex: Number|String + // The index of the selected element in the model. + cursorIndex: -1, + + // cursor: dojo/Stateful + // The selected element in the model array. + cursor: null, + + // model: dojox/mvc/StatefulArray + // The data model working as an array. + model: null, + + // _listModelWatchHandle: Object + // The watch handle of model, watching for array elements. + _listModelWatchHandle: null, + + // _tableModelWatchHandle: Object + // The watch handle of model. + _tableModelWatchHandle: null, + + // _refCursorProp: String + // The property name for the data model of the current selection. + _refCursorProp: "cursor", + + // _refModelProp: String + // The property name for the data model. + _refModelProp: "cursor", + + destroy: function(){ + unwatchHandles(this); + this.inherited(arguments); + }, + + set: function(/*String*/ name, /*Anything*/ value){ + // summary: + // Set a property to this. + // name: String + // The property to set. + // value: Anything + // The value to set in the property. + + var oldRefInCursor = this[this._refCursorProp]; + var oldRefInModel = this[this._refInModelProp]; + this.inherited(arguments); + if(name == this._refCursorProp){ + setRefCursor(this, oldRefInCursor, value); + } + if(name == this._refInModelProp){ + setRefInModel(this, oldRefInModel, value); + } + }, + + _setCursorIdAttr: function(/*String*/ value){ + // summary: + // Handler for calls to set("cursorId", val). + // description: + // Finds the index associated with the given cursor ID, and updates cursorIndex property. + + var old = this.cursorId; + this._set("cursorId", value); + var model = this[this._refInModelProp]; + if(!model){ return; } + if(old !== value){ + if(lang.isArray(model)){ + for(var i = 0; i < model.length; i++){ + if(model[i][this.idProperty] == value){ + this.set("cursorIndex", i); + return; + } + } + this._set("cursorIndex", -1); + }else{ + for(var s in model){ + if(model[s][this.idProperty] == value){ + this.set("cursorIndex", s); + return; + } + } + this._set("cursorIndex", ""); + } + } + }, + + _setCursorIndexAttr: function(/*Number*/ value){ + // summary: + // Handler for calls to set("cursorIndex", val). + // description: + // Updates cursor, cursorId, cursorIndex properties internally and call watch callbacks for them. + + this._set("cursorIndex", value); + if(!this[this._refInModelProp]){ return; } + this.set(this._refCursorProp, this[this._refInModelProp][value]); + this.set("cursorId", this[this._refInModelProp][value] && this[this._refInModelProp][value][this.idProperty]); + }, + + hasControllerProperty: function(/*String*/ name){ + // summary: + // Returns true if this controller itself owns the given property. + // name: String + // The property name. + + return this.inherited(arguments) || name == this._refCursorProp; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ModelRefController.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ModelRefController.js new file mode 100644 index 00000000..224841f0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ModelRefController.js @@ -0,0 +1,87 @@ +//>>built +define("dojox/mvc/ModelRefController",["dojo/_base/array","dojo/_base/declare","dojo/_base/lang","dojo/Stateful","./_Controller"],function(_1,_2,_3,_4,_5){ +return _2("dojox.mvc.ModelRefController",_5,{ownProps:null,_refModelProp:"model",_refInModelProp:"model",model:null,postscript:function(_6,_7){ +this._relTargetProp=(_6||{})._refModelProp||this._refModelProp; +this.inherited(arguments); +},get:function(_8){ +if(!this.hasControllerProperty(_8)){ +var _9=this[this._refModelProp]; +return !_9?void 0:_9.get?_9.get(_8):_9[_8]; +} +return this.inherited(arguments); +},_set:function(_a,_b){ +if(!this.hasControllerProperty(_a)){ +var _c=this[this._refModelProp]; +_c&&(_c.set?_c.set(_a,_b):(_c[_a]=_b)); +return this; +} +return this.inherited(arguments); +},watch:function(_d,_e){ +if(this.hasControllerProperty(_d)){ +return this.inherited(arguments); +} +if(!_e){ +_e=_d; +_d=null; +} +var hm=null,hp=null,_f=this; +function _10(_11){ +if(hp){ +hp.unwatch(); +} +if(_11&&_3.isFunction(_11.set)&&_3.isFunction(_11.watch)){ +hp=_11.watch.apply(_11,(_d?[_d]:[]).concat([function(_12,old,_13){ +_e.call(_f,_12,old,_13); +}])); +} +}; +function _14(old,_15){ +var _16={}; +if(!_d){ +_1.forEach([old,_15],function(_17){ +var _18=_17&&_17.get("properties"); +if(_18){ +_1.forEach(_18,function(_19){ +if(!_f.hasControllerProperty(_19)){ +_16[_19]=1; +} +}); +}else{ +for(var s in _17){ +if(_17.hasOwnProperty(s)&&!_f.hasControllerProperty(s)){ +_16[s]=1; +} +} +} +}); +}else{ +_16[_d]=1; +} +for(var s in _16){ +_e.call(_f,s,!old?void 0:old.get?old.get(s):old[s],!_15?void 0:_15.get?_15.get(s):_15[s]); +} +}; +hm=_4.prototype.watch.call(this,this._refModelProp,function(_1a,old,_1b){ +if(old===_1b){ +return; +} +_14(old,_1b); +_10(_1b); +}); +_10(this.get(this._refModelProp)); +var h={}; +h.unwatch=h.remove=function(){ +if(hp){ +hp.unwatch(); +hp=null; +} +if(hm){ +hm.unwatch(); +hm=null; +} +}; +return h; +},hasControllerProperty:function(_1c){ +return _1c=="_watchCallbacks"||_1c==this._refModelProp||_1c==this._refInModelProp||(_1c in (this.ownProps||{}))||(_1c in this.constructor.prototype)||/^dojoAttach(Point|Event)$/i.test(_1c); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ModelRefController.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ModelRefController.js.uncompressed.js new file mode 100644 index 00000000..5d1d1c42 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/ModelRefController.js.uncompressed.js @@ -0,0 +1,198 @@ +define("dojox/mvc/ModelRefController", [ + "dojo/_base/array", + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/Stateful", + "./_Controller" +], function(array, declare, lang, Stateful, _Controller){ + return declare("dojox.mvc.ModelRefController", _Controller, { + // summary: + // A controller that keeps a reference to dojo/Stateful-based data model. + // description: + // Does the following on behalf of such model: + // + // - Provides data from model via dojo/Stateful get() interface + // - Stores data to model via dojo/Stateful set() interface + // - Watches for change in model via dojo/Stateful watch() interface (The callback is called when there is a change in data model, as well as when the data model itself is replaced with different one) + // + // Can also be used to do some application-specific stuffs upon change in properties in model, by defining setter functions. + // Doing so will help keep models and widgets free from application-specific logic, and will help keep application logic free from specifics of models and widgets. + // Such kind of setter functions can be defined in the same manner as widgets (_setXXXAttr()). + // + // NOTE - If this class is used with a widget by data-dojo-mixins, make sure putting the widget in data-dojo-type and putting this class to data-dojo-mixins. + // example: + // The text box refers to "value" property in the controller (with "ctrl" ID). + // The controller provides the "value" property on behalf of the model ("model" property in the controller). + // Two seconds later, the text box changes from "Foo" to "Bar" as the controller changes the data model it refers to. + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + + // ownProps: Object + // List of property names owned by this controller, instead of the data model. + ownProps: null, + + // _refModelProp: String + // The property name for the data model. + _refModelProp: "model", + + // _refInModelProp: String + // The property name for the data model, used as the input. + // Used when this controller needs data model (as input) that is different from the data model this controller provides. + _refInModelProp: "model", + + // model: dojo/Stateful + // The data model. + model: null, + + postscript: function(/*Object?*/ params, /*DomNode|String?*/ srcNodeRef){ + // summary: + // Sets _relTargetProp so that the property specified by _refModelProp is used for relative data binding. + + this._relTargetProp = (params || {})._refModelProp || this._refModelProp; + this.inherited(arguments); + }, + + get: function(/*String*/ name){ + // summary: + // If getter function is there, use it. Otherwise, get the data from data model of this object. + // name: String + // The property name. + + if(!this.hasControllerProperty(name)){ + var model = this[this._refModelProp]; + return !model ? void 0 : model.get ? model.get(name) : model[name]; + } + return this.inherited(arguments); + }, + + _set: function(/*String*/ name, /*Anything*/ value){ + // summary: + // Set the value to the data model or to this object. + // name: String + // The property name. + // value: Anything + // The property value. + + if(!this.hasControllerProperty(name)){ + var model = this[this._refModelProp]; + model && (model.set ? model.set(name, value) : (model[name] = value)); + return this; + } + return this.inherited(arguments); + }, + + watch: function(/*String?*/ name, /*Function*/ callback){ + // summary: + // Watch a property in the data model or in this object. + // name: String? + // The property name. + // callback: Function + // The callback function. + + if(this.hasControllerProperty(name)){ + return this.inherited(arguments); + } + + if(!callback){ + callback = name; + name = null; + } + + var hm = null, hp = null, _self = this; + + function watchPropertiesInModel(/*dojo/Stateful*/ model){ + // summary: + // Watch properties in referred model. + // model: dojo/Stateful + // The model to watch for. + + // Unwatch properties of older model. + if(hp){ hp.unwatch(); } + // Watch properties of newer model. + if(model && lang.isFunction(model.set) && lang.isFunction(model.watch)){ + hp = model.watch.apply(model, (name ? [name] : []).concat([function(name, old, current){ callback.call(_self, name, old, current); }])); + } + } + + function reflectChangeInModel(/*dojo/Stateful*/ old, /*dojo/Stateful*/ current){ + // summary: + // Upon change in model, detect change in properties, and call watch callbacks. + // old: dojo/Stateful + // The older model. + // current: dojo/Stateful + // The newer model. + + // Gather list of properties to notify change in value as model changes. + var props = {}; + if(!name){ + // If all properties are being watched, find out all properties from older model as well as from newer model. + array.forEach([old, current], function(model){ + var list = model && model.get("properties"); + if(list){ + // If the model explicitly specifies the list of properties, use it. + array.forEach(list, function(item){ + if(!_self.hasControllerProperty(item)){ props[item] = 1; } + }); + }else{ + // Otherwise, iterate through own properties. + for(var s in model){ + if(model.hasOwnProperty(s) && !_self.hasControllerProperty(s)){ props[s] = 1; } + } + } + }); + }else{ + props[name] = 1; + } + + // Call watch callbacks for properties. + for(var s in props){ + callback.call(_self, s, !old ? void 0 : old.get ? old.get(s) : old[s], !current ? void 0 : current.get ? current.get(s) : current[s]); + } + } + + // Watch for change in model. + hm = Stateful.prototype.watch.call(this, this._refModelProp, function(name, old, current){ + if(old === current){ return; } + reflectChangeInModel(old, current); + watchPropertiesInModel(current); + }); + + // Watch for properties in model. + watchPropertiesInModel(this.get(this._refModelProp)); + + var h = {}; + h.unwatch = h.remove = function(){ + if(hp){ hp.unwatch(); hp = null; } if(hm){ hm.unwatch(); hm = null; } + }; + return h; // dojo/handle + }, + + hasControllerProperty: function(/*String*/ name){ + // summary: + // Returns true if this controller itself owns the given property. + // name: String + // The property name. + + return name == "_watchCallbacks" || name == this._refModelProp || name == this._refInModelProp || (name in (this.ownProps || {})) || (name in this.constructor.prototype) || /^dojoAttach(Point|Event)$/i.test(name); // Let dojoAttachPoint/dojoAttachEvent be this controller's property to support in widgets-in-template + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Output.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Output.js new file mode 100644 index 00000000..eed96771 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Output.js @@ -0,0 +1,38 @@ +//>>built +define("dojox/mvc/Output",["dojo/_base/declare","dojo/_base/lang","dojo/dom","dijit/_WidgetBase","dojo/regexp"],function(_1,_2,_3,_4,_5){ +return _1("dojox.mvc.Output",_4,{exprchar:"$",templateString:"",postscript:function(_6,_7){ +this.srcNodeRef=_3.byId(_7); +if(this.srcNodeRef){ +this.templateString=this.srcNodeRef.innerHTML; +this.srcNodeRef.innerHTML=""; +} +this.inherited(arguments); +},set:function(_8,_9){ +this.inherited(arguments); +if(_8==="value"){ +this._output(); +} +},_updateBinding:function(_a,_b,_c){ +this.inherited(arguments); +this._output(); +},_output:function(){ +var _d=this.srcNodeRef||this.domNode; +_d.innerHTML=this.templateString?this._exprRepl(this.templateString):this.value; +},_exprRepl:function(_e){ +var _f=this,_10=function(_11,key){ +if(!_11){ +return ""; +} +var exp=_11.substr(2); +exp=exp.substr(0,exp.length-1); +with(_f){ +var val=eval(exp); +return (val||val==0?val:""); +} +}; +_10=_2.hitch(this,_10); +return _e.replace(new RegExp(_5.escapeString(this.exprchar)+"({.*?})","g"),function(_12,key,_13){ +return _10(_12,key).toString(); +}); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Output.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Output.js.uncompressed.js new file mode 100644 index 00000000..327ba7e7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Output.js.uncompressed.js @@ -0,0 +1,104 @@ +define("dojox/mvc/Output", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/dom", + "dijit/_WidgetBase", + "dojo/regexp" +], function(declare, lang, dom, _WidgetBase, regexp){ + + return declare("dojox.mvc.Output", _WidgetBase, { + // summary: + // A simple widget that displays templated output, parts of which may + // be data-bound. + // + // description: + // Simple output example: + // + // | + // + // Another simple output example: + // + // | + // | Your balance is: ${this.value} + // | + // + // + // The output widget being data-bound, if the balance changes in the + // model, the content within the `` will be + // updated accordingly. + + // exprchar: Character + // Character to use for a substitution expression, for a substitution string like ${this.value} + // If this class is declared in a template HTML and exprchar is used in in-line template of this class, something other than `$` should be specified to avoid conflict with exprchar of outer-template. + exprchar: '$', + + // templateString: [private] String + // The template or data-bound output content. + templateString : "", + + postscript: function(params, srcNodeRef){ + // summary: + // Override and save template from body. + this.srcNodeRef = dom.byId(srcNodeRef); + if(this.srcNodeRef){ + this.templateString = this.srcNodeRef.innerHTML; + this.srcNodeRef.innerHTML = ""; + } + this.inherited(arguments); + }, + + set: function(name, value){ + // summary: + // Override and refresh output on value change. + // name: + // The property to set. + // value: + // The value to set in the property. + this.inherited(arguments); + if(name === "value"){ + this._output(); + } + }, + + ////////////////////// PRIVATE METHODS //////////////////////// + + _updateBinding: function(name, old, current){ + // summary: + // Rebuild output UI if data binding changes. + // tags: + // private + this.inherited(arguments); + this._output(); + }, + + _output: function(){ + // summary: + // Produce the data-bound output. + // tags: + // private + var outputNode = this.srcNodeRef || this.domNode; + outputNode.innerHTML = this.templateString ? this._exprRepl(this.templateString) : this.value; + }, + + _exprRepl: function(tmpl){ + // summary: + // Does substitution of ${foo+bar} type expressions in template string. + // tags: + // private + var pThis = this, transform = function(value, key){ + if(!value){return "";} + var exp = value.substr(2); + exp = exp.substr(0, exp.length - 1); + with(pThis){ + var val = eval(exp); + return (val || val == 0 ? val : ""); + } + }; + transform = lang.hitch(this, transform); + return tmpl.replace(new RegExp(regexp.escapeString(this.exprchar)+"(\{.*?\})","g"), + function(match, key, format){ + return transform(match, key).toString(); + }); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/README new file mode 100644 index 00000000..8f9d7035 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/README @@ -0,0 +1,83 @@ +------------------------------------------------------------------------------- +Project Name: dojox.mvc +------------------------------------------------------------------------------- +Version 0.1 +Release date: May 16th, 2011 +------------------------------------------------------------------------------- +Project state: experimental (code and API subject to change in future releases) +------------------------------------------------------------------------------- +Credits: + Rahul Akolkar (original author) + Ed Chatelain + Akira Sudoh + Charlie Wiecha + +------------------------------------------------------------------------------- +Project description: + +Enterprise Rich Internet Applications (RIAs) often focus more on rich data +vs. the rich media aspects of RIAs more typical of consumer applications. +For example, such RIAs depend on implementing the well-known CRUD operations +on data stored in back-end systems. The dojox.mvc project focuses on +separation of MVC concerns on the client, thereby on easing development +of data-rich applications and accelerating the authoring of applications to +Create, Read, Update, and Delete data using a set of Dojo-based patterns. + +This project is useful across form factors. For example, it may be used with +dijit as well as dojox.mobile. + +We begin by introducing a first-class client-side data model based on +dojo/Stateful and extending Dojo Form widgets with support for the +Model-View-Control (MVC) pattern key to separating data from presentation in +user interface design. This basic MVC pattern allows for the flexible reuse of +each of the Model, View, and Control artifacts by application authors in +varying configurations. + +We also add support for a set of commonly needed MVC widgets and containers +such as: +- Output: a data-bound output widget +- Group: an aggregation of widgets with the same parent data binding context +- Repeat: a model-bound repeater widget that binds to a data collection +- Generate: an example of UI generation from a supplied data model + +For more, see descriptive class documentation at the top of the following +files: +dojox/mvc/at.js +dojox/mvc/sync.js + +For an introductory page on the included samples, see: +dojox/mvc/tests/mvc_index.html + +For mobile demos, see: +dojox/mvc/tests/mobile/demo/demo.html + +------------------------------------------------------------------------------- +Dependencies: + + Dojo Core (base, dojo/Stateful) + Dijit (dijit/_WidgetBase, dijit/form.*) + +------------------------------------------------------------------------------- +Documentation: + +Documentation resides at: + http://dojotoolkit.org/reference-guide/dojox/mvc.html + +------------------------------------------------------------------------------- +Installation instructions: + +Grab the following from the Dojo SVN Repository: + http://svn.dojotoolkit.org/src/dojox/trunk/mvc.js + http://svn.dojotoolkit.org/src/dojox/trunk/mvc/* + +Install into the following directory structure: +/dojox/mvc.js +/dojox/mvc/* + +...which should be at the same level as your Dojo checkout. + +then add the requires for the "dojox/mvc/at" or one of the other "dojox/mvc/xxx" classes in your application to load support for +data bindings. Other components (such as MVC containers i.e. Group, Repeat) +should be required as per application need. + +------------------------------------------------------------------------------- diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Repeat.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Repeat.js new file mode 100644 index 00000000..37934ce2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Repeat.js @@ -0,0 +1,117 @@ +//>>built +define("dojox/mvc/Repeat",["dojo/_base/declare","dojo/_base/lang","dojo/_base/sniff","dojo/_base/window","dojo/dom","dojo/dom-construct","dojo/_base/array","dojo/query","dojo/when","dijit/registry","./_Container"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b){ +return _1("dojox.mvc.Repeat",_b,{index:0,useParent:"",removeRepeatNode:false,children:null,_relTargetProp:"children",startup:function(){ +if(this.removeRepeatNode){ +var _c=null; +if(_2.isFunction(this.getParent)){ +if(this.getParent()){ +this.select=this.getParent().select; +this.onCheckStateChanged=this.getParent().onCheckStateChanged; +} +} +} +this.inherited(arguments); +this._setChildrenAttr(this.children); +},postscript:function(_d,_e){ +if(this.useParent&&_5.byId(this.useParent)){ +this.srcNodeRef=_5.byId(this.useParent); +}else{ +this.srcNodeRef=_5.byId(_e); +} +if(this.srcNodeRef){ +var _f=this._attachTemplateNodes?"inlineTemplateString":"templateString"; +if(this[_f]==""){ +this[_f]=this.srcNodeRef.innerHTML; +} +try{ +this.srcNodeRef.innerHTML=""; +} +catch(e){ +while(this.srcNodeRef.firstChild){ +this.srcNodeRef.removeChild(this.srcNodeRef.firstChild); +} +} +} +this.inherited(arguments); +},_setChildrenAttr:function(_10){ +var _11=this.children; +this._set("children",_10); +if(this.binding!=_10){ +this.set("ref",_10); +} +if(this._started&&(!this._builtOnce||_11!=_10)){ +this._builtOnce=true; +this._buildContained(_10); +} +},_buildContained:function(_12){ +if(!_12){ +return; +} +if(this.useParent&&_5.byId(this.useParent)){ +this.srcNodeRef=_5.byId(this.useParent); +} +this._destroyBody(); +this._updateAddRemoveWatch(_12); +var _13=[],_14=this._attachTemplateNodes?"inlineTemplateString":"templateString"; +for(this.index=0;_2.isFunction(_12.get)?_12.get(this.index):_12[this.index];this.index++){ +_13.push(this._exprRepl(this[_14])); +} +var _15=this.containerNode||this.srcNodeRef||this.domNode; +if(_3("ie")&&/^(table|tbody)$/i.test(_15.tagName)){ +var div=_4.doc.createElement("div"); +div.innerHTML=""+_13.join("")+"
    "; +for(var _16=div.getElementsByTagName("tbody")[0];_16.firstChild;){ +_15.appendChild(_16.firstChild); +} +}else{ +if(_3("ie")&&/^td$/i.test(_15.tagName)){ +var div=_4.doc.createElement("div"); +div.innerHTML=""+_13.join("")+"
    "; +for(var tr=div.getElementsByTagName("tr")[0];tr.firstChild;){ +_15.appendChild(tr.firstChild); +} +}else{ +_15.innerHTML=_13.join(""); +} +} +this.srcNodeRef=_15; +var _17=this; +_9(this._createBody(),function(){ +if(!_17.removeRepeatNode){ +return; +} +var _18=_17.domNode; +if(!_17.savedParentId&&_17.domNode.parentNode&&_17.domNode.parentNode.id){ +_17.savedParentId=_17.domNode.parentNode.id; +} +var _19=_5.byId(_17.savedParentId); +if(_18&&_18.children){ +var t3=_a.findWidgets(_18); +var _1a=t3.length; +for(var j=_1a;j>0;j--){ +if(t3[j-1].declaredClass=="dojox.mvc.Group"){ +var cnt=_18.children[j-1].children.length; +var _1b=_a.byId(_19.id).select; +for(var i=cnt;i>0;i--){ +_a.byId(_18.children[j-1].id).select=_1b; +_6.place(_18.children[j-1].removeChild(_18.children[j-1].children[i-1]),_19,"first"); +} +}else{ +_6.place(_18.removeChild(_18.children[j-1]),_19,"first"); +} +} +_6.destroy(_18); +} +}); +},_updateAddRemoveWatch:function(_1c){ +if(this._addRemoveWatch){ +this._addRemoveWatch.unwatch(); +} +var _1d=this; +this._addRemoveWatch=_2.isFunction(_1c.watchElements)&&_1c.watchElements(function(idx,_1e,_1f){ +if(!_1e||!_1f||_1e.length||_1f.length){ +_1d._buildContained(_1d.children); +} +}); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Repeat.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Repeat.js.uncompressed.js new file mode 100644 index 00000000..6bc8ea16 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Repeat.js.uncompressed.js @@ -0,0 +1,218 @@ +define("dojox/mvc/Repeat", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/_base/sniff", + "dojo/_base/window", + "dojo/dom", + "dojo/dom-construct", + "dojo/_base/array", + "dojo/query", + "dojo/when", + "dijit/registry", + "./_Container" +], function(declare, lang, has, win, dom, domconstruct, array, query, when, registry, _Container){ + + return declare("dojox.mvc.Repeat", _Container, { + // summary: + // A model-bound container which binds to a collection within a data model + // and produces a repeating user-interface from a template for each + // iteration within the collection. + // + // description: + // A repeat is bound to an intermediate dojo/Stateful node corresponding + // to an array in the data model. Child dijits or custom view components + // inside it inherit their parent data binding context from it. + + // index: Integer + // An index used to track the current iteration when the repeating UI is + // produced. This may be used to parameterize the content in the repeat + // template for the current iteration. + // + // For example, consider a collection of search or query results where + // each item contains a "Name" property used to prime the "Results" data + // model. Then, the following CRUD-style UI displays all the names in + // the search results in text boxes where they may be updated or such. + // + // |
    + // |
    + // | + // | + // |
    + // |
    + index : 0, + + // useParent: String + // id of the DOM node to use as the parent for the repeating items, similar to useParentId processed a little differently + useParent : "", + + // removeRepeatNode: boolean + // When true the dom node for the Repeat and Groups within the Repeat + // will be removed, their children will be placed into the parent node + // of the Repeat node. This should be set to true when working with + // a Repeat inside of a dojox.mobile list. + removeRepeatNode : false, + + // children: dojox/mvc/StatefulArray + // The array of data model that is used to render child nodes. + children: null, + + // _relTargetProp: String + // The name of the property that is used by child widgets for relative data binding. + _relTargetProp : "children", + + startup: function(){ + // This code needed for ticket 14423 is using removeRepeatNode to work with mobile.lists + // this.select and this.onCheckStateChanged are called by ListItem so they need to be set + // but it seems like a bit of a hack. + if(this.removeRepeatNode){ + var parent = null; + if(lang.isFunction(this.getParent)){ + if(this.getParent()){ + this.select = this.getParent().select; + this.onCheckStateChanged = this.getParent().onCheckStateChanged; + } + } + } + + this.inherited(arguments); + this._setChildrenAttr(this.children); + }, + + // summary: + // Override and save template from body. + postscript: function(params, srcNodeRef){ + //this.srcNodeRef = dom.byId(srcNodeRef); + if(this.useParent && dom.byId(this.useParent)){ + this.srcNodeRef = dom.byId(this.useParent); + } else{ + this.srcNodeRef = dom.byId(srcNodeRef); + } + if(this.srcNodeRef){ + var prop = this._attachTemplateNodes ? "inlineTemplateString" : "templateString"; + if(this[prop] == ""){ // only overwrite templateString if it has not been set + this[prop] = this.srcNodeRef.innerHTML; + } + try{ + this.srcNodeRef.innerHTML = ""; + }catch(e){ + while(this.srcNodeRef.firstChild){ this.srcNodeRef.removeChild(this.srcNodeRef.firstChild); } + } + + } + this.inherited(arguments); + }, + + ////////////////////// PRIVATE METHODS //////////////////////// + + _setChildrenAttr: function(/*dojo/Stateful*/ value){ + // summary: + // Handler for calls to set("children", val). + // description: + // Sets "ref" property so that child widgets can refer to, and then rebuilds the children. + + var children = this.children; + this._set("children", value); + // this.binding is the resolved ref, so not matching with the new value means change in repeat target. + if(this.binding != value){ + this.set("ref", value); + } + if(this._started && (!this._builtOnce || children != value)){ + this._builtOnce = true; + this._buildContained(value); + } + }, + + _buildContained: function(/*dojox/mvc/StatefulArray*/ children){ + // summary: + // Destroy any existing contained view, recreate the repeating UI + // markup and parse the new contents. + // children: dojox/mvc/StatefulArray + // The array of child widgets. + // tags: + // private + + if(!children){ return; } + + // TODO: Potential optimization: only create new widgets for insert, only destroy for delete. + if(this.useParent && dom.byId(this.useParent)){ + this.srcNodeRef = dom.byId(this.useParent); + } + + this._destroyBody(); + this._updateAddRemoveWatch(children); + + var insert = [], prop = this._attachTemplateNodes ? "inlineTemplateString" : "templateString"; + for(this.index = 0; lang.isFunction(children.get) ? children.get(this.index) : children[this.index]; this.index++){ + insert.push(this._exprRepl(this[prop])); + } + + var repeatNode = this.containerNode || this.srcNodeRef || this.domNode; + if(has("ie") && /^(table|tbody)$/i.test(repeatNode.tagName)){ + var div = win.doc.createElement("div"); + div.innerHTML = "" + insert.join("") + "
    "; + for(var tbody = div.getElementsByTagName("tbody")[0]; tbody.firstChild;){ + repeatNode.appendChild(tbody.firstChild); + } + }else if(has("ie") && /^td$/i.test(repeatNode.tagName)){ + var div = win.doc.createElement("div"); + div.innerHTML = "" + insert.join("") + "
    "; + for(var tr = div.getElementsByTagName("tr")[0]; tr.firstChild;){ + repeatNode.appendChild(tr.firstChild); + } + }else{ + repeatNode.innerHTML = insert.join(""); + } + + // srcNodeRef is used in _createBody, so in the programmatic create case where repeatNode was set + // from this.domNode we need to set srcNodeRef from repeatNode + this.srcNodeRef = repeatNode; + + var _self = this; + + when(this._createBody(), function(){ + if(!_self.removeRepeatNode){ return; } + + var repeatnode = _self.domNode; + if(!_self.savedParentId && _self.domNode.parentNode && _self.domNode.parentNode.id){ + _self.savedParentId = _self.domNode.parentNode.id; + } + var repeatParent = dom.byId(_self.savedParentId); + if(repeatnode && repeatnode.children){ + var t3 = registry.findWidgets(repeatnode); + var parentcnt = t3.length; + for(var j = parentcnt;j > 0;j--){ + if(t3[j-1].declaredClass == "dojox.mvc.Group"){ + var cnt = repeatnode.children[j-1].children.length; + var selForList = registry.byId(repeatParent.id).select; + for(var i = cnt;i > 0;i--){ + registry.byId(repeatnode.children[j-1].id).select = selForList; + domconstruct.place(repeatnode.children[j-1].removeChild(repeatnode.children[j-1].children[i-1]), repeatParent, "first"); + } + }else{ + domconstruct.place(repeatnode.removeChild(repeatnode.children[j-1]), repeatParent, "first"); + } + } + domconstruct.destroy(repeatnode); + } + }); + }, + + _updateAddRemoveWatch: function(/*dojo/Stateful*/ children){ + // summary: + // Updates the watch handle when binding changes. + // children: dojo/Stateful + // The array of child widgets. + // tags: + // private + if(this._addRemoveWatch){ + this._addRemoveWatch.unwatch(); + } + var pThis = this; + this._addRemoveWatch = lang.isFunction(children.watchElements) && children.watchElements(function(idx, removals, adds){ + if(!removals || !adds || removals.length || adds.length){ + pThis._buildContained(pThis.children); + } + }); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulArray.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulArray.js new file mode 100644 index 00000000..516f230f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulArray.js @@ -0,0 +1,105 @@ +//>>built +define("dojox/mvc/StatefulArray",["dojo/_base/lang","dojo/Stateful"],function(_1,_2){ +function _3(a){ +if(a._watchElementCallbacks){ +a._watchElementCallbacks(); +} +return a; +}; +var _4=function(a){ +var _5=_1._toArray(a||[]); +var _6=_4; +_5.constructor=_6; +return _1.mixin(_5,{pop:function(){ +return this.splice(this.get("length")-1,1)[0]; +},push:function(){ +this.splice.apply(this,[this.get("length"),0].concat(_1._toArray(arguments))); +return this.get("length"); +},reverse:function(){ +return _3([].reverse.apply(this,_1._toArray(arguments))); +},shift:function(){ +return this.splice(0,1)[0]; +},sort:function(){ +return _3([].sort.apply(this,_1._toArray(arguments))); +},splice:function(_7,n){ +var l=this.get("length"); +_7+=_7<0?l:0; +var p=Math.min(_7,l),_8=this.slice(_7,_7+n),_9=_1._toArray(arguments).slice(2); +[].splice.apply(this,[_7,n].concat(new Array(_9.length))); +for(var i=0;i<_9.length;i++){ +this[p+i]=_9[i]; +} +if(this._watchElementCallbacks){ +this._watchElementCallbacks(_7,_8,_9); +} +if(this._watchCallbacks){ +this._watchCallbacks("length",l,l-_8.length+_9.length); +} +return _8; +},unshift:function(){ +this.splice.apply(this,[0,0].concat(_1._toArray(arguments))); +return this.get("length"); +},concat:function(a){ +return new _4([].concat.apply(this,arguments)); +},join:function(_a){ +var _b=[]; +for(var l=this.get("length"),i=0;i>built +define("dojox/mvc/StatefulModel",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/Stateful","./getStateful","./getPlainValue","./StatefulArray"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +_1.deprecated("dojox/mvc/StatefulModel","Use dojox/mvc/getStateful, dojox/mvc/getPlainValue, dojox/mvc/StatefulArray or one of the dojox/mvc/*RefControllers instead"); +var _9=_4("dojox.mvc.StatefulModel",[_5],{data:null,store:null,valid:true,value:"",reset:function(){ +if(_2.isObject(this.data)&&!(this.data instanceof Date)&&!(this.data instanceof RegExp)){ +for(var x in this){ +if(this[x]&&_2.isFunction(this[x].reset)){ +this[x].reset(); +} +} +}else{ +this.set("value",this.data); +} +},commit:function(_a){ +this._commit(); +var ds=_a||this.store; +if(ds){ +this._saveToStore(ds); +} +},toPlainObject:function(){ +return _7(this,_9.getPlainValueOptions); +},splice:function(_b,n){ +var a=(new _8([])).splice.apply(this,_2._toArray(arguments)); +for(var i=0;i + // | var model; + // | require(["dojox/mvc", "dojo/parser"], function(mvc, parser){ + // | model = mvc.newStatefulModel({ data : { + // | hello : "Hello World" + // | }}); + // | parser.parse(); + // | }); + // | + // | + // | + // + // Such data binding awareness for dijits is added by extending the + // dijit/_WidgetBase class to include data binding capabilities + // provided by dojox/mvc/_DataBindingMixin, and this class declares a + // dependency on dojox/mvc/_DataBindingMixin. + // + // The presence of a data model and the data-binding capabilities + // outlined above support the flexible development of a number of MVC + // patterns on the client. As an example, CRUD operations can be + // supported with minimal application code. + // + // tags: + // deprecated + + // data: Object + // The plain JavaScript object / data structure used to initialize + // this model. At any point in time, it holds the lasted saved model + // state. + // Either data or store property must be provided. + data: null, + + // store: dojo/store/DataStore + // The data store from where to retrieve initial data for this model. + // An optional query may also be provided along with this store. + // Either data or store property must be provided. + store: null, + + // valid: boolean + // Whether this model deems the associated data to be valid. + valid: true, + + // value: Object + // The associated value (if this is a leaf node). The value of + // intermediate nodes in the model is not defined. + value: "", + + //////////////////////// PUBLIC METHODS / API //////////////////////// + + reset: function(){ + // summary: + // Resets this data model values to its original state. + // Structural changes to the data model (such as adds or removes) + // are not restored. + if(lang.isObject(this.data) && !(this.data instanceof Date) && !(this.data instanceof RegExp)){ + for(var x in this){ + if(this[x] && lang.isFunction(this[x].reset)){ + this[x].reset(); + } + } + }else{ + this.set("value", this.data); + } + }, + + commit: function(/*"dojo/store/DataStore?"*/ store){ + // summary: + // Commits this data model: + // + // - Saves the current state such that a subsequent reset will not + // undo any prior changes. + // - Persists client-side changes to the data store, if a store + // has been supplied as a parameter or at instantiation. + // store: + // dojo/store/DataStore + // Optional dojo/store/DataStore to use for this commit, if none + // provided but one was provided at instantiation time, that store + // will be used instead. + this._commit(); + var ds = store || this.store; + if(ds){ + this._saveToStore(ds); + } + }, + + toPlainObject: function(){ + // summary: + // Produces a plain JavaScript object representation of the data + // currently within this data model. + // returns: + // Object + // The plain JavaScript object representation of the data in this + // model. + return getPlainValue(this, StatefulModel.getPlainValueOptions); + }, + + splice: function(/*Number*/ idx, /*Number*/ n){ + // summary: + // Removes and then adds some elements to this array. + // Updates the removed/added elements, as well as the length, as stateful. + // idx: Number + // The index where removal/addition should be done. + // n: Number + // How many elements to be removed at idx. + // varargs: Anything[] + // The elements to be added to idx. + // returns: dojox/mvc/StatefulArray + // The removed elements. + + var a = (new StatefulArray([])).splice.apply(this, lang._toArray(arguments)); + for(var i = 0; i < a.length; i++){ + (this._removals = this._removals || []).push(a[i].toPlainObject()); + } + return a; + }, + + add: function(/*String*/ name, /*dojo/Stateful*/ stateful){ + // summary: + // Adds a dojo/Stateful tree represented by the given + // dojox/mvc/StatefulModel at the given property name. + // name: + // The property name to use whose value will become the given + // dijit/Stateful tree. + // stateful: + // The dojox/mvc/StatefulModel to insert. + // description: + // In case of arrays, the property names are indices passed + // as Strings. An addition of such a dojo/Stateful node + // results in right-shifting any trailing sibling nodes. + + if(typeof this.get("length") === "number" && /^[0-9]+$/.test(name.toString())){ + if(this.get("length") < (name - 0)){ + throw new Error("Out of bounds insert attempted, must be contiguous."); + } + this.splice(name - 0, 0, stateful); + }else{ + this.set(name, stateful); + } + }, + + remove: function(/*String*/ name){ + // summary: + // Removes the dojo/Stateful tree at the given property name. + // name: + // The property name from where the tree will be removed. + // description: + // In case of arrays, the property names are indices passed + // as Strings. A removal of such a dojo/Stateful node + // results in left-shifting any trailing sibling nodes. + if(typeof this.get("length") === "number" && /^[0-9]+$/.test(name.toString())){ + if(!this.get(name)){ + throw new Error("Out of bounds delete attempted - no such index: " + n); + }else{ + this.splice(name - 0, 1); + } + }else{ + var elem = this.get(name); + if(!elem){ + throw new Error("Illegal delete attempted - no such property: " + name); + }else{ + this._removals = this._removals || []; + this._removals.push(elem.toPlainObject()); + this.set(name, undefined); + delete this[name]; + } + } + }, + + valueOf: function(){ + // summary: + // Returns the value representation of the data currently within this data model. + // returns: + // Object + // The object representation of the data in this model. + return this.toPlainObject(); + }, + + toString: function(){ + // summary: + // Returns the string representation of the data currently within this data model. + // returns: + // String + // The object representation of the data in this model. + return this.value === "" && this.data ? this.data.toString() : this.value.toString(); + }, + + //////////////////////// PRIVATE INITIALIZATION METHOD //////////////////////// + + constructor: function(/*Object*/ args){ + // summary: + // Instantiates a new data model that view components may bind to. + // This is a private constructor, use the factory method + // instead: dojox/mvc/newStatefulModel(args) + // args: + // The mixin properties. + // description: + // Creates a tree of dojo/Stateful objects matching the initial + // data structure passed as input. The mixin property "data" is + // used to provide a plain JavaScript object directly representing + // the data structure. + // tags: + // private + var data = (args && "data" in args) ? args.data : this.data; + this._createModel(data); + }, + + //////////////////////// PRIVATE METHODS //////////////////////// + + _createModel: function(/*Object*/ data){ + // summary: + // Create this data model from provided input data. + // obj: + // The input for the model, as a plain JavaScript object. + // tags: + // private + + if(data != null){ + data = getStateful(data, StatefulModel.getStatefulOptions); + if(lang.isArray(data)){ + // Some consumers of dojox/mvc/StatefulModel inherits it via dojo/declare(), where we cannot use array inheritance technique + // (dojo/declare() does not support return value in constructor) + this.length = 0; + [].splice.apply(this, data); + }else if(lang.isObject(data)){ + for(var s in data){ + if(data.hasOwnProperty(s)){ + this[s] = data[s]; + } + } + }else{ + this.set("value", data); + } + } + }, + + _commit: function(){ + // summary: + // Commits this data model, saves the current state into data to become the saved state, + // so a reset will not undo any prior changes. + // tags: + // private + for(var x in this){ + if(this[x] && lang.isFunction(this[x]._commit)){ + this[x]._commit(); + } + } + this.data = this.toPlainObject(); + }, + + _saveToStore: function(/*"dojo/store/DataStore"*/ store){ + // summary: + // Commit the current values to the data store: + // + // - remove() any deleted entries + // - put() any new or updated entries + // store: + // dojo/store/DataStore to use for this commit. + // tags: + // private + if(this._removals){ + array.forEach(this._removals, function(d){ + store.remove(store.getIdentity(d)); + }, this); + delete this._removals; + } + var dataToCommit = this.toPlainObject(); + if(lang.isArray(dataToCommit)){ + array.forEach(dataToCommit, function(d){ + store.put(d); + }, this); + }else{ + store.put(dataToCommit); + } + } + }); + + lang.mixin(StatefulModel, { + getStatefulOptions: { + // summary: + // An object that defines how model object should be created from plain object hierarchy. + + getType: function(/*Anything*/ v){ + // summary: + // Returns the type of the given value. + // v: Anything + // The value. + + return lang.isArray(v) ? "array" : v != null && {}.toString.call(v) == "[object Object]" ? "object" : "value"; // String + }, + + getStatefulArray: function(/*Anything[]*/ a){ + // summary: + // Create a stateful array from a plain array. + // a: Anything[] + // The plain array. + + var _self = this, statefularray = lang.mixin(new StatefulArray(array.map(a, function(item){ return getStateful(item, _self); }))); + for(var s in StatefulModel.prototype){ + if(s != "set"){ statefularray[s] = StatefulModel.prototype[s]; } + } + statefularray.data = a; + return statefularray; + }, + + getStatefulObject: function(/*Object*/ o){ + // summary: + // Create a stateful object from a plain object. + // o: Object + // The plain object. + + var object = new StatefulModel(); + object.data = o; + for(var s in o){ + object.set(s, getStateful(o[s], this)); + } + return object; // dojox/mvc/StatefulModel + }, + + getStatefulValue: function(/*Anything*/ v){ + // summary: + // Create a stateful value from a plain value. + // v: Anything + // The plain value. + + var value = new StatefulModel(); + value.data = v; + value.set("value", v); + return value; + } + }, + + getPlainValueOptions: { + // summary: + // An object that defines how plain value should be created from model object. + + getType: function(/*Anything*/ v){ + // summary: + // Returns the type of the given value. + // v: Anything + // The value. + + if(lang.isArray(v)){ return "array"; } + if(lang.isObject(v)){ // Primitive values may have their own properties + for(var s in v){ + if(v.hasOwnProperty(s) && s != "value" && (v[s] || {}).get && (v[s] || {}).watch){ + return "object"; + } + } + } + return "value"; + }, + + getPlainArray: function(/*dojox/mvc/StatefulArray*/ a){ + return array.map(a, function(item){ return getPlainValue(item, this); }, this); + }, + + getPlainObject: function(/*dojox/mvc/StatefulModel*/ o){ + var plain = {}; + for(var s in o){ + if(s == "_watchCallbacks" || (s in StatefulModel.prototype)){ continue; } + plain[s] = getPlainValue(o[s], this); + } + return plain; + }, + + getPlainValue: function(/*Anything*/ v){ + return (v || {}).set && (v || {}).watch ? getPlainValue(v.value, this) : v; + } + } + }); + + return StatefulModel; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulSeries.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulSeries.js new file mode 100644 index 00000000..94d5b2da --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulSeries.js @@ -0,0 +1,41 @@ +//>>built +define("dojox/mvc/StatefulSeries",["dojo/_base/array","dojo/_base/declare","dojo/_base/lang","dojox/mvc/at"],function(_1,_2,_3,at){ +return _2("dojox.mvc.StatefulSeries",null,{constructor:function(_4){ +var _5=this; +function _6(){ +if(_5.series){ +_5.series.chart.updateSeries(_5.series.name,_5); +_5.series.chart.delayedRender(); +} +}; +this._handles=[]; +this.data=_1.map(_4,function(_7,_8){ +if((_7||{}).atsignature=="dojox.mvc.at"){ +var _9=_7.target,_a=_7.targetProp; +if(_3.isString(_9)){ +throw new Error("Literal-based dojox/mvc/at is not supported in dojox/mvc/StatefulSeries."); +} +if(_7.bindDirection&&!(_7.bindDirection&at.from)){ +console.warn("Data binding bindDirection option is ignored in dojox/mvc/StatefulSeries."); +} +if(_a&&_3.isFunction(_9.set)&&_3.isFunction(_9.watch)){ +var _b=_7.converter,_c=(_b||{}).format&&_3.hitch({target:_9,source:this},_b.format); +this._handles.push(_9.watch(_a,function(_d,_e,_f){ +_5.data[_8]=_c?_c(_f):_f; +_6(); +})); +} +return !_a?_9:_3.isFunction(_9.get)?_9.get(_a):_9[_a]; +}else{ +return _7; +} +},this); +_6(); +},destroy:function(){ +for(var h=null;h=this._handles.pop();){ +h.unwatch(); +} +},setSeriesObject:function(_10){ +this.series=_10; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulSeries.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulSeries.js.uncompressed.js new file mode 100644 index 00000000..79e8eed2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StatefulSeries.js.uncompressed.js @@ -0,0 +1,79 @@ +define("dojox/mvc/StatefulSeries", [ + "dojo/_base/array", + "dojo/_base/declare", + "dojo/_base/lang", + "dojox/mvc/at" +], function(darray, declare, lang, at){ + return declare("dojox.mvc.StatefulSeries", null, { + // summary: + // Chart data plugin ("series") that watches for properties specified in dojox/mvc/at handles in the given data. + // At initialization, and when the properties are updated, creates the data from data given and updates the chart. + // example: + // Two seconds later, the chart changes from 25%/25%/50% to 10%/10%/80%, as the data model changes: + // | + // | + // | + // | + // | + // | + // |
    + // | + // | + + constructor: function(/*Anything[]*/ items){ + var _self = this; + function pushDataChanges(){ + if(_self.series){ + _self.series.chart.updateSeries(_self.series.name, _self); + _self.series.chart.delayedRender(); + } + } + this._handles = []; + this.data = darray.map(items, function(item, idx){ + if((item || {}).atsignature == "dojox.mvc.at"){ + var target = item.target, targetProp = item.targetProp; + if(lang.isString(target)){ + throw new Error("Literal-based dojox/mvc/at is not supported in dojox/mvc/StatefulSeries."); + } + if(item.bindDirection && !(item.bindDirection & at.from)){ + console.warn("Data binding bindDirection option is ignored in dojox/mvc/StatefulSeries."); + } + if(targetProp && lang.isFunction(target.set) && lang.isFunction(target.watch)){ + var converter = item.converter, formatFunc = (converter || {}).format && lang.hitch({target: target, source: this}, converter.format); + this._handles.push(target.watch(targetProp, function(name, old, current){ + _self.data[idx] = formatFunc ? formatFunc(current) : current; + pushDataChanges(); + })); + } + return !targetProp ? target : lang.isFunction(target.get) ? target.get(targetProp) : target[targetProp]; + }else{ + return item; + } + }, this); + pushDataChanges(); + }, + + destroy: function(){ + for(var h = null; h = this._handles.pop();){ + h.unwatch(); + } + }, + + setSeriesObject: function(series){ + this.series = series; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StoreRefController.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StoreRefController.js new file mode 100644 index 00000000..74268ef9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StoreRefController.js @@ -0,0 +1,60 @@ +//>>built +define("dojox/mvc/StoreRefController",["dojo/_base/declare","dojo/_base/lang","dojo/when","./getStateful","./ModelRefController"],function(_1,_2,_3,_4,_5){ +return _1("dojox.mvc.StoreRefController",_5,{store:null,getStatefulOptions:null,_refSourceModelProp:"model",queryStore:function(_6,_7){ +if(!(this.store||{}).query){ +return; +} +if(this._queryObserveHandle){ +this._queryObserveHandle.cancel(); +} +var _8=this,_9=this.store.query(_6,_7),_a=_3(_9,function(_b){ +if(_8._beingDestroyed){ +return; +} +_b=_4(_b,_8.getStatefulOptions); +_8.set(_8._refSourceModelProp,_b); +return _b; +}); +if(_a.then){ +_a=_2.delegate(_a); +} +for(var s in _9){ +if(isNaN(s)&&_9.hasOwnProperty(s)&&_2.isFunction(_9[s])){ +_a[s]=_9[s]; +} +} +return _a; +},getStore:function(id,_c){ +if(!(this.store||{}).get){ +return; +} +if(this._queryObserveHandle){ +this._queryObserveHandle.cancel(); +} +var _d=this; +result=_3(this.store.get(id,_c),function(_e){ +if(_d._beingDestroyed){ +return; +} +_e=_4(_e,_d.getStatefulOptions); +_d.set(_d._refSourceModelProp,_e); +return _e; +}); +return result; +},putStore:function(_f,_10){ +if(!(this.store||{}).put){ +return; +} +return this.store.put(_f,_10); +},addStore:function(_11,_12){ +if(!(this.store||{}).add){ +return; +} +return this.store.add(_11,_12); +},removeStore:function(id,_13){ +if(!(this.store||{}).remove){ +return; +} +return this.store.remove(id,_13); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StoreRefController.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StoreRefController.js.uncompressed.js new file mode 100644 index 00000000..1f278e6f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/StoreRefController.js.uncompressed.js @@ -0,0 +1,156 @@ +define("dojox/mvc/StoreRefController", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/when", + "./getStateful", + "./ModelRefController" +], function(declare, lang, when, getStateful, ModelRefController){ + return declare("dojox.mvc.StoreRefController", ModelRefController, { + // summary: + // A child class of dojox.mvc.ModelRefController, which keeps a reference to Dojo Object Store (in store property). + // description: + // Has several methods to work with the store: + // + // - queryStore(): Runs query() against the store, and creates a data model from retrieved data + // - getStore(): Runs get() against the store, and creates a data model from retrieved data + // - putStore(): Runs put() against the store + // - addStore(): Runs add() against the store + // - removeStore(): Runs remove() against the store + // + // dojo.Stateful get()/set()/watch() interfaces in dojox.mvc.StoreRefController will work with the data model from queryStore() or getStore(). + // + // NOTE - If this class is used with a widget by data-dojo-mixins, make sure putting the widget in data-dojo-type and putting this class to data-dojo-mixins. + // example: + // The text box refers to "value" property in the controller (with "ctrl" ID). + // The controller provides the "value" property, from the data coming from data store ("store" property in the controller). + // Two seconds later, the text box changes from "Foo" to "Bar" as the controller gets new data from data store. + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + + // store: dojo/store/* + // The Dojo Object Store in use. + store: null, + + // getStatefulOptions: dojox.mvc.getStatefulOptions + // The options to get stateful object from plain value. + getStatefulOptions: null, + + // _refSourceModelProp: String + // The property name for the data model, that serves as the data source. + _refSourceModelProp: "model", + + queryStore: function(/*Object*/ query, /*dojo/store/api/Store.QueryOptions?*/ options){ + // summary: + // Queries the store for objects. + // query: Object + // The query to use for retrieving objects from the store. + // options: dojo/store/api/Store.QueryOptions? + // The optional arguments to apply to the resultset. + // returns: dojo/store/api/Store.QueryResults + // The results of the query, extended with iterative methods. + + if(!(this.store || {}).query){ return; } + if(this._queryObserveHandle){ this._queryObserveHandle.cancel(); } + + var _self = this, + queryResult = this.store.query(query, options), + result = when(queryResult, function(results){ + if(_self._beingDestroyed){ return; } + results = getStateful(results, _self.getStatefulOptions); + _self.set(_self._refSourceModelProp, results); + return results; + }); + if(result.then){ + result = lang.delegate(result); + } + // For dojo/store/Observable, which adds a function to query result + for(var s in queryResult){ + if(isNaN(s) && queryResult.hasOwnProperty(s) && lang.isFunction(queryResult[s])){ + result[s] = queryResult[s]; + } + } + return result; + }, + + getStore: function(/*Number*/ id, /*Object*/ options){ + // summary: + // Retrieves an object by its identity. + // id: Number + // The identity to use to lookup the object. + // options: Object + // The options for dojo/store.*.get(). + // returns: Object + // The object in the store that matches the given id. + + if(!(this.store || {}).get){ return; } + if(this._queryObserveHandle){ this._queryObserveHandle.cancel(); } + var _self = this; + result = when(this.store.get(id, options), function(result){ + if(_self._beingDestroyed){ return; } + result = getStateful(result, _self.getStatefulOptions); + _self.set(_self._refSourceModelProp, result); + return result; + }); + return result; + }, + + putStore: function(/*Object*/ object, /*dojo/store/api/Store.PutDirectives?*/ options){ + // summary: + // Stores an object. + // object: Object + // The object to store. + // options: dojo/store/api/Store.PutDirectives? + // Additional metadata for storing the data. Includes an "id" property if a specific id is to be used. + // returns: Number + + if(!(this.store || {}).put){ return; } + return this.store.put(object, options); + }, + + addStore: function(object, options){ + // summary: + // Creates an object, throws an error if the object already exists. + // object: Object + // The object to store. + // options: dojo/store/api/Store.PutDirectives? + // Additional metadata for storing the data. Includes an "id" property if a specific id is to be used. + // returns: Number + + if(!(this.store || {}).add){ return; } + return this.store.add(object, options); + }, + + removeStore: function(/*Number*/ id, /*Object*/ options){ + // summary: + // Deletes an object by its identity + // id: Number + // The identity to use to delete the object + // options: Object + // The options for dojo/store/*.remove(). + // returns: Boolean + // Returns true if an object was removed, falsy (undefined) if no object matched the id. + + if(!(this.store || {}).remove){ return; } + return this.store.remove(id, options); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Templated.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Templated.js new file mode 100644 index 00000000..08ac5d87 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Templated.js @@ -0,0 +1,17 @@ +//>>built +define("dojox/mvc/Templated",["dojo/_base/declare","dojo/_base/lang","dijit/_WidgetBase","dijit/_TemplatedMixin","dijit/_WidgetsInTemplateMixin","./at"],function(_1,_2,_3,_4,_5){ +return _1("dojox.mvc.Templated",[_3,_4,_5],{bindings:null,startup:function(){ +var _6=_2.isFunction(this.bindings)&&this.bindings.call(this)||this.bindings; +for(var s in _6){ +var w=this[s],_7=_6[s]; +if(w){ +for(var _8 in _7){ +w.set(_8,_7[_8]); +} +}else{ +console.warn("Widget with the following attach point was not found: "+s); +} +} +this.inherited(arguments); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Templated.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Templated.js.uncompressed.js new file mode 100644 index 00000000..803e75ed --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/Templated.js.uncompressed.js @@ -0,0 +1,34 @@ +define("dojox/mvc/Templated", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dijit/_WidgetBase", + "dijit/_TemplatedMixin", + "dijit/_WidgetsInTemplateMixin", + "./at" +], function(declare, lang, _WidgetBase, _TemplatedMixin, _WidgetsInTemplateMixin){ + return declare("dojox.mvc.Templated", [_WidgetBase, _TemplatedMixin, _WidgetsInTemplateMixin], { + // summary: + // A templated widget, mostly the same as dijit/_Templated, but without deprecated features in it. + + // bindings: Object|Function + // The data binding declaration (or simple parameters) for child widgets. + bindings: null, + + startup: function(){ + // Code to support childBindings property in dojox/mvc/WidgetList, etc. + // This implementation makes sure childBindings is set before this widget starts up, as dijit/_WidgetsInTemplatedMixin starts up child widgets before it starts itself up. + var bindings = lang.isFunction(this.bindings) && this.bindings.call(this) || this.bindings; + for(var s in bindings){ + var w = this[s], props = bindings[s]; + if(w){ + for(var prop in props){ + w.set(prop, props[prop]); + } + }else{ + console.warn("Widget with the following attach point was not found: " + s); + } + } + this.inherited(arguments); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/WidgetList.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/WidgetList.js new file mode 100644 index 00000000..f7d113a2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/WidgetList.js @@ -0,0 +1,128 @@ +//>>built +define("dojox/mvc/WidgetList",["require","dojo/_base/array","dojo/_base/lang","dojo/_base/declare","dijit/_Container","dijit/_WidgetBase","./Templated"],function(_1,_2,_3,_4,_5,_6,_7){ +var _8="data-mvc-child-type",_9="data-mvc-child-mixins",_a="data-mvc-child-props",_b="data-mvc-child-bindings",_c; +function _d(_e){ +return eval("({"+_e+"})"); +}; +function _f(w){ +for(var h=null;h=(w._handles||[]).pop();){ +h.unwatch(); +} +}; +function _10(a){ +var _11=[]; +_2.forEach(a,function(_12){ +[].push.apply(_11,_12); +}); +return _11; +}; +function _13(_14,_15){ +if(this.childClz){ +_15(this.childClz); +}else{ +if(this.childType){ +var _16=!_3.isFunction(this.childType)&&!_3.isFunction(this.childMixins)?[[this.childType].concat(this.childMixins&&this.childMixins.split(",")||[])]:_2.map(_14,function(_17){ +var _18=_3.isFunction(this.childType)?this.childType.call(_17,this):this.childType,_19=_3.isFunction(this.childMixins)?this.childMixins.call(_17,this):this.childMixins; +return _18?[_18].concat(_3.isArray(_19)?_19:_19?_19.split(","):[]):["dojox/mvc/Templated"]; +},this); +_1(_2.filter(_2.map(_10(_16),function(_1a){ +return _3.getObject(_1a)?_c:_1a; +}),function(_1b){ +return _1b!==_c; +}),function(){ +_15.apply(this,_2.map(_16,function(_1c){ +var _1d=_2.map(_1c,function(_1e){ +return _3.getObject(_1e)||_1(_1e); +}); +return _1d.length>1?_4(_1d,{}):_1d[0]; +})); +}); +}else{ +_15(_7); +} +} +}; +var _1f=_4("dojox.mvc.WidgetList",[_6,_5],{childClz:null,childType:"",childMixins:"",childParams:null,childBindings:null,children:null,partialRebuild:false,_relTargetProp:"children",postMixInProperties:function(){ +this.inherited(arguments); +if(this[_8]){ +this.childType=this[_8]; +} +if(this[_9]){ +this.childMixins=this[_9]; +} +},startup:function(){ +this.inherited(arguments); +this._setChildrenAttr(this.children); +},_setChildrenAttr:function(_20){ +var _21=this.children; +this._set("children",_20); +if(this._started&&(!this._builtOnce||_21!=_20)){ +this._builtOnce=true; +this._buildChildren(_20); +if(_3.isArray(_20)){ +var _22=this; +_20.watch!=={}.watch&&(this._handles=this._handles||[]).push(_20.watch(function(_23,old,_24){ +if(!isNaN(_23)){ +var w=_22.getChildren()[_23-0]; +w&&w.set(w._relTargetProp||"target",_24); +} +})); +} +} +},_buildChildren:function(_25){ +_f(this); +for(var cw=this.getChildren(),w=null;w=cw.pop();){ +this.removeChild(w); +w.destroy(); +} +if(!_3.isArray(_25)){ +return; +} +var _26=this,seq=this._buildChildrenSeq=(this._buildChildrenSeq||0)+1,_27={idx:0,removals:[],adds:[].concat(_25)},_28=[_27]; +function _29(_2a){ +if(this._beingDestroyed||this._buildChildrenSeq>seq){ +return; +} +var _2b=[].slice.call(arguments,1); +_2a.clz=_3.isFunction(this.childType)||_3.isFunction(this.childMixins)?_2b:_2b[0]; +for(var _2c=null;_2c=_28.shift();){ +if(!_2c.clz){ +_28.unshift(_2c); +break; +} +for(var i=0,l=(_2c.removals||[]).length;i 1 ? declare(clzList, {}) : clzList[0]; + })); + }); + }else{ + callback(Templated); + } + } + + var WidgetList = declare("dojox.mvc.WidgetList", [_WidgetBase, _Container], { + // summary: + // A widget that creates child widgets repeatedly based on the children attribute (the repeated data) and childType/childMixins/childParams attributes (determines how to create each child widget). + // example: + // Create multiple instances of dijit/TextBox based on the data in array. + // The text box refers to First property in the array item. + // |
    + // example: + // Create multiple instances of widgets-in-template based on the HTML written in ` + // |
    + // example: + // Programmatically create multiple instances of widgets-in-template based on the HTML stored in childTemplate. + // (childTemplate may come from dojo/text) + // Also programmatically establish data binding at child widget's startup phase. + // The label refers to Serial property in the array item, and the text box refers to First property in the array item. + // | var childTemplate = '
    ' + // | + '' + // | + '' + // | + '
    '; + // | (new WidgetList({ + // | children: array, + // | childParams: { + // | startup: function(){ + // | this.labelNode.set("value", at("rel:", "Serial")); + // | this.inputNode.set("value", at("rel:", "First")); + // | this.inherited("startup", arguments); + // | } + // | }, + // | templateString: childTemplate + // | }, dom.byId("programmaticRepeat"))).startup(); + // example: + // Using the same childTemplate above, establish data binding for child widgets based on the declaration in childBindings. + // (childBindings may come from dojo/text, by eval()'ing the text) + // | var childBindings = { + // | labelNode: {value: at("rel:", "Serial")}, + // | inputNode: {value: at("rel:", "First")} + // | }; + // | (new WidgetList({ + // | children: array, + // | templateString: childTemplate, + // | childBindings: childBindings + // | }, dom.byId("programmaticRepeatWithSeparateBindingDeclaration"))).startup(); + + // childClz: Function + // The class of the child widget. Takes precedence over childType/childMixins. + childClz: null, + + // childType: String|Function + // The module ID of child widget, or a function that takes child data as the argument and returns the module ID of child widget. childClz takes precedence over this/childMixins. + // Can be specified via data-mvc-child-type attribute of widget declaration. + childType: "", + + // childMixins: String|String[]|Function + // The list of module IDs (separated by comma), or a function that takes child data as the argument and returns it, of the classes that will be mixed into child widget. childClz takes precedence over childType/this. + // Can be specified via data-mvc-child-mixins attribute of widget declaration. + childMixins: "", + + // childParams: Object|Function + // The mixin properties for child widget. + // Can be specified via data-mvc-child-props attribute of widget declaration. + // "this" in data-mvc-child-props will have the following properties: + // + // - parent - This widget's instance. + // - target - The data item in children. + childParams: null, + + // childBindings: Object|Function + // Data bindings for child widget. + childBindings: null, + + // children: dojox/mvc/StatefulArray + // The array of data model that is used to render child nodes. + children: null, + + /*===== + // templateString: String + // The template string for each child items. templateString in child widgets take precedence over this. + templateString: "", + =====*/ + + // partialRebuild: Boolean + // If true, only rebuild repeat items for changed elements. Otherwise, rebuild everything if there is a change in children. + partialRebuild: false, + + // _relTargetProp: String + // The name of the property that is used by child widgets for relative data binding. + _relTargetProp : "children", + + postMixInProperties: function(){ + this.inherited(arguments); + if(this[childTypeAttr]){ + this.childType = this[childTypeAttr]; + } + if(this[childMixinsAttr]){ + this.childMixins = this[childMixinsAttr]; + } + }, + + startup: function(){ + this.inherited(arguments); + this._setChildrenAttr(this.children); + }, + + _setChildrenAttr: function(/*dojo/Stateful*/ value){ + // summary: + // Handler for calls to set("children", val). + + var children = this.children; + this._set("children", value); + if(this._started && (!this._builtOnce || children != value)){ + this._builtOnce = true; + this._buildChildren(value); + if(lang.isArray(value)){ + var _self = this; + value.watch !== {}.watch && (this._handles = this._handles || []).push(value.watch(function(name, old, current){ + if(!isNaN(name)){ + var w = _self.getChildren()[name - 0]; + w && w.set(w._relTargetProp || "target", current); + } + })); + } + } + }, + + _buildChildren: function(/*dojox/mvc/StatefulArray*/ children){ + // summary: + // Create child widgets upon children and inserts them into the container node. + + unwatchElements(this); + for(var cw = this.getChildren(), w = null; w = cw.pop();){ this.removeChild(w); w.destroy(); } + if(!lang.isArray(children)){ return; } + + var _self = this, + seq = this._buildChildrenSeq = (this._buildChildrenSeq || 0) + 1, + initial = {idx: 0, removals: [], adds: [].concat(children)}, + changes = [initial]; + + function loadedModule(/*Object*/ change){ + // summary: + // The callback function called when modules associated with an array splice have been loaded. + // description: + // Looks through the queued array splices and process queue entries whose modules have been loaded, by removing/adding child widgets upon the array splice. + + if(this._beingDestroyed || this._buildChildrenSeq > seq){ return; } // If this _WidgetList is being destroyed, or newer _buildChildren call comes during lazy loading, bail + + // Associate an object associated with an array splice with the module loaded + var list = [].slice.call(arguments, 1); + change.clz = lang.isFunction(this.childType) || lang.isFunction(this.childMixins) ? list : list[0]; + + // Looks through the queued array splices + for(var item = null; item = changes.shift();){ + // The modules for the array splice have not been loaded, bail + if(!item.clz){ + changes.unshift(item); + break; + } + + // Remove child widgets upon the array removals + for(var i = 0, l = (item.removals || []).length; i < l; ++i){ + this.removeChild(item.idx); + } + + // Create/add child widgets upon the array adds + array.forEach(array.map(item.adds, function(child, idx){ + var params = { + ownerDocument: this.ownerDocument, + parent: this, + indexAtStartup: item.idx + idx // Won't be updated even if there are removals/adds of repeat items after startup + }, childClz = lang.isArray(item.clz) ? item.clz[idx] : item.clz; + params[(lang.isFunction(this.childParams) && this.childParams.call(params, this) || this.childParams || this[childParamsAttr] && evalParams.call(params, this[childParamsAttr]) || {})._relTargetProp || childClz.prototype._relTargetProp || "target"] = child; + + var childParams = this.childParams || this[childParamsAttr] && evalParams.call(params, this[childParamsAttr]), + childBindings = this.childBindings || this[childBindingsAttr] && evalParams.call(params, this[childBindingsAttr]); + if(this.templateString && !params.templateString && !childClz.prototype.templateString){ params.templateString = this.templateString; } + if(childBindings && !params.bindings && !childClz.prototype.bindings){ params.bindings = childBindings; } + return new childClz(lang.delegate(lang.isFunction(childParams) ? childParams.call(params, this) : childParams, params)); + }, this), function(child, idx){ + this.addChild(child, item.idx + idx); + }, this); + } + } + + lang.isFunction(children.watchElements) && (this._handles = this._handles || []).push(children.watchElements(function(idx, removals, adds){ + if(!removals || !adds || !_self.partialRebuild){ + // If the entire array is changed, or this WidgetList should rebuild the whole child widgets with every change in array, rebuild the whole + _self._buildChildren(children); + }else{ + // Otherwise queue the array splice and load modules associated with the additions + var change = {idx: idx, removals: removals, adds: adds}; + changes.push(change); + loadModules.call(_self, adds, lang.hitch(_self, loadedModule, change)); + } + })); + + // Load modules associated with the initial data + loadModules.call(this, children, lang.hitch(this, loadedModule, initial)); + }, + + destroy: function(){ + unwatchElements(this); + this.inherited(arguments); + } + }); + + WidgetList.prototype[childTypeAttr] = WidgetList.prototype[childMixinsAttr] = WidgetList.prototype[childParamsAttr] = WidgetList.prototype[childBindingsAttr] = ""; // Let parser treat these attributes as string + return WidgetList; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Container.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Container.js new file mode 100644 index 00000000..a469d322 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Container.js @@ -0,0 +1,48 @@ +//>>built +define("dojox/mvc/_Container",["dojo/_base/declare","dojo/_base/lang","dojo/when","dijit/_WidgetBase","dojo/regexp"],function(_1,_2,_3,_4,_5){ +return _1("dojox.mvc._Container",_4,{stopParser:true,exprchar:"$",templateString:"",inlineTemplateString:"",_containedWidgets:[],_parser:null,_createBody:function(){ +if(!this._parser){ +try{ +this._parser=require("dojo/parser"); +} +catch(e){ +try{ +this._parser=require("dojox/mobile/parser"); +} +catch(e){ +console.error("Add explicit require(['dojo/parser']) or explicit require(['dojox/mobile/parser']), one of the parsers is required!"); +} +} +} +var _6=this; +if(this._parser){ +return _3(this._parser.parse(this.srcNodeRef,{template:true,inherited:{dir:this.dir,lang:this.lang},propsThis:this,scope:"dojo"}),function(_7){ +_6._containedWidgets=_7; +}); +} +},_destroyBody:function(){ +if(this._containedWidgets&&this._containedWidgets.length>0){ +for(var n=this._containedWidgets.length-1;n>-1;n--){ +var w=this._containedWidgets[n]; +if(w&&!w._destroyed&&w.destroy){ +w.destroy(); +} +} +} +},_exprRepl:function(_8){ +var _9=this,_a=function(_b,_c){ +if(!_b){ +return ""; +} +var _d=_b.substr(2); +_d=_d.substr(0,_d.length-1); +with(_9){ +return eval(_d); +} +}; +_a=_2.hitch(this,_a); +return _8.replace(new RegExp(_5.escapeString(this.exprchar)+"({.*?})","g"),function(_e,_f,_10){ +return _a(_e,_f).toString(); +}); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Container.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Container.js.uncompressed.js new file mode 100644 index 00000000..acbc8472 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Container.js.uncompressed.js @@ -0,0 +1,114 @@ +define("dojox/mvc/_Container", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/when", + "dijit/_WidgetBase", + "dojo/regexp" +], function(declare, lang, when, _WidgetBase, regexp){ + + return declare("dojox.mvc._Container", _WidgetBase, { + + // stopParser: [private] Boolean + // Flag to parser to not try and parse widgets declared inside the container. + stopParser: true, + + // exprchar: Character + // Character to use for a substitution expression, for a substitution string like ${this.index} + // If this class is declared in a template HTML and exprchar is used in in-line template of this class, something other than `$` should be specified to avoid conflict with exprchar of outer-template. + exprchar: '$', + + // templateString: [private] String + // The template or content for this container. It is usually obtained from the + // body of the container and may be modified or repeated over a collection/array. + // In this simple implementation, attach points, attach events and WAI + // attributes are not supported in the template. + templateString : "", + + // inlineTemplateString: [private] String + // Same as templateString. Used when this widget is mixed with a regular templated widget. + inlineTemplateString : "", + + // _containedWidgets: [protected] dijit/_Widget[] + // The array of contained widgets at any given point in time within this container. + _containedWidgets : [], + + ////////////////////// PROTECTED METHODS //////////////////////// + + _parser : null, + + _createBody: function(){ + // summary: + // Parse the body of this MVC container widget. + // description: + // The bodies of MVC containers may be model-bound views generated dynamically. + // Parse the body, start an contained widgets and attach template nodes for + // contained widgets as necessary. + // tags: + // protected + if(!this._parser){ + try{ + // returns dojo/parser if loaded, otherwise throws + this._parser = require("dojo/parser"); + }catch(e){ + // if here, dojo/parser not loaded + try{ + // returns dojox/mobile/parser if loaded, otherwise throws + this._parser = require("dojox/mobile/parser"); + }catch(e){ + // if here, both dojox/mobile/parser and dojo/parser are not loaded + console.error("Add explicit require(['dojo/parser']) or explicit require(['dojox/mobile/parser']), one of the parsers is required!"); + } + } + } + + var _self = this; + + if(this._parser){ + return when(this._parser.parse(this.srcNodeRef,{ + template: true, + inherited: {dir: this.dir, lang: this.lang}, + propsThis: this, + scope: "dojo" + }), function(widgets){ + _self._containedWidgets = widgets; + }); + } + }, + + _destroyBody: function(){ + // summary: + // Destroy the body of this MVC container widget. Also destroys any + // contained widgets. + // tags: + // protected + if(this._containedWidgets && this._containedWidgets.length > 0){ + for(var n = this._containedWidgets.length - 1; n > -1; n--){ + var w = this._containedWidgets[n]; + if(w && !w._destroyed && w.destroy){ + w.destroy(); + } + } + } + }, + + ////////////////////// PRIVATE METHODS //////////////////////// + + _exprRepl: function(tmpl){ + // summary: + // Does substitution of ${foo+bar} type expressions in template string. + // tags: + // private + var pThis = this, transform = function(value, key){ + if(!value){return "";} + var exp = value.substr(2); + exp = exp.substr(0, exp.length - 1); + with(pThis){return eval(exp);} + }; + transform = lang.hitch(this, transform); + return tmpl.replace(new RegExp(regexp.escapeString(this.exprchar)+"(\{.*?\})","g"), + function(match, key, format){ + return transform(match, key).toString(); + }); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Controller.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Controller.js new file mode 100644 index 00000000..68751797 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Controller.js @@ -0,0 +1,77 @@ +//>>built +define("dojox/mvc/_Controller",["dojo/_base/declare","dojo/_base/lang","dojo/Stateful","./_atBindingMixin"],function(_1,_2,_3,_4){ +return _1("dojox.mvc._Controller",[_3,_4],{postscript:function(_5,_6){ +if(this._applyAttributes){ +return this.inherited(arguments); +} +this._dbpostscript(_5,_6); +if(_5){ +this.params=_5; +for(var s in _5){ +this.set(s,_5[s]); +} +} +var _7; +try{ +_7=require("dijit/registry"); +this.id=this.id||(_6||{}).id||_7.getUniqueId(this.declaredClass.replace(/\./g,"_")); +_7.add(this); +} +catch(e){ +} +if(!_6){ +this.startup(); +}else{ +_6.setAttribute("widgetId",this.id); +} +},startup:function(){ +if(!this._applyAttributes){ +this._startAtWatchHandles(); +} +this.inherited(arguments); +},destroy:function(){ +this._beingDestroyed=true; +if(!this._applyAttributes){ +this._stopAtWatchHandles(); +} +this.inherited(arguments); +if(!this._applyAttributes){ +try{ +require("dijit/registry").remove(this.id); +} +catch(e){ +} +} +this._destroyed=true; +},set:function(_8,_9){ +if(typeof _8==="object"){ +for(var x in _8){ +if(_8.hasOwnProperty(x)){ +this.set(x,_8[x]); +} +} +return this; +} +if(!this._applyAttributes){ +if((_9||{}).atsignature=="dojox.mvc.at"){ +return this._setAtWatchHandle(_8,_9); +}else{ +var _a="_set"+_8.replace(/^[a-z]/,function(c){ +return c.toUpperCase(); +})+"Attr"; +if(this[_a]){ +this[_a](_9); +}else{ +this._set(_8,_9); +} +return this; +} +} +return this.inherited(arguments); +},_set:function(_b,_c){ +if(!this._applyAttributes){ +return this._changeAttrValue(_b,_c); +} +return this.inherited(arguments); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Controller.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Controller.js.uncompressed.js new file mode 100644 index 00000000..ed05c708 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_Controller.js.uncompressed.js @@ -0,0 +1,131 @@ +define("dojox/mvc/_Controller", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/Stateful", + "./_atBindingMixin" +], function(declare, lang, Stateful, _atBindingMixin){ + return declare("dojox.mvc._Controller", [Stateful, _atBindingMixin], { + postscript: function(/*Object?*/ params, /*DomNode|String?*/ srcNodeRef){ + // summary: + // If this object is not called from Dojo parser, starts this up right away. + // Also, if widget registry is available, register this object. + + // If there is dijit/_WidgetBase in upper class hierarchy (happens when this descendant is mixed into a widget), let _WidgetBase do all work + if(this._applyAttributes){ + return this.inherited(arguments); + } + // Look for dojox/mvc/at handles in the parameters + this._dbpostscript(params, srcNodeRef); + // Merge the parameters to this + if(params){ + this.params = params; + for(var s in params){ + this.set(s, params[s]); + } + } + // Add this instance to dijit/registry, if it's available + var registry; + try{ + // Usage of dijit/registry module is optional. Do not use it if it's not already loaded. + registry = require("dijit/registry"); + this.id = this.id || (srcNodeRef || {}).id || registry.getUniqueId(this.declaredClass.replace(/\./g, "_")); + registry.add(this); + }catch(e){} + if(!srcNodeRef){ + // If this instance is not created via Dojo parser, start this up right away + this.startup(); + }else{ + // If this is created via Dojo parser, set widgetId attribute so that destroyDescendants() of parent widget works + srcNodeRef.setAttribute("widgetId", this.id); + } + }, + + startup: function(){ + // summary: + // Starts up data binding as this object starts up. + + if(!this._applyAttributes){ + this._startAtWatchHandles(); + } + // If there is dijit/_WidgetBase in upper class hierarchy (happens when this descendant is mixed into a widget), let _WidgetBase do all work + this.inherited(arguments); + }, + + destroy: function(){ + // summary: + // Stops data binding as this object is destroyed. + + this._beingDestroyed = true; + if(!this._applyAttributes){ + this._stopAtWatchHandles(); + } + // If there is dijit/_WidgetBase in upper class hierarchy (happens when this descendant is mixed into a widget), let _WidgetBase do all work + this.inherited(arguments); + if(!this._applyAttributes){ + try{ + // Remove this instance from dijit/registry + // Usage of dijit/registry module is optional. Do not use it if it's not already loaded. + require("dijit/registry").remove(this.id); + }catch(e){} + } + this._destroyed = true; + }, + + set: function(/*String*/ name, /*Anything*/ value){ + // summary: + // If the value given is dojox/mvc/at handle, use it for data binding. + // Otherwise, if setter function is there, use it. + // Otherwise, set the value to the data model or to this object. + // name: String + // The property name. + // value: Anything + // The property value. + + // If an object is used, iterate through object + if(typeof name === "object"){ + for(var x in name){ + if(name.hasOwnProperty(x)){ + this.set(x, name[x]); + } + } + return this; + } + + if(!this._applyAttributes){ + if((value || {}).atsignature == "dojox.mvc.at"){ + // If dojox/mvc/at handle is given, use it for data binding + return this._setAtWatchHandle(name, value); + }else{ + // Otherwise align the setter interface to _WidgetBase + var setterName = "_set" + name.replace(/^[a-z]/, function(c){ return c.toUpperCase(); }) + "Attr"; + if(this[setterName]){ + this[setterName](value); + }else{ + this._set(name, value); + } + return this; + } + } + + // If there is dijit/_WidgetBase in upper class hierarchy (happens when this descendant is mixed into a widget), let _WidgetBase do all work + return this.inherited(arguments); + }, + + _set: function(/*String*/ name, /*Anything*/ value){ + // summary: + // Implement _set() interface so that _set() behavior is consistent whether the instance inherits _WidgetBase or not. + // If the instance does not inherit _WidgetBase, use dojo/Stateful/_changeAttrValue() that's equivalent to dijit/_WidgetBase._set(). + // name: String + // The property name. + // value: Anything + // The property value. + + if(!this._applyAttributes){ + // Call dojo/Stateful/_changeAttrValue() that's equivalent to dijit/_WidgetBase/_set() + return this._changeAttrValue(name, value); + } + // If there is dijit/_WidgetBase in upper class hierarchy (happens when this descendant is mixed into a widget), let _WidgetBase do all work + return this.inherited(arguments); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingExtension.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingExtension.js new file mode 100644 index 00000000..73f1f308 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingExtension.js @@ -0,0 +1,19 @@ +//>>built +define("dojox/mvc/_DataBindingExtension",["dojo/_base/array","dojo/aspect","dojo/_base/lang","dijit/_WidgetBase","./_DataBindingMixin"],function(_1,_2,_3,_4,_5){ +_3.extend(_4,new _5()); +_2.before(_4.prototype,"startup",function(){ +this._dbstartup(); +}); +_2.before(_4.prototype,"destroy",function(){ +if(this._modelWatchHandles){ +_1.forEach(this._modelWatchHandles,function(h){ +h.unwatch(); +}); +} +if(this._viewWatchHandles){ +_1.forEach(this._viewWatchHandles,function(h){ +h.unwatch(); +}); +} +}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingExtension.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingExtension.js.uncompressed.js new file mode 100644 index 00000000..17f54ff4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingExtension.js.uncompressed.js @@ -0,0 +1,26 @@ +define("dojox/mvc/_DataBindingExtension", [ + "dojo/_base/array", + "dojo/aspect", + "dojo/_base/lang", + "dijit/_WidgetBase", + "./_DataBindingMixin" +], function(array, aspect, lang, WidgetBase, DataBindingMixin){ + + //Apply the data binding mixin to all dijits, see mixin class description for details + lang.extend(WidgetBase, /*===== {} || =====*/ new DataBindingMixin()); + + // monkey patch dijit/_WidgetBase.startup to get data binds set up + aspect.before(WidgetBase.prototype, "startup", function(){ + this._dbstartup(); + }); + + // monkey patch dijit/_WidgetBase.destroy to remove watches setup in _DataBindingMixin + aspect.before(WidgetBase.prototype, "destroy", function(){ + if(this._modelWatchHandles){ + array.forEach(this._modelWatchHandles, function(h){ h.unwatch(); }); + } + if(this._viewWatchHandles){ + array.forEach(this._viewWatchHandles, function(h){ h.unwatch(); }); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingMixin.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingMixin.js new file mode 100644 index 00000000..be2cf942 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingMixin.js @@ -0,0 +1,167 @@ +//>>built +define("dojox/mvc/_DataBindingMixin",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/Stateful","dijit/registry"],function(_1,_2,_3,_4,_5,_6){ +_1.deprecated("dojox.mvc._DataBindingMixin","Use dojox/mvc/at for data binding."); +return _4("dojox.mvc._DataBindingMixin",null,{ref:null,isValid:function(){ +var _7=this.get("valid"); +return typeof _7!="undefined"?_7:this.get("binding")?this.get("binding").get("valid"):true; +},_dbstartup:function(){ +if(this._databound){ +return; +} +this._unwatchArray(this._viewWatchHandles); +this._viewWatchHandles=[this.watch("ref",function(_8,_9,_a){ +if(this._databound&&_9!==_a){ +this._setupBinding(); +} +}),this.watch("value",function(_b,_c,_d){ +if(this._databound){ +var _e=this.get("binding"); +if(_e){ +if(!((_d&&_c)&&(_c.valueOf()===_d.valueOf()))){ +_e.set("value",_d); +} +} +} +})]; +this._beingBound=true; +this._setupBinding(); +delete this._beingBound; +this._databound=true; +},_setupBinding:function(_f){ +if(!this.ref){ +return; +} +var ref=this.ref,pw,pb,_10; +if(ref&&_2.isFunction(ref.toPlainObject)){ +_10=ref; +}else{ +if(/^\s*expr\s*:\s*/.test(ref)){ +ref=ref.replace(/^\s*expr\s*:\s*/,""); +_10=_2.getObject(ref); +}else{ +if(/^\s*rel\s*:\s*/.test(ref)){ +ref=ref.replace(/^\s*rel\s*:\s*/,""); +_f=_f||this._getParentBindingFromDOM(); +if(_f){ +_10=_2.getObject(""+ref,false,_f); +} +}else{ +if(/^\s*widget\s*:\s*/.test(ref)){ +ref=ref.replace(/^\s*widget\s*:\s*/,""); +var _11=ref.split("."); +if(_11.length==1){ +_10=_6.byId(ref).get("binding"); +}else{ +pb=_6.byId(_11.shift()).get("binding"); +_10=_2.getObject(_11.join("."),false,pb); +} +}else{ +_f=_f||this._getParentBindingFromDOM(); +if(_f){ +_10=_2.getObject(""+ref,false,_f); +}else{ +try{ +var b=_2.getObject(""+ref)||{}; +if(_2.isFunction(b.set)&&_2.isFunction(b.watch)){ +_10=b; +} +} +catch(err){ +if(ref.indexOf("${")==-1){ +console.warn("dojox/mvc/_DataBindingMixin: '"+this.domNode+"' widget with illegal ref not evaluating to a dojo/Stateful node: '"+ref+"'"); +} +} +} +} +} +} +} +if(_10){ +if(_2.isFunction(_10.toPlainObject)){ +this.binding=_10; +if(this[this._relTargetProp||"target"]!==_10){ +this.set(this._relTargetProp||"target",_10); +} +this._updateBinding("binding",null,_10); +}else{ +console.warn("dojox/mvc/_DataBindingMixin: '"+this.domNode+"' widget with illegal ref not evaluating to a dojo/Stateful node: '"+ref+"'"); +} +} +},_isEqual:function(one,_12){ +return one===_12||isNaN(one)&&typeof one==="number"&&isNaN(_12)&&typeof _12==="number"; +},_updateBinding:function(_13,old,_14){ +this._unwatchArray(this._modelWatchHandles); +var _15=this.get("binding"); +if(_15&&_2.isFunction(_15.watch)){ +var _16=this; +this._modelWatchHandles=[_15.watch("value",function(_17,old,_18){ +if(_16._isEqual(old,_18)){ +return; +} +if(_16._isEqual(_16.get("value"),_18)){ +return; +} +_16.set("value",_18); +}),_15.watch("valid",function(_19,old,_1a){ +_16._updateProperty(_19,old,_1a,true); +if(_1a!==_16.get(_19)){ +if(_16.validate&&_2.isFunction(_16.validate)){ +_16.validate(); +} +} +}),_15.watch("required",function(_1b,old,_1c){ +_16._updateProperty(_1b,old,_1c,false,_1b,_1c); +}),_15.watch("readOnly",function(_1d,old,_1e){ +_16._updateProperty(_1d,old,_1e,false,_1d,_1e); +}),_15.watch("relevant",function(_1f,old,_20){ +_16._updateProperty(_1f,old,_20,false,"disabled",!_20); +})]; +var val=_15.get("value"); +if(val!=null){ +this.set("value",val); +} +} +this._updateChildBindings(); +},_updateProperty:function(_21,old,_22,_23,_24,_25){ +if(old===_22){ +return; +} +if(_22===null&&_23!==undefined){ +_22=_23; +} +if(_22!==this.get("binding").get(_21)){ +this.get("binding").set(_21,_22); +} +if(_24){ +this.set(_24,_25); +} +},_updateChildBindings:function(_26){ +var _27=this.get("binding")||_26; +if(_27&&!this._beingBound){ +_3.forEach(_6.findWidgets(this.domNode),function(_28){ +if(_28.ref&&_28._setupBinding){ +_28._setupBinding(_27); +}else{ +_28._updateChildBindings(_27); +} +}); +} +},_getParentBindingFromDOM:function(){ +var pn=this.domNode.parentNode,pw,pb; +while(pn){ +pw=_6.getEnclosingWidget(pn); +if(pw){ +pb=pw.get("binding"); +if(pb&&_2.isFunction(pb.toPlainObject)){ +break; +} +} +pn=pw?pw.domNode.parentNode:null; +} +return pb; +},_unwatchArray:function(_29){ +_3.forEach(_29,function(h){ +h.unwatch(); +}); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingMixin.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingMixin.js.uncompressed.js new file mode 100644 index 00000000..640832c4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_DataBindingMixin.js.uncompressed.js @@ -0,0 +1,408 @@ +define("dojox/mvc/_DataBindingMixin", [ + "dojo/_base/kernel", + "dojo/_base/lang", + "dojo/_base/array", + "dojo/_base/declare", + "dojo/Stateful", + "dijit/registry" +], function(kernel, lang, array, declare, Stateful, registry){ + + kernel.deprecated("dojox.mvc._DataBindingMixin", "Use dojox/mvc/at for data binding."); + + // Note: This should be a plain Object, not a Class. + // But no need to change it since it's deprecated. + return declare("dojox.mvc._DataBindingMixin", null, { + // summary: + // Deprecated. Use dojox/mvc/at for data binding. + // Provides the ability for dijits or custom view components to become + // data binding aware. + // + // description: + // Data binding awareness enables dijits or other view layer + // components to bind to locations within a client-side data model, + // which is commonly an instance of the dojox/mvc/StatefulModel class. A + // bind is a bi-directional update mechanism which is capable of + // synchronizing value changes between the bound dijit or other view + // component and the specified location within the data model, as well + // as changes to other properties such as "valid", "required", + // "readOnly" etc. + // + // The data binding is commonly specified declaratively via the "ref" + // property in the "data-dojo-props" attribute value. + // + // Consider the following simple example: + // + // | + // | + // | + // | + // | + // + // In the above example, both dijit/form/TextBox instances (with IDs + // "hello1" and "hello2" respectively) are bound to the same reference + // location in the data model i.e. "hello" via the "ref" expression + // "model.hello". Both will have an initial value of "Hello World". + // Thereafter, a change in the value of either of the two textboxes + // will cause an update of the value in the data model at location + // "hello" which will in turn cause a matching update of the value in + // the other textbox. + // tags: + // deprecated + + // ref: [deprecated] String||dojox/mvc/StatefulModel + // The value of the data binding expression passed declaratively by + // the developer. This usually references a location within an + // existing datamodel and may be a relative reference based on the + // parent / container data binding (dot-separated string). + ref: null, + +/*===== + // binding: [readOnly] dojox/mvc/StatefulModel + // The read only value of the resolved data binding for this widget. + // This may be a result of resolving various relative refs along + // the parent axis. + binding: null, +=====*/ + + //////////////////////// PUBLIC METHODS //////////////////////// + + isValid: function(){ + // summary: + // Returns the validity of the data binding. + // returns: + // Boolean + // The validity associated with the data binding. + // description: + // This function is meant to provide an API bridge to the dijit API. + // Validity of data-bound dijits is a function of multiple concerns: + // + // - The validity of the value as ascertained by the data binding + // and constraints specified in the data model (usually semantic). + // - The validity of the value as ascertained by the widget itself + // based on widget constraints (usually syntactic). + // + // In order for dijits to function correctly in data-bound + // environments, it is imperative that their isValid() functions + // assess the model validity of the data binding via the + // this.inherited(arguments) hierarchy and declare any values + // failing the test as invalid. + var valid = this.get("valid"); + return typeof valid != "undefined" ? valid : this.get("binding") ? this.get("binding").get("valid") : true; + }, + + //////////////////////// LIFECYCLE METHODS //////////////////////// + + _dbstartup: function(){ + // summary: + // Tie data binding initialization into the widget lifecycle, at + // widget startup. + // tags: + // private + if(this._databound){ + return; + } + this._unwatchArray(this._viewWatchHandles); + // add 2 new view watches, active only after widget has started up + this._viewWatchHandles = [ + // 1. data binding refs + this.watch("ref", function(name, old, current){ + if(this._databound && old !== current){ + this._setupBinding(); + } + }), + // 2. widget values + this.watch("value", function(name, old, current){ + if(this._databound){ + var binding = this.get("binding"); + if(binding){ + // dont set value if the valueOf current and old match. + if(!((current && old) && (old.valueOf() === current.valueOf()))){ + binding.set("value", current); + } + } + } + }) + ]; + this._beingBound = true; + this._setupBinding(); + delete this._beingBound; + this._databound = true; + }, + + //////////////////////// PRIVATE METHODS //////////////////////// + + _setupBinding: function(parentBinding){ + // summary: + // Calculate and set the dojo/Stateful data binding for the + // associated dijit or custom view component. + // parentBinding: + // The binding of this widget/view component's data-bound parent, + // if available. + // description: + // The declarative data binding reference may be specified in two + // ways via markup: + // + // - For older style documents (non validating), controls may use + // the "ref" attribute to specify the data binding reference + // (String). + // - For validating documents using the new Dojo parser, controls + // may specify the data binding reference (String) as the "ref" + // property specified in the data-dojo-props attribute. + // + // Once the ref value is obtained using either of the above means, + // the binding is set up for this control and its required, readOnly + // etc. properties are refreshed. + // The data binding may be specified as a direct reference to the + // dojo/Stateful model node or as a string relative to its DOM + // parent or another widget. + // There are three ways in which the data binding node reference is + // calculated when specified as a string: + // + // - If an explicit parent widget is specified, the binding is + // calculated relative to the parent widget's data binding. + // - For any dijits that specify a data binding reference, + // we walk up their DOM hierarchy to obtain the first container + // dijit that has a data binding set up and use the reference String + // as a property name relative to the parent's data binding context. + // - If no such parent is found i.e. for the outermost container + // dijits that specify a data binding reference, the binding is + // calculated by treating the reference String as an expression and + // evaluating it to obtain the dojo/Stateful node in the datamodel. + // + // This method calls console.warn in these two conditions: + // + // - The ref is an expression i.e. outermost bound dijit, but the + // expression evaluation fails. + // - The calculated binding turns out to not be an instance of a + // dojo/Stateful node. + // tags: + // private + + if(!this.ref){ + return; // nothing to do here + } + var ref = this.ref, pw, pb, binding; + // Now compute the model node to bind to + if(ref && lang.isFunction(ref.toPlainObject)){ // programmatic instantiation or direct ref + binding = ref; + }else if(/^\s*expr\s*:\s*/.test(ref)){ // declarative: refs as dot-separated expressions + ref = ref.replace(/^\s*expr\s*:\s*/, ""); + binding = lang.getObject(ref); + }else if(/^\s*rel\s*:\s*/.test(ref)){ // declarative: refs relative to parent binding, dot-separated + ref = ref.replace(/^\s*rel\s*:\s*/, ""); + parentBinding = parentBinding || this._getParentBindingFromDOM(); + if(parentBinding){ + binding = lang.getObject("" + ref, false, parentBinding); + } + }else if(/^\s*widget\s*:\s*/.test(ref)){ // declarative: refs relative to another dijits binding, dot-separated + ref = ref.replace(/^\s*widget\s*:\s*/, ""); + var tokens = ref.split("."); + if(tokens.length == 1){ + binding = registry.byId(ref).get("binding"); + }else{ + pb = registry.byId(tokens.shift()).get("binding"); + binding = lang.getObject(tokens.join("."), false, pb); + } + }else{ // defaults: outermost refs are expressions, nested are relative to parents + parentBinding = parentBinding || this._getParentBindingFromDOM(); + if(parentBinding){ + binding = lang.getObject("" + ref, false, parentBinding); + }else{ + try{ + var b = lang.getObject("" + ref) || {}; + if(lang.isFunction(b.set) && lang.isFunction(b.watch)){ + binding = b; + } + }catch(err){ + if(ref.indexOf("${") == -1){ // Ignore templated refs such as in repeat body + console.warn("dojox/mvc/_DataBindingMixin: '" + this.domNode + + "' widget with illegal ref not evaluating to a dojo/Stateful node: '" + ref + "'"); + } + } + } + } + if(binding){ + if(lang.isFunction(binding.toPlainObject)){ + this.binding = binding; + if(this[this._relTargetProp || "target"] !== binding){ + this.set(this._relTargetProp || "target", binding); + } + this._updateBinding("binding", null, binding); + }else{ + console.warn("dojox/mvc/_DataBindingMixin: '" + this.domNode + + "' widget with illegal ref not evaluating to a dojo/Stateful node: '" + ref + "'"); + } + } + }, + + _isEqual: function(one, other){ + // test for equality + return one === other || + // test for NaN === NaN + isNaN(one) && typeof one === 'number' && + isNaN(other) && typeof other === 'number'; + }, + + _updateBinding: function(name, old, current){ + // summary: + // Set the data binding to the supplied value, which must be a + // dojo/Stateful node of a data model. + // name: + // The name of the binding property (always "binding"). + // old: + // The old dojo/Stateful binding node of the data model. + // current: + // The new dojo/Stateful binding node of the data model. + // description: + // Applies the specified data binding to the attached widget. + // Loses any prior watch registrations on the previously active + // bind, registers the new one, updates data binds of any contained + // widgets and also refreshes all associated properties (valid, + // required etc.) + // tags: + // private + + // remove all existing watches (if there are any, there will be 5) + this._unwatchArray(this._modelWatchHandles); + // add 5 new model watches + var binding = this.get("binding"); + if(binding && lang.isFunction(binding.watch)){ + var pThis = this; + this._modelWatchHandles = [ + // 1. value - no default + binding.watch("value", function (name, old, current){ + if(pThis._isEqual(old, current)){return;} + if(pThis._isEqual(pThis.get('value'), current)){return;} + pThis.set("value", current); + }), + // 2. valid - default "true" + binding.watch("valid", function (name, old, current){ + pThis._updateProperty(name, old, current, true); + if(current !== pThis.get(name)){ + if(pThis.validate && lang.isFunction(pThis.validate)){ + pThis.validate(); + } + } + }), + // 3. required - default "false" + binding.watch("required", function (name, old, current){ + pThis._updateProperty(name, old, current, false, name, current); + }), + // 4. readOnly - default "false" + binding.watch("readOnly", function (name, old, current){ + pThis._updateProperty(name, old, current, false, name, current); + }), + // 5. relevant - default "true" + binding.watch("relevant", function (name, old, current){ + pThis._updateProperty(name, old, current, false, "disabled", !current); + }) + ]; + var val = binding.get("value"); + if(val != null){ + this.set("value", val); + } + } + this._updateChildBindings(); + }, + + _updateProperty: function(name, old, current, defaultValue, setPropName, setPropValue){ + // summary: + // Update a binding property of the bound widget. + // name: + // The binding property name. + // old: + // The old value of the binding property. + // current: + // The new or current value of the binding property. + // defaultValue: + // The optional value to be applied as the current value of the + // binding property if the current value is null. + // setPropName: + // The optional name of a stateful property to set on the bound + // widget. + // setPropValue: + // The value, if an optional name is provided, for the stateful + // property of the bound widget. + // tags: + // private + if(old === current){ + return; + } + if(current === null && defaultValue !== undefined){ + current = defaultValue; + } + if(current !== this.get("binding").get(name)){ + this.get("binding").set(name, current); + } + if(setPropName){ + this.set(setPropName, setPropValue); + } + }, + + _updateChildBindings: function(parentBind){ + // summary: + // Update this widget's value based on the current binding and + // set up the bindings of all contained widgets so as to refresh + // any relative binding references. + // findWidgets does not return children of widgets so need to also + // update children of widgets which are not bound but may hold widgets which are. + // parentBind: + // The binding on the parent of a widget whose children may have bindings + // which need to be updated. + // tags: + // private + var binding = this.get("binding") || parentBind; + if(binding && !this._beingBound){ + array.forEach(registry.findWidgets(this.domNode), function(widget){ + if(widget.ref && widget._setupBinding){ + widget._setupBinding(binding); + }else{ + widget._updateChildBindings(binding); + } + }); + } + }, + + _getParentBindingFromDOM: function(){ + // summary: + // Get the parent binding by traversing the DOM ancestors to find + // the first enclosing data-bound widget. + // returns: + // The parent binding, if one exists along the DOM parent axis. + // tags: + // private + var pn = this.domNode.parentNode, pw, pb; + while(pn){ + pw = registry.getEnclosingWidget(pn); + if(pw){ + pb = pw.get("binding"); + if(pb && lang.isFunction(pb.toPlainObject)){ + break; + } + } + pn = pw ? pw.domNode.parentNode : null; + } + return pb; + }, + + _unwatchArray: function(watchHandles){ + // summary: + // Given an array of watch handles, unwatch all. + // watchHandles: + // The array of watch handles. + // tags: + // private + array.forEach(watchHandles, function(h){ h.unwatch(); }); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_InlineTemplateMixin.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_InlineTemplateMixin.js new file mode 100644 index 00000000..6d96f250 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_InlineTemplateMixin.js @@ -0,0 +1,21 @@ +//>>built +define("dojox/mvc/_InlineTemplateMixin",["dojo/_base/declare","dojo/_base/lang","dojo/has"],function(_1,_2,_3){ +_3.add("dom-qsa",!!document.createElement("div").querySelectorAll); +return _1("dojox.mvc._InlineTemplateMixin",null,{buildRendering:function(){ +var _4=this.srcNodeRef; +if(_4){ +var _5=_3("dom-qsa")?_4.querySelectorAll("script[type='dojox/mvc/InlineTemplate']"):_4.getElementsByTagName("script"),_6=[]; +for(var i=0,l=_5.length;i` + // and treat the HTML in there as the template string. + + buildRendering: function(){ + var root = this.srcNodeRef; + if(root){ + var nodes = has("dom-qsa") ? root.querySelectorAll("script[type='dojox/mvc/InlineTemplate']") : root.getElementsByTagName("script"), + templates = []; + for(var i = 0, l = nodes.length; i < l; ++i){ + if(!has("dom-qsa") && nodes[i].getAttribute("type") != "dojox/mvc/InlineTemplate"){ continue; } + templates.push(nodes[i].innerHTML); + } + var templateString = lang.trim(templates.join("")); + if(templateString){ + this.templateString = templateString; + } + } + this.inherited(arguments); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_TextBoxExtensions.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_TextBoxExtensions.js new file mode 100644 index 00000000..76837790 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_TextBoxExtensions.js @@ -0,0 +1,21 @@ +//>>built +define("dojox/mvc/_TextBoxExtensions",["dojo/_base/lang","dijit/_WidgetBase","dijit/form/ValidationTextBox","dijit/form/NumberTextBox"],function(_1,_2,_3,_4){ +var _5=_3.prototype.isValid; +_3.prototype.isValid=function(_6){ +return (this.inherited("isValid",arguments)!==false&&_5.apply(this,[_6])); +}; +var _7=_4.prototype.isValid; +_4.prototype.isValid=function(_8){ +return (this.inherited("isValid",arguments)!==false&&_7.apply(this,[_8])); +}; +if(!_1.isFunction(_2.prototype.isValid)){ +_2.prototype.isValid=function(){ +var _9=this.get("valid"); +return typeof _9=="undefined"?true:_9; +}; +} +_2.prototype._setValidAttr=function(_a){ +this._set("valid",_a); +this.validate(); +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_TextBoxExtensions.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_TextBoxExtensions.js.uncompressed.js new file mode 100644 index 00000000..70f65957 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_TextBoxExtensions.js.uncompressed.js @@ -0,0 +1,33 @@ +define("dojox/mvc/_TextBoxExtensions", [ + "dojo/_base/lang", + "dijit/_WidgetBase", + "dijit/form/ValidationTextBox", + "dijit/form/NumberTextBox" +], function(lang, WidgetBase, ValidationTextBox, NumberTextBox){ + + // monkey patch dijit/form/ValidationTextBox.isValid to check this.inherited for isValid. + // hide patch from doc parser though because we want it to display the original definition of isValid. + var oldValidationTextBoxIsValid = ValidationTextBox.prototype.isValid; + ValidationTextBox.prototype.isValid = /*===== oldValidationTextBoxIsValid || =====*/ function(/*Boolean*/ isFocused){ + return (this.inherited("isValid", arguments) !== false && oldValidationTextBoxIsValid.apply(this, [isFocused])); + }; + + // monkey patch dijit/form/NumberTextBox.isValid to check this.inherited for isValid. + // hide patch from doc parser though because we want it to display the original definition of isValid. + var oldNumberTextBoxIsValid = NumberTextBox.prototype.isValid; + NumberTextBox.prototype.isValid = /*===== oldNumberTextBoxIsValid || =====*/ function(/*Boolean*/ isFocused){ + return (this.inherited("isValid", arguments) !== false && oldNumberTextBoxIsValid.apply(this, [isFocused])); + }; + + if(!lang.isFunction(WidgetBase.prototype.isValid)){ + WidgetBase.prototype.isValid = function(){ + var valid = this.get("valid"); + return typeof valid == "undefined" ? true : valid; + }; + } + + WidgetBase.prototype._setValidAttr = function(value){ + this._set("valid", value); + this.validate(); + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingExtension.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingExtension.js new file mode 100644 index 00000000..d344dc91 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingExtension.js @@ -0,0 +1,7 @@ +//>>built +define("dojox/mvc/_atBindingExtension",["dojo/_base/config","dojo/has","dijit/_WidgetBase","./atBindingExtension"],function(_1,_2,_3,_4){ +_2.add("mvc-extension-per-widget",(_1["mvc"]||{}).extensionPerWidget); +if(!_2("mvc-extension-per-widget")){ +_4(_3.prototype); +} +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingExtension.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingExtension.js.uncompressed.js new file mode 100644 index 00000000..e3b33371 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingExtension.js.uncompressed.js @@ -0,0 +1,11 @@ +define("dojox/mvc/_atBindingExtension", [ + "dojo/_base/config", + "dojo/has", + "dijit/_WidgetBase", + "./atBindingExtension" +], function(config, has, _WidgetBase, atBindingExtension){ + has.add("mvc-extension-per-widget", (config["mvc"] || {}).extensionPerWidget); + if(!has("mvc-extension-per-widget")){ + atBindingExtension(_WidgetBase.prototype); + } +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingMixin.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingMixin.js new file mode 100644 index 00000000..757bf72f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingMixin.js @@ -0,0 +1,175 @@ +//>>built +define("dojox/mvc/_atBindingMixin",["dojo/_base/array","dojo/_base/lang","dojo/_base/declare","dojo/has","dojo/Stateful","./resolve","./sync"],function(_1,_2,_3,_4,_5,_6,_7){ +if(_4("mvc-bindings-log-api")){ +function _8(_9,_a){ +return [_9._setIdAttr||!_9.declaredClass?_9:_9.declaredClass,_a].join(":"); +}; +function _b(_c,_d){ +console.warn(_d+" could not be resolved"+(typeof _c=="string"?(" with "+_c):"")+"."); +}; +} +function _e(w){ +var _f; +try{ +_f=require("dijit/registry"); +} +catch(e){ +return; +} +var pn=w.domNode&&w.domNode.parentNode,pw,pb; +while(pn){ +pw=_f.getEnclosingWidget(pn); +if(pw){ +var _10=pw._relTargetProp||"target",pt=_2.isFunction(pw.get)?pw.get(_10):pw[_10]; +if(pt||_10 in pw.constructor.prototype){ +return pw; +} +} +pn=pw&&pw.domNode.parentNode; +} +}; +function _11(_12,_13,_14,_15,_16){ +var _17={},_18=_e(_14),_19=_18&&_18._relTargetProp||"target"; +function _1a(){ +_17["Two"]&&_17["Two"].unwatch(); +delete _17["Two"]; +var _1b=_18&&(_2.isFunction(_18.get)?_18.get(_19):_18[_19]),_1c=_6(_12,_1b),_1d=_6(_14,_1b); +if(_4("mvc-bindings-log-api")&&(!_1c||/^rel:/.test(_12)&&!_18)){ +_b(_12,_13); +} +if(_4("mvc-bindings-log-api")&&(!_1d||/^rel:/.test(_14)&&!_18)){ +_b(_14,_15); +} +if(!_1c||!_1d||(/^rel:/.test(_12)||/^rel:/.test(_14))&&!_18){ +return; +} +if((!_1c.set||!_1c.watch)&&_13=="*"){ +if(_4("mvc-bindings-log-api")){ +_b(_12,_13); +} +return; +} +if(_13==null){ +_2.isFunction(_1d.set)?_1d.set(_15,_1c):(_1d[_15]=_1c); +if(_4("mvc-bindings-log-api")){ +} +}else{ +_17["Two"]=_7(_1c,_13,_1d,_15,_16); +} +}; +_1a(); +if(_18&&/^rel:/.test(_12)||/^rel:/.test(_14)&&_2.isFunction(_18.set)&&_2.isFunction(_18.watch)){ +_17["rel"]=_18.watch(_19,function(_1e,old,_1f){ +if(old!==_1f){ +if(_4("mvc-bindings-log-api")){ +} +_1a(); +} +}); +} +var h={}; +h.unwatch=h.remove=function(){ +for(var s in _17){ +_17[s]&&_17[s].unwatch(); +delete _17[s]; +} +}; +return h; +}; +var _20={dataBindAttr:"data-mvc-bindings",_dbpostscript:function(_21,_22){ +var _23=this._refs=(_21||{}).refs||{}; +for(var _24 in _21){ +if((_21[_24]||{}).atsignature=="dojox.mvc.at"){ +var h=_21[_24]; +delete _21[_24]; +_23[_24]=h; +} +} +var _25=new _5(),_26=this; +_25.toString=function(){ +return "[Mixin value of widget "+_26.declaredClass+", "+(_26.id||"NO ID")+"]"; +}; +_25.canConvertToLoggable=true; +this._startAtWatchHandles(_25); +for(var _24 in _23){ +if(_25[_24]!==void 0){ +(_21=_21||{})[_24]=_25[_24]; +} +} +this._stopAtWatchHandles(); +},_startAtWatchHandles:function(_27){ +this.canConvertToLoggable=true; +var _28=this._refs; +if(_28){ +var _29=this._atWatchHandles=this._atWatchHandles||{}; +this._excludes=null; +for(var _2a in _28){ +if(!_28[_2a]||_2a=="*"){ +continue; +} +_29[_2a]=_11(_28[_2a].target,_28[_2a].targetProp,_27||this,_2a,{bindDirection:_28[_2a].bindDirection,converter:_28[_2a].converter,equals:_28[_2a].equalsCallback}); +} +if((_28["*"]||{}).atsignature=="dojox.mvc.at"){ +_29["*"]=_11(_28["*"].target,_28["*"].targetProp,_27||this,"*",{bindDirection:_28["*"].bindDirection,converter:_28["*"].converter,equals:_28["*"].equalsCallback}); +} +} +},_stopAtWatchHandles:function(){ +for(var s in this._atWatchHandles){ +this._atWatchHandles[s].unwatch(); +delete this._atWatchHandles[s]; +} +},_setAtWatchHandle:function(_2b,_2c){ +if(_2b=="ref"){ +throw new Error(this+": 1.7 ref syntax used in conjunction with 1.8 dojox/mvc/at syntax, which is not supported."); +} +var _2d=this._atWatchHandles=this._atWatchHandles||{}; +if(_2d[_2b]){ +_2d[_2b].unwatch(); +delete _2d[_2b]; +} +this[_2b]=null; +this._excludes=null; +if(this._started){ +_2d[_2b]=_11(_2c.target,_2c.targetProp,this,_2b,{bindDirection:_2c.bindDirection,converter:_2c.converter,equals:_2c.equalsCallback}); +}else{ +this._refs[_2b]=_2c; +} +},_setBind:function(_2e){ +var _2f=eval("({"+_2e+"})"); +for(var _30 in _2f){ +var h=_2f[_30]; +if((h||{}).atsignature!="dojox.mvc.at"){ +console.warn(_30+" in "+dataBindAttr+" is not a data binding handle."); +}else{ +this._setAtWatchHandle(_30,h); +} +} +},_getExcludesAttr:function(){ +if(this._excludes){ +return this._excludes; +} +var _31=[]; +for(var s in this._atWatchHandles){ +if(s!="*"){ +_31.push(s); +} +} +return _31; +},_getPropertiesAttr:function(){ +if(this.constructor._attribs){ +return this.constructor._attribs; +} +var _32=["onClick"].concat(this.constructor._setterAttrs); +_1.forEach(["id","excludes","properties","ref","binding"],function(s){ +var _33=_1.indexOf(_32,s); +if(_33>=0){ +_32.splice(_33,1); +} +}); +return this.constructor._attribs=_32; +}}; +_20[_20.dataBindAttr]=""; +var _34=_3("dojox/mvc/_atBindingMixin",null,_20); +_34.mixin=_20; +return _34; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingMixin.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingMixin.js.uncompressed.js new file mode 100644 index 00000000..d6e45668 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_atBindingMixin.js.uncompressed.js @@ -0,0 +1,268 @@ +define("dojox/mvc/_atBindingMixin", [ + "dojo/_base/array", + "dojo/_base/lang", + "dojo/_base/declare", + "dojo/has", + "dojo/Stateful", + "./resolve", + "./sync" +], function(array, lang, declare, has, Stateful, resolve, sync){ + if(has("mvc-bindings-log-api")){ + function getLogContent(/*dojo/Stateful*/ target, /*String*/ targetProp){ + return [target._setIdAttr || !target.declaredClass ? target : target.declaredClass, targetProp].join(":"); + } + + function logResolveFailure(target, targetProp){ + console.warn(targetProp + " could not be resolved" + (typeof target == "string" ? (" with " + target) : "") + "."); + } + } + + function getParent(/*dijit/_WidgetBase*/ w){ + // summary: + // Returns parent widget having data binding target for relative data binding. + // w: dijit/_WidgetBase + // The widget. + + // Usage of dijit/registry module is optional. Return null if it's not already loaded. + var registry; + try{ + registry = require("dijit/registry"); + }catch(e){ + return; + } + var pn = w.domNode && w.domNode.parentNode, pw, pb; + while(pn){ + pw = registry.getEnclosingWidget(pn); + if(pw){ + var relTargetProp = pw._relTargetProp || "target", pt = lang.isFunction(pw.get) ? pw.get(relTargetProp) : pw[relTargetProp]; + if(pt || relTargetProp in pw.constructor.prototype){ + return pw; // dijit/_WidgetBase + } + } + pn = pw && pw.domNode.parentNode; + } + } + + function bind(/*dojo/Stateful|String*/ source, /*String*/ sourceProp, /*dijit/_WidgetBase*/ target, /*String*/ targetProp, /*dojox/mvc/sync.options*/ options){ + // summary: + // Resolves the data binding literal, and starts data binding. + // source: dojo/Stateful|String + // Source data binding literal or dojo/Stateful to be synchronized. + // sourceProp: String + // The property name in source to be synchronized. + // target: dijit/_WidgetBase + // Target dojo/Stateful to be synchronized. + // targetProp: String + // The property name in target to be synchronized. + // options: dojox/mvc/sync.options + // Data binding options. + + var _handles = {}, parent = getParent(target), relTargetProp = parent && parent._relTargetProp || "target"; + + function resolveAndBind(){ + _handles["Two"] && _handles["Two"].unwatch(); + delete _handles["Two"]; + + var relTarget = parent && (lang.isFunction(parent.get) ? parent.get(relTargetProp) : parent[relTargetProp]), + resolvedSource = resolve(source, relTarget), + resolvedTarget = resolve(target, relTarget); + + if(has("mvc-bindings-log-api") && (!resolvedSource || /^rel:/.test(source) && !parent)){ logResolveFailure(source, sourceProp); } + if(has("mvc-bindings-log-api") && (!resolvedTarget || /^rel:/.test(target) && !parent)){ logResolveFailure(target, targetProp); } + if(!resolvedSource || !resolvedTarget || (/^rel:/.test(source) || /^rel:/.test(target)) && !parent){ return; } + if((!resolvedSource.set || !resolvedSource.watch) && sourceProp == "*"){ + if(has("mvc-bindings-log-api")){ logResolveFailure(source, sourceProp); } + return; + } + + if(sourceProp == null){ + // If source property is not specified, it means this handle is just for resolving data binding target. + // (For dojox/mvc/Group and dojox/mvc/Repeat) + // Do not perform data binding synchronization in such case. + lang.isFunction(resolvedTarget.set) ? resolvedTarget.set(targetProp, resolvedSource) : (resolvedTarget[targetProp] = resolvedSource); + if(has("mvc-bindings-log-api")){ + console.log("dojox/mvc/_atBindingMixin set " + resolvedSource + " to: " + getLogContent(resolvedTarget, targetProp)); + } + }else{ + // Start data binding + _handles["Two"] = sync(resolvedSource, sourceProp, resolvedTarget, targetProp, options); // dojox/mvc/sync.handle + } + } + + resolveAndBind(); + if(parent && /^rel:/.test(source) || /^rel:/.test(target) && lang.isFunction(parent.set) && lang.isFunction(parent.watch)){ + _handles["rel"] = parent.watch(relTargetProp, function(name, old, current){ + if(old !== current){ + if(has("mvc-bindings-log-api")){ console.log("Change in relative data binding target: " + parent); } + resolveAndBind(); + } + }); + } + var h = {}; + h.unwatch = h.remove = function(){ + for(var s in _handles){ + _handles[s] && _handles[s].unwatch(); + delete _handles[s]; + } + }; + return h; + } + + var mixin = { + // summary: + // The mixin for dijit/_WidgetBase to support data binding. + + // dataBindAttr: String + // The attribute name for data binding. + dataBindAttr: "data-mvc-bindings", + + _dbpostscript: function(/*Object?*/ params, /*DomNode|String*/ srcNodeRef){ + // summary: + // See if any parameters for this widget are dojox/mvc/at handles. + // If so, move them under this._refs to prevent widget implementations from referring them. + + var refs = this._refs = (params || {}).refs || {}; + for(var prop in params){ + if((params[prop] || {}).atsignature == "dojox.mvc.at"){ + var h = params[prop]; + delete params[prop]; + refs[prop] = h; + } + } + + var dbParams = new Stateful(), + _self = this; + dbParams.toString = function(){ return '[Mixin value of widget ' + _self.declaredClass + ', ' + (_self.id || 'NO ID') + ']'; }; + dbParams.canConvertToLoggable = true; + this._startAtWatchHandles(dbParams); + for(var prop in refs){ + if(dbParams[prop] !== void 0){ + (params = params || {})[prop] = dbParams[prop]; + } + } + this._stopAtWatchHandles(); + }, + + _startAtWatchHandles: function(/*dojo/Stateful*/ bindWith){ + // summary: + // Establish data bindings based on dojox/mvc/at handles. + // bindWith: dojo/Stateful + // The dojo/Stateful to bind properties with. + + this.canConvertToLoggable = true; + + var refs = this._refs; + if(refs){ + var atWatchHandles = this._atWatchHandles = this._atWatchHandles || {}; + + // Clear the cache of properties that data binding is established with + this._excludes = null; + + // First, establish non-wildcard data bindings + for(var prop in refs){ + if(!refs[prop] || prop == "*"){ continue; } + atWatchHandles[prop] = bind(refs[prop].target, refs[prop].targetProp, bindWith || this, prop, {bindDirection: refs[prop].bindDirection, converter: refs[prop].converter, equals: refs[prop].equalsCallback}); + } + + // Then establish wildcard data bindings + if((refs["*"] || {}).atsignature == "dojox.mvc.at"){ + atWatchHandles["*"] = bind(refs["*"].target, refs["*"].targetProp, bindWith || this, "*", {bindDirection: refs["*"].bindDirection, converter: refs["*"].converter, equals: refs["*"].equalsCallback}); + } + } + }, + + _stopAtWatchHandles: function(){ + // summary: + // Stops data binding synchronization handles as widget is destroyed. + + for(var s in this._atWatchHandles){ + this._atWatchHandles[s].unwatch(); + delete this._atWatchHandles[s]; + } + }, + + _setAtWatchHandle: function(/*String*/ name, /*Anything*/ value){ + // summary: + // Called if the value is a dojox/mvc/at handle. + // If this widget has started, start data binding with the new dojox/mvc/at handle. + // Otherwise, queue it up to this._refs so that _dbstartup() can pick it up. + + if(name == "ref"){ + throw new Error(this + ": 1.7 ref syntax used in conjunction with 1.8 dojox/mvc/at syntax, which is not supported."); + } + + // Claen up older data binding + var atWatchHandles = this._atWatchHandles = this._atWatchHandles || {}; + if(atWatchHandles[name]){ + atWatchHandles[name].unwatch(); + delete atWatchHandles[name]; + } + + // Claar the value + this[name] = null; + + // Clear the cache of properties that data binding is established with + this._excludes = null; + + if(this._started){ + // If this widget has been started already, establish data binding immediately. + atWatchHandles[name] = bind(value.target, value.targetProp, this, name, {bindDirection: value.bindDirection, converter: value.converter, equals: value.equalsCallback}); + }else{ + // Otherwise, queue it up to this._refs so that _dbstartup() can pick it up. + this._refs[name] = value; + } + }, + + _setBind: function(/*Object*/ value){ + // summary: + // Sets data binding described in data-mvc-bindings. + + var list = eval("({" + value + "})"); + for(var prop in list){ + var h = list[prop]; + if((h || {}).atsignature != "dojox.mvc.at"){ + console.warn(prop + " in " + dataBindAttr + " is not a data binding handle."); + }else{ + this._setAtWatchHandle(prop, h); + } + } + }, + + _getExcludesAttr: function(){ + // summary: + // Returns list of all properties that data binding is established with. + + if(this._excludes){ + return this._excludes; // String[] + } + var list = []; + for(var s in this._atWatchHandles){ + if(s != "*"){ list.push(s); } + } + return list; // String[] + }, + + _getPropertiesAttr: function(){ + // summary: + // Returns list of all properties in this widget, except "id". + // returns: String[] + // The list of all properties in this widget, except "id".. + + if(this.constructor._attribs){ + return this.constructor._attribs; // String[] + } + var list = ["onClick"].concat(this.constructor._setterAttrs); + array.forEach(["id", "excludes", "properties", "ref", "binding"], function(s){ + var index = array.indexOf(list, s); + if(index >= 0){ list.splice(index, 1); } + }); + return this.constructor._attribs = list; // String[] + } + }; + + mixin[mixin.dataBindAttr] = ""; // Let parser treat the attribute as string + + var _atBindingMixin = declare("dojox/mvc/_atBindingMixin", null, mixin); + _atBindingMixin.mixin = mixin; // Keep the plain object version + return _atBindingMixin; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_base.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_base.js new file mode 100644 index 00000000..cf2bbc68 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_base.js @@ -0,0 +1,27 @@ +//>>built +define("dojox/mvc/_base",["dojo/_base/kernel","dojo/_base/lang","./getStateful","./StatefulModel","./Bind","./_DataBindingMixin","./_patches"],function(_1,_2,_3,_4){ +_1.experimental("dojox.mvc"); +var _5=_2.getObject("dojox.mvc",true); +_5.newStatefulModel=function(_6){ +if(_6.data){ +return _3(_6.data,_4.getStatefulOptions); +}else{ +if(_6.store&&_2.isFunction(_6.store.query)){ +var _7; +var _8=_6.store.query(_6.query); +if(_8.then){ +return (_8.then(function(_9){ +_7=_3(_9,_4.getStatefulOptions); +_7.store=_6.store; +return _7; +})); +}else{ +_7=_3(_8,_4.getStatefulOptions); +_7.store=_6.store; +return _7; +} +} +} +}; +return _5; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_base.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_base.js.uncompressed.js new file mode 100644 index 00000000..25e57d42 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_base.js.uncompressed.js @@ -0,0 +1,67 @@ +define("dojox/mvc/_base", [ + "dojo/_base/kernel", + "dojo/_base/lang", + "./getStateful", + "./StatefulModel", + "./Bind", + "./_DataBindingMixin", + "./_patches" +], function(kernel, lang, getStateful, StatefulModel){ + // module: + // dojox/mvc/_base + // summary: + // Pulls in essential MVC dependencies such as basic support for + // data binds, a data model and data binding mixin for dijits. + kernel.experimental("dojox.mvc"); + + var mvc = lang.getObject("dojox.mvc", true); + /*===== + mvc = dojox.mvc; + =====*/ + + // Factory method for dojox.mvc.StatefulModel instances + mvc.newStatefulModel = function(/*Object*/args){ + // summary: + // Factory method that instantiates a new data model that view + // components may bind to. + // args: + // The mixin properties. + // description: + // Factory method that returns a client-side data model, which is a + // tree of dojo/Stateful objects matching the initial data structure + // passed as input: + // + // - The mixin property "data" is used to provide a plain JavaScript + // object directly representing the data structure. + // - The mixin property "store", along with an optional mixin property + // "query", is used to provide a data store to query to obtain the + // initial data. + // + // This function returns an immediate dojox.mvc.StatefulModel instance or + // a Promise for such an instance as follows: + // + // - if args.data: returns immediately + // - if args.store: if store returns immediately, this function returns immediately; + // if store returns a Promise, this function returns a model Promise + + if(args.data){ + return getStateful(args.data, StatefulModel.getStatefulOptions); + }else if(args.store && lang.isFunction(args.store.query)){ + var model; + var result = args.store.query(args.query); + if(result.then){ + return (result.then(function(data){ + model = getStateful(data, StatefulModel.getStatefulOptions); + model.store = args.store; + return model; + })); + }else{ + model = getStateful(result, StatefulModel.getStatefulOptions); + model.store = args.store; + return model; + } + } + }; + + return mvc; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_patches.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_patches.js new file mode 100644 index 00000000..eab71d0e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_patches.js @@ -0,0 +1,3 @@ +//>>built +define("dojox/mvc/_patches",["./_atBindingExtension","./_DataBindingExtension","./_TextBoxExtensions"],function(){ +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_patches.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_patches.js.uncompressed.js new file mode 100644 index 00000000..3553b6f6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/_patches.js.uncompressed.js @@ -0,0 +1,5 @@ +define("dojox/mvc/_patches", [ + "./_atBindingExtension", + "./_DataBindingExtension", + "./_TextBoxExtensions" +], function(){}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/at.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/at.js new file mode 100644 index 00000000..9de26f2d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/at.js @@ -0,0 +1,20 @@ +//>>built +define("dojox/mvc/at",["dojo/_base/kernel","dojo/_base/lang","./sync","./_atBindingExtension"],function(_1,_2,_3){ +_1.experimental("dojox.mvc"); +var at=function(_4,_5){ +return {atsignature:"dojox.mvc.at",target:_4,targetProp:_5,bindDirection:_3.both,direction:function(_6){ +this.bindDirection=_6; +return this; +},transform:function(_7){ +this.converter=_7; +return this; +},equals:function(_8){ +this.equalsCallback=_8; +return this; +}}; +}; +at.from=_3.from; +at.to=_3.to; +at.both=_3.both; +return _2.setObject("dojox.mvc.at",at); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/at.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/at.js.uncompressed.js new file mode 100644 index 00000000..9f1bd2fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/at.js.uncompressed.js @@ -0,0 +1,134 @@ +define("dojox/mvc/at", [ + "dojo/_base/kernel", + "dojo/_base/lang", + "./sync", + "./_atBindingExtension" +], function(kernel, lang, sync){ + + kernel.experimental("dojox.mvc"); + + var at = function(/*dojo/Stateful|String*/ target, /*String*/ targetProp){ + // summary: + // Returns a pointer to data binding target (a dojo/Stateful property), called at handle, which is used for start synchronization with data binding source (another dojo/Stateful property). + // description: + // Typically used in data-dojo-props so that a widget can synchronize its attribute with another dojo/Stateful, like shown in the example. + // target: dojo/Stateful|String + // dojo/Stateful to be synchronized. + // targetProp: String + // The property name in target to be synchronized. + // returns: + // A pointer to data binding target (a dojo/Stateful property), called at handle, which is used for start synchronization with data binding source (another dojo/Stateful property). + // example: + // Two seconds later, the text box changes from "Foo" to "Bar" as the "value" property in model changes. + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + // example: + // Edit in text box is reflected to the text next to it. + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + // | + + return { // dojox/mvc/at.handle + atsignature: "dojox.mvc.at", + target: target, + targetProp: targetProp, + bindDirection: sync.both, + direction: function(/*Number*/ bindDirection){ + this.bindDirection = bindDirection; + return this; + }, + transform: function(/*dojox/mvc/sync.converter*/ converter){ + this.converter = converter; + return this; + }, + equals: function(/*Function*/ equals){ + this.equalsCallback = equals; + return this; + } + }; + }; + + /*===== + at.handle = { + // summary: + // A handle of data binding target (a dojo/Stateful property), which is used for start synchronization with data binding source (another dojo/Stateful property). + + // target: dojo/Stateful|String + // The data binding literal or dojo/Stateful to be synchronized. + target: new dojo/Stateful(), + + // targetProp: String + // The property name in target to be synchronized. + targetProp: "", + + // bindDirection: Number + // The data binding bindDirection, choose from: dojox/mvc/sync.from, dojox/mvc/sync.to or dojox/mvc/sync.both. + bindDirection: dojox/mvc/sync.both, + + // converter: dojox/mvc/sync.converter + // Class/object containing the converter functions used when the data goes between data binding target (e.g. data model or controller) to data binding origin (e.g. widget). + converter: null, + + direction: function(bindDirection){ + // summary: + // Sets data binding bindDirection. + // bindDirection: Number + // The data binding bindDirection, choose from: dojox/mvc/sync.from, dojox/mvc/sync.to or dojox/mvc/sync.both. + }, + + transform: function(converter){ + // summary: + // Attach a data converter. + // converter: dojox/mvc/sync.converter + // Class/object containing the converter functions used when the data goes between data binding target (e.g. data model or controller) to data binding origin (e.g. widget). + }, + + equals: function(equals){ + // summary: + // Sets a function to check if a value has really been changed when source/target dojo/Stateful changes. + // equals: Function + // The function to check for the change. + // Should take two arguments, and should return true when those two are considered equal. + } + }; + =====*/ + + // Data binding bindDirections + at.from = sync.from; + at.to = sync.to; + at.both = sync.both; + + // lang.setObject() thing is for back-compat, remove it in 2.0 + return lang.setObject("dojox.mvc.at", at); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/atBindingExtension.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/atBindingExtension.js new file mode 100644 index 00000000..063d594b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/atBindingExtension.js @@ -0,0 +1,37 @@ +//>>built +define("dojox/mvc/atBindingExtension",["dojo/aspect","dojo/_base/array","dojo/_base/lang","dijit/_WidgetBase","./_atBindingMixin","dijit/registry"],function(_1,_2,_3,_4,_5){ +return function(w){ +_2.forEach(arguments,function(w){ +if(w.dataBindAttr){ +console.warn("Detected a widget or a widget class that has already been applied data binding extension. Skipping..."); +return; +} +_3._mixin(w,_5.mixin); +_1.before(w,"postscript",function(_6,_7){ +this._dbpostscript(_6,_7); +}); +_1.before(w,"startup",function(){ +if(this._started){ +return; +} +this._startAtWatchHandles(); +}); +_1.before(w,"destroy",function(){ +this._stopAtWatchHandles(); +}); +_1.around(w,"set",function(_8){ +return function(_9,_a){ +if(_9==_5.prototype.dataBindAttr){ +return this._setBind(_a); +}else{ +if((_a||{}).atsignature=="dojox.mvc.at"){ +return this._setAtWatchHandle(_9,_a); +} +} +return _8.apply(this,_3._toArray(arguments)); +}; +}); +}); +return arguments; +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/atBindingExtension.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/atBindingExtension.js.uncompressed.js new file mode 100644 index 00000000..7ceb7408 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/atBindingExtension.js.uncompressed.js @@ -0,0 +1,57 @@ +define("dojox/mvc/atBindingExtension", [ + "dojo/aspect", + "dojo/_base/array", + "dojo/_base/lang", + "dijit/_WidgetBase", + "./_atBindingMixin", + "dijit/registry" +], function(aspect, array, lang, _WidgetBase, _atBindingMixin){ + return function(/*dijit/_WidgetBase...*/ w){ + // summary: + // Monkey-patch the given widget so that they looks at dojox/mvc/at set in them and start data binding specified there. + // w: dijit/_WidgetBase... + // The widget. + + array.forEach(arguments, function(w){ + if(w.dataBindAttr){ + console.warn("Detected a widget or a widget class that has already been applied data binding extension. Skipping..."); + return; + } + + // Apply the at binding mixin + lang._mixin(w, _atBindingMixin.mixin); + + // Monkey patch widget.postscript to get the list of dojox/mvc/at handles before startup + aspect.before(w, "postscript", function(/*Object?*/ params, /*DomNode|String*/ srcNodeRef){ + this._dbpostscript(params, srcNodeRef); + }); + + // Monkey patch widget.startup to get data binds set up + aspect.before(w, "startup", function(){ + if(this._started){ + return; + } + this._startAtWatchHandles(); + }); + + // Monkey patch widget.destroy to remove watches setup in _DataBindingMixin + aspect.before(w, "destroy", function(){ + this._stopAtWatchHandles(); + }); + + // Monkey patch widget.set to establish data binding if a dojox/mvc/at handle comes + aspect.around(w, "set", function(oldWidgetBaseSet){ + return function(/*String*/ name, /*Anything*/ value){ + if(name == _atBindingMixin.prototype.dataBindAttr){ + return this._setBind(value); + }else if((value || {}).atsignature == "dojox.mvc.at"){ + return this._setAtWatchHandle(name, value); + } + return oldWidgetBaseSet.apply(this, lang._toArray(arguments)); + }; + }); + }); + + return arguments; // dijit/_WidgetBase... + }; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/equals.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/equals.js new file mode 100644 index 00000000..e1e2a787 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/equals.js @@ -0,0 +1,32 @@ +//>>built +define("dojox/mvc/equals",["dojo/_base/array","dojo/_base/lang","dojo/Stateful","./StatefulArray"],function(_1,_2,_3,_4){ +var _5={getType:function(v){ +return _2.isArray(v)?"array":_2.isFunction((v||{}).getTime)?"date":v!=null&&({}.toString.call(v)=="[object Object]"||_2.isFunction((v||{}).set)&&_2.isFunction((v||{}).watch))?"object":"value"; +},equalsArray:function(_6,_7){ +for(var i=0,l=Math.max(_6.length,_7.length);i>built +define("dojox/mvc/getPlainValue",["dojo/_base/array","dojo/_base/lang","dojo/Stateful"],function(_1,_2,_3){ +var _4={getType:function(v){ +return _2.isArray(v)?"array":v!=null&&{}.toString.call(v)=="[object Object]"?"object":"value"; +},getPlainArray:function(a){ +return _1.map(a,function(_5){ +return _6(_5,this); +},this); +},getPlainObject:function(o){ +var _7={}; +for(var s in o){ +if(!(s in _3.prototype)&&s!="_watchCallbacks"){ +_7[s]=_6(o[s],this); +} +} +return _7; +},getPlainValue:function(v){ +return v; +}}; +var _6=function(_8,_9){ +return (_9||_6)["getPlain"+(_9||_6).getType(_8).replace(/^[a-z]/,function(c){ +return c.toUpperCase(); +})](_8); +}; +return _2.setObject("dojox.mvc.getPlainValue",_2.mixin(_6,_4)); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getPlainValue.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getPlainValue.js.uncompressed.js new file mode 100644 index 00000000..ca1edac2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getPlainValue.js.uncompressed.js @@ -0,0 +1,72 @@ +define("dojox/mvc/getPlainValue", [ + "dojo/_base/array", + "dojo/_base/lang", + "dojo/Stateful" +], function(array, lang, Stateful){ + var getPlainValueOptions = { + // summary: + // Options used for dojox/mvc/getPlainValue(). + + getType: function(/*Anything*/ v){ + // summary: + // Returns the type of the given value. + // v: Anything + // The value. + // returns: + // The type of the given value. + + return lang.isArray(v) ? "array" : v != null && {}.toString.call(v) == "[object Object]" ? "object" : "value"; + }, + + getPlainArray: function(/*Anything[]*/ a){ + // summary: + // Returns the stateful version of the given array. + // a: Anything[] + // The array. + // returns: + // The converted array. + + return array.map(a, function(item){ return getPlainValue(item, this); }, this); // Anything[] + }, + + getPlainObject: function(/*Object*/ o){ + // summary: + // Returns the stateful version of the given object. + // o: Object + // The object. + + var plain = {}; + for(var s in o){ + if(!(s in Stateful.prototype) && s != "_watchCallbacks"){ + plain[s] = getPlainValue(o[s], this); + } + } + return plain; // Object + }, + + getPlainValue: function(/*Anything*/ v){ + // summary: + // Just returns the given value. + + return v; // Anything + } + }; + + var getPlainValue = function(/*Anything*/ value, /*dojox/mvc/getPlainValueOptions*/ options){ + // summary: + // Create a raw value from a dojo/Stateful object. + // description: + // Recursively iterates the stateful value given, and convert them to raw ones. + // value: Anything + // The stateful value. + // options: dojox/mvc/getPlainValueOptions + // The object that defines how plain value should be created from stateful value. + // returns: + // The converted value. + + return (options || getPlainValue)["getPlain" + (options || getPlainValue).getType(value).replace(/^[a-z]/, function(c){ return c.toUpperCase(); })](value); // Anything + }; + + // lang.setObject() thing is for back-compat, remove it in 2.0 + return lang.setObject("dojox.mvc.getPlainValue", lang.mixin(getPlainValue, getPlainValueOptions)); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getStateful.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getStateful.js new file mode 100644 index 00000000..b1736872 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getStateful.js @@ -0,0 +1,24 @@ +//>>built +define("dojox/mvc/getStateful",["dojo/_base/array","dojo/_base/lang","dojo/Stateful","./StatefulArray"],function(_1,_2,_3,_4){ +var _5={getType:function(v){ +return _2.isArray(v)?"array":v!=null&&{}.toString.call(v)=="[object Object]"?"object":"value"; +},getStatefulArray:function(a){ +return new _4(_1.map(a,function(_6){ +return _7(_6,this); +},this)); +},getStatefulObject:function(o){ +var _8=new _3(); +for(var s in o){ +_8[s]=_7(o[s],this); +} +return _8; +},getStatefulValue:function(v){ +return v; +}}; +var _7=function(_9,_a){ +return (_a||_7)["getStateful"+(_a||_7).getType(_9).replace(/^[a-z]/,function(c){ +return c.toUpperCase(); +})](_9); +}; +return _2.setObject("dojox.mvc.getStateful",_2.mixin(_7,_5)); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getStateful.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getStateful.js.uncompressed.js new file mode 100644 index 00000000..31e22314 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/getStateful.js.uncompressed.js @@ -0,0 +1,67 @@ +define("dojox/mvc/getStateful", [ + "dojo/_base/array", + "dojo/_base/lang", + "dojo/Stateful", + "./StatefulArray" +], function(array, lang, Stateful, StatefulArray){ + var getStatefulOptions = { + // summary: + // Options used for dojox/mvc/getStateful(). + + getType: function(/*Anything*/ v){ + // summary: + // Returns the type of the given value. + // v: Anything + // The value. + + return lang.isArray(v) ? "array" : v != null && {}.toString.call(v) == "[object Object]" ? "object" : "value"; + }, + + getStatefulArray: function(/*Anything[]*/ a){ + // summary: + // Returns the stateful version of the given array. + // a: Anything[] + // The array. + + return new StatefulArray(array.map(a, function(item){ return getStateful(item, this); }, this)); // dojox/mvc/StatefulArray + }, + + getStatefulObject: function(/*Object*/ o){ + // summary: + // Returns the stateful version of the given object. + // o: Object + // The object. + + var stateful = new Stateful(); + for(var s in o){ + stateful[s] = getStateful(o[s], this); + } + return stateful; // dojo/Stateful + }, + + getStatefulValue: function(/*Anything*/ v){ + // summary: + // Just returns the given value. + + return v; // Anything + } + }; + + var getStateful = function(/*Anything*/ value, /*dojox/mvc/getStatefulOptions*/ options){ + // summary: + // Create a dojo/Stateful object from a raw value. + // description: + // Recursively iterates the raw value given, and convert them to stateful ones. + // value: Anything + // The raw value. + // options: dojox/mvc/getStatefulOptions + // The object that defines how model object should be created from plain object hierarchy. + // returns: Anything + // The converted value. + + return (options || getStateful)["getStateful" + (options || getStateful).getType(value).replace(/^[a-z]/, function(c){ return c.toUpperCase(); })](value); // Anything + }; + + // lang.setObject() thing is for back-compat, remove it in 2.0 + return lang.setObject("dojox.mvc.getStateful", lang.mixin(getStateful, getStatefulOptions)); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/parserExtension.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/parserExtension.js new file mode 100644 index 00000000..e6eaa7ce --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/parserExtension.js @@ -0,0 +1,44 @@ +//>>built +define("dojox/mvc/parserExtension",["require","dojo/_base/kernel","dojo/_base/lang","dojo/has!dojo-parser?:dojo/_base/window","dojo/has","dojo/has!dojo-mobile-parser?:dojo/parser","dojo/has!dojo-parser?:dojox/mobile/parser","dojox/mvc/_atBindingMixin","dojox/mvc/Element"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +_5.add("dom-qsa",!!document.createElement("div").querySelectorAll); +try{ +_5.add("dojo-parser",!!_1("dojo/parser")); +} +catch(e){ +} +try{ +_5.add("dojo-mobile-parser",!!_1("dojox/mobile/parser")); +} +catch(e){ +} +if(_5("dojo-parser")){ +var _9=_6.scan; +_6.scan=function(_a,_b){ +return _9.apply(this,_3._toArray(arguments)).then(function(_c){ +var _d=(_b.scope||_2._scopeName)+"Type",_e="data-"+(_b.scope||_2._scopeName)+"-",_f=_e+"type"; +for(var _10=_5("dom-qsa")?_a.querySelectorAll("["+_8.prototype.dataBindAttr+"]"):_a.getElementsByTagName("*"),i=0,l=_10.length;i>built +define("dojox/mvc/resolve",["dojo/_base/lang","dijit/registry","dojo/Stateful"],function(_1,_2){ +var _3=function(_4,_5){ +if(typeof _4=="string"){ +var _6=_4.match(/^(expr|rel|widget):(.*)$/)||[]; +try{ +if(_6[1]=="rel"){ +_4=_1.getObject(_6[2]||"",false,_5); +}else{ +if(_6[1]=="widget"){ +_4=_2.byId(_6[2]); +}else{ +_4=_1.getObject(_6[2]||_4,false,_5); +} +} +} +catch(e){ +} +} +return _4; +}; +return _1.setObject("dojox.mvc.resolve",_3); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/resolve.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/resolve.js.uncompressed.js new file mode 100644 index 00000000..05c30b80 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/resolve.js.uncompressed.js @@ -0,0 +1,36 @@ +define("dojox/mvc/resolve", [ + "dojo/_base/lang", + "dijit/registry", + "dojo/Stateful" +], function(lang, registry){ + var resolve = function(/*dojo/Stateful|String*/ target, /*dojo/Stateful?*/ parent){ + // summary: + // Find a dojo/Stateful for the target. + // description: + // If target is not a string, return target itself. + // If target is "widget:widgetid", returns the widget whose ID is widgetid. + // If target is "rel:object.path", or target is other string, returns an object under parent (if specified) or under global scope. + // target: dojo/Stateful|String + // The data binding to resolve. + // parent: dojo/Stateful? + // The parent data binding. Used when the data binding is defined inside repeat. + + if(typeof target == "string"){ + var tokens = target.match(/^(expr|rel|widget):(.*)$/) || []; + try{ + if(tokens[1] == "rel"){ + target = lang.getObject(tokens[2] || "", false, parent); + }else if(tokens[1] == "widget"){ + target = registry.byId(tokens[2]); + }else{ + target = lang.getObject(tokens[2] || target, false, parent); + } + }catch(e){} + } + + return target; // dojo/Stateful + }; + + // lang.setObject() thing is for back-compat, remove it in 2.0 + return lang.setObject("dojox.mvc.resolve", resolve); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/sync.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/sync.js new file mode 100644 index 00000000..45b861d8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/sync.js @@ -0,0 +1,111 @@ +//>>built +define("dojox/mvc/sync",["dojo/_base/lang","dojo/_base/config","dojo/_base/array","dojo/has"],function(_1,_2,_3,_4){ +var _5=_1.getObject("dojox.mvc",true); +_4.add("mvc-bindings-log-api",(_2["mvc"]||{}).debugBindings); +var _6; +if(_4("mvc-bindings-log-api")){ +function _7(_8,_9,_a,_b){ +return [[_a.canConvertToLoggable||!_a.declaredClass?_a:_a.declaredClass,_b].join(":"),[_8.canConvertToLoggable||!_8.declaredClass?_8:_8.declaredClass,_9].join(":")]; +}; +} +function _c(_d,_e){ +return _d===_e||typeof _d=="number"&&isNaN(_d)&&typeof _e=="number"&&isNaN(_e)||_1.isFunction((_d||{}).getTime)&&_1.isFunction((_e||{}).getTime)&&_d.getTime()==_e.getTime()||(_1.isFunction((_d||{}).equals)?_d.equals(_e):_1.isFunction((_e||{}).equals)?_e.equals(_d):false); +}; +function _f(_10,_11,_12,_13,_14,_15,_16,old,_17,_18){ +if(_12(_17,old)||_14=="*"&&_3.indexOf(_13.get("properties")||[_16],_16)<0||_14=="*"&&_16 in (_18||{})){ +return; +} +var _19=_14=="*"?_16:_14; +if(_4("mvc-bindings-log-api")){ +var _1a=_7(_13,_19,_15,_16); +} +try{ +_17=_10?_10(_17,_11):_17; +} +catch(e){ +if(_4("mvc-bindings-log-api")){ +} +return; +} +if(_4("mvc-bindings-log-api")){ +} +_1.isFunction(_13.set)?_13.set(_19,_17):(_13[_19]=_17); +}; +var _1b={from:1,to:2,both:3},_1c; +_6=function(_1d,_1e,_1f,_20,_21){ +var _22=(_21||{}).converter,_23,_24,_25; +if(_22){ +_23={source:_1d,target:_1f}; +_24=_22.format&&_1.hitch(_23,_22.format); +_25=_22.parse&&_1.hitch(_23,_22.parse); +} +var _26=[],_27=[],_28,_29=_1.mixin({},_1d.constraints,_1f.constraints),_2a=(_21||{}).bindDirection||_5.both,_c=(_21||{}).equals||_6.equals; +if(_4("mvc-bindings-log-api")){ +var _2b=_7(_1d,_1e,_1f,_20); +} +if(_20=="*"){ +if(_1e!="*"){ +throw new Error("Unmatched wildcard is specified between source and target."); +} +_28=_1f.get("properties"); +if(!_28){ +_28=[]; +for(var s in _1f){ +if(_1f.hasOwnProperty(s)&&s!="_watchCallbacks"){ +_28.push(s); +} +} +} +_27=_1f.get("excludes"); +}else{ +_28=[_1e]; +} +if(_2a&_5.from){ +if(_1.isFunction(_1d.set)&&_1.isFunction(_1d.watch)){ +_26.push(_1d.watch.apply(_1d,((_1e!="*")?[_1e]:[]).concat([function(_2c,old,_2d){ +_f(_24,_29,_c,_1f,_20,_1d,_2c,old,_2d,_27); +}]))); +}else{ +if(_4("mvc-bindings-log-api")){ +} +} +_3.forEach(_28,function(_2e){ +if(_20!="*"||!(_2e in (_27||{}))){ +var _2f=_1.isFunction(_1d.get)?_1d.get(_2e):_1d[_2e]; +_f(_24,_29,_c,_1f,_20=="*"?_2e:_20,_1d,_2e,_1c,_2f); +} +}); +} +if(_2a&_5.to){ +if(!(_2a&_5.from)){ +_3.forEach(_28,function(_30){ +if(_20!="*"||!(_30 in (_27||{}))){ +var _31=_1.isFunction(_1f.get)?_1f.get(_20):_1f[_20]; +_f(_25,_29,_c,_1d,_30,_1f,_20=="*"?_30:_20,_1c,_31); +} +}); +} +if(_1.isFunction(_1f.set)&&_1.isFunction(_1f.watch)){ +_26.push(_1f.watch.apply(_1f,((_20!="*")?[_20]:[]).concat([function(_32,old,_33){ +_f(_25,_29,_c,_1d,_1e,_1f,_32,old,_33,_27); +}]))); +}else{ +if(_4("mvc-bindings-log-api")){ +} +} +} +if(_4("mvc-bindings-log-api")){ +} +var _34={}; +_34.unwatch=_34.remove=function(){ +for(var h=null;h=_26.pop();){ +h.unwatch(); +} +if(_4("mvc-bindings-log-api")){ +} +}; +return _34; +}; +_1.mixin(_5,_1b); +return _1.setObject("dojox.mvc.sync",_1.mixin(_6,{equals:_c},_1b)); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/sync.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/sync.js.uncompressed.js new file mode 100644 index 00000000..8c26c20f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/mvc/sync.js.uncompressed.js @@ -0,0 +1,260 @@ +define("dojox/mvc/sync", [ + "dojo/_base/lang", + "dojo/_base/config", + "dojo/_base/array", + "dojo/has" +], function(lang, config, array, has){ + var mvc = lang.getObject("dojox.mvc", true); + /*===== + mvc = {}; + =====*/ + + /*===== + dojox.mvc.sync.converter = { + // summary: + // Class/object containing the converter functions used when the data goes between data binding source (e.g. data model or controller) to data binding origin (e.g. widget). + + format: function(value, constraints){ + // summary: + // The converter function used when the data comes from data binding source (e.g. data model or controller) to data binding origin (e.g. widget). + // value: Anything + // The data. + // constraints: Object + // The options for data conversion, which is: mixin({}, dataBindingTarget.constraints, dataBindingOrigin.constraints). + }, + + parse: function(value, constraints){ + // summary: + // The converter function used when the data comes from data binding origin (e.g. widget) to data binding source (e.g. data model or controller). + // value: Anything + // The data. + // constraints: Object + // The options for data conversion, which is: mixin({}, dataBindingTarget.constraints, dataBindingOrigin.constraints). + } + }; + + dojox.mvc.sync.options = { + // summary: + // Data binding options. + + // bindDirection: Number + // The data binding bindDirection, choose from: dojox.mvc.Bind.from, dojox.mvc.Bind.to or dojox.mvc.Bind.both. + bindDirection: dojox/mvc.both, + + // converter: dojox/mvc/sync.converter + // Class/object containing the converter functions used when the data goes between data binding source (e.g. data model or controller) to data binding origin (e.g. widget). + converter: null, + + // equals: Function + // The function to check if there really was a change when source/target dojo/Stateful indicates so. + // Should take two arguments, and should return true when those two are considered equal. + equals: null + }; + =====*/ + + has.add("mvc-bindings-log-api", (config["mvc"] || {}).debugBindings); + + var sync; + + if(has("mvc-bindings-log-api")){ + function getLogContent(/*dojo/Stateful*/ source, /*String*/ sourceProp, /*dojo/Stateful*/ target, /*String*/ targetProp){ + return [ + [target.canConvertToLoggable || !target.declaredClass ? target : target.declaredClass, targetProp].join(":"), + [source.canConvertToLoggable || !source.declaredClass ? source : source.declaredClass, sourceProp].join(":") + ]; + } + } + + function equals(/*Anything*/ dst, /*Anything*/ src){ + // summary: + // Returns if the given two values are equal. + + return dst === src + || typeof dst == "number" && isNaN(dst) && typeof src == "number" && isNaN(src) + || lang.isFunction((dst || {}).getTime) && lang.isFunction((src || {}).getTime) && dst.getTime() == src.getTime() + || (lang.isFunction((dst || {}).equals) ? dst.equals(src) : lang.isFunction((src || {}).equals) ? src.equals(dst) : false); + } + + function copy(/*Function*/ convertFunc, /*Object?*/ constraints, /*Function*/ equals, /*dojo/Stateful*/ source, /*String*/ sourceProp, /*dojo/Stateful*/ target, /*String*/ targetProp, /*Anything*/ old, /*Anything*/ current, /*Object?*/ excludes){ + // summary: + // Watch for change in property in dojo/Stateful object. + // description: + // Called when targetProp property in target is changed. (This is mainly used as a callback function of dojo/Stateful.watch()) + // When older value and newer value are different, copies the newer value to sourceProp property in source. + // convertFunc: Function + // The data converter function. + // constraints: Object? + // The data converter options. + // equals: Function + // The function to check if there really was a change when source/target dojo/Stateful indicates so. + // Should take two arguments, and should return true when those two are considered equal. + // source: dojo/Stateful + // The dojo/Stateful of copy source. + // sourceProp: String + // The property of copy source, specified in data binding. May be wildcarded. + // target: dojo/Stateful + // The dojo/Stateful of copy target. + // targetProp: String + // The property of copy target, being changed. For wildcard-based data binding, this is used as the property to be copied. + // old: Anything + // The older property value. + // current: Anything + // The newer property value. + // excludes: Object? + // The list of properties that should be excluded from wildcarded data binding. + + // Bail if there is no change in value, + // or property name is wildcarded and the property to be copied is not in source property list (and source property list is defined), + // or property name is wildcarded and the property to be copied is in explicit "excludes" list + if(equals(current, old) + || sourceProp == "*" && array.indexOf(source.get("properties") || [targetProp], targetProp) < 0 + || sourceProp == "*" && targetProp in (excludes || {})){ return; } + + var prop = sourceProp == "*" ? targetProp : sourceProp; + if(has("mvc-bindings-log-api")){ + var logContent = getLogContent(source, prop, target, targetProp); + } + + try{ + current = convertFunc ? convertFunc(current, constraints) : current; + }catch(e){ + if(has("mvc-bindings-log-api")){ + console.log("Copy from" + logContent.join(" to ") + " was not done as an error is thrown in the converter."); + } + return; + } + + if(has("mvc-bindings-log-api")){ + console.log(logContent.reverse().join(" is being copied from: ") + " (Value: " + current + " from " + old + ")"); + } + + // Copy the new value to source + lang.isFunction(source.set) ? source.set(prop, current) : (source[prop] = current); + } + + var directions = { + // from: Number + // Data binding goes from the source to the target + from: 1, + + // to: Number + // Data binding goes from the target to the source + to: 2, + + // both: Number + // Data binding goes in both directions (dojox/mvc/Bind.from | dojox/mvc/Bind.to) + both: 3 + }, undef; + + sync = function(/*dojo/Stateful*/ source, /*String*/ sourceProp, /*dojo/Stateful*/ target, /*String*/ targetProp, /*dojox/mvc/sync.options*/ options){ + // summary: + // Synchronize two dojo/Stateful properties. + // description: + // Synchronize two dojo/Stateful properties. + // source: dojo/Stateful + // Source dojo/Stateful to be synchronized. + // sourceProp: String + // The property name in source to be synchronized. + // target: dojo/Stateful + // Target dojo/Stateful to be synchronized. + // targetProp: String + // The property name in target to be synchronized. + // options: dojox/mvc/sync.options + // Data binding options. + // returns: + // The handle of data binding synchronization. + + var converter = (options || {}).converter, converterInstance, formatFunc, parseFunc; + if(converter){ + converterInstance = {source: source, target: target}; + formatFunc = converter.format && lang.hitch(converterInstance, converter.format); + parseFunc = converter.parse && lang.hitch(converterInstance, converter.parse); + } + + var _watchHandles = [], + excludes = [], + list, + constraints = lang.mixin({}, source.constraints, target.constraints), + bindDirection = (options || {}).bindDirection || mvc.both, + equals = (options || {}).equals || sync.equals; + + if(has("mvc-bindings-log-api")){ + var logContent = getLogContent(source, sourceProp, target, targetProp); + } + + if(targetProp == "*"){ + if(sourceProp != "*"){ throw new Error("Unmatched wildcard is specified between source and target."); } + list = target.get("properties"); + if(!list){ + list = []; + for(var s in target){ if(target.hasOwnProperty(s) && s != "_watchCallbacks"){ list.push(s); } } + } + excludes = target.get("excludes"); + }else{ + list = [sourceProp]; + } + + if(bindDirection & mvc.from){ + // Start synchronization from source to target (e.g. from model to widget). For wildcard mode (sourceProp == targetProp == "*"), the 1st argument of watch() is omitted + if(lang.isFunction(source.set) && lang.isFunction(source.watch)){ + _watchHandles.push(source.watch.apply(source, ((sourceProp != "*") ? [sourceProp] : []).concat([function(name, old, current){ + copy(formatFunc, constraints, equals, target, targetProp, source, name, old, current, excludes); + }]))); + }else if(has("mvc-bindings-log-api")){ + console.log(logContent.reverse().join(" is not a stateful property. Its change is not reflected to ") + "."); + } + + // Initial copy from source to target (e.g. from model to widget) + array.forEach(list, function(prop){ + // In "all properties synchronization" case, copy is not done for properties in "exclude" list + if(targetProp != "*" || !(prop in (excludes || {}))){ + var value = lang.isFunction(source.get) ? source.get(prop) : source[prop]; + copy(formatFunc, constraints, equals, target, targetProp == "*" ? prop : targetProp, source, prop, undef, value); + } + }); + } + + if(bindDirection & mvc.to){ + if(!(bindDirection & mvc.from)){ + // Initial copy from source to target (e.g. from model to widget) + array.forEach(list, function(prop){ + // In "all properties synchronization" case, copy is not done for properties in "exclude" list + if(targetProp != "*" || !(prop in (excludes || {}))){ + // Initial copy from target to source (e.g. from widget to model), only done for one-way binding from widget to model + var value = lang.isFunction(target.get) ? target.get(targetProp) : target[targetProp]; + copy(parseFunc, constraints, equals, source, prop, target, targetProp == "*" ? prop : targetProp, undef, value); + } + }); + } + + // Start synchronization from target to source (e.g. from widget to model). For wildcard mode (sourceProp == targetProp == "*"), the 1st argument of watch() is omitted + if(lang.isFunction(target.set) && lang.isFunction(target.watch)){ + _watchHandles.push(target.watch.apply(target, ((targetProp != "*") ? [targetProp] : []).concat([function(name, old, current){ + copy(parseFunc, constraints, equals, source, sourceProp, target, name, old, current, excludes); + }]))); + }else if(has("mvc-bindings-log-api")){ + console.log(logContent.join(" is not a stateful property. Its change is not reflected to ") + "."); + } + } + + if(has("mvc-bindings-log-api")){ + console.log(logContent.join(" is bound to: ")); + } + + var handle = {}; + handle.unwatch = handle.remove = function(){ + for(var h = null; h = _watchHandles.pop();){ + h.unwatch(); + } + if(has("mvc-bindings-log-api")){ + console.log(logContent.join(" is unbound from: ")); + } + }; + return handle; // dojo/handle + }; + + lang.mixin(mvc, directions); + + // lang.setObject() thing is for back-compat, remove it in 2.0 + return lang.setObject("dojox.mvc.sync", lang.mixin(sync, {equals: equals}, directions)); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/package.json b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/package.json new file mode 100644 index 00000000..e81cbda0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/package.json @@ -0,0 +1,27 @@ +{ + "name": "dojox", + "version":"1.10.4", + "directories": { + "lib": "." + }, + "main": "main", + "dependencies": { + "dojo":"1.10.4", + "dijit":"1.10.4" + }, + "description": "Dojo eXtensions, a rollup of many useful sub-projects and varying states of maturity – from very stable and robust, to alpha and experimental. See individual projects contain README files for details.", + "licenses": [ + { + "type": "AFLv2.1", + "url": "http://trac.dojotoolkit.org/browser/dojox/trunk/LICENSE#L43" + }, + { + "type": "BSD", + "url": "http://trac.dojotoolkit.org/browser/dojox/trunk/LICENSE#L13" + } + ], + "bugs": "http://bugs.dojotoolkit.org/", + "keywords": ["JavaScript", "Dojo", "Toolkit", "DojoX"], + "homepage": "http://dojotoolkit.org/", + "dojoBuild": "dojox.profile.js" +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rails.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rails.js new file mode 100644 index 00000000..b63ba02e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rails.js @@ -0,0 +1,107 @@ +//>>built +define("dojox/rails",["dijit","dojo","dojox","dojo/require!dojo/NodeList-traverse"],function(_1,_2,_3){ +_2.provide("dojox.rails"); +_2.require("dojo.NodeList-traverse"); +_3.rails.live=function(_4,_5,fn){ +if(_2.isIE&&_5.match(/^(on)?submit$/i)){ +_3.rails.live(_4,"click",function(_6){ +var _7=_6.target,_8=_7.tagName.toLowerCase(); +if((_8=="input"||_8=="button")&&_2.attr(_7,"type").toLowerCase()=="submit"){ +var _9=_2.query(_7).closest("form"); +if(_9.length){ +var h=_2.connect(_9[0],"submit",function(_a){ +_2.disconnect(h); +fn.call(_a.target,_a); +}); +} +} +}); +}else{ +_2.connect(_2.body(),_5,function(_b){ +var nl=_2.query(_b.target).closest(_4); +if(nl.length){ +fn.call(nl[0],_b); +} +}); +} +}; +_2.ready((function(d,dr,dg){ +return function(){ +var q=d.query,_c=dr.live,_d=q("meta[name=csrf-token]").attr("content"),_e=q("meta[name=csrf-param]").attr("content"); +var _f=function(url,_10){ +var _11="
    "+""+""+"
    "; +return _2.place(_11,_2.body()); +}; +var _12=function(_13){ +d.forEach(_13,function(_14){ +if(!d.attr(_14,"disabled")){ +var _15=_14.tagName.toLowerCase()=="input"?"value":"innerHTML"; +var _16=d.attr(_14,"data-disable-with"); +var _17=d.attr(_14,_15); +d.attr(_14,"disabled",true); +d.attr(_14,"data-original-value",_17); +d.attr(_14,_15,_16); +} +}); +}; +var _18={"text":"text","json":"application/json","json-comment-optional":"text","json-comment-filtered":"text","javascript":"application/javascript","xml":"text/xml"}; +var _19=function(evt){ +var el=evt.target,tag=el.tagName.toLowerCase(); +var _1a=tag.toLowerCase()=="form"?d.formToObject(el):{},_1b=d.attr(el,"data-type")||"javascript",_1c=(d.attr(el,"method")||d.attr(el,"data-method")||"get").toLowerCase(),url=d.attr(el,"action")||d.attr(el,"href"); +if(tag!="form"&&_1c!="get"){ +el=_f(url,_1c); +_1c="POST"; +} +evt.preventDefault(); +d.publish("ajax:before",[el]); +var _1d=d.xhr(_1c,{url:url,headers:{"Accept":_18[_1b]},content:_1a,handleAs:_1b,load:function(_1e,_1f){ +d.publish("ajax:success",[el,_1e,_1f]); +},error:function(_20,_21){ +d.publish("ajax:failure",[el,_20,_21]); +},handle:function(_22,_23){ +d.publish("ajax:complete",[el,_22,_23]); +}}); +d.publish("ajax:after",[el]); +}; +var _24=function(el){ +q("*[data-disable-with][disabled]",el).forEach(function(_25){ +var _26=_25.tagName.toLowerCase()=="input"?"value":"innerHTML"; +var _27=d.attr(_25,"data-original-value"); +d.attr(_25,"disabled",false); +d.attr(_25,"data-original-value",null); +d.attr(_25,_26,_27); +}); +}; +var _28=function(evt){ +var el=evt.target,_29=_f(el.href,_2.attr(el,"data-method")); +evt.preventDefault(); +_29.submit(); +}; +var _2a=function(evt){ +var el=evt.target,_2b=q("*[data-disable-with]",el); +if(_2b.length){ +_12(_2b); +} +if(d.attr(el,"data-remote")){ +evt.preventDefault(); +_19(evt); +} +}; +var _2c=function(evt){ +var _2d=dg.confirm(d.attr(evt.target,"data-confirm")); +if(!_2d){ +evt.preventDefault(); +}else{ +if(d.attr(evt.target,"data-remote")){ +_19(evt); +} +} +}; +_c("*[data-confirm]","click",_2c); +d.subscribe("ajax:complete",_24); +_c("a[data-remote]:not([data-confirm])","click",_19); +_c("a[data-method]:not([data-remote])","click",_28); +_c("form","submit",_2a); +}; +})(_2,_3.rails,_2.global)); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rails.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rails.js.uncompressed.js new file mode 100644 index 00000000..f97fdbda --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rails.js.uncompressed.js @@ -0,0 +1,147 @@ +// wrapped by build app +define("dojox/rails", ["dijit","dojo","dojox","dojo/require!dojo/NodeList-traverse"], function(dijit,dojo,dojox){ +dojo.provide("dojox.rails"); +dojo.require("dojo.NodeList-traverse"); + +dojox.rails.live = function(selector, evtName, fn){ + if (dojo.isIE && evtName.match(/^(on)?submit$/i)){ + dojox.rails.live(selector, "click", function(evt){ + var target = evt.target, tag = target.tagName.toLowerCase(); + if ((tag == "input" || tag == "button") && dojo.attr(target, "type").toLowerCase() == "submit"){ + var form = dojo.query(target).closest("form"); + if (form.length){ + var h = dojo.connect(form[0], "submit", function(evt){ + dojo.disconnect(h); + fn.call(evt.target, evt); + }); + } + } + }); + }else{ + dojo.connect(dojo.body(), evtName, function(evt){ + var nl = dojo.query(evt.target).closest(selector); + if (nl.length){ + fn.call(nl[0], evt); + } + }); + } +}; + +dojo.ready((function(d, dr, dg){ + return function() { + var q = d.query, live = dr.live, + csrfToken = q("meta[name=csrf-token]").attr("content"), + csrfParam = q("meta[name=csrf-param]").attr("content"); + + var createFormForLink = function(url, method){ + var form = '
    ' + + '' + + '' + + '
    '; + return dojo.place(form, dojo.body()); + }; + + var disable = function(elements){ + d.forEach(elements, function(node){ + if (!d.attr(node, "disabled")){ + var attr = node.tagName.toLowerCase() == "input" ? "value" : "innerHTML"; + var message = d.attr(node, "data-disable-with"); + var originalValue = d.attr(node, attr); + d.attr(node, "disabled", true); + d.attr(node, "data-original-value", originalValue); + d.attr(node, attr, message); + } + }); + }; + + var typeMap = { + "text": "text", + "json": "application/json", + "json-comment-optional": "text", + "json-comment-filtered": "text", + "javascript": "application/javascript", + "xml": "text/xml" + }; + + var handleRemote = function(evt){ + var el = evt.target, tag = el.tagName.toLowerCase(); + var content = tag.toLowerCase() == "form" ? d.formToObject(el) : {}, + type = d.attr(el, "data-type") || "javascript", + method = (d.attr(el, "method") || d.attr(el, "data-method") || "get").toLowerCase(), + url = d.attr(el, "action") || d.attr(el, "href"); + + if (tag != "form" && method != "get"){ + el = createFormForLink(url, method); + method = "POST"; + } + evt.preventDefault(); + + + // ajax:loading, ajax:loaded, and ajax:interactive are not supported + d.publish("ajax:before", [el]); + var deferred = d.xhr(method, { + url: url, + headers: { "Accept": typeMap[type] }, + content: content, + handleAs: type, + load: function(response, ioArgs) {d.publish("ajax:success", [el, response, ioArgs]);}, + error: function(response, ioArgs) {d.publish("ajax:failure", [el, response, ioArgs]);}, + handle: function(response, ioArgs) {d.publish("ajax:complete", [el, response, ioArgs]);} + }); + d.publish("ajax:after", [el]); + }; + + var handleEnable = function(el){ + q("*[data-disable-with][disabled]", el).forEach(function(node){ + var attr = node.tagName.toLowerCase() == "input" ? "value" : "innerHTML"; + var value = d.attr(node, "data-original-value"); + d.attr(node, "disabled", false); + d.attr(node, "data-original-value", null); + d.attr(node, attr, value); + }); + }; + + var handleDataMethod = function(evt){ + var el = evt.target, form = createFormForLink(el.href, dojo.attr(el, "data-method")); + evt.preventDefault(); + form.submit(); + }; + + var handleFormSubmit = function(evt){ + var el = evt.target, elements = q("*[data-disable-with]", el); + if (elements.length){ disable(elements); } + if (d.attr(el, "data-remote")){ + evt.preventDefault(); + handleRemote(evt); + } + }; + + var handleConfirm = function(evt){ + var proceed = dg.confirm(d.attr(evt.target, "data-confirm")); + if (!proceed){ + evt.preventDefault(); + }else if (d.attr(evt.target, "data-remote")){ + handleRemote(evt); + } + }; + + // Register data-{action} elements. Order is important since the return values + // from previously called functions in the connect chain influence whether + // or not the next function in the chain is called. + + // Register data-confirm elements + live("*[data-confirm]", "click", handleConfirm); + + // data-disable-with only applies to forms + d.subscribe("ajax:complete", handleEnable); + + // Register data-remote elements + live("a[data-remote]:not([data-confirm])", "click", handleRemote); + live("a[data-method]:not([data-remote])", "click", handleDataMethod); + + // Handle form submits + live("form", "submit", handleFormSubmit); + }; +})(dojo, dojox.rails, dojo.global)); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rails/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rails/README new file mode 100644 index 00000000..44c8a323 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rails/README @@ -0,0 +1,40 @@ +------------------------------------------------------------------------------- +Project Name: dojox.rails +------------------------------------------------------------------------------- +Version 0.1 +Release date: 03/23/2010 +------------------------------------------------------------------------------- +Project state: + experimental +------------------------------------------------------------------------------- +Credits: + Bob Remeika (bob.remeika@gmail.com) + ttilley (This code is based a lot on what he contributed). + +------------------------------------------------------------------------------- +Project description + +This is a dojo plugin for Rails 3.x UJS support + +------------------------------------------------------------------------------- +Dependencies: + dojo base +------------------------------------------------------------------------------- +Documentation + Apparently none + +------------------------------------------------------------------------------- +Installation instructions + +Grab the following from the Dojo SVN Repository: +http://svn.dojotoolkit.org/src/dojox/trunk/rails.js + +Install into the following directory structure: +/dojox/rails.js + +...which should be at the same level as your Dojo checkout. + +then dojo.require("dojox.rails") in your application to load it. + +------------------------------------------------------------------------------- + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/resources/README.template b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/resources/README.template new file mode 100644 index 00000000..6073c81f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/resources/README.template @@ -0,0 +1,42 @@ +------------------------------------------------------------------------------- +Project Name +------------------------------------------------------------------------------- +Version X.XXX +Release date: MM/DD/YYYY +------------------------------------------------------------------------------- +Project state: +[Object1]: experimental | alpha | beta | production +[Object2]: experimental | alpha | beta | production +------------------------------------------------------------------------------- +[ ] l18n support? +[ ] a11y support? +------------------------------------------------------------------------------- +Credits +[Object1]: Author one (author contact info) +[Object2]: Author two (author contact info) +------------------------------------------------------------------------------- +Project description + +Describe the point of the project here. +------------------------------------------------------------------------------- +Dependencies: + +List any dependencies here. +------------------------------------------------------------------------------- +Documentation + +Any notes about documentation--such as a link to a page in the Book of Dojo, +documentation state, etc.--should go here. +------------------------------------------------------------------------------- +Installation instructions + +Use this to explain in detail what a person needs to do in order to use this +project. Include URLs for grabbing source, URLs for any dependencies, etc. +Also be sure to include any additional information, such as where to place +CSS files, images, other media, etc. The goal is that someone reading this +file can follow your instructions and be using this project within minutes. +------------------------------------------------------------------------------- +Additional Notes + +Anything else you think is of interest (for example, object hierarchy) should +be placed here. diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/resources/explore.php b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/resources/explore.php new file mode 100644 index 00000000..06448320 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/resources/explore.php @@ -0,0 +1,149 @@ + + + + + + + + + + Dojo Toolkit - DojoX Demos and Tests by Project + + + + + + + +

    DojoX test files overview

    + + + + + + + about"; + } + if($project['tests'] || $project['demos']){ + print ""; + + if($project['tests']){ + printLinks($project['tests']); + } + if($project['demos']){ + printLinks($project['demos']); + } + + } + + } + // printLinks("./tree","Dijit Tree Tests"); + + ?> + +
    TestTundraNihiloSoria
    Normala11yrtla11y + rtlNormala11yrtla11y + rtlNormala11yrtla11y + rtl
    dojox.". $project['name'] . " ".$note."
    + +

    * 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.

    + + + $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 + "" . + + "" . $base . "" . + + // standard / tundra: + "basic" . + "a11y" . + "rtl" . + "both" . + + // nihilo + "nihilo" . + "a11y" . + "rtl" . + "combo" . + + // soria + "soria" . + "a11y" . + "rtl" . + "combo" . + + ""; + } + } +} + +?> diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/robot/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/robot/README new file mode 100644 index 00000000..46ad3533 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/robot/README @@ -0,0 +1,59 @@ +------------------------------------------------------------------------------- +dojox.robot.recorder +------------------------------------------------------------------------------- +Version 0.1 +Release date: 2008-07-30 +------------------------------------------------------------------------------- +Project state: experimental +------------------------------------------------------------------------------- +Project authors + Mark Hays +------------------------------------------------------------------------------- +Project description + +Writing automated test cases takes time, and DOH is no exception. You have to +look up element ids, invent dojo.queries for elements with no id, +figure out exactly how many pixels to move the mouse . . . the list goes on. + +This recorder module enables DOH test case writers to create complete DOH test +scripts directly from their actions and input on a Web page. Simply drop the +generated code into your test page, set a pass condition, and the test will +repeat your actions. +------------------------------------------------------------------------------- +Dependencies: + +dojo +------------------------------------------------------------------------------- +Documentation + +See installation instructions below to prepare a test page for recording. + +To record a test, click in an area of the document with no dojo.stopEvents +and press CTRL-ALT-ENTER in the main window. You will get a verification alert +when you successfully start the recorder. Then you can interact with the Web +page and the recorder will monitor your actions. It's usually good to record one +test per widget instance per type of interaction (keyboard vs mouse for instance) +you are testing. + +After you finish interacting with the Web page, click out of any dojo.stopEvents +and press CTRL-ALT-ENTER again. You will see a box containing the generated source +code for your recording. Copy this into a dojo.addOnLoad on the same page to register +the test with DOH. Replace the /*Your condition here*/ text with a JS condition that +indicates that the test passed. Again, having multiple small tests will help you +keep the condition small. Add a doh.run() call after you register all of your tests +to make them execute when you load the page. +------------------------------------------------------------------------------- +Installation instructions + +To ready the recorder for a particular page, add this line to your dojo.requires: +dojo.require("dojox.robot.recorder"); + +You can safely remove this line after you are finished recording your tests. +------------------------------------------------------------------------------- +Additional Notes + +Known limitations: +- Content in an iframe might not report events to the recorder. +- keyDown/keyUp events are supported by DOH, but not by the recorder. + If you hold a key down, it will generate lots of keyPress events instead. + Simply change these to one keyDown call yourself. diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/robot/recorder.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/robot/recorder.js new file mode 100644 index 00000000..778b9cd3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/robot/recorder.js @@ -0,0 +1,322 @@ +//>>built +define("dojox/robot/recorder",["dijit","dojo","dojox"],function(_1,_2,_3){ +_2.provide("dojox.robot.recorder"); +_2.experimental("dojox.robot.recorder"); +(function(){ +var _4=1000; +var _5=500; +var _6=10000; +var _7=[]; +var _8=0; +var _9=null; +var _a=null; +var _b=function(){ +alert("Started recording."); +_7=[]; +_9=new Date(); +_a=new Date(); +}; +var _c=function(_d,_e){ +if(_9==null||_d=="doh.robot.keyPress"&&_e[0]==_2.keys.ENTER&&eval("("+_e[2]+")").ctrl&&eval("("+_e[2]+")").alt){ +return; +} +var dt=Math.max(Math.min(Math.round((new Date()).getTime()-_a.getTime()),_6),1); +if(_d=="doh.robot.mouseMove"){ +_e[2]=dt; +}else{ +_e[1]=dt; +} +_7.push({name:_d,args:_e}); +_a=new Date(); +}; +var _f=function(){ +var c=_7; +if(c[0].name=="doh.robot.keyPress"&&(c[0].args[0]==_2.keys.ENTER||c[0].args[0]==77)){ +c.splice(0,1); +} +for(var i=c.length-1;(i>=c.length-2)&&(i>=0);i--){ +if(c[i].name=="doh.robot.keyPress"&&c[i].args[0]==_2.keys.ALT||c[i].args[0]==_2.keys.CTRL){ +c.splice(i,1); +} +} +for(i=0;i= c.length-2) && (i>=0); i-- ){ + if(c[i].name == "doh.robot.keyPress" + && c[i].args[0]==dojo.keys.ALT || c[i].args[0]==dojo.keys.CTRL){ + c.splice(i,1); + } + } + // ITERATIVE OPTIMIZATIONS + for(i = 0; i>built +define("dojox/rpc/Client",["dojo","dojox"],function(_1,_2){ +_1.getObject("rpc.Client",true,_2); +_1._defaultXhr=_1.xhr; +_1.xhr=function(_3,_4){ +var _5=_4.headers=_4.headers||{}; +_5["Client-Id"]=_2.rpc.Client.clientId; +_5["Seq-Id"]=_2._reqSeqId=(_2._reqSeqId||0)+1; +return _1._defaultXhr.apply(_1,arguments); +}; +_2.rpc.Client.clientId=(Math.random()+"").substring(2,14)+(new Date().getTime()+"").substring(8,13); +return _2.rpc.Client; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Client.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Client.js.uncompressed.js new file mode 100644 index 00000000..8703a133 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Client.js.uncompressed.js @@ -0,0 +1,28 @@ +define("dojox/rpc/Client", ["dojo", "dojox"], function(dojo, dojox) { + + dojo.getObject("rpc.Client", true, dojox); + + // Provide extra headers for robust client and server communication + + dojo._defaultXhr = dojo.xhr; + dojo.xhr = function(method,args){ + var headers = args.headers = args.headers || {}; + // set the client id, this can be used by servers to maintain state information with the + // a specific client. Many servers rely on sessions for this, but sessions are shared + // between tabs/windows, so this is not appropriate for application state, it + // really only useful for storing user authentication + headers["Client-Id"] = dojox.rpc.Client.clientId; + // set the sequence id. HTTP is non-deterministic, message can arrive at the server + // out of order. In complex Ajax applications, it may be more to ensure that messages + // can be properly sequenced deterministically. This applies a sequency id to each + // XHR request so that the server can order them. + headers["Seq-Id"] = dojox._reqSeqId = (dojox._reqSeqId||0)+1; + return dojo._defaultXhr.apply(dojo,arguments); + } + + // initiate the client id to a good random number + dojox.rpc.Client.clientId = (Math.random() + '').substring(2,14) + (new Date().getTime() + '').substring(8,13); + + return dojox.rpc.Client; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRPC.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRPC.js new file mode 100644 index 00000000..e775d000 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRPC.js @@ -0,0 +1,28 @@ +//>>built +define("dojox/rpc/JsonRPC",["dojo","dojox","dojox/rpc/Service","dojo/errors/RequestError"],function(_1,_2,_3,_4){ +function _5(_6){ +return {serialize:function(_7,_8,_9,_a){ +var d={id:this._requestId++,method:_8.name,params:_9}; +if(_6){ +d.jsonrpc=_6; +} +return {data:_1.toJson(d),handleAs:"json",contentType:"application/json",transport:"POST"}; +},deserialize:function(_b){ +if("Error"==_b.name||_b instanceof _4){ +_b=_1.fromJson(_b.responseText); +} +if(_b.error){ +var e=new Error(_b.error.message||_b.error); +e._rpcErrorObject=_b.error; +return e; +} +return _b.result; +}}; +}; +_2.rpc.envelopeRegistry.register("JSON-RPC-1.0",function(_c){ +return _c=="JSON-RPC-1.0"; +},_1.mixin({namedParams:false},_5())); +_2.rpc.envelopeRegistry.register("JSON-RPC-2.0",function(_d){ +return _d=="JSON-RPC-2.0"; +},_1.mixin({namedParams:true},_5("2.0"))); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRPC.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRPC.js.uncompressed.js new file mode 100644 index 00000000..b308b9f7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRPC.js.uncompressed.js @@ -0,0 +1,56 @@ +define("dojox/rpc/JsonRPC", ["dojo", "dojox", "dojox/rpc/Service", "dojo/errors/RequestError"], function(dojo, dojox, Service, RequestError) { + + function jsonRpcEnvelope(version){ + return { + serialize: function(smd, method, data, options){ + //not converted to json it self. This will be done, if + //appropriate, at the transport level + + var d = { + id: this._requestId++, + method: method.name, + params: data + }; + if(version){ + d.jsonrpc = version; + } + return { + data: dojo.toJson(d), + handleAs:'json', + contentType: 'application/json', + transport:"POST" + }; + }, + + deserialize: function(obj){ + if ('Error' == obj.name // old xhr + || obj instanceof RequestError // new xhr + ){ + obj = dojo.fromJson(obj.responseText); + } + if(obj.error) { + var e = new Error(obj.error.message || obj.error); + e._rpcErrorObject = obj.error; + return e; + } + return obj.result; + } + }; + } + dojox.rpc.envelopeRegistry.register( + "JSON-RPC-1.0", + function(str){ + return str == "JSON-RPC-1.0"; + }, + dojo.mixin({namedParams:false}, jsonRpcEnvelope()) // 1.0 will only work with ordered params + ); + + dojox.rpc.envelopeRegistry.register( + "JSON-RPC-2.0", + function(str){ + return str == "JSON-RPC-2.0"; + }, + dojo.mixin({namedParams:true }, jsonRpcEnvelope("2.0")) // 2.0 supports named params + ); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRest.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRest.js new file mode 100644 index 00000000..a93b9c76 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRest.js @@ -0,0 +1,338 @@ +//>>built +define("dojox/rpc/JsonRest",["dojo","dojox","dojox/json/ref","dojox/rpc/Rest"],function(_1,_2){ +var _3=[]; +var _4=_2.rpc.Rest; +var jr; +function _5(_6,_7,_8,_9){ +var _a=_7.ioArgs&&_7.ioArgs.xhr&&_7.ioArgs.xhr.getResponseHeader("Last-Modified"); +if(_a&&_4._timeStamps){ +_4._timeStamps[_9]=_a; +} +var _b=_6._schema&&_6._schema.hrefProperty; +if(_b){ +_2.json.ref.refAttribute=_b; +} +_8=_8&&_2.json.ref.resolveJson(_8,{defaultId:_9,index:_4._index,timeStamps:_a&&_4._timeStamps,time:_a,idPrefix:_6._store.allowNoTrailingSlash?_6.servicePath+"/":_6.servicePath.replace(/[^\/]*$/,""),idAttribute:jr.getIdAttribute(_6),schemas:jr.schemas,loader:jr._loader,idAsRef:_6.idAsRef,assignAbsoluteIds:true}); +_2.json.ref.refAttribute="$ref"; +return _8; +}; +jr=_2.rpc.JsonRest={serviceClass:_2.rpc.Rest,conflictDateHeader:"If-Unmodified-Since",commit:function(_c){ +_c=_c||{}; +var _d=[]; +var _e={}; +var _f=[]; +for(var i=0;i<_3.length;i++){ +var _10=_3[i]; +var _11=_10.object; +var old=_10.old; +var _12=false; +if(!(_c.service&&(_11||old)&&(_11||old).__id.indexOf(_c.service.servicePath))&&_10.save){ +delete _11.__isDirty; +if(_11){ +if(old){ +var _13; +if((_13=_11.__id.match(/(.*)#.*/))){ +_11=_4._index[_13[1]]; +} +if(!(_11.__id in _e)){ +_e[_11.__id]=_11; +if(_c.incrementalUpdates&&!_13){ +var _14=(typeof _c.incrementalUpdates=="function"?_c.incrementalUpdates:function(){ +_14={}; +for(var j in _11){ +if(_11.hasOwnProperty(j)){ +if(_11[j]!==old[j]){ +_14[j]=_11[j]; +} +}else{ +if(old.hasOwnProperty(j)){ +return null; +} +} +} +return _14; +})(_11,old); +} +if(_14){ +_d.push({method:"post",target:_11,content:_14}); +}else{ +_d.push({method:"put",target:_11,content:_11}); +} +} +}else{ +var _15=jr.getServiceAndId(_11.__id).service; +var _16=jr.getIdAttribute(_15); +if((_16 in _11)&&!_c.alwaysPostNewItems){ +_d.push({method:"put",target:_11,content:_11}); +}else{ +_d.push({method:"post",target:{__id:_15.servicePath},content:_11}); +} +} +}else{ +if(old){ +_d.push({method:"delete",target:old}); +} +} +_f.push(_10); +_3.splice(i--,1); +} +} +_1.connect(_c,"onError",function(){ +if(_c.revertOnError!==false){ +var _17=_3; +_3=_f; +var _18=0; +jr.revert(); +_3=_17; +}else{ +_1.forEach(_f,function(obj){ +jr.changing(obj.object,!obj.object); +}); +} +}); +jr.sendToServer(_d,_c); +return _d; +},sendToServer:function(_19,_1a){ +var _1b; +var _1c=_1.xhr; +var _1d=_19.length; +var i,_1e; +var _1f; +var _20=this.conflictDateHeader; +_1.xhr=function(_21,_22){ +_22.headers=_22.headers||{}; +_22.headers["Transaction"]=_19.length-1==i?"commit":"open"; +if(_20&&_1f){ +_22.headers[_20]=_1f; +} +if(_1e){ +_22.headers["Content-ID"]="<"+_1e+">"; +} +return _1c.apply(_1,arguments); +}; +for(i=0;i<_19.length;i++){ +var _23=_19[i]; +_2.rpc.JsonRest._contentId=_23.content&&_23.content.__id; +var _24=_23.method=="post"; +_1f=_23.method=="put"&&_4._timeStamps[_23.content.__id]; +if(_1f){ +_4._timeStamps[_23.content.__id]=(new Date())+""; +} +_1e=_24&&_2.rpc.JsonRest._contentId; +var _25=jr.getServiceAndId(_23.target.__id); +var _26=_25.service; +var dfd=_23.deferred=_26[_23.method](_25.id.replace(/#/,""),_2.json.ref.toJson(_23.content,false,_26.servicePath,true)); +(function(_27,dfd,_28){ +dfd.addCallback(function(_29){ +try{ +var _2a=dfd.ioArgs.xhr&&dfd.ioArgs.xhr.getResponseHeader("Location"); +if(_2a){ +var _2b=_2a.match(/(^\w+:\/\/)/)&&_2a.indexOf(_28.servicePath); +_2a=_2b>0?_2a.substring(_2b):(_28.servicePath+_2a).replace(/^(.*\/)?(\w+:\/\/)|[^\/\.]+\/\.\.\/|^.*\/(\/)/,"$2$3"); +_27.__id=_2a; +_4._index[_2a]=_27; +} +_29=_5(_28,dfd,_29,_27&&_27.__id); +} +catch(e){ +} +if(!(--_1d)){ +if(_1a.onComplete){ +_1a.onComplete.call(_1a.scope,_19); +} +} +return _29; +}); +})(_23.content,dfd,_26); +dfd.addErrback(function(_2c){ +_1d=-1; +_1a.onError.call(_1a.scope,_2c); +}); +} +_1.xhr=_1c; +},getDirtyObjects:function(){ +return _3; +},revert:function(_2d){ +for(var i=_3.length;i>0;){ +i--; +var _2e=_3[i]; +var _2f=_2e.object; +var old=_2e.old; +var _30=_2.data._getStoreForItem(_2f||old); +if(!(_2d&&(_2f||old)&&(_2f||old).__id.indexOf(_2d.servicePath))){ +if(_2f&&old){ +for(var j in old){ +if(old.hasOwnProperty(j)&&_2f[j]!==old[j]){ +if(_30){ +_30.onSet(_2f,j,_2f[j],old[j]); +} +_2f[j]=old[j]; +} +} +for(j in _2f){ +if(!old.hasOwnProperty(j)){ +if(_30){ +_30.onSet(_2f,j,_2f[j]); +} +delete _2f[j]; +} +} +}else{ +if(!old){ +if(_30){ +_30.onDelete(_2f); +} +}else{ +if(_30){ +_30.onNew(old); +} +} +} +delete (_2f||old).__isDirty; +_3.splice(i,1); +} +} +},changing:function(_31,_32){ +if(!_31.__id){ +return; +} +_31.__isDirty=true; +for(var i=0;i<_3.length;i++){ +var _33=_3[i]; +if(_31==_33.object){ +if(_32){ +_33.object=false; +if(!this._saveNotNeeded){ +_33.save=true; +} +} +return; +} +} +var old=_31 instanceof Array?[]:{}; +for(i in _31){ +if(_31.hasOwnProperty(i)){ +old[i]=_31[i]; +} +} +_3.push({object:!_32&&_31,old:old,save:!this._saveNotNeeded}); +},deleteObject:function(_34){ +this.changing(_34,true); +},getConstructor:function(_35,_36){ +if(typeof _35=="string"){ +var _37=_35; +_35=new _2.rpc.Rest(_35,true); +this.registerService(_35,_37,_36); +} +if(_35._constructor){ +return _35._constructor; +} +_35._constructor=function(_38){ +var _39=this; +var _3a=arguments; +var _3b; +var _3c; +function _3d(_3e){ +if(_3e){ +_3d(_3e["extends"]); +_3b=_3e.properties; +for(var i in _3b){ +var _3f=_3b[i]; +if(_3f&&(typeof _3f=="object")&&("default" in _3f)){ +_39[i]=_3f["default"]; +} +} +} +if(_3e&&_3e.prototype&&_3e.prototype.initialize){ +_3c=true; +_3e.prototype.initialize.apply(_39,_3a); +} +}; +_3d(_35._schema); +if(!_3c&&_38&&typeof _38=="object"){ +_1.mixin(_39,_38); +} +var _40=jr.getIdAttribute(_35); +_4._index[this.__id=this.__clientId=_35.servicePath+(this[_40]||Math.random().toString(16).substring(2,14)+"@"+((_2.rpc.Client&&_2.rpc.Client.clientId)||"client"))]=this; +if(_2.json.schema&&_3b){ +_2.json.schema.mustBeValid(_2.json.schema.validate(this,_35._schema)); +} +_3.push({object:this,save:true}); +}; +return _1.mixin(_35._constructor,_35._schema,{load:_35}); +},fetch:function(_41){ +var _42=jr.getServiceAndId(_41); +return this.byId(_42.service,_42.id); +},getIdAttribute:function(_43){ +var _44=_43._schema; +var _45; +if(_44){ +if(!(_45=_44._idAttr)){ +for(var i in _44.properties){ +if(_44.properties[i].identity||(_44.properties[i].link=="self")){ +_44._idAttr=_45=i; +} +} +} +} +return _45||"id"; +},getServiceAndId:function(_46){ +var _47=""; +for(var _48 in jr.services){ +if((_46.substring(0,_48.length)==_48)&&(_48.length>=_47.length)){ +_47=_48; +} +} +if(_47){ +return {service:jr.services[_47],id:_46.substring(_47.length)}; +} +var _49=_46.match(/^(.*\/)([^\/]*)$/); +return {service:new jr.serviceClass(_49[1],true),id:_49[2]}; +},services:{},schemas:{},registerService:function(_4a,_4b,_4c){ +_4b=_4a.servicePath=_4b||_4a.servicePath; +_4a._schema=jr.schemas[_4b]=_4c||_4a._schema||{}; +jr.services[_4b]=_4a; +},byId:function(_4d,id){ +var _4e,_4f=_4._index[(_4d.servicePath||"")+id]; +if(_4f&&!_4f._loadObject){ +_4e=new _1.Deferred(); +_4e.callback(_4f); +return _4e; +} +return this.query(_4d,id); +},query:function(_50,id,_51){ +var _52=_50(id,_51); +_52.addCallback(function(_53){ +if(_53.nodeType&&_53.cloneNode){ +return _53; +} +return _5(_50,_52,_53,typeof id!="string"||(_51&&(_51.start||_51.count))?undefined:id); +}); +return _52; +},_loader:function(_54){ +var _55=jr.getServiceAndId(this.__id); +var _56=this; +jr.query(_55.service,_55.id).addBoth(function(_57){ +if(_57==_56){ +delete _57.$ref; +delete _57._loadObject; +}else{ +_56._loadObject=function(_58){ +_58(_57); +}; +} +_54(_57); +}); +},isDirty:function(_59,_5a){ +if(!_59){ +if(_5a){ +return _1.some(_3,function(_5b){ +return _2.data._getStoreForItem(_5b.object||_5b.old)==_5a; +}); +} +return !!_3.length; +} +return _59.__isDirty; +}}; +return _2.rpc.JsonRest; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRest.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRest.js.uncompressed.js new file mode 100644 index 00000000..f8dbfa47 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/JsonRest.js.uncompressed.js @@ -0,0 +1,458 @@ +define("dojox/rpc/JsonRest", ["dojo", "dojox", "dojox/json/ref", "dojox/rpc/Rest"], function(dojo, dojox) { + var dirtyObjects = []; + var Rest = dojox.rpc.Rest; + var jr; + function resolveJson(service, deferred, value, defaultId){ + var timeStamp = deferred.ioArgs && deferred.ioArgs.xhr && deferred.ioArgs.xhr.getResponseHeader("Last-Modified"); + if(timeStamp && Rest._timeStamps){ + Rest._timeStamps[defaultId] = timeStamp; + } + var hrefProperty = service._schema && service._schema.hrefProperty; + if(hrefProperty){ + dojox.json.ref.refAttribute = hrefProperty; + } + value = value && dojox.json.ref.resolveJson(value, { + defaultId: defaultId, + index: Rest._index, + timeStamps: timeStamp && Rest._timeStamps, + time: timeStamp, + idPrefix: service._store.allowNoTrailingSlash ? service.servicePath + '/' : service.servicePath.replace(/[^\/]*$/,''), + idAttribute: jr.getIdAttribute(service), + schemas: jr.schemas, + loader: jr._loader, + idAsRef: service.idAsRef, + assignAbsoluteIds: true + }); + dojox.json.ref.refAttribute = "$ref"; + return value; + } + jr = dojox.rpc.JsonRest={ + serviceClass: dojox.rpc.Rest, + conflictDateHeader: "If-Unmodified-Since", + commit: function(kwArgs){ + // summary: + // Saves the dirty data using REST Ajax methods + + kwArgs = kwArgs || {}; + var actions = []; + var alreadyRecorded = {}; + var savingObjects = []; + for(var i = 0; i < dirtyObjects.length; i++){ + var dirty = dirtyObjects[i]; + var object = dirty.object; + var old = dirty.old; + var append = false; + if(!(kwArgs.service && (object || old) && + (object || old).__id.indexOf(kwArgs.service.servicePath)) && dirty.save){ + delete object.__isDirty; + if(object){ + if(old){ + // changed object + var pathParts; + if((pathParts = object.__id.match(/(.*)#.*/))){ // it is a path reference + // this means it is a sub object, we must go to the parent object and save it + object = Rest._index[pathParts[1]]; + } + if(!(object.__id in alreadyRecorded)){// if it has already been saved, we don't want to repeat it + // record that we are saving + alreadyRecorded[object.__id] = object; + if(kwArgs.incrementalUpdates + && !pathParts){ // I haven't figured out how we would do incremental updates on sub-objects yet + // make an incremental update using a POST + var incremental = (typeof kwArgs.incrementalUpdates == 'function' ? + kwArgs.incrementalUpdates : function(){ + incremental = {}; + for(var j in object){ + if(object.hasOwnProperty(j)){ + if(object[j] !== old[j]){ + incremental[j] = object[j]; + } + }else if(old.hasOwnProperty(j)){ + // we can't use incremental updates to remove properties + return null; + } + } + return incremental; + })(object, old); + } + + if(incremental){ + actions.push({method:"post",target:object, content: incremental}); + } + else{ + actions.push({method:"put",target:object,content:object}); + } + } + }else{ + // new object + var service = jr.getServiceAndId(object.__id).service; + var idAttribute = jr.getIdAttribute(service); + if((idAttribute in object) && !kwArgs.alwaysPostNewItems){ + // if the id attribute is specified, then we should know the location + actions.push({method:"put",target:object, content:object}); + }else{ + actions.push({method:"post",target:{__id:service.servicePath}, + content:object}); + } + } + }else if(old){ + // deleted object + actions.push({method:"delete",target:old}); + }//else{ this would happen if an object is created and then deleted, don't do anything + savingObjects.push(dirty); + dirtyObjects.splice(i--,1); + } + } + dojo.connect(kwArgs,"onError",function(){ + if(kwArgs.revertOnError !== false){ + var postCommitDirtyObjects = dirtyObjects; + dirtyObjects = savingObjects; + var numDirty = 0; // make sure this doesn't do anything if it is called again + jr.revert(); // revert if there was an error + dirtyObjects = postCommitDirtyObjects; + } + else{ + dojo.forEach(savingObjects, function(obj) { + jr.changing(obj.object, !obj.object); + }); + } + }); + jr.sendToServer(actions, kwArgs); + return actions; + }, + sendToServer: function(actions, kwArgs){ + var xhrSendId; + var plainXhr = dojo.xhr; + var left = actions.length;// this is how many changes are remaining to be received from the server + var i, contentLocation; + var timeStamp; + var conflictDateHeader = this.conflictDateHeader; + // add headers for extra information + dojo.xhr = function(method,args){ + // keep the transaction open as we send requests + args.headers = args.headers || {}; + // the last one should commit the transaction + args.headers['Transaction'] = actions.length - 1 == i ? "commit" : "open"; + if(conflictDateHeader && timeStamp){ + args.headers[conflictDateHeader] = timeStamp; + } + if(contentLocation){ + args.headers['Content-ID'] = '<' + contentLocation + '>'; + } + return plainXhr.apply(dojo,arguments); + }; + for(i =0; i < actions.length;i++){ // iterate through the actions to execute + var action = actions[i]; + dojox.rpc.JsonRest._contentId = action.content && action.content.__id; // this is used by OfflineRest + var isPost = action.method == 'post'; + timeStamp = action.method == 'put' && Rest._timeStamps[action.content.__id]; + if(timeStamp){ + // update it now + Rest._timeStamps[action.content.__id] = (new Date()) + ''; + } + // send the content location to the server + contentLocation = isPost && dojox.rpc.JsonRest._contentId; + var serviceAndId = jr.getServiceAndId(action.target.__id); + var service = serviceAndId.service; + var dfd = action.deferred = service[action.method]( + serviceAndId.id.replace(/#/,''), // if we are using references, we need eliminate # + dojox.json.ref.toJson(action.content, false, service.servicePath, true) + ); + (function(object, dfd, service){ + dfd.addCallback(function(value){ + try{ + // Implements id assignment per the HTTP specification + var newId = dfd.ioArgs.xhr && dfd.ioArgs.xhr.getResponseHeader("Location"); + //TODO: match URLs if the servicePath is relative... + if(newId){ + // if the path starts in the middle of an absolute URL for Location, we will use the just the path part + var startIndex = newId.match(/(^\w+:\/\/)/) && newId.indexOf(service.servicePath); + newId = startIndex > 0 ? newId.substring(startIndex) : (service.servicePath + newId). + // now do simple relative URL resolution in case of a relative URL. + replace(/^(.*\/)?(\w+:\/\/)|[^\/\.]+\/\.\.\/|^.*\/(\/)/,'$2$3'); + object.__id = newId; + Rest._index[newId] = object; + } + value = resolveJson(service, dfd, value, object && object.__id); + }catch(e){} + if(!(--left)){ + if(kwArgs.onComplete){ + kwArgs.onComplete.call(kwArgs.scope, actions); + } + } + return value; + }); + })(action.content, dfd, service); + + dfd.addErrback(function(value){ + + // on an error we want to revert, first we want to separate any changes that were made since the commit + left = -1; // first make sure that success isn't called + kwArgs.onError.call(kwArgs.scope, value); + }); + } + // revert back to the normal XHR handler + dojo.xhr = plainXhr; + + }, + getDirtyObjects: function(){ + return dirtyObjects; + }, + revert: function(service){ + // summary: + // Reverts all the changes made to JSON/REST data + for(var i = dirtyObjects.length; i > 0;){ + i--; + var dirty = dirtyObjects[i]; + var object = dirty.object; + var old = dirty.old; + var store = dojox.data._getStoreForItem(object || old); + + if(!(service && (object || old) && + (object || old).__id.indexOf(service.servicePath))){ + // if we are in the specified store or if this is a global revert + if(object && old){ + // changed + for(var j in old){ + if(old.hasOwnProperty(j) && object[j] !== old[j]){ + if(store){ + store.onSet(object, j, object[j], old[j]); + } + object[j] = old[j]; + } + } + for(j in object){ + if(!old.hasOwnProperty(j)){ + if(store){ + store.onSet(object, j, object[j]); + } + delete object[j]; + } + } + }else if(!old){ + // was an addition, remove it + if(store){ + store.onDelete(object); + } + }else{ + // was a deletion, we will add it back + if(store){ + store.onNew(old); + } + } + delete (object || old).__isDirty; + dirtyObjects.splice(i, 1); + } + } + }, + changing: function(object,_deleting){ + // summary: + // adds an object to the list of dirty objects. This object + // contains a reference to the object itself as well as a + // cloned and trimmed version of old object for use with + // revert. + if(!object.__id){ + return; + } + object.__isDirty = true; + //if an object is already in the list of dirty objects, don't add it again + //or it will overwrite the premodification data set. + for(var i=0; i= serviceName.length)){ + serviceName = service; + } + } + if (serviceName){ + return {service: jr.services[serviceName], id:absoluteId.substring(serviceName.length)}; + } + var parts = absoluteId.match(/^(.*\/)([^\/]*)$/); + return {service: new jr.serviceClass(parts[1], true), id:parts[2]}; + }, + services:{}, + schemas:{}, + registerService: function(/*Function*/ service, /*String*/ servicePath, /*Object?*/ schema){ + // summary: + // Registers a service for as a JsonRest service, mapping it to a path and schema + // service: + // This is the service to register + // servicePath: + // This is the path that is used for all the ids for the objects returned by service + // schema: + // This is a JSON Schema object to associate with objects returned by this service + servicePath = service.servicePath = servicePath || service.servicePath; + service._schema = jr.schemas[servicePath] = schema || service._schema || {}; + jr.services[servicePath] = service; + }, + byId: function(service, id){ + // if caching is allowed, we look in the cache for the result + var deferred, result = Rest._index[(service.servicePath || '') + id]; + if(result && !result._loadObject){// cache hit + deferred = new dojo.Deferred(); + deferred.callback(result); + return deferred; + } + return this.query(service, id); + }, + query: function(service, id, args){ + var deferred = service(id, args); + + deferred.addCallback(function(result){ + if(result.nodeType && result.cloneNode){ + // return immediately if it is an XML document + return result; + } + return resolveJson(service, deferred, result, typeof id != 'string' || (args && (args.start || args.count)) ? undefined: id); + }); + return deferred; + }, + _loader: function(callback){ + // load a lazy object + var serviceAndId = jr.getServiceAndId(this.__id); + var self = this; + jr.query(serviceAndId.service, serviceAndId.id).addBoth(function(result){ + // if they are the same this means an object was loaded, otherwise it + // might be a primitive that was loaded or maybe an error + if(result == self){ + // we can clear the flag, so it is a loaded object + delete result.$ref; + delete result._loadObject; + }else{ + // it is probably a primitive value, we can't change the identity of an object to + // the loaded value, so we will keep it lazy, but define the lazy loader to always + // return the loaded value + self._loadObject = function(callback){ + callback(result); + }; + } + callback(result); + }); + }, + isDirty: function(item, store){ + // summary: + // returns true if the item is marked as dirty or true if there are any dirty items + if(!item){ + if(store){ + return dojo.some(dirtyObjects, function(dirty){ + return dojox.data._getStoreForItem(dirty.object || dirty.old) == store; + }); + } + return !!dirtyObjects.length; + } + return item.__isDirty; + } + + }; + + return dojox.rpc.JsonRest; +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/OfflineRest.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/OfflineRest.js new file mode 100644 index 00000000..aed9aae6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/OfflineRest.js @@ -0,0 +1,191 @@ +//>>built +define("dojox/rpc/OfflineRest",["dojo","dojox","dojox/data/ClientFilter","dojox/rpc/Rest","dojox/storage"],function(_1,_2){ +var _3=_2.rpc.Rest; +var _4="dojox_rpc_OfflineRest"; +var _5; +var _6=_3._index; +_2.storage.manager.addOnLoad(function(){ +_5=_2.storage.manager.available; +for(var i in _6){ +_7(_6[i],i); +} +}); +var _8; +function _9(_a){ +return _a.replace(/[^0-9A-Za-z_]/g,"_"); +}; +function _7(_b,id){ +if(_5&&!_8&&(id||(_b&&_b.__id))){ +_2.storage.put(_9(id||_b.__id),typeof _b=="object"?_2.json.ref.toJson(_b):_b,function(){ +},_4); +} +}; +function _c(_d){ +return _d instanceof Error&&(_d.status==503||_d.status>12000||!_d.status); +}; +function _e(){ +if(_5){ +var _f=_2.storage.get("dirty",_4); +if(_f){ +for(var _10 in _f){ +_11(_10,_f); +} +} +} +}; +var _12; +function _13(){ +_12.sendChanges(); +_12.downloadChanges(); +}; +var _14=setInterval(_13,15000); +_1.connect(document,"ononline",_13); +_12=_2.rpc.OfflineRest={turnOffAutoSync:function(){ +clearInterval(_14); +},sync:_13,sendChanges:_e,downloadChanges:function(){ +},addStore:function(_15,_16){ +_12.stores.push(_15); +_15.fetch({queryOptions:{cache:true},query:_16,onComplete:function(_17,_18){ +_15._localBaseResults=_17; +_15._localBaseFetch=_18; +}}); +}}; +_12.stores=[]; +var _19=_3._get; +_3._get=function(_1a,id){ +try{ +_e(); +if(window.navigator&&navigator.onLine===false){ +throw new Error(); +} +var dfd=_19(_1a,id); +} +catch(e){ +dfd=new _1.Deferred(); +dfd.errback(e); +} +var _1b=_2.rpc._sync; +dfd.addCallback(function(_1c){ +_7(_1c,_1a._getRequest(id).url); +return _1c; +}); +dfd.addErrback(function(_1d){ +if(_5){ +if(_c(_1d)){ +var _1e={}; +var _1f=function(id,_20){ +if(_1e[id]){ +return _20; +} +var _21=_1.fromJson(_2.storage.get(_9(id),_4))||_20; +_1e[id]=_21; +for(var i in _21){ +var val=_21[i]; +id=val&&val.$ref; +if(id){ +if(id.substring&&id.substring(0,4)=="cid:"){ +id=id.substring(4); +} +_21[i]=_1f(id,val); +} +} +if(_21 instanceof Array){ +for(i=0;i<_21.length;i++){ +if(_21[i]===undefined){ +_21.splice(i--,1); +} +} +} +return _21; +}; +_8=true; +var _22=_1f(_1a._getRequest(id).url); +if(!_22){ +return _1d; +} +_8=false; +return _22; +}else{ +return _1d; +} +}else{ +if(_1b){ +return new Error("Storage manager not loaded, can not continue"); +} +dfd=new _1.Deferred(); +dfd.addCallback(arguments.callee); +_2.storage.manager.addOnLoad(function(){ +dfd.callback(); +}); +return dfd; +} +}); +return dfd; +}; +function _23(_24,_25,_26,_27,_28){ +if(_24=="delete"){ +_2.storage.remove(_9(_25),_4); +}else{ +_2.storage.put(_9(_26),_27,function(){ +},_4); +} +var _29=_28&&_28._store; +if(_29){ +_29.updateResultSet(_29._localBaseResults,_29._localBaseFetch); +_2.storage.put(_9(_28._getRequest(_29._localBaseFetch.query).url),_2.json.ref.toJson(_29._localBaseResults),function(){ +},_4); +} +}; +_1.addOnLoad(function(){ +_1.connect(_2.data,"restListener",function(_2a){ +var _2b=_2a.channel; +var _2c=_2a.event.toLowerCase(); +var _2d=_2.rpc.JsonRest&&_2.rpc.JsonRest.getServiceAndId(_2b).service; +_23(_2c,_2b,_2c=="post"?_2b+_2a.result.id:_2b,_1.toJson(_2a.result),_2d); +}); +}); +var _2e=_3._change; +_3._change=function(_2f,_30,id,_31){ +if(!_5){ +return _2e.apply(this,arguments); +} +var _32=_30._getRequest(id).url; +_23(_2f,_32,_2.rpc.JsonRest._contentId,_31,_30); +var _33=_2.storage.get("dirty",_4)||{}; +if(_2f=="put"||_2f=="delete"){ +var _34=_32; +}else{ +_34=0; +for(var i in _33){ +if(!isNaN(parseInt(i))){ +_34=i; +} +} +_34++; +} +_33[_34]={method:_2f,id:_32,content:_31}; +return _11(_34,_33); +}; +function _11(_35,_36){ +var _37=_36[_35]; +var _38=_2.rpc.JsonRest.getServiceAndId(_37.id); +var _39=_2e(_37.method,_38.service,_38.id,_37.content); +_36[_35]=_37; +_2.storage.put("dirty",_36,function(){ +},_4); +_39.addBoth(function(_3a){ +if(_c(_3a)){ +return null; +} +var _3b=_2.storage.get("dirty",_4)||{}; +delete _3b[_35]; +_2.storage.put("dirty",_3b,function(){ +},_4); +return _3a; +}); +return _39; +}; +_1.connect(_6,"onLoad",_7); +_1.connect(_6,"onUpdate",_7); +return _12; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/OfflineRest.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/OfflineRest.js.uncompressed.js new file mode 100644 index 00000000..58c93ca4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/OfflineRest.js.uncompressed.js @@ -0,0 +1,258 @@ +define("dojox/rpc/OfflineRest", ["dojo", "dojox", "dojox/data/ClientFilter", "dojox/rpc/Rest", "dojox/storage"], function(dojo, dojox) { + + var Rest = dojox.rpc.Rest; + var namespace = "dojox_rpc_OfflineRest"; + var loaded; + var index = Rest._index; + dojox.storage.manager.addOnLoad(function(){ + // now that we are loaded we need to save everything in the index + loaded = dojox.storage.manager.available; + for(var i in index){ + saveObject(index[i], i); + } + }); + var dontSave; + function getStorageKey(key){ + // returns a key that is safe to use in storage + return key.replace(/[^0-9A-Za-z_]/g,'_'); + } + function saveObject(object,id){ + // save the object into local storage + + if(loaded && !dontSave && (id || (object && object.__id))){ + dojox.storage.put( + getStorageKey(id||object.__id), + typeof object=='object'?dojox.json.ref.toJson(object):object, // makeshift technique to determine if the object is json object or not + function(){}, + namespace); + } + } + function isNetworkError(error){ + // determine if the error was a network error and should be saved offline + // or if it was a server error and not a result of offline-ness + return error instanceof Error && (error.status == 503 || error.status > 12000 || !error.status); // TODO: Make the right error determination + } + function sendChanges(){ + // periodical try to save our dirty data + if(loaded){ + var dirty = dojox.storage.get("dirty",namespace); + if(dirty){ + for (var dirtyId in dirty){ + commitDirty(dirtyId,dirty); + } + } + } + } + var OfflineRest; + function sync(){ + OfflineRest.sendChanges(); + OfflineRest.downloadChanges(); + } + var syncId = setInterval(sync,15000); + dojo.connect(document, "ononline", sync); + OfflineRest = dojox.rpc.OfflineRest = { + // summary: + // Makes the REST service be able to store changes in local + // storage so it can be used offline automatically. + + turnOffAutoSync: function(){ + clearInterval(syncId); + }, + sync: sync, + sendChanges: sendChanges, + downloadChanges: function(){ + + }, + addStore: function(/*data-store*/store,/*query?*/baseQuery){ + // summary: + // Adds a store to the monitored store for local storage + // store: + // Store to add + // baseQuery: + // This is the base query to should be used to load the items for + // the store. Generally you want to load all the items that should be + // available when offline. + OfflineRest.stores.push(store); + store.fetch({queryOptions:{cache:true},query:baseQuery,onComplete:function(results,args){ + store._localBaseResults = results; + store._localBaseFetch = args; + }}); + + } + }; + OfflineRest.stores = []; + var defaultGet = Rest._get; + Rest._get = function(service, id){ + // We specifically do NOT want the paging information to be used by the default handler, + // this is because online apps want to minimize the data transfer, + // but an offline app wants the opposite, as much data as possible transferred to + // the client side + try{ + // if we are reloading the application with local dirty data in an online environment + // we want to make sure we save the changes first, so that we get up-to-date + // information from the server + sendChanges(); + if(window.navigator && navigator.onLine===false){ + // we force an error if we are offline in firefox, otherwise it will silently load it from the cache + throw new Error(); + } + var dfd = defaultGet(service, id); + }catch(e){ + dfd = new dojo.Deferred(); + dfd.errback(e); + } + var sync = dojox.rpc._sync; + dfd.addCallback(function(result){ + saveObject(result, service._getRequest(id).url); + return result; + }); + dfd.addErrback(function(error){ + if(loaded){ + // if the storage is loaded, we can go ahead and get the object out of storage + if(isNetworkError(error)){ + var loadedObjects = {}; + // network error, load from local storage + var byId = function(id,backup){ + if(loadedObjects[id]){ + return backup; + } + var result = dojo.fromJson(dojox.storage.get(getStorageKey(id),namespace)) || backup; + + loadedObjects[id] = result; + for(var i in result){ + var val = result[i]; // resolve references if we can + id = val && val.$ref; + if (id){ + if(id.substring && id.substring(0,4) == "cid:"){ + // strip the cid scheme, we should be able to resolve it locally + id = id.substring(4); + } + result[i] = byId(id,val); + } + } + if (result instanceof Array){ + //remove any deleted items + for (i = 0;i>built +define("dojox/rpc/ProxiedPath",["dojo","dojox","dojox/rpc/Service"],function(_1,_2){ +_2.rpc.envelopeRegistry.register("PROXIED-PATH",function(_3){ +return _3=="PROXIED-PATH"; +},{serialize:function(_4,_5,_6){ +var i; +var _7=_2.rpc.getTarget(_4,_5); +if(_1.isArray(_6)){ +for(i=0;i<_6.length;i++){ +_7+="/"+(_6[i]==null?"":_6[i]); +} +}else{ +for(i in _6){ +_7+="/"+i+"/"+_6[i]; +} +} +return {data:"",target:(_5.proxyUrl||_4.proxyUrl)+"?url="+encodeURIComponent(_7)}; +},deserialize:function(_8){ +return _8; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/ProxiedPath.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/ProxiedPath.js.uncompressed.js new file mode 100644 index 00000000..2738cf27 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/ProxiedPath.js.uncompressed.js @@ -0,0 +1,28 @@ +define("dojox/rpc/ProxiedPath", ["dojo", "dojox", "dojox/rpc/Service"], function(dojo, dojox) { + +dojox.rpc.envelopeRegistry.register( + "PROXIED-PATH",function(str){return str == "PROXIED-PATH"},{ + serialize:function(smd, method, data){ + var i; + var target = dojox.rpc.getTarget(smd, method); + if(dojo.isArray(data)){ + for(i = 0; i < data.length;i++){ + target += '/' + (data[i] == null ? "" : data[i]); + } + }else{ + for(i in data){ + target += '/' + i + '/' + data[i]; + } + } + return { + data:'', + target: (method.proxyUrl || smd.proxyUrl) + "?url=" + encodeURIComponent(target) + }; + }, + deserialize:function(results){ + return results; + } + } +); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/README new file mode 100644 index 00000000..af380114 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/README @@ -0,0 +1,56 @@ +------------------------------------------------------------------------------- +DojoX RPC +------------------------------------------------------------------------------- +Version 1.0 +Release date: 07/01/2007 +------------------------------------------------------------------------------- +Project state: +yahoo.smd: production (but for old dojo.rpc, not the dojox.service.Rpc) +Service.js: beta - this will become dojo.rpc.Service eventually and replace + the existing rpc system +JsonRPC.js: beta - plugins for json-rpc for the rpc system +Rest.js: beta - plugin for REST style services for the rpc system +JsonRest.js: beta - A module for tracking and persisting changes to JSON objects +through REST. +OfflineRest.js: alpha - A module for storing REST changes locally as write- +back cache for offline and intermittent connection situations +ProxiedPath.js: beta - plugin for the PATH envelope to work with a simple PHP proxy +Client.js: alpha - A module for maintaining per page/tab client sessions and +deterministic message sequencing with a server. + +SMDLibrary contains smd files representing external services. + +------------------------------------------------------------------------------- +Project authors + Dustin Machi + Kris Zyp + Revin Guillen +------------------------------------------------------------------------------- +Project description + +Extra utilities for use with dojo.rpc as well as additional smd descriptions +for specific services. +------------------------------------------------------------------------------- +Dependencies: + +Dojo Core (package loader, dojo.rpc). +------------------------------------------------------------------------------- +Documentation + +See RPC documentation at http://dojotoolkit.org/ + +------------------------------------------------------------------------------- +Installation instructions + +Grab the following from the Dojo SVN Repository: +http://svn.dojotoolkit.org/var/src/dojo/dojox/trunk/rpc/* + +Install into the following directory structure: +/dojox/rpc/ + +...which should be at the same level as your Dojo checkout. + +The use of the actual utilities varies, but typically additional software +will be included with dojo.require() and smd files for services can be loaded +manually with an xhr request or can be provided by url to the service when created + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Rest.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Rest.js new file mode 100644 index 00000000..4ba72766 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Rest.js @@ -0,0 +1,83 @@ +//>>built +define("dojox/rpc/Rest",["dojo","dojox"],function(_1,_2){ +_1.getObject("rpc.Rest",true,_2); +if(_2.rpc&&_2.rpc.transportRegistry){ +_2.rpc.transportRegistry.register("REST",function(_3){ +return _3=="REST"; +},{getExecutor:function(_4,_5,_6){ +return new _2.rpc.Rest(_5.name,(_5.contentType||_6._smd.contentType||"").match(/json|javascript/),null,function(id,_7){ +var _8=_6._getRequest(_5,[id]); +_8.url=_8.target+(_8.data?"?"+_8.data:""); +if(_7&&(_7.start>=0||_7.count>=0)){ +_8.headers=_8.headers||{}; +_8.headers.Range="items="+(_7.start||"0")+"-"+(("count" in _7&&_7.count!=Infinity)?(_7.count+(_7.start||0)-1):""); +} +return _8; +}); +}}); +} +var _9; +function _a(_b,_c,_d,id){ +_b.addCallback(function(_e){ +if(_b.ioArgs.xhr&&_d){ +_d=_b.ioArgs.xhr.getResponseHeader("Content-Range"); +_b.fullLength=_d&&(_d=_d.match(/\/(.*)/))&&parseInt(_d[1]); +} +return _e; +}); +return _b; +}; +_9=_2.rpc.Rest=function(_f,_10,_11,_12){ +var _13; +_13=function(id,_14){ +return _9._get(_13,id,_14); +}; +_13.isJson=_10; +_13._schema=_11; +_13.cache={serialize:_10?((_2.json&&_2.json.ref)||_1).toJson:function(_15){ +return _15; +}}; +_13._getRequest=_12||function(id,_16){ +if(_1.isObject(id)){ +id=_1.objectToQuery(id); +id=id?"?"+id:""; +} +if(_16&&_16.sort&&!_16.queryStr){ +id+=(id?"&":"?")+"sort("; +for(var i=0;i<_16.sort.length;i++){ +var _17=_16.sort[i]; +id+=(i>0?",":"")+(_17.descending?"-":"+")+encodeURIComponent(_17.attribute); +} +id+=")"; +} +var _18={url:_f+(id==null?"":id),handleAs:_10?"json":"text",contentType:_10?"application/json":"text/plain",sync:_2.rpc._sync,headers:{Accept:_10?"application/json,application/javascript":"*/*"}}; +if(_16&&(_16.start>=0||_16.count>=0)){ +_18.headers.Range="items="+(_16.start||"0")+"-"+(("count" in _16&&_16.count!=Infinity)?(_16.count+(_16.start||0)-1):""); +} +_2.rpc._sync=false; +return _18; +}; +function _19(_1a){ +_13[_1a]=function(id,_1b){ +return _9._change(_1a,_13,id,_1b); +}; +}; +_19("put"); +_19("post"); +_19("delete"); +_13.servicePath=_f; +return _13; +}; +_9._index={}; +_9._timeStamps={}; +_9._change=function(_1c,_1d,id,_1e){ +var _1f=_1d._getRequest(id); +_1f[_1c+"Data"]=_1e; +return _a(_1.xhr(_1c.toUpperCase(),_1f,true),_1d); +}; +_9._get=function(_20,id,_21){ +_21=_21||{}; +return _a(_1.xhrGet(_20._getRequest(id,_21)),_20,(_21.start>=0||_21.count>=0),id); +}; +return _9; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Rest.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Rest.js.uncompressed.js new file mode 100644 index 00000000..21aa9bd8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Rest.js.uncompressed.js @@ -0,0 +1,144 @@ +define("dojox/rpc/Rest", ["dojo", "dojox"], function(dojo, dojox) { +// Note: This doesn't require dojox.rpc.Service, and if you want it you must require it +// yourself, and you must load it prior to dojox.rpc.Rest. + + dojo.getObject("rpc.Rest", true, dojox); + + if(dojox.rpc && dojox.rpc.transportRegistry){ + // register it as an RPC service if the registry is available + dojox.rpc.transportRegistry.register( + "REST", + function(str){return str == "REST";}, + { + getExecutor : function(func,method,svc){ + return new dojox.rpc.Rest( + method.name, + (method.contentType||svc._smd.contentType||"").match(/json|javascript/), // isJson + null, + function(id, args){ + var request = svc._getRequest(method,[id]); + request.url= request.target + (request.data ? '?'+ request.data : ''); + if(args && (args.start >= 0 || args.count >= 0)){ + request.headers = request.headers || {}; + request.headers.Range = "items=" + (args.start || '0') + '-' + + (("count" in args && args.count != Infinity) ? + (args.count + (args.start || 0) - 1) : ''); + } + return request; + } + ); + } + } + ); + } + var drr; + + function index(deferred, service, range, id){ + deferred.addCallback(function(result){ + if(deferred.ioArgs.xhr && range){ + // try to record the total number of items from the range header + range = deferred.ioArgs.xhr.getResponseHeader("Content-Range"); + deferred.fullLength = range && (range=range.match(/\/(.*)/)) && parseInt(range[1]); + } + return result; + }); + return deferred; + } + drr = dojox.rpc.Rest = function(/*String*/path, /*Boolean?*/isJson, /*Object?*/schema, /*Function?*/getRequest){ + // summary: + // This provides a HTTP REST service with full range REST verbs include PUT,POST, and DELETE. + // description: + // A normal GET query is done by using the service directly: + // | var restService = dojox.rpc.Rest("Project"); + // | restService("4"); + // This will do a GET for the URL "/Project/4". + // | restService.put("4","new content"); + // This will do a PUT to the URL "/Project/4" with the content of "new content". + // You can also use the SMD service to generate a REST service: + // | var services = dojox.rpc.Service({services: {myRestService: {transport: "REST",... + // | services.myRestService("parameters"); + // + // The modifying methods can be called as sub-methods of the rest service method like: + // | services.myRestService.put("parameters","data to put in resource"); + // | services.myRestService.post("parameters","data to post to the resource"); + // | services.myRestService['delete']("parameters"); + + var service; + // it should be in the form /Table/ + service = function(id, args){ + return drr._get(service, id, args); + }; + service.isJson = isJson; + service._schema = schema; + // cache: + // This is an object that provides indexing service + // This can be overriden to take advantage of more complex referencing/indexing + // schemes + service.cache = { + serialize: isJson ? ((dojox.json && dojox.json.ref) || dojo).toJson : function(result){ + return result; + } + }; + // the default XHR args creator: + service._getRequest = getRequest || function(id, args){ + if(dojo.isObject(id)){ + id = dojo.objectToQuery(id); + id = id ? "?" + id: ""; + } + if(args && args.sort && !args.queryStr){ + id += (id ? "&" : "?") + "sort(" + for(var i = 0; i 0 ? "," : "") + (sort.descending ? '-' : '+') + encodeURIComponent(sort.attribute); + } + id += ")"; + } + var request = { + url: path + (id == null ? "" : id), + handleAs: isJson ? 'json' : 'text', + contentType: isJson ? 'application/json' : 'text/plain', + sync: dojox.rpc._sync, + headers: { + Accept: isJson ? 'application/json,application/javascript' : '*/*' + } + }; + if(args && (args.start >= 0 || args.count >= 0)){ + request.headers.Range = "items=" + (args.start || '0') + '-' + + (("count" in args && args.count != Infinity) ? + (args.count + (args.start || 0) - 1) : ''); + } + dojox.rpc._sync = false; + return request; + }; + // each calls the event handler + function makeRest(name){ + service[name] = function(id,content){ + return drr._change(name,service,id,content); // the last parameter is to let the OfflineRest know where to store the item + }; + } + makeRest('put'); + makeRest('post'); + makeRest('delete'); + // record the REST services for later lookup + service.servicePath = path; + return service; + }; + + drr._index={};// the map of all indexed objects that have gone through REST processing + drr._timeStamps={}; + // these do the actual requests + drr._change = function(method,service,id,content){ + // this is called to actually do the put, post, and delete + var request = service._getRequest(id); + request[method+"Data"] = content; + return index(dojo.xhr(method.toUpperCase(),request,true),service); + }; + + drr._get= function(service,id, args){ + args = args || {}; + // this is called to actually do the get + return index(dojo.xhrGet(service._getRequest(id, args)), service, (args.start >= 0 || args.count >= 0), id); + }; + + return drr; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/dojo-api.smd b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/dojo-api.smd new file mode 100644 index 00000000..1b2db85d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/dojo-api.smd @@ -0,0 +1,30 @@ +{ + envelope: "URL", + transport: "JSONP", + callbackParamName: "callback", + services: { + get: { + target: "http://api.dojotoolkit.org/jsdoc/jsonp", + parameters: [ + { name: "name", type: "string", optional: false }, + { name: "exact", type: "boolean", optional: true }, + { name: "recursion", type: "boolean", optional: true }, + { name: "resource", type: "string", optional: true }, + { name: "project", type: "string", optional: true }, + { name: "version", type: "string", optional: true }, + { name: "attributes", type: "array", optional: true } + ] + }, + batch: { + target: "http://api.dojotoolkit.org/jsdoc/jsonp/batch", + parameters: [ + { name: "names", type: "array", optional: false }, + { name: "exact", type: "boolean", optional: true }, + { name: "recursion", type: "boolean", optional: true }, + { name: "project", type: "string", optional: true }, + { name: "version", type: "string", optional: true }, + { name: "attributes", type: "array", optional: false } + ] + } + } +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/friendfeed.smd b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/friendfeed.smd new file mode 100644 index 00000000..a18aa8e0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/friendfeed.smd @@ -0,0 +1,49 @@ +{ + "SMDVersion": "2.0", + "id": "http://friendfeed.com/api", + "description": "Friendfeed's API - documentation at http://code.google.com/p/friendfeed-api/wiki/ApiDocumentation", + + transport: "JSONP", + envelope: "URL", + + additionalParameters: true, + parameters: [ + { name: "format", optional: false, "default": "json" }, + { name: "service", optional: true }, + { name: "start", optional: true, type: "integer" }, + { name: "num", optional: true, type: "integer" } + ], + + services: { + users: { + target: "http://friendfeed.com/api/feed/user", + parameters: [ + { name: "nickname", type: "string", optional: false, "default": "" } + ] + }, + entry: { + target: "http://friendfeed.com/api/feed/entry", + parameters: [ + { name: "entry_id", type: "string", optional: false, "default": "" } + ] + }, + search: { + target: "http://friendfeed.com/api/feed/search", + parameters: [ + { name: "q", type: "string", optional: false, "default": "" } + ] + }, + url: { + target: "http://friendfeed.com/api/feed/url", + parameters: [ + { name: "url", type: "string", optional: false, "default": "" } + ] + }, + domain: { + target: "http://friendfeed.com/api/feed/domain", + parameters: [ + { name: "domain", type: "string", optional: false, "default":"" } + ] + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/geonames.smd b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/geonames.smd new file mode 100644 index 00000000..04f04db5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/geonames.smd @@ -0,0 +1,263 @@ +{ + + // JSON REST services provided by geonames.org + // adapted from: http://www.geonames.org/export/JSON-webservices.html + // http://creativecommons.org/licenses/by/3.0/ + // INCOMPLETE IMPLEMENTATION + + "SMDVersion":"2.0", + "id":"/geonames", + "transport":"JSONP", + "envelope":"URL", + "target": "http://ws.geonames.org/", + + "parameters" : [ + {name:"type", optional: false, "default":"JSON"} + ], + + "services":{ + getCountryInfo:{ + // Result : returns info about a country such as name, population, etc. + // If country parameter is not specified, that information is returned for + // every country + "target": "countryInfoJSON", + "parameters": [ + { name: "country", type:"STRING", optional: true }, + { name: "lang", type:"STRING"}, // default: "en" + { name: "maxRows", type:"INTEGER", optional: true } // default: 10 + ] + }, + + getCities:{ + // Result : returns a list of cities and placenames in the bounding box, + // ordered by relevancy (capital/population). Placenames close together + // are filterered out and only the larger name is included in the resulting list. + "target": "citiesJSON", + "parameters": [ + { name: "north", type:"FLOAT"}, + { name: "south", type:"FLOAT"}, + { name: "east", type:"FLOAT"}, + { name: "west", type:"FLOAT"}, + { name: "lang", type:"STRING"}, // default: "en" + { name: "maxRows", type:"INTEGER", optional: true } // deault: 10 + ] + }, + + "getQuakes":{ + // Result : returns a list of earthquakes, ordered by magnitude + "target" : "earthquakesJSON", + "parameters" : [ + // bounding box coords: + { name: "north", type:"FLOAT" }, + { name: "south", type:"FLOAT" }, + { name: "east", type:"FLOAT" }, + { name: "west", type:"FLOAT" }, + { name: "date", type:"STRING",optional: true }, // yyyy-MM-dd + { name: "minMagniture", type:"INTERGER",optional: true }, + { name: "maxRows", type:"INTEGER", optional: true } // deault: 10 + ] + }, + + "getWeather":{ + // Weather data is provided in the METAR (METeorological Aerodrome Report) format. + // Result : returns a list of weather stations with the most recent weather observation + "target" : "weatherJSON", + "parameters" : [ + { name: "north", type:"FLOAT" }, + { name: "south", type:"FLOAT" }, + { name: "east", type:"FLOAT" }, + { name: "west", type:"FLOAT" }, + { name: "maxRows", type:"INTEGER",optional:true } // deault: 10 + ] + }, + + "getWeatherByICAO":{ + // Result : returns the weather station and the most recent weather observation for the ICAO code + "target": "weatherIcaoJSON", + "parameters": [ + { name:"ICAO", type:"STRING" } + ] + }, + + "getWeatherByCoords":{ + // Result : returns a weather station with the most recent weather observation + "target": "findNearByWeatherJSON", + "parameters": [ + { name:"lat", type:"FLOAT" }, + { name:"lng", type:"FLOAT" } + ] + }, + + "getChildren":{ + // Returns the children for a given geonameId. The children are the + // administrative divisions within an other administrative division. + // Like the counties (ADM2) in a state (ADM1) or also the countries + // in a continent. + "target": "childrenJSON", + "parameters": [ + { name:"geonameId", type:"INTEGER" } + ] + }, + + "getHierarchy":{ + // Result : returns a list of GeoName records, ordered by hierarchy + // level. The top hierarchy (continent) is the first element in the list + "target": "hierarchyJSON", + "parameters": [ + { name:"geonameId", type:"INTEGER" } + ] + }, + + "getNeighbours":{ + // The neighbourhood for US cities. Data provided by Zillow under cc-by-sa license. + "target":"neighboursJSON", + "parameters": [ + { name:"geonameId", type:"INTEGER" } + //{ name:"lat", type:"FLOAT" }, + //{ name:"long", type:"FLOAT" } + ] + }, + + "getNeighbourhood":{ + // returns the neighbourhood for the given latitude/longitude + // Example http://ws.geonames.org/neighbourhood?lat=40.78343&lng=-73.96625 + "target":"neighbourhoodJSON", + "parameters":[ + { name:"lat", type:"FLOAT" }, + { name:"lng", type:"FLOAT" }, + { name:"radius", type:"FLOAT" } + ] + }, + + "getSiblings":{ + // Result : returns a list of GeoNames records that have the same + // administrative level and the same father + "target":"siblingsJSON", + "parameters": [ + { name:"geonameId", type:"INTEGER" } + ] + }, + + "getCountryCode":{ + // returns the iso country code for the given latitude/longitude + // With the parameter type=xml this service returns an xml document + // with iso country code and country name. The optional parameter + // lang can be used to specify the language the country name should + // be in. JSON output is produced with type=JSON + "target":"countryCode", + "parameters": [ + { name:"lat", type:"FLOAT" }, + { name:"lng", type:"FLOAT" }, + { name:"lang", type:"STRING",optional:true }, + { name:"radius", type:"FLOAT" } + ] + }, + + "getCountrySubdivision":{ + // returns the country and the administrative subdivison (state, province,...) for the given latitude/longitude + // Example http://ws.geonames.org/countrySubdivisionJSON?lat=47.03&lng=10.2 + "target":"countrySubdivisionJSON", + "parameters":[ + { name:"lat", type:"FLOAT" }, + { name:"long", type:"FLOAT" }, + { name:"radius", type:"FLOAT" } + ] + }, + + "getWikipediaBoundingBox":{ + // returns the wikipedia entries within the bounding box as xml document + // Example http://ws.geonames.org/wikipediaBoundingBoxJSON?north=44.1&south=-9.9&east=-22.4&west=55.2 + "target":"wikipediaBoundingBoxJSON", + "parameters":[ + { name: "north", type:"FLOAT" }, + { name: "south", type:"FLOAT" }, + { name: "east", type:"FLOAT" }, + { name: "west", type:"FLOAT" }, + { name: "lang", type:"STRING",optional:true }, // default: "en" + { name: "maxRows", type:"INTEGER",optional:true } // default: 10 + ] + }, + + "searchWikipedia":{ + // returns the wikipedia entries found for the searchterm as xml document + // Example http://ws.geonames.org/wikipediaSearchJSON?q=london&maxRows=10 + "target":"wikipediaSearchJSON", + "parameters":[ + { name: "q", type:"STRING" }, // place name? + { name: "title", type:"STRING" }, // optional + { name: "lang", type:"FLOAT",optional:true }, // de or en + { name: "maxRows", type:"INTEGER",optional:true } // default: 10 + ] + }, + + "getTimezone":{ + // the timezone at the lat/lng with gmt offset (1. January) and dst offset (1. July) + "target":"timezoneJSON", + "parameters":[ + { name:"lat", type:"FLOAT" }, + { name:"lng", type:"FLOAT" } + ] + }, + + "search":{ + // returns the names found for the searchterm as xml or json document, + // the search is using an AND operator + "target":"searchJSON", + "parameters":[ + // exhaustive list. see: http://www.geonames.org/export/geonames-search.html + { name:"q", type:"STRING" }, + { name:"name", type:"STRING" }, + { name:"name_equals", type:"STRING" }, + // optional: + { name:"maxRows", type:"INTEGER",optional:true }, // def: 100, max:1000 + { name:"startRow", type:"INTEGER",optional:true }, // def: 0 + { name:"country", type:"STRING",optional:true }, // iso-3166, def: all + /* name:"adminCode..." */ + { name:"featureClass", type:"STRING",optional:true}, // ? multi, enum(a,h,l,p,r,s,t,u,v) + { name:"featureCode", type:"STRING",optional:true}, + { name:"lang", type:"STRING",optional:true}, // iso-636 + { name:"type", type:"STRING",optional:true}, // xml | json | rdf, def: xml + { name:"style", type:"STRING",optional:true }, // SHORT,MEDIUM,LONG,FULL def: MEDIUM + { name:"isNamedRequired", type:"BOOLEAN", optional:true } + ] + }, + + "postalCodeLookup":{ + // returns a list of places for the given postalcode in JSON format + // Example http://ws.geonames.org/postalCodeLookupJSON?postalcode=6600&country=AT + "target":"postalCodeLookupJSON", + "parameters":[ + { name:"postalcode", type:"STRING" }, + { name:"country", type:"STRING",optional:true}, + { name:"maxRows", type:"INTEGER", optional:true }, // def: 20 + { name:"charset", type:"STRING",optional:true } // def: utf-8 + ] + }, + + "postalCodeSearch":{ + "target":"postalCodeSearchJSON", + "parameters":[ + { name:"postalcode", type:"STRING",optional:true}, // one or the other + { name:"placename", type:"STRING",optional:true }, // one or the other + { name:"country", type:"STRING",optional:true}, + { name:"style", type:"STRING",optional:true}, // def: MEDIUM + { name:"maxRows", type:"INTEGER",optional:true}, // def: 20 + { name:"charset", type:"STRING",optional:true} // def: utf-8 + ] + } + + // TODO: implement: + // findNearby, + // findNearbyPlaceName + // findNearbyPostalCodes, + // findNearbyStreets, + // findNearByWeather + // findNearByWikipedia + // findNeareastAddress + // findNearestInterestion + // get + // gtop30 + // srtm3 + + } // end services +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/google.smd b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/google.smd new file mode 100644 index 00000000..82af928f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/google.smd @@ -0,0 +1,129 @@ +{ + // Google Ajax API SMD as defined by: + // http://code.google.com/apis/ajaxsearch/documentation/reference.html + // PLEASE Read the Google Terms of Service: + // http://code.google.com/apis/ajaxsearch/terms.html + + "SMDVersion": "2.0", + "id": "http://ajax.googleapis.com/ajax/services/search/", + "description": "Google Ajax API", + + "transport": "JSONP", + "envelope": "URL", + "additionalParameters": true, + + "parameters": [ + // the most important param, the search query: + { "name": "q", optional: false, "default":"" }, + + // Google doesn't require, but appreciates, you using an API key + // see: http://code.google.com/apis/ajaxsearch/signup.html + // { "name": "key", optional: true, "default": "[enter your key]" }, + + // result size: large | small (8 or 4 per page) + { "name": "rsz", optional:true, "default": "small" }, + + // language selection: + { "name": "hl", optional:true, "default": "en" }, + + // starting offset + { "name": "start", optional:true, "default": 0 }, + + { "name": "alt", optional:false, "default": "json" }, + + // API version: only 1.0 supported + { "name": "v", optional:false, "default": "1.0" } + ], + + "services": { + + "webSearch": { + "target": "http://ajax.googleapis.com/ajax/services/search/web", + "parameters": [ + { "name": "cx", "type":"string", "optional":true }, // unique id + { "name": "cref", "type":"string", "optional":true }, // linked custom search engine + { "name": "safe", "type":"string", "optional":true }, // active | moderate | off + // lr: see: http://www.google.com/coop/docs/cse/resultsxml.html#languageCollections + { "name": "lr", "type":"string", "optional":true } // restrict to lang + ] + }, + + "localSearch": { + "target": "http://ajax.googleapis.com/ajax/services/search/local", + "parameters": [ + // comma separated lat,long value to use for center + { "name": "sll", "type": "string", "optional": true }, + { "name": "sspn", "type":"string", "optional": true } // bounding box? + ] + }, + + "videoSearch": { + "target": "http://ajax.googleapis.com/ajax/services/search/video", + "parameters": [ + // ordering, set "d" to order by date, "default": by relevance + { "name": "scoring", "type": "string", "optional": true } + ] + }, + + "blogSearch": { + "target": "http://ajax.googleapis.com/ajax/services/search/blogs", + "parameters": [ + // see videoSearch params + { "name": "scoring", "type": "string", "optional": true } + ] + }, + + "newsSearch": { + "target": "http://ajax.googleapis.com/ajax/services/search/news", + "parameters": [ + { "name": "scoring", "type": "string", "optional": true }, + // geo: scope search to location. supply city, state, country, or zipcode + // using geo makes "q" param optional + { "name": "geo", "type":"string", optional:true } + ] + }, + + "bookSearch": { + "target": "http://ajax.googleapis.com/ajax/services/search/books", + "parameters": [ + // set to "1" to only include full books + { "name":"as_brr", "optional": true, "type":"number" }, + // restrict search to user-defined library + { "name":"as_list", "optional": true, "type":"string" } + ] + }, + + "imageSearch": { + "target": "http://ajax.googleapis.com/ajax/services/search/images", + "parameters": [ + // safe: active | moderate | off + { "name": "safe", "type":"string", "optional":true }, + // limit image size: one of: icon, small|medium|large|xlarge, xxlarge, huge + { "name": "imgsz", "type":"string", "optional": true }, + // limit image color: one of: mono|gray|color + { "name": "imgc", "type":"string", "optional": true }, + // use "face" to limit to mugshots + { "name": "imgtype", "type":"string", "optional": true }, + // limit to file "type": jpg|png|gif|bmp + { "name": "as_filetype", "type": "string", "optional": true }, + // limit results to domain: + { "name": "as_sitesearch", "type": "string", "optional": true } + ] + }, + + "getFeed": { + "target": "http://ajax.googleapis.com/ajax/services/feed/load", + // pass a feed URL in the q parameter + "parameters": [] + }, + + "translate" : { + "target" : "http://ajax.googleapis.com/ajax/services/language/translate", + "parameters": [ + // A String like "en|es" (for english -> spanish) + { "name":"langpair", "type":"string", optional:false } + ] + } + + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/twitter.smd b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/twitter.smd new file mode 100644 index 00000000..1311e9ae --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/twitter.smd @@ -0,0 +1,35 @@ +{ + + "SMDVersion": "2.0", + "id": "http://apiwiki.twitter.com/w/page/22554756/Twitter-Search-API-Method:-search", + "description": "Twitter Search API", + + "transport": "JSONP", + "envelope": "URL", + "additionalParameters": true, + + "parameters": [ + // the most important param, the search query: + { "name": "q", optional: false, "default":"" }, + + + // result size: large | small (8 or 4 per page) + { "name": "rpp", optional:true, "default": 10 }, + + // language selection: + { "name": "lang", optional:true, "default": "en" }, + + // starting page + { "name": "page", optional:true, "default": 0 } + + ], + + "services": { + + "search": { + "target": "http://search.twitter.com/search.json", + "parameters": [ + ] + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/wikipedia.smd b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/wikipedia.smd new file mode 100644 index 00000000..d91b2c33 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/SMDLibrary/wikipedia.smd @@ -0,0 +1,49 @@ +{ + "SMDVersion": "2.0", + "id": "http://en.wikipedia.org/w/api.php", + "description": "Wikipedia API", + + transport: "JSONP", + envelope: "URL", + additionalParameters: true, + target: "http://en.wikipedia.org/w/api.php", + parameters: [ + { name: "format", optional: false, "default": "json" } + ], + + services: { + + /* + * This is a very very basic spec that just gives us a free-form API + * endpoint to talk to. See http://en.wikipedia.org/w/api.php for + * details on what parameters to supply and what sort of data you + * should expect to see. Note that returned JSON is often somewhat + * ... interesting ...: + * + * { + * "parse": { + * "text": { + * "*": " tag) + getTime: { + target: "http://developer.yahooapis.com/TimeService/V1/getTime", + parameters: [ + { name: "format", type: "string", optional: true, "default": "unix" } // can be "unix" for unix timestamp, "ms" for milliseconds + ] + }, + */ + + // + // VIDEO SEARCH + // + + // http://developer.yahoo.com/search/video/V1/videoSearch.html + videoSearch: { + target: "http://search.yahooapis.com/VideoSearchService/V1/videoSearch", + parameters: [ + { name: "query", type: "string", optional: false, "default": "" }, + { name: "type", type: "string", optional: true, "default": "any" }, // can be "all", "any", "phrase" + { name: "results", type: "integer", optional: true, "default": 10 }, // max 50 + { name: "start", type: "integer", optional: true, "default": 1 }, + { name: "format", type: "string", optional: true, "default": "any" }, // can be "any", "avi", "flash", "mpeg", "msmedia", "quicktime", "realmedia" + { name: "adult_ok", type: "boolean", optional: true, "default": null }, + { name: "site", type: "string", optional: true, "default": null } + ] + }, + + // + // WEB SEARCH + // + + // http://developer.yahoo.com/search/web/V1/webSearch.html + webSearch: { + target: "http://search.yahooapis.com/WebSearchService/V1/webSearch", + parameters: [ + { name: "query", type: "string", optional: false, "default": "" }, // must be less than 1kb + { name: "region", type: "string", optional: true, "default": "us" }, + { name: "type", type: "string", optional: true, "default": "any" }, // can be "all", "any", "phrase" + { name: "results", type: "integer", optional: true, "default": 10 }, // max 100 + { name: "start", type: "integer", optional: true, "default": 1 }, + { name: "format", type: "string", optional: true, "default": "any" }, // can be "any", "html", "msword", "pdf", "ppt", "rss", "txt", "xls" + { name: "adult_ok", type: "boolean", optional: true, "default": null }, + { name: "similar_ok", type: "boolean", optional: true, "default": null }, + { name: "language", type: "string", optional: true, "default": null }, + { name: "country", type: "string", optional: true, "default": null }, + { name: "site", type: "string", optional: true, "default": null }, + { name: "subscription", type: "string", optional: true, "default": null }, + { name: "license", type: "string", optional: true, "default": "any" } // can be "any", "cc_any", "cc_commercial", "cc_modifiable" + ] + }, + + // http://developer.yahoo.com/search/web/V1/spellingSuggestion.html + spellingSuggestion: { + target: "http://search.yahooapis.com/WebSearchService/V1/spellingSuggestion", + parameters: [ + { name: "query", type: "string", optional: false, "default": "" } + ] + }, + + // http://developer.yahoo.com/search/web/V1/relatedSuggestion.html + relatedSuggestion: { + target: "http://search.yahooapis.com/WebSearchService/V1/relatedSuggestion", + parameters: [ + { name: "query", type: "string", optional: false, "default": "" }, + { name: "results", type: "integer", optional: true, "default": 10 } // max 50 + ] + } + } +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Service.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Service.js new file mode 100644 index 00000000..0365400c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/rpc/Service.js @@ -0,0 +1,209 @@ +//>>built +define("dojox/rpc/Service",["dojo","dojox","dojo/AdapterRegistry","dojo/_base/url"],function(_1,_2){ +_1.declare("dojox.rpc.Service",null,{constructor:function(_3,_4){ +var _5; +var _6=this; +function _7(_8){ +_8._baseUrl=new _1._Url((_1.isBrowser?location.href:_1.config.baseUrl),_5||".")+""; +_6._smd=_8; +for(var _9 in _6._smd.services){ +var _a=_9.split("."); +var _b=_6; +for(var i=0;i<_a.length-1;i++){ +_b=_b[_a[i]]||(_b[_a[i]]={}); +} +_b[_a[_a.length-1]]=_6._generateService(_9,_6._smd.services[_9]); +} +}; +if(_3){ +if((_1.isString(_3))||(_3 instanceof _1._Url)){ +if(_3 instanceof _1._Url){ +_5=_3+""; +}else{ +_5=_3; +} +var _c=_1._getText(_5); +if(!_c){ +throw new Error("Unable to load SMD from "+_3); +}else{ +_7(_1.fromJson(_c)); +} +}else{ +_7(_3); +} +} +this._options=(_4?_4:{}); +this._requestId=0; +},_generateService:function(_d,_e){ +if(this[_e]){ +throw new Error("WARNING: "+_d+" already exists for service. Unable to generate function"); +} +_e.name=_d; +var _f=_1.hitch(this,"_executeMethod",_e); +var _10=_2.rpc.transportRegistry.match(_e.transport||this._smd.transport); +if(_10.getExecutor){ +_f=_10.getExecutor(_f,_e,this); +} +var _11=_e.returns||(_e._schema={}); +var _12="/"+_d+"/"; +_11._service=_f; +_f.servicePath=_12; +_f._schema=_11; +_f.id=_2.rpc.Service._nextId++; +return _f; +},_getRequest:function(_13,_14){ +var smd=this._smd; +var _15=_2.rpc.envelopeRegistry.match(_13.envelope||smd.envelope||"NONE"); +var _16=(_13.parameters||[]).concat(smd.parameters||[]); +if(_15.namedParams){ +if((_14.length==1)&&_1.isObject(_14[0])){ +_14=_14[0]; +}else{ +var _17={}; +for(var i=0;i<_13.parameters.length;i++){ +if(typeof _14[i]!="undefined"||!_13.parameters[i].optional){ +_17[_13.parameters[i].name]=_14[i]; +} +} +_14=_17; +} +if(_13.strictParameters||smd.strictParameters){ +for(i in _14){ +var _18=false; +for(var j=0;j<_16.length;j++){ +if(_16[j].name==i){ +_18=true; +} +} +if(!_18){ +delete _14[i]; +} +} +} +for(i=0;i<_16.length;i++){ +var _19=_16[i]; +if(!_19.optional&&_19.name&&!_14[_19.name]){ +if(_19["default"]){ +_14[_19.name]=_19["default"]; +}else{ +if(!(_19.name in _14)){ +throw new Error("Required parameter "+_19.name+" was omitted"); +} +} +} +} +}else{ +if(_16&&_16[0]&&_16[0].name&&(_14.length==1)&&_1.isObject(_14[0])){ +if(_15.namedParams===false){ +_14=_2.rpc.toOrdered(_16,_14); +}else{ +_14=_14[0]; +} +} +} +if(_1.isObject(this._options)){ +_14=_1.mixin(_14,this._options); +} +var _1a=_13._schema||_13.returns; +var _1b=_15.serialize.apply(this,[smd,_13,_14]); +_1b._envDef=_15; +var _1c=(_13.contentType||smd.contentType||_1b.contentType); +return _1.mixin(_1b,{sync:_2.rpc._sync,contentType:_1c,headers:_13.headers||smd.headers||_1b.headers||{},target:_1b.target||_2.rpc.getTarget(smd,_13),transport:_13.transport||smd.transport||_1b.transport,envelope:_13.envelope||smd.envelope||_1b.envelope,timeout:_13.timeout||smd.timeout,callbackParamName:_13.callbackParamName||smd.callbackParamName,rpcObjectParamName:_13.rpcObjectParamName||smd.rpcObjectParamName,schema:_1a,handleAs:_1b.handleAs||"auto",preventCache:_13.preventCache||smd.preventCache,frameDoc:this._options.frameDoc||undefined}); +},_executeMethod:function(_1d){ +var _1e=[]; +var i; +for(i=1;i>built +define("dojox/secure/DOM",["dijit","dojo","dojox","dojo/require!dojox/lang/observable"],function(_1,_2,_3){ +_2.provide("dojox.secure.DOM"); +_2.require("dojox.lang.observable"); +_3.secure.DOM=function(_4){ +function _5(_6){ +if(!_6){ +return _6; +} +var _7=_6; +do{ +if(_7==_4){ +return _8(_6); +} +}while((_7=_7.parentNode)); +return null; +}; +function _8(_9){ +if(_9){ +if(_9.nodeType){ +var _a=_b(_9); +if(_9.nodeType==1&&typeof _a.style=="function"){ +_a.style=_c(_9.style); +_a.ownerDocument=_d; +_a.childNodes={__get__:function(i){ +return _8(_9.childNodes[i]); +},length:0}; +} +return _a; +} +if(_9&&typeof _9=="object"){ +if(_9.__observable){ +return _9.__observable; +} +_a=_9 instanceof Array?[]:{}; +_9.__observable=_a; +for(var i in _9){ +if(i!="__observable"){ +_a[i]=_8(_9[i]); +} +} +_a.data__=_9; +return _a; +} +if(typeof _9=="function"){ +var _e=function(_f){ +if(typeof _f=="function"){ +return function(){ +for(var i=0;i>built +define("dojox/secure/capability",["dijit","dojo","dojox"],function(_1,_2,_3){ +_2.provide("dojox.secure.capability"); +_3.secure.badProps=/^__|^(apply|call|callee|caller|constructor|eval|prototype|this|unwatch|valueOf|watch)$|__$/; +_3.secure.capability={keywords:["break","case","catch","const","continue","debugger","default","delete","do","else","enum","false","finally","for","function","if","in","instanceof","new","null","yield","return","switch","throw","true","try","typeof","var","void","while"],validate:function(_4,_5,_6){ +var _7=this.keywords; +for(var i=0;i<_7.length;i++){ +_6[_7[i]]=true; +} +var _8="|this| keyword in object literal without a Class call"; +var _9=[]; +if(_4.match(/[\u200c-\u200f\u202a-\u202e\u206a-\u206f\uff00-\uffff]/)){ +throw new Error("Illegal unicode characters detected"); +} +if(_4.match(/\/\*@cc_on/)){ +throw new Error("Conditional compilation token is not allowed"); +} +_4=_4.replace(/\\["'\\\/bfnrtu]/g,"@").replace(/\/\/.*|\/\*[\w\W]*?\*\/|("[^"]*")|('[^']*')/g,function(t){ +return t.match(/^\/\/|^\/\*/)?" ":"0"; +}).replace(/\.\s*([a-z\$_A-Z][\w\$_]*)|([;,{])\s*([a-z\$_A-Z][\w\$_]*\s*):/g,function(t,_a,_b,_c){ +_a=_a||_c; +if(/^__|^(apply|call|callee|caller|constructor|eval|prototype|this|unwatch|valueOf|watch)$|__$/.test(_a)){ +throw new Error("Illegal property name "+_a); +} +return (_b&&(_b+"0:"))||"~"; +}); +_4.replace(/([^\[][\]\}]\s*=)|((\Wreturn|\S)\s*\[\s*\+?)|([^=!][=!]=[^=])/g,function(_d){ +if(!_d.match(/((\Wreturn|[=\&\|\:\?\,])\s*\[)|\[\s*\+$/)){ +throw new Error("Illegal operator "+_d.substring(1)); +} +}); +_4=_4.replace(new RegExp("("+_5.join("|")+")[\\s~]*\\(","g"),function(_e){ +return "new("; +}); +function _f(_10,_11){ +var _12={}; +_10.replace(/#\d+/g,function(b){ +var _13=_9[b.substring(1)]; +for(var i in _13){ +if(i==_8){ +throw i; +} +if(i=="this"&&_13[":method"]&&_13["this"]==1){ +i=_8; +} +if(i!=":method"){ +_12[i]=2; +} +} +}); +_10.replace(/(\W|^)([a-z_\$A-Z][\w_\$]*)/g,function(t,a,_14){ +if(_14.charAt(0)=="_"){ +throw new Error("Names may not start with _"); +} +_12[_14]=1; +}); +return _12; +}; +var _15,_16; +function _17(t,_18,a,b,_19,_1a){ +_1a.replace(/(^|,)0:\s*function#(\d+)/g,function(t,a,b){ +var _1b=_9[b]; +_1b[":method"]=1; +}); +_1a=_1a.replace(/(^|[^_\w\$])Class\s*\(\s*([_\w\$]+\s*,\s*)*#(\d+)/g,function(t,p,a,b){ +var _1c=_9[b]; +delete _1c[_8]; +return (p||"")+(a||"")+"#"+b; +}); +_16=_f(_1a,_18); +function _1d(t,a,b,_1e){ +_1e.replace(/,?([a-z\$A-Z][_\w\$]*)/g,function(t,_1f){ +if(_1f=="Class"){ +throw new Error("Class is reserved"); +} +delete _16[_1f]; +}); +}; +if(_18){ +_1d(t,a,a,_19); +} +_1a.replace(/(\W|^)(var) ([ \t,_\w\$]+)/g,_1d); +return (a||"")+(b||"")+"#"+(_9.push(_16)-1); +}; +do{ +_15=_4.replace(/((function|catch)(\s+[_\w\$]+)?\s*\(([^\)]*)\)\s*)?{([^{}]*)}/g,_17); +}while(_15!=_4&&(_4=_15)); +_17(0,0,0,0,0,_4); +for(i in _16){ +if(!(i in _6)){ +throw new Error("Illegal reference to "+i); +} +} +}}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/capability.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/capability.js.uncompressed.js new file mode 100644 index 00000000..30a333ff --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/capability.js.uncompressed.js @@ -0,0 +1,131 @@ +// wrapped by build app +define("dojox/secure/capability", ["dijit","dojo","dojox"], function(dijit,dojo,dojox){ +dojo.provide("dojox.secure.capability"); + +dojox.secure.badProps = /^__|^(apply|call|callee|caller|constructor|eval|prototype|this|unwatch|valueOf|watch)$|__$/; +dojox.secure.capability = { + keywords: ["break", "case", "catch", "const", "continue","debugger", "default", "delete", "do", + "else", "enum","false", "finally", "for", "function","if", "in", "instanceof", "new", + "null","yield","return", "switch", + "throw", "true", "try", "typeof", "var", "void", "while"], + validate : function(/*string*/script,/*Array*/safeLibraries,/*Object*/safeGlobals) { + // summary: + // pass in the text of a script. If it passes and it can be eval'ed, it should be safe. + // Note that this does not do full syntax checking, it relies on eval to reject invalid scripts. + // There are also known false rejections: + // + // - Nesting vars inside blocks will not declare the variable for the outer block + // - Named functions are not treated as declaration so they are generally not allowed unless the name is declared with a var. + // - Var declaration that involve multiple comma delimited variable assignments are not accepted + // script: + // the script to execute + // safeLibraries: + // The safe libraries that can be called (the functions can not be access/modified by the untrusted code, only called) + // safeGlobals: + // These globals can be freely interacted with by the untrusted code + + + var keywords = this.keywords; + for (var i = 0; i < keywords.length; i++) { + safeGlobals[keywords[i]]=true; + } + var badThis = "|this| keyword in object literal without a Class call"; + var blocks = []; // keeps track of the outer references from each inner block + if(script.match(/[\u200c-\u200f\u202a-\u202e\u206a-\u206f\uff00-\uffff]/)){ + throw new Error("Illegal unicode characters detected"); + } + if(script.match(/\/\*@cc_on/)){ + throw new Error("Conditional compilation token is not allowed"); + } + script = script.replace(/\\["'\\\/bfnrtu]/g, '@'). // borrows some tricks from json.js + // now clear line comments, block comments, regular expressions, and strings. + // By doing it all at once, the regular expression uses left to right parsing, and the most + // left token is read first. It is also more compact. + replace(/\/\/.*|\/\*[\w\W]*?\*\/|("[^"]*")|('[^']*')/g,function(t) { + return t.match(/^\/\/|^\/\*/) ? ' ' : '0'; // comments are replaced with a space, strings and regex are replaced with a single safe token (0) + }). + replace(/\.\s*([a-z\$_A-Z][\w\$_]*)|([;,{])\s*([a-z\$_A-Z][\w\$_]*\s*):/g,function(t,prop,prefix,key) { + // find all the dot property references, all the object literal keys, and labels + prop = prop || key; + if(/^__|^(apply|call|callee|caller|constructor|eval|prototype|this|unwatch|valueOf|watch)$|__$/.test(prop)){ + throw new Error("Illegal property name " + prop); + } + return (prefix && (prefix + "0:")) || '~'; // replace literal keys with 0: and replace properties with the innocuous ~ + }); + script.replace(/([^\[][\]\}]\s*=)|((\Wreturn|\S)\s*\[\s*\+?)|([^=!][=!]=[^=])/g,function(oper) {// check for illegal operator usages + if(!oper.match(/((\Wreturn|[=\&\|\:\?\,])\s*\[)|\[\s*\+$/)){ // the whitelist for [ operator for array initializer context or [+num] syntax + throw new Error("Illegal operator " + oper.substring(1)); + } + }); + script = script.replace(new RegExp("(" + safeLibraries.join("|") + ")[\\s~]*\\(","g"),function(call) { // find library calls and make them look safe + return "new("; // turn into a known safe call + }); + function findOuterRefs(block,func) { + var outerRefs = {}; + block.replace(/#\d+/g,function(b) { // graft in the outer references from the inner scopes + var refs = blocks[b.substring(1)]; + for (var i in refs) { + if(i == badThis) { + throw i; + } + if(i == 'this' && refs[':method'] && refs['this'] == 1) { + // if we are in an object literal the function may be a bindable method, this must only be in the local scope + i = badThis; + } + if(i != ':method'){ + outerRefs[i] = 2; // the reference is more than just local + } + } + }); + block.replace(/(\W|^)([a-z_\$A-Z][\w_\$]*)/g,function(t,a,identifier) { // find all the identifiers + if(identifier.charAt(0)=='_'){ + throw new Error("Names may not start with _"); + } + outerRefs[identifier] = 1; + }); + return outerRefs; + } + var newScript,outerRefs; + function parseBlock(t,func,a,b,params,block) { + block.replace(/(^|,)0:\s*function#(\d+)/g,function(t,a,b) { // find functions in object literals + // note that if named functions are allowed, it could be possible to have label: function name() {} which is a security breach + var refs = blocks[b]; + refs[':method'] = 1;//mark it as a method + }); + block = block.replace(/(^|[^_\w\$])Class\s*\(\s*([_\w\$]+\s*,\s*)*#(\d+)/g,function(t,p,a,b) { // find Class calls + var refs = blocks[b]; + delete refs[badThis]; + return (p||'') + (a||'') + "#" + b; + }); + outerRefs = findOuterRefs(block,func); // find the variables in this block + function parseVars(t,a,b,decl) { // find var decls + decl.replace(/,?([a-z\$A-Z][_\w\$]*)/g,function(t,identifier) { + if(identifier == 'Class'){ + throw new Error("Class is reserved"); + } + delete outerRefs[identifier]; // outer reference is safely referenced here + }); + } + + if(func) { + parseVars(t,a,a,params); // the parameters are declare variables + } + block.replace(/(\W|^)(var) ([ \t,_\w\$]+)/g,parseVars); // and vars declare variables + // FIXME: Give named functions #name syntax so they can be detected as vars in outer scopes (but be careful of nesting) + return (a || '') + (b || '') + "#" + (blocks.push(outerRefs)-1); // return a block reference so the outer block can fetch it + } + do { + // get all the blocks, starting with inside and moving out, capturing the parameters of functions and catchs as variables along the way + newScript = script.replace(/((function|catch)(\s+[_\w\$]+)?\s*\(([^\)]*)\)\s*)?{([^{}]*)}/g, parseBlock); + } + while(newScript != script && (script = newScript)); // keep going until we can't find anymore blocks + parseBlock(0,0,0,0,0,script); //findOuterRefs(script); // find the references in the outside scope + for (i in outerRefs) { + if(!(i in safeGlobals)) { + throw new Error("Illegal reference to " + i); + } + } + + } +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/fromJson.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/fromJson.js new file mode 100644 index 00000000..6ff50a37 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/fromJson.js @@ -0,0 +1,135 @@ +//>>built +define("dojox/secure/fromJson",["dijit","dojo","dojox"],function(_1,_2,_3){ +_2.provide("dojox.secure.fromJson"); +_3.secure.fromJson=typeof JSON!="undefined"?JSON.parse:(function(){ +var _4="(?:-?\\b(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?(?:[eE][+-]?[0-9]+)?\\b)"; +var _5="(?:[^\\0-\\x08\\x0a-\\x1f\"\\\\]"+"|\\\\(?:[\"/\\\\bfnrt]|u[0-9A-Fa-f]{4}))"; +var _6="(?:\""+_5+"*\")"; +var _7=new RegExp("(?:false|true|null|[\\{\\}\\[\\]]"+"|"+_4+"|"+_6+")","g"); +var _8=new RegExp("\\\\(?:([^u])|u(.{4}))","g"); +var _9={"\"":"\"","/":"/","\\":"\\","b":"\b","f":"\f","n":"\n","r":"\r","t":"\t"}; +function _a(_b,ch,_c){ +return ch?_9[ch]:String.fromCharCode(parseInt(_c,16)); +}; +var _d=new String(""); +var _e="\\"; +var _f={"{":Object,"[":Array}; +var hop=Object.hasOwnProperty; +return function(_10,_11){ +var _12=_10.match(_7); +var _13; +var tok=_12[0]; +var _14=false; +if("{"===tok){ +_13={}; +}else{ +if("["===tok){ +_13=[]; +}else{ +_13=[]; +_14=true; +} +} +var key; +var _15=[_13]; +for(var i=1-_14,n=_12.length;i=0;){ +delete _19[_1a[i]]; +} +} +} +return _11.call(_18,key,_19); +}; +_13=_17({"":_13},""); +} +return _13; +}; +})(); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/fromJson.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/fromJson.js.uncompressed.js new file mode 100644 index 00000000..98263a9a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/fromJson.js.uncompressed.js @@ -0,0 +1,242 @@ +// wrapped by build app +define("dojox/secure/fromJson", ["dijit","dojo","dojox"], function(dijit,dojo,dojox){ +dojo.provide("dojox.secure.fromJson"); + +// Used with permission from Mike Samuel of Google (has CCLA), from the json-sans-eval project: +// http://code.google.com/p/json-sans-eval/ +// Mike Samuel + + + +dojox.secure.fromJson = typeof JSON != "undefined" ? JSON.parse : +// summary: +// Parses a string of well-formed JSON text. +// description: +// Parses a string of well-formed JSON text. If the input is not well-formed, +// then behavior is undefined, but it is +// deterministic and is guaranteed not to modify any object other than its +// return value. +// +// This does not use `eval` so is less likely to have obscure security bugs than +// json2.js. +// It is optimized for speed, so is much faster than json_parse.js. +// +// This library should be used whenever security is a concern (when JSON may +// come from an untrusted source), speed is a concern, and erroring on malformed +// JSON is *not* a concern. +// +// json2.js is very fast, but potentially insecure since it calls `eval` to +// parse JSON data, so an attacker might be able to supply strange JS that +// looks like JSON, but that executes arbitrary javascript. +// +// To configure dojox.secure.fromJson as the JSON parser for all Dojo +// JSON parsing, simply do: +// | dojo.require("dojox.secure.fromJson"); +// | dojo.fromJson = dojox.secure.fromJson; +// or alternately you could configure dojox.secure.fromJson to only handle +// XHR responses: +// | dojo._contentHandlers.json = function(xhr){ +// | return dojox.secure.fromJson.fromJson(xhr.responseText); +// | }; +// json: String +// per RFC 4627 +// optReviver: Function (this:Object, string, *) +// optional function +// that reworks JSON objects post-parse per Chapter 15.12 of EcmaScript3.1. +// If supplied, the function is called with a string key, and a value. +// The value is the property of 'this'. The reviver should return +// the value to use in its place. So if dates were serialized as +// `{ "type": "Date", "time": 1234 }`, then a reviver might look like +// | function (key, value) { +// | if (value && typeof value === 'object' && 'Date' === value.type) { +// | return new Date(value.time); +// | } else { +// | return value; +// | } +// | }}. +// If the reviver returns {@code undefined} then the property named by key +// will be deleted from its container. +// `this` is bound to the object containing the specified property. +// returns: Object|Array +(function () { + var number + = '(?:-?\\b(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?(?:[eE][+-]?[0-9]+)?\\b)'; + var oneChar = '(?:[^\\0-\\x08\\x0a-\\x1f\"\\\\]' + + '|\\\\(?:[\"/\\\\bfnrt]|u[0-9A-Fa-f]{4}))'; + var string = '(?:\"' + oneChar + '*\")'; + + // Will match a value in a well-formed JSON file. + // If the input is not well-formed, may match strangely, but not in an unsafe + // way. + // Since this only matches value tokens, it does not match whitespace, colons, + // or commas. + var jsonToken = new RegExp( + '(?:false|true|null|[\\{\\}\\[\\]]' + + '|' + number + + '|' + string + + ')', 'g'); + + // Matches escape sequences in a string literal + var escapeSequence = new RegExp('\\\\(?:([^u])|u(.{4}))', 'g'); + + // Decodes escape sequences in object literals + var escapes = { + '"': '"', + '/': '/', + '\\': '\\', + 'b': '\b', + 'f': '\f', + 'n': '\n', + 'r': '\r', + 't': '\t' + }; + function unescapeOne(_, ch, hex) { + return ch ? escapes[ch] : String.fromCharCode(parseInt(hex, 16)); + } + + // A non-falsy value that coerces to the empty string when used as a key. + var EMPTY_STRING = new String(''); + var SLASH = '\\'; + + // Constructor to use based on an open token. + var firstTokenCtors = { '{': Object, '[': Array }; + + var hop = Object.hasOwnProperty; + + return function (json, opt_reviver) { + // Split into tokens + var toks = json.match(jsonToken); + // Construct the object to return + var result; + var tok = toks[0]; + var topLevelPrimitive = false; + if ('{' === tok) { + result = {}; + } else if ('[' === tok) { + result = []; + } else { + // The RFC only allows arrays or objects at the top level, but the JSON.parse + // defined by the EcmaScript 5 draft does allow strings, booleans, numbers, and null + // at the top level. + result = []; + topLevelPrimitive = true; + } + + // If undefined, the key in an object key/value record to use for the next + // value parsed. + var key; + // Loop over remaining tokens maintaining a stack of uncompleted objects and + // arrays. + var stack = [result]; + for (var i = 1 - topLevelPrimitive, n = toks.length; i < n; ++i) { + tok = toks[i]; + + var cont; + switch (tok.charCodeAt(0)) { + default: // sign or digit + cont = stack[0]; + cont[key || cont.length] = +(tok); + key = void 0; + break; + case 0x22: // '"' + tok = tok.substring(1, tok.length - 1); + if (tok.indexOf(SLASH) !== -1) { + tok = tok.replace(escapeSequence, unescapeOne); + } + cont = stack[0]; + if (!key) { + if (cont instanceof Array) { + key = cont.length; + } else { + key = tok || EMPTY_STRING; // Use as key for next value seen. + break; + } + } + cont[key] = tok; + key = void 0; + break; + case 0x5b: // '[' + cont = stack[0]; + stack.unshift(cont[key || cont.length] = []); + key = void 0; + break; + case 0x5d: // ']' + stack.shift(); + break; + case 0x66: // 'f' + cont = stack[0]; + cont[key || cont.length] = false; + key = void 0; + break; + case 0x6e: // 'n' + cont = stack[0]; + cont[key || cont.length] = null; + key = void 0; + break; + case 0x74: // 't' + cont = stack[0]; + cont[key || cont.length] = true; + key = void 0; + break; + case 0x7b: // '{' + cont = stack[0]; + stack.unshift(cont[key || cont.length] = {}); + key = void 0; + break; + case 0x7d: // '}' + stack.shift(); + break; + } + } + // Fail if we've got an uncompleted object. + if (topLevelPrimitive) { + if (stack.length !== 1) { throw new Error(); } + result = result[0]; + } else { + if (stack.length) { throw new Error(); } + } + + if (opt_reviver) { + // Based on walk as implemented in http://www.json.org/json2.js + var walk = function (holder, key) { + var value = holder[key]; + if (value && typeof value === 'object') { + var toDelete = null; + for (var k in value) { + if (hop.call(value, k) && value !== holder) { + // Recurse to properties first. This has the effect of causing + // the reviver to be called on the object graph depth-first. + + // Since 'this' is bound to the holder of the property, the + // reviver can access sibling properties of k including ones + // that have not yet been revived. + + // The value returned by the reviver is used in place of the + // current value of property k. + // If it returns undefined then the property is deleted. + var v = walk(value, k); + if (v !== void 0) { + value[k] = v; + } else { + // Deleting properties inside the loop has vaguely defined + // semantics in ES3 and ES3.1. + if (!toDelete) { toDelete = []; } + toDelete.push(k); + } + } + } + if (toDelete) { + for (var i = toDelete.length; --i >= 0;) { + delete value[toDelete[i]]; + } + } + } + return opt_reviver.call(holder, key, value); + }; + result = walk({ '': result }, ''); + } + + return result; + }; +})(); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/sandbox.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/sandbox.js new file mode 100644 index 00000000..02547a23 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/secure/sandbox.js @@ -0,0 +1,225 @@ +//>>built +define("dojox/secure/sandbox",["dijit","dojo","dojox","dojo/require!dojox/secure/DOM,dojox/secure/capability,dojo/NodeList-fx,dojo/_base/url"],function(_1,_2,_3){ +_2.provide("dojox.secure.sandbox"); +_2.require("dojox.secure.DOM"); +_2.require("dojox.secure.capability"); +_2.require("dojo.NodeList-fx"); +_2.require("dojo._base.url"); +(function(){ +var _4=setTimeout; +var _5=setInterval; +if({}.__proto__){ +var _6=function(_7){ +var _8=Array.prototype[_7]; +if(_8&&!_8.fixed){ +(Array.prototype[_7]=function(){ +if(this==window){ +throw new TypeError("Called with wrong this"); +} +return _8.apply(this,arguments); +}).fixed=true; +} +}; +_6("concat"); +_6("reverse"); +_6("sort"); +_6("slice"); +_6("forEach"); +_6("filter"); +_6("reduce"); +_6("reduceRight"); +_6("every"); +_6("map"); +_6("some"); +} +var _9=function(){ +return _2.xhrGet.apply(_2,arguments); +}; +_3.secure.sandbox=function(_a){ +var _b=_3.secure.DOM(_a); +_a=_b(_a); +var _c=_a.ownerDocument; +var _d,_2=_3.secure._safeDojoFunctions(_a,_b); +var _e=[]; +var _f=["isNaN","isFinite","parseInt","parseFloat","escape","unescape","encodeURI","encodeURIComponent","decodeURI","decodeURIComponent","alert","confirm","prompt","Error","EvalError","RangeError","ReferenceError","SyntaxError","TypeError","Date","RegExp","Number","Object","Array","String","Math","setTimeout","setInterval","clearTimeout","clearInterval","dojo","get","set","forEach","load","evaluate"]; +for(var i in _2){ +_f.push(i); +_e.push("var "+i+"=dojo."+i); +} +eval(_e.join(";")); +function get(obj,_10){ +_10=""+_10; +if(_3.secure.badProps.test(_10)){ +throw new Error("bad property access"); +} +if(obj.__get__){ +return obj.__get__(_10); +} +return obj[_10]; +}; +function set(obj,_11,_12){ +_11=""+_11; +get(obj,_11); +if(obj.__set){ +return obj.__set(_11); +} +obj[_11]=_12; +return _12; +}; +function _13(obj,fun){ +if(typeof fun!="function"){ +throw new TypeError(); +} +if("length" in obj){ +if(obj.__get__){ +var len=obj.__get__("length"); +for(var i=0;ithis operator, and they + // are only the code that has access to this. Inner functions + // are also prohibited from using this. + // + // If no superclasses are provided, this object will be the prototype of the + // constructed class (no copying + // will be done). Consequently you can "beget" by calling new (Class(obj)). + // All methods are "bound", each call results in |this| safety checking call. + // + // classProperties: + // This properties will be copied to the new class function. + // + // Note that neither dojo.declare nor dojo.extend are acceptable class constructors as + // they are completely unsecure. This class constructor is conceptually based on declare + // but also somewhat influenced by base2, prototype, YUI, resig's patterns, etc. + // + // example: + // | var Car = Class({drive:function(speed) { ... } ); // create a Car class with a "drive" method + // | var FastCar = Class(Car,{driveFast: function(speed) { return this.drive(2 * speed); } }); // create a FastCar that extends Car + // | var fastCar = new FastCar; // instantiate + // | fastCar.driveFast(50); // call a method + // | var driveFast = fastCar.driveFast; + // | var driveFast(50); // this will throw an error, the method can be used with an object that is not an instance of FastCar + var proto,superConstructor,ourConstructor; + var arg; + for (var i = 0, l = arguments.length; typeof (arg = arguments[i]) == 'function' && i < l; i++) { + // go through each superclass argument + if(proto) { // we have a prototype now, we must mixin now + mixin(proto,arg.prototype); + } + else { + // this is the first argument, so we can define the prototype ourselves + // link up the prototype chain to the superclass's prototype, so we are a subtype + superConstructor = arg; + var F = function() {}; + F.prototype = arg.prototype; + proto = new F; + } + } + + if(arg) { // the next object should be the properties + // apply binding checking on all the functions + for (var j in arg) { + // TODO: check on non-enumerables? + var value = arg[j]; + if(typeof value == 'function') { + arg[j] = function() { + if(this instanceof Class){ + return arguments.callee.__rawMethod__.apply(this,arguments); + } + throw new Error("Method called on wrong object"); + }; + arg[j].__rawMethod__ = value; // may want to use this for reconstruction and toString,valueOf + } + } + if(arg.hasOwnProperty('constructor')) { + ourConstructor = arg.constructor; + } + } + proto = proto ? mixin(proto,arg) : arg; // if there is no proto yet, we can use the provided object + function Class() { + // the super class may not have been constructed using the same technique, we will just call the constructor + if(superConstructor){ + superConstructor.apply(this,arguments); + } + if(ourConstructor){ + ourConstructor.apply(this,arguments); + } + } + mixin(Class,arguments[i]); // the optional second object adds properties to the class + proto.constructor = Class; + Class.prototype = proto; + return Class; + } + function checkString(func){ + if(typeof func != 'function') { + throw new Error("String is not allowed in setTimeout/setInterval"); + } + } + function setTimeout(func,time) { + // sandboxed setTimeout + checkString(func); + return oldTimeout(func,time); + } + function setInterval(func,time) { + // sandboxed setInterval + checkString(func); + return oldInterval(func,time); + } + function evaluate(script){ + // sandboxed eval + return wrap.evaluate(script); + } + var load = wrap.load = function(url){ + // provides a loader function for the sandbox + if (url.match(/^[\w\s]*:/)){ + throw new Error("Access denied to cross-site requests"); + } + return xhrGet({url:(new dojo._Url(wrap.rootUrl,url))+'',secure:true}); + } + wrap.evaluate = function(script){ + //if(!alreadyValidated) { + dojox.secure.capability.validate(script,safeCalls, // the safe dojo library and standard operators + {document:1,element:1}); // these are secured DOM starting points + + //} + if(script.match(/^\s*[\[\{]/)) { + var result = eval('(' + script + ')'); + // TODO: call render on result? + } + else { + eval(script); + } + //eval('wrap.evaluate=('+arguments.callee.toString()+')'); // yeah, recursive scoping; + }; + return /*===== dojo.declare("dojox.secure.__Sandbox", null, =====*/ { // dojox.secure.__Sandbox + loadJS : function(url){ + // summary: + // Loads the script from the given URL using XHR (assuming + // a plugin system is in place for cross-site requests) within the sandbox + // + // url: + // The url of the script to load + wrap.rootUrl = url; + return xhrGet({url:url,secure:true}).addCallback(function(result) { + evaluate(result,element /*If we get the results with a secure proxy, we would call put true here */); + }); + }, + loadHTML : function(url){ + // summary: + // Loads the web page from the provided URL using XHR (assuming the + // plugin system is in place) within the sandbox. All scripts within the web + // page will also be sandboxed. + // + // url: + // The url of the web page to load + + wrap.rootUrl = url; + return xhrGet({url:url,secure:true}).addCallback(function(result){ + element.innerHTML = result; + }); + }, + evaluate : function(script){ + // summary: + // Evaluates the given script within the sandbox + // + // script: + // The JavaScript text to evaluate + return wrap.evaluate(script); + } + // TODO: could add something for pre-validated scripts + }/*===== ) =====*/; + }; +})(); +dojox.secure._safeDojoFunctions = function(element,wrap) { + // Creates a safe subset of Dojo core library + var safeFunctions = ["mixin","require","isString","isArray","isFunction","isObject","isArrayLike","isAlien", + "hitch","delegate","partial","trim","disconnect","subscribe","unsubscribe","Deferred","toJson","style","attr"]; + //var domFunctions = ["clone","byId"]; + var doc = element.ownerDocument; + var unwrap = dojox.secure.unwrap; + dojo.NodeList.prototype.addContent.safetyCheck = function(content){ + wrap.safeHTML(content); + }; + dojo.NodeList.prototype.style.safetyCheck = function(name,value){ + if(name=='behavior'){ + throw new Error("Can not set behavior"); + } + wrap.safeCSS(value); + }; + dojo.NodeList.prototype.attr.safetyCheck = function(name,value){ + if (value && (name == 'src' || name == 'href' || name=='style')){ + throw new Error("Illegal to set " + name); + } + }; + var safe = { + query : function(query,root) { + return wrap(dojo.query(query,unwrap(root || element))); // wrap the NodeList + }, + connect: function(el,event) { + var obj = el; + arguments[0] = unwrap(el); + if(obj!=arguments[0] && event.substring(0,2) != 'on'){ + // it is probably an element, and it doesn't look like an event handler, probably not safe + throw new Error("Invalid event name for element"); + } + return dojo.connect.apply(dojo,arguments); + }, + body : function() { + return element; + }, + byId : function(id) { + return element.ownerDocument.getElementById(id); // use the safe document + }, + fromJson : function(str) { + // make sure it is safe before passing it to the unsafe dojo.fromJson + dojox.secure.capability.validate(str,[],{}); + return dojo.fromJson(str); + } + }; + for (var i = 0; i < safeFunctions.length; i++) { + safe[safeFunctions[i]] = dojo[safeFunctions[i]]; + } + return safe; +}; + + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch.js new file mode 100644 index 00000000..05136457 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/sketch",["dojo/_base/kernel","dojo/_base/lang","./xml/DomParser","./sketch/UndoStack","./sketch/Figure","./sketch/Toolbar"],function(_1){ +_1.getObject("sketch",true,dojox); +return dojox.sketch; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch.js.uncompressed.js new file mode 100644 index 00000000..b315e239 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch.js.uncompressed.js @@ -0,0 +1,19 @@ +define("dojox/sketch", [ + "dojo/_base/kernel", + "dojo/_base/lang", + "./xml/DomParser", + "./sketch/UndoStack", + "./sketch/Figure", + "./sketch/Toolbar" +], function(dojo){ + dojo.getObject("sketch", true, dojox); + + /*===== + return { + // summary: + // Deprecated. Should require dojox/sketch modules directly rather than trying to access them through + // this module. + }; + =====*/ + return dojox.sketch; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Anchor.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Anchor.js new file mode 100644 index 00000000..71210e16 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Anchor.js @@ -0,0 +1,59 @@ +//>>built +define("dojox/sketch/Anchor",["dojo/_base/kernel","dojo/_base/lang","../gfx"],function(_1){ +_1.getObject("sketch",true,dojox); +dojox.sketch.Anchor=function(an,id,_2){ +var _3=this; +var _4=4; +var _5=null; +this.type=function(){ +return "Anchor"; +}; +this.annotation=an; +this.id=id; +this._key="anchor-"+dojox.sketch.Anchor.count++; +this.shape=null; +this.isControl=(_2!=null)?_2:true; +this.beginEdit=function(){ +this.annotation.beginEdit(dojox.sketch.CommandTypes.Modify); +}; +this.endEdit=function(){ +this.annotation.endEdit(); +}; +this.zoom=function(_6){ +if(this.shape){ +var rs=Math.floor(_4/_6); +var _7=dojox.gfx.renderer=="vml"?1:1/_6; +this.shape.setShape({x:an[id].x-rs,y:an[id].y-rs,width:rs*2,height:rs*2}).setStroke({color:"black",width:_7}); +} +}; +this.setBinding=function(pt){ +an[id]={x:an[id].x+pt.dx,y:an[id].y+pt.dy}; +an.draw(); +an.drawBBox(); +}; +this.setUndo=function(){ +an.setUndo(); +}; +this.enable=function(){ +if(!an.shape){ +return; +} +an.figure._add(this); +_5={x:an[id].x-_4,y:an[id].y-_4,width:_4*2,height:_4*2}; +this.shape=an.shape.createRect(_5).setFill([255,255,255,0.35]); +this.shape.getEventSource().setAttribute("id",_3._key); +this.shape.getEventSource().setAttribute("shape-rendering","crispEdges"); +this.zoom(an.figure.zoomFactor); +}; +this.disable=function(){ +an.figure._remove(this); +if(an.shape){ +an.shape.remove(this.shape); +} +this.shape=null; +_5=null; +}; +}; +dojox.sketch.Anchor.count=0; +return dojox.sketch.Anchor; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Anchor.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Anchor.js.uncompressed.js new file mode 100644 index 00000000..e5a971fb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Anchor.js.uncompressed.js @@ -0,0 +1,69 @@ +define("dojox/sketch/Anchor", [ + "dojo/_base/kernel", + "dojo/_base/lang", + "../gfx" +], function(dojo){ + dojo.getObject("sketch", true, dojox); + + dojox.sketch.Anchor=function(an, id, isControl){ + var self=this; + var size=4; // .5 * size of anchor. + var rect=null; + + this.type=function(){ return "Anchor"; }; + this.annotation=an; + + this.id=id; + this._key="anchor-" + dojox.sketch.Anchor.count++; + this.shape=null; + this.isControl=(isControl!=null)?isControl:true; + + this.beginEdit=function(){ + this.annotation.beginEdit(dojox.sketch.CommandTypes.Modify); + }; + this.endEdit=function(){ + this.annotation.endEdit(); + }; + this.zoom=function(pct){ + if(this.shape){ + var rs=Math.floor(size/pct); + var width=dojox.gfx.renderer=='vml'?1:1/pct + this.shape.setShape({ x:an[id].x-rs, y:an[id].y-rs, width:rs*2, height:rs*2 }).setStroke({ color:"black", width:width }); //For IE, maybe we need Math.ceil(1/pct)||1 + } + } + /*this.doChange=function(pt){ + if(this.isControl){ + this.shape.applyTransform(pt); + } else{ + an.transform.dx+=pt.dx; + an.transform.dy+=pt.dy; + } + };*/ + this.setBinding=function(pt){ + an[id]={ x: an[id].x+pt.dx, y:an[id].y+pt.dy }; + an.draw(); + an.drawBBox(); + }; + this.setUndo=function(){ an.setUndo(); }; + + this.enable=function(){ + if(!an.shape){ return; } + an.figure._add(this); + rect={ x:an[id].x-size, y:an[id].y-size, width:size*2, height:size*2 }; + this.shape=an.shape.createRect(rect) + //.setStroke({ color:"black", width:1 }) + .setFill([255,255,255,0.35]); + this.shape.getEventSource().setAttribute("id", self._key); + this.shape.getEventSource().setAttribute("shape-rendering", "crispEdges"); + this.zoom(an.figure.zoomFactor); + }; + this.disable=function(){ + an.figure._remove(this); + if(an.shape){ an.shape.remove(this.shape); } + this.shape=null; + rect=null; + }; + }; + dojox.sketch.Anchor.count=0; + return dojox.sketch.Anchor; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Annotation.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Annotation.js new file mode 100644 index 00000000..696300a3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Annotation.js @@ -0,0 +1,237 @@ +//>>built +define("dojox/sketch/Annotation",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/declare","dojo/_base/json","./Anchor","./_Plugin"],function(_1){ +_1.declare("dojox.sketch.AnnotationTool",dojox.sketch._Plugin,{onMouseDown:function(e){ +this._omd=true; +},onMouseMove:function(e,_2){ +if(!this._omd){ +return; +} +if(this._cshape){ +this._cshape.setShape(_2); +}else{ +this._cshape=this.figure.surface.createRect(_2).setStroke({color:"#999",width:1,style:"ShortDot"}).setFill([255,255,255,0.7]); +this._cshape.getEventSource().setAttribute("shape-rendering","crispEdges"); +} +},onMouseUp:function(e){ +if(!this._omd){ +return; +} +this._omd=false; +var f=this.figure; +if(this._cshape){ +f.surface.remove(this._cshape); +delete this._cshape; +} +if(!(f._startPoint.x==e.pageX&&f._startPoint.y==e.pageY)){ +var _3=10; +if(Math.max(_3,Math.abs(f._absEnd.x-f._start.x),Math.abs(f._absEnd.y-f._start.y))>_3){ +this._create(f._start,f._end); +} +} +},_create:function(_4,_5){ +var f=this.figure; +var _6=f.nextKey(); +var a=new (this.annotation)(f,_6); +a.transform={dx:f._calCol(_4.x/f.zoomFactor),dy:f._calCol(_4.y/f.zoomFactor)}; +a.end={x:f._calCol(_5.x/f.zoomFactor),y:f._calCol(_5.y/f.zoomFactor)}; +if(a.control){ +a.control={x:f._calCol((_5.x/2)/f.zoomFactor),y:f._calCol((_5.y/2)/f.zoomFactor)}; +} +f.onBeforeCreateShape(a); +a.initialize(); +f.select(a); +f.onCreateShape(a); +f.history.add(dojox.sketch.CommandTypes.Create,a); +}}); +dojox.sketch.Annotation=function(_7,id){ +this.id=this._key=id; +this.figure=_7; +this.mode=dojox.sketch.Annotation.Modes.View; +this.shape=null; +this.boundingBox=null; +this.hasAnchors=true; +this.anchors={}; +this._properties={"stroke":{color:"blue",width:2},"font":{family:"Arial",size:16,weight:"bold"},"fill":"blue","label":""}; +if(this.figure){ +this.figure.add(this); +} +}; +var p=dojox.sketch.Annotation.prototype; +p.constructor=dojox.sketch.Annotation; +p.type=function(){ +return ""; +}; +p.getType=function(){ +return dojox.sketch.Annotation; +}; +p.onRemove=function(_8){ +this.figure.history.add(dojox.sketch.CommandTypes.Delete,this,this.serialize()); +}; +p.property=function(_9,_a){ +var r; +_9=_9.toLowerCase(); +if(this._properties[_9]!==undefined){ +r=this._properties[_9]; +} +if(arguments.length>1){ +this._properties[_9]=_a; +if(r!=_a){ +this.onPropertyChange(_9,r); +} +} +return r; +}; +p.onPropertyChange=function(_b,_c){ +}; +p.onCreate=function(){ +this.figure.history.add(dojox.sketch.CommandTypes.Create,this); +}; +p.onDblClick=function(e){ +var l=prompt("Set new text:",this.property("label")); +if(l!==false){ +this.beginEdit(dojox.sketch.CommandTypes.Modify); +this.property("label",l); +this.draw(); +this.endEdit(); +} +}; +p.initialize=function(){ +}; +p.destroy=function(){ +}; +p.draw=function(){ +}; +p.apply=function(_d){ +}; +p.serialize=function(){ +}; +p.getBBox=function(){ +}; +p.beginEdit=function(_e){ +if(!this._type){ +this._type=_e||dojox.sketch.CommandTypes.Move; +this._prevState=this.serialize(); +} +}; +p.endEdit=function(){ +if(this._prevState!=this.serialize()){ +this.figure.history.add(this._type,this,this._prevState); +} +this._type=this._prevState=""; +}; +p.calculate={slope:function(p1,p2){ +if(!(p1.x-p2.x)){ +return 0; +} +return ((p1.y-p2.y)/(p1.x-p2.x)); +},dx:function(p1,p2,dy){ +var s=this.slope(p1,p2); +if(s==0){ +return s; +} +return dy/s; +},dy:function(p1,p2,dx){ +return this.slope(p1,p2)*dx; +}}; +p.drawBBox=function(){ +var r=this.getBBox(); +if(!this.boundingBox){ +this.boundingBox=this.shape.createRect(r).moveToBack().setStroke({color:"#999",width:1,style:"Dash"}).setFill([238,238,238,0.3]); +this.boundingBox.getEventSource().setAttribute("id",this.id+"-boundingBox"); +this.boundingBox.getEventSource().setAttribute("shape-rendering","crispEdges"); +this.figure._add(this); +}else{ +this.boundingBox.setShape(r); +} +}; +p.setBinding=function(pt){ +this.transform.dx+=pt.dx; +this.transform.dy+=pt.dy; +this.draw(); +}; +p.getTextBox=function(_f){ +var fp=this.property("font"); +var f={fontFamily:fp.family,fontSize:fp.size,fontWeight:fp.weight}; +if(_f){ +f.fontSize=Math.floor(f.fontSize/_f); +} +return dojox.gfx._base._getTextBox(this.property("label"),f); +}; +p.setMode=function(m){ +if(this.mode==m){ +return; +} +this.mode=m; +var _10="disable"; +if(m==dojox.sketch.Annotation.Modes.Edit){ +_10="enable"; +} +if(_10=="enable"){ +this.drawBBox(); +this.figure._add(this); +}else{ +if(this.boundingBox){ +if(this.shape){ +this.shape.remove(this.boundingBox); +} +this.boundingBox=null; +} +} +for(var p in this.anchors){ +this.anchors[p][_10](); +} +}; +p.zoom=function(pct){ +pct=pct||this.figure.zoomFactor; +if(this.labelShape){ +var f=_1.clone(this.property("font")); +f.size=Math.ceil(f.size/pct)+"px"; +this.labelShape.setFont(f); +} +for(var n in this.anchors){ +this.anchors[n].zoom(pct); +} +if(dojox.gfx.renderer=="vml"){ +pct=1; +} +if(this.pathShape){ +var s=_1.clone(this.property("stroke")); +s.width=pct>1?s.width:Math.ceil(s.width/pct)+"px"; +this.pathShape.setStroke(s); +} +}; +p.writeCommonAttrs=function(){ +return "id=\""+this.id+"\" dojoxsketch:type=\""+this.type()+"\""+" transform=\"translate("+this.transform.dx+","+this.transform.dy+")\""+(this.data?(" >limit){ + this._create(f._start, f._end); + } + } + }, + _create: function(start,end){ + // create a new shape, needs to be accessible from the + // dragging functions. + var f=this.figure; + var _=f.nextKey(); + var a=new (this.annotation)(f, _); + a.transform={ + dx:f._calCol(start.x/f.zoomFactor), + dy:f._calCol(start.y/f.zoomFactor) + }; + a.end={ + x:f._calCol(end.x/f.zoomFactor), + y:f._calCol(end.y/f.zoomFactor) + }; + if(a.control){ + a.control={ + x:f._calCol((end.x/2)/f.zoomFactor), + y:f._calCol((end.y/2)/f.zoomFactor) + }; + } + f.onBeforeCreateShape(a); + a.initialize(); + f.select(a); + f.onCreateShape(a); + f.history.add(dojox.sketch.CommandTypes.Create,a); + } + }); + + dojox.sketch.Annotation=function(figure, id){ + // for editing stuff. + this.id=this._key=id; + this.figure=figure; + this.mode=dojox.sketch.Annotation.Modes.View; + this.shape=null; // dojox.gfx.Group + this.boundingBox=null; // rect for boundaries + this.hasAnchors=true; + this.anchors={}; // dojox.sketch.Anchor + this._properties={ + 'stroke':{ color:"blue", width:2 }, + 'font': {family:"Arial", size:16, weight:"bold"}, + 'fill': "blue", + 'label': "" + }; + + if(this.figure){ + this.figure.add(this); + } + }; + + var p=dojox.sketch.Annotation.prototype; + p.constructor=dojox.sketch.Annotation; + p.type=function(){ return ''; }; + p.getType=function(){ return dojox.sketch.Annotation; }; + p.onRemove=function(noundo){ + //this.figure._delete([this],noundo); + this.figure.history.add(dojox.sketch.CommandTypes.Delete, this, this.serialize()); + }; + p.property=function(name,/*?*/value){ + var r; + name=name.toLowerCase(); + if(this._properties[name]!==undefined){ + r=this._properties[name]; + } + if(arguments.length>1){ + this._properties[name]=value; + if(r!=value){ + this.onPropertyChange(name,r); + } + } + return r; + }; + p.onPropertyChange=function(name,oldvalue){}; + p.onCreate=function(){ + this.figure.history.add(dojox.sketch.CommandTypes.Create,this); + } + p.onDblClick=function(e){ + var l=prompt('Set new text:',this.property('label')); + if(l!==false){ + this.beginEdit(dojox.sketch.CommandTypes.Modify); + this.property('label',l); + this.draw(); + this.endEdit(); + } + } + p.initialize=function(){ }; + p.destroy=function(){ }; + p.draw=function(){ }; + p.apply=function(obj){ }; + p.serialize=function(){ }; + p.getBBox=function(){ }; + p.beginEdit=function(type){ + if(!this._type){ + this._type=type||dojox.sketch.CommandTypes.Move; + this._prevState=this.serialize(); + } + }; + p.endEdit=function(){ + if(this._prevState!=this.serialize()){ + this.figure.history.add(this._type,this,this._prevState); + } + this._type=this._prevState=''; + }; + p.calculate={ + slope:function(p1, p2){ + if(!(p1.x-p2.x)){ return 0; } + return ((p1.y-p2.y)/(p1.x-p2.x)); + }, + dx:function(p1, p2, dy){ + var s=this.slope(p1,p2); + if(s==0){ return s; } + return dy/s; + }, + dy:function(p1, p2, dx){ + return this.slope(p1,p2)*dx; + } + }; + p.drawBBox=function(){ + var r=this.getBBox(); + if(!this.boundingBox){ + this.boundingBox=this.shape.createRect(r) + .moveToBack() + .setStroke({color:"#999", width:1, style:"Dash"}) + .setFill([238,238,238,0.3]); + this.boundingBox.getEventSource().setAttribute("id",this.id+"-boundingBox"); + this.boundingBox.getEventSource().setAttribute("shape-rendering","crispEdges"); + this.figure._add(this); + } else { + this.boundingBox.setShape(r); + } + }; + p.setBinding=function(pt){ + this.transform.dx+=pt.dx; + this.transform.dy+=pt.dy; + this.draw(); + }; + //p.doChange=function(pt){ }; + p.getTextBox=function(zoomfactor){ + var fp=this.property('font'); + //_getTextBox expect style camlCase properties, do it manually here + var f = {fontFamily:fp.family,fontSize:fp.size,fontWeight:fp.weight}; + if(zoomfactor){ + f.fontSize = Math.floor(f.fontSize/zoomfactor); + } + return dojox.gfx._base._getTextBox(this.property('label'),f); + }; + p.setMode=function(m){ + if(this.mode==m){ return; } + this.mode=m; + var method="disable"; + if(m==dojox.sketch.Annotation.Modes.Edit){ method="enable"; } + if(method=="enable"){ + // draw the bounding box + this.drawBBox(); + this.figure._add(this); + } else { + if(this.boundingBox){ + if(this.shape){ this.shape.remove(this.boundingBox); } + this.boundingBox=null; + } + } + for(var p in this.anchors){ + this.anchors[p][method](); + } + }; + p.zoom=function(pct){ + pct = pct || this.figure.zoomFactor; + if(this.labelShape){ + var f=dojo.clone(this.property('font')); + f.size=Math.ceil(f.size/pct)+"px"; + this.labelShape.setFont(f); + } + + for(var n in this.anchors){ + this.anchors[n].zoom(pct); + } + + //In VML, path are always the same width no matter scaling factors, + //so aways use 1 for VML + if(dojox.gfx.renderer=='vml'){ + pct=1; + } + if(this.pathShape){ + var s=dojo.clone(this.property('stroke')); + s.width=pct>1?s.width:Math.ceil(s.width/pct)+"px"; + this.pathShape.setStroke(s); + } + }; + p.writeCommonAttrs=function(){ + return 'id="' + this.id + '" dojoxsketch:type="' + this.type() + '"' + + ' transform="translate('+ this.transform.dx + "," + this.transform.dy + ')"' + + (this.data?(' >>built +define("dojox/sketch/DoubleArrowAnnotation",["dojo/_base/kernel","dojo/_base/lang","./Annotation","./Anchor"],function(_1){ +_1.getObject("sketch",true,dojox); +var ta=dojox.sketch; +ta.DoubleArrowAnnotation=function(_2,id){ +ta.Annotation.call(this,_2,id); +this.transform={dx:0,dy:0}; +this.start={x:0,y:0}; +this.control={x:100,y:-50}; +this.end={x:200,y:0}; +this.textPosition={x:0,y:0}; +this.textOffset=6; +this.textYOffset=10; +this.textAlign="middle"; +this.startRotation=0; +this.endRotation=0; +this.labelShape=null; +this.pathShape=null; +this.startArrow=null; +this.startArrowGroup=null; +this.endArrow=null; +this.endArrowGroup=null; +this.anchors.start=new ta.Anchor(this,"start"); +this.anchors.control=new ta.Anchor(this,"control"); +this.anchors.end=new ta.Anchor(this,"end"); +}; +ta.DoubleArrowAnnotation.prototype=new ta.Annotation; +var p=ta.DoubleArrowAnnotation.prototype; +p.constructor=ta.DoubleArrowAnnotation; +p.type=function(){ +return "DoubleArrow"; +}; +p.getType=function(){ +return ta.DoubleArrowAnnotation; +}; +p._rot=function(){ +var _3=this.control.y-this.start.y; +var _4=this.control.x-this.start.x; +this.startRotation=Math.atan2(_3,_4); +_3=this.end.y-this.control.y; +_4=this.end.x-this.control.x; +this.endRotation=Math.atan2(_3,_4); +}; +p._pos=function(){ +var _5=this.textOffset; +if(this.control.y1?20:Math.floor(20/pct),w=pct>1?5:Math.floor(5/pct),h=pct>1?3:Math.floor(3/pct); +this.startArrow.setShape("M0,0 l"+l+",-"+w+" -"+h+","+w+" "+h+","+w+" Z"); +this.endArrow.setShape("M"+this.end.x+","+this.end.y+" l-"+l+",-"+w+" "+h+","+w+" -"+h+","+w+" Z"); +} +}; +p.getBBox=function(){ +var x=Math.min(this.start.x,this.control.x,this.end.x); +var y=Math.min(this.start.y,this.control.y,this.end.y); +var w=Math.max(this.start.x,this.control.x,this.end.x)-x; +var h=Math.max(this.start.y,this.control.y,this.end.y)-y; +return {x:x,y:y,width:w,height:h}; +}; +p.serialize=function(){ +var s=this.property("stroke"); +return ""+""+""+""+""+""+""+""+""+this.property("label")+""+""; +}; +ta.Annotation.register("DoubleArrow"); +return dojox.sketch.DoubleArrowAnnotation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/DoubleArrowAnnotation.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/DoubleArrowAnnotation.js.uncompressed.js new file mode 100644 index 00000000..c716c8ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/DoubleArrowAnnotation.js.uncompressed.js @@ -0,0 +1,232 @@ +define("dojox/sketch/DoubleArrowAnnotation", ["dojo/_base/kernel", "dojo/_base/lang", "./Annotation", "./Anchor"], function(dojo){ + dojo.getObject("sketch", true, dojox); + var ta=dojox.sketch; + console.log(ta); + ta.DoubleArrowAnnotation=function(figure, id){ + ta.Annotation.call(this, figure, id); + this.transform={ dx:0, dy:0 }; + this.start={x:0, y:0}; + this.control={x:100, y:-50}; + this.end={x:200, y:0}; + this.textPosition={ x:0, y:0 }; + this.textOffset=6; + this.textYOffset=10; + this.textAlign="middle"; + this.startRotation=0; + this.endRotation=0; + +// this.property('label',this.id); + this.labelShape=null; + this.pathShape=null; + this.startArrow=null; + this.startArrowGroup=null; + this.endArrow=null; + this.endArrowGroup=null; + + this.anchors.start=new ta.Anchor(this, "start"); + this.anchors.control=new ta.Anchor(this, "control"); + this.anchors.end=new ta.Anchor(this, "end"); + }; + ta.DoubleArrowAnnotation.prototype=new ta.Annotation; + var p=ta.DoubleArrowAnnotation.prototype; + p.constructor=ta.DoubleArrowAnnotation; + + p.type=function(){ return 'DoubleArrow'; }; + p.getType=function(){ return ta.DoubleArrowAnnotation; }; + + p._rot=function(){ + // arrowhead rotation + var opp=this.control.y-this.start.y; + var adj=this.control.x-this.start.x; + this.startRotation=Math.atan2(opp,adj); + + opp=this.end.y-this.control.y; + adj=this.end.x-this.control.x; + this.endRotation=Math.atan2(opp,adj); + }; + p._pos=function(){ + // text position + var offset=this.textOffset; + + // figure out the pull of the curve and place accordingly + if(this.control.y1?20:Math.floor(20/pct), w=pct>1?5:Math.floor(5/pct),h=pct>1?3:Math.floor(3/pct); + this.startArrow.setShape("M0,0 l"+l+",-"+w+" -"+h+","+w+" "+h+","+w+" Z");//.setFill(this.property('fill')); + + this.endArrow.setShape("M" + this.end.x + "," + this.end.y + " l-"+l+",-"+w+" "+h+","+w+" -"+h+","+w+" Z"); + } + }; + + p.getBBox=function(){ + var x=Math.min(this.start.x, this.control.x, this.end.x); + var y=Math.min(this.start.y, this.control.y, this.end.y); + var w=Math.max(this.start.x, this.control.x, this.end.x)-x; + var h=Math.max(this.start.y, this.control.y, this.end.y)-y; + return { x:x, y:y, width:w, height:h }; + }; + + p.serialize=function(){ + var s=this.property('stroke'); + return '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + '' + + this.property('label') + + '' + + ''; + }; + + ta.Annotation.register("DoubleArrow"); + return dojox.sketch.DoubleArrowAnnotation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Figure.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Figure.js new file mode 100644 index 00000000..fc645faa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Figure.js @@ -0,0 +1,468 @@ +//>>built +define("dojox/sketch/Figure",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/connect","dojo/_base/html","../gfx","../xml/DomParser","./UndoStack"],function(_1){ +_1.experimental("dojox.sketch"); +var ta=dojox.sketch; +ta.tools={}; +ta.registerTool=function(_2,fn){ +ta.tools[_2]=fn; +}; +ta.Figure=function(_3){ +var _4=this; +this.annCounter=1; +this.shapes=[]; +this.image=null; +this.imageSrc=null; +this.size={w:0,h:0}; +this.surface=null; +this.group=null; +this.node=null; +this.zoomFactor=1; +this.tools=null; +this.obj={}; +_1.mixin(this,_3); +this.selected=[]; +this.hasSelections=function(){ +return this.selected.length>0; +}; +this.isSelected=function(_5){ +for(var i=0;i<_4.selected.length;i++){ +if(_4.selected[i]==_5){ +return true; +} +} +return false; +}; +this.select=function(_6){ +if(!_4.isSelected(_6)){ +_4.clearSelections(); +_4.selected=[_6]; +} +_6.setMode(ta.Annotation.Modes.View); +_6.setMode(ta.Annotation.Modes.Edit); +}; +this.deselect=function(_7){ +var _8=-1; +for(var i=0;i<_4.selected.length;i++){ +if(_4.selected[i]==_7){ +_8=i; +break; +} +} +if(_8>-1){ +_7.setMode(ta.Annotation.Modes.View); +_4.selected.splice(_8,1); +} +return _7; +}; +this.clearSelections=function(){ +for(var i=0;i<_4.selected.length;i++){ +_4.selected[i].setMode(ta.Annotation.Modes.View); +} +_4.selected=[]; +}; +this.replaceSelection=function(n,o){ +if(!_4.isSelected(o)){ +_4.select(n); +return; +} +var _9=-1; +for(var i=0;i<_4.selected.length;i++){ +if(_4.selected[i]==o){ +_9=i; +break; +} +} +if(_9>-1){ +_4.selected.splice(_9,1,n); +} +}; +this._c=null; +this._ctr=null; +this._lp=null; +this._action=null; +this._prevState=null; +this._startPoint=null; +this._ctool=null; +this._start=null; +this._end=null; +this._absEnd=null; +this._cshape=null; +this._dblclick=function(e){ +var o=_4._fromEvt(e); +if(o){ +_4.onDblClickShape(o,e); +} +}; +this._keydown=function(e){ +var _a=false; +if(e.ctrlKey){ +if(e.keyCode===90||e.keyCode===122){ +_4.undo(); +_a=true; +}else{ +if(e.keyCode===89||e.keyCode===121){ +_4.redo(); +_a=true; +} +} +} +if(e.keyCode===46||e.keyCode===8){ +_4._delete(_4.selected); +_a=true; +} +if(_a){ +_1.stopEvent(e); +} +}; +this._md=function(e){ +if(dojox.gfx.renderer=="vml"){ +_4.node.focus(); +} +var o=_4._fromEvt(e); +_4._startPoint={x:e.pageX,y:e.pageY}; +_4._ctr=_1.position(_4.node); +var _b={x:_4.node.scrollLeft,y:_4.node.scrollTop}; +_4._ctr={x:_4._ctr.x-_b.x,y:_4._ctr.y-_b.y}; +var X=e.clientX-_4._ctr.x,Y=e.clientY-_4._ctr.y; +_4._lp={x:X,y:Y}; +_4._start={x:X,y:Y}; +_4._end={x:X,y:Y}; +_4._absEnd={x:X,y:Y}; +if(!o){ +_4.clearSelections(); +_4._ctool.onMouseDown(e); +}else{ +if(o.type&&o.type()!="Anchor"){ +if(!_4.isSelected(o)){ +_4.select(o); +_4._sameShapeSelected=false; +}else{ +_4._sameShapeSelected=true; +} +} +o.beginEdit(); +_4._c=o; +} +}; +this._mm=function(e){ +if(!_4._ctr){ +return; +} +if(_4._c&&!_4._c.shape){ +_4._clearMouse(); +return; +} +var x=e.clientX-_4._ctr.x; +var y=e.clientY-_4._ctr.y; +var dx=x-_4._lp.x; +var dy=y-_4._lp.y; +_4._absEnd={x:x,y:y}; +if(_4._c){ +_4._c.setBinding({dx:dx/_4.zoomFactor,dy:dy/_4.zoomFactor}); +_4._lp={x:x,y:y}; +}else{ +_4._end={x:dx,y:dy}; +var _c={x:Math.min(_4._start.x,_4._absEnd.x),y:Math.min(_4._start.y,_4._absEnd.y),width:Math.abs(_4._start.x-_4._absEnd.x),height:Math.abs(_4._start.y-_4._absEnd.y)}; +if(_c.width&&_c.height){ +_4._ctool.onMouseMove(e,_c); +} +} +}; +this._mu=function(e){ +if(_4._c){ +if(_4._c.shape){ +_4._c.endEdit(); +} +}else{ +_4._ctool.onMouseUp(e); +} +_4._clearMouse(); +}; +this._clearMouse=function(){ +_4._c=_4._ctr=_4._lp=_4._action=_4._prevState=_4._startPoint=null; +_4._cshape=_4._start=_4._end=_4._absEnd=null; +}; +this.initUndoStack(); +}; +var p=ta.Figure.prototype; +p.initUndoStack=function(){ +this.history=new ta.UndoStack(this); +}; +p.setTool=function(t){ +this._ctool=t; +}; +p.gridSize=0; +p._calCol=function(v){ +return this.gridSize?(Math.round(v/this.gridSize)*this.gridSize):v; +}; +p._delete=function(_d,_e){ +for(var i=0;i<_d.length;i++){ +_d[i].setMode(ta.Annotation.Modes.View); +_d[i].destroy(_e); +this.remove(_d[i]); +this._remove(_d[i]); +if(!_e){ +_d[i].onRemove(); +} +} +_d.splice(0,_d.length); +}; +p.onDblClickShape=function(_f,e){ +if(_f["onDblClick"]){ +_f.onDblClick(e); +} +}; +p.onCreateShape=function(_10){ +}; +p.onBeforeCreateShape=function(_11){ +}; +p.initialize=function(_12){ +this.node=_12; +this.surface=dojox.gfx.createSurface(_12,this.size.w,this.size.h); +this.group=this.surface.createGroup(); +this._cons=[]; +var es=this.surface.getEventSource(); +this._cons.push(_1.connect(es,"ondraggesture",_1.stopEvent),_1.connect(es,"ondragenter",_1.stopEvent),_1.connect(es,"ondragover",_1.stopEvent),_1.connect(es,"ondragexit",_1.stopEvent),_1.connect(es,"ondragstart",_1.stopEvent),_1.connect(es,"onselectstart",_1.stopEvent),_1.connect(es,"onmousedown",this._md),_1.connect(es,"onmousemove",this._mm),_1.connect(es,"onmouseup",this._mu),_1.connect(es,"onclick",this,"onClick"),_1.connect(es,"ondblclick",this._dblclick),_1.connect(_12,"onkeydown",this._keydown)); +this.image=this.group.createImage({width:this.imageSize.w,height:this.imageSize.h,src:this.imageSrc}); +}; +p.destroy=function(_13){ +if(!this.node){ +return; +} +if(!_13){ +if(this.history){ +this.history.destroy(); +} +if(this._subscribed){ +_1.unsubscribe(this._subscribed); +delete this._subscribed; +} +} +_1.forEach(this._cons,_1.disconnect); +this._cons=[]; +_1.empty(this.node); +this.group=this.surface=null; +this.obj={}; +this.shapes=[]; +}; +p.nextKey=function(){ +return "annotation-"+this.annCounter++; +}; +p.draw=function(){ +}; +p.zoom=function(pct){ +this.zoomFactor=pct/100; +var w=this.size.w*this.zoomFactor; +var h=this.size.h*this.zoomFactor; +this.surface.setDimensions(w,h); +this.group.setTransform(dojox.gfx.matrix.scale(this.zoomFactor,this.zoomFactor)); +for(var i=0;i-1){ +key=key.replace("-boundingBox",""); +}else{ +if(key&&key.indexOf("-labelShape")>-1){ +key=key.replace("-labelShape",""); +} +} +return this.obj[key]; +}; +p._keyFromEvt=function(e){ +var key=e.target.id+""; +if(key.length==0){ +var p=e.target.parentNode; +var _14=this.surface.getEventSource(); +while(p&&p.id.length==0&&p!=_14){ +p=p.parentNode; +} +key=p.id; +} +return key; +}; +p._fromEvt=function(e){ +return this._get(this._keyFromEvt(e)); +}; +p.add=function(_15){ +for(var i=0;i-1){ +this.shapes.splice(idx,1); +} +return _16; +}; +p.getAnnotator=function(id){ +for(var i=0;i"+""+""; +for(var i=0;i0 }; + this.isSelected=function(obj){ + for(var i=0; i-1){ + obj.setMode(ta.Annotation.Modes.View); + self.selected.splice(idx,1); + } + return obj; + }; + this.clearSelections=function(){ + for(var i=0; i-1){ + self.selected.splice(idx,1,n); + } + }; + + // for the drag and drop handlers. + this._c=null; // current shape + this._ctr=null; // container measurements + this._lp=null; // last position + this._action=null; + this._prevState=null; + this._startPoint=null; // test to record a move. + + // if an object isn't selected and we're dragging anyways. + this._ctool=null; // hard code it. + this._start=null; + this._end=null; + this._absEnd=null; + this._cshape=null; + + this._dblclick=function(e){ + var o=self._fromEvt(e); + if(o){ + self.onDblClickShape(o,e); + } + }; + + this._keydown=function(e){ + var prevent=false; + if(e.ctrlKey){ + if(e.keyCode===90 || e.keyCode===122){ //ctrl+z + self.undo(); + prevent = true; + } + else if(e.keyCode===89 || e.keyCode===121){ //ctrl+y + self.redo(); + prevent = true; + } + } + + if(e.keyCode===46 || e.keyCode===8){ //delete or backspace + self._delete(self.selected); + prevent = true; + } + + if(prevent){ + dojo.stopEvent(e); + } + }; + + // drag handlers. + this._md=function(e){ + //in IE, when clicking into the drawing canvas, the node does not get focused, + //do it manually here to force it, otherwise the keydown event listener is + //never triggered in IE. + if(dojox.gfx.renderer=='vml'){ + self.node.focus(); + } + var o=self._fromEvt(e); + self._startPoint={ x:e.pageX, y:e.pageY }; + + self._ctr=dojo.position(self.node); + // figure out the coordinates taking scroll into account + var scroll={x:self.node.scrollLeft,y:self.node.scrollTop}; + //var win = dojo.window.get(self.node.ownerDocument); + //var scroll=dojo.withGlobal(win,dojo._docScroll); + self._ctr={x:self._ctr.x-scroll.x, y:self._ctr.y-scroll.y}; + var X=e.clientX-self._ctr.x, Y=e.clientY-self._ctr.y; + self._lp={ x:X, y:Y }; + + // capture it separately + self._start={ x:X, y:Y }; + self._end={ x:X, y:Y }; + self._absEnd={ x:X, y:Y }; + if(!o){ + self.clearSelections(); + self._ctool.onMouseDown(e); + }else{ + if(o.type && o.type()!="Anchor"){ + if(!self.isSelected(o)){ + self.select(o); + self._sameShapeSelected=false; + }else{ + self._sameShapeSelected=true; + } + } + o.beginEdit(); + self._c=o; + } + }; + this._mm=function(e){ + if(!self._ctr){ return; } + if(self._c && !self._c.shape){ + //the selected item is gone, cancel editing mode + self._clearMouse(); + return; + } + var x=e.clientX-self._ctr.x; + var y=e.clientY-self._ctr.y; + var dx=x-self._lp.x; + var dy=y-self._lp.y; + self._absEnd={x:x, y:y}; + if(self._c){ + //self._c.doChange({dx:dx, dy:dy}); + self._c.setBinding({dx:dx/self.zoomFactor, dy:dy/self.zoomFactor}); + self._lp={x:x, y:y}; + } else { + self._end={x:dx, y:dy}; + var rect={ + x:Math.min(self._start.x,self._absEnd.x), + y:Math.min(self._start.y,self._absEnd.y), + width:Math.abs(self._start.x-self._absEnd.x), + height:Math.abs(self._start.y-self._absEnd.y) + } + if(rect.width && rect.height){ + self._ctool.onMouseMove(e,rect); + } + } + }; + this._mu=function(e){ + if(self._c){ + // record the event. + if(self._c.shape){ + self._c.endEdit(); //make sure it's not deleted + } + }else{ + self._ctool.onMouseUp(e); + } + self._clearMouse(); + }; + this._clearMouse=function(){ + // clear the stuff out. + self._c=self._ctr=self._lp=self._action=self._prevState=self._startPoint=null; + self._cshape=self._start=self._end=self._absEnd=null; + }; + + this.initUndoStack(); + }; + + var p=ta.Figure.prototype; + p.initUndoStack=function(){ + this.history=new ta.UndoStack(this); + }; + p.setTool=function(/*dojox.sketch._Plugin*/t){ + this._ctool=t; + }; + //gridSize: int + // if it is greater than 0, all new shapes placed on the drawing will have coordinates + // snapped to the gridSize. For example, if gridSize is set to 10, all coordinates + // (only including coordinates which specifies the x/y position of shape are affected + // by this parameter) will be dividable by 10 + p.gridSize=0; + p._calCol=function(v){ + return this.gridSize?(Math.round(v/this.gridSize)*this.gridSize):v; + }; + p._delete=function(arr,noundo){ + for(var i=0; i-1){ + key=key.replace("-boundingBox",""); + }else if(key&&key.indexOf("-labelShape")>-1){ + key=key.replace("-labelShape",""); + } + return this.obj[key]; + }; + p._keyFromEvt=function(e){ + var key=e.target.id+""; + if(key.length==0){ + // ancestor tree until you get to the end (meaning this.surface) + var p=e.target.parentNode; + var node=this.surface.getEventSource(); + while(p && p.id.length==0 && p!=node){ + p=p.parentNode; + } + key=p.id; + } + return key; + }; + p._fromEvt=function(e){ + return this._get(this._keyFromEvt(e)); + }; + + p.add=function(annotation){ + for(var i=0; i-1){ this.shapes.splice(idx, 1); } + return annotation; + }; + p.getAnnotator=function(id){ + for(var i=0; i' + + '' + + ''; + for(var i=0; i>built +define("dojox/sketch/LeadAnnotation",["dojo/_base/kernel","dojo/_base/lang","./Annotation","./Anchor"],function(_1){ +_1.getObject("sketch",true,dojox); +var ta=dojox.sketch; +ta.LeadAnnotation=function(_2,id){ +ta.Annotation.call(this,_2,id); +this.transform={dx:0,dy:0}; +this.start={x:0,y:0}; +this.control={x:100,y:-50}; +this.end={x:200,y:0}; +this.textPosition={x:0,y:0}; +this.textOffset=4; +this.textYOffset=10; +this.pathShape=null; +this.labelShape=null; +this.anchors.start=new ta.Anchor(this,"start"); +this.anchors.control=new ta.Anchor(this,"control"); +this.anchors.end=new ta.Anchor(this,"end"); +}; +ta.LeadAnnotation.prototype=new ta.Annotation; +var p=ta.LeadAnnotation.prototype; +p.constructor=ta.LeadAnnotation; +p.type=function(){ +return "Lead"; +}; +p.getType=function(){ +return ta.LeadAnnotation; +}; +p._pos=function(){ +var _3=this.textOffset,x=0,y=0; +var _4=this.calculate.slope(this.control,this.end); +this.textAlign="middle"; +if(Math.abs(_4)>=1){ +x=this.end.x+this.calculate.dx(this.control,this.end,_3); +if(this.control.y>this.end.y){ +y=this.end.y-_3; +}else{ +y=this.end.y+_3+this.textYOffset; +} +}else{ +if(_4==0){ +x=this.end.x+_3; +y=this.end.y+this.textYOffset; +}else{ +if(this.start.x>this.end.x){ +x=this.end.x-_3; +this.textAlign="end"; +}else{ +x=this.end.x+_3; +this.textAlign="start"; +} +if(this.start.y"+""+""+this.property("label")+""+""; +}; +ta.Annotation.register("Lead"); +return dojox.sketch.LeadAnnotation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/LeadAnnotation.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/LeadAnnotation.js.uncompressed.js new file mode 100644 index 00000000..73569445 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/LeadAnnotation.js.uncompressed.js @@ -0,0 +1,161 @@ +define("dojox/sketch/LeadAnnotation", ["dojo/_base/kernel", "dojo/_base/lang", "./Annotation", "./Anchor"], function(dojo){ + dojo.getObject("sketch", true, dojox); + + var ta=dojox.sketch; + ta.LeadAnnotation=function(figure, id){ + ta.Annotation.call(this, figure, id); + this.transform={dx:0, dy:0 }; + this.start={ x:0, y:0 }; + this.control={x:100, y:-50}; + this.end={ x:200, y:0 }; + this.textPosition={ x:0, y:0 }; + this.textOffset=4; + //this.textAlign="middle"; + this.textYOffset=10; + +// this.property('label',this.id); + this.pathShape=null; + this.labelShape=null; + + this.anchors.start=new ta.Anchor(this, "start"); + this.anchors.control=new ta.Anchor(this, "control"); + this.anchors.end=new ta.Anchor(this, "end"); + }; + ta.LeadAnnotation.prototype=new ta.Annotation; + var p=ta.LeadAnnotation.prototype; + p.constructor=ta.LeadAnnotation; + + p.type=function(){ return 'Lead'; } + p.getType=function(){ return ta.LeadAnnotation; }; + + p._pos=function(){ + var offset=this.textOffset, x=0, y=0; + var slope=this.calculate.slope(this.control, this.end); + this.textAlign="middle"; + if(Math.abs(slope)>=1){ + x=this.end.x+this.calculate.dx(this.control, this.end, offset); + if(this.control.y>this.end.y){ + y=this.end.y-offset; + } else { + y=this.end.y+offset+this.textYOffset; + } + } else if(slope==0){ + x=this.end.x+offset; + y=this.end.y+this.textYOffset; + } else { + if(this.start.x>this.end.x){ + x=this.end.x-offset; + this.textAlign="end"; + } else { + x=this.end.x+offset; + this.textAlign="start"; + } + if(this.start.y' + + '' + + '' + + this.property('label') + + '' + + ''; + }; + + ta.Annotation.register("Lead"); + return dojox.sketch.LeadAnnotation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/PreexistingAnnotation.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/PreexistingAnnotation.js new file mode 100644 index 00000000..2d8199e6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/PreexistingAnnotation.js @@ -0,0 +1,131 @@ +//>>built +define("dojox/sketch/PreexistingAnnotation",["dojo/_base/kernel","dojo/_base/lang","./Annotation","./Anchor"],function(_1){ +_1.getObject("sketch",true,dojox); +var ta=dojox.sketch; +ta.PreexistingAnnotation=function(_2,id){ +ta.Annotation.call(this,_2,id); +this.transform={dx:0,dy:0}; +this.start={x:0,y:0}; +this.end={x:200,y:200}; +this.radius=8; +this.textPosition={x:196,y:196}; +this.textOffset=4; +this.textAlign="end"; +this.rectShape=null; +this.labelShape=null; +this.anchors.start=new ta.Anchor(this,"start"); +this.anchors.end=new ta.Anchor(this,"end"); +}; +ta.PreexistingAnnotation.prototype=new ta.Annotation; +var p=ta.PreexistingAnnotation.prototype; +p.constructor=ta.PreexistingAnnotation; +p.type=function(){ +return "Preexisting"; +}; +p.getType=function(){ +return ta.PreexistingAnnotation; +}; +p._pos=function(){ +var x=Math.min(this.start.x,this.end.x); +var y=Math.min(this.start.y,this.end.y); +var w=Math.max(this.start.x,this.end.x); +var h=Math.max(this.start.y,this.end.y); +this.start={x:x,y:y}; +this.end={x:w,y:h}; +this.textPosition={x:this.end.x-this.textOffset,y:this.end.y-this.textOffset}; +}; +p.apply=function(_3){ +if(!_3){ +return; +} +if(_3.documentElement){ +_3=_3.documentElement; +} +this.readCommonAttrs(_3); +for(var i=0;i<_3.childNodes.length;i++){ +var c=_3.childNodes[i]; +if(c.localName=="text"){ +this.property("label",c.childNodes.length?c.childNodes[0].nodeValue:""); +}else{ +if(c.localName=="rect"){ +if(c.getAttribute("x")!==null){ +this.start.x=parseFloat(c.getAttribute("x"),10); +} +if(c.getAttribute("width")!==null){ +this.end.x=parseFloat(c.getAttribute("width"),10)+parseFloat(c.getAttribute("x"),10); +} +if(c.getAttribute("y")!==null){ +this.start.y=parseFloat(c.getAttribute("y"),10); +} +if(c.getAttribute("height")!==null){ +this.end.y=parseFloat(c.getAttribute("height"),10)+parseFloat(c.getAttribute("y"),10); +} +if(c.getAttribute("r")!==null){ +this.radius=parseFloat(c.getAttribute("r"),10); +} +var _4=this.property("stroke"); +var _5=c.getAttribute("style"); +var m=_5.match(/stroke:([^;]+);/); +if(m){ +_4.color=m[1]; +this.property("fill",m[1]); +} +m=_5.match(/stroke-width:([^;]+);/); +if(m){ +_4.width=m[1]; +} +this.property("stroke",_4); +} +} +} +}; +p.initialize=function(_6){ +this.apply(_6); +this._pos(); +this.shape=this.figure.group.createGroup(); +this.shape.getEventSource().setAttribute("id",this.id); +this.rectShape=this.shape.createRect({x:this.start.x,y:this.start.y,width:this.end.x-this.start.x,height:this.end.y-this.start.y,r:this.radius}).setFill([255,255,255,0.1]); +this.rectShape.getEventSource().setAttribute("shape-rendering","crispEdges"); +this.labelShape=this.shape.createText({x:this.textPosition.x,y:this.textPosition.y,text:this.property("label"),align:this.textAlign}).setFill(this.property("fill")); +this.labelShape.getEventSource().setAttribute("id",this.id+"-labelShape"); +this.draw(); +}; +p.destroy=function(){ +if(!this.shape){ +return; +} +this.shape.remove(this.rectShape); +this.shape.remove(this.labelShape); +this.figure.group.remove(this.shape); +this.shape=this.rectShape=this.labelShape=null; +}; +p.getBBox=function(){ +var x=Math.min(this.start.x,this.end.x); +var y=Math.min(this.start.y,this.end.y); +var w=Math.max(this.start.x,this.end.x)-x; +var h=Math.max(this.start.y,this.end.y)-y; +return {x:x-2,y:y-2,width:w+4,height:h+4}; +}; +p.draw=function(_7){ +this.apply(_7); +this._pos(); +this.shape.setTransform(this.transform); +this.rectShape.setShape({x:this.start.x,y:this.start.y,width:this.end.x-this.start.x,height:this.end.y-this.start.y,r:this.radius}).setFill([255,255,255,0.1]); +this.labelShape.setShape({x:this.textPosition.x,y:this.textPosition.y,text:this.property("label")}).setFill(this.property("fill")); +this.zoom(); +}; +p.zoom=function(_8){ +if(this.rectShape){ +_8=_8||this.figure.zoomFactor; +ta.Annotation.prototype.zoom.call(this,_8); +_8=dojox.gfx.renderer=="vml"?1:_8; +this.rectShape.setStroke({color:this.property("fill"),width:1/_8}); +} +}; +p.serialize=function(){ +var s=this.property("stroke"); +return ""+""+""+this.property("label")+""+""; +}; +ta.Annotation.register("Preexisting"); +return dojox.sketch.PreexistingAnnotation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/PreexistingAnnotation.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/PreexistingAnnotation.js.uncompressed.js new file mode 100644 index 00000000..142f58d1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/PreexistingAnnotation.js.uncompressed.js @@ -0,0 +1,163 @@ +define("dojox/sketch/PreexistingAnnotation", ["dojo/_base/kernel", "dojo/_base/lang", "./Annotation", "./Anchor"], function(dojo){ + dojo.getObject("sketch", true, dojox); + + var ta=dojox.sketch; + ta.PreexistingAnnotation=function(figure, id){ + ta.Annotation.call(this, figure, id); + this.transform={dx:0, dy:0}; + this.start={ x:0, y:0 }; + this.end={ x:200, y:200 }; + this.radius=8; + this.textPosition={ x:196, y:196 }; + this.textOffset=4; + this.textAlign="end"; + + //this.property('label',this.id); + this.rectShape=null; + this.labelShape=null; + + this.anchors.start=new ta.Anchor(this, "start"); + this.anchors.end=new ta.Anchor(this, "end"); + }; + ta.PreexistingAnnotation.prototype=new ta.Annotation; + var p=ta.PreexistingAnnotation.prototype; + p.constructor=ta.PreexistingAnnotation; + + p.type=function(){ return 'Preexisting' }; + p.getType=function(){ return ta.PreexistingAnnotation; }; + + p._pos=function(){ + var x=Math.min(this.start.x, this.end.x); + var y=Math.min(this.start.y, this.end.y); + var w=Math.max(this.start.x, this.end.x); + var h=Math.max(this.start.y, this.end.y); + this.start={ x:x, y:y }; + this.end={ x:w, y:h }; + this.textPosition={ x:this.end.x-this.textOffset, y:this.end.y-this.textOffset }; + }; + p.apply=function(obj){ + if(!obj){ return; } + if(obj.documentElement){ obj=obj.documentElement; } + this.readCommonAttrs(obj); + + for(var i=0; i' + + '' + + '' + + this.property('label') + + '' + + ''; + }; + + ta.Annotation.register("Preexisting"); + return dojox.sketch.PreexistingAnnotation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/README new file mode 100644 index 00000000..217d3e96 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/README @@ -0,0 +1,58 @@ +------------------------------------------------------------------------------- +dojox.sketch +------------------------------------------------------------------------------- +Version 0.1 +Release date: 28/01/2008 +------------------------------------------------------------------------------- +Project state: +experimental +------------------------------------------------------------------------------- +Credits + Contributed by TeamPatent (supported by National Science Foundation grant 638334) + Tom Trenka (ttrenka@gmail.com) + Heng Liu/LiuCougar (heng@teampatent.com) +------------------------------------------------------------------------------- +Project description + +A cross-browser drawing editor based on dojox.gfx. +------------------------------------------------------------------------------- +Dependencies: + +dijit (Toolbar, Button, Slider) +dojox.gfx +dojox.xml +------------------------------------------------------------------------------- +Documentation + +Currently, 5 shapes are supported: line, single arrow line, double arrow line, +underline text and text. The first 3 shapes can have optinal text associated. + +Shapes can be added, deleted, moved and modified. All of these operations can +be undo-ed or redo-ed. + +TODO: + * provide UI to change various properties on shapes (fill, stroke, text) and +allow changing of background image + * serialize/unserialize in dojox.gfx to svg (and maybe vml as well?) (or another +simplier format? such as a json based one, which is easier to parse, and then +write a convertor to convert the json format to svg or any other format?) + * Move mousedown/up/move to each shape (to prepare for the following) + * Add shapes for other primitive shapes (needs to decide which primitive +dojox.gfx.shapes are useful), and add in support for user to group any +shapes/groups to form a single "compound shape" (need to add support to set +fill/stroke properties on the entire compound shape, which shallpropagate to +all children shapes) +------------------------------------------------------------------------------- +Installation instructions + +Install dijit, dojox.gfx and dojox.xml first + +Grab the following from the Dojo SVN Repository: +http://svn.dojotoolkit.org/var/src/dojo/dojox/trunk/sketch.js +http://svn.dojotoolkit.org/var/src/dojo/dojox/trunk/sketch/* + +Install into the following directory structure: +/dojox/sketch/ + +...which should be at the same level as your Dojo checkout. +------------------------------------------------------------------------------- diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/SingleArrowAnnotation.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/SingleArrowAnnotation.js new file mode 100644 index 00000000..d700c8b4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/SingleArrowAnnotation.js @@ -0,0 +1,175 @@ +//>>built +define("dojox/sketch/SingleArrowAnnotation",["dojo/_base/kernel","dojo/_base/lang","./Annotation","./Anchor"],function(_1){ +_1.getObject("sketch",true,dojox); +var ta=dojox.sketch; +ta.SingleArrowAnnotation=function(_2,id){ +ta.Annotation.call(this,_2,id); +this.transform={dx:0,dy:0}; +this.start={x:0,y:0}; +this.control={x:100,y:-50}; +this.end={x:200,y:0}; +this.textPosition={x:0,y:0}; +this.textOffset=4; +this.textYOffset=10; +this.rotation=0; +this.pathShape=null; +this.arrowhead=null; +this.arrowheadGroup=null; +this.labelShape=null; +this.anchors.start=new ta.Anchor(this,"start"); +this.anchors.control=new ta.Anchor(this,"control"); +this.anchors.end=new ta.Anchor(this,"end"); +}; +ta.SingleArrowAnnotation.prototype=new ta.Annotation; +var p=ta.SingleArrowAnnotation.prototype; +p.constructor=ta.SingleArrowAnnotation; +p.type=function(){ +return "SingleArrow"; +}; +p.getType=function(){ +return ta.SingleArrowAnnotation; +}; +p._rot=function(){ +var _3=this.control.y-this.start.y; +var _4=this.control.x-this.start.x; +this.rotation=Math.atan2(_3,_4); +}; +p._pos=function(){ +var _5=this.textOffset,x=0,y=0; +var _6=this.calculate.slope(this.control,this.end); +this.textAlign="middle"; +if(Math.abs(_6)>=1){ +x=this.end.x+this.calculate.dx(this.control,this.end,_5); +if(this.control.y>this.end.y){ +y=this.end.y-_5; +}else{ +y=this.end.y+_5+this.textYOffset; +} +}else{ +if(_6==0){ +x=this.end.x+_5; +y=this.end.y+this.textYOffset; +}else{ +if(this.start.x>this.end.x){ +x=this.end.x-_5; +this.textAlign="end"; +}else{ +x=this.end.x+_5; +this.textAlign="start"; +} +if(this.start.y1?20:Math.floor(20/pct),w=pct>1?5:Math.floor(5/pct),h=pct>1?3:Math.floor(3/pct); +this.arrowhead.setShape("M0,0 l"+l+",-"+w+" -"+h+","+w+" "+h+","+w+" Z"); +} +} +}; +p.getBBox=function(){ +var x=Math.min(this.start.x,this.control.x,this.end.x); +var y=Math.min(this.start.y,this.control.y,this.end.y); +var w=Math.max(this.start.x,this.control.x,this.end.x)-x; +var h=Math.max(this.start.y,this.control.y,this.end.y)-y; +return {x:x,y:y,width:w,height:h}; +}; +p.serialize=function(){ +var s=this.property("stroke"); +var r=this.rotation*(180/Math.PI); +r=Math.round(r*Math.pow(10,4))/Math.pow(10,4); +return ""+""+""+""+""+""+this.property("label")+""+""; +}; +ta.Annotation.register("SingleArrow"); +return dojox.sketch.SingleArrowAnnotation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/SingleArrowAnnotation.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/SingleArrowAnnotation.js.uncompressed.js new file mode 100644 index 00000000..12b8dbc7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/SingleArrowAnnotation.js.uncompressed.js @@ -0,0 +1,226 @@ +define("dojox/sketch/SingleArrowAnnotation", ["dojo/_base/kernel", "dojo/_base/lang", "./Annotation", "./Anchor"], function(dojo){ + dojo.getObject("sketch", true, dojox); + + var ta=dojox.sketch; + ta.SingleArrowAnnotation=function(figure, id){ + ta.Annotation.call(this, figure, id); + this.transform={ dx:0, dy:0 }; + this.start={x:0, y:0}; + this.control={x:100, y:-50}; + this.end={x:200, y:0}; + this.textPosition={ x:0, y:0 }; + this.textOffset=4; + //this.textAlign="middle"; + this.textYOffset=10; + this.rotation=0; + +// this.property('label',this.id); +// this.label=this.id; + this.pathShape=null; + this.arrowhead=null; + this.arrowheadGroup=null; + this.labelShape=null; + + this.anchors.start=new ta.Anchor(this, "start"); + this.anchors.control=new ta.Anchor(this, "control"); + this.anchors.end=new ta.Anchor(this, "end"); + }; + ta.SingleArrowAnnotation.prototype=new ta.Annotation; + var p=ta.SingleArrowAnnotation.prototype; + p.constructor=ta.SingleArrowAnnotation; + + p.type=function(){ return 'SingleArrow'; }; + p.getType=function(){ return ta.SingleArrowAnnotation; }; + + // helper functions + p._rot=function(){ + // arrowhead rotation + var opp=this.control.y-this.start.y; + var adj=this.control.x-this.start.x; + //if(!adj){ adj=1; } + this.rotation=Math.atan2(opp,adj); + }; + p._pos=function(){ + // text position + var offset=this.textOffset, x=0, y=0; + var slope=this.calculate.slope(this.control, this.end); + this.textAlign="middle"; + if(Math.abs(slope)>=1){ + x=this.end.x+this.calculate.dx(this.control, this.end, offset); + if(this.control.y>this.end.y){ y=this.end.y-offset; } + else{ y=this.end.y+offset+this.textYOffset; } + } else if(slope==0){ + x=this.end.x+offset; + y=this.end.y+this.textYOffset; + } else { + if(this.start.x>this.end.x){ + x=this.end.x-offset; + this.textAlign="end"; + } else { + x=this.end.x+offset; + this.textAlign="start"; + } + if(this.start.y1?20:Math.floor(20/pct), w=pct>1?5:Math.floor(5/pct),h=pct>1?3:Math.floor(3/pct); + this.arrowhead.setShape("M0,0 l"+l+",-"+w+" -"+h+","+w+" "+h+","+w+" Z"); + } + } + }; + + p.getBBox=function(){ + var x=Math.min(this.start.x, this.control.x, this.end.x); + var y=Math.min(this.start.y, this.control.y, this.end.y); + var w=Math.max(this.start.x, this.control.x, this.end.x)-x; + var h=Math.max(this.start.y, this.control.y, this.end.y)-y; + return { x:x, y:y, width:w, height:h }; + }; + + p.serialize=function(){ + var s=this.property('stroke'); + var r=this.rotation*(180/Math.PI); + r=Math.round(r*Math.pow(10,4))/Math.pow(10,4); + return '' + + '' + + '' + + '' + + '' + + '' + + this.property('label') + + '' + + ''; + }; + + ta.Annotation.register("SingleArrow"); + return dojox.sketch.SingleArrowAnnotation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Slider.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Slider.js new file mode 100644 index 00000000..ff392d1e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Slider.js @@ -0,0 +1,29 @@ +//>>built +define("dojox/sketch/Slider",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/declare","dijit/form/HorizontalSlider","./_Plugin"],function(_1){ +_1.getObject("sketch",true,dojox); +_1.declare("dojox.sketch.Slider",dojox.sketch._Plugin,{_initButton:function(){ +this.slider=new dijit.form.HorizontalSlider({minimum:5,maximum:100,style:"width:100px;",baseClass:"dijitInline dijitSlider"}); +this.slider._movable.node.title="Double Click to \"Zoom to Fit\""; +this.connect(this.slider,"onChange","_setZoom"); +this.connect(this.slider.sliderHandle,"ondblclick","_zoomToFit"); +},_zoomToFit:function(){ +var r=this.figure.getFit(); +this.slider.attr("value",this.slider.maximumr?this.slider.minimum:r)); +},_setZoom:function(v){ +if(v&&this.figure){ +this.figure.zoom(v); +} +},reset:function(){ +this.slider.attr("value",this.slider.maximum); +this._zoomToFit(); +},setToolbar:function(t){ +this._initButton(); +t.addChild(this.slider); +if(!t._reset2Zoom){ +t._reset2Zoom=true; +this.connect(t,"reset","reset"); +} +}}); +dojox.sketch.registerTool("Slider",dojox.sketch.Slider); +return dojox.sketch.Slider; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Slider.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Slider.js.uncompressed.js new file mode 100644 index 00000000..9e07b594 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Slider.js.uncompressed.js @@ -0,0 +1,42 @@ +define("dojox/sketch/Slider", [ + "dojo/_base/kernel", + "dojo/_base/lang", + "dojo/_base/declare", + "dijit/form/HorizontalSlider", + "./_Plugin" +], function(dojo){ + dojo.getObject("sketch", true, dojox); + dojo.declare("dojox.sketch.Slider", dojox.sketch._Plugin,{ + _initButton: function(){ + this.slider=new dijit.form.HorizontalSlider({minimum:5,maximum:100,style:"width:100px;",baseClass:'dijitInline dijitSlider'}); + this.slider._movable.node.title='Double Click to "Zoom to Fit"'; //I18N + this.connect(this.slider,'onChange','_setZoom'); + this.connect(this.slider.sliderHandle,'ondblclick','_zoomToFit'); + }, + _zoomToFit: function(){ + var r=this.figure.getFit(); + this.slider.attr('value',this.slider.maximumr?this.slider.minimum:r)); + }, + _setZoom: function(v){ + if(v && this.figure){ + this.figure.zoom(v); + } + }, + reset: function(){ + //reset slider to maximum so that onChange will be fired when _zoomToFit is called + this.slider.attr('value',this.slider.maximum); + this._zoomToFit(); + }, + setToolbar: function(t){ + this._initButton(); + t.addChild(this.slider); + if(!t._reset2Zoom){ + t._reset2Zoom=true; + this.connect(t,'reset','reset'); + } + } + }); + + dojox.sketch.registerTool("Slider", dojox.sketch.Slider); + return dojox.sketch.Slider; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Toolbar.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Toolbar.js new file mode 100644 index 00000000..15dce5fb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/Toolbar.js @@ -0,0 +1,74 @@ +//>>built +define("dojox/sketch/Toolbar",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/declare","./Annotation","dijit/Toolbar","dijit/form/Button"],function(_1){ +_1.getObject("sketch",true,dojox); +_1.declare("dojox.sketch.ButtonGroup",null,{constructor:function(){ +this._childMaps={}; +this._children=[]; +},add:function(_2){ +this._childMaps[_2]=_2.connect(_2,"onActivate",_1.hitch(this,"_resetGroup",_2)); +this._children.push(_2); +},_resetGroup:function(p){ +var cs=this._children; +_1.forEach(cs,function(c){ +if(p!=c&&c["attr"]){ +c.attr("checked",false); +} +}); +}}); +_1.declare("dojox.sketch.Toolbar",dijit.Toolbar,{figure:null,plugins:null,postCreate:function(){ +this.inherited(arguments); +this.shapeGroup=new dojox.sketch.ButtonGroup; +if(!this.plugins){ +this.plugins=["Lead","SingleArrow","DoubleArrow","Underline","Preexisting","Slider"]; +} +this._plugins=[]; +_1.forEach(this.plugins,function(_3){ +var _4=_1.isString(_3)?_3:_3.name; +var p=new dojox.sketch.tools[_4](_3.args||{}); +this._plugins.push(p); +p.setToolbar(this); +if(!this._defaultTool&&p.button){ +this._defaultTool=p; +} +},this); +},setFigure:function(f){ +this.figure=f; +this.connect(f,"onLoad","reset"); +_1.forEach(this._plugins,function(p){ +p.setFigure(f); +}); +},destroy:function(){ +_1.forEach(this._plugins,function(p){ +p.destroy(); +}); +this.inherited(arguments); +delete this._defaultTool; +delete this._plugins; +},addGroupItem:function(_5,_6){ +if(_6!="toolsGroup"){ +console.error("not supported group "+_6); +return; +} +this.shapeGroup.add(_5); +},reset:function(){ +this._defaultTool.activate(); +},_setShape:function(s){ +if(!this.figure.surface){ +return; +} +if(this.figure.hasSelections()){ +for(var i=0;i>built +define("dojox/sketch/UnderlineAnnotation",["./Annotation","./Anchor"],function(){ +var ta=dojox.sketch; +ta.UnderlineAnnotation=function(_1,id){ +ta.Annotation.call(this,_1,id); +this.transform={dx:0,dy:0}; +this.start={x:0,y:0}; +this.property("label","#"); +this.labelShape=null; +this.lineShape=null; +}; +ta.UnderlineAnnotation.prototype=new ta.Annotation; +var p=ta.UnderlineAnnotation.prototype; +p.constructor=ta.UnderlineAnnotation; +p.type=function(){ +return "Underline"; +}; +p.getType=function(){ +return ta.UnderlineAnnotation; +}; +p.apply=function(_2){ +if(!_2){ +return; +} +if(_2.documentElement){ +_2=_2.documentElement; +} +this.readCommonAttrs(_2); +for(var i=0;i<_2.childNodes.length;i++){ +var c=_2.childNodes[i]; +if(c.localName=="text"){ +this.property("label",c.childNodes[0].nodeValue); +var _3=c.getAttribute("style"); +var m=_3.match(/fill:([^;]+);/); +if(m){ +var _4=this.property("stroke"); +_4.collor=m[1]; +this.property("stroke",_4); +this.property("fill",_4.collor); +} +} +} +}; +p.initialize=function(_5){ +this.apply(_5); +this.shape=this.figure.group.createGroup(); +this.shape.getEventSource().setAttribute("id",this.id); +this.labelShape=this.shape.createText({x:0,y:0,text:this.property("label"),decoration:"underline",align:"start"}); +this.labelShape.getEventSource().setAttribute("id",this.id+"-labelShape"); +this.lineShape=this.shape.createLine({x1:1,x2:this.labelShape.getTextWidth(),y1:2,y2:2}); +this.lineShape.getEventSource().setAttribute("shape-rendering","crispEdges"); +this.draw(); +}; +p.destroy=function(){ +if(!this.shape){ +return; +} +this.shape.remove(this.labelShape); +this.shape.remove(this.lineShape); +this.figure.group.remove(this.shape); +this.shape=this.lineShape=this.labelShape=null; +}; +p.getBBox=function(){ +var b=this.getTextBox(); +var z=this.figure.zoomFactor; +return {x:0,y:(b.h*-1+4)/z,width:(b.w+2)/z,height:b.h/z}; +}; +p.draw=function(_6){ +this.apply(_6); +this.shape.setTransform(this.transform); +this.labelShape.setShape({x:0,y:0,text:this.property("label")}).setFill(this.property("fill")); +this.zoom(); +}; +p.zoom=function(_7){ +if(this.labelShape){ +_7=_7||this.figure.zoomFactor; +var _8=dojox.gfx.renderer=="vml"?0:2/_7; +ta.Annotation.prototype.zoom.call(this,_7); +_7=dojox.gfx.renderer=="vml"?1:_7; +this.lineShape.setShape({x1:0,x2:this.getBBox().width-_8,y1:2,y2:2}).setStroke({color:this.property("fill"),width:1/_7}); +if(this.mode==ta.Annotation.Modes.Edit){ +this.drawBBox(); +} +} +}; +p.serialize=function(){ +var s=this.property("stroke"); +return ""+""+this.property("label")+""+""; +}; +dojo.declare("dojox.sketch.UnderlineAnnotationTool",ta.AnnotationTool,{onMouseDown:function(){ +},onMouseUp:function(){ +var f=this.figure; +if(!f._start){ +return; +} +f._end={x:0,y:0}; +this._create(f._start,{x:f._start.x+10,y:f._start.y+10}); +},onMouseMove:function(){ +}}); +ta.Annotation.register("Underline",ta.UnderlineAnnotationTool); +return dojox.sketch.UnderlineAnnotation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UnderlineAnnotation.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UnderlineAnnotation.js.uncompressed.js new file mode 100644 index 00000000..0b58b383 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UnderlineAnnotation.js.uncompressed.js @@ -0,0 +1,144 @@ +define("dojox/sketch/UnderlineAnnotation", ["./Annotation", "./Anchor"], function(){ + var ta=dojox.sketch; + ta.UnderlineAnnotation=function(figure, id){ + ta.Annotation.call(this, figure, id); + this.transform={dx:0, dy:0}; + this.start={x:0, y:0}; + this.property('label','#'); + this.labelShape=null; + this.lineShape=null; + //this.anchors.start=new ta.Anchor(this, "start"); + }; + ta.UnderlineAnnotation.prototype=new ta.Annotation; + var p=ta.UnderlineAnnotation.prototype; + p.constructor=ta.UnderlineAnnotation; + + p.type=function(){ return 'Underline'; }; + p.getType=function(){ return ta.UnderlineAnnotation; }; + + p.apply=function(obj){ + if(!obj){ return; } + if(obj.documentElement){ obj=obj.documentElement; } + this.readCommonAttrs(obj); + + for(var i=0; i' + //+ '' + + '' + + this.property('label') + + '' + + ''; + }; + + //customize AnnotationTool to place a underlilne shape onmouseup, no need + //to drag a box (like other shapes) + dojo.declare("dojox.sketch.UnderlineAnnotationTool", ta.AnnotationTool, { + onMouseDown: function(){}, + onMouseUp: function(){ + var f=this.figure; + if(!f._start){ + return; + } + //zero out end so that the clickover is shown at the right pos + f._end={x:0,y:0}; + this._create(f._start,{x:f._start.x+10,y:f._start.y+10}); + }, + onMouseMove: function(){} + }); + ta.Annotation.register("Underline", ta.UnderlineAnnotationTool); + return dojox.sketch.UnderlineAnnotation; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UndoStack.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UndoStack.js new file mode 100644 index 00000000..5cc80c49 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UndoStack.js @@ -0,0 +1,62 @@ +//>>built +define("dojox/sketch/UndoStack",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/declare","../xml/DomParser"],function(_1){ +_1.getObject("sketch",true,dojox); +var ta=dojox.sketch; +ta.CommandTypes={Create:"Create",Move:"Move",Modify:"Modify",Delete:"Delete",Convert:"Convert"}; +_1.declare("dojox.sketch.UndoStack",null,{constructor:function(_2){ +this.figure=_2; +this._steps=[]; +this._undoedSteps=[]; +},apply:function(_3,_4,to){ +if(!_4&&!to&&_3.fullText){ +this.figure.setValue(_3.fullText); +return; +} +var _5=_4.shapeText; +var _6=to.shapeText; +if(_5.length==0&&_6.length==0){ +return; +} +if(_5.length==0){ +var o=dojox.xml.DomParser.parse(_6).documentElement; +var a=this.figure._loadAnnotation(o); +if(a){ +this.figure._add(a); +} +return; +} +if(_6.length==0){ +var _7=this.figure.getAnnotator(_4.shapeId); +this.figure._delete([_7],true); +return; +} +var _8=this.figure.getAnnotator(to.shapeId); +var no=dojox.xml.DomParser.parse(_6).documentElement; +_8.draw(no); +this.figure.select(_8); +return; +},add:function(_9,_a,_b){ +var id=_a?_a.id:""; +var _c=_a?_a.serialize():""; +if(_9==ta.CommandTypes.Delete){ +_c=""; +} +var _d={cmdname:_9,before:{shapeId:id,shapeText:_b||""},after:{shapeId:id,shapeText:_c}}; +this._steps.push(_d); +this._undoedSteps=[]; +},destroy:function(){ +},undo:function(){ +var _e=this._steps.pop(); +if(_e){ +this._undoedSteps.push(_e); +this.apply(_e,_e.after,_e.before); +} +},redo:function(){ +var _f=this._undoedSteps.pop(); +if(_f){ +this._steps.push(_f); +this.apply(_f,_f.before,_f.after); +} +}}); +return dojox.sketch.UndoStack; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UndoStack.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UndoStack.js.uncompressed.js new file mode 100644 index 00000000..3091b532 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/UndoStack.js.uncompressed.js @@ -0,0 +1,105 @@ +define("dojox/sketch/UndoStack", [ + "dojo/_base/kernel", + "dojo/_base/lang", + "dojo/_base/declare", + "../xml/DomParser" +], function(dojo){ + dojo.getObject("sketch", true, dojox); + var ta=dojox.sketch; + ta.CommandTypes={ Create:"Create", Move:"Move", Modify:"Modify", Delete:"Delete", Convert:"Convert"}; + + dojo.declare("dojox.sketch.UndoStack",null,{ + constructor: function(figure){ + this.figure=figure; + this._steps=[]; + this._undoedSteps=[]; + }, + apply: function(state, from, to){ + // the key here is to neutrally move from one state to another. + // we let the individual functions (i.e. undo and redo) actually + // determine the from and to; all we do here is implement it. + + // check whether this is a fullText step + if(!from && !to && state.fullText){ + this.figure.setValue(state.fullText); + return; + } + + var fromText=from.shapeText; + var toText=to.shapeText; + + if(fromText.length==0&&toText.length==0){ + // nothing to reapply? + return; + } + if(fromText.length==0){ + // We are creating. + var o=dojox.xml.DomParser.parse(toText).documentElement; + var a=this.figure._loadAnnotation(o); + if(a) this.figure._add(a); + return; + } + if(toText.length==0){ + // we are deleting. + var ann=this.figure.getAnnotator(from.shapeId); + this.figure._delete([ann],true); + return; + } + + // we can simply reinit and draw from the shape itself, + // regardless of the actual command. + var nann=this.figure.getAnnotator(to.shapeId); + var no=dojox.xml.DomParser.parse(toText).documentElement; + nann.draw(no); + this.figure.select(nann); + return; + }, + // stack methods. + add: function(/*String*/cmd, /*ta.Annotation?*/ann, /*String?*/before){ + var id=ann?ann.id:''; + //var bbox=ann?ann.getBBox():{}; + var after=ann?ann.serialize():""; + if(cmd==ta.CommandTypes.Delete){ after=""; } + + /*if(ann){ + // fix the bbox x/y coords + var t=ann.transform; + bbox.x+=t.dx; + bbox.y+=t.dy; + }*/ + var state={ + cmdname:cmd, + //bbox:bbox, +// fullText:fullText, + before:{ + shapeId: id, + shapeText:before||'' + }, + after:{ + shapeId: id, + shapeText:after + } + }; + //console.log('dojox.sketch history add',state); + this._steps.push(state); + this._undoedSteps = []; + }, + destroy: function(){}, + undo: function(){ + var state=this._steps.pop(); + if(state){ + this._undoedSteps.push(state); + this.apply(state,state.after,state.before); + } + }, + redo: function(){ + var state=this._undoedSteps.pop(); + if(state){ + this._steps.push(state); + this.apply(state,state.before,state.after); + } + } + }); + + return dojox.sketch.UndoStack; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/_Plugin.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/_Plugin.js new file mode 100644 index 00000000..5aec6d02 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/_Plugin.js @@ -0,0 +1,42 @@ +//>>built +define("dojox/sketch/_Plugin",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/array","dojo/_base/declare","dojo/_base/connect","dijit/form/ToggleButton"],function(_1){ +return _1.declare("dojox.sketch._Plugin",null,{constructor:function(_2){ +if(_2){ +_1.mixin(this,_2); +} +this._connects=[]; +},figure:null,iconClassPrefix:"dojoxSketchIcon",itemGroup:"toolsGroup",button:null,queryCommand:null,shape:"",useDefaultCommand:true,buttonClass:dijit.form.ToggleButton,_initButton:function(){ +if(this.shape.length){ +var _3=this.iconClassPrefix+" "+this.iconClassPrefix+this.shape.charAt(0).toUpperCase()+this.shape.substr(1); +if(!this.button){ +var _4={label:this.shape,showLabel:false,iconClass:_3,dropDown:this.dropDown,tabIndex:"-1"}; +this.button=new this.buttonClass(_4); +this.connect(this.button,"onClick","activate"); +} +} +},attr:function(_5,_6){ +return this.button.attr(_5,_6); +},onActivate:function(){ +},activate:function(e){ +this.onActivate(); +this.figure.setTool(this); +this.attr("checked",true); +},onMouseDown:function(e){ +},onMouseMove:function(e){ +},onMouseUp:function(e){ +},destroy:function(f){ +_1.forEach(this._connects,_1.disconnect); +},connect:function(o,f,tf){ +this._connects.push(_1.connect(o,f,this,tf)); +},setFigure:function(_7){ +this.figure=_7; +},setToolbar:function(_8){ +this._initButton(); +if(this.button){ +_8.addChild(this.button); +} +if(this.itemGroup){ +_8.addGroupItem(this,this.itemGroup); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/_Plugin.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/_Plugin.js.uncompressed.js new file mode 100644 index 00000000..55166b19 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/_Plugin.js.uncompressed.js @@ -0,0 +1,79 @@ +define("dojox/sketch/_Plugin", [ + "dojo/_base/kernel", + "dojo/_base/lang", + "dojo/_base/array", + "dojo/_base/declare", + "dojo/_base/connect", + "dijit/form/ToggleButton" +], function(dojo){ + return dojo.declare("dojox.sketch._Plugin", null, { + // summary: + // This represents a "plugin" to the dojox.sketch.Figure, which is basically + // a single button on the Toolbar and some associated code + constructor: function(/*Object?*/args){ + if(args){ + dojo.mixin(this, args); + } + this._connects=[]; + }, + + figure: null, + iconClassPrefix: "dojoxSketchIcon", + itemGroup: 'toolsGroup', + button: null, + queryCommand: null, + shape: "", + useDefaultCommand: true, + buttonClass: dijit.form.ToggleButton, + _initButton: function(){ + if(this.shape.length){ + //TODO: i18n + // var label = dojox.sketch.shapes[this.shape]; + var className = this.iconClassPrefix+" "+this.iconClassPrefix + this.shape.charAt(0).toUpperCase() + this.shape.substr(1); + if(!this.button){ + var props = { + label: this.shape, //I18N + showLabel: false, + iconClass: className, + dropDown: this.dropDown, + tabIndex: "-1" + }; + this.button = new this.buttonClass(props); + this.connect(this.button,'onClick','activate'); + } + } + }, + attr: function(name,/*?*/value){ + return this.button.attr(name,value); + }, + onActivate: function(){}, + activate: function(/*?*/e){ + this.onActivate(); + this.figure.setTool(this); + this.attr('checked',true); + }, + onMouseDown: function(e){}, + onMouseMove: function(e){}, + onMouseUp: function(e){}, + destroy: function(f){ + dojo.forEach(this._connects,dojo.disconnect); + }, + connect: function(o,f,tf){ + this._connects.push(dojo.connect(o,f,this,tf)); + }, + setFigure: function(/*dijit._Widget*/ figure){ + // FIXME: detatch from previous figure!! + this.figure = figure; + }, + setToolbar: function(/*dijit._Widget*/ toolbar){ + // FIXME: prevent creating this if we don't need to (i.e., figure can't handle our command) + this._initButton(); + if(this.button){ + toolbar.addChild(this.button); + } + if(this.itemGroup){ + toolbar.addGroupItem(this,this.itemGroup); + } + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/resources/images/icons.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/resources/images/icons.gif new file mode 100644 index 0000000000000000000000000000000000000000..ab33b0aefd238b5738e86049decfbd1c87c79545 GIT binary patch literal 600 zcmZ?wbhEHb6kwRha8-@L#l@wgqvPGXcX#jJJ#*&F?%liR&71f7^=o5e5`I? zQh9mIyLUUEJ$qJMTr4RmxoTC*|NqAr7#L>GoSBxE_W%EXAe&l1@h1x-1A`ia4#+@| zpBUKwJ4`O{(2?ptv1H>CooVv|UQE0x6SR8Sin1=zxYf5ZKHXN)KKyK5)!Dq=_thMk zv>g~$eZ3ev^ZIo6hHB5+re==1in7?Eg5JLV2`;QEv8>8dLZ?li*)ZE{Rs-|=xidUx zEnPOxck;xw>wKBA_}R1Aw#07Rx;Lw%q$*k8`X-r4twycF*2N6;lX$|LG^;K z3N!P?^>^=i9yk%NySr(R>Y<9hSDtZ)Hzk3Y=#tEV zW|ypaCs(#CzqomVN5_KgVY=pm1&>elE(?1XQ&A*c(r|$xPjI)4OUnyy^LI?_?UHMb nW=9-p+EM@5tz$xk;ly1^5)KUuZhR6rQ}*{!s<&0V0E0CEi<$9< literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/resources/sketch.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/resources/sketch.css new file mode 100644 index 00000000..74513955 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sketch/resources/sketch.css @@ -0,0 +1,17 @@ +.dojoxSketchIcon{ + background-repeat:no-repeat; + height:16px; + min-width:16px; + text-align:center; + width:16px; +} +.dojoxSketchIcon { background-image:url(images/icons.gif); } +.ShowCallouts{ background-position:0px 0px; } +.PreviousCallout{ background-position:0px -16px; } +.NextCallout{ background-position:0px -32px; } +.dojoxSketchIconLead{ background-position:0px -48px; } +.dojoxSketchIconUnderline{ background-position:0px -64px; } +.dojoxSketchIconSingleArrow{ background-position:0px -80px; } +.dojoxSketchIconBrace{ background-position:0px -96px; } +.dojoxSketchIconDoubleArrow{ background-position:0px -112px; } +.dojoxSketchIconPreexisting{ background-position:0px -128px; } diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket.js new file mode 100644 index 00000000..5f781d0c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket.js @@ -0,0 +1,111 @@ +//>>built +define("dojox/socket",["dojo/_base/array","dojo/_base/lang","dojo/_base/xhr","dojo/aspect","dojo/on","dojo/Evented","dojo/_base/url"],function(_1,_2,_3,_4,on,_5,_6){ +var _7=window.WebSocket; +var _8=function(_9){ +if(typeof _9=="string"){ +_9={url:_9}; +} +return _7?_8.WebSocket(_9,true):_8.LongPoll(_9); +}; +_8.WebSocket=function(_a,_b){ +var _c=document.baseURI||window.location.href; +var ws=new _7(new _6(_c.replace(/^http/i,"ws"),_a.url)); +ws.on=function(_d,_e){ +ws.addEventListener(_d,_e,true); +}; +var _f; +_4.after(ws,"onopen",function(_10){ +_f=true; +},true); +_4.after(ws,"onclose",function(_11){ +if(_f){ +return; +} +if(_b){ +_8.replace(ws,_8.LongPoll(_a),true); +} +},true); +return ws; +}; +_8.replace=function(_12,_13,_14){ +_12.send=_2.hitch(_13,"send"); +_12.close=_2.hitch(_13,"close"); +var _15=function(_16){ +(_13.addEventListener||_13.on).call(_13,_16,function(_17){ +on.emit(_12,_17.type,_17); +},true); +}; +if(_14){ +_15("open"); +} +_1.forEach(["message","close","error"],_15); +}; +_8.LongPoll=function(_18){ +var _19=false,_1a=true,_1b,_1c=[]; +var _1d,_1e; +var _1f={send:function(_20){ +var _21=_2.delegate(_18); +_21.rawBody=_20; +clearTimeout(_1b); +var _22=_1a?(_1a=false)||_1f.firstRequest(_21):_1f.transport(_21); +_1c.push(_22); +_22.then(function(_23){ +_1f.readyState=1; +_1c.splice(_1.indexOf(_1c,_22),1); +if(!_1c.length){ +_1b=setTimeout(_1e,_18.interval); +} +if(_23){ +_1d("message",{data:_23},_22); +} +},function(_24){ +_1c.splice(_1.indexOf(_1c,_22),1); +if(!_19){ +_1d("error",{error:_24},_22); +if(!_1c.length){ +_1f.readyState=3; +_1d("close",{wasClean:false},_22); +} +} +}); +return _22; +},close:function(){ +_1f.readyState=2; +_19=true; +var i; +for(i=0;i<_1c.length;i++){ +_1c[i].cancel(); +} +_1f.readyState=3; +_1d("close",{wasClean:true}); +},transport:_18.transport||_3.post,args:_18,url:_18.url,readyState:0,CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3,on:_5.prototype.on,firstRequest:function(_25){ +var _26=(_25.headers||(_25.headers={})); +_26.Pragma="start-long-poll"; +try{ +return this.transport(_25); +} +finally{ +delete _26.Pragma; +} +}}; +_1d=function(_27,_28,_29){ +if(_1f["on"+_27]){ +_28.ioArgs=_29&&_29.ioArgs; +_28.type=_27; +on.emit(_1f,_27,_28); +} +}; +_1e=function(){ +if(_1f.readyState==0){ +_1d("open",{}); +} +if(!_1c.length){ +_1f.send(); +} +}; +_1f.connect=_1f.on; +setTimeout(_1e); +return _1f; +}; +return _8; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket.js.uncompressed.js new file mode 100644 index 00000000..675adf7c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket.js.uncompressed.js @@ -0,0 +1,228 @@ +define("dojox/socket", [ + "dojo/_base/array", + "dojo/_base/lang", + "dojo/_base/xhr", + "dojo/aspect", + "dojo/on", + "dojo/Evented", + "dojo/_base/url" +], function(array, lang, xhr, aspect, on, Evented, dBaseUrl) { + +var WebSocket = window.WebSocket; + +var Socket = function(/*dojo.__XhrArgs*/ argsOrUrl){ + // summary: + // Provides a simple socket connection using WebSocket, or alternate + // communication mechanisms in legacy browsers for comet-style communication. This is based + // on the WebSocket API and returns an object that implements the WebSocket interface: + // http://dev.w3.org/html5/websockets/#websocket + // description: + // Provides socket connections. This can be used with virtually any Comet protocol. + // argsOrUrl: + // This uses the same arguments as the other I/O functions in Dojo, or a + // URL to connect to. The URL should be a relative URL in order to properly + // work with WebSockets (it can still be host relative, like //other-site.org/endpoint) + // returns: + // An object that implements the WebSocket API + // example: + // | require(["dojox/socket", "dojo/aspect"], function(socket, aspect) { + // | var sock = socket({"url://comet-server/comet"); + // | // we could also add auto-reconnect support + // | // now we can connect to standard HTML5 WebSocket-style events + // | aspect.after(socket, "onmessage", function(event){ + // | var message = event.data; + // | // do something with the message + // | }); + // | // send something + // | sock.send("hi there"); + // | ... + // | }); + // You can also use the Reconnect module: + // | require["dojox/socket", "dojox/socket/Reconnect"], function(dxSocket, reconnect){ + // | var socket = dxSocket({url:"/comet"}); + // | // add auto-reconnect support + // | socket = reconnect(socket); + if(typeof argsOrUrl == "string"){ + argsOrUrl = {url: argsOrUrl}; + } + return WebSocket ? Socket.WebSocket(argsOrUrl, true) : Socket.LongPoll(argsOrUrl); +}; + +Socket.WebSocket = function(args, fallback){ + // summary: + // A wrapper for WebSocket, than handles standard args and relative URLs + var baseURI = document.baseURI || window.location.href; + var ws = new WebSocket(new dBaseUrl(baseURI.replace(/^http/i,'ws'), args.url)); + ws.on = function(type, listener){ + ws.addEventListener(type, listener, true); + }; + var opened; + aspect.after(ws, "onopen", function(event){ + opened = true; + }, true); + aspect.after(ws, "onclose", function(event){ + if(opened){ + return; + } + if(fallback){ + Socket.replace(ws, Socket.LongPoll(args), true); + } + }, true); + return ws; +}; + +Socket.replace = function(socket, newSocket, listenForOpen){ + // make the original socket a proxy for the new socket + socket.send = lang.hitch(newSocket, "send"); + socket.close = lang.hitch(newSocket, "close"); + var proxyEvent = function(type){ + (newSocket.addEventListener || newSocket.on).call(newSocket, type, function(event){ + on.emit(socket, event.type, event); + }, true); + }; + + if(listenForOpen){ + proxyEvent("open"); + } + // redirect the events as well + array.forEach(["message", "close", "error"], proxyEvent); +}; + +Socket.LongPoll = function(/*dojo.__XhrArgs*/ args){ + // summary: + // Provides a simple long-poll based comet-style socket/connection to a server and returns an + // object implementing the WebSocket interface: + // http://dev.w3.org/html5/websockets/#websocket + // args: + // This uses the same arguments as the other I/O functions in Dojo, with this addition: + // args.interval: + // Indicates the amount of time (in milliseconds) after a response was received + // before another request is made. By default, a request is made immediately + // after getting a response. The interval can be increased to reduce load on the + // server or to do simple time-based polling where the server always responds + // immediately. + // args.transport: + // Provide an alternate transport like dojo.io.script.get + // returns: + // An object that implements the WebSocket API + // example: + // | dojo.require("dojox.socket.LongPoll"); + // | var socket = dojox.socket.LongPoll({url:"/comet"}); + // or: + // | dojo.require("dojox.socket.LongPoll"); + // | dojox.socket.LongPoll.add(); + // | var socket = dojox.socket({url:"/comet"}); + + var cancelled = false, + first = true, + timeoutId, + connections = []; + + // create the socket object + var fire, connect; + var socket = { + send: function(data){ + // summary: + // Send some data using XHR or provided transport + var sendArgs = lang.delegate(args); + sendArgs.rawBody = data; + clearTimeout(timeoutId); + var deferred = first ? (first = false) || socket.firstRequest(sendArgs) : + socket.transport(sendArgs); + connections.push(deferred); + deferred.then(function(response){ + // got a response + socket.readyState = 1; + // remove the current connection + connections.splice(array.indexOf(connections, deferred), 1); + // reconnect to listen for the next message if there are no active connections, + // we queue it up in case one of the onmessage handlers has a message to send + if(!connections.length){ + timeoutId = setTimeout(connect, args.interval); + } + if(response){ + // now send the message along to listeners + fire("message", {data: response}, deferred); + } + }, function(error){ + connections.splice(array.indexOf(connections, deferred), 1); + // an error occurred, fire the appropriate event listeners + if(!cancelled){ + fire("error", {error:error}, deferred); + if(!connections.length){ + socket.readyState = 3; + fire("close", {wasClean:false}, deferred); + } + } + }); + return deferred; + }, + close: function(){ + // summary: + // Close the connection + socket.readyState = 2; + cancelled = true; + var i; + for(i = 0; i < connections.length; i++){ + connections[i].cancel(); + } + socket.readyState = 3; + fire("close", {wasClean:true}); + }, + transport: args.transport || xhr.post, + args: args, + url: args.url, + readyState: 0, + CONNECTING: 0, + OPEN: 1, + CLOSING: 2, + CLOSED: 3, + on: Evented.prototype.on, + firstRequest: function(args){ + // summary: + // This allows for special handling for the first request. This is useful for + // providing information to disambiguate between the first request and + // subsequent long-poll requests so the server can properly setup a + // connection on the first connection or reject a request for an expired + // connection if the request is not expecting to be the first for a connection. + // This method can be overriden. The default behavior is to include a Pragma + // header with a value of "start-long-poll" + var headers = (args.headers || (args.headers = {})); + headers.Pragma = "start-long-poll"; + try{ + return this.transport(args); + }finally{ + // cleanup the header so it is not used on subsequent requests + delete headers.Pragma; + } + } + }; + fire = function(type, object, deferred){ + if(socket["on" + type]){ + object.ioArgs = deferred && deferred.ioArgs; + object.type = type; + on.emit(socket, type, object); + } + }; + connect = function(){ + if(socket.readyState == 0){ + // we fire the open event now because we really don't know when the "socket" + // is truly open, and this gives us a to do a send() and get it included in the + // HTTP request + fire("open",{}); + } + // make the long-poll connection, to wait for response from the server + if(!connections.length){ + socket.send(); + } + }; + // provide an alias for Dojo's connect method + socket.connect = socket.on; + // do the initial connection + setTimeout(connect); + return socket; +}; + +return Socket; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket/README new file mode 100644 index 00000000..4828aff0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket/README @@ -0,0 +1,15 @@ +------------------------------------------------------------------------------- +dojox.socket +------------------------------------------------------------------------------- +Version 0.1 +Release date: 10/10/2010 +------------------------------------------------------------------------------- +Project state: +beta +------------------------------------------------------------------------------- +Credits + Kris Zyp +------------------------------------------------------------------------------- +Project description + +Provides a WebSocket with fallback to HTTP long-polling diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket/Reconnect.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket/Reconnect.js new file mode 100644 index 00000000..5625e977 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket/Reconnect.js @@ -0,0 +1,36 @@ +//>>built +define("dojox/socket/Reconnect",["dojox/socket","dojo/aspect"],function(_1,_2){ +_1.Reconnect=function(_3,_4){ +var _5=_4.reconnectTime||10000; +var _6,_7; +_4=_4||{}; +_2.after(_3,"onclose",function(_8){ +clearTimeout(_6); +if(!_8.wasClean){ +_3.disconnected(function(){ +_1.replace(_3,_7=_3.reconnect()); +}); +} +},true); +if(!_3.disconnected){ +_3.disconnected=function(_9){ +setTimeout(function(){ +_9(); +_6=setTimeout(function(){ +if(_7.readyState<2){ +_5=_4.reconnectTime||10000; +} +},10000); +},_5); +_5*=_4.backoffRate||2; +}; +} +if(!_3.reconnect){ +_3.reconnect=function(){ +return _3.args?_1.LongPoll(_3.args):_1.WebSocket({url:_3.URL||_3.url}); +}; +} +return _3; +}; +return _1.Reconnect; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket/Reconnect.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket/Reconnect.js.uncompressed.js new file mode 100644 index 00000000..be8e62c0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/socket/Reconnect.js.uncompressed.js @@ -0,0 +1,59 @@ +define("dojox/socket/Reconnect", [ + "dojox/socket", + "dojo/aspect" +], function(dxSocket, aspect) { + + dxSocket.Reconnect = function(socket, options){ + // summary: + // Provides auto-reconnection to a websocket after it has been closed + // socket: + // Socket to add reconnection support to. + // returns: + // An object that implements the WebSocket API + // example: + // You can use the Reconnect module: + // | require["dojox/socket", "dojox/socket/Reconnect"], function(dxSocket, reconnect){ + // | var socket = dxSocket({url:"/comet"}); + // | // add auto-reconnect support + // | socket = reconnect(socket); + var reconnectTime = options.reconnectTime || 10000; + var checkForOpen, newSocket; + options = options || {}; + + aspect.after(socket, "onclose", function(event){ + clearTimeout(checkForOpen); + if(!event.wasClean){ + socket.disconnected(function(){ + dxSocket.replace(socket, newSocket = socket.reconnect()); + }); + } + }, true); + if(!socket.disconnected){ + // add a default impl if it doesn't exist + socket.disconnected = function(reconnect){ + setTimeout(function(){ + reconnect(); + checkForOpen = setTimeout(function(){ + //reset the backoff + if(newSocket.readyState < 2){ + reconnectTime = options.reconnectTime || 10000; + } + }, 10000); + }, reconnectTime); + // backoff each time + reconnectTime *= options.backoffRate || 2; + }; + } + if(!socket.reconnect){ + // add a default impl if it doesn't exist + socket.reconnect = function(){ + return socket.args ? + dxSocket.LongPoll(socket.args) : + dxSocket.WebSocket({url: socket.URL || socket.url}); // different cases for different impls + }; + } + return socket; + }; + + return dxSocket.Reconnect; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql.js new file mode 100644 index 00000000..439bf109 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql.js @@ -0,0 +1,3 @@ +//>>built +define("dojox/sql",["./sql/_base"],function(){ +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql.js.uncompressed.js new file mode 100644 index 00000000..f7c47c82 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql.js.uncompressed.js @@ -0,0 +1,9 @@ +define("dojox/sql", ['./sql/_base'],function(){ + /*===== + return { + // summary: + // Deprecated. Should require dojox/sql modules directly rather than trying to access them through + // this module. + }; + =====*/ +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/LICENSE b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/LICENSE new file mode 100644 index 00000000..5c277ec9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/LICENSE @@ -0,0 +1,9 @@ +License Disclaimer: + +All contents of this directory are Copyright (c) the Dojo Foundation, with the +following exceptions: +------------------------------------------------------------------------------- + +_crypto.js - internally uses AES algorithm + * AES algorithm copyright Chris Veness (CLA signed and permission given to use code under BSD license) + Taken from http://www.movable-type.co.uk/scripts/aes.html diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/README new file mode 100644 index 00000000..3a4cc6b4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/README @@ -0,0 +1,32 @@ +------------------------------------------------------------------------------- +dojox.sql +------------------------------------------------------------------------------- +Version X.XXX +Release date: MM/DD/YYYY +------------------------------------------------------------------------------- +Project state: +experimental +------------------------------------------------------------------------------- +Credits + Brad Neuberg +------------------------------------------------------------------------------- +Project description + +Code to interface with the Google Gears-specific SQL engine, used +by dojox.storage and dojox.off. +------------------------------------------------------------------------------- +Dependencies: + +Google Gears (gears.google.com) +------------------------------------------------------------------------------- +Documentation + +TBD +------------------------------------------------------------------------------- +Installation instructions + +TBD +------------------------------------------------------------------------------- +Additional Notes + +We should consider relocating crypto code to dojox.encoding diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_base.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_base.js new file mode 100644 index 00000000..879a8dfd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_base.js @@ -0,0 +1,323 @@ +//>>built +define("dojox/sql/_base",["dijit","dojo","dojox","dojo/require!dojox/sql/_crypto"],function(_1,_2,_3){ +_2.provide("dojox.sql._base"); +_2.require("dojox.sql._crypto"); +_2.mixin(_3.sql,{dbName:null,debug:(_2.exists("dojox.sql.debug")?_3.sql.debug:false),open:function(_4){ +if(this._dbOpen&&(!_4||_4==this.dbName)){ +return; +} +if(!this.dbName){ +this.dbName="dot_store_"+window.location.href.replace(/[^0-9A-Za-z_]/g,"_"); +if(this.dbName.length>63){ +this.dbName=this.dbName.substring(0,63); +} +} +if(!_4){ +_4=this.dbName; +} +try{ +this._initDb(); +this.db.open(_4); +this._dbOpen=true; +} +catch(exp){ +throw exp.message||exp; +} +},close:function(_5){ +if(_2.isIE){ +return; +} +if(!this._dbOpen&&(!_5||_5==this.dbName)){ +return; +} +if(!_5){ +_5=this.dbName; +} +try{ +this.db.close(_5); +this._dbOpen=false; +} +catch(exp){ +throw exp.message||exp; +} +},_exec:function(_6){ +try{ +this._initDb(); +if(!this._dbOpen){ +this.open(); +this._autoClose=true; +} +var _7=null; +var _8=null; +var _9=null; +var _a=_2._toArray(_6); +_7=_a.splice(0,1)[0]; +if(this._needsEncrypt(_7)||this._needsDecrypt(_7)){ +_8=_a.splice(_a.length-1,1)[0]; +_9=_a.splice(_a.length-1,1)[0]; +} +if(this.debug){ +this._printDebugSQL(_7,_a); +} +var _b; +if(this._needsEncrypt(_7)){ +_b=new _3.sql._SQLCrypto("encrypt",_7,_9,_a,_8); +return null; +}else{ +if(this._needsDecrypt(_7)){ +_b=new _3.sql._SQLCrypto("decrypt",_7,_9,_a,_8); +return null; +} +} +var rs=this.db.execute(_7,_a); +rs=this._normalizeResults(rs); +if(this._autoClose){ +this.close(); +} +return rs; +} +catch(exp){ +exp=exp.message||exp; +if(this._autoClose){ +try{ +this.close(); +} +catch(e){ +} +} +throw exp; +} +return null; +},_initDb:function(){ +if(!this.db){ +try{ +this.db=google.gears.factory.create("beta.database","1.0"); +} +catch(exp){ +_2.setObject("google.gears.denied",true); +if(_3.off){ +_3.off.onFrameworkEvent("coreOperationFailed"); +} +throw "Google Gears must be allowed to run"; +} +} +},_printDebugSQL:function(_c,_d){ +var _e="dojox.sql(\""+_c+"\""; +for(var i=0;i<_d.length;i++){ +if(typeof _d[i]=="string"){ +_e+=", \""+_d[i]+"\""; +}else{ +_e+=", "+_d[i]; +} +} +_e+=")"; +},_normalizeResults:function(rs){ +var _f=[]; +if(!rs){ +return []; +} +while(rs.isValidRow()){ +var row={}; +for(var i=0;i=this._totalCrypto&&this._finishedSpawningCrypto){ +_2c(this._finalArgs); +} +})); +} +} +this._finishedSpawningCrypto=true; +},_decrypt:function(_30,_31,_32,_33){ +this._totalCrypto=0; +this._finishedCrypto=0; +this._finishedSpawningCrypto=false; +this._finalResultSet=_30; +for(var i=0;i<_30.length;i++){ +var row=_30[i]; +for(var _34 in row){ +if(_31=="*"||_31[_34]){ +this._totalCrypto++; +var _35=row[_34]; +this._decryptSingleColumn(_34,_35,_32,i,function(_36){ +_33(_36); +}); +} +} +} +this._finishedSpawningCrypto=true; +},_stripCryptoSQL:function(sql){ +sql=sql.replace(/DECRYPT\(\*\)/ig,"*"); +var _37=sql.match(/ENCRYPT\([^\)]*\)/ig); +if(_37!=null){ +for(var i=0;i<_37.length;i++){ +var _38=_37[i]; +var _39=_38.match(/ENCRYPT\(([^\)]*)\)/i)[1]; +sql=sql.replace(_38,_39); +} +} +_37=sql.match(/DECRYPT\([^\)]*\)/ig); +if(_37!=null){ +for(i=0;i<_37.length;i++){ +var _3a=_37[i]; +var _3b=_3a.match(/DECRYPT\(([^\)]*)\)/i)[1]; +sql=sql.replace(_3a,_3b); +} +} +return sql; +},_flagEncryptedArgs:function(sql,_3c){ +var _3d=new RegExp(/([\"][^\"]*\?[^\"]*[\"])|([\'][^\']*\?[^\']*[\'])|(\?)/ig); +var _3e; +var _3f=0; +var _40=[]; +while((_3e=_3d.exec(sql))!=null){ +var _41=RegExp.lastMatch+""; +if(/^[\"\']/.test(_41)){ +continue; +} +var _42=false; +if(/ENCRYPT\([^\)]*$/i.test(RegExp.leftContext)){ +_42=true; +} +_40[_3f]=_42; +_3f++; +} +return _40; +},_determineDecryptedColumns:function(sql){ +var _43={}; +if(/DECRYPT\(\*\)/i.test(sql)){ +_43="*"; +}else{ +var _44=/DECRYPT\((?:\s*\w*\s*\,?)*\)/ig; +var _45=_44.exec(sql); +while(_45){ +var _46=new String(RegExp.lastMatch); +var _47=_46.replace(/DECRYPT\(/i,""); +_47=_47.replace(/\)/,""); +_47=_47.split(/\s*,\s*/); +_2.forEach(_47,function(_48){ +if(/\s*\w* AS (\w*)/i.test(_48)){ +_48=_48.match(/\s*\w* AS (\w*)/i)[1]; +} +_43[_48]=true; +}); +_45=_44.exec(sql); +} +} +return _43; +},_decryptSingleColumn:function(_49,_4a,_4b,_4c,_4d){ +_3.sql._crypto.decrypt(_4a,_4b,_2.hitch(this,function(_4e){ +this._finalResultSet[_4c][_49]=_4e; +this._finishedCrypto++; +if(this._finishedCrypto>=this._totalCrypto&&this._finishedSpawningCrypto){ +_4d(this._finalResultSet); +} +})); +}}); +(function(){ +var _4f=_3.sql; +_3.sql=new Function("return dojox.sql._exec(arguments);"); +_2.mixin(_3.sql,_4f); +})(); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_base.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_base.js.uncompressed.js new file mode 100644 index 00000000..33ca9fb9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_base.js.uncompressed.js @@ -0,0 +1,552 @@ +// wrapped by build app +define("dojox/sql/_base", ["dijit","dojo","dojox","dojo/require!dojox/sql/_crypto"], function(dijit,dojo,dojox){ +dojo.provide("dojox.sql._base"); +dojo.require("dojox.sql._crypto"); + +dojo.mixin(dojox.sql, { + // summary: + // Executes a SQL expression. + // description: + // There are four ways to call this: + // + // 1. Straight SQL: dojox.sql("SELECT * FROM FOOBAR"); + // 2. SQL with parameters: dojox.sql("INSERT INTO FOOBAR VALUES (?)", someParam) + // 3. Encrypting particular values: + // dojox.sql("INSERT INTO FOOBAR VALUES (ENCRYPT(?))", someParam, "somePassword", callback) + // 4. Decrypting particular values: + // | dojox.sql("SELECT DECRYPT(SOMECOL1), DECRYPT(SOMECOL2) FROM + // | FOOBAR WHERE SOMECOL3 = ?", someParam, + // | "somePassword", callback) + // + // For encryption and decryption the last two values should be the the password for + // encryption/decryption, and the callback function that gets the result set. + // + // Note: We only support ENCRYPT(?) statements, and + // and DECRYPT(*) statements for now -- you can not have a literal string + // inside of these, such as ENCRYPT('foobar') + // + // Note: If you have multiple columns to encrypt and decrypt, you can use the following + // convenience form to not have to type ENCRYPT(?)/DECRYPT(*) many times: + // + // | dojox.sql("INSERT INTO FOOBAR VALUES (ENCRYPT(?, ?, ?))", + // | someParam1, someParam2, someParam3, + // | "somePassword", callback) + // | + // | dojox.sql("SELECT DECRYPT(SOMECOL1, SOMECOL2) FROM + // | FOOBAR WHERE SOMECOL3 = ?", someParam, + // | "somePassword", callback) + + dbName: null, + + // debug: Boolean + // If true, then we print out any SQL that is executed + // to the debug window + debug: (dojo.exists("dojox.sql.debug") ? dojox.sql.debug:false), + + open: function(dbName){ + if(this._dbOpen && (!dbName || dbName == this.dbName)){ + return; + } + + if(!this.dbName){ + this.dbName = "dot_store_" + + window.location.href.replace(/[^0-9A-Za-z_]/g, "_"); + // database names in Gears are limited to 64 characters long + if(this.dbName.length > 63){ + this.dbName = this.dbName.substring(0, 63); + } + } + + if(!dbName){ + dbName = this.dbName; + } + + try{ + this._initDb(); + this.db.open(dbName); + this._dbOpen = true; + }catch(exp){ + throw exp.message||exp; + } + }, + + close: function(dbName){ + // on Internet Explorer, Google Gears throws an exception + // "Object not a collection", when we try to close the + // database -- just don't close it on this platform + // since we are running into a Gears bug; the Gears team + // said it's ok to not close a database connection + if(dojo.isIE){ return; } + + if(!this._dbOpen && (!dbName || dbName == this.dbName)){ + return; + } + + if(!dbName){ + dbName = this.dbName; + } + + try{ + this.db.close(dbName); + this._dbOpen = false; + }catch(exp){ + throw exp.message||exp; + } + }, + + _exec: function(params){ + try{ + // get the Gears Database object + this._initDb(); + + // see if we need to open the db; if programmer + // manually called dojox.sql.open() let them handle + // it; otherwise we open and close automatically on + // each SQL execution + if(!this._dbOpen){ + this.open(); + this._autoClose = true; + } + + // determine our parameters + var sql = null; + var callback = null; + var password = null; + + var args = dojo._toArray(params); + + sql = args.splice(0, 1)[0]; + + // does this SQL statement use the ENCRYPT or DECRYPT + // keywords? if so, extract our callback and crypto + // password + if(this._needsEncrypt(sql) || this._needsDecrypt(sql)){ + callback = args.splice(args.length - 1, 1)[0]; + password = args.splice(args.length - 1, 1)[0]; + } + + // 'args' now just has the SQL parameters + + // print out debug SQL output if the developer wants that + if(this.debug){ + this._printDebugSQL(sql, args); + } + + // handle SQL that needs encryption/decryption differently + // do we have an ENCRYPT SQL statement? if so, handle that first + var crypto; + if(this._needsEncrypt(sql)){ + crypto = new dojox.sql._SQLCrypto("encrypt", sql, + password, args, + callback); + return null; // encrypted results will arrive asynchronously + }else if(this._needsDecrypt(sql)){ // otherwise we have a DECRYPT statement + crypto = new dojox.sql._SQLCrypto("decrypt", sql, + password, args, + callback); + return null; // decrypted results will arrive asynchronously + } + + // execute the SQL and get the results + var rs = this.db.execute(sql, args); + + // Gears ResultSet object's are ugly -- normalize + // these into something JavaScript programmers know + // how to work with, basically an array of + // JavaScript objects where each property name is + // simply the field name for a column of data + rs = this._normalizeResults(rs); + + if(this._autoClose){ + this.close(); + } + + return rs; + }catch(exp){ + exp = exp.message||exp; + + console.debug("SQL Exception: " + exp); + + if(this._autoClose){ + try{ + this.close(); + }catch(e){ + console.debug("Error closing database: " + + e.message||e); + } + } + + throw exp; + } + + return null; + }, + + _initDb: function(){ + if(!this.db){ + try{ + this.db = google.gears.factory.create('beta.database', '1.0'); + }catch(exp){ + dojo.setObject("google.gears.denied", true); + if(dojox.off){ + dojox.off.onFrameworkEvent("coreOperationFailed"); + } + throw "Google Gears must be allowed to run"; + } + } + }, + + _printDebugSQL: function(sql, args){ + var msg = "dojox.sql(\"" + sql + "\""; + for(var i = 0; i < args.length; i++){ + if(typeof args[i] == "string"){ + msg += ", \"" + args[i] + "\""; + }else{ + msg += ", " + args[i]; + } + } + msg += ")"; + + console.debug(msg); + }, + + _normalizeResults: function(rs){ + var results = []; + if(!rs){ return []; } + + while(rs.isValidRow()){ + var row = {}; + + for(var i = 0; i < rs.fieldCount(); i++){ + var fieldName = rs.fieldName(i); + var fieldValue = rs.field(i); + row[fieldName] = fieldValue; + } + + results.push(row); + + rs.next(); + } + + rs.close(); + + return results; + }, + + _needsEncrypt: function(sql){ + return /encrypt\([^\)]*\)/i.test(sql); + }, + + _needsDecrypt: function(sql){ + return /decrypt\([^\)]*\)/i.test(sql); + } +}); + +dojo.declare("dojox.sql._SQLCrypto", null, { + // summary: + // A private class encapsulating any cryptography that must be done + // on a SQL statement. We instantiate this class and have it hold + // it's state so that we can potentially have several encryption + // operations happening at the same time by different SQL statements. + constructor: function(action, sql, password, args, callback){ + if(action == "encrypt"){ + this._execEncryptSQL(sql, password, args, callback); + }else{ + this._execDecryptSQL(sql, password, args, callback); + } + }, + + _execEncryptSQL: function(sql, password, args, callback){ + // strip the ENCRYPT/DECRYPT keywords from the SQL + var strippedSQL = this._stripCryptoSQL(sql); + + // determine what arguments need encryption + var encryptColumns = this._flagEncryptedArgs(sql, args); + + // asynchronously encrypt each argument that needs it + var self = this; + this._encrypt(strippedSQL, password, args, encryptColumns, function(finalArgs){ + // execute the SQL + var error = false; + var resultSet = []; + var exp = null; + try{ + resultSet = dojox.sql.db.execute(strippedSQL, finalArgs); + }catch(execError){ + error = true; + exp = execError.message||execError; + } + + // was there an error during SQL execution? + if(exp != null){ + if(dojox.sql._autoClose){ + try{ dojox.sql.close(); }catch(e){} + } + + callback(null, true, exp.toString()); + return; + } + + // normalize SQL results into a JavaScript object + // we can work with + resultSet = dojox.sql._normalizeResults(resultSet); + + if(dojox.sql._autoClose){ + dojox.sql.close(); + } + + // are any decryptions necessary on the result set? + if(dojox.sql._needsDecrypt(sql)){ + // determine which of the result set columns needs decryption + var needsDecrypt = self._determineDecryptedColumns(sql); + + // now decrypt columns asynchronously + // decrypt columns that need it + self._decrypt(resultSet, needsDecrypt, password, function(finalResultSet){ + callback(finalResultSet, false, null); + }); + }else{ + callback(resultSet, false, null); + } + }); + }, + + _execDecryptSQL: function(sql, password, args, callback){ + // strip the ENCRYPT/DECRYPT keywords from the SQL + var strippedSQL = this._stripCryptoSQL(sql); + + // determine which columns needs decryption; this either + // returns the value *, which means all result set columns will + // be decrypted, or it will return the column names that need + // decryption set on a hashtable so we can quickly test a given + // column name; the key is the column name that needs + // decryption and the value is 'true' (i.e. needsDecrypt["someColumn"] + // would return 'true' if it needs decryption, and would be 'undefined' + // or false otherwise) + var needsDecrypt = this._determineDecryptedColumns(sql); + + // execute the SQL + var error = false; + var resultSet = []; + var exp = null; + try{ + resultSet = dojox.sql.db.execute(strippedSQL, args); + }catch(execError){ + error = true; + exp = execError.message||execError; + } + + // was there an error during SQL execution? + if(exp != null){ + if(dojox.sql._autoClose){ + try{ dojox.sql.close(); }catch(e){} + } + + callback(resultSet, true, exp.toString()); + return; + } + + // normalize SQL results into a JavaScript object + // we can work with + resultSet = dojox.sql._normalizeResults(resultSet); + + if(dojox.sql._autoClose){ + dojox.sql.close(); + } + + // decrypt columns that need it + this._decrypt(resultSet, needsDecrypt, password, function(finalResultSet){ + callback(finalResultSet, false, null); + }); + }, + + _encrypt: function(sql, password, args, encryptColumns, callback){ + //console.debug("_encrypt, sql="+sql+", password="+password+", encryptColumns="+encryptColumns+", args="+args); + + this._totalCrypto = 0; + this._finishedCrypto = 0; + this._finishedSpawningCrypto = false; + this._finalArgs = args; + + for(var i = 0; i < args.length; i++){ + if(encryptColumns[i]){ + // we have an encrypt() keyword -- get just the value inside + // the encrypt() parentheses -- for now this must be a ? + var sqlParam = args[i]; + var paramIndex = i; + + // update the total number of encryptions we know must be done asynchronously + this._totalCrypto++; + + // FIXME: This currently uses DES as a proof-of-concept since the + // DES code used is quite fast and was easy to work with. Modify dojox.sql + // to be able to specify a different encryption provider through a + // a SQL-like syntax, such as dojox.sql("SET ENCRYPTION BLOWFISH"), + // and modify the dojox.crypto.Blowfish code to be able to work using + // a Google Gears Worker Pool + + // do the actual encryption now, asychronously on a Gears worker thread + dojox.sql._crypto.encrypt(sqlParam, password, dojo.hitch(this, function(results){ + // set the new encrypted value + this._finalArgs[paramIndex] = results; + this._finishedCrypto++; + // are we done with all encryption? + if(this._finishedCrypto >= this._totalCrypto + && this._finishedSpawningCrypto){ + callback(this._finalArgs); + } + })); + } + } + + this._finishedSpawningCrypto = true; + }, + + _decrypt: function(resultSet, needsDecrypt, password, callback){ + //console.debug("decrypt, resultSet="+resultSet+", needsDecrypt="+needsDecrypt+", password="+password); + + this._totalCrypto = 0; + this._finishedCrypto = 0; + this._finishedSpawningCrypto = false; + this._finalResultSet = resultSet; + + for(var i = 0; i < resultSet.length; i++){ + var row = resultSet[i]; + + // go through each of the column names in row, + // seeing if they need decryption + for(var columnName in row){ + if(needsDecrypt == "*" || needsDecrypt[columnName]){ + this._totalCrypto++; + var columnValue = row[columnName]; + + // forming a closure here can cause issues, with values not cleanly + // saved on Firefox/Mac OS X for some of the values above that + // are needed in the callback below; call a subroutine that will form + // a closure inside of itself instead + this._decryptSingleColumn(columnName, columnValue, password, i, + function(finalResultSet){ + callback(finalResultSet); + }); + } + } + } + + this._finishedSpawningCrypto = true; + }, + + _stripCryptoSQL: function(sql){ + // replace all DECRYPT(*) occurrences with a * + sql = sql.replace(/DECRYPT\(\*\)/ig, "*"); + + // match any ENCRYPT(?, ?, ?, etc) occurrences, + // then replace with just the question marks in the + // middle + var matches = sql.match(/ENCRYPT\([^\)]*\)/ig); + if(matches != null){ + for(var i = 0; i < matches.length; i++){ + var encryptStatement = matches[i]; + var encryptValue = encryptStatement.match(/ENCRYPT\(([^\)]*)\)/i)[1]; + sql = sql.replace(encryptStatement, encryptValue); + } + } + + // match any DECRYPT(COL1, COL2, etc) occurrences, + // then replace with just the column names + // in the middle + matches = sql.match(/DECRYPT\([^\)]*\)/ig); + if(matches != null){ + for(i = 0; i < matches.length; i++){ + var decryptStatement = matches[i]; + var decryptValue = decryptStatement.match(/DECRYPT\(([^\)]*)\)/i)[1]; + sql = sql.replace(decryptStatement, decryptValue); + } + } + + return sql; + }, + + _flagEncryptedArgs: function(sql, args){ + // capture literal strings that have question marks in them, + // and also capture question marks that stand alone + var tester = new RegExp(/([\"][^\"]*\?[^\"]*[\"])|([\'][^\']*\?[^\']*[\'])|(\?)/ig); + var matches; + var currentParam = 0; + var results = []; + while((matches = tester.exec(sql)) != null){ + var currentMatch = RegExp.lastMatch+""; + + // are we a literal string? then ignore it + if(/^[\"\']/.test(currentMatch)){ + continue; + } + + // do we have an encrypt keyword to our left? + var needsEncrypt = false; + if(/ENCRYPT\([^\)]*$/i.test(RegExp.leftContext)){ + needsEncrypt = true; + } + + // set the encrypted flag + results[currentParam] = needsEncrypt; + + currentParam++; + } + + return results; + }, + + _determineDecryptedColumns: function(sql){ + var results = {}; + + if(/DECRYPT\(\*\)/i.test(sql)){ + results = "*"; + }else{ + var tester = /DECRYPT\((?:\s*\w*\s*\,?)*\)/ig; + var matches = tester.exec(sql); + while(matches){ + var lastMatch = new String(RegExp.lastMatch); + var columnNames = lastMatch.replace(/DECRYPT\(/i, ""); + columnNames = columnNames.replace(/\)/, ""); + columnNames = columnNames.split(/\s*,\s*/); + dojo.forEach(columnNames, function(column){ + if(/\s*\w* AS (\w*)/i.test(column)){ + column = column.match(/\s*\w* AS (\w*)/i)[1]; + } + results[column] = true; + }); + + matches = tester.exec(sql) + } + } + + return results; + }, + + _decryptSingleColumn: function(columnName, columnValue, password, currentRowIndex, + callback){ + //console.debug("decryptSingleColumn, columnName="+columnName+", columnValue="+columnValue+", currentRowIndex="+currentRowIndex) + dojox.sql._crypto.decrypt(columnValue, password, dojo.hitch(this, function(results){ + // set the new decrypted value + this._finalResultSet[currentRowIndex][columnName] = results; + this._finishedCrypto++; + + // are we done with all encryption? + if(this._finishedCrypto >= this._totalCrypto + && this._finishedSpawningCrypto){ + //console.debug("done with all decrypts"); + callback(this._finalResultSet); + } + })); + } +}); + +(function(){ + + var orig_sql = dojox.sql; + dojox.sql = new Function("return dojox.sql._exec(arguments);"); + dojo.mixin(dojox.sql, orig_sql); + +})(); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_crypto.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_crypto.js new file mode 100644 index 00000000..304f7c7a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_crypto.js @@ -0,0 +1,286 @@ +//>>built +define("dojox/sql/_crypto",["dijit","dojo","dojox"],function(_1,_2,_3){ +_2.provide("dojox.sql._crypto"); +_2.mixin(_3.sql._crypto,{_POOL_SIZE:100,encrypt:function(_4,_5,_6){ +this._initWorkerPool(); +var _7={plaintext:_4,password:_5}; +_7=_2.toJson(_7); +_7="encr:"+String(_7); +this._assignWork(_7,_6); +},decrypt:function(_8,_9,_a){ +this._initWorkerPool(); +var _b={ciphertext:_8,password:_9}; +_b=_2.toJson(_b); +_b="decr:"+String(_b); +this._assignWork(_b,_a); +},_initWorkerPool:function(){ +if(!this._manager){ +try{ +this._manager=google.gears.factory.create("beta.workerpool","1.0"); +this._unemployed=[]; +this._employed={}; +this._handleMessage=[]; +var _c=this; +this._manager.onmessage=function(_d,_e){ +var _f=_c._employed["_"+_e]; +_c._employed["_"+_e]=undefined; +_c._unemployed.push("_"+_e); +if(_c._handleMessage.length){ +var _10=_c._handleMessage.shift(); +_c._assignWork(_10.msg,_10.callback); +} +_f(_d); +}; +var _11="function _workerInit(){"+"gearsWorkerPool.onmessage = "+String(this._workerHandler)+";"+"}"; +var _12=_11+" _workerInit();"; +for(var i=0;i6&&i%Nk==4){ +_23=_24(_23); +} +} +for(var t=0;t<4;t++){ +w[i][t]=w[i-Nk][t]^_23[t]; +} +} +return w; +}; +function _24(w){ +for(var i=0;i<4;i++){ +w[i]=_16[w[i]]; +} +return w; +}; +function _25(w){ +w[4]=w[0]; +for(var i=0;i<4;i++){ +w[i]=w[i+1]; +} +return w; +}; +function _26(_27,_28,_29){ +if(!(_29==128||_29==192||_29==256)){ +return ""; +} +var _2a=_29/8; +var _2b=new Array(_2a); +for(var i=0;i<_2a;i++){ +_2b[i]=_28.charCodeAt(i)&255; +} +var key=_18(_2b,_22(_2b)); +key=key.concat(key.slice(0,_2a-16)); +var _2c=16; +var _2d=new Array(_2c); +var _2e=(new Date()).getTime(); +for(var i=0;i<4;i++){ +_2d[i]=(_2e>>>i*8)&255; +} +for(var i=0;i<4;i++){ +_2d[i+4]=(_2e/4294967296>>>i*8)&255; +} +var _2f=_22(key); +var _30=Math.ceil(_27.length/_2c); +var _31=new Array(_30); +for(var b=0;b<_30;b++){ +for(var c=0;c<4;c++){ +_2d[15-c]=(b>>>c*8)&255; +} +for(var c=0;c<4;c++){ +_2d[15-c-4]=(b/4294967296>>>c*8); +} +var _32=_18(_2d,_2f); +var _33=b<_30-1?_2c:(_27.length-1)%_2c+1; +var ct=""; +for(var i=0;i<_33;i++){ +var _34=_27.charCodeAt(b*_2c+i); +var _35=_34^_32[i]; +ct+=String.fromCharCode(_35); +} +_31[b]=_36(ct); +} +var _37=""; +for(var i=0;i<8;i++){ +_37+=String.fromCharCode(_2d[i]); +} +_37=_36(_37); +return _37+"-"+_31.join("-"); +}; +function _38(_39,_3a,_3b){ +if(!(_3b==128||_3b==192||_3b==256)){ +return ""; +} +var _3c=_3b/8; +var _3d=new Array(_3c); +for(var i=0;i<_3c;i++){ +_3d[i]=_3a.charCodeAt(i)&255; +} +var _3e=_22(_3d); +var key=_18(_3d,_3e); +key=key.concat(key.slice(0,_3c-16)); +var _3f=_22(key); +_39=_39.split("-"); +var _40=16; +var _41=new Array(_40); +var _42=_43(_39[0]); +for(var i=0;i<8;i++){ +_41[i]=_42.charCodeAt(i); +} +var _44=new Array(_39.length-1); +for(var b=1;b<_39.length;b++){ +for(var c=0;c<4;c++){ +_41[15-c]=((b-1)>>>c*8)&255; +} +for(var c=0;c<4;c++){ +_41[15-c-4]=((b/4294967296-1)>>>c*8)&255; +} +var _45=_18(_41,_3f); +_39[b]=_43(_39[b]); +var pt=""; +for(var i=0;i<_39[b].length;i++){ +var _46=_39[b].charCodeAt(i); +var _47=_46^_45[i]; +pt+=String.fromCharCode(_47); +} +_44[b-1]=pt; +} +return _44.join(""); +}; +function _36(str){ +return str.replace(/[\0\t\n\v\f\r\xa0!-]/g,function(c){ +return "!"+c.charCodeAt(0)+"!"; +}); +}; +function _43(str){ +return str.replace(/!\d\d?\d?!/g,function(c){ +return String.fromCharCode(c.slice(1,-1)); +}); +}; +function _48(_49,_4a){ +return _26(_49,_4a,256); +}; +function _4b(_4c,_4d){ +return _38(_4c,_4d,256); +}; +var cmd=msg.substr(0,4); +var arg=msg.substr(5); +if(cmd=="encr"){ +arg=eval("("+arg+")"); +var _4e=arg.plaintext; +var _4f=arg.password; +var _50=_48(_4e,_4f); +gearsWorkerPool.sendMessage(String(_50),_15); +}else{ +if(cmd=="decr"){ +arg=eval("("+arg+")"); +var _51=arg.ciphertext; +var _4f=arg.password; +var _50=_4b(_51,_4f); +gearsWorkerPool.sendMessage(String(_50),_15); +} +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_crypto.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_crypto.js.uncompressed.js new file mode 100644 index 00000000..24a8e14e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/sql/_crypto.js.uncompressed.js @@ -0,0 +1,445 @@ +// wrapped by build app +define("dojox/sql/_crypto", ["dijit","dojo","dojox"], function(dijit,dojo,dojox){ +dojo.provide("dojox.sql._crypto"); +dojo.mixin(dojox.sql._crypto, { + // summary: + // dojox.sql cryptography code + // description: + // Taken from http://www.movable-type.co.uk/scripts/aes.html by + // Chris Veness (CLA signed); adapted for Dojo and Google Gears Worker Pool + // by Brad Neuberg, bkn3@columbia.edu + + // _POOL_SIZE: + // Size of worker pool to create to help with crypto + _POOL_SIZE: 100, + + encrypt: function(plaintext, password, callback){ + // summary: + // Use Corrected Block TEA to encrypt plaintext using password + // (note plaintext & password must be strings not string objects). + // Results will be returned to the 'callback' asychronously. + this._initWorkerPool(); + + var msg ={plaintext: plaintext, password: password}; + msg = dojo.toJson(msg); + msg = "encr:" + String(msg); + + this._assignWork(msg, callback); + }, + + decrypt: function(ciphertext, password, callback){ + // summary: + // Use Corrected Block TEA to decrypt ciphertext using password + // (note ciphertext & password must be strings not string objects). + // Results will be returned to the 'callback' asychronously. + this._initWorkerPool(); + + var msg = {ciphertext: ciphertext, password: password}; + msg = dojo.toJson(msg); + msg = "decr:" + String(msg); + + this._assignWork(msg, callback); + }, + + _initWorkerPool: function(){ + // bugs in Google Gears prevents us from dynamically creating + // and destroying workers as we need them -- the worker + // pool functionality stops working after a number of crypto + // cycles (probably related to a memory leak in Google Gears). + // this is too bad, since it results in much simpler code. + + // instead, we have to create a pool of workers and reuse them. we + // keep a stack of 'unemployed' Worker IDs that are currently not working. + // if a work request comes in, we pop off the 'unemployed' stack + // and put them to work, storing them in an 'employed' hashtable, + // keyed by their Worker ID with the value being the callback function + // that wants the result. when an employed worker is done, we get + // a message in our 'manager' which adds this worker back to the + // unemployed stack and routes the result to the callback that + // wanted it. if all the workers were employed in the past but + // more work needed to be done (i.e. it's a tight labor pool ;) + // then the work messages are pushed onto + // a 'handleMessage' queue as an object tuple{msg: msg, callback: callback} + + if(!this._manager){ + try{ + this._manager = google.gears.factory.create("beta.workerpool", "1.0"); + this._unemployed = []; + this._employed ={}; + this._handleMessage = []; + + var self = this; + this._manager.onmessage = function(msg, sender){ + // get the callback necessary to serve this result + var callback = self._employed["_" + sender]; + + // make this worker unemployed + self._employed["_" + sender] = undefined; + self._unemployed.push("_" + sender); + + // see if we need to assign new work + // that was queued up needing to be done + if(self._handleMessage.length){ + var handleMe = self._handleMessage.shift(); + self._assignWork(handleMe.msg, handleMe.callback); + } + + // return results + callback(msg); + }; + + var workerInit = "function _workerInit(){" + + "gearsWorkerPool.onmessage = " + + String(this._workerHandler) + + ";" + + "}"; + + var code = workerInit + " _workerInit();"; + + // create our worker pool + for(var i = 0; i < this._POOL_SIZE; i++){ + this._unemployed.push("_" + this._manager.createWorker(code)); + } + }catch(exp){ + throw exp.message||exp; + } + } + }, + + _assignWork: function(msg, callback){ + // can we immediately assign this work? + if(!this._handleMessage.length && this._unemployed.length){ + // get an unemployed worker + var workerID = this._unemployed.shift().substring(1); // remove _ + + // list this worker as employed + this._employed["_" + workerID] = callback; + + // do the worke + this._manager.sendMessage(msg, parseInt(workerID,10)); + }else{ + // we have to queue it up + this._handleMessage ={msg: msg, callback: callback}; + } + }, + + _workerHandler: function(msg, sender){ + + /* Begin AES Implementation */ + + /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ + + // Sbox is pre-computed multiplicative inverse in GF(2^8) used in SubBytes and KeyExpansion [§5.1.1] + var Sbox = [0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5,0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76, + 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0,0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0, + 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc,0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15, + 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a,0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75, + 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0,0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84, + 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b,0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf, + 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85,0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8, + 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5,0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2, + 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17,0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73, + 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88,0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb, + 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c,0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79, + 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9,0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08, + 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6,0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a, + 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e,0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e, + 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94,0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf, + 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68,0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16]; + + // Rcon is Round Constant used for the Key Expansion [1st col is 2^(r-1) in GF(2^8)] [§5.2] + var Rcon = [ [0x00, 0x00, 0x00, 0x00], + [0x01, 0x00, 0x00, 0x00], + [0x02, 0x00, 0x00, 0x00], + [0x04, 0x00, 0x00, 0x00], + [0x08, 0x00, 0x00, 0x00], + [0x10, 0x00, 0x00, 0x00], + [0x20, 0x00, 0x00, 0x00], + [0x40, 0x00, 0x00, 0x00], + [0x80, 0x00, 0x00, 0x00], + [0x1b, 0x00, 0x00, 0x00], + [0x36, 0x00, 0x00, 0x00] ]; + + /* + * AES Cipher function: encrypt 'input' with Rijndael algorithm + * + * takes byte-array 'input' (16 bytes) + * 2D byte-array key schedule 'w' (Nr+1 x Nb bytes) + * + * applies Nr rounds (10/12/14) using key schedule w for 'add round key' stage + * + * returns byte-array encrypted value (16 bytes) + */ + function Cipher(input, w) { // main Cipher function [§5.1] + var Nb = 4; // block size (in words): no of columns in state (fixed at 4 for AES) + var Nr = w.length/Nb - 1; // no of rounds: 10/12/14 for 128/192/256-bit keys + + var state = [[],[],[],[]]; // initialise 4xNb byte-array 'state' with input [§3.4] + for (var i=0; i<4*Nb; i++) state[i%4][Math.floor(i/4)] = input[i]; + + state = AddRoundKey(state, w, 0, Nb); + + for (var round=1; round 6 && i%Nk == 4) { + temp = SubWord(temp); + } + for (var t=0; t<4; t++) w[i][t] = w[i-Nk][t] ^ temp[t]; + } + + return w; + } + + function SubWord(w) { // apply SBox to 4-byte word w + for (var i=0; i<4; i++) w[i] = Sbox[w[i]]; + return w; + } + + function RotWord(w) { // rotate 4-byte word w left by one byte + w[4] = w[0]; + for (var i=0; i<4; i++) w[i] = w[i+1]; + return w; + } + + /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ + + /* + * Use AES to encrypt 'plaintext' with 'password' using 'nBits' key, in 'Counter' mode of operation + * - see http://csrc.nist.gov/publications/nistpubs/800-38a/sp800-38a.pdf + * for each block + * - outputblock = cipher(counter, key) + * - cipherblock = plaintext xor outputblock + */ + function AESEncryptCtr(plaintext, password, nBits) { + if (!(nBits==128 || nBits==192 || nBits==256)) return ''; // standard allows 128/192/256 bit keys + + // for this example script, generate the key by applying Cipher to 1st 16/24/32 chars of password; + // for real-world applications, a more secure approach would be to hash the password e.g. with SHA-1 + var nBytes = nBits/8; // no bytes in key + var pwBytes = new Array(nBytes); + for (var i=0; i>> i*8) & 0xff; + for (var i=0; i<4; i++) counterBlock[i+4] = (nonce/0x100000000 >>> i*8) & 0xff; + + // generate key schedule - an expansion of the key into distinct Key Rounds for each round + var keySchedule = KeyExpansion(key); + + var blockCount = Math.ceil(plaintext.length/blockSize); + var ciphertext = new Array(blockCount); // ciphertext as array of strings + + for (var b=0; b>> c*8) & 0xff; + for (var c=0; c<4; c++) counterBlock[15-c-4] = (b/0x100000000 >>> c*8) + + var cipherCntr = Cipher(counterBlock, keySchedule); // -- encrypt counter block -- + + // calculate length of final block: + var blockLength = b>> c*8) & 0xff; + for (var c=0; c<4; c++) counterBlock[15-c-4] = ((b/0x100000000-1) >>> c*8) & 0xff; + + var cipherCntr = Cipher(counterBlock, keySchedule); // encrypt counter block + + ciphertext[b] = unescCtrlChars(ciphertext[b]); + + var pt = ''; + for (var i=0; i>built +define("dojox/storage",["./storage/_common"],function(){ +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage.js.uncompressed.js new file mode 100644 index 00000000..2ff318c2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage.js.uncompressed.js @@ -0,0 +1,9 @@ +define("dojox/storage", ['./storage/_common'],function(){ + /*===== + return { + // summary: + // Deprecated. Should require dojox/storage modules directly rather than trying to access them through + // this module. + }; + =====*/ +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirDBStorageProvider.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirDBStorageProvider.js new file mode 100644 index 00000000..c4885465 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirDBStorageProvider.js @@ -0,0 +1,170 @@ +//>>built +define("dojox/storage/AirDBStorageProvider",["dijit","dojo","dojox","dojo/require!dojox/storage/manager,dojox/storage/Provider"],function(_1,_2,_3){ +_2.provide("dojox.storage.AirDBStorageProvider"); +_2.require("dojox.storage.manager"); +_2.require("dojox.storage.Provider"); +if(_2.isAIR){ +(function(){ +if(!_4){ +var _4={}; +} +_4.File=window.runtime.flash.filesystem.File; +_4.SQLConnection=window.runtime.flash.data.SQLConnection; +_4.SQLStatement=window.runtime.flash.data.SQLStatement; +_2.declare("dojox.storage.AirDBStorageProvider",[_3.storage.Provider],{DATABASE_FILE:"dojo.db",TABLE_NAME:"__DOJO_STORAGE",initialized:false,_db:null,initialize:function(){ +this.initialized=false; +try{ +this._db=new _4.SQLConnection(); +this._db.open(_4.File.applicationStorageDirectory.resolvePath(this.DATABASE_FILE)); +this._sql("CREATE TABLE IF NOT EXISTS "+this.TABLE_NAME+"(namespace TEXT, key TEXT, value TEXT)"); +this._sql("CREATE UNIQUE INDEX IF NOT EXISTS namespace_key_index ON "+this.TABLE_NAME+" (namespace, key)"); +this.initialized=true; +} +catch(e){ +} +_3.storage.manager.loaded(); +},_sql:function(_5,_6){ +var _7=new _4.SQLStatement(); +_7.sqlConnection=this._db; +_7.text=_5; +if(_6){ +for(var _8 in _6){ +_7.parameters[_8]=_6[_8]; +} +} +_7.execute(); +return _7.getResult(); +},_beginTransaction:function(){ +this._db.begin(); +},_commitTransaction:function(){ +this._db.commit(); +},isAvailable:function(){ +return true; +},put:function(_9,_a,_b,_c){ +if(this.isValidKey(_9)==false){ +throw new Error("Invalid key given: "+_9); +} +_c=_c||this.DEFAULT_NAMESPACE; +if(this.isValidKey(_c)==false){ +throw new Error("Invalid namespace given: "+_c); +} +try{ +this._sql("DELETE FROM "+this.TABLE_NAME+" WHERE namespace = :namespace AND key = :key",{":namespace":_c,":key":_9}); +this._sql("INSERT INTO "+this.TABLE_NAME+" VALUES (:namespace, :key, :value)",{":namespace":_c,":key":_9,":value":_a}); +} +catch(e){ +_b(this.FAILED,_9,e.toString()); +return; +} +if(_b){ +_b(this.SUCCESS,_9,null,_c); +} +},get:function(_d,_e){ +if(this.isValidKey(_d)==false){ +throw new Error("Invalid key given: "+_d); +} +_e=_e||this.DEFAULT_NAMESPACE; +var _f=this._sql("SELECT * FROM "+this.TABLE_NAME+" WHERE namespace = :namespace AND key = :key",{":namespace":_e,":key":_d}); +if(_f.data&&_f.data.length){ +return _f.data[0].value; +} +return null; +},getNamespaces:function(){ +var _10=[this.DEFAULT_NAMESPACE]; +var rs=this._sql("SELECT namespace FROM "+this.TABLE_NAME+" DESC GROUP BY namespace"); +if(rs.data){ +for(var i=0;i>built +define("dojox/storage/AirEncryptedLocalStorageProvider",["dijit","dojo","dojox","dojo/require!dojox/storage/manager,dojox/storage/Provider"],function(_1,_2,_3){ +_2.provide("dojox.storage.AirEncryptedLocalStorageProvider"); +_2.require("dojox.storage.manager"); +_2.require("dojox.storage.Provider"); +if(_2.isAIR){ +(function(){ +if(!_4){ +var _4={}; +} +_4.ByteArray=window.runtime.flash.utils.ByteArray; +_4.EncryptedLocalStore=window.runtime.flash.data.EncryptedLocalStore,_2.declare("dojox.storage.AirEncryptedLocalStorageProvider",[_3.storage.Provider],{initialize:function(){ +_3.storage.manager.loaded(); +},isAvailable:function(){ +return true; +},_getItem:function(_5){ +var _6=_4.EncryptedLocalStore.getItem("__dojo_"+_5); +return _6?_6.readUTFBytes(_6.length):""; +},_setItem:function(_7,_8){ +var _9=new _4.ByteArray(); +_9.writeUTFBytes(_8); +_4.EncryptedLocalStore.setItem("__dojo_"+_7,_9); +},_removeItem:function(_a){ +_4.EncryptedLocalStore.removeItem("__dojo_"+_a); +},put:function(_b,_c,_d,_e){ +if(this.isValidKey(_b)==false){ +throw new Error("Invalid key given: "+_b); +} +_e=_e||this.DEFAULT_NAMESPACE; +if(this.isValidKey(_e)==false){ +throw new Error("Invalid namespace given: "+_e); +} +try{ +var _f=this._getItem("namespaces")||"|"; +if(_f.indexOf("|"+_e+"|")==-1){ +this._setItem("namespaces",_f+_e+"|"); +} +var _10=this._getItem(_e+"_keys")||"|"; +if(_10.indexOf("|"+_b+"|")==-1){ +this._setItem(_e+"_keys",_10+_b+"|"); +} +this._setItem("_"+_e+"_"+_b,_c); +} +catch(e){ +_d(this.FAILED,_b,e.toString(),_e); +return; +} +if(_d){ +_d(this.SUCCESS,_b,null,_e); +} +},get:function(key,_11){ +if(this.isValidKey(key)==false){ +throw new Error("Invalid key given: "+key); +} +_11=_11||this.DEFAULT_NAMESPACE; +return this._getItem("_"+_11+"_"+key); +},getNamespaces:function(){ +var _12=[this.DEFAULT_NAMESPACE]; +var _13=(this._getItem("namespaces")||"|").split("|"); +for(var i=0;i<_13.length;i++){ +if(_13[i].length&&_13[i]!=this.DEFAULT_NAMESPACE){ +_12.push(_13[i]); +} +} +return _12; +},getKeys:function(_14){ +_14=_14||this.DEFAULT_NAMESPACE; +if(this.isValidKey(_14)==false){ +throw new Error("Invalid namespace given: "+_14); +} +var _15=[]; +var _16=(this._getItem(_14+"_keys")||"|").split("|"); +for(var i=0;i<_16.length;i++){ +if(_16[i].length){ +_15.push(_16[i]); +} +} +return _15; +},clear:function(_17){ +if(this.isValidKey(_17)==false){ +throw new Error("Invalid namespace given: "+_17); +} +var _18=this._getItem("namespaces")||"|"; +if(_18.indexOf("|"+_17+"|")!=-1){ +this._setItem("namespaces",_18.replace("|"+_17+"|","|")); +} +var _19=(this._getItem(_17+"_keys")||"|").split("|"); +for(var i=0;i<_19.length;i++){ +if(_19[i].length){ +this._removeItem(_17+"_"+_19[i]); +} +} +this._removeItem(_17+"_keys"); +},remove:function(key,_1a){ +_1a=_1a||this.DEFAULT_NAMESPACE; +var _1b=this._getItem(_1a+"_keys")||"|"; +if(_1b.indexOf("|"+key+"|")!=-1){ +this._setItem(_1a+"_keys",_1b.replace("|"+key+"|","|")); +} +this._removeItem("_"+_1a+"_"+key); +},putMultiple:function(_1c,_1d,_1e,_1f){ +if(this.isValidKeyArray(_1c)===false||!_1d instanceof Array||_1c.length!=_1d.length){ +throw new Error("Invalid arguments: keys = ["+_1c+"], values = ["+_1d+"]"); +} +if(_1f==null||typeof _1f=="undefined"){ +_1f=this.DEFAULT_NAMESPACE; +} +if(this.isValidKey(_1f)==false){ +throw new Error("Invalid namespace given: "+_1f); +} +this._statusHandler=_1e; +try{ +for(var i=0;i<_1c.length;i++){ +this.put(_1c[i],_1d[i],null,_1f); +} +} +catch(e){ +if(_1e){ +_1e(this.FAILED,_1c,e.toString(),_1f); +} +return; +} +if(_1e){ +_1e(this.SUCCESS,_1c,null); +} +},getMultiple:function(_20,_21){ +if(this.isValidKeyArray(_20)===false){ +throw new Error("Invalid key array given: "+_20); +} +if(_21==null||typeof _21=="undefined"){ +_21=this.DEFAULT_NAMESPACE; +} +if(this.isValidKey(_21)==false){ +throw new Error("Invalid namespace given: "+_21); +} +var _22=[]; +for(var i=0;i<_20.length;i++){ +_22[i]=this.get(_20[i],_21); +} +return _22; +},removeMultiple:function(_23,_24){ +_24=_24||this.DEFAULT_NAMESPACE; +for(var i=0;i<_23.length;i++){ +this.remove(_23[i],_24); +} +},isPermanent:function(){ +return true; +},getMaximumSize:function(){ +return this.SIZE_NO_LIMIT; +},hasSettingsUI:function(){ +return false; +},showSettingsUI:function(){ +throw new Error(this.declaredClass+" does not support a storage settings user-interface"); +},hideSettingsUI:function(){ +throw new Error(this.declaredClass+" does not support a storage settings user-interface"); +}}); +_3.storage.manager.register("dojox.storage.AirEncryptedLocalStorageProvider",new _3.storage.AirEncryptedLocalStorageProvider()); +_3.storage.manager.initialize(); +})(); +} +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirEncryptedLocalStorageProvider.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirEncryptedLocalStorageProvider.js.uncompressed.js new file mode 100644 index 00000000..c84686e1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirEncryptedLocalStorageProvider.js.uncompressed.js @@ -0,0 +1,220 @@ +// wrapped by build app +define("dojox/storage/AirEncryptedLocalStorageProvider", ["dijit","dojo","dojox","dojo/require!dojox/storage/manager,dojox/storage/Provider"], function(dijit,dojo,dojox){ +dojo.provide("dojox.storage.AirEncryptedLocalStorageProvider"); +dojo.require("dojox.storage.manager"); +dojo.require("dojox.storage.Provider"); + +if (dojo.isAIR) { + (function(){ + + if (!air) { + var air = {}; + } + air.ByteArray = window.runtime.flash.utils.ByteArray; + air.EncryptedLocalStore = window.runtime.flash.data.EncryptedLocalStore, + + // summary: + // Storage provider that uses features in the Adobe AIR runtime to achieve + // permanent storage + dojo.declare("dojox.storage.AirEncryptedLocalStorageProvider", [ dojox.storage.Provider ], { + initialize: function(){ + // indicate that this storage provider is now loaded + dojox.storage.manager.loaded(); + }, + + isAvailable: function(){ + return true; + }, + + _getItem: function(key){ + var storedValue = air.EncryptedLocalStore.getItem("__dojo_" + key); + return storedValue ? storedValue.readUTFBytes(storedValue.length) : ""; + }, + + _setItem: function(key, value){ + var bytes = new air.ByteArray(); + bytes.writeUTFBytes(value); + air.EncryptedLocalStore.setItem("__dojo_" + key, bytes); + }, + + _removeItem: function(key){ + air.EncryptedLocalStore.removeItem("__dojo_" + key); + }, + + put: function(key, value, resultsHandler, namespace){ + if(this.isValidKey(key) == false){ + throw new Error("Invalid key given: " + key); + } + namespace = namespace||this.DEFAULT_NAMESPACE; + if(this.isValidKey(namespace) == false){ + throw new Error("Invalid namespace given: " + namespace); + } + + // try to store the value + try{ + var namespaces = this._getItem("namespaces")||'|'; + if(namespaces.indexOf('|'+namespace+'|')==-1){ + this._setItem("namespaces", namespaces + namespace + '|'); + } + var keys = this._getItem(namespace + "_keys")||'|'; + if(keys.indexOf('|'+key+'|')==-1){ + this._setItem(namespace + "_keys", keys + key + '|'); + } + this._setItem('_' + namespace + '_' + key, value); + }catch(e){ + // indicate we failed + console.debug("dojox.storage.AirEncryptedLocalStorageProvider.put:", e); + resultsHandler(this.FAILED, key, e.toString(), namespace); + return; + } + + if(resultsHandler){ + resultsHandler(this.SUCCESS, key, null, namespace); + } + }, + + get: function(key, namespace){ + if(this.isValidKey(key) == false){ + throw new Error("Invalid key given: " + key); + } + namespace = namespace||this.DEFAULT_NAMESPACE; + return this._getItem('_' + namespace + '_' + key); + }, + + getNamespaces: function(){ + var results = [ this.DEFAULT_NAMESPACE ]; + var namespaces = (this._getItem("namespaces")||'|').split('|'); + for (var i=0;i>built +define("dojox/storage/AirFileStorageProvider",["dijit","dojo","dojox","dojo/require!dojox/storage/manager,dojox/storage/Provider"],function(_1,_2,_3){ +_2.provide("dojox.storage.AirFileStorageProvider"); +_2.require("dojox.storage.manager"); +_2.require("dojox.storage.Provider"); +if(_2.isAIR){ +(function(){ +if(!_4){ +var _4={}; +} +_4.File=window.runtime.flash.filesystem.File; +_4.FileStream=window.runtime.flash.filesystem.FileStream; +_4.FileMode=window.runtime.flash.filesystem.FileMode; +_2.declare("dojox.storage.AirFileStorageProvider",[_3.storage.Provider],{initialized:false,_storagePath:"__DOJO_STORAGE/",initialize:function(){ +this.initialized=false; +try{ +var _5=_4.File.applicationStorageDirectory.resolvePath(this._storagePath); +if(!_5.exists){ +_5.createDirectory(); +} +this.initialized=true; +} +catch(e){ +} +_3.storage.manager.loaded(); +},isAvailable:function(){ +return true; +},put:function(_6,_7,_8,_9){ +if(this.isValidKey(_6)==false){ +throw new Error("Invalid key given: "+_6); +} +_9=_9||this.DEFAULT_NAMESPACE; +if(this.isValidKey(_9)==false){ +throw new Error("Invalid namespace given: "+_9); +} +try{ +this.remove(_6,_9); +var _a=_4.File.applicationStorageDirectory.resolvePath(this._storagePath+_9); +if(!_a.exists){ +_a.createDirectory(); +} +var _b=_a.resolvePath(_6); +var _c=new _4.FileStream(); +_c.open(_b,_4.FileMode.WRITE); +_c.writeObject(_7); +_c.close(); +} +catch(e){ +_8(this.FAILED,_6,e.toString(),_9); +return; +} +if(_8){ +_8(this.SUCCESS,_6,null,_9); +} +},get:function(_d,_e){ +if(this.isValidKey(_d)==false){ +throw new Error("Invalid key given: "+_d); +} +_e=_e||this.DEFAULT_NAMESPACE; +var _f=null; +var _10=_4.File.applicationStorageDirectory.resolvePath(this._storagePath+_e+"/"+_d); +if(_10.exists&&!_10.isDirectory){ +var _11=new _4.FileStream(); +_11.open(_10,_4.FileMode.READ); +_f=_11.readObject(); +_11.close(); +} +return _f; +},getNamespaces:function(){ +var _12=[this.DEFAULT_NAMESPACE]; +var dir=_4.File.applicationStorageDirectory.resolvePath(this._storagePath); +var _13=dir.getDirectoryListing(),i; +for(i=0;i<_13.length;i++){ +if(_13[i].isDirectory&&_13[i].name!=this.DEFAULT_NAMESPACE){ +_12.push(_13[i].name); +} +} +return _12; +},getKeys:function(_14){ +_14=_14||this.DEFAULT_NAMESPACE; +if(this.isValidKey(_14)==false){ +throw new Error("Invalid namespace given: "+_14); +} +var _15=[]; +var dir=_4.File.applicationStorageDirectory.resolvePath(this._storagePath+_14); +if(dir.exists&&dir.isDirectory){ +var _16=dir.getDirectoryListing(),i; +for(i=0;i<_16.length;i++){ +_15.push(_16[i].name); +} +} +return _15; +},clear:function(_17){ +if(this.isValidKey(_17)==false){ +throw new Error("Invalid namespace given: "+_17); +} +var dir=_4.File.applicationStorageDirectory.resolvePath(this._storagePath+_17); +if(dir.exists&&dir.isDirectory){ +dir.deleteDirectory(true); +} +},remove:function(key,_18){ +_18=_18||this.DEFAULT_NAMESPACE; +var _19=_4.File.applicationStorageDirectory.resolvePath(this._storagePath+_18+"/"+key); +if(_19.exists&&!_19.isDirectory){ +_19.deleteFile(); +} +},putMultiple:function(_1a,_1b,_1c,_1d){ +if(this.isValidKeyArray(_1a)===false||!_1b instanceof Array||_1a.length!=_1b.length){ +throw new Error("Invalid arguments: keys = ["+_1a+"], values = ["+_1b+"]"); +} +if(_1d==null||typeof _1d=="undefined"){ +_1d=this.DEFAULT_NAMESPACE; +} +if(this.isValidKey(_1d)==false){ +throw new Error("Invalid namespace given: "+_1d); +} +this._statusHandler=_1c; +try{ +for(var i=0;i<_1a.length;i++){ +this.put(_1a[i],_1b[i],null,_1d); +} +} +catch(e){ +if(_1c){ +_1c(this.FAILED,_1a,e.toString(),_1d); +} +return; +} +if(_1c){ +_1c(this.SUCCESS,_1a,null,_1d); +} +},getMultiple:function(_1e,_1f){ +if(this.isValidKeyArray(_1e)===false){ +throw new Error("Invalid key array given: "+_1e); +} +if(_1f==null||typeof _1f=="undefined"){ +_1f=this.DEFAULT_NAMESPACE; +} +if(this.isValidKey(_1f)==false){ +throw new Error("Invalid namespace given: "+_1f); +} +var _20=[]; +for(var i=0;i<_1e.length;i++){ +_20[i]=this.get(_1e[i],_1f); +} +return _20; +},removeMultiple:function(_21,_22){ +_22=_22||this.DEFAULT_NAMESPACE; +for(var i=0;i<_21.length;i++){ +this.remove(_21[i],_22); +} +},isPermanent:function(){ +return true; +},getMaximumSize:function(){ +return this.SIZE_NO_LIMIT; +},hasSettingsUI:function(){ +return false; +},showSettingsUI:function(){ +throw new Error(this.declaredClass+" does not support a storage settings user-interface"); +},hideSettingsUI:function(){ +throw new Error(this.declaredClass+" does not support a storage settings user-interface"); +}}); +_3.storage.manager.register("dojox.storage.AirFileStorageProvider",new _3.storage.AirFileStorageProvider()); +_3.storage.manager.initialize(); +})(); +} +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirFileStorageProvider.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirFileStorageProvider.js.uncompressed.js new file mode 100644 index 00000000..89ac07bb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/AirFileStorageProvider.js.uncompressed.js @@ -0,0 +1,231 @@ +// wrapped by build app +define("dojox/storage/AirFileStorageProvider", ["dijit","dojo","dojox","dojo/require!dojox/storage/manager,dojox/storage/Provider"], function(dijit,dojo,dojox){ +dojo.provide("dojox.storage.AirFileStorageProvider"); +dojo.require("dojox.storage.manager"); +dojo.require("dojox.storage.Provider"); + +if (dojo.isAIR) { + (function(){ + + if (!air) { + var air = {}; + } + air.File = window.runtime.flash.filesystem.File; + air.FileStream = window.runtime.flash.filesystem.FileStream; + air.FileMode = window.runtime.flash.filesystem.FileMode; + + // summary: + // Storage provider that uses features in the Adobe AIR runtime to achieve + // permanent storage + dojo.declare("dojox.storage.AirFileStorageProvider", [ dojox.storage.Provider ], { + initialized: false, + + _storagePath: "__DOJO_STORAGE/", + + initialize: function(){ + this.initialized = false; + + // need to initialize our storage directory + try{ + var dir = air.File.applicationStorageDirectory.resolvePath(this._storagePath); + if (!dir.exists){ + dir.createDirectory(); + } + this.initialized = true; + }catch(e){ + console.debug("dojox.storage.AirFileStorageProvider.initialize:", e); + } + + // indicate that this storage provider is now loaded + dojox.storage.manager.loaded(); + }, + + isAvailable: function(){ + return true; + }, + + put: function(key, value, resultsHandler, namespace){ + if(this.isValidKey(key) == false){ + throw new Error("Invalid key given: " + key); + } + namespace = namespace||this.DEFAULT_NAMESPACE; + if(this.isValidKey(namespace) == false){ + throw new Error("Invalid namespace given: " + namespace); + } + + // try to store the value + try{ + this.remove(key, namespace); + + var dir = air.File.applicationStorageDirectory.resolvePath(this._storagePath + namespace); + if (!dir.exists){ + dir.createDirectory(); + } + + var file = dir.resolvePath(key); + var stream = new air.FileStream(); + stream.open(file, air.FileMode.WRITE); + stream.writeObject(value); + stream.close(); + }catch(e){ + // indicate we failed + console.debug("dojox.storage.AirFileStorageProvider.put:", e); + resultsHandler(this.FAILED, key, e.toString(), namespace); + return; + } + + if(resultsHandler){ + resultsHandler(this.SUCCESS, key, null, namespace); + } + }, + + get: function(key, namespace){ + if(this.isValidKey(key) == false){ + throw new Error("Invalid key given: " + key); + } + namespace = namespace||this.DEFAULT_NAMESPACE; + + var results = null; + + var file = air.File.applicationStorageDirectory.resolvePath(this._storagePath + namespace + '/' + key); + if (file.exists && !file.isDirectory){ + var stream = new air.FileStream(); + stream.open(file, air.FileMode.READ); + results = stream.readObject(); + stream.close(); + } + + return results; + }, + + getNamespaces: function(){ + var results = [ this.DEFAULT_NAMESPACE ]; + var dir = air.File.applicationStorageDirectory.resolvePath(this._storagePath); + var files = dir.getDirectoryListing(), i; + for (i = 0; i < files.length; i++) { + if(files[i].isDirectory && files[i].name != this.DEFAULT_NAMESPACE){ + results.push(files[i].name); + } + } + return results; + }, + + getKeys: function(namespace){ + namespace = namespace||this.DEFAULT_NAMESPACE; + if(this.isValidKey(namespace) == false){ + throw new Error("Invalid namespace given: " + namespace); + } + + var results = []; + var dir = air.File.applicationStorageDirectory.resolvePath(this._storagePath + namespace); + if (dir.exists && dir.isDirectory){ + var files = dir.getDirectoryListing(), i; + for (i = 0; i < files.length; i++) { + results.push(files[i].name); + } + } + return results; + }, + + clear: function(namespace){ + if(this.isValidKey(namespace) == false){ + throw new Error("Invalid namespace given: " + namespace); + } + var dir = air.File.applicationStorageDirectory.resolvePath(this._storagePath + namespace); + if (dir.exists && dir.isDirectory){ + dir.deleteDirectory(true); + } + }, + + remove: function(key, namespace){ + namespace = namespace||this.DEFAULT_NAMESPACE; + var file = air.File.applicationStorageDirectory.resolvePath(this._storagePath + namespace + '/' + key); + if (file.exists && !file.isDirectory){ + file.deleteFile(); + } + }, + + putMultiple: function(keys, values, resultsHandler, namespace) { + if(this.isValidKeyArray(keys) === false + || ! values instanceof Array + || keys.length != values.length){ + throw new Error("Invalid arguments: keys = [" + keys + "], values = [" + values + "]"); + } + + if(namespace == null || typeof namespace == "undefined"){ + namespace = this.DEFAULT_NAMESPACE; + } + + if(this.isValidKey(namespace) == false){ + throw new Error("Invalid namespace given: " + namespace); + } + + this._statusHandler = resultsHandler; + + // try to store the value + try{ + for(var i=0;i>built +define("dojox/storage/BehaviorStorageProvider",["dijit","dojo","dojox","dojo/require!dojox/storage/Provider,dojox/storage/manager"],function(_1,_2,_3){ +_2.provide("dojox.storage.BehaviorStorageProvider"); +_2.require("dojox.storage.Provider"); +_2.require("dojox.storage.manager"); +_2.declare("dojox.storage.BehaviorStorageProvider",[_3.storage.Provider],{store:null,storeName:"__dojox_BehaviorStorage",keys:[],initialize:function(){ +try{ +this.store=this._createStore(); +this.store.load(this.storeName); +} +catch(e){ +throw new Error("Store is not available: "+e); +} +var _4=this.get("keys","dojoxSystemNS"); +this.keys=_4||[]; +this.initialized=true; +_3.storage.manager.loaded(); +},isAvailable:function(){ +return _2.isIE&&_2.isIE>=5; +},_createStore:function(){ +var _5=_2.create("link",{id:this.storeName+"Node",style:{"display":"none"}},_2.query("head")[0]); +_5.addBehavior("#default#userdata"); +return _5; +},put:function(_6,_7,_8,_9){ +this._assertIsValidKey(_6); +_9=_9||this.DEFAULT_NAMESPACE; +this._assertIsValidNamespace(_9); +var _a=this.getFullKey(_6,_9); +_7=_2.toJson(_7); +this.store.setAttribute(_a,_7); +this.store.save(this.storeName); +var _b=this.store.getAttribute(_a)===_7; +if(_b){ +this._addKey(_a); +this.store.setAttribute("__dojoxSystemNS_keys",_2.toJson(this.keys)); +this.store.save(this.storeName); +} +if(_8){ +_8(_b?this.SUCCESS:this.FAILED,_6,null,_9); +} +},get:function(_c,_d){ +this._assertIsValidKey(_c); +_d=_d||this.DEFAULT_NAMESPACE; +this._assertIsValidNamespace(_d); +_c=this.getFullKey(_c,_d); +return _2.fromJson(this.store.getAttribute(_c)); +},getKeys:function(_e){ +_e=_e||this.DEFAULT_NAMESPACE; +this._assertIsValidNamespace(_e); +_e="__"+_e+"_"; +var _f=[]; +for(var i=0;i_1d.length){ +return false; +} +return _1d.substring(0,_1e.length)===_1e; +},_assertIsValidNamespace:function(_1f){ +if(this.isValidNamespace(_1f)===false){ +throw new Error("Invalid namespace given: "+_1f); +} +},_assertIsValidKey:function(key){ +if(this.isValidKey(key)===false){ +throw new Error("Invalid key given: "+key); +} +},_addKey:function(key){ +this._removeKey(key); +this.keys.push(key); +},_removeKey:function(key){ +this.keys=_2.filter(this.keys,function(_20){ +return _20!==key; +},this); +}}); +_3.storage.manager.register("dojox.storage.BehaviorStorageProvider",new _3.storage.BehaviorStorageProvider()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/BehaviorStorageProvider.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/BehaviorStorageProvider.js.uncompressed.js new file mode 100644 index 00000000..103ab45c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/BehaviorStorageProvider.js.uncompressed.js @@ -0,0 +1,240 @@ +// wrapped by build app +define("dojox/storage/BehaviorStorageProvider", ["dijit","dojo","dojox","dojo/require!dojox/storage/Provider,dojox/storage/manager"], function(dijit,dojo,dojox){ +dojo.provide("dojox.storage.BehaviorStorageProvider"); + +dojo.require("dojox.storage.Provider"); +dojo.require("dojox.storage.manager"); + +dojo.declare( + "dojox.storage.BehaviorStorageProvider", + [dojox.storage.Provider], + { + store: null, + + storeName: '__dojox_BehaviorStorage', + + keys: [], + + initialize: function(){ + try{ + this.store = this._createStore(); + this.store.load(this.storeName); + }catch(e){ + throw new Error("Store is not available: " + e); + } + + var keys = this.get('keys','dojoxSystemNS'); + this.keys = keys || []; + + this.initialized = true; + dojox.storage.manager.loaded(); + + }, + + isAvailable: function(){ /*Boolean*/ + // This is not completely true. UserData may + // be disabled in security settings. To *really* + // check if this is available, one needs to wait + // until the store is successfully initialized... + return dojo.isIE && dojo.isIE >= 5; + }, + + _createStore: function() { + var storeNode = dojo.create( + 'link', + {id: this.storeName + 'Node', style: {'display':'none'}}, + dojo.query('head')[0] + ); + storeNode.addBehavior('#default#userdata'); + + return storeNode; + }, + + put: function( /*string*/ key, + /*object*/ value, + /*function*/ resultsHandler, + /*string?*/ namespace){ + + this._assertIsValidKey(key); + + namespace = namespace||this.DEFAULT_NAMESPACE; + this._assertIsValidNamespace(namespace); + + var fullKey = this.getFullKey(key,namespace); + value = dojo.toJson(value); + + this.store.setAttribute(fullKey, value); + this.store.save(this.storeName); + + var success = this.store.getAttribute(fullKey) === value; + if(success){ + this._addKey(fullKey); + this.store.setAttribute('__dojoxSystemNS_keys', dojo.toJson(this.keys)); + this.store.save(this.storeName); + } + + if(resultsHandler){ + resultsHandler(success ? this.SUCCESS : this.FAILED, key, null, namespace); + } + }, + + get: function(/*string*/ key, /*string?*/ namespace){ /*Object*/ + this._assertIsValidKey(key); + + namespace = namespace||this.DEFAULT_NAMESPACE; + this._assertIsValidNamespace(namespace); + + key = this.getFullKey(key, namespace); + + return dojo.fromJson(this.store.getAttribute(key)); + }, + + getKeys: function(/*string?*/ namespace){ /*Array*/ + namespace = namespace||this.DEFAULT_NAMESPACE; + this._assertIsValidNamespace(namespace); + + namespace = '__'+namespace+'_'; + + var keys = []; + for(var i = 0; i < this.keys.length; i++){ + var currentKey = this.keys[i]; + if(this._beginsWith(currentKey,namespace)){ + currentKey = currentKey.substring(namespace.length); + keys.push(currentKey); + } + } + + return keys; + }, + + clear: function(/*string?*/ namespace){ + namespace = namespace||this.DEFAULT_NAMESPACE; + this._assertIsValidNamespace(namespace); + + namespace = '__'+namespace+'_'; + + var keys = []; + for(var i = 0; i < this.keys.length; i++){ + var currentKey = this.keys[i]; + if(this._beginsWith(currentKey,namespace)){ + keys.push(currentKey); + } + } + + dojo.forEach(keys, function(key){ + this.store.removeAttribute(key); + this._removeKey(key); + }, this); + + this.put('keys', this.keys, null, 'dojoxSystemNS'); + this.store.save(this.storeName); + }, + + remove: function(/*string*/ key, /*string?*/ namespace){ + this._assertIsValidKey(key); + + namespace = namespace||this.DEFAULT_NAMESPACE; + this._assertIsValidNamespace(namespace); + + key = this.getFullKey(key, namespace); + this.store.removeAttribute(key); + + this._removeKey(key); + this.put('keys', this.keys, null, 'dojoxSystemNS'); + this.store.save(this.storeName); + + }, + + getNamespaces: function(){ /*string[]*/ + + + var results = [ this.DEFAULT_NAMESPACE]; + + var found = {}; + found[this.DEFAULT_NAMESPACE] = true; + var tester = /^__([^_]*)_/; + + for(var i = 0; i < this.keys.length; i++){ + var currentKey = this.keys[i]; + if(tester.test(currentKey) == true){ + var currentNS = currentKey.match(tester)[1]; + if(typeof found[currentNS] == "undefined"){ + found[currentNS] = true; + results.push(currentNS); + } + } + } + + return results; + + }, + + isPermanent: function(){ /*Boolean*/ + return true; + }, + + getMaximumSize: function(){ /* mixed */ + // this *might* be more, depending on the zone + // of the current site. But 64k is guaranteed. + return 64; + }, + + hasSettingsUI: function(){ /*Boolean*/ + return false; + }, + + isValidKey: function(/*string*/ keyName){ /*Boolean*/ + if(keyName === null || keyName === undefined){ + return false; + } + + return /^[0-9A-Za-z_-]*$/.test(keyName); + }, + + isValidNamespace: function(/*string*/ keyName){ /*Boolean*/ + + if(keyName === null || keyName === undefined){ + return false; + } + + return /^[0-9A-Za-z-]*$/.test(keyName); + }, + + getFullKey: function(key, namespace){ + // checks for valid namespace and + // key are already performed. + return "__" + namespace + "_" + key; + }, + + _beginsWith: function(/* string */ haystack, /* string */ needle) { + if(needle.length > haystack.length) { + return false; + } + return haystack.substring(0,needle.length) === needle; + }, + + _assertIsValidNamespace: function(/* string */ namespace){ + if(this.isValidNamespace(namespace) === false){ + throw new Error("Invalid namespace given: " + namespace); + } + }, + + _assertIsValidKey: function(/* string */ key){ + if(this.isValidKey(key) === false){ + throw new Error("Invalid key given: " + key); + } + }, + + _addKey: function(key){ + this._removeKey(key); + this.keys.push(key); + }, + + _removeKey: function(key){ + this.keys = dojo.filter(this.keys,function(item){ return item !== key;},this); + } + } +); + +dojox.storage.manager.register("dojox.storage.BehaviorStorageProvider", new dojox.storage.BehaviorStorageProvider()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/CookieStorageProvider.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/CookieStorageProvider.js new file mode 100644 index 00000000..79d4b69d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/CookieStorageProvider.js @@ -0,0 +1,112 @@ +//>>built +define("dojox/storage/CookieStorageProvider",["dijit","dojo","dojox","dojo/require!dojox/storage/Provider,dojox/storage/manager,dojo/cookie"],function(_1,_2,_3){ +_2.provide("dojox.storage.CookieStorageProvider"); +_2.require("dojox.storage.Provider"); +_2.require("dojox.storage.manager"); +_2.require("dojo.cookie"); +_2.declare("dojox.storage.CookieStorageProvider",[_3.storage.Provider],{store:null,cookieName:"dojoxStorageCookie",storageLife:730,initialize:function(){ +this.store=_2.fromJson(_2.cookie(this.cookieName))||{}; +this.initialized=true; +_3.storage.manager.loaded(); +},isAvailable:function(){ +return _2.cookie.isSupported(); +},put:function(_4,_5,_6,_7){ +this._assertIsValidKey(_4); +_7=_7||this.DEFAULT_NAMESPACE; +this._assertIsValidNamespace(_7); +fullKey=this.getFullKey(_4,_7); +this.store[fullKey]=_2.toJson(_5); +this._save(); +var _8=_2.toJson(this.store)===_2.cookie(this.cookieName); +if(!_8){ +this.remove(_4,_7); +} +if(_6){ +_6(_8?this.SUCCESS:this.FAILED,_4,null,_7); +} +},get:function(_9,_a){ +this._assertIsValidKey(_9); +_a=_a||this.DEFAULT_NAMESPACE; +this._assertIsValidNamespace(_a); +_9=this.getFullKey(_9,_a); +return this.store[_9]?_2.fromJson(this.store[_9]):null; +},getKeys:function(_b){ +_b=_b||this.DEFAULT_NAMESPACE; +this._assertIsValidNamespace(_b); +_b="__"+_b+"_"; +var _c=[]; +for(var _d in this.store){ +if(this._beginsWith(_d,_b)){ +_d=_d.substring(_b.length); +_c.push(_d); +} +} +return _c; +},clear:function(_e){ +_e=_e||this.DEFAULT_NAMESPACE; +this._assertIsValidNamespace(_e); +_e="__"+_e+"_"; +for(var _f in this.store){ +if(this._beginsWith(_f,_e)){ +delete (this.store[_f]); +} +} +this._save(); +},remove:function(key,_10){ +_10=_10||this.DEFAULT_NAMESPACE; +this._assertIsValidNamespace(_10); +this._assertIsValidKey(key); +key=this.getFullKey(key,_10); +delete this.store[key]; +this._save(); +},getNamespaces:function(){ +var _11=[this.DEFAULT_NAMESPACE]; +var _12={}; +_12[this.DEFAULT_NAMESPACE]=true; +var _13=/^__([^_]*)_/; +for(var _14 in this.store){ +if(_13.test(_14)==true){ +var _15=_14.match(_13)[1]; +if(typeof _12[_15]=="undefined"){ +_12[_15]=true; +_11.push(_15); +} +} +} +return _11; +},isPermanent:function(){ +return true; +},getMaximumSize:function(){ +return 4; +},hasSettingsUI:function(){ +return false; +},isValidKey:function(_16){ +if(_16===null||_16===undefined){ +return false; +} +return /^[0-9A-Za-z_-]*$/.test(_16); +},isValidNamespace:function(_17){ +if(_17===null||_17===undefined){ +return false; +} +return /^[0-9A-Za-z-]*$/.test(_17); +},getFullKey:function(key,_18){ +return "__"+_18+"_"+key; +},_save:function(){ +_2.cookie(this.cookieName,_2.toJson(this.store),{expires:this.storageLife}); +},_beginsWith:function(_19,_1a){ +if(_1a.length>_19.length){ +return false; +} +return _19.substring(0,_1a.length)===_1a; +},_assertIsValidNamespace:function(_1b){ +if(this.isValidNamespace(_1b)===false){ +throw new Error("Invalid namespace given: "+_1b); +} +},_assertIsValidKey:function(key){ +if(this.isValidKey(key)===false){ +throw new Error("Invalid key given: "+key); +} +}}); +_3.storage.manager.register("dojox.storage.CookieStorageProvider",new _3.storage.CookieStorageProvider()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/CookieStorageProvider.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/CookieStorageProvider.js.uncompressed.js new file mode 100644 index 00000000..54851f78 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/CookieStorageProvider.js.uncompressed.js @@ -0,0 +1,206 @@ +// wrapped by build app +define("dojox/storage/CookieStorageProvider", ["dijit","dojo","dojox","dojo/require!dojox/storage/Provider,dojox/storage/manager,dojo/cookie"], function(dijit,dojo,dojox){ +dojo.provide("dojox.storage.CookieStorageProvider"); + +dojo.require("dojox.storage.Provider"); +dojo.require("dojox.storage.manager"); +dojo.require("dojo.cookie"); + +dojo.declare( + "dojox.storage.CookieStorageProvider", + [dojox.storage.Provider], + { + store: null, + + cookieName: 'dojoxStorageCookie', + + storageLife: 730, // in days + + initialize: function(){ + + this.store = dojo.fromJson(dojo.cookie(this.cookieName)) || {}; + + this.initialized = true; + dojox.storage.manager.loaded(); + }, + + isAvailable: function(){ /*Boolean*/ + return dojo.cookie.isSupported(); + }, + + put: function( /*string*/ key, + /*object*/ value, + /*function*/ resultsHandler, + /*string?*/ namespace){ + + this._assertIsValidKey(key); + + namespace = namespace||this.DEFAULT_NAMESPACE; + this._assertIsValidNamespace(namespace); + + fullKey = this.getFullKey(key,namespace); + + this.store[fullKey] = dojo.toJson(value); + this._save(); + + var success = dojo.toJson(this.store) === dojo.cookie(this.cookieName); + + if(!success){ + this.remove(key,namespace); + } + + if(resultsHandler){ + resultsHandler(success ? this.SUCCESS : this.FAILED, key, null, namespace); + } + + }, + + get: function(/*string*/ key, /*string?*/ namespace){ /*Object*/ + this._assertIsValidKey(key); + + namespace = namespace||this.DEFAULT_NAMESPACE; + this._assertIsValidNamespace(namespace); + + // get our full key name, which is namespace + key + key = this.getFullKey(key, namespace); + + return this.store[key] ? dojo.fromJson(this.store[key]) : null; + }, + + getKeys: function(/*string?*/ namespace){ /*Array*/ + namespace = namespace||this.DEFAULT_NAMESPACE; + this._assertIsValidNamespace(namespace); + + namespace = '__'+namespace+'_'; + + var keys = []; + for(var currentKey in this.store){ + if(this._beginsWith(currentKey,namespace)){ + currentKey = currentKey.substring(namespace.length); + keys.push(currentKey); + } + } + + return keys; + }, + + clear: function(/*string?*/ namespace){ + namespace = namespace||this.DEFAULT_NAMESPACE; + this._assertIsValidNamespace(namespace); + + namespace = '__'+namespace+'_'; + + for(var currentKey in this.store){ + if(this._beginsWith(currentKey,namespace)){ + delete(this.store[currentKey]); + } + } + + this._save(); + }, + + remove: function(/*string*/ key, /*string?*/ namespace){ + namespace = namespace||this.DEFAULT_NAMESPACE; + this._assertIsValidNamespace(namespace); + + this._assertIsValidKey(key); + key = this.getFullKey(key, namespace); + + delete this.store[key]; + this._save(); + }, + + getNamespaces: function(){ /*string[]*/ + // There must be a better way than + // to execute a regex on *every* + // item in the store. + + var results = [this.DEFAULT_NAMESPACE]; + + var found = {}; + found[this.DEFAULT_NAMESPACE] = true; + var tester = /^__([^_]*)_/; + + for(var currentKey in this.store){ + if(tester.test(currentKey) == true){ + var currentNS = currentKey.match(tester)[1]; + if(typeof found[currentNS] == "undefined"){ + found[currentNS] = true; + results.push(currentNS); + } + } + } + + return results; + }, + + isPermanent: function(){ /*Boolean*/ + return true; + }, + + getMaximumSize: function(){ /* mixed */ + return 4; + }, + + hasSettingsUI: function(){ /*Boolean*/ + return false; + }, + + isValidKey: function(/*string*/ keyName){ /*Boolean*/ + if(keyName === null || keyName === undefined){ + return false; + } + + return /^[0-9A-Za-z_-]*$/.test(keyName); + }, + + isValidNamespace: function(/*string*/ keyName){ /*Boolean*/ + // we *must* prevent namespaces from having + // underscores - else lookup of namespaces + // via RegEx (e.g. in getNamespaces ) would + // return wrong results. + // + // The only way around this would be to + // disallow underscores in keys. + + if(keyName === null || keyName === undefined){ + return false; + } + + return /^[0-9A-Za-z-]*$/.test(keyName); + }, + + getFullKey: function(key, namespace){ + // checks for valid namespace and + // key are already performed. + return "__" + namespace + "_" + key; + }, + + _save: function(){ + dojo.cookie(this.cookieName,dojo.toJson(this.store),{expires: this.storageLife}); + }, + + _beginsWith: function(/* string */ haystack, /* string */ needle) { + if(needle.length > haystack.length) { + return false; + } + return haystack.substring(0,needle.length) === needle; + }, + + _assertIsValidNamespace: function(/* string */ namespace){ + if(this.isValidNamespace(namespace) === false){ + throw new Error("Invalid namespace given: " + namespace); + } + }, + + _assertIsValidKey: function(/* string */ key){ + if(this.isValidKey(key) === false){ + throw new Error("Invalid key given: " + key); + } + } + } +); + +dojox.storage.manager.register("dojox.storage.CookieStorageProvider", new dojox.storage.CookieStorageProvider()); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/FlashStorageProvider.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/FlashStorageProvider.js new file mode 100644 index 00000000..2a8623a5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/FlashStorageProvider.js @@ -0,0 +1,204 @@ +//>>built +define("dojox/storage/FlashStorageProvider",["dijit","dojo","dojox","dojo/require!dojox/flash,dojox/storage/manager,dojox/storage/Provider"],function(_1,_2,_3){ +_2.provide("dojox.storage.FlashStorageProvider"); +_2.require("dojox.flash"); +_2.require("dojox.storage.manager"); +_2.require("dojox.storage.Provider"); +_2.declare("dojox.storage.FlashStorageProvider",_3.storage.Provider,{initialized:false,_available:null,_statusHandler:null,_flashReady:false,_pageReady:false,initialize:function(){ +if(_2.config["disableFlashStorage"]==true){ +return; +} +_3.flash.addLoadedListener(_2.hitch(this,function(){ +this._flashReady=true; +if(this._flashReady&&this._pageReady){ +this._loaded(); +} +})); +var _4=_2.moduleUrl("dojox","storage/Storage.swf").toString(); +_3.flash.setSwf(_4,false); +_2.connect(_2,"loaded",this,function(){ +this._pageReady=true; +if(this._flashReady&&this._pageReady){ +this._loaded(); +} +}); +},setFlushDelay:function(_5){ +if(_5===null||typeof _5==="undefined"||isNaN(_5)){ +throw new Error("Invalid argunment: "+_5); +} +_3.flash.comm.setFlushDelay(String(_5)); +},getFlushDelay:function(){ +return Number(_3.flash.comm.getFlushDelay()); +},flush:function(_6){ +if(_6==null||typeof _6=="undefined"){ +_6=_3.storage.DEFAULT_NAMESPACE; +} +_3.flash.comm.flush(_6); +},isAvailable:function(){ +return (this._available=!_2.config["disableFlashStorage"]); +},put:function(_7,_8,_9,_a){ +if(!this.isValidKey(_7)){ +throw new Error("Invalid key given: "+_7); +} +if(!_a){ +_a=_3.storage.DEFAULT_NAMESPACE; +} +if(!this.isValidKey(_a)){ +throw new Error("Invalid namespace given: "+_a); +} +this._statusHandler=_9; +if(_2.isString(_8)){ +_8="string:"+_8; +}else{ +_8=_2.toJson(_8); +} +_3.flash.comm.put(_7,_8,_a); +},putMultiple:function(_b,_c,_d,_e){ +if(!this.isValidKeyArray(_b)||!_c instanceof Array||_b.length!=_c.length){ +throw new Error("Invalid arguments: keys = ["+_b+"], values = ["+_c+"]"); +} +if(!_e){ +_e=_3.storage.DEFAULT_NAMESPACE; +} +if(!this.isValidKey(_e)){ +throw new Error("Invalid namespace given: "+_e); +} +this._statusHandler=_d; +var _f=_b.join(","); +var _10=[]; +for(var i=0;i<_c.length;i++){ +if(_2.isString(_c[i])){ +_c[i]="string:"+_c[i]; +}else{ +_c[i]=_2.toJson(_c[i]); +} +_10[i]=_c[i].length; +} +var _11=_c.join(""); +var _12=_10.join(","); +_3.flash.comm.putMultiple(_f,_11,_12,_e); +},get:function(key,_13){ +if(!this.isValidKey(key)){ +throw new Error("Invalid key given: "+key); +} +if(!_13){ +_13=_3.storage.DEFAULT_NAMESPACE; +} +if(!this.isValidKey(_13)){ +throw new Error("Invalid namespace given: "+_13); +} +var _14=_3.flash.comm.get(key,_13); +if(_14==""){ +return null; +} +return this._destringify(_14); +},getMultiple:function(_15,_16){ +if(!this.isValidKeyArray(_15)){ +throw new ("Invalid key array given: "+_15); +} +if(!_16){ +_16=_3.storage.DEFAULT_NAMESPACE; +} +if(!this.isValidKey(_16)){ +throw new Error("Invalid namespace given: "+_16); +} +var _17=_15.join(","); +var _18=_3.flash.comm.getMultiple(_17,_16); +var _19=eval("("+_18+")"); +for(var i=0;i<_19.length;i++){ +_19[i]=(_19[i]=="")?null:this._destringify(_19[i]); +} +return _19; +},_destringify:function(_1a){ +if(_2.isString(_1a)&&(/^string:/.test(_1a))){ +_1a=_1a.substring("string:".length); +}else{ +_1a=_2.fromJson(_1a); +} +return _1a; +},getKeys:function(_1b){ +if(!_1b){ +_1b=_3.storage.DEFAULT_NAMESPACE; +} +if(!this.isValidKey(_1b)){ +throw new Error("Invalid namespace given: "+_1b); +} +var _1c=_3.flash.comm.getKeys(_1b); +if(_1c==null||_1c=="null"){ +_1c=""; +} +_1c=_1c.split(","); +_1c.sort(); +return _1c; +},getNamespaces:function(){ +var _1d=_3.flash.comm.getNamespaces(); +if(_1d==null||_1d=="null"){ +_1d=_3.storage.DEFAULT_NAMESPACE; +} +_1d=_1d.split(","); +_1d.sort(); +return _1d; +},clear:function(_1e){ +if(!_1e){ +_1e=_3.storage.DEFAULT_NAMESPACE; +} +if(!this.isValidKey(_1e)){ +throw new Error("Invalid namespace given: "+_1e); +} +_3.flash.comm.clear(_1e); +},remove:function(key,_1f){ +if(!_1f){ +_1f=_3.storage.DEFAULT_NAMESPACE; +} +if(!this.isValidKey(_1f)){ +throw new Error("Invalid namespace given: "+_1f); +} +_3.flash.comm.remove(key,_1f); +},removeMultiple:function(_20,_21){ +if(!this.isValidKeyArray(_20)){ +_2.raise("Invalid key array given: "+_20); +} +if(!_21){ +_21=_3.storage.DEFAULT_NAMESPACE; +} +if(!this.isValidKey(_21)){ +throw new Error("Invalid namespace given: "+_21); +} +var _22=_20.join(","); +_3.flash.comm.removeMultiple(_22,_21); +},isPermanent:function(){ +return true; +},getMaximumSize:function(){ +return _3.storage.SIZE_NO_LIMIT; +},hasSettingsUI:function(){ +return true; +},showSettingsUI:function(){ +_3.flash.comm.showSettings(); +_3.flash.obj.setVisible(true); +_3.flash.obj.center(); +},hideSettingsUI:function(){ +_3.flash.obj.setVisible(false); +if(_2.isFunction(_3.storage.onHideSettingsUI)){ +_3.storage.onHideSettingsUI.call(null); +} +},getResourceList:function(){ +return []; +},_loaded:function(){ +this._allNamespaces=this.getNamespaces(); +this.initialized=true; +_3.storage.manager.loaded(); +},_onStatus:function(_23,key,_24){ +var ds=_3.storage; +var dfo=_3.flash.obj; +if(_23==ds.PENDING){ +dfo.center(); +dfo.setVisible(true); +}else{ +dfo.setVisible(false); +} +if(ds._statusHandler){ +ds._statusHandler.call(null,_23,key,null,_24); +} +}}); +_3.storage.manager.register("dojox.storage.FlashStorageProvider",new _3.storage.FlashStorageProvider()); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/FlashStorageProvider.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/FlashStorageProvider.js.uncompressed.js new file mode 100644 index 00000000..a84fdfa0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/storage/FlashStorageProvider.js.uncompressed.js @@ -0,0 +1,348 @@ +// wrapped by build app +define("dojox/storage/FlashStorageProvider", ["dijit","dojo","dojox","dojo/require!dojox/flash,dojox/storage/manager,dojox/storage/Provider"], function(dijit,dojo,dojox){ +dojo.provide("dojox.storage.FlashStorageProvider"); + +dojo.require("dojox.flash"); +dojo.require("dojox.storage.manager"); +dojo.require("dojox.storage.Provider"); + + +dojo.declare("dojox.storage.FlashStorageProvider", dojox.storage.Provider, { + // summary: + // Storage provider that uses features in Flash to achieve permanent + // storage + // description: + // Authors of this storage provider- + // Brad Neuberg, bkn3@columbia.edu + + initialized: false, + + _available: null, + _statusHandler: null, + _flashReady: false, + _pageReady: false, + + initialize: function(){ + //console.debug("FlashStorageProvider.initialize"); + if(dojo.config["disableFlashStorage"] == true){ + return; + } + + // initialize our Flash + dojox.flash.addLoadedListener(dojo.hitch(this, function(){ + //console.debug("flashReady"); + // indicate our Flash subsystem is now loaded + this._flashReady = true; + if(this._flashReady && this._pageReady){ + this._loaded(); + } + })); + var swfLoc = dojo.moduleUrl("dojox", "storage/Storage.swf").toString(); + dojox.flash.setSwf(swfLoc, false); + + // wait till page is finished loading + dojo.connect(dojo, "loaded", this, function(){ + //console.debug("pageReady"); + this._pageReady = true; + if(this._flashReady && this._pageReady){ + this._loaded(); + } + }); + }, + + // Set a new value for the flush delay timer. + // Possible values: + // 0 : Perform the flush synchronously after each "put" request + // > 0 : Wait until 'newDelay' ms have passed without any "put" request to flush + // -1 : Do not automatically flush + setFlushDelay: function(newDelay){ + if(newDelay === null || typeof newDelay === "undefined" || isNaN(newDelay)){ + throw new Error("Invalid argunment: " + newDelay); + } + + dojox.flash.comm.setFlushDelay(String(newDelay)); + }, + + getFlushDelay: function(){ + return Number(dojox.flash.comm.getFlushDelay()); + }, + + flush: function(namespace){ + //FIXME: is this test necessary? Just use !namespace + if(namespace == null || typeof namespace == "undefined"){ + namespace = dojox.storage.DEFAULT_NAMESPACE; + } + dojox.flash.comm.flush(namespace); + }, + + isAvailable: function(){ + return (this._available = !dojo.config["disableFlashStorage"]); + }, + + put: function(key, value, resultsHandler, namespace){ + if(!this.isValidKey(key)){ + throw new Error("Invalid key given: " + key); + } + + if(!namespace){ + namespace = dojox.storage.DEFAULT_NAMESPACE; + } + + if(!this.isValidKey(namespace)){ + throw new Error("Invalid namespace given: " + namespace); + } + + this._statusHandler = resultsHandler; + + // serialize the value; + // handle strings differently so they have better performance + if(dojo.isString(value)){ + value = "string:" + value; + }else{ + value = dojo.toJson(value); + } + + dojox.flash.comm.put(key, value, namespace); + }, + + putMultiple: function(keys, values, resultsHandler, namespace){ + if(!this.isValidKeyArray(keys) || ! values instanceof Array + || keys.length != values.length){ + throw new Error("Invalid arguments: keys = [" + keys + "], values = [" + values + "]"); + } + + if(!namespace){ + namespace = dojox.storage.DEFAULT_NAMESPACE; + } + + if(!this.isValidKey(namespace)){ + throw new Error("Invalid namespace given: " + namespace); + } + + this._statusHandler = resultsHandler; + + // Convert the arguments on strings we can pass along to Flash + var metaKey = keys.join(","); + var lengths = []; + for(var i=0;i
    + + + + + + + + + + +
    +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarMonth.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarMonth.html new file mode 100644 index 00000000..f0bc3e86 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarMonth.html @@ -0,0 +1,12 @@ +
    + + + + + + +
    +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarMonthYear.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarMonthYear.html new file mode 100644 index 00000000..f87a09df --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarMonthYear.html @@ -0,0 +1,31 @@ +
    + + + + + + + + + + + + +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarYear.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarYear.html new file mode 100644 index 00000000..08ca4290 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar/CalendarYear.html @@ -0,0 +1,12 @@ +
    + + + + + + +
    +
    +
    +
    +
    diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar2Pane.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar2Pane.js new file mode 100644 index 00000000..c7f907a2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar2Pane.js @@ -0,0 +1,4 @@ +//>>built +define("dojox/widget/Calendar2Pane",["dojo/_base/declare","./_CalendarBase","./_CalendarDay","./_CalendarMonthYear"],function(_1,_2,_3,_4){ +return _1("dojox.widget.Calendar2Pane",[_2,_3,_4],{}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar2Pane.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar2Pane.js.uncompressed.js new file mode 100644 index 00000000..9ec546e4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar2Pane.js.uncompressed.js @@ -0,0 +1,11 @@ +define("dojox/widget/Calendar2Pane", [ + "dojo/_base/declare", + "./_CalendarBase", + "./_CalendarDay", + "./_CalendarMonthYear" + ], function(declare, _CalendarBase, _CalendarDay, _CalendarMonthYear){ + return declare("dojox.widget.Calendar2Pane", [_CalendarBase, _CalendarDay, _CalendarMonthYear], { + // summary: + // A Calendar with two panes, the second one containing both month and year + }); +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar3Pane.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar3Pane.js new file mode 100644 index 00000000..db3e2a85 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar3Pane.js @@ -0,0 +1,4 @@ +//>>built +define("dojox/widget/Calendar3Pane",["dojo/_base/declare","./_CalendarBase","./_CalendarDay","./_CalendarMonth","./_CalendarYear"],function(_1,_2,_3,_4,_5){ +return _1("dojox.widget.Calendar3Pane",[_2,_3,_4,_5],{}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar3Pane.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar3Pane.js.uncompressed.js new file mode 100644 index 00000000..a559b009 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Calendar3Pane.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/widget/Calendar3Pane", [ + "dojo/_base/declare", + "./_CalendarBase", + "./_CalendarDay", + "./_CalendarMonth", + "./_CalendarYear" + ], function(declare, _CalendarBase, _CalendarDay, _CalendarMonth, _CalendarYear){ + return declare("dojox.widget.Calendar3Pane", [_CalendarBase, _CalendarDay, _CalendarMonth, _CalendarYear], { + // summary: + // A Calendar with three panes, includes day, month, and year views + }); +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFisheye.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFisheye.js new file mode 100644 index 00000000..821ac23a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFisheye.js @@ -0,0 +1,4 @@ +//>>built +define("dojox/widget/CalendarFisheye",["dojo/_base/declare","./Calendar","./_FisheyeFX"],function(_1,_2,_3){ +return _1("dojox.widget.CalendarFisheye",[_2,_3],{}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFisheye.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFisheye.js.uncompressed.js new file mode 100644 index 00000000..1316ec40 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFisheye.js.uncompressed.js @@ -0,0 +1,11 @@ +define("dojox/widget/CalendarFisheye", [ + "dojo/_base/declare", + "./Calendar", + "./_FisheyeFX" +], function(declare, Calendar, _FisheyeFX) { + return declare("dojox.widget.CalendarFisheye", [ Calendar, _FisheyeFX ], { + // summary: + // The standard Calendar. It includes day, month and year views. + // FisheyeLite effects are included. + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFx.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFx.js new file mode 100644 index 00000000..ce298ae4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFx.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/widget/CalendarFx",["dojo/_base/kernel","dojo/_base/declare","./CalendarFisheye","./_FisheyeFX"],function(_1,_2,_3,_4){ +_1.experimental("dojox/widget/CalendarFx"); +return _2("dojox.widget.CalendarFx",[_3,_4],{}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFx.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFx.js.uncompressed.js new file mode 100644 index 00000000..58619029 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarFx.js.uncompressed.js @@ -0,0 +1,13 @@ +define("dojox/widget/CalendarFx", [ + "dojo/_base/kernel", + "dojo/_base/declare", + "./CalendarFisheye", + "./_FisheyeFX" +], function(kernel, declare, CalendarFisheye, _FisheyeFX){ + kernel.experimental("dojox/widget/CalendarFx"); + + return declare("dojox.widget.CalendarFx", [CalendarFisheye, _FisheyeFX], { + // summary: + // The visual effects extensions for dojox/widget/Calendar. + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarViews.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarViews.js new file mode 100644 index 00000000..5973cb45 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarViews.js @@ -0,0 +1,5 @@ +//>>built +define("dojox/widget/CalendarViews",["dojo/_base/kernel"],function(_1){ +_1.experimental("dojox/widget/CalendarViews"); +return {}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarViews.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarViews.js.uncompressed.js new file mode 100644 index 00000000..e86c2d45 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/CalendarViews.js.uncompressed.js @@ -0,0 +1,6 @@ +define("dojox/widget/CalendarViews", [ + "dojo/_base/kernel" +], function(kernel){ + kernel.experimental("dojox/widget/CalendarViews"); + return {}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker.js new file mode 100644 index 00000000..80736d02 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker.js @@ -0,0 +1,265 @@ +//>>built +require({cache:{"url:dojox/widget/ColorPicker/ColorPicker.html":"\n\t\n\t\t\n\t\t\n\t\t\n\t\n
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\"${saturationPickerTitle}\"\n\t\t\t\t\"\"\n\t\t\t
    \n\t\t
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\"${huePickerTitle}\"\n\t\t\t\t
    \n\t\t\t\t \"\"\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    ${degLabel}
    ${percentSign}
    ${percentSign}
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t
    \n\n"}}); +define("dojox/widget/ColorPicker",["dojo/_base/kernel","dojo/_base/declare","dojo/_base/lang","dojo/_base/array","dojo/_base/html","dojo/_base/connect","dojo/_base/sniff","dojo/_base/window","dojo/_base/event","dojo/dom","dojo/dom-class","dojo/keys","dojo/fx","dojo/dnd/move","dijit/registry","dijit/_base/focus","dijit/form/_FormWidget","dijit/typematic","dojox/color","dojo/i18n","dojo/i18n!./nls/ColorPicker","dojo/i18n!dojo/cldr/nls/number","dojo/text!./ColorPicker/ColorPicker.html"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,fx,_d,_e,_f,_10,_11,_12,_13,_14,_15,_16){ +_1.experimental("dojox.widget.ColorPicker"); +var _17=function(hex){ +return hex; +}; +return _2("dojox.widget.ColorPicker",_10,{showRgb:true,showHsv:true,showHex:true,webSafe:true,animatePoint:true,slideDuration:250,liveUpdate:false,PICKER_HUE_H:150,PICKER_SAT_VAL_H:150,PICKER_SAT_VAL_W:150,PICKER_HUE_SELECTOR_H:8,PICKER_SAT_SELECTOR_H:10,PICKER_SAT_SELECTOR_W:10,value:"#ffffff",_underlay:require.toUrl("dojox/widget/ColorPicker/images/underlay.png"),_hueUnderlay:require.toUrl("dojox/widget/ColorPicker/images/hue.png"),_pickerPointer:require.toUrl("dojox/widget/ColorPicker/images/pickerPointer.png"),_huePickerPointer:require.toUrl("dojox/widget/ColorPicker/images/hueHandle.png"),_huePickerPointerAlly:require.toUrl("dojox/widget/ColorPicker/images/hueHandleA11y.png"),templateString:_16,postMixInProperties:function(){ +if(_b.contains(_8.body(),"dijit_a11y")){ +this._huePickerPointer=this._huePickerPointerAlly; +} +this._uId=_e.getUniqueId(this.id); +_3.mixin(this,_13.getLocalization("dojox.widget","ColorPicker")); +_3.mixin(this,_13.getLocalization("dojo.cldr","number")); +this.inherited(arguments); +},postCreate:function(){ +this.inherited(arguments); +if(_7("ie")<7){ +this.colorUnderlay.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+this._underlay+"', sizingMethod='scale')"; +this.colorUnderlay.src=this._blankGif.toString(); +} +if(!this.showRgb){ +this.rgbNode.style.visibility="hidden"; +} +if(!this.showHsv){ +this.hsvNode.style.visibility="hidden"; +} +if(!this.showHex){ +this.hexNode.style.visibility="hidden"; +} +if(!this.webSafe){ +this.safePreviewNode.style.visibility="hidden"; +} +},startup:function(){ +if(this._started){ +return; +} +this._started=true; +this.set("value",this.value); +this._mover=new _d.boxConstrainedMoveable(this.cursorNode,{box:{t:-(this.PICKER_SAT_SELECTOR_H/2),l:-(this.PICKER_SAT_SELECTOR_W/2),w:this.PICKER_SAT_VAL_W,h:this.PICKER_SAT_VAL_H}}); +this._hueMover=new _d.boxConstrainedMoveable(this.hueCursorNode,{box:{t:-(this.PICKER_HUE_SELECTOR_H/2),l:0,w:0,h:this.PICKER_HUE_H}}); +this._subs=[]; +this._subs.push(_6.subscribe("/dnd/move/stop",_3.hitch(this,"_clearTimer"))); +this._subs.push(_6.subscribe("/dnd/move/start",_3.hitch(this,"_setTimer"))); +this._keyListeners=[]; +this._connects.push(_11.addKeyListener(this.hueCursorNode,{charOrCode:_c.UP_ARROW,shiftKey:false,metaKey:false,ctrlKey:false,altKey:false},this,_3.hitch(this,this._updateHueCursorNode),25,25)); +this._connects.push(_11.addKeyListener(this.hueCursorNode,{charOrCode:_c.DOWN_ARROW,shiftKey:false,metaKey:false,ctrlKey:false,altKey:false},this,_3.hitch(this,this._updateHueCursorNode),25,25)); +this._connects.push(_11.addKeyListener(this.cursorNode,{charOrCode:_c.UP_ARROW,shiftKey:false,metaKey:false,ctrlKey:false,altKey:false},this,_3.hitch(this,this._updateCursorNode),25,25)); +this._connects.push(_11.addKeyListener(this.cursorNode,{charOrCode:_c.DOWN_ARROW,shiftKey:false,metaKey:false,ctrlKey:false,altKey:false},this,_3.hitch(this,this._updateCursorNode),25,25)); +this._connects.push(_11.addKeyListener(this.cursorNode,{charOrCode:_c.LEFT_ARROW,shiftKey:false,metaKey:false,ctrlKey:false,altKey:false},this,_3.hitch(this,this._updateCursorNode),25,25)); +this._connects.push(_11.addKeyListener(this.cursorNode,{charOrCode:_c.RIGHT_ARROW,shiftKey:false,metaKey:false,ctrlKey:false,altKey:false},this,_3.hitch(this,this._updateCursorNode),25,25)); +},_setValueAttr:function(_18,_19){ +if(!this._started){ +return; +} +this.setColor(_18,_19); +},setColor:function(col,_1a){ +col=_12.fromString(col); +this._updatePickerLocations(col); +this._updateColorInputs(col); +this._updateValue(col,_1a); +},_setTimer:function(_1b){ +if(_1b.node!=this.cursorNode&&_1b.node!=this.hueCursorNode){ +return; +} +_f.focus(_1b.node); +_a.setSelectable(this.domNode,false); +this._timer=setInterval(_3.hitch(this,"_updateColor"),45); +},_clearTimer:function(_1c){ +if(!this._timer){ +return; +} +clearInterval(this._timer); +this._timer=null; +this.onChange(this.value); +_a.setSelectable(this.domNode,true); +},_setHue:function(h){ +_5.style(this.colorUnderlay,"backgroundColor",_12.fromHsv(h,100,100).toHex()); +},_updateHueCursorNode:function(_1d,_1e,e){ +if(_1d!==-1){ +var y=_5.style(this.hueCursorNode,"top"); +var _1f=this.PICKER_HUE_SELECTOR_H/2; +y+=_1f; +var _20=false; +if(e.charOrCode==_c.UP_ARROW){ +if(y>0){ +y-=1; +_20=true; +} +}else{ +if(e.charOrCode==_c.DOWN_ARROW){ +if(y0){ +y-=1; +_25=true; +} +}else{ +if(e.charOrCode==_c.DOWN_ARROW){ +if(y0){ +x-=1; +_25=true; +} +}else{ +if(e.charOrCode==_c.RIGHT_ARROW){ +if(x\n\t\n\t\t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\"${saturationPickerTitle}\"\n\t\t\t\t\"\"\n\t\t\t
    \n\t\t\n\t\t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\"${huePickerTitle}\"\n\t\t\t\t
    \n\t\t\t\t \"\"\n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    ${degLabel}
    ${percentSign}
    ${percentSign}
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\n\t\n\n\n"}}); +define("dojox/widget/ColorPicker", [ + "dojo/_base/kernel","dojo/_base/declare","dojo/_base/lang","dojo/_base/array", + "dojo/_base/html","dojo/_base/connect","dojo/_base/sniff","dojo/_base/window", + "dojo/_base/event","dojo/dom","dojo/dom-class","dojo/keys","dojo/fx","dojo/dnd/move", + "dijit/registry","dijit/_base/focus","dijit/form/_FormWidget","dijit/typematic", + "dojox/color","dojo/i18n","dojo/i18n!./nls/ColorPicker","dojo/i18n!dojo/cldr/nls/number", + "dojo/text!./ColorPicker/ColorPicker.html" +], function(kernel,declare,lang,ArrayUtil,html,Hub,has,win,Event,DOM,DOMClass,Keys,fx,move, + registry,FocusManager,FormWidget,Typematic,color,i18n,bundle1,bundle2,template){ + + kernel.experimental("dojox.widget.ColorPicker"); + + var webSafeFromHex = function(hex){ + // stub, this is planned later: + return hex; + }; + + // TODO: shouldn't this extend _FormValueWidget? + return declare("dojox.widget.ColorPicker", FormWidget, { + // summary: + // a HSV color picker - similar to Photoshop picker + // description: + // Provides an interactive HSV ColorPicker similar to + // PhotoShop's color selction tool. This is an enhanced + // version of the default dijit.ColorPalette, though provides + // no accessibility. + // example: + // | var picker = new dojox.widget.ColorPicker({ + // | // a couple of example toggles: + // | animatePoint:false, + // | showHsv: false, + // | webSafe: false, + // | showRgb: false + // | }); + // example: + // | + // |
    + + // showRgb: Boolean + // show/update RGB input nodes + showRgb: true, + + // showHsv: Boolean + // show/update HSV input nodes + showHsv: true, + + // showHex: Boolean + // show/update Hex value field + showHex: true, + + // webSafe: Boolean + // deprecated? or just use a toggle to show/hide that node, too? + webSafe: true, + + // animatePoint: Boolean + // toggle to use slideTo (true) or just place the cursor (false) on click + animatePoint: true, + + // slideDuration: Integer + // time in ms picker node will slide to next location (non-dragging) when animatePoint=true + slideDuration: 250, + + // liveUpdate: Boolean + // Set to true to fire onChange in an indeterminate way + liveUpdate: false, + + // PICKER_HUE_H: int + // Height of the hue picker, used to calculate positions + PICKER_HUE_H: 150, + + // PICKER_SAT_VAL_H: int + // Height of the 2d picker, used to calculate positions + PICKER_SAT_VAL_H: 150, + + // PICKER_SAT_VAL_W: int + // Width of the 2d picker, used to calculate positions + PICKER_SAT_VAL_W: 150, + + // PICKER_HUE_SELECTOR_H: int + // Height of the hue selector DOM node, used to calc offsets so that selection + // is center of the image node. + PICKER_HUE_SELECTOR_H: 8, + + // PICKER_SAT_SELECTOR_H: int + // Height of the saturation selector DOM node, used to calc offsets so that selection + // is center of the image node. + PICKER_SAT_SELECTOR_H: 10, + + // PICKER_SAT_SELECTOR_W: int + // Width of the saturation selector DOM node, used to calc offsets so that selection + // is center of the image node. + PICKER_SAT_SELECTOR_W: 10, + + // value: String + // Default color for this component. Only hex values are accepted as incoming/returned + // values. Adjust this value with `.attr`, eg: dijit.byId("myPicker").attr("value", "#ededed"); + // to cause the points to adjust and the values to reflect the current color. + value: "#ffffff", + + _underlay: require.toUrl("dojox/widget/ColorPicker/images/underlay.png"), + + _hueUnderlay: require.toUrl("dojox/widget/ColorPicker/images/hue.png"), + + _pickerPointer: require.toUrl("dojox/widget/ColorPicker/images/pickerPointer.png"), + + _huePickerPointer: require.toUrl("dojox/widget/ColorPicker/images/hueHandle.png"), + + _huePickerPointerAlly: require.toUrl("dojox/widget/ColorPicker/images/hueHandleA11y.png"), + + templateString: template, + + postMixInProperties: function(){ + if(DOMClass.contains(win.body(), "dijit_a11y")){ + // Use the pointer that will show up in high contrast. + this._huePickerPointer = this._huePickerPointerAlly; + } + this._uId = registry.getUniqueId(this.id); + lang.mixin(this, i18n.getLocalization("dojox.widget", "ColorPicker")); + lang.mixin(this, i18n.getLocalization("dojo.cldr", "number")); + this.inherited(arguments); + }, + + postCreate: function(){ + // summary: + // As quickly as we can, set up ie6 alpha-filter support for our + // underlay. we don't do image handles (done in css), just the 'core' + // of this widget: the underlay. + this.inherited(arguments); + if(has("ie") < 7){ + this.colorUnderlay.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+this._underlay+"', sizingMethod='scale')"; + this.colorUnderlay.src = this._blankGif.toString(); + } + // hide toggle-able nodes: + if(!this.showRgb){ this.rgbNode.style.visibility = "hidden"; } + if(!this.showHsv){ this.hsvNode.style.visibility = "hidden"; } + if(!this.showHex){ this.hexNode.style.visibility = "hidden"; } + if(!this.webSafe){ this.safePreviewNode.style.visibility = "hidden"; } + }, + + startup: function(){ + if(this._started){ + return; + } + this._started = true; + this.set("value", this.value); + this._mover = new move.boxConstrainedMoveable(this.cursorNode, { + box: { + t: -(this.PICKER_SAT_SELECTOR_H/2), + l: -(this.PICKER_SAT_SELECTOR_W/2), + w:this.PICKER_SAT_VAL_W, + h:this.PICKER_SAT_VAL_H + } + }); + + this._hueMover = new move.boxConstrainedMoveable(this.hueCursorNode, { + box: { + t: -(this.PICKER_HUE_SELECTOR_H/2), + l:0, + w:0, + h:this.PICKER_HUE_H + } + }); + + this._subs = []; + // no dnd/move/move published ... use a timer: + this._subs.push(Hub.subscribe("/dnd/move/stop", lang.hitch(this, "_clearTimer"))); + this._subs.push(Hub.subscribe("/dnd/move/start", lang.hitch(this, "_setTimer"))); + + // Bind to up, down, left and right arrows on the hue and saturation nodes. + this._keyListeners = []; + this._connects.push(Typematic.addKeyListener(this.hueCursorNode,{ + charOrCode: Keys.UP_ARROW, + shiftKey: false, + metaKey: false, + ctrlKey: false, + altKey: false + }, this, lang.hitch(this, this._updateHueCursorNode), 25, 25)); + this._connects.push(Typematic.addKeyListener(this.hueCursorNode,{ + charOrCode: Keys.DOWN_ARROW, + shiftKey: false, + metaKey: false, + ctrlKey: false, + altKey: false + }, this, lang.hitch(this, this._updateHueCursorNode), 25, 25)); + this._connects.push(Typematic.addKeyListener(this.cursorNode,{ + charOrCode: Keys.UP_ARROW, + shiftKey: false, + metaKey: false, + ctrlKey: false, + altKey: false + }, this, lang.hitch(this, this._updateCursorNode), 25, 25)); + this._connects.push(Typematic.addKeyListener(this.cursorNode,{ + charOrCode: Keys.DOWN_ARROW, + shiftKey: false, + metaKey: false, + ctrlKey: false, + altKey: false + }, this, lang.hitch(this, this._updateCursorNode), 25, 25)); + this._connects.push(Typematic.addKeyListener(this.cursorNode,{ + charOrCode: Keys.LEFT_ARROW, + shiftKey: false, + metaKey: false, + ctrlKey: false, + altKey: false + }, this, lang.hitch(this, this._updateCursorNode), 25, 25)); + this._connects.push(Typematic.addKeyListener(this.cursorNode,{ + charOrCode: Keys.RIGHT_ARROW, + shiftKey: false, + metaKey: false, + ctrlKey: false, + altKey: false + }, this, lang.hitch(this, this._updateCursorNode), 25, 25)); + }, + + _setValueAttr: function(value, fireOnChange){ + if(!this._started){ return; } + this.setColor(value, fireOnChange); + }, + + setColor: function(/* String */col, force){ + // summary: + // Set a color on a picker. Usually used to set + // initial color as an alternative to passing defaultColor option + // to the constructor. + col = color.fromString(col); + this._updatePickerLocations(col); + this._updateColorInputs(col); + this._updateValue(col, force); + }, + + _setTimer: function(/* dojo/dnd/Mover */mover){ + if(mover.node != this.cursorNode && mover.node != this.hueCursorNode){ return; } + // FIXME: should I assume this? focus on mouse down so on mouse up + FocusManager.focus(mover.node); + DOM.setSelectable(this.domNode,false); + this._timer = setInterval(lang.hitch(this, "_updateColor"), 45); + }, + + _clearTimer: function(/* dojo/dnd/Mover */mover){ + if(!this._timer){ return; } + clearInterval(this._timer); + this._timer = null; + this.onChange(this.value); + DOM.setSelectable(this.domNode,true); + }, + + _setHue: function(/* Float */h){ + // summary: + // Sets a natural color background for the + // underlay image against closest hue value (full saturation) + // h: + // 0..360 + html.style(this.colorUnderlay, "backgroundColor", color.fromHsv(h,100,100).toHex()); + + }, + + _updateHueCursorNode: function(count, node, e){ + // summary: + // Function used by the typematic code to handle cursor position and update + // via keyboard. + // count: Number + // -1 means stop, anything else is just how many times it was called. + // node: DomNode + // The node generating the event. + // e: Event + // The event. + if(count !== -1){ + var y = html.style(this.hueCursorNode, "top"); + var selCenter = this.PICKER_HUE_SELECTOR_H/2; + + // Account for our offset + y += selCenter; + var update = false; + if(e.charOrCode == Keys.UP_ARROW){ + if(y > 0){ + y -= 1; + update = true; + } + }else if(e.charOrCode == Keys.DOWN_ARROW){ + if(y < this.PICKER_HUE_H){ + y += 1; + update = true; + } + } + y -= selCenter; + if(update){ + html.style(this.hueCursorNode, "top", y + "px"); + } + }else{ + this._updateColor(true); + } + }, + + _updateCursorNode: function(count, node, e){ + // summary: + // Function used by the typematic code to handle cursor position and update + // via keyboard. + // count: + // -1 means stop, anything else is just how many times it was called. + // node: + // The node generating the event. + // e: + // The event. + var selCenterH = this.PICKER_SAT_SELECTOR_H/2; + var selCenterW = this.PICKER_SAT_SELECTOR_W/2; + + if(count !== -1){ + var y = html.style(this.cursorNode, "top"); + var x = html.style(this.cursorNode, "left"); + + // Account for our offsets to center + y += selCenterH; + x += selCenterW; + + var update = false; + if(e.charOrCode == Keys.UP_ARROW){ + if(y > 0){ + y -= 1; + update = true; + } + }else if(e.charOrCode == Keys.DOWN_ARROW){ + if(y < this.PICKER_SAT_VAL_H){ + y += 1; + update = true; + } + }else if(e.charOrCode == Keys.LEFT_ARROW){ + if(x > 0){ + x -= 1; + update = true; + } + }else if(e.charOrCode == Keys.RIGHT_ARROW){ + if(x < this.PICKER_SAT_VAL_W){ + x += 1; + update = true; + } + } + if(update){ + // Account for our offsets to center + y -= selCenterH; + x -= selCenterW; + html.style(this.cursorNode, "top", y + "px"); + html.style(this.cursorNode, "left", x + "px"); + } + }else{ + this._updateColor(true); + } + }, + + _updateColor: function(fireChange){ + // summary: + // update the previewNode color, and input values [optional] + + var hueSelCenter = this.PICKER_HUE_SELECTOR_H/2, + satSelCenterH = this.PICKER_SAT_SELECTOR_H/2, + satSelCenterW = this.PICKER_SAT_SELECTOR_W/2; + + var _huetop = html.style(this.hueCursorNode,"top") + hueSelCenter, + _pickertop = html.style(this.cursorNode,"top") + satSelCenterH, + _pickerleft = html.style(this.cursorNode,"left") + satSelCenterW, + h = Math.round(360 - (_huetop / this.PICKER_HUE_H * 360)), + col = color.fromHsv(h, _pickerleft / this.PICKER_SAT_VAL_W * 100, 100 - (_pickertop / this.PICKER_SAT_VAL_H * 100)) + ; + + this._updateColorInputs(col); + this._updateValue(col, fireChange); + + // update hue, not all the pickers + if(h!=this._hue){ + this._setHue(h); + } + }, + + _colorInputChange: function(e){ + // summary: + // updates picker position and inputs + // according to rgb, hex or hsv input changes + var col, hasit = false; + switch(e.target){ + //transform to hsv to pixels + + case this.hexCode: + col = color.fromString(e.target.value); + hasit = true; + + break; + case this.Rval: + case this.Gval: + case this.Bval: + col = color.fromArray([this.Rval.value, this.Gval.value, this.Bval.value]); + hasit = true; + break; + case this.Hval: + case this.Sval: + case this.Vval: + col = color.fromHsv(this.Hval.value, this.Sval.value, this.Vval.value); + hasit = true; + break; + } + + if(hasit){ + this._updatePickerLocations(col); + this._updateColorInputs(col); + this._updateValue(col, true); + } + + }, + + _updateValue: function(/* dojox/color/Color */col, /* Boolean */fireChange){ + // summary: + // updates the value of the widget + // can cancel reverse onChange by specifying second param + var hex = col.toHex(); + + this.value = this.valueNode.value = hex; + + // anytime we muck with the color, fire onChange? + if(fireChange && (!this._timer || this.liveUpdate)){ + this.onChange(hex); + } + }, + + _updatePickerLocations: function(/* dojox/color/Color */col){ + // summary: + // update handles on the pickers acording to color values + + var hueSelCenter = this.PICKER_HUE_SELECTOR_H/2, + satSelCenterH = this.PICKER_SAT_SELECTOR_H/2, + satSelCenterW = this.PICKER_SAT_SELECTOR_W/2; + + var hsv = col.toHsv(), + ypos = Math.round(this.PICKER_HUE_H - hsv.h / 360 * this.PICKER_HUE_H) - hueSelCenter, + newLeft = Math.round(hsv.s / 100 * this.PICKER_SAT_VAL_W) - satSelCenterW, + newTop = Math.round(this.PICKER_SAT_VAL_H - hsv.v / 100 * this.PICKER_SAT_VAL_H) - satSelCenterH + ; + + if(this.animatePoint){ + fx.slideTo({ + node: this.hueCursorNode, + duration: this.slideDuration, + top: ypos, + left: 0 + }).play(); + + fx.slideTo({ + node: this.cursorNode, + duration: this.slideDuration, + top: newTop, + left: newLeft + }).play(); + + } + else { + html.style(this.hueCursorNode, "top", ypos + "px"); + html.style(this.cursorNode, { + left: newLeft + "px", + top: newTop + "px" + }); + } + + // limit hue calculations to only when it changes + if(hsv.h != this._hue){ + this._setHue(hsv.h); + } + + }, + + _updateColorInputs: function(/* dojox/color/Color */ col){ + // summary: + // updates color inputs that were changed through other inputs + // or by clicking on the picker + + var hex = col.toHex(); + + if(this.showRgb){ + this.Rval.value = col.r; + this.Gval.value = col.g; + this.Bval.value = col.b; + } + + if(this.showHsv){ + var hsv = col.toHsv(); + this.Hval.value = Math.round((hsv.h)); // convert to 0..360 + this.Sval.value = Math.round(hsv.s); + this.Vval.value = Math.round(hsv.v); + } + + if(this.showHex){ + this.hexCode.value = hex; + } + + this.previewNode.style.backgroundColor = hex; + + if(this.webSafe){ + this.safePreviewNode.style.backgroundColor = webSafeFromHex(hex); + } + }, + + _setHuePoint: function(/* Event */evt){ + // summary: + // set the hue picker handle on relative y coordinates + var selCenter = this.PICKER_HUE_SELECTOR_H/2; + var ypos = evt.layerY - selCenter; + if(this.animatePoint){ + fx.slideTo({ + node: this.hueCursorNode, + duration:this.slideDuration, + top: ypos, + left: 0, + onEnd: lang.hitch(this, function(){ this._updateColor(false); FocusManager.focus(this.hueCursorNode); }) + }).play(); + }else{ + html.style(this.hueCursorNode, "top", ypos + "px"); + this._updateColor(false); + } + }, + + _setPoint: function(/* Event */evt){ + // summary: + // set our picker point based on relative x/y coordinates + + // evt.preventDefault(); + var satSelCenterH = this.PICKER_SAT_SELECTOR_H/2; + var satSelCenterW = this.PICKER_SAT_SELECTOR_W/2; + var newTop = evt.layerY - satSelCenterH; + var newLeft = evt.layerX - satSelCenterW; + + if(evt){ FocusManager.focus(evt.target); } + + if(this.animatePoint){ + fx.slideTo({ + node: this.cursorNode, + duration: this.slideDuration, + top: newTop, + left: newLeft, + onEnd: lang.hitch(this, function(){ this._updateColor(true); FocusManager.focus(this.cursorNode); }) + }).play(); + }else{ + html.style(this.cursorNode, { + left: newLeft + "px", + top: newTop + "px" + }); + this._updateColor(false); + } + }, + + _handleKey: function(/* Event */e){ + // TODO: not implemented YET + // var keys = d.keys; + }, + + focus: function(){ + // summary: + // Put focus on this widget, only if focus isn't set on it already. + if(!this.focused){ + FocusManager.focus(this.focusNode); + } + }, + + _stopDrag: function(e){ + // summary: + // Function to halt the mouse down default + // to disable dragging of images out of the color + // picker. + Event.stop(e); + }, + + destroy: function(){ + // summary: + // Over-ride to clean up subscriptions, etc. + this.inherited(arguments); + ArrayUtil.forEach(this._subs, function(sub){ + Hub.unsubscribe(sub); + }); + delete this._subs; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/ColorPicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/ColorPicker.css new file mode 100644 index 00000000..72b1ce03 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/ColorPicker.css @@ -0,0 +1,102 @@ +.dojoxColorPicker { + padding:8px; + -moz-border-radius:4pt; + -webkit-border-radius:5pt; + -webkit-drop-shadow:3pt; +} +.dojoxColorPickerRightPad { + padding-right: 8px; +} +.tundra .dojoxColorPicker { + background:#ededed; + border:1px solid #ccc; +} +.dojoxColorPickerBox { + position:relative; + width:150px; + height:150px; + margin:0; + padding:0; +} +.dojoxColorPickerUnderlay { + position:relative; + top:0; left:0; + width:150px; + height:150px; + z-index:1; +} +.tundra .dojoxColorPickerUnderlay { + border:1px solid #a0a0a0; +} +.claro .dojoxColorPicker { + background:#ededed; + border:1px solid #cdcdcd; +} +.claro .dojoxColorPickerUnderlay { + border:1px solid #cccccc; +} +.dojoxHuePickerUnderlay { + position:relative; + top:0; left:0; + height:150px; + width:20px; + z-index:1; + text-align: center; +} +.dojoxHuePicker { position:relative; top: 0px; left: 0px; padding: 0px;} +.dojoxHuePickerPoint { + position:absolute; + top:0; left:0; + width:20px; + height:8px; + z-index:3; + cursor:move; +} +.dojoxColorPickerPoint { + position:absolute; + width:10px; + height:10px; + border:0; + z-index:3; + cursor:move; +} +.dojoxColorPickerPreview { + display:block; + width:45px; + height:45px; + border:1px solid #333; + background-color:#fff; + position:relative; + top: 0px; + left: 0px; +} +.dojoxColorPickerWebSafePreview { + display:block; + width:25px; + height:25px; + position:relative; + top: 0px; + left: 0px; + border:1px solid #333; +} +.dojoxColorPickerOptional { + position:relative; + top: 0px; + left: 0px; + height: 100%; +} +.dojoxColorPickerOptional table { + border-spacing: 4px; +} +.dojoxColorPickerPreviewContainer table { + border-spacing: 6px 0px; +} +.dojoxColorPickerOptional input { + border:1px solid #a7a7a7; + width:25px; + padding:1px 3px 1px 3px; + line-height:1.1em; +} +.dojoxColorPickerHex input { + width:55px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/ColorPicker.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/ColorPicker.html new file mode 100644 index 00000000..89db5eb3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/ColorPicker.html @@ -0,0 +1,72 @@ + + + + + + + + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/hue.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/hue.png new file mode 100644 index 0000000000000000000000000000000000000000..2746235fdd3b17feca0e3b7978bf1647e935ea10 GIT binary patch literal 1991 zcmdT^2~Sj46h6bC9YBU*Hqg>C1AQ|&`IXLJLjJBo$ve3eUlIo9%5-e z#~c7G!$N~1$&>CcNyKEW4;{=R53_xt8xH_jDCk!Nmy>Ks&~&H&N`C8-UH;#4k#h0f-@D#oAyF;s#PSak5C=>4V;KkD>i{jpEk6U&eu7-El?#?{1C)oA_SWb) zARhMeyA^Sy%2m$85r;^`$>loie~CoE$iq%O7@NUpfSOg-IA&ajt$eU_7>q7ht;3gB`ZAWg z;5qL2jF7Do(p3g%;$T$>pue%)4e#^77aOt4tIepxI!~`$x1;`Vp z@DXz7!)Os6(E^&NRr4XlG-qExOR$uOpZHJY6D?|=DWeY-wqltpj^Ym~I6JxFw9+*f z<$y5|OLf?*4Xfr+pH=pDC=pxh^vD%Q#A0hNoMV6z4(xciz;9ICzzPGTX`GNDQ8`hf zT8gEqsi_#_w6wJJ^mM&mf9uw*+qZ9LWMpJ!X5P7TCo3!K?%liD+1dB*-OI_z$<58Z zfB$}7US58FenCM&VPRoWQBiSmaY;!@X=!O$S=oaJ56a8SD=I1~D=Vw2s;aB2Yieq0 zYisN3>gwz38yXrK8yg=!eE8_mqsNaQKY8+`si~>Cxw)mKrM0!St*x!Sy}hHOgw+9?&<02?d|RB>+A3DfByXWz`(%Z;NZ~E(2Ex@hKGk=zI-_{GBP?k z`s&rIv9Yo7@$uKMU%z?t=Iz_J9LMoIZ!j1HL714Bn4FxPnwmlg8I49FdCpMg8uH$x z9gGZLLw^2`KJY_^IF`J|hr@#W*B)t&-dsgqX;EApn8csAtTmNr%AEE&`+?pr&Rb*> z-}i2knaodjmWDjX3x5YuNutS46H{4L;D-uL%!a%o8gdY^&}tewS3N_bQLEW$Zs&>^ zh}Oq4Bp-@&b`wLo8AC(cRSdj|Wt~4wL&5fx!raARDm!D&PSNP$cl2hNhZyt%mNafbaW3UEDMt!u-8h3@wx5yA5ShxB+p@A>S^M4}X?rIL zEn9Y&u}`F(qdl1q+udnysI>)=AfaApBhCCk>nSpkB>Z=9fE9F6xsnQVQk!kYeEE*S zEv4?oDW!A?Bz)vjcK8`Rv^~m7D^5}peeW<{zKr{EYKvt4IkgW(6>LeiOt2(t0Ido5 zlp`cBS`aR)&6tl-%(O;daxeBUj-}=-zJ=8XTM&@#yJ+DRYV>SIDtQ)Zuj&H4k;2g)!j^vj6iD%asUC2PuT$` av%q3kptiduIEMUrKv-~i(9M9T6aNCj{jLoF literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/hueHandle.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/hueHandle.png new file mode 100644 index 0000000000000000000000000000000000000000..c7b56e8314cf07c0a20943a6e74cebb7d3e4cc9b GIT binary patch literal 280 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W+!3HFM&b|K@NO2Z;L>4nJa0`PlBg3pY5ZE72E&6AJv}|28!ZGnBrh1+FbP0l+XkKrx8`k literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/hueHandleA11y.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/hueHandleA11y.png new file mode 100644 index 0000000000000000000000000000000000000000..58c648d96509d284792e395d984a1a5731a961d3 GIT binary patch literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W+!3HFM&b|K@NHG=%xjQkeJ16rJ$YD$Jc6R~N zK=9LfcRi5eEbxddW?+| n0~hz{Kb!9Ch~<3t<+hBcvAEf4aTa()7Bet#3xhBt!>lIPIB<>}%WQgJKk&;S4S%pwOQBN&t&7&a6V76D=Ai3~tq zL1e2Qhk%32Y#^bt<4y}715-zaFe6h(XNLg`NFDc;RsUOQl6P5_4`>U6 Mr>mdKI;Vst01LG}761SM literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/underlay.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/ColorPicker/images/underlay.png new file mode 100644 index 0000000000000000000000000000000000000000..0f5eb7ccb22a8a806cc5449ab58b9d9550c4230f GIT binary patch literal 10788 zcmXYXdpwi>`~S?$hA|s*HnTaGvyhmXnUT=ONX4iSg-Vj%4I7*Dgp`!giaE3u(t$U# zP^l;+s<%@mom7-m_FJFt?~i-;WB2{IulsdfujloAJ+IewbAkeWVM@A60002yM^~}o6tWEf z$iM;sj2r;qr&M-+2LK$k1ppSK006ft0ARzRvORZ+0D#3gKY|w}eUkoL4Wy!?a%uWh z`l^&vJMw&DwNnzul7@Ia+~aoZOx2QD>y>1fIjd^}hM=@aw{$Nsi2uZ36y#s_kOYSG z75tyPO^+Ct)y}HL^u<@X4$cabfBpDu6rfrtUH|g{q9H$ma?SNTwa)nR_@bxIKfhOd zmwtZRpZo0U9*4-Tj0!mv;QEnLAPSC`TYmiK^IP>7x70x|%e}>@U@y={Lhy!DU;cr< zH+{M)Fhr-relC9g(D5N7aQOwRC1$Z!Dd;oHVrD*bIb7Wi5h9-4-}#HMcV7^d4XM&0 zFt-6RNU`guGRkS`%Vp)LlzY)g-wodWw#omR+=lh%R#=kgg>f9n0X#l1 zXpjTNfCC7H!Y5FIJW|~y+Str8$ZuukeOPk*%J+{ubKgF`nB%{Z0jN7J#y?JSnUKDt zz2s8x(ZSy3e_Y6hcitfBF}xWlBwXdbw1mR9Lxshoj*_rQljd_dSW_BD!IFoAD&=Nz z*y`mCIPJ;?9ADEs`sD9b?##>E$EHJ+%Lf5KwkcG(<RV@vgSD?;rI#b$>6v zL%MinP1H)ja2&;-M#{p!XELuI`MJIECV{d`(w1j#!CkMX#+zed5x~B)!dfWQB-%La zI0^PuTFcCd)XYX8t)qK&-_3aOKY+}Hj%F}6ttWGGgTvNkh)x#CCuOzFC^TgEpGtQvc8@ZS9-J7S+nD> zSs_!wKhoBjq<={Z1!&sa1_VIFJyL1HTa9_I7mB~bDt*Q?^|}3 zBZP|aWXdQxsBo3Mm7Z%vl0_AZo4>H3k)wFivOg3*LynsecwLg@ZjR=Kov0<`j?xCq zMZ*HOa*)D%IrQcUURRG)C}Eu!3ZqN)8(`ok%5a8;15FM9iZ)-D`r3dtpr6*MdfnJ` z_2(O9+VA#NP{OiEZy*G9p1D)brT6Iv&b(fqc@FtX0Tci9O)5S7sDPo^2>T?_CDu}- zf1GIE08bi*1m$vYKY2|XF3X78Uk0DJ8HNoV&!gJu9^lP@DU|`cgS;XGt#czwZ*|kplgpbLEk)wD2 z_yRlV(hIWn`2q9EZp`Lm_d_%2;FXzEXJ^NQ6sL-#MQl3HRak zXSt!t)VPoAe`YT*N*`$;BX<0E@+dm`bn`&x;+3~u@{S9erhZ}}Bn35jWoni72Ziz4 zp8RiCuhcO?yFS!^gJ!%KGNJhcMDXV)uTbmI`x5hmvc*&D_$F{lCE0~+k{A=1K2Xor z_E;@RQc>CiW$_IZj1Gt^g;6;d20vORcHu6SEqb;wy*J&QhC-nZ=$5!uH77l6a4$j& z2MBzKQiy_svmK?UuHU~;?C=Vk%wdz=VQ!`o18c_Lzc2m*l%H7H3a&iu>H6i0tROUH!U^nG`O?a-ik90J*5X1f-Ic_`MWjCqW5%lQez^g&q?%8*E|rdDxKft zBYdL`d#{ssG7o^J(A9TEsE6cUedyC*+4tHI-GsYCHR?`N=LuA|sk(ldwyIdKFWJF+ zU~-1IFh_~QYTvPB63xj_){Fk^_Qqj>Z~8r!WIxVER7%DY=gXj@QF*tJd+YQ-0AT69 zO%?zK3Z69b=V~I{a&FozZs*60Rq%dK;1~YCpDuVDS9-2VsR3dikQ6Ra_nc|m^f1I5 zh8&ICdAM~i0O#r5iQ3O9ePfhv&YB;2L%K02Q%q z`O5nKjy`T7s&P!sOG9Gx?a8Qt()KYyf$=TEZNZBRvmca>j#EC5+sw*`y$m<`lzF;N z)bonAc2Y7)qxc6mq*?q+uYu$GbMdXGUhZ>mtxhaY=y2J_$&HLAKd{y6T&%m9eORC- z&g^n@vv?Q~6h;q^;DmaejC=OL(95B9gZcD^nyRSu9{ZK8<6h=3OfK#K$eBCUYXETY zT;dPU>to`q!E1|VTqY@f;||1o@3t_??XLO$#@9rNMbRbDy7F1#YyU5=^Mq3dH?mN{ zTA#Ymq1Hz-%03V**Fx+@tI`oFqrK;xc4~djqMW#BU04<=+)y;sNW{0BKk?hBZ_l}F zr!YNMm;wNJX?LzlZJt4&IOavC?sb0Kp6p!qdnS0R|5M}V!MdYm0WLY^W~*OA?%(5q zW&=mj!C{rWPt@J)+&h~^=OcWYQ=2enxEnd+PYz{&`mywJ2X*Ue+O!hxmd+&rAR9L< z^^7n{-m6~3QZ*R*W!uu>Ha>75<$V%xJs*a@R7tjGg&MDw!_>XGiYtU`f!3FiK1z@3 z&jmKU0KiJ~KX2l}?P8N&w&VsEKh0NRQ&PM?&-63_0GVd)KsKw~X^OCE$YjD<9GaoN z@S1m{LTE~)lg-fnO;RQqd&yWK@}qe(R-*%<+)}h+bdoK%GoF>yDJKAL%B4)!+Eo86 z=`I9!&Ex;0Wwkw0=C|Pw?eDe40YZkN6aa80Z(f#%tm(K0zfoiHEl~gADP_^5-On$L z{oNkL;?dPNA987;)>J|LTmdC@a;TV2s3TY_xjKO_23Q$U7e8wvo+amt1BVyInwF=P zx3nRV$`8alE>kgDj+HBPC`yZt0E+mU9mLHS>@G{wS5;QYnAokfj1*}~ISur)lWgVa z;c-(+@{h1xUHE8by~9DuHREz6!mrW(^x+fvwFCwRT%Bx6!S{~G^iIjvUGj2`$Ab1{ zH7%XLXv)$2ADX1nk?4kI*ZNz`35)*21>HMl9zzldTik+Qx<8X|zZ6yFkx#U}e}78z zm-U#5$lQpUKuX&vstUdEVfJ^SUHm2d_SbFqG1~1{222cq{ICC2ek5Hl4ygjptpA7r z+8*q8`J3g3m!y08p&>R`rti~L;+4b)1=s8zUY+upjEZk(WgZVqfAQFnf%b*?DqQ_4ErtrTbuz(f25up zvI=ynpNnpJoNqRweLvg@jQup<9c#+Xch)>nvlbOPd`|Rs*v?Ry(*q06Hmy?CumlH` z6e(8$echU}9bc(otiNq&);QrlvpcvG1aG7o+i}>nx@fX}Hebu|C@oK0I2gU)^~$2K zJkD0&-v-?`Z(u)>s~IHln72f<=>9568kF0hx67c}xVY^&aA%Ie?k;0BpB@1Y+@(d zX^p)V)JU+N|A^qmU9tXmAMk7g39FMfeu8MT(Tkg-R73G%oyH4%u$uc94mECHbF5db zp#8JS83fOuvJa1*A57Db?|!)vG#MZ%kI>FYZtP8)RjTaJ>?m9ClwUs`A-pysa0e%D zIX&X+X&a>zKX5OXnl;FQRL0eE;IajL_eS(P?|4rh^@PySEOkuLVa_werBAN;97sVA z2OvMfC<5T%tbVEV=5CBJD&q6jvUi{jhnwH%W;(qgUj8pg!OP}k_~ClQ)$8EK#pM`( zT9%e6pZe9RW~Rwz7v0!==c|%$><+4u%nieX8bB9%9}TA6*PT{%=WLzCLkFlovo8hq=-1Kfb_BmxTnk&ys zSixh_ez6miR0+nKX2BX^`)=q9vHa6#mP(+n&Vg2MaPvnV zf2Mf1&up_2_jN6|@Iu3M>cW`elixF^Xe)VoLu};s#RO@E1DT3IJ_p z)=%k`r(=fdv*ULgLy8^Rvw!5^JBQ>qhlk6ZSX&GnRz3RP14+L!?lXGlYryA=0E7LC zS(bx=d1J*9wR;%wP$Y2ML^;CUL^nu;$1J5zEQzP51qXLQmZ-A z9qOXX>cf+jsG6m>pigw5uUNBH`LH`v190jm2hYcYPK60I?Z9Ic{{4ff3uH^pw44D} zsJz&%7{5=jx|d9De_7yG=L#EZnQ1jtg9NgQAYLLZ%5wrURh z<*@Zx;c&?C@B5!zJ2Kc0zG%92Bz!o;&nTQgnM2M3d3&6km;Qkc%enjXJ#Y$jX==yz z&z_|pcS_15TJg=3X%|~>0LrWFWKO8af0Oza_$%9OYYNP6_3g}EgN?(kT`tJD08ktz ze_p%&92IW3pODM6mC9h&l@k5-9Tt&nW-WV)}Rqff-xno-w? zYJuYX6X?!5{DI507|b#iW_z3gIDg*jZ_N8@rKj39DDwC1a91+)wygN5*qk=q_WoM# z!TjkSH{iO0StrD>t>V9XFE3o}w}-UX&!i9KbeRLM_6uIB$WV5{7|kzgk;X(u(I4|5dMEuNRqd94rJ+AUGSyUBfT%vrvOOxk3fo)VgzfFgD@r5&Ci-1og#tJV@OEFatn$jiecyAdJ7ACxp96H?0nm5$uC3mW z_t%K;%SDarQ?u`6W1Xum2jnHh&xcpOdX(QmjFULDx?N4a2|Eb?X;m6Z@}Z|+shc@y zw#^PBECv*w`@aC^$^r~A#Q5(GTcJ&Ea)2KA`tRb~09cypGy6hs`T9k&1wxT-X}|Fn zrRw+njB)=F?`KaOX2MNd(FbcAFl$GYVxQ5E|NA>Z-E0DQ?$D!`S`4m3zZ?MU74=(s zWf#Zr{)=Kzak*oP^{=P9znaF)s_(4T`Jn#d+1*{J+Rt~Q&hIzjqKB=uE7KYOqEjrI zcYN5kxo*pu(gx_G@hipr^FFHMz@W7M=^_>Db?M_<nTrFX>@~f_!RN2X3Yn^B9}88kl`VA({aa)H-8wJ+OE*$0k;adh3UFMknKk;2+Lv~o5K9KP-85IR z17fx0c_GSYGBD1>+sg4z0UaNAsVpQ;Jko7jK4Xkszi48~i*D5V zQb`jcVE&vHqj(+IxU-hCZkh%%_1#^@aa+5NM*Z@?!@GpBKL61QF-h&L6x+h>F7+_3 zIMPv+1YSEoxgwG|88$(jvYQM~N5Jnvm3DFz`~wD?^h)oRj+IRY`MzJ_H4os)nT1RN zo*`pJ5$tbqkf&(_A}i_ZLr9aZ*lc>RoVV_`v-aB#9tJ9>5*~qJ9_UFMGA~d zPGr3(X%Q7S8=cfw_OJ843JfM&GXRCveyXw|1Aj@wPSn7)4rN>fJX!2HXJj7oANH!} zjh|=1qZ@G5`BaUeS2d}u)_kA3>s<=tnO80KT)j67i|lQ*g{f{fIWjKEs`;Z;Bvj@2 zHSI9EiLhUZe*|B0u+4Dh6g?xyRu=_${iaw}6XyhdKJ_lmaw6}$!`}O*9?&;bnyBj7 z&pVBA?k*avHzgXd!%Ca@dh0@@ynC?U=<~B)y!>V(J1_S!9^-+RN*zncI{ujEm-s2_ zo=8RHw6n!kVR~LA5CDkQURd{k?`yoxMnk{nKklgGvcKpF{&>jMBlF%#%4=gVXGQXV z4021a>W-tAvG2><6dC&Zluhzi8cxqs6dF#r!ryO7t^1lqX)bMktawcO{*6B%Jwk2l zdkCrysg;$c*=@H8@6Xjq{*c~3em$lq__exqdom@jGt{=UTDau&DkYy+L7*WGCfzK{ z5s*rD=@T6!&sc#rme=w{RoSyGIK5C)B|TSP8vqPC*l!N#v4t#4uYRJyW7>9k-@|NB z|7F!oFlFv>Il#49Zgm#HxS9z!&4Fqnpl+|&wHc2HDY|+2t=oR!7d_JgtB;MGe}PZ6 z#j6_!|G|_T1;M*#z?o+P*Ugfb;l_4E{ilv9tE(UcQkFpuyyyd4cxKj#e9cN`4p&<= z7~>z=Nw&Phf$rq6UJ3KCfHpy?oD61%9E@+Y2pt!KN2m23WRC#kB)~1IrG1 zbwzg>|9nTtzu9=Db8-jGUw^qwM z)knq0_Z56*O9tV;hsXlC0duQ_8#|rEjB=_yGAzsxl3! zRkk}D3fcZH@0DsykNpIvX_T-#_&y`FD7sCwq+(VpLq1fADB~$VnV=|&nR#zfSLCn$ z)FBpCClQ}59rm};=agjyRV(eJ_XgX`ZX>8@(iOMO`l!{mv-Jdl7 zjWiiKNA&F^^KQHyUP1kUaOZSd9KE}3bWOhSek>(B4t=QzNk?iF%GxQZNUibP2O&wt zIIEjNtZpLg1W})ANc1)co9zvDi(a<(BT-c1%pSnU($Gh8v|7_NTSJt0z5_MAD*YK( zogy{aPK>D*c(sOzmRH&2zmbd=i^Ioe-eG48)7ub*a=u#%qhzKu>&$G4iBMGwFFQDi zVm_vMAq`2!du_L7lASa8TB&tjR(w$?YvJ_01*(bt#nIg;Hy9j8z*^IN=b;S)BFBHvTXp<*{SyP`@W7DIsZ9>dP~A479@#l)@Gdxml+VI zSU2k#CNGH$aSs^M!6YzRfRDs#-Q(nIxF&uy$y6_@-^IGVKW}f@1{>57u(`3beC1EQ z#8lG9-H|`sOw_Du^&b>j=N9~JJk9U$9dx0BZK|ujY(hKlwk_M4z^!V4~XgBO9b|HWFW)p4Z_g)Lz{WkCC)_FtFvp{hu%QkPd}!~z+SgcEOyFYH@y7(|a zBh1MUmGx(!qAD3|l-nSmBNcd#NYqy2FU96bv= zMC4FjiOdZ$QtQ;AL=Z^K^e-97D8!h_R*=82jL0b5e-OUs7c|V`i_rr? zNFo&cUR#@+WS-gO6?w+XewJh#u!=xdjvOUMLKXMOcF7nTU6?+5T>d|)DrCG#&`NZ3 zR8JUIrkrm=l@GmRdL-o>A}jhgelrT&0v$L4@77e2-Xq1j98$aM)a7kS+*9Kh@Join zyxrG$XF^>nHDe5xB{%kzmJ_%9MYW84?V5ZzXE$T^k$?}*9XrpF55It`AW_hLPeZ+5 zofsq~uH;^+@uA?wVdCg;TTbvc^tX|zT_6EL22$|xcd+ii(m+;`-r1l4pQL@cxU_B0 z1VX!2z+KquFp1A0&3&#B!|133vI-j;gjwIM*?KVR+sd0#mR>#^`IAs0=78X$5%8 zEz-XT&a76be3PnkklkG{#X7DH}R<9tcq*U(P{oNtRr>FE` zKcz0Y4%+uD+9888{uJ7ky`*ii6J!h!mRi{F+MVl`fyY|~FPZ)ypk@TBoQV_c_e!qK zW9Z^E?MD(qEbv#!mHD;p`*JSG9lvhQBe0r+w+Ep6I_@KrK2@oQZ|n$B_Ah~dexzs3 z*XjM=?3r3ee%zSqESz=o13#O7cPbKgJQay7{yug}|3KUNTwHy$zx&_=PD&+(iO}gN zQ|a24TTkq9b!IvHlH$zeKCfyPTdMmQ-~j5o=vZ zH=?M@i<((~%1`BnE&w%D$yj~(M)Ff7+5Q_4hyB0lA>PqG#b`{p#_fHEweA{O)%{uMBCyAEikh7wnPgi$2QpA= zIxf@G^yuo#y)rG_ej}NBieTz^o-Uj5&CxTHMLCC-YkD%8rRk=8XbpgUK#5IrJwJx- z=IoE$>YbU>(m5}p9CJaccjUS_yUNNhVx(SxU(5HU6;MiHbk=hj-q!fyU#i%{?AKvw>g<=74{EM`6_6?OIvFg2!VcWat5@_h5B_ZyVi4-gW9D_3 zAxunWX}aEVtBi?PMm$5~D%lbtYe>hI?_NcijyIx!O;}Q+l5~!i?On8Se`lo^a_67u z_p8$plGBO=$Xz0{Qw#b(8DFH`WA;mrPNOhSF z?+BpKy^D`zeqGH~PF`6fnRh|jul^svtAuP??huZt->XN}S&Fn8U`X$~f~^;mU%_)* zCNXpmZWST-sE%qkA**T4t?o9v@Fe9nLb0TS(g(W5ZO8M z40u{Eqvv^!q#_;CJ_f0XxD;BzBwL{;iRnnq%8J_6bJ~QK-;%ID+#o0WD64z2s8t~f z8n&|1`@3Y_=dz4qOeieWSZD83>=G!w$(7w8&ZUz z60p|u2-UX_cV7xEl72B_KOogANzRnoPVT}~k}&V0drsX|HtG0c2As+EDE6h$`!)}9 z<{%1@@|QqJSsPNlLb!xMln19q%3qN*m-XD}EWwG5FAF53*iM9AEB6>3q1r*nGVGRe z?o?`r;d?tYIBcJENjXV7A=zmh+IF=kQ?~3lN2}j?#AN;?;Hiee`>PPOqMJpv5t-0Z zoEUv;F$R^Xr^pL=>)9$FA*{en*c;kmb+Y>1#^-Kvf6DL{C`LCX{NDaT{pISW(OA^z z4$Ni|w<@kdkX!y;{la2t*5G%|S3kGXbr+Zdk0Ty90QcI}()0c9Jdh8?!q+e66bfPF zT6DlZzAn^w7-gp(Ad^1K%q87dFE_jBE~GzSC2z!kGzmc}Tb!OLA8xZf&1RKc!UTdN zV?tMRHHVR?tbTWsRvx&@U1mDd%rQ&-_<5{G7J;)}Ettb8m!rAwvxOU%Y?gzc#z95~ z6<5lJ3ryRuRmbbl6@AerP%J7l z*v-T)Z@p}Xl6rNOu!77)Xmd`mb#V%;nH9qhZI zb+bWvPu=khM3>C|la1doo0@nDP$J=8&XY=U7=5N`k!{gVvgWf}KXKxjNF_bG0GB$o zg9g5lQW^FCA90@L1jfa2W;`u&>OpV*T{3kcmL(Re}1Q2aLfNR`(b&w7i8h4K632I}xvgr<(Gj z74T4H6a!*v9n$2DeuLB@HK6?-)etDhFcndkFoyKIq*Aj+4YRu7N4Qu`QfbMRKMJ9W zaGW*4@tQ?~1UV};n_YB6OwutvmO6YRs=p3h_XTqlEw9g4+NJl=79i6M|k(U=Ttta;pr&WkQl{X?Oah0|6oKaf%9i_M`0I?r?jG`@W>y z$YGc64nb)0WQMXy5Cm05 zwhlq67blcuNx&W!u4l9I#}q_ZO^YOA#2PD$%{>fOYTANVP>3{?`9-QpHxK6T*7`UdDd#llSH2+kcLr3fg1psCG|8@I2xA>AuzjfZINcb_8%76b z0si_OPs@5D;8vC8XdIPb;AQ?+bfgl8uWGT#_B(Q^JcN>T*jQeM=81l^1Gls~ZZJ@L zo}hcy^}GOU+x43iI9rdglNBAxjqjL4Wd%<_mdga;!t29W7&(CsgWkN+S43KJ;(U%t=Ot6jEflseLL^*8;1y4QbGhK(r%~ z*rF5g|9SZo+)lPhz}k~#Jp-z?69Vouxs}qgXx`!>>tV6T@!49?!t<7eq0rnXmW8t* zf?oysF-SpPww;21-PS{5fpBS(kT^3wA4Wx2>tbi4%vb)BbJ~~fX;XPwm7JV&HL8|o zy5~#{6FOeA<^Dc*arJV%pZ5)>*VPa%k(1Z@>F+?+`Ym1?{_$K=-KTF}V4+jV+bp|E qL}_bS9B5!jb1-JAX#jW>AYc3}tY;zUx9p2ffS*qwp%ovM{r>>pi-m6h literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DailyCalendar.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DailyCalendar.js new file mode 100644 index 00000000..d32f0f0c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DailyCalendar.js @@ -0,0 +1,8 @@ +//>>built +define("dojox/widget/DailyCalendar",["dojo/_base/declare","./_CalendarBase","./_CalendarDay"],function(_1,_2,_3){ +return _1("dojox.widget.DailyCalendar",[_2,_3],{_makeDate:function(_4){ +var _5=new Date(); +_5.setDate(_4); +return _5; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DailyCalendar.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DailyCalendar.js.uncompressed.js new file mode 100644 index 00000000..2f1e4c79 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DailyCalendar.js.uncompressed.js @@ -0,0 +1,15 @@ +define("dojox/widget/DailyCalendar", [ + "dojo/_base/declare", + "./_CalendarBase", + "./_CalendarDay" +], function(declare, _CalendarBase, _CalendarDay){ + return declare("dojox.widget.DailyCalendar", [_CalendarBase, _CalendarDay], { + // summary: + // A calendar with only a daily view. + _makeDate: function(value){ + var now = new Date(); + now.setDate(value); + return now; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DataPresentation.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DataPresentation.js new file mode 100644 index 00000000..d6e76171 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DataPresentation.js @@ -0,0 +1,413 @@ +//>>built +define("dojox/widget/DataPresentation",["dijit","dojo","dojox","dojo/require!dojox/grid/DataGrid,dojox/charting/Chart2D,dojox/charting/widget/Legend,dojox/charting/action2d/Tooltip,dojox/charting/action2d/Highlight,dojo/colors,dojo/data/ItemFileWriteStore"],function(_1,_2,_3){ +_2.provide("dojox.widget.DataPresentation"); +_2.experimental("dojox.widget.DataPresentation"); +_2.require("dojox.grid.DataGrid"); +_2.require("dojox.charting.Chart2D"); +_2.require("dojox.charting.widget.Legend"); +_2.require("dojox.charting.action2d.Tooltip"); +_2.require("dojox.charting.action2d.Highlight"); +_2.require("dojo.colors"); +_2.require("dojo.data.ItemFileWriteStore"); +(function(){ +var _4=function(_5,_6,_7,_8){ +var _9=[]; +_9[0]={value:0,text:""}; +var _a=_5.length; +if((_7!=="ClusteredBars")&&(_7!=="StackedBars")){ +var _b=_8.offsetWidth; +var _c=(""+_5[0]).length*_5.length*7; +if(_6==1){ +for(var z=1;z<500;++z){ +if((_c/z)<_b){ +break; +} +++_6; +} +} +} +for(var i=0;i<_a;i++){ +_9.push({value:i+1,text:(!_6||i%_6)?"":_5[i]}); +} +_9.push({value:_a+1,text:""}); +return _9; +}; +var _d=function(_e,_f){ +var _10={vertical:false,labels:_f,min:0,max:_f.length-1,majorTickStep:1,minorTickStep:1}; +if((_e==="ClusteredBars")||(_e==="StackedBars")){ +_10.vertical=true; +} +if((_e==="Lines")||(_e==="Areas")||(_e==="StackedAreas")){ +_10.min++; +_10.max--; +} +return _10; +}; +var _11=function(_12,_13,_14,_15){ +var _16={vertical:true,fixLower:"major",fixUpper:"major",natural:true}; +if(_13==="secondary"){ +_16.leftBottom=false; +} +if((_12==="ClusteredBars")||(_12==="StackedBars")){ +_16.vertical=false; +} +if(_14==_15){ +_16.min=_14-1; +_16.max=_15+1; +} +return _16; +}; +var _17=function(_18,_19,_1a){ +var _1b={type:_18,hAxis:"independent",vAxis:"dependent-"+_19,gap:4,lines:false,areas:false,markers:false}; +if((_18==="ClusteredBars")||(_18==="StackedBars")){ +_1b.hAxis=_1b.vAxis; +_1b.vAxis="independent"; +} +if((_18==="Lines")||(_18==="Hybrid-Lines")||(_18==="Areas")||(_18==="StackedAreas")){ +_1b.lines=true; +} +if((_18==="Areas")||(_18==="StackedAreas")){ +_1b.areas=true; +} +if(_18==="Lines"){ +_1b.markers=true; +} +if(_18==="Hybrid-Lines"){ +_1b.shadows={dx:2,dy:2,dw:2}; +_1b.type="Lines"; +} +if(_18==="Hybrid-ClusteredColumns"){ +_1b.type="ClusteredColumns"; +} +if(_1a){ +_1b.animate=_1a; +} +return _1b; +}; +var _1c=function(_1d,_1e,_1f,_20,_21,_22,_23,_24,_25,_26,_27){ +var _28=_1e; +if(!_28){ +_1d.innerHTML=""; +_28=new _3.charting.Chart2D(_1d); +} +if(_23){ +_23._clone=function(){ +var _29=new _3.charting.Theme({chart:this.chart,plotarea:this.plotarea,axis:this.axis,series:this.series,marker:this.marker,antiAlias:this.antiAlias,assignColors:this.assignColors,assignMarkers:this.assigneMarkers,colors:_2.delegate(this.colors)}); +_29.markers=this.markers; +_29._buildMarkerArray(); +return _29; +}; +_28.setTheme(_23); +} +var _2a=_25.series_data[0].slice(0); +if(_20){ +_2a.reverse(); +} +var _2b=_4(_2a,_22,_1f,_1d); +var _2c={}; +var _2d=null; +var _2e=null; +var _2f={}; +for(var _30 in _28.runs){ +_2f[_30]=true; +} +var _31=_25.series_name.length; +for(var i=0;i<_31;i++){ +if(_25.series_chart[i]&&(_25.series_data[i].length>0)){ +var _32=_1f; +var _33=_25.series_axis[i]; +if(_32=="Hybrid"){ +if(_25.series_charttype[i]=="line"){ +_32="Hybrid-Lines"; +}else{ +_32="Hybrid-ClusteredColumns"; +} +} +if(!_2c[_33]){ +_2c[_33]={}; +} +if(!_2c[_33][_32]){ +var _34=_33+"-"+_32; +_28.addPlot(_34,_17(_32,_33,_21)); +var _35={}; +if(typeof _24=="string"){ +_35.text=function(o){ +var _36=[o.element,o.run.name,_2a[o.index],((_32==="ClusteredBars")||(_32==="StackedBars"))?o.x:o.y]; +return _2.replace(_24,_36); +}; +}else{ +if(typeof _24=="function"){ +_35.text=_24; +} +} +new _3.charting.action2d.Tooltip(_28,_34,_35); +if(_32!=="Lines"&&_32!=="Hybrid-Lines"){ +new _3.charting.action2d.Highlight(_28,_34); +} +_2c[_33][_32]=true; +} +var _37=[]; +var _38=_25.series_data[i].length; +for(var j=0;j<_38;j++){ +var val=_25.series_data[i][j]; +_37.push(val); +if(_2d===null||val>_2d){ +_2d=val; +} +if(_2e===null||val<_2e){ +_2e=val; +} +} +if(_20){ +_37.reverse(); +} +var _39={plot:_33+"-"+_32}; +if(_25.series_linestyle[i]){ +_39.stroke={style:_25.series_linestyle[i]}; +} +_28.addSeries(_25.series_name[i],_37,_39); +delete _2f[_25.series_name[i]]; +} +} +for(_30 in _2f){ +_28.removeSeries(_30); +} +_28.addAxis("independent",_d(_1f,_2b)); +_28.addAxis("dependent-primary",_11(_1f,"primary",_2e,_2d)); +_28.addAxis("dependent-secondary",_11(_1f,"secondary",_2e,_2d)); +return _28; +}; +var _3a=function(_3b,_3c,_3d,_3e){ +var _3f=_3c; +if(!_3f){ +_3f=new _3.charting.widget.Legend({chart:_3d,horizontal:_3e},_3b); +}else{ +_3f.refresh(); +} +return _3f; +}; +var _40=function(_41,_42,_43,_44,_45){ +var _46=_42||new _3.grid.DataGrid({},_41); +_46.startup(); +_46.setStore(_43,_44,_45); +var _47=[]; +for(var ser=0;ser<_43.series_name.length;ser++){ +if(_43.series_grid[ser]&&(_43.series_data[ser].length>0)){ +_47.push({field:"data."+ser,name:_43.series_name[ser],width:"auto",formatter:_43.series_gridformatter[ser]}); +} +} +_46.setStructure(_47); +return _46; +}; +var _48=function(_49,_4a){ +if(_4a.title){ +_49.innerHTML=_4a.title; +} +}; +var _4b=function(_4c,_4d){ +if(_4d.footer){ +_4c.innerHTML=_4d.footer; +} +}; +var _4e=function(_4f,_50){ +var _51=_4f; +if(_50){ +var _52=_50.split(/[.\[\]]+/); +for(var _53=0,l=_52.length;_530)){ +this.refreshIntervalPending=setInterval(function(){ +me.setURL(); +},this.refreshInterval); +} +},setData:function(_5b,_5c){ +if(_5c){ +this.cancelRefresh(); +} +this.data=_5b||this.data; +this.refreshInterval=_5c||this.refreshInterval; +var _5d=(typeof this.series=="function")?this.series(this.data):this.series; +var _5e=[],_5f=[],_60=[],_61=[],_62=[],_63=[],_64=[],_65=[],_66=[],_67=0; +for(var ser=0;ser<_5d.length;ser++){ +_5e[ser]=_4e(this.data,_5d[ser].datapoints); +if(_5e[ser]&&(_5e[ser].length>_67)){ +_67=_5e[ser].length; +} +_5f[ser]=[]; +_60[ser]=_5d[ser].name||(_5d[ser].namefield?_4e(this.data,_5d[ser].namefield):null)||("series "+ser); +_61[ser]=(_5d[ser].chart!==false); +_62[ser]=_5d[ser].charttype||"bar"; +_63[ser]=_5d[ser].linestyle; +_64[ser]=_5d[ser].axis||"primary"; +_65[ser]=(_5d[ser].grid!==false); +_66[ser]=_5d[ser].gridformatter; +} +var _68,_69,_6a,_6b; +var _6c=[]; +for(_68=0;_68<_67;_68++){ +_69={index:_68}; +for(ser=0;ser<_5d.length;ser++){ +if(_5e[ser]&&(_5e[ser].length>_68)){ +_6a=_4e(_5e[ser][_68],_5d[ser].field); +if(_61[ser]){ +_6b=parseFloat(_6a); +if(!isNaN(_6b)){ +_6a=_6b; +} +} +_69["data."+ser]=_6a; +_5f[ser].push(_6a); +} +} +_6c.push(_69); +} +if(_67<=0){ +_6c.push({index:0}); +} +var _6d=new _2.data.ItemFileWriteStore({data:{identifier:"index",items:_6c}}); +if(this.data.title){ +_6d.title=this.data.title; +} +if(this.data.footer){ +_6d.footer=this.data.footer; +} +_6d.series_data=_5f; +_6d.series_name=_60; +_6d.series_chart=_61; +_6d.series_charttype=_62; +_6d.series_linestyle=_63; +_6d.series_axis=_64; +_6d.series_grid=_65; +_6d.series_gridformatter=_66; +this.setPreparedStore(_6d); +if(_5c&&(this.refreshInterval>0)){ +var me=this; +this.refreshIntervalPending=setInterval(function(){ +me.setData(); +},this.refreshInterval); +} +},refresh:function(){ +if(this.url){ +this.setURL(this.url,this.urlContent,this.refreshInterval); +}else{ +if(this.data){ +this.setData(this.data,this.refreshInterval); +} +} +},cancelRefresh:function(){ +if(this.refreshIntervalPending){ +clearInterval(this.refreshIntervalPending); +this.refreshIntervalPending=undefined; +} +},setStore:function(_6e,_6f,_70){ +this.setPreparedStore(_6e,_6f,_70); +},setPreparedStore:function(_71,_72,_73){ +this.preparedstore=_71||this.store; +this.query=_72||this.query; +this.queryOptions=_73||this.queryOptions; +if(this.preparedstore){ +if(this.chartNode){ +this.chartWidget=_1c(this.chartNode,this.chartWidget,this.chartType,this.reverse,this.animate,this.labelMod,this.theme,this.tooltip,this.preparedstore,this.query,this.queryOptions); +this.renderChartWidget(); +} +if(this.legendNode){ +this.legendWidget=_3a(this.legendNode,this.legendWidget,this.chartWidget,this.legendHorizontal); +} +if(this.gridNode){ +this.gridWidget=_40(this.gridNode,this.gridWidget,this.preparedstore,this.query,this.queryOptions); +this.renderGridWidget(); +} +if(this.titleNode){ +_48(this.titleNode,this.preparedstore); +} +if(this.footerNode){ +_4b(this.footerNode,this.preparedstore); +} +} +},renderChartWidget:function(){ +if(this.chartWidget){ +this.chartWidget.render(); +} +},renderGridWidget:function(){ +if(this.gridWidget){ +this.gridWidget.render(); +} +},getChartWidget:function(){ +return this.chartWidget; +},getGridWidget:function(){ +return this.gridWidget; +},destroy:function(){ +this.cancelRefresh(); +if(this.chartWidget){ +this.chartWidget.destroy(); +delete this.chartWidget; +} +if(this.legendWidget){ +delete this.legendWidget; +} +if(this.gridWidget){ +delete this.gridWidget; +} +if(this.chartNode){ +this.chartNode.innerHTML=""; +} +if(this.legendNode){ +this.legendNode.innerHTML=""; +} +if(this.gridNode){ +this.gridNode.innerHTML=""; +} +if(this.titleNode){ +this.titleNode.innerHTML=""; +} +if(this.footerNode){ +this.footerNode.innerHTML=""; +} +}}); +})(); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DataPresentation.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DataPresentation.js.uncompressed.js new file mode 100644 index 00000000..592ff169 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DataPresentation.js.uncompressed.js @@ -0,0 +1,897 @@ +// wrapped by build app +define("dojox/widget/DataPresentation", ["dijit","dojo","dojox","dojo/require!dojox/grid/DataGrid,dojox/charting/Chart2D,dojox/charting/widget/Legend,dojox/charting/action2d/Tooltip,dojox/charting/action2d/Highlight,dojo/colors,dojo/data/ItemFileWriteStore"], function(dijit,dojo,dojox){ +dojo.provide("dojox.widget.DataPresentation"); +dojo.experimental("dojox.widget.DataPresentation"); + +dojo.require("dojox.grid.DataGrid"); +dojo.require("dojox.charting.Chart2D"); +dojo.require("dojox.charting.widget.Legend"); +dojo.require("dojox.charting.action2d.Tooltip"); +dojo.require("dojox.charting.action2d.Highlight"); +dojo.require("dojo.colors"); +dojo.require("dojo.data.ItemFileWriteStore"); + +(function(){ + + // sort out the labels for the independent axis of the chart + var getLabels = function(range, labelMod, charttype, domNode){ + + // prepare labels for the independent axis + var labels = []; + // add empty label, hack + labels[0] = {value: 0, text: ''}; + + var nlabels = range.length; + + // auto-set labelMod for horizontal charts if the labels will otherwise collide + if((charttype !== "ClusteredBars") && (charttype !== "StackedBars")){ + var cwid = domNode.offsetWidth; + var tmp = ("" + range[0]).length * range.length * 7; // *assume* 7 pixels width per character ( was 9 ) + + if(labelMod == 1){ + for(var z = 1; z < 500; ++z){ + if((tmp / z) < cwid){ + break; + } + ++labelMod; + } + } + } + + // now set the labels + for(var i = 0; i < nlabels; i++){ + //sparse labels + labels.push({ + value: i + 1, + text: (!labelMod || i % labelMod) ? "" : range[i] + }); + } + + // add empty label again, hack + labels.push({value: nlabels + 1, text:''}); + + return labels; + }; + + // get the configuration of an independent axis for the chart + var getIndependentAxisArgs = function(charttype, labels){ + + var args = { vertical: false, labels: labels, min: 0, max: labels.length-1, majorTickStep: 1, minorTickStep: 1 }; + + // clustered or stacked bars have a vertical independent axis + if((charttype === "ClusteredBars") || (charttype === "StackedBars")){ + args.vertical = true; + } + + // lines, areas and stacked areas don't need the extra slots at each end + if((charttype === "Lines") || (charttype === "Areas") || (charttype === "StackedAreas")){ + args.min++; + args.max--; + } + + return args; + }; + + // get the configuration of a dependent axis for the chart + var getDependentAxisArgs = function(charttype, axistype, minval, maxval){ + + var args = { vertical: true, fixLower: "major", fixUpper: "major", natural: true }; + + // secondary dependent axis is not left-bottom + if(axistype === "secondary"){ + args.leftBottom = false; + } + + // clustered or stacked bars have horizontal dependent axes + if((charttype === "ClusteredBars") || (charttype === "StackedBars")){ + args.vertical = false; + } + + // ensure axis does not "collapse" for flat series + if(minval == maxval){ + args.min = minval - 1; + args.max = maxval + 1; + } + + return args; + }; + + // get the configuration of a plot for the chart + var getPlotArgs = function(charttype, axistype, animate){ + + var args = { type: charttype, hAxis: "independent", vAxis: "dependent-" + axistype, gap: 4, lines: false, areas: false, markers: false }; + + // clustered or stacked bars have horizontal dependent axes + if((charttype === "ClusteredBars") || (charttype === "StackedBars")){ + args.hAxis = args.vAxis; + args.vAxis = "independent"; + } + + // turn on lines for Lines, Areas and StackedAreas + if((charttype === "Lines") || (charttype === "Hybrid-Lines") || (charttype === "Areas") || (charttype === "StackedAreas")){ + args.lines = true; + } + + // turn on areas for Areas and StackedAreas + if((charttype === "Areas") || (charttype === "StackedAreas")){ + args.areas = true; + } + + // turn on markers and shadow for Lines + if(charttype === "Lines"){ + args.markers = true; + } + + // turn on shadow for Hybrid-Lines + // also, Hybrid-Lines is not a true chart type: use Lines for the actual plot + if(charttype === "Hybrid-Lines"){ + args.shadows = {dx: 2, dy: 2, dw: 2}; + args.type = "Lines"; + } + + // also, Hybrid-ClusteredColumns is not a true chart type: use ClusteredColumns for the actual plot + if(charttype === "Hybrid-ClusteredColumns"){ + args.type = "ClusteredColumns"; + } + + // enable animation on the plot if animation is requested + if(animate){ + args.animate = animate; + } + + return args; + }; + + // set up a chart presentation + var setupChart = function(/*DomNode*/domNode, /*Object?*/chart, /*String*/type, /*Boolean*/reverse, /*Object*/animate, /*Integer*/labelMod, /*String*/theme, /*String*/tooltip, /*Object?*/store, /*String?*/query, /*String?*/queryOptions){ + var _chart = chart; + + if(!_chart){ + domNode.innerHTML = ""; // any other content in the node disrupts the chart rendering + _chart = new dojox.charting.Chart2D(domNode); + } + + // set the theme + if(theme){ + + // workaround for a theme bug: its _clone method + // does not transfer the markers, so we repair + // that omission here + // FIXME this should be removed once the theme bug is fixed + theme._clone = function(){ + var result = new dojox.charting.Theme({ + chart: this.chart, + plotarea: this.plotarea, + axis: this.axis, + series: this.series, + marker: this.marker, + antiAlias: this.antiAlias, + assignColors: this.assignColors, + assignMarkers: this.assigneMarkers, + colors: dojo.delegate(this.colors) + }); + + result.markers = this.markers; + result._buildMarkerArray(); + + return result; + }; + + _chart.setTheme(theme); + } + + var range = store.series_data[0].slice(0); + + // reverse the labels if requested + if(reverse){ + range.reverse(); + } + + var labels = getLabels(range, labelMod, type, domNode); + + // collect details of whether primary and/or secondary axes are required + // and what plots we have instantiated using each type of axis + var plots = {}; + + // collect maximum and minimum data values + var maxval = null; + var minval = null; + + var seriestoremove = {}; + for(var sname in _chart.runs){ + seriestoremove[sname] = true; + } + + // set x values & max data value + var nseries = store.series_name.length; + for(var i = 0; i < nseries; i++){ + // only include series with chart=true and with some data values in + if(store.series_chart[i] && (store.series_data[i].length > 0)){ + + var charttype = type; + var axistype = store.series_axis[i]; + + if(charttype == "Hybrid"){ + if(store.series_charttype[i] == 'line'){ + charttype = "Hybrid-Lines"; + }else{ + charttype = "Hybrid-ClusteredColumns"; + } + } + + // ensure we have recorded that we are using this axis type + if(!plots[axistype]){ + plots[axistype] = {}; + } + + // ensure we have the correct type of plot for this series + if(!plots[axistype][charttype]){ + var axisname = axistype + "-" + charttype; + + // create the plot and enable tooltips + _chart.addPlot(axisname, getPlotArgs(charttype, axistype, animate)); + + var tooltipArgs = {}; + if(typeof tooltip == 'string'){ + tooltipArgs.text = function(o){ + var substitutions = [o.element, o.run.name, range[o.index], ((charttype === "ClusteredBars") || (charttype === "StackedBars")) ? o.x : o.y]; + return dojo.replace(tooltip, substitutions); // from Dojo 1.4 onward + //return tooltip.replace(/\{([^\}]+)\}/g, function(_, token){ return dojo.getObject(token, false, substitutions); }); // prior to Dojo 1.4 + } + }else if(typeof tooltip == 'function'){ + tooltipArgs.text = tooltip; + } + new dojox.charting.action2d.Tooltip(_chart, axisname, tooltipArgs); + + // add highlighting, except for lines + if(charttype !== "Lines" && charttype !== "Hybrid-Lines"){ + new dojox.charting.action2d.Highlight(_chart, axisname); + } + + // record that this plot type is now created + plots[axistype][charttype] = true; + } + + // extract the series values + var xvals = []; + var valen = store.series_data[i].length; + for(var j = 0; j < valen; j++){ + var val = store.series_data[i][j]; + xvals.push(val); + if(maxval === null || val > maxval){ + maxval = val; + } + if(minval === null || val < minval){ + minval = val; + } + } + + // reverse the values if requested + if(reverse){ + xvals.reverse(); + } + + var seriesargs = { plot: axistype + "-" + charttype }; + if(store.series_linestyle[i]){ + seriesargs.stroke = { style: store.series_linestyle[i] }; + } + + _chart.addSeries(store.series_name[i], xvals, seriesargs); + delete seriestoremove[store.series_name[i]]; + } + } + + // remove any series that are no longer needed + for(sname in seriestoremove){ + _chart.removeSeries(sname); + } + + // create axes + _chart.addAxis("independent", getIndependentAxisArgs(type, labels)); + _chart.addAxis("dependent-primary", getDependentAxisArgs(type, "primary", minval, maxval)); + _chart.addAxis("dependent-secondary", getDependentAxisArgs(type, "secondary", minval, maxval)); + + return _chart; + }; + + // set up a legend presentation + var setupLegend = function(/*DomNode*/domNode, /*Legend*/legend, /*Chart2D*/chart, /*Boolean*/horizontal){ + // destroy any existing legend and recreate + var _legend = legend; + + if(!_legend){ + _legend = new dojox.charting.widget.Legend({ chart: chart, horizontal: horizontal }, domNode); + }else{ + _legend.refresh(); + } + + return _legend; + }; + + // set up a grid presentation + var setupGrid = function(/*DomNode*/domNode, /*Object?*/grid, /*Object?*/store, /*String?*/query, /*String?*/queryOptions){ + var _grid = grid || new dojox.grid.DataGrid({}, domNode); + _grid.startup(); + _grid.setStore(store, query, queryOptions); + + var structure = []; + for(var ser = 0; ser < store.series_name.length; ser++){ + // only include series with grid=true and with some data values in + if(store.series_grid[ser] && (store.series_data[ser].length > 0)){ + structure.push({ field: "data." + ser, name: store.series_name[ser], width: "auto", formatter: store.series_gridformatter[ser] }); + } + } + + _grid.setStructure(structure); + + return _grid; + }; + + // set up a title presentation + var setupTitle = function(/*DomNode*/domNode, /*object*/store){ + if(store.title){ + domNode.innerHTML = store.title; + } + }; + + // set up a footer presentation + var setupFooter = function(/*DomNode*/domNode, /*object*/store){ + if(store.footer){ + domNode.innerHTML = store.footer; + } + }; + + // obtain a subfield from a field specifier which may contain + // multiple levels (eg, "child.foo[36].manacle") + var getSubfield = function(/*Object*/object, /*String*/field){ + var result = object; + + if(field){ + var fragments = field.split(/[.\[\]]+/); + for(var frag = 0, l = fragments.length; frag < l; frag++){ + if(result){ + result = result[fragments[frag]]; + } + } + } + + return result; + }; + + dojo.declare("dojox.widget.DataPresentation", null, { + // summary: + // A widget that connects to a data store in a simple manner, + // and also provides some additional convenience mechanisms + // for connecting to common data sources without needing to + // explicitly construct a Dojo data store. The widget can then + // present the data in several forms: as a graphical chart, + // as a tabular grid, or as display panels presenting meta-data + // (title, creation information, etc) from the data. The + // widget can also create and manage several of these forms + // in one simple construction. + // + // Note: this is a first experimental draft and any/all details + // are subject to substantial change in later drafts. + // example: + // | var pres = new dojox.data.DataPresentation("myChartNode", { + // | type: "chart", + // | url: "/data/mydata", + // | gridNode: "myGridNode" + // | }); + + // store: Object + // Dojo data store used to supply data to be presented. This may + // be supplied on construction or created implicitly based on + // other construction parameters ('data', 'url'). + + // query: String + // Query to apply to the Dojo data store used to supply data to + // be presented. + + // queryOptions: String + // Query options to apply to the Dojo data store used to supply + // data to be presented. + + // data: Object + // Data to be presented. If supplied on construction this property + // will override any value supplied for the 'store' property. + + // url: String + // URL to fetch data from in JSON format. If supplied on + // construction this property will override any values supplied + // for the 'store' and/or 'data' properties. Note that the data + // can also be comment-filtered JSON, although this will trigger + // a warning message in the console unless djConfig.useCommentedJson + // has been set to true. + + // urlContent: Object + // Content to be passed to the URL when fetching data. If a URL has + // not been supplied, this value is ignored. + + // urlError: function + // A function to be called if an error is encountered when fetching + // data from the supplied URL. This function will be supplied with + // two parameters exactly as the error function supplied to the + // dojo.xhrGet function. This function may be called multiple times + // if a refresh interval has been supplied. + + // refreshInterval: Number + // the time interval in milliseconds after which the data supplied + // via the 'data' property or fetched from a URL via the 'url' + // property should be regularly refreshed. This property is + // ignored if neither the 'data' nor 'url' property has been + // supplied. If the refresh interval is zero, no regular refresh is done. + + // refreshIntervalPending: + // the JavaScript set interval currently in progress, if any + + // series: Array + // an array of objects describing the data series to be included + // in the data presentation. Each object may contain the + // following fields: + // + // - datapoints: the name of the field from the source data which + // contains an array of the data points for this data series. + // If not supplied, the source data is assumed to be an array + // of data points to be used. + // - field: the name of the field within each data point which + // contains the data for this data series. If not supplied, + // each data point is assumed to be the value for the series. + // - name: a name for the series, used in the legend and grid headings + // - namefield: + // the name of the field from the source data which + // contains the name the series, used in the legend and grid + // headings. If both name and namefield are supplied, name takes + // precedence. If neither are supplied, a default name is used. + // - chart: true if the series should be included in a chart presentation (default: true) + // - charttype: the type of presentation of the series in the chart, which can be + // "range", "line", "bar" (default: "bar") + // - linestyle: the stroke style for lines (if applicable) (default: "Solid") + // - axis: the dependant axis to which the series will be attached in the chart, + // which can be "primary" or "secondary" + // - grid: true if the series should be included in a data grid presentation (default: true) + // - gridformatter: an optional formatter to use for this series in the data grid + // + // a call-back function may alternatively be supplied. The function takes + // a single parameter, which will be the data (from the 'data' field or + // loaded from the value in the 'url' field), and should return the array + // of objects describing the data series to be included in the data + // presentation. This enables the series structures to be built dynamically + // after data load, and rebuilt if necessary on data refresh. The call-back + // function will be called each time new data is set, loaded or refreshed. + // A call-back function cannot be used if the data is supplied directly + // from a Dojo data store. + + // type: String + // the type of presentation to be applied at the DOM attach point. + // This can be 'chart', 'legend', 'grid', 'title', 'footer'. The + // default type is 'chart'. + type: "chart", + + // chartType: String + // the type of chart to display. This can be 'clusteredbars', + // 'areas', 'stackedcolumns', 'stackedbars', 'stackedareas', + // 'lines', 'hybrid'. The default type is 'bar'. + chartType: "clusteredBars", + + // reverse: Boolean + // true if the chart independent axis should be reversed. + reverse: false, + + // animate: Object + // if an object is supplied, then the chart bars or columns will animate + // into place. If the object contains a field 'duration' then the value + // supplied is the duration of the animation in milliseconds, otherwise + // a default duration is used. A boolean value true can alternatively be + // supplied to enable animation with the default duration. + // The default is null (no animation). + animate: null, + + // labelMod: Integer + // the frequency of label annotations to be included on the + // independent axis. 1=every label. 0=no labels. The default is 1. + labelMod: 1, + + // tooltip: String|Function + // a string pattern defining the tooltip text to be applied to chart + // data points, or a function which takes a single parameter and returns + // the tooltip text to be applied to chart data points. The string pattern + // will have the following substitutions applied: + // + // - {0} - the type of chart element ('bar', 'surface', etc) + // - {1} - the name of the data series + // - {2} - the independent axis value at the tooltip data point + // - {3} - the series value at the tooltip data point point + // + // The function, if supplied, will receive a single parameter exactly + // as per the dojox.charting.action2D.Tooltip class. The default value + // is to apply the default tooltip as defined by the + // dojox.charting.action2D.Tooltip class. + + // legendHorizontal: Boolean|Number + // true if the legend should be rendered horizontally, or a number if + // the legend should be rendered as horizontal rows with that number of + // items in each row, or false if the legend should be rendered + // vertically (same as specifying 1). The default is true (legend + // rendered horizontally). + legendHorizontal: true, + + // theme: String|Theme + // a theme to use for the chart, or the name of a theme. + + // chartNode: String|DomNode + // an optional DOM node or the id of a DOM node to receive a + // chart presentation of the data. Supply only when a chart is + // required and the type is not 'chart'; when the type is + // 'chart' this property will be set to the widget attach point. + + // legendNode: String|DomNode + // an optional DOM node or the id of a DOM node to receive a + // chart legend for the data. Supply only when a legend is + // required and the type is not 'legend'; when the type is + // 'legend' this property will be set to the widget attach point. + + // gridNode: String|DomNode + // an optional DOM node or the id of a DOM node to receive a + // grid presentation of the data. Supply only when a grid is + // required and the type is not 'grid'; when the type is + // 'grid' this property will be set to the widget attach point. + + // titleNode: String|DomNode + // an optional DOM node or the id of a DOM node to receive a + // title for the data. Supply only when a title is + // required and the type is not 'title'; when the type is + // 'title' this property will be set to the widget attach point. + + // footerNode: String|DomNode + // an optional DOM node or the id of a DOM node to receive a + // footer presentation of the data. Supply only when a footer is + // required and the type is not 'footer'; when the type is + // 'footer' this property will be set to the widget attach point. + + // chartWidget: Object + // the chart widget, if any + + // legendWidget: Object + // the legend widget, if any + + // gridWidget: Object + // the grid widget, if any + + constructor: function(node, args){ + // summary: + // Set up properties and initialize. + // node: DomNode + // The node to attach the data presentation to. + // args: Object + // (see above) + + // apply arguments directly + dojo.mixin(this, args); + + // store our DOM attach point + this.domNode = dojo.byId(node); + + // also apply the DOM attach point as the node for the presentation type + this[this.type + "Node"] = this.domNode; + + // load the theme if provided by name + if(typeof this.theme == 'string'){ + this.theme = dojo.getObject(this.theme); + } + + // resolve any the nodes that were supplied as ids + this.chartNode = dojo.byId(this.chartNode); + this.legendNode = dojo.byId(this.legendNode); + this.gridNode = dojo.byId(this.gridNode); + this.titleNode = dojo.byId(this.titleNode); + this.footerNode = dojo.byId(this.footerNode); + + // we used to support a 'legendVertical' so for now + // at least maintain backward compatibility + if(this.legendVertical){ + this.legendHorizontal = !this.legendVertical; + } + + if(this.url){ + this.setURL(null, null, this.refreshInterval); + } + else{ + if(this.data){ + this.setData(null, this.refreshInterval); + } + else{ + this.setStore(); + } + } + }, + + setURL: function(/*String?*/url, /*Object?*/ urlContent, /*Number?*/refreshInterval){ + // summary: + // Sets the URL to fetch data from, with optional content + // supplied with the request, and an optional + // refresh interval in milliseconds (0=no refresh) + + // if a refresh interval is supplied we will start a fresh + // refresh after storing the supplied url + if(refreshInterval){ + this.cancelRefresh(); + } + + this.url = url || this.url; + this.urlContent = urlContent || this.urlContent; + this.refreshInterval = refreshInterval || this.refreshInterval; + + var me = this; + + dojo.xhrGet({ + url: this.url, + content: this.urlContent, + handleAs: 'json-comment-optional', + load: function(response, ioArgs){ + me.setData(response); + }, + error: function(xhr, ioArgs){ + if(me.urlError && (typeof me.urlError == "function")){ + me.urlError(xhr, ioArgs); + } + } + }); + + if(refreshInterval && (this.refreshInterval > 0)){ + this.refreshIntervalPending = setInterval(function(){ + me.setURL(); + }, this.refreshInterval); + } + }, + + setData: function(/*Object?*/data, /*Number?*/refreshInterval){ + // summary: + // Sets the data to be presented, and an optional + // refresh interval in milliseconds (0=no refresh) + + // if a refresh interval is supplied we will start a fresh + // refresh after storing the supplied data reference + if(refreshInterval){ + this.cancelRefresh(); + } + + this.data = data || this.data; + this.refreshInterval = refreshInterval || this.refreshInterval; + + // TODO if no 'series' property was provided, build one intelligently here + // (until that is done, a 'series' property must be supplied) + + var _series = (typeof this.series == 'function') ? this.series(this.data) : this.series; + + var datasets = [], + series_data = [], + series_name = [], + series_chart = [], + series_charttype = [], + series_linestyle = [], + series_axis = [], + series_grid = [], + series_gridformatter = [], + maxlen = 0; + + // identify the dataset arrays in which series values can be found + for(var ser = 0; ser < _series.length; ser++){ + datasets[ser] = getSubfield(this.data, _series[ser].datapoints); + if(datasets[ser] && (datasets[ser].length > maxlen)){ + maxlen = datasets[ser].length; + } + + series_data[ser] = []; + // name can be specified in series structure, or by field in series structure, otherwise use a default + series_name[ser] = _series[ser].name || (_series[ser].namefield ? getSubfield(this.data, _series[ser].namefield) : null) || ("series " + ser); + series_chart[ser] = (_series[ser].chart !== false); + series_charttype[ser] = _series[ser].charttype || "bar"; + series_linestyle[ser] = _series[ser].linestyle; + series_axis[ser] = _series[ser].axis || "primary"; + series_grid[ser] = (_series[ser].grid !== false); + series_gridformatter[ser] = _series[ser].gridformatter; + } + + // create an array of data points by sampling the series + // and an array of series arrays by collecting the series + // each data point has an 'index' item containing a sequence number + // and items named "data.0", "data.1", ... containing the series samples + // and the first data point also has items named "name.0", "name.1", ... containing the series names + // and items named "series.0", "series.1", ... containing arrays with the complete series in + var point, datapoint, datavalue, fdatavalue; + var datapoints = []; + + for(point = 0; point < maxlen; point++){ + datapoint = { index: point }; + for(ser = 0; ser < _series.length; ser++){ + if(datasets[ser] && (datasets[ser].length > point)){ + datavalue = getSubfield(datasets[ser][point], _series[ser].field); + + if(series_chart[ser]){ + // convert the data value to a float if possible + fdatavalue = parseFloat(datavalue); + if(!isNaN(fdatavalue)){ + datavalue = fdatavalue; + } + } + + datapoint["data." + ser] = datavalue; + series_data[ser].push(datavalue); + } + } + datapoints.push(datapoint); + } + + if(maxlen <= 0){ + datapoints.push({index: 0}); + } + + // now build a prepared store from the data points we've constructed + var store = new dojo.data.ItemFileWriteStore({ data: { identifier: 'index', items: datapoints }}); + if(this.data.title){ + store.title = this.data.title; + } + if(this.data.footer){ + store.footer = this.data.footer; + } + + store.series_data = series_data; + store.series_name = series_name; + store.series_chart = series_chart; + store.series_charttype = series_charttype; + store.series_linestyle = series_linestyle; + store.series_axis = series_axis; + store.series_grid = series_grid; + store.series_gridformatter = series_gridformatter; + + this.setPreparedStore(store); + + if(refreshInterval && (this.refreshInterval > 0)){ + var me = this; + this.refreshIntervalPending = setInterval(function(){ + me.setData(); + }, this.refreshInterval); + } + }, + + refresh: function(){ + // summary: + // If a URL or data has been supplied, refreshes the + // presented data from the URL or data. If a refresh + // interval is also set, the periodic refresh is + // restarted. If a URL or data was not supplied, this + // method has no effect. + if(this.url){ + this.setURL(this.url, this.urlContent, this.refreshInterval); + }else if(this.data){ + this.setData(this.data, this.refreshInterval); + } + }, + + cancelRefresh: function(){ + // summary: + // Cancels any and all outstanding data refreshes + if(this.refreshIntervalPending){ + // cancel existing refresh + clearInterval(this.refreshIntervalPending); + this.refreshIntervalPending = undefined; + } + }, + + setStore: function(/*Object?*/store, /*String?*/query, /*Object?*/queryOptions){ + // FIXME build a prepared store properly -- this requires too tight a convention to be followed to be useful + this.setPreparedStore(store, query, queryOptions); + }, + + setPreparedStore: function(/*Object?*/store, /*String?*/query, /*Object?*/queryOptions){ + // summary: + // Sets the store and query. + + this.preparedstore = store || this.store; + this.query = query || this.query; + this.queryOptions = queryOptions || this.queryOptions; + + if(this.preparedstore){ + if(this.chartNode){ + this.chartWidget = setupChart(this.chartNode, this.chartWidget, this.chartType, this.reverse, this.animate, this.labelMod, this.theme, this.tooltip, this.preparedstore, this.query, this.queryOptions); + this.renderChartWidget(); + } + if(this.legendNode){ + this.legendWidget = setupLegend(this.legendNode, this.legendWidget, this.chartWidget, this.legendHorizontal); + } + if(this.gridNode){ + this.gridWidget = setupGrid(this.gridNode, this.gridWidget, this.preparedstore, this.query, this.queryOptions); + this.renderGridWidget(); + } + if(this.titleNode){ + setupTitle(this.titleNode, this.preparedstore); + } + if(this.footerNode){ + setupFooter(this.footerNode, this.preparedstore); + } + } + }, + + renderChartWidget: function(){ + // summary: + // Renders the chart widget (if any). This method is + // called whenever a chart widget is created or + // configured, and may be connected to. + if(this.chartWidget){ + this.chartWidget.render(); + } + }, + + renderGridWidget: function(){ + // summary: + // Renders the grid widget (if any). This method is + // called whenever a grid widget is created or + // configured, and may be connected to. + if(this.gridWidget){ + this.gridWidget.render(); + } + }, + + getChartWidget: function(){ + // summary: + // Returns the chart widget (if any) created if the type + // is "chart" or the "chartNode" property was supplied. + return this.chartWidget; + }, + + getGridWidget: function(){ + // summary: + // Returns the grid widget (if any) created if the type + // is "grid" or the "gridNode" property was supplied. + return this.gridWidget; + }, + + destroy: function(){ + // summary: + // Destroys the widget and all components and resources. + + // cancel any outstanding refresh requests + this.cancelRefresh(); + + if(this.chartWidget){ + this.chartWidget.destroy(); + delete this.chartWidget; + } + + if(this.legendWidget){ + // no legend.destroy() + delete this.legendWidget; + } + + if(this.gridWidget){ + // no grid.destroy() + delete this.gridWidget; + } + + if(this.chartNode){ + this.chartNode.innerHTML = ""; + } + + if(this.legendNode){ + this.legendNode.innerHTML = ""; + } + + if(this.gridNode){ + this.gridNode.innerHTML = ""; + } + + if(this.titleNode){ + this.titleNode.innerHTML = ""; + } + + if(this.footerNode){ + this.footerNode.innerHTML = ""; + } + } + + }); + +})(); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog.js new file mode 100644 index 00000000..8426132c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog.js @@ -0,0 +1,76 @@ +//>>built +require({cache:{"url:dojox/widget/Dialog/Dialog.html":"
    \n\t
    \n\t\t${title}\n\t
    \n\t
    \n\t\t
    \n\t
    \n\t
    \n\t\t\tx\n\t
    \n
    \n"}}); +define("dojox/widget/Dialog",["dojo","dojox","dojo/text!./Dialog/Dialog.html","dijit/Dialog","dojo/window","dojox/fx","./DialogSimple"],function(_1,_2,_3){ +_1.getObject("widget",true,_2); +return _1.declare("dojox.widget.Dialog",_2.widget.DialogSimple,{templateString:_3,sizeToViewport:false,viewportPadding:35,dimensions:null,easing:null,sizeDuration:dijit._defaultDuration,sizeMethod:"chain",showTitle:false,draggable:false,modal:false,constructor:function(_4,_5){ +this.easing=_4.easing||_1._defaultEasing; +this.dimensions=_4.dimensions||[300,300]; +},_setup:function(){ +this.inherited(arguments); +if(!this._alreadyInitialized){ +this._navIn=_1.fadeIn({node:this.closeButtonNode}); +this._navOut=_1.fadeOut({node:this.closeButtonNode}); +if(!this.showTitle){ +_1.addClass(this.domNode,"dojoxDialogNoTitle"); +} +} +},layout:function(e){ +this._setSize(); +this.inherited(arguments); +},_setSize:function(){ +this._vp=_1.window.getBox(); +var tc=this.containerNode,_6=this.sizeToViewport; +return this._displaysize={w:_6?tc.scrollWidth:this.dimensions[0],h:_6?tc.scrollHeight:this.dimensions[1]}; +},show:function(){ +if(this.open){ +return; +} +this._setSize(); +_1.style(this.closeButtonNode,"opacity",0); +_1.style(this.domNode,{overflow:"hidden",opacity:0,width:"1px",height:"1px"}); +_1.style(this.containerNode,{opacity:0,overflow:"hidden"}); +this.inherited(arguments); +if(this.modal){ +this._modalconnects.push(_1.connect(_1.body(),"onkeypress",function(e){ +if(e.charOrCode==_1.keys.ESCAPE){ +_1.stopEvent(e); +} +})); +}else{ +this._modalconnects.push(_1.connect(dijit._underlay.domNode,"onclick",this,"onCancel")); +} +this._modalconnects.push(_1.connect(this.domNode,"onmouseenter",this,"_handleNav")); +this._modalconnects.push(_1.connect(this.domNode,"onmouseleave",this,"_handleNav")); +},_handleNav:function(e){ +var _7="_navOut",_8="_navIn",_9=(e.type=="mouseout"?_8:_7),_a=(e.type=="mouseout"?_7:_8); +this[_9].stop(); +this[_a].play(); +},_position:function(){ +if(!this._started){ +return; +} +if(this._sizing){ +this._sizing.stop(); +this.disconnect(this._sizingConnect); +delete this._sizing; +} +this.inherited(arguments); +if(!this.open){ +_1.style(this.containerNode,"opacity",0); +} +var _b=this.viewportPadding*2; +var _c={node:this.domNode,duration:this.sizeDuration||dijit._defaultDuration,easing:this.easing,method:this.sizeMethod}; +var ds=this._displaysize||this._setSize(); +_c["width"]=ds.w=(ds.w+_b>=this._vp.w||this.sizeToViewport)?this._vp.w-_b:ds.w; +_c["height"]=ds.h=(ds.h+_b>=this._vp.h||this.sizeToViewport)?this._vp.h-_b:ds.h; +this._sizing=_2.fx.sizeTo(_c); +this._sizingConnect=this.connect(this._sizing,"onEnd","_showContent"); +this._sizing.play(); +},_showContent:function(e){ +var _d=this.containerNode; +_1.style(this.domNode,{overflow:"visible",opacity:1}); +_1.style(this.closeButtonNode,"opacity",1); +_1.style(_d,{height:this._displaysize.h-this.titleNode.offsetHeight+"px",width:this._displaysize.w+"px",overflow:"auto"}); +_1.anim(_d,{opacity:1}); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog.js.uncompressed.js new file mode 100644 index 00000000..6d0c0409 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog.js.uncompressed.js @@ -0,0 +1,253 @@ +require({cache:{ +'url:dojox/widget/Dialog/Dialog.html':"
    \n\t
    \n\t\t${title}\n\t
    \n\t
    \n\t\t
    \n\t
    \n\t
    \n\t\t\tx\n\t
    \n
    \n"}}); +define("dojox/widget/Dialog", [ + "dojo", "dojox", "dojo/text!./Dialog/Dialog.html", + "dijit/Dialog", "dojo/window", "dojox/fx", "./DialogSimple" +], function(dojo, dojox, template){ + + dojo.getObject('widget', true, dojox); + + return dojo.declare('dojox.widget.Dialog', dojox.widget.DialogSimple, + { + // summary: + // A Lightbox-like Modal-dialog for HTML Content + // description: + // An HTML-capable Dialog widget with advanced sizing + // options, animated show/hide and other useful options. + // + // This Dialog is also very easy to apply custom styles to. + // + // It works identically to a `dijit.Dialog` with several + // additional parameters. + + templateString: template, + + // sizeToViewport: Boolean + // If true, fix the size of the dialog to the Viewport based on + // viewportPadding value rather than the calculated or natural + // style. If false, base the size on a passed dimension attribute. + // Either way, the viewportPadding value is used if the the content + // extends beyond the viewport size for whatever reason. + sizeToViewport: false, + + // viewportPadding: Integer + // If sizeToViewport="true", this is the amount of padding in pixels to leave + // between the dialog border and the viewport edge. + // This value is also used when sizeToViewport="false" and dimensions exceeded + // by dialog content to ensure dialog does not go outside viewport boundary + viewportPadding: 35, + + // dimensions: Array + // A two-element array of [width,height] to animate the Dialog to if sizeToViewport="false" + // Defaults to [300,300] + dimensions: null, + + // easing: Function?|String? + // An easing function to apply to the sizing animation. + easing: null, + + // sizeDuration: Integer + // Time (in ms) to use in the Animation for sizing. + sizeDuration: dijit._defaultDuration, + + // sizeMethod: String + // To be passed to dojox.fx.sizeTo, one of "chain" or "combine" to effect + // the animation sequence. + sizeMethod: "chain", + + // showTitle: Boolean + // Toogle to show or hide the Title area. Can only be set at startup. + showTitle: false, + + // draggable: Boolean + // Make the pane draggable. Differs from dijit.Dialog by setting default to false + draggable: false, // simply over-ride the default from dijit.Dialog + + // modal: Boolean + // If true, this Dialog instance will be truly modal and prevent closing until + // explicitly told to by calling hide() - Defaults to false to preserve previous + // behaviors. + modal: false, + + constructor: function(props, node){ + this.easing = props.easing || dojo._defaultEasing; + this.dimensions = props.dimensions || [300, 300]; + }, + + _setup: function(){ + // summary: + // Piggyback on dijit.Dialog's _setup for load-time options, deferred to + + this.inherited(arguments); + if(!this._alreadyInitialized){ + this._navIn = dojo.fadeIn({ node: this.closeButtonNode }); + this._navOut = dojo.fadeOut({ node: this.closeButtonNode }); + if(!this.showTitle){ + dojo.addClass(this.domNode,"dojoxDialogNoTitle"); + } + } + }, + + layout: function(e){ + this._setSize(); + this.inherited(arguments); + }, + + _setSize: function(){ + // summary: + // cache and set our desired end position + this._vp = dojo.window.getBox(); + var tc = this.containerNode, + vpSized = this.sizeToViewport + ; + return this._displaysize = { + w: vpSized ? tc.scrollWidth : this.dimensions[0], + h: vpSized ? tc.scrollHeight : this.dimensions[1] + }; // Object + }, + + show: function(){ + if(this.open){ return; } + + this._setSize(); + dojo.style(this.closeButtonNode,"opacity", 0); + dojo.style(this.domNode, { + overflow: "hidden", + opacity: 0, + width: "1px", + height: "1px" + }); + dojo.style(this.containerNode, { + opacity: 0, + overflow: "hidden" + }); + + this.inherited(arguments); + + if(this.modal){ + // prevent escape key from closing dialog + // connect to body to trap this event from the Dialog a11y code, and stop escape key + // from doing anything in the modal:true case: + this._modalconnects.push(dojo.connect(dojo.body(), "onkeypress", function(e){ + if(e.charOrCode == dojo.keys.ESCAPE){ + dojo.stopEvent(e); + } + })); + }else{ + // otherwise, allow clicking on the underlay to close + this._modalconnects.push(dojo.connect(dijit._underlay.domNode, "onclick", this, "onCancel")); + } + this._modalconnects.push(dojo.connect(this.domNode,"onmouseenter",this,"_handleNav")); + this._modalconnects.push(dojo.connect(this.domNode,"onmouseleave",this,"_handleNav")); + + }, + + _handleNav: function(e){ + // summary: + // Handle's showing or hiding the close icon + + var navou = "_navOut", + navin = "_navIn", + animou = (e.type == "mouseout" ? navin : navou), + animin = (e.type == "mouseout" ? navou : navin) + ; + + this[animou].stop(); + this[animin].play(); + + }, + + // an experiment in a quicksilver-like hide. too choppy for me. + /* + hide: function(){ + // summary: + // Hide the dialog + + // if we haven't been initialized yet then we aren't showing and we can just return + if(!this._alreadyInitialized){ + return; + } + + this._fadeIn && this._fadeIn.stop(); + + if (this._scrollConnected){ + this._scrollConnected = false; + } + dojo.forEach(this._modalconnects, dojo.disconnect); + this._modalconnects = []; + if(this.refocus){ + this.connect(this._fadeOut,"onEnd",dojo.hitch(dijit,"focus",this._savedFocus)); + } + if(this._relativePosition){ + delete this._relativePosition; + } + + dojox.fx.sizeTo({ + node: this.domNode, + duration:this.sizeDuration || this.duration, + width: this._vp.w - 1, + height: 5, + onBegin: dojo.hitch(this,function(){ + this._fadeOut.play(this.sizeDuration / 2); + }) + }).play(); + + this.open = false; + }, */ + + _position: function(){ + + if(!this._started){ return; } // prevent content: from firing this anim #8914 + + if(this._sizing){ + this._sizing.stop(); + this.disconnect(this._sizingConnect); + delete this._sizing; + } + + this.inherited(arguments); + + if(!this.open){ dojo.style(this.containerNode, "opacity", 0); } + var pad = this.viewportPadding * 2; + + var props = { + node: this.domNode, + duration: this.sizeDuration || dijit._defaultDuration, + easing: this.easing, + method: this.sizeMethod + }; + + var ds = this._displaysize || this._setSize(); + props['width'] = ds.w = (ds.w + pad >= this._vp.w || this.sizeToViewport) + ? this._vp.w - pad : ds.w; + + props['height'] = ds.h = (ds.h + pad >= this._vp.h || this.sizeToViewport) + ? this._vp.h - pad : ds.h; + + this._sizing = dojox.fx.sizeTo(props); + this._sizingConnect = this.connect(this._sizing,"onEnd","_showContent"); + this._sizing.play(); + + }, + + _showContent: function(e){ + // summary: + // Show the inner container after sizing animation + + var container = this.containerNode; + dojo.style(this.domNode, { + overflow: "visible", + opacity: 1 + }); + dojo.style(this.closeButtonNode,"opacity",1); + dojo.style(container, { + height: this._displaysize.h - this.titleNode.offsetHeight + "px", + width: this._displaysize.w + "px", + overflow:"auto" + }); + dojo.anim(container, { opacity:1 }); + } + + }); +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/Dialog.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/Dialog.css new file mode 100644 index 00000000..a884645c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/Dialog.css @@ -0,0 +1,95 @@ + +.dojoxDialog { + position: absolute; + z-index: 999; + outline:0; +} +.dojoxDialog .closeText { + display:none; + + position:absolute; +} +.dojoxDialogFixed div.dojoxDialogTitleBar { + cursor:default; +} +.dojoxDialogWrapper { + left: 0; + top: 0; +} +.dojoxDialog { + background: #fff; + -webkit-box-shadow: 0px 5px 10px #adadad; + -moz-border-radius:9pt; + -webkit-border-radius:8pt; + border:1px solid #b7b7b7; + padding:1.5em 3px 3px 3px; +} +.dojoxDialogFocused { + border:1px solid #ccc; +} +.dojoxDialog .dojoxDialogPaneContent { + border:none; + padding:0; +} +.dojoxDialogTitleBar { + + cursor:move; + top:0; + left:0; + right:0; + background:#ededed; + height:1.5em; + outline:0; + -moz-border-radius-topleft:8pt; + -moz-border-radius-topright:8pt; + -webkik-border-radius-topleft:7pt; + -webkit-border-radius-topright:7pt; +} +.dj_webkit .dojoxDialogTitleBar { + border:1px solid #ccc; +} +.dojoxDialogNoTitle .dojoxDialogTitleBar { + display:none; +} +.dojoxDialogContent { + + padding: 3px; + margin-top:1.2em; +} +.dojoxDialogTitle { + font-weight: bold; + padding: 8px 12px 8px 12px; + outline:0; + border-bottom:#b7b7b7; +} +div.dojoxDialogNoTitle { + padding-top:9px; +} +.dojoxDialogCloseIcon, .dojoxDialogCloseIconHover { + background : url("images/dialogCloseButton.png") no-repeat top right; + position: absolute; + vertical-align: middle; + left: -19px; + top: -19px; + height: 29px; + width: 29px; + cursor: pointer; + z-index: 999; +} +.dj_ie6 .dojoxDialogCloseIcon { + background-image: url("images/dialogCloseButton.gif"); +} +.dojoxDialog div.dijitDialogCloseIconHover, +.dojoxDialog div.dijitDialogCloseIconActive { + background-position:0 0; +} +.dojoxDialog .dijitDialogCloseIconHover { + background-image: url("images/dialogCloseButton.png"); +} +.dj_ie6 .dojoxDialog .dijitDialogCloseIconHover { + background-image: url("images/dialogCloseButton.gif"); +} +.dojoxDialogNoTitle .dojoxDialogCloseIcon { + top: -15px; + left: -15px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/Dialog.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/Dialog.html new file mode 100644 index 00000000..dad17dec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/Dialog.html @@ -0,0 +1,11 @@ + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/images/dialogCloseButton.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/images/dialogCloseButton.gif new file mode 100644 index 0000000000000000000000000000000000000000..1f45a5cd438bca4c7434c6bf64c6ebbd68e537b3 GIT binary patch literal 1408 zcmZ?wbhEHblx2`*_&$w6KtOix)4RIdf*lj2SsO zIZKu-xqJ6+adB~MY^;ik%9k%+wr}6QXwjk%A3m6wnc3UhXJlkpSXgY{y!r9t$7|QF z)zZ>>_UzfljT=9G`gHH!y(dqe%$+;;`t|FHiHTWRSsfi6KY#v|kdQck{`}6JJLk-q zbL-ZvJ9qB%_V(`Hz5B(B7q4Eudi(b6%a<>=Y}t~Ol+@7B;NakJ;>3vq2M&Dw`c+L$ z?f(7yuV25uef##wlP60`O4{1me*OBjaN)x8^76fV_fDTaT~kxDwzf7QA>qxNH|Nfs z3keA^H8o91NhvBSN=r-A(a~ACa^;^tf3|MjT3A>(apJ_&r%z9qFyZgtzcn>A&d$#B z=g)6%Z~yo2UwC- zbq5a~ynOj`PfyRaYu7qEJB^Kv85kJ;g8`5+3djoq#h)yU3=Gp4bU@lcd4hrCKZ7o( zj7Pv}R*@JD*{GDI=f#@@l%q}+JY-(lEn&PWQ^inevV{0|2Tr4iRT8zj^1};?{ zQ>}{@2YxiP9qW}he)eE-5Q~=-i&<~LO77LzpMN?D?X0lJ^n0TOD-^!y= zM$I9erH6A)pr^o;1shmZTOy7gWOk97D9vgs5SgqRDd4$;YpR3eN!DpTPM*S3SuP!z z#w)Y%5POVS!NKV(V;2K8#xcpj1*9KxnzppsY5e0-^^rmyJ`aA3ufX}g^ABw~)R zxWwIfkja*RE%u@t>y~T3j`&>J>3EV`sPsXWpx>1(&g`uv4vcH2UfFQO)pdsmE0Z{H zBjYBsw+}eP#AP2|a;W=LIg#Dw&jDv{sRR~hmfJ!qM}=ilS}wASotd!CTX2oQAuioL J+j1QktN}4D^?LvS literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/images/dialogCloseButton.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Dialog/images/dialogCloseButton.png new file mode 100644 index 0000000000000000000000000000000000000000..9d2f4236b875e153d9a65a7278aaaca9c58ce25e GIT binary patch literal 1357 zcmV-T1+w~yP)URSrlK_V`KG zJLDC^7v&FX6kmy&qI5O+gC^6AA&R0rhLT5VhM|$<4`U>+kaTYtF-FMnAq^sVP2SHv zYwfw`bk4okb$zqyclSB_oV|W$ueJ7C>na#yV2mgfidYsR3bhI%1TN~*x1+@+uq)0CnqP2HuBO|5cb#Ed?sTCGCHa4=Ytu1DZoSmJq>FH@HF_}C-Tfaivr|7$%aLA_X zrKKeZ3=HJ+x3{;jwzdY#%geC0w+Hj{^Wf;{2tGbO;OXhf-*a<0C#k9@5j(!NI|S z-xn1X3B*Q@Ipgi$z5)Ah>A3i$i`!}awww6?Ya`Vx#4D=RA~EG&fJ;9zdbf`S65 zttD?k6W-@(lm3E3#_;ekBqk=p{rx@v%9)uN_!z0KuI45`Iy&NR&`1*U4Vq{OzaYZ6 zxHyQ4isDZ(8bPgA!_(7~2p1O@*}b7>Wo2dDw`6LSN+poKrymo|4IO$YFE0lh8ync! z+2KAUe+noqErt5}dI${-mCZ|^kx7NQ^Ye4)?d|2tDMmB_sl*Ms38Y`rkB5f`zZn=9 zfQN?%5g{QV5Ed2&*4EZgTwDwh5fS1u`q1d;X#OlUHC48bthKwl3wCyP+_xHuH6doa za8oLk+(Z`_7tqz!C0k5pZfa@*Oa@#zCJG1-59dB7LXy?hRjydNjzGtb#MjqXAdNA@ zpU*jcY%HJI-{0rv(U$J+ZXS(!d3l_e0>#|iTqMlN$$^`j8=ZA?b90cClmzbX?!weN zBIPIA-rkK@s82dOJNcNOpDz+_Y-~Vwb~Zm=`h-YHC{{G$L8PWUqD=mC@ALCB zKQ1o`=2tK^H5Kojot?SA$H&L@zJGOf1ycRQN2HfRnj^8Wuy}E&9UUDI6T<@?Fdu`f zt1CBkWo0Ed{m96O&YFOL02w)DNupn*tM&DDKI7!%q!SDTDIxhVB_##w>gvScqM%Ah zNYGgq6cohQ93LMGq-#X_2VM2|_wyOb9@=M-0)e7cAWTb3gVWPfXl`zn5ocy*>YQO= z9a%;rDxs9kQz^or;3aBkXoz88$$&dySXr32x3|u-ii!%o&#(Zn%galy6Z5f9?qUVf z?`Wc}t&P8cq0f?&lbNlp?f=5W#01wz^;kprK`i2QV#vYL-J*{fn(U)NyGNgLUDOC@ zNQ-5igRt9-j118vSVx(qrRAHEo0}`@z>FmBl6o$kb_L}(dI2kh*n(iUz_8RYOa?}w zrKN@8@e{2jXm}NvC4-O78Oy~>`xn5ut%X%qn1QCV{AS|S)CR0h3YYTnM z)YKHiMnFpVy*~X4LmfVry+RzmMtmmB)zsAR?$6B3j30igER&OyfFCBS4Tv96xBAT; zzT`N4gZTB8&Yu1SR3Z{z)2T4_zl>z}lz{yapCIlv1w(~;{x(*}zXA*Z7UuTAts#0} P00000NkvXXu0mjf%q)Qt literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DialogSimple.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DialogSimple.js new file mode 100644 index 00000000..08df0c9f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DialogSimple.js @@ -0,0 +1,4 @@ +//>>built +define("dojox/widget/DialogSimple",["dojo/_base/declare","dijit/Dialog","dojox/layout/ContentPane"],function(_1,_2,_3){ +return _1("dojox.widget.DialogSimple",[_3,_2._DialogBase],{}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DialogSimple.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DialogSimple.js.uncompressed.js new file mode 100644 index 00000000..4bc41d4e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DialogSimple.js.uncompressed.js @@ -0,0 +1,12 @@ +define("dojox/widget/DialogSimple", [ + "dojo/_base/declare", "dijit/Dialog", "dojox/layout/ContentPane" +], function(declare, Dialog, ContentPane){ + + return declare("dojox.widget.DialogSimple", [ContentPane, Dialog._DialogBase], { + // summary: + // A Simple Dialog Mixing the `dojox.layout.ContentPane` functionality over + // top of a vanilla `dijit.Dialog`. See `dojox.widget.Dialog` for a more flexible + // dialog option allowing animations and different styles/theme support. + }); +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester.js new file mode 100644 index 00000000..08b2f3df --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester.js @@ -0,0 +1,63 @@ +//>>built +define("dojox/widget/DocTester",["dijit","dojo","dojox","dojo/require!dojo/string,dijit/_Widget,dijit/_Templated,dojox/form/BusyButton,dojox/testing/DocTest"],function(_1,_2,_3){ +_2.provide("dojox.widget.DocTester"); +_2.require("dojo.string"); +_2.require("dijit._Widget"); +_2.require("dijit._Templated"); +_2.require("dojox.form.BusyButton"); +_2.require("dojox.testing.DocTest"); +_2.declare("dojox.widget.DocTester",[_1._Widget,_1._Templated],{templateString:_2.cache("dojox.widget","DocTester/DocTester.html","
    \n\t
    \n\t\n\t\n\t\n\t\t0 tests,\n\t\t0 passed,\n\t\t0 failed\n\t\n
    "),widgetsInTemplate:true,_fillContent:function(_4){ +var _5=_4.innerHTML; +this.doctests=new _3.testing.DocTest(); +this.tests=this.doctests.getTestsFromString(this._unescapeHtml(_5)); +var _6=_2.map(this.tests,"return item.line-1"); +var _7=_5.split("\n"); +var _8="
    FAILED, actual result was:
    "; +var _9="
    ";
    +for(var i=0;i<_7.length;i++){
    +var _a=_2.indexOf(_6,i);
    +if(_a>0&&_a!=-1){
    +var _b=_a%2?"even":"odd";
    +_9+=_8;
    +_9+="
    ";
    +}
    +_9+=_7[i].replace(/^\s+/,"")+"\n";
    +}
    +_9+=_8+"
    "; +this.containerNode.innerHTML=_9; +},postCreate:function(){ +this.inherited("postCreate",arguments); +_2.connect(this.runButtonNode,"onClick",_2.hitch(this,"runTests")); +_2.connect(this.resetButtonNode,"onClick",_2.hitch(this,"reset")); +this.numTestsNode.innerHTML=this.tests.length; +},runTests:function(){ +var _c={ok:0,nok:0}; +for(var i=0;i").replace(/"/gm,"\""); +return _f; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester.js.uncompressed.js new file mode 100644 index 00000000..5a04dcc1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester.js.uncompressed.js @@ -0,0 +1,92 @@ +// wrapped by build app +define("dojox/widget/DocTester", ["dijit","dojo","dojox","dojo/require!dojo/string,dijit/_Widget,dijit/_Templated,dojox/form/BusyButton,dojox/testing/DocTest"], function(dijit,dojo,dojox){ +dojo.provide("dojox.widget.DocTester"); + +dojo.require("dojo.string"); +dojo.require("dijit._Widget"); +dojo.require("dijit._Templated"); +dojo.require("dojox.form.BusyButton"); +dojo.require("dojox.testing.DocTest"); + +dojo.declare('dojox.widget.DocTester', + [dijit._Widget, dijit._Templated], + { + // summary: + // A widget to run DocTests inside an HTML page. + + templateString: dojo.cache("dojox.widget", "DocTester/DocTester.html", "
    \n\t
    \n\t\n\t\n\t\n\t\t0 tests,\n\t\t0 passed,\n\t\t0 failed\n\t\n
    "), + widgetsInTemplate: true, + + _fillContent:function(/*DomNode*/source){ + // summary: + // Overridden from _Templates.js, which actually just takes care of filling the containerNode. + var src = source.innerHTML; + this.doctests = new dojox.testing.DocTest(); + this.tests = this.doctests.getTestsFromString(this._unescapeHtml(src)); + var lineNumbers = dojo.map(this.tests, 'return item.line-1'); + var lines = src.split("\n"); + var actualResultHtml = '
    FAILED, actual result was:
    '; + var content = '
    ';
    +			for (var i=0; i0 && index!=-1){
    +					var evenOdd = index%2 ? "even" : "odd";
    +					content += actualResultHtml;
    + 					content += '
    ';
    +				}
    +				content += lines[i].replace(/^\s+/, "")+"\n";
    +			}
    +			content += actualResultHtml + '
    '; + this.containerNode.innerHTML = content; + }, + + postCreate:function(){ + this.inherited("postCreate", arguments); + dojo.connect(this.runButtonNode, "onClick", dojo.hitch(this, "runTests")); + dojo.connect(this.resetButtonNode, "onClick", dojo.hitch(this, "reset")); + this.numTestsNode.innerHTML = this.tests.length; + }, + + runTests:function(){ + var results = {ok:0, nok:0}; + for (var i=0; i"' + str = String(str).replace(/&/gm, "&").replace(/</gm, "<") + .replace(/>/gm, ">").replace(/"/gm, '"'); + // TODO Should become dojo.html.unentities() or so, when exists use instead + return str; // String + } + } +); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester/DocTester.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester/DocTester.css new file mode 100644 index 00000000..34fbaa57 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester/DocTester.css @@ -0,0 +1,30 @@ +.dojoxDocTester pre.testCase{ + border:0; + padding:0.3em; + padding-left:2em; +} +.dojoxDocTester pre.odd{ + background-color:#E3E3E3; +} +.dojoxDocTester pre.odd.resultOk{ + background-color:#C3FFC3; +} +.dojoxDocTester pre.odd.resultNok{ + background-color:#FFC3C3; +} +.dojoxDocTester pre.even{ + background-color:#F3F3F3; +} +.dojoxDocTester pre.even.resultOk{ + background-color:#DFFFDF; +} +.dojoxDocTester pre.even.resultNok{ + background-color:#FFCFCF; +} +.dojoxDocTester .actualResult{ + display:none; + font-weight:bold; +} +.dojoxDocTester .actualResult .result{ + color:red; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester/DocTester.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester/DocTester.html new file mode 100644 index 00000000..fbb7a6ba --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DocTester/DocTester.html @@ -0,0 +1,10 @@ +
    +
    + + + + 0 tests, + 0 passed, + 0 failed + +
    \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DynamicTooltip.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DynamicTooltip.js new file mode 100644 index 00000000..f6ff7ee3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DynamicTooltip.js @@ -0,0 +1,37 @@ +//>>built +define("dojox/widget/DynamicTooltip",["dijit","dojo","dojox","dojo/i18n!dijit/nls/loading","dojo/require!dijit/Tooltip"],function(_1,_2,_3){ +_2.provide("dojox.widget.DynamicTooltip"); +_2.experimental("dojox.widget.DynamicTooltip"); +_2.require("dijit.Tooltip"); +_2.requireLocalization("dijit","loading"); +_2.declare("dojox.widget.DynamicTooltip",_1.Tooltip,{hasLoaded:false,href:"",label:"",preventCache:false,postMixInProperties:function(){ +this.inherited(arguments); +this._setLoadingLabel(); +},_setLoadingLabel:function(){ +if(this.href){ +this.label=_2.i18n.getLocalization("dijit","loading",this.lang).loadingState; +} +},_setHrefAttr:function(_4){ +this.href=_4; +this.hasLoaded=false; +},loadContent:function(_5){ +if(!this.hasLoaded&&this.href){ +this._setLoadingLabel(); +this.hasLoaded=true; +_2.xhrGet({url:this.href,handleAs:"text",tooltipWidget:this,load:function(_6,_7){ +this.tooltipWidget.label=_6; +this.tooltipWidget.close(); +this.tooltipWidget.open(_5); +},preventCache:this.preventCache}); +} +},refresh:function(){ +this.hasLoaded=false; +},open:function(_8){ +_8=_8||(this._connectNodes&&this._connectNodes[0]); +if(!_8){ +return; +} +this.loadContent(_8); +this.inherited(arguments); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DynamicTooltip.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DynamicTooltip.js.uncompressed.js new file mode 100644 index 00000000..3cdf0f65 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/DynamicTooltip.js.uncompressed.js @@ -0,0 +1,111 @@ +// wrapped by build app +define("dojox/widget/DynamicTooltip", ["dijit","dojo","dojox","dojo/i18n!dijit/nls/loading","dojo/require!dijit/Tooltip"], function(dijit,dojo,dojox){ +dojo.provide("dojox.widget.DynamicTooltip"); +dojo.experimental("dojox.widget.DynamicTooltip"); + +dojo.require("dijit.Tooltip"); +dojo.requireLocalization("dijit", "loading"); + +dojo.declare("dojox.widget.DynamicTooltip", dijit.Tooltip, + { + // summary: + // Extension of dijit.Tooltip providing content set via XHR + // request via href param + + // hasLoaded: Boolean + // false if the contents are yet to be loaded from the HTTP request + hasLoaded: false, + + // href: String + // location from where to fetch the contents + href: "", + + // label: String + // contents to display in the tooltip. Initialized to a loading icon. + label: "", + + // preventCache: Boolean + // Cache content retrieved externally + preventCache: false, + + postMixInProperties: function(){ + this.inherited(arguments); + this._setLoadingLabel(); + }, + + _setLoadingLabel: function(){ + // summary: + // Changes the tooltip label / contents to loading message, only if + // there's an href param, otherwise acts as normal tooltip + + if(this.href){ + this.label = dojo.i18n.getLocalization("dijit", "loading", this.lang).loadingState; + } + }, + + // MOW: this is a new widget, do we really need a deprecated stub? + // setHref: function(/*String|Uri*/ href){ + // // summary: + // // Deprecated. Use set('href', ...) instead. + // dojo.deprecated("dojox.widget.DynamicTooltip.setHref() is deprecated. Use set('href', ...) instead.", "", "2.0"); + // return this.set("href", href); + // }, + + _setHrefAttr: function(/*String|Uri*/ href){ + // summary: + // Hook so attr("href", ...) works. + // description: + // resets so next show loads new href + // href: + // url to the content you want to show, must be within the same domain as your mainpage + + this.href = href; + this.hasLoaded = false; + }, + + loadContent: function(node){ + // summary: + // Download contents of href via XHR and display + // description: + // 1. checks if content already loaded + // 2. if not, sends XHR to download new data + if(!this.hasLoaded && this.href){ + this._setLoadingLabel(); + this.hasLoaded = true; + + dojo.xhrGet({ + url: this.href, + handleAs: "text", + tooltipWidget: this, + load: function(response, ioArgs){ + this.tooltipWidget.label = response; + this.tooltipWidget.close(); + this.tooltipWidget.open(node); + }, + preventCache: this.preventCache + }); + } + }, + + refresh: function(){ + // summary: + // Allows re-download of contents of href and display + // Useful with preventCache = true + + this.hasLoaded = false; + }, + + open: function(/*DomNode*/ target){ + // summary: + // Display the tooltip; usually not called directly. + + target = target || (this._connectNodes && this._connectNodes[0]); + if(!target){ return; } + + this.loadContent(target); + this.inherited(arguments); + } + } +); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FeedPortlet.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FeedPortlet.js new file mode 100644 index 00000000..eb386e8b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FeedPortlet.js @@ -0,0 +1,225 @@ +//>>built +define("dojox/widget/FeedPortlet",["dijit","dojo","dojox","dojo/require!dojox/widget/Portlet,dijit/Tooltip,dijit/form/TextBox,dijit/form/Button,dojox/data/GoogleFeedStore"],function(_1,_2,_3){ +_2.provide("dojox.widget.FeedPortlet"); +_2.require("dojox.widget.Portlet"); +_2.require("dijit.Tooltip"); +_2.require("dijit.form.TextBox"); +_2.require("dijit.form.Button"); +_2.require("dojox.data.GoogleFeedStore"); +_2.declare("dojox.widget.FeedPortlet",_3.widget.Portlet,{local:false,maxResults:5,url:"",openNew:true,showFeedTitle:true,postCreate:function(){ +this.inherited(arguments); +if(this.local&&!_3.data.AtomReadStore){ +throw Error(this.declaredClass+": To use local feeds, you must include dojox.data.AtomReadStore on the page."); +} +},onFeedError:function(){ +this.containerNode.innerHTML="Error accessing the feed."; +},addChild:function(_4){ +this.inherited(arguments); +var _5=_4.attr("feedPortletUrl"); +if(_5){ +this.set("url",_5); +} +},_getTitle:function(_6){ +var t=this.store.getValue(_6,"title"); +return this.local?t.text:t; +},_getLink:function(_7){ +var l=this.store.getValue(_7,"link"); +return this.local?l.href:l; +},_getContent:function(_8){ +var c=this.store.getValue(_8,"summary"); +if(!c){ +return null; +} +if(this.local){ +c=c.text; +} +c=c.split("").join("-->"); +c=c.split("").join("-->"); +return c; +},_setUrlAttr:function(_9){ +this.url=_9; +if(this._started){ +this.load(); +} +},startup:function(){ +if(this.started||this._started){ +return; +} +this.inherited(arguments); +if(!this.url||this.url==""){ +throw new Error(this.id+": A URL must be specified for the feed portlet"); +} +if(this.url&&this.url!=""){ +this.load(); +} +},load:function(){ +if(this._resultList){ +_2.destroy(this._resultList); +} +var _a,_b; +if(this.local){ +_a=new _3.data.AtomReadStore({url:this.url}); +_b={}; +}else{ +_a=new _3.data.GoogleFeedStore(); +_b={url:this.url}; +} +var _c={query:_b,count:this.maxResults,onComplete:_2.hitch(this,function(_d){ +if(this.showFeedTitle&&_a.getFeedValue){ +var _e=this.store.getFeedValue("title"); +if(_e){ +this.set("title",_e.text?_e.text:_e); +} +} +this.generateResults(_d); +}),onError:_2.hitch(this,"onFeedError")}; +this.store=_a; +_a.fetch(_c); +},generateResults:function(_f){ +var _10=this.store; +var _11; +var ul=(this._resultList=_2.create("ul",{"class":"dojoxFeedPortletList"},this.containerNode)); +_2.forEach(_f,_2.hitch(this,function(_12){ +var li=_2.create("li",{innerHTML:""+this._getTitle(_12)+""},ul); +_2.connect(li,"onmouseover",_2.hitch(this,function(evt){ +if(_11){ +clearTimeout(_11); +} +_11=setTimeout(_2.hitch(this,function(){ +_11=null; +var _13=this._getContent(_12); +if(!_13){ +return; +} +var _14="
    "+_13+"
    "; +_2.query("li",ul).forEach(function(_15){ +if(_15!=evt.target){ +_1.hideTooltip(_15); +} +}); +_1.showTooltip(_14,li.firstChild,!this.isLeftToRight()); +}),500); +})); +_2.connect(li,"onmouseout",function(){ +if(_11){ +clearTimeout(_11); +_11=null; +} +_1.hideTooltip(li.firstChild); +}); +})); +this.resize(); +}}); +_2.declare("dojox.widget.ExpandableFeedPortlet",_3.widget.FeedPortlet,{onlyOpenOne:false,generateResults:function(_16){ +var _17=this.store; +var _18="dojoxPortletToggleIcon"; +var _19="dojoxPortletItemCollapsed"; +var _1a="dojoxPortletItemOpen"; +var _1b; +var ul=(this._resultList=_2.create("ul",{"class":"dojoxFeedPortletExpandableList"},this.containerNode)); +_2.forEach(_16,_2.hitch(this,_2.hitch(this,function(_1c){ +var li=_2.create("li",{"class":_19},ul); +var _1d=_2.create("div",{style:"width: 100%;"},li); +var _1e=_2.create("div",{"class":"dojoxPortletItemSummary",innerHTML:this._getContent(_1c)},li); +_2.create("span",{"class":_18,innerHTML:""},_1d); +var a=_2.create("a",{href:this._getLink(_1c),innerHTML:this._getTitle(_1c)},_1d); +if(this.openNew){ +_2.attr(a,"target","_blank"); +} +}))); +_2.connect(ul,"onclick",_2.hitch(this,function(evt){ +if(_2.hasClass(evt.target,_18)||_2.hasClass(evt.target.parentNode,_18)){ +_2.stopEvent(evt); +var li=evt.target.parentNode; +while(li.tagName!="LI"){ +li=li.parentNode; +} +if(this.onlyOpenOne){ +_2.query("li",ul).filter(function(_1f){ +return _1f!=li; +}).removeClass(_1a).addClass(_19); +} +var _20=_2.hasClass(li,_1a); +_2.toggleClass(li,_1a,!_20); +_2.toggleClass(li,_19,_20); +} +})); +}}); +_2.declare("dojox.widget.PortletFeedSettings",_3.widget.PortletSettings,{"class":"dojoxPortletFeedSettings",urls:null,selectedIndex:0,buildRendering:function(){ +var s; +if(this.urls&&this.urls.length>0){ +s=_2.create("select"); +if(this.srcNodeRef){ +_2.place(s,this.srcNodeRef,"before"); +_2.destroy(this.srcNodeRef); +} +this.srcNodeRef=s; +_2.forEach(this.urls,function(url){ +_2.create("option",{value:url.url||url,innerHTML:url.label||url},s); +}); +} +if(this.srcNodeRef.tagName=="SELECT"){ +this.text=this.srcNodeRef; +var div=_2.create("div",{},this.srcNodeRef,"before"); +div.appendChild(this.text); +this.srcNodeRef=div; +_2.query("option",this.text).filter("return !item.value;").forEach("item.value = item.innerHTML"); +if(!this.text.value){ +if(this.content&&this.text.options.length==0){ +this.text.appendChild(this.content); +} +_2.attr(s||this.text,"value",this.text.options[this.selectedIndex].value); +} +} +this.inherited(arguments); +},_setContentAttr:function(){ +},postCreate:function(){ +if(!this.text){ +var _21=this.text=new _1.form.TextBox({}); +_2.create("span",{innerHTML:"Choose Url: "},this.domNode); +this.addChild(_21); +} +this.addChild(new _1.form.Button({label:"Load",onClick:_2.hitch(this,function(){ +this.portlet.attr("url",(this.text.tagName=="SELECT")?this.text.value:this.text.attr("value")); +if(this.text.tagName=="SELECT"){ +_2.some(this.text.options,_2.hitch(this,function(opt,idx){ +if(opt.selected){ +this.set("selectedIndex",idx); +return true; +} +return false; +})); +} +this.toggle(); +})})); +this.addChild(new _1.form.Button({label:"Cancel",onClick:_2.hitch(this,"toggle")})); +this.inherited(arguments); +},startup:function(){ +if(this._started){ +return; +} +this.inherited(arguments); +if(!this.portlet){ +throw Error(this.declaredClass+": A PortletFeedSettings widget cannot exist without a Portlet."); +} +if(this.text.tagName=="SELECT"){ +_2.forEach(this.text.options,_2.hitch(this,function(opt,_22){ +_2.attr(opt,"selected",_22==this.selectedIndex); +})); +} +var url=this.portlet.attr("url"); +if(url){ +if(this.text.tagName=="SELECT"){ +if(!this.urls&&_2.query("option[value='"+url+"']",this.text).length<1){ +_2.place(_2.create("option",{value:url,innerHTML:url,selected:"true"}),this.text,"first"); +} +}else{ +this.text.attr("value",url); +} +}else{ +this.portlet.attr("url",this.get("feedPortletUrl")); +} +},_getFeedPortletUrlAttr:function(){ +return this.text.value; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FeedPortlet.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FeedPortlet.js.uncompressed.js new file mode 100644 index 00000000..be593fc2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FeedPortlet.js.uncompressed.js @@ -0,0 +1,444 @@ +// wrapped by build app +define("dojox/widget/FeedPortlet", ["dijit","dojo","dojox","dojo/require!dojox/widget/Portlet,dijit/Tooltip,dijit/form/TextBox,dijit/form/Button,dojox/data/GoogleFeedStore"], function(dijit,dojo,dojox){ +dojo.provide("dojox.widget.FeedPortlet"); +dojo.require("dojox.widget.Portlet"); +dojo.require("dijit.Tooltip"); +dojo.require("dijit.form.TextBox"); +dojo.require("dijit.form.Button"); +dojo.require("dojox.data.GoogleFeedStore"); + +dojo.declare("dojox.widget.FeedPortlet", dojox.widget.Portlet, { + // summary: + // A Portlet that loads a XML feed. + // description: + // The feed is displayed as + // an unordered list of links. When a link is hovered over + // by the mouse, it displays a summary in a tooltip. + + // local: Boolean + // Specifies whether the feed is to be loaded from the same domain as the + // page, or a remote domain. If local is true, then the feed must be an + // Atom feed. If it is false, it can be an Atom or RSS feed. + local: false, + + // maxResults: Number + // The number of results to display from the feed. + maxResults: 5, + + // url: String + // The URL of the feed to load. If this is different to the domain + // of the HTML page, local should be set to false. + url: "", + + // openNew: Boolean + // If true, when a link is clicked it will open in a new window. + // If false, it will not. + openNew: true, + + // useFeedTitle: Boolean + // If true, the title of the loaded feed is displayed in the title bar of the portlet. + // If false, the title remains unchanged. + showFeedTitle: true, + + postCreate: function(){ + this.inherited(arguments); + if(this.local && !dojox.data.AtomReadStore){ + throw Error(this.declaredClass + ": To use local feeds, you must include dojox.data.AtomReadStore on the page."); + } + }, + + onFeedError: function(){ + // summary: + // Called when a feed fails to load successfully. + this.containerNode.innerHTML = "Error accessing the feed." + }, + + addChild: function(child){ + this.inherited(arguments); + var url = child.attr("feedPortletUrl"); + if(url){ + this.set("url", url); + } + }, + + _getTitle: function(item){ + // summary: + // Gets the title of a feed item. + var t = this.store.getValue(item, "title"); + return this.local ? t.text : t; + }, + + _getLink: function(item){ + // summary: + // Gets the href link of a feed item. + var l = this.store.getValue(item, "link"); + return this.local ? l.href : l; + }, + + _getContent: function(item){ + // summary: + // Gets the summary of a feed item. + var c = this.store.getValue(item, "summary"); + if(!c){ + return null; + } + if(this.local){ + c = c.text; + } + // Filter out any sneaky scripts in the code + c = c.split("").join("-->"); + c = c.split("").join("-->"); + return c; + + }, + + _setUrlAttr: function(url){ + // summary: + // Sets the URL to load. + this.url = url; + if(this._started){ + this.load(); + } + }, + + startup: function(){ + // summary: + // Loads the widget. + if(this.started || this._started){return;} + + this.inherited(arguments); + + if(!this.url || this.url == ""){ + throw new Error(this.id + ": A URL must be specified for the feed portlet"); + } + if(this.url && this.url != ""){ + this.load(); + } + }, + + load: function(){ + // summary: + // Loads the feed. + if(this._resultList){ + dojo.destroy(this._resultList); + } + var store, query; + + // If the feed is on the same domain, use the AtomReadStore, + // as we cannot be guaranteed that it will be available to + // Google services. + if(this.local){ + store = new dojox.data.AtomReadStore({ + url: this.url + }); + query = {}; + + }else{ + store = new dojox.data.GoogleFeedStore(); + query = {url: this.url}; + } + var request = { + query: query, + count: this.maxResults, + onComplete: dojo.hitch(this, function(items){ + if (this.showFeedTitle && store.getFeedValue) { + var title = this.store.getFeedValue("title"); + if(title){ + this.set("title", title.text ? title.text : title); + } + } + this.generateResults(items); + }), + onError: dojo.hitch(this, "onFeedError") + }; + + this.store = store; + store.fetch(request); + }, + + generateResults: function (items){ + // summary: + // Generates a list of hyperlinks and displays a tooltip + // containing a summary when the mouse hovers over them. + var store = this.store; + var timer; + var ul = (this._resultList = + dojo.create("ul", {"class" : "dojoxFeedPortletList"}, this.containerNode)); + + dojo.forEach(items, dojo.hitch(this, function(item){ + var li = dojo.create("li", { + innerHTML: '' + + this._getTitle(item) + '' + },ul); + + dojo.connect(li, "onmouseover", dojo.hitch(this, function(evt){ + if(timer){ + clearTimeout(timer); + } + + // Show the tooltip after the mouse has been hovering + // for a short time. + timer = setTimeout(dojo.hitch(this, function(){ + timer = null; + var summary = this._getContent(item); + if(!summary){return;} + var content = '
    ' + + summary + '
    ' + + dojo.query("li", ul).forEach(function(item){ + if(item != evt.target){ + dijit.hideTooltip(item); + } + }); + + // Hover the tooltip over the anchor tag + dijit.showTooltip(content, li.firstChild, !this.isLeftToRight()); + }), 500); + + + })); + + // Hide the tooltip when the mouse leaves a list item. + dojo.connect(li, "onmouseout", function(){ + if(timer){ + clearTimeout(timer); + timer = null; + } + dijit.hideTooltip(li.firstChild); + }); + })); + + this.resize(); + } +}); + +dojo.declare("dojox.widget.ExpandableFeedPortlet", dojox.widget.FeedPortlet, { + // summary: + // A FeedPortlet that uses an list of expandable links to display + // a feed. An icon is placed to the left of each item + // which, when clicked, toggles the visible state + // of the item summary. + + // onlyOpenOne: Boolean + // If true, only a single item can be expanded at any given time. + onlyOpenOne: false, + + generateResults: function(items){ + // summary: + // Generates a list of items, and places an icon beside them that + // can be used to show or hide a summary of that item. + + var store = this.store; + var iconCls = "dojoxPortletToggleIcon"; + var collapsedCls = "dojoxPortletItemCollapsed"; + var expandedCls = "dojoxPortletItemOpen"; + + var timer; + var ul = (this._resultList = dojo.create("ul", { + "class": "dojoxFeedPortletExpandableList" + }, this.containerNode)); + + // Create the LI elements. Each LI has two DIV elements, the + // top DIV contains the toggle icon and title, and the bottom + // div contains the extended summary. + dojo.forEach(items, dojo.hitch(this, dojo.hitch(this, function(item){ + var li = dojo.create("li", {"class": collapsedCls}, ul); + var upper = dojo.create("div", {style: "width: 100%;"}, li); + var lower = dojo.create("div", {"class": "dojoxPortletItemSummary", innerHTML: this._getContent(item)}, li); + dojo.create("span", { + "class": iconCls, + innerHTML: ""}, upper); + var a = dojo.create("a", {href: this._getLink(item), innerHTML: this._getTitle(item) }, upper); + + if(this.openNew){ + dojo.attr(a, "target", "_blank"); + } + }))); + + // Catch all clicks on the list. If a toggle icon is clicked, + // toggle the visible state of the summary DIV. + dojo.connect(ul, "onclick", dojo.hitch(this, function(evt){ + if(dojo.hasClass(evt.target, iconCls) || dojo.hasClass(evt.target.parentNode, iconCls)){ + dojo.stopEvent(evt); + var li = evt.target.parentNode; + while(li.tagName != "LI"){ + li = li.parentNode; + } + if(this.onlyOpenOne){ + dojo.query("li", ul).filter(function(item){ + return item != li; + }).removeClass(expandedCls).addClass(collapsedCls); + } + var isExpanded = dojo.hasClass(li, expandedCls); + dojo.toggleClass(li, expandedCls, !isExpanded); + dojo.toggleClass(li, collapsedCls, isExpanded); + } + })); + } +}); + + +dojo.declare("dojox.widget.PortletFeedSettings", + dojox.widget.PortletSettings, { + + // summary: + // A Settings widget designed to be used with a dojox.widget.FeedPortlet + // description: + // It provides form items that the user can use to change the URL + // for a feed to load into the FeedPortlet. + // There are two forms that it can take. + // + // The first is to display a text field, with Load and Cancel buttons, + // which is prepopulated with the enclosing FeedPortlet's URL. + // If a ` + // | + // | + // | + + "class" : "dojoxPortletFeedSettings", + + // urls: Array + // An array of JSON object specifying URLs to display in the + // PortletFeedSettings object. Each object contains a 'url' and 'label' + // attribute, e.g. + // [{url:'http:google.com', label:'Google'}, {url:'http://dojotoolkit.org', label: 'Dojo'}] + urls: null, + + // selectedIndex: Number + // The selected URL. Defaults to zero. + selectedIndex: 0, + + buildRendering: function(){ + // If JSON URLs have been specified, create a SELECT DOM node, + // and insert the required OPTION elements. + var s; + if(this.urls && this.urls.length > 0){ + console.log(this.id + " -> creating select with urls ", this.urls) + s = dojo.create("select"); + if(this.srcNodeRef){ + dojo.place(s, this.srcNodeRef, "before"); + dojo.destroy(this.srcNodeRef); + } + this.srcNodeRef = s; + dojo.forEach(this.urls, function(url){ + dojo.create("option", {value: url.url || url, innerHTML: url.label || url}, s); + }); + } + + // If the srcNodeRef is a SELECT node, then replace it with a DIV, and insert + // the SELECT node into that div. + if(this.srcNodeRef.tagName == "SELECT"){ + this.text = this.srcNodeRef; + var div = dojo.create("div", {}, this.srcNodeRef, "before"); + div.appendChild(this.text); + this.srcNodeRef = div; + dojo.query("option", this.text).filter("return !item.value;").forEach("item.value = item.innerHTML"); + if(!this.text.value){ + if(this.content && this.text.options.length == 0){ + this.text.appendChild(this.content); + } + dojo.attr(s || this.text, "value", this.text.options[this.selectedIndex].value); + } + } + this.inherited(arguments); + }, + + _setContentAttr: function(){ + + }, + + postCreate: function(){ + console.log(this.id + " -> postCreate"); + if(!this.text){ + // If a select node is not being used, create a new TextBox to + // edit the URL. + var text = this.text = new dijit.form.TextBox({}); + dojo.create("span", { + innerHTML: "Choose Url: " + }, this.domNode); + this.addChild(text); + } + + // Add a LOAD button + this.addChild(new dijit.form.Button({ + label: "Load", + onClick: dojo.hitch(this, function(){ + // Set the URL of the containing Portlet with the selected URL. + this.portlet.attr("url", + (this.text.tagName == "SELECT") ? this.text.value : this.text.attr('value')); + if(this.text.tagName == "SELECT"){ + // Set the selected index on the Select node. + dojo.some(this.text.options, dojo.hitch(this, function(opt, idx){ + if(opt.selected){ + this.set("selectedIndex", idx); + return true; + } + return false; + })); + } + // Hide the widget. + this.toggle(); + }) + })); + + // Add a CANCEL button, which hides this widget + this.addChild(new dijit.form.Button({ + label: "Cancel", + onClick: dojo.hitch(this, "toggle") + })); + this.inherited(arguments); + }, + + startup: function(){ + // summary: + // Sets the portlet associated with this PortletSettings object. + if(this._started){return;} + console.log(this.id + " -> startup"); + this.inherited(arguments); + + if(!this.portlet){ + throw Error(this.declaredClass + ": A PortletFeedSettings widget cannot exist without a Portlet."); + } + if(this.text.tagName == "SELECT"){ + // Set the initial selected option. + dojo.forEach(this.text.options, dojo.hitch(this, function(opt, index){ + dojo.attr(opt, "selected", index == this.selectedIndex); + })); + } + var url = this.portlet.attr("url"); + if(url){ + // If a SELECT node is used to choose a URL, ensure that the Portlet's URL + // is one of the options. + if(this.text.tagName == "SELECT"){ + if(!this.urls && dojo.query("option[value='" + url + "']", this.text).length < 1){ + dojo.place(dojo.create("option", { + value: url, + innerHTML: url, + selected: "true" + }), this.text, "first"); + } + }else{ + this.text.attr("value", url); + } + }else{ + this.portlet.attr("url", this.get("feedPortletUrl")); + } + }, + + _getFeedPortletUrlAttr: function(){ + return this.text.value; + } +}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker.js new file mode 100644 index 00000000..9ccb96ad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker.js @@ -0,0 +1,153 @@ +//>>built +define("dojox/widget/FilePicker",["dijit","dojo","dojox","dojo/i18n!dojox/widget/nls/FilePicker","dojo/require!dojox/widget/RollingList,dojo/i18n"],function(_1,_2,_3){ +_2.provide("dojox.widget.FilePicker"); +_2.require("dojox.widget.RollingList"); +_2.require("dojo.i18n"); +_2.requireLocalization("dojox.widget","FilePicker"); +_2.declare("dojox.widget._FileInfoPane",[_3.widget._RollingListPane],{templateString:"",templateString:_2.cache("dojox.widget","FilePicker/_FileInfoPane.html","
    \n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t
    ${_messages.name}
    ${_messages.path}
    ${_messages.size}
    \n\t
    \n
    "),postMixInProperties:function(){ +this._messages=_2.i18n.getLocalization("dojox.widget","FilePicker",this.lang); +this.inherited(arguments); +},onItems:function(){ +var _4=this.store,_5=this.items[0]; +if(!_5){ +this._onError("Load",new Error("No item defined")); +}else{ +this.nameNode.innerHTML=_4.getLabel(_5); +this.pathNode.innerHTML=_4.getIdentity(_5); +this.sizeNode.innerHTML=_4.getValue(_5,"size"); +this.parentWidget.scrollIntoView(this); +this.inherited(arguments); +} +}}); +_2.declare("dojox.widget.FilePicker",_3.widget.RollingList,{className:"dojoxFilePicker",pathSeparator:"",topDir:"",parentAttr:"parentDir",pathAttr:"path",preloadItems:50,selectDirectories:true,selectFiles:true,_itemsMatch:function(_6,_7){ +if(!_6&&!_7){ +return true; +}else{ +if(!_6||!_7){ +return false; +}else{ +if(_6==_7){ +return true; +}else{ +if(this._isIdentity){ +var _8=[this.store.getIdentity(_6),this.store.getIdentity(_7)]; +_2.forEach(_8,function(i,_9){ +if(i.lastIndexOf(this.pathSeparator)==(i.length-1)){ +_8[_9]=i.substring(0,i.length-1); +}else{ +} +},this); +return (_8[0]==_8[1]); +} +} +} +} +return false; +},startup:function(){ +if(this._started){ +return; +} +this.inherited(arguments); +var _a,_b=this.getChildren()[0]; +var _c=_2.hitch(this,function(){ +if(_a){ +this.disconnect(_a); +} +delete _a; +var _d=_b.items[0]; +if(_d){ +var _e=this.store; +var _f=_e.getValue(_d,this.parentAttr); +var _10=_e.getValue(_d,this.pathAttr); +this.pathSeparator=this.pathSeparator||_e.pathSeparator; +if(!this.pathSeparator){ +this.pathSeparator=_10.substring(_f.length,_f.length+1); +} +if(!this.topDir){ +this.topDir=_f; +if(this.topDir.lastIndexOf(this.pathSeparator)!=(this.topDir.length-1)){ +this.topDir+=this.pathSeparator; +} +} +} +}); +if(!this.pathSeparator||!this.topDir){ +if(!_b.items){ +_a=this.connect(_b,"onItems",_c); +}else{ +_c(); +} +} +},getChildItems:function(_11){ +var ret=this.inherited(arguments); +if(!ret&&this.store.getValue(_11,"directory")){ +ret=[]; +} +return ret; +},getMenuItemForItem:function(_12,_13,_14){ +var _15={iconClass:"dojoxDirectoryItemIcon"}; +if(!this.store.getValue(_12,"directory")){ +_15.iconClass="dojoxFileItemIcon"; +var l=this.store.getLabel(_12),idx=l.lastIndexOf("."); +if(idx>=0){ +_15.iconClass+=" dojoxFileItemIcon_"+l.substring(idx+1); +} +if(!this.selectFiles){ +_15.disabled=true; +} +} +var ret=new _1.MenuItem(_15); +return ret; +},getPaneForItem:function(_16,_17,_18){ +var ret=null; +if(!_16||(this.store.isItem(_16)&&this.store.getValue(_16,"directory"))){ +ret=new _3.widget._RollingListGroupPane({}); +}else{ +if(this.store.isItem(_16)&&!this.store.getValue(_16,"directory")){ +ret=new _3.widget._FileInfoPane({}); +} +} +return ret; +},_setPathValueAttr:function(_19,_1a,_1b){ +if(!_19){ +this.set("value",null); +return; +} +if(_19.lastIndexOf(this.pathSeparator)==(_19.length-1)){ +_19=_19.substring(0,_19.length-1); +} +this.store.fetchItemByIdentity({identity:_19,onItem:function(v){ +if(_1a){ +this._lastExecutedValue=v; +} +this.set("value",v); +if(_1b){ +_1b(); +} +},scope:this}); +},_getPathValueAttr:function(val){ +if(!val){ +val=this.value; +} +if(val&&this.store.isItem(val)){ +return this.store.getValue(val,this.pathAttr); +}else{ +return ""; +} +},_setValue:function(_1c){ +delete this._setInProgress; +var _1d=this.store; +if(_1c&&_1d.isItem(_1c)){ +var _1e=this.store.getValue(_1c,"directory"); +if((_1e&&!this.selectDirectories)||(!_1e&&!this.selectFiles)){ +return; +} +}else{ +_1c=null; +} +if(!this._itemsMatch(this.value,_1c)){ +this.value=_1c; +this._onChange(_1c); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..fc6fb004 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker.js.uncompressed.js @@ -0,0 +1,233 @@ +// wrapped by build app +define("dojox/widget/FilePicker", ["dijit","dojo","dojox","dojo/i18n!dojox/widget/nls/FilePicker","dojo/require!dojox/widget/RollingList,dojo/i18n"], function(dijit,dojo,dojox){ +dojo.provide("dojox.widget.FilePicker"); + +dojo.require("dojox.widget.RollingList"); + +dojo.require("dojo.i18n"); +dojo.requireLocalization("dojox.widget", "FilePicker"); + +dojo.declare("dojox.widget._FileInfoPane", + [dojox.widget._RollingListPane], { + // summary: + // a pane to display the information for the currently-selected + // file + + // templateString: string + // delete our template string + templateString: "", + + // templateString: String + // The template to be used to construct the widget. + templateString: dojo.cache("dojox.widget", "FilePicker/_FileInfoPane.html", "
    \n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t
    ${_messages.name}
    ${_messages.path}
    ${_messages.size}
    \n\t
    \n
    "), + + postMixInProperties: function(){ + this._messages = dojo.i18n.getLocalization("dojox.widget", "FilePicker", this.lang); + this.inherited(arguments); + }, + + onItems: function(){ + // summary: + // called after a fetch or load - at this point, this.items should be + // set and loaded. + var store = this.store, item = this.items[0]; + if(!item){ + this._onError("Load", new Error("No item defined")); + }else{ + this.nameNode.innerHTML = store.getLabel(item); + this.pathNode.innerHTML = store.getIdentity(item); + this.sizeNode.innerHTML = store.getValue(item, "size"); + this.parentWidget.scrollIntoView(this); + this.inherited(arguments); + } + } +}); + +dojo.declare("dojox.widget.FilePicker", dojox.widget.RollingList, { + // summary: + // a specialized version of RollingList that handles file information + // in a store + + className: "dojoxFilePicker", + + // pathSeparator: String + // Our file separator - it will be guessed if not set + pathSeparator: "", + + // topDir: String + // The top directory string - it will be guessed if not set + topDir: "", + + // parentAttr: String + // the attribute to read for finding our parent directory + parentAttr: "parentDir", + + // pathAttr: String + // the attribute to read for getting the full path of our file + pathAttr: "path", + + // preloadItems: Boolean|Int + // Set this to a sane number - since we expect to mostly be using the + // dojox.data.FileStore - which doesn't like loading lots of items + // all at once. + preloadItems: 50, + + // selectDirectories: Boolean + // whether or not we allow selection of directories - that is, whether or + // our value can be set to a directory. + selectDirectories: true, + + // selectFiles: Boolean + // whether or not we allow selection of files - that is, we will disable + // the file entries. + selectFiles: true, + + _itemsMatch: function(/*item*/ item1, /*item*/ item2){ + // Summary: + // Returns whether or not the two items match - checks ID if + // they aren't the exact same object - ignoring trailing slashes + if(!item1 && !item2){ + return true; + }else if(!item1 || !item2){ + return false; + }else if(item1 == item2){ + return true; + }else if (this._isIdentity){ + var iArr = [ this.store.getIdentity(item1), this.store.getIdentity(item2) ]; + dojo.forEach(iArr, function(i, idx){ + if(i.lastIndexOf(this.pathSeparator) == (i.length - 1)){ + iArr[idx] = i.substring(0, i.length - 1); + }else{ + } + }, this); + return (iArr[0] == iArr[1]); + } + return false; + }, + + startup: function(){ + if(this._started){ return; } + this.inherited(arguments); + // Figure out our file separator if we don't have it yet + var conn, child = this.getChildren()[0]; + var setSeparator = dojo.hitch(this, function(){ + if(conn){ + this.disconnect(conn); + } + delete conn; + var item = child.items[0]; + if(item){ + var store = this.store; + var parent = store.getValue(item, this.parentAttr); + var path = store.getValue(item, this.pathAttr); + this.pathSeparator = this.pathSeparator || store.pathSeparator; + if(!this.pathSeparator){ + this.pathSeparator = path.substring(parent.length, parent.length + 1); + } + if(!this.topDir){ + this.topDir = parent; + if(this.topDir.lastIndexOf(this.pathSeparator) != (this.topDir.length - 1)){ + this.topDir += this.pathSeparator; + } + } + } + }); + if(!this.pathSeparator || !this.topDir){ + if(!child.items){ + conn = this.connect(child, "onItems", setSeparator); + }else{ + setSeparator(); + } + } + }, + + getChildItems: function(item){ + var ret = this.inherited(arguments); + if(!ret && this.store.getValue(item, "directory")){ + // It's an empty directory - so pass through an empty array + ret = []; + } + return ret; + }, + + getMenuItemForItem: function(/*item*/ item, /* dijit/_Contained */ parentPane, /* item[]? */ children){ + var menuOptions = {iconClass: "dojoxDirectoryItemIcon"}; + if(!this.store.getValue(item, "directory")){ + menuOptions.iconClass = "dojoxFileItemIcon"; + var l = this.store.getLabel(item), idx = l.lastIndexOf("."); + if(idx >= 0){ + menuOptions.iconClass += " dojoxFileItemIcon_" + l.substring(idx + 1); + } + if(!this.selectFiles){ + menuOptions.disabled = true; + } + } + var ret = new dijit.MenuItem(menuOptions); + return ret; + }, + + getPaneForItem: function(/*item*/ item, /* dijit/_Contained */ parentPane, /* item[]? */ children){ + var ret = null; + if(!item || (this.store.isItem(item) && this.store.getValue(item, "directory"))){ + ret = new dojox.widget._RollingListGroupPane({}); + }else if(this.store.isItem(item) && !this.store.getValue(item, "directory")){ + ret = new dojox.widget._FileInfoPane({}); + } + return ret; + }, + + _setPathValueAttr: function(/*String*/ path, /*Boolean?*/ resetLastExec, /*function?*/ onSet){ + // summary: + // sets the value of this widget based off the given path + if(!path){ + this.set("value", null); + return; + } + if(path.lastIndexOf(this.pathSeparator) == (path.length - 1)){ + path = path.substring(0, path.length - 1); + } + this.store.fetchItemByIdentity({identity: path, + onItem: function(v){ + if(resetLastExec){ + this._lastExecutedValue = v; + } + this.set("value", v); + if(onSet){ onSet(); } + }, + scope: this}); + }, + + _getPathValueAttr: function(/*item?*/val){ + // summary: + // returns the path value of the given value (or current value + // if not passed a value) + if(!val){ + val = this.value; + } + if(val && this.store.isItem(val)){ + return this.store.getValue(val, this.pathAttr); + }else{ + return ""; + } + }, + + _setValue: function(/* item */ value){ + // summary: + // internally sets the value and fires onchange + delete this._setInProgress; + var store = this.store; + if(value && store.isItem(value)){ + var isDirectory = this.store.getValue(value, "directory"); + if((isDirectory && !this.selectDirectories) || + (!isDirectory && !this.selectFiles)){ return; } + }else{ + value = null; + } + if(!this._itemsMatch(this.value, value)){ + this.value = value; + this._onChange(value); + } + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/FilePicker.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/FilePicker.css new file mode 100644 index 00000000..d57847a8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/FilePicker.css @@ -0,0 +1,207 @@ +.dojoxRollingList { + border: 1px solid #000; + height: 20em; + background-color: #FFF; + position: relative; +} +.dijitPopup .dojoxRollingList { + position: static; +} +.dojoxRollingListContainer { + overflow: scroll; + overflow-y: hidden; + overflow-x: scroll; + white-space: nowrap; +} +.dojoxRollingListButtons { + position: absolute; + right: 5px; + padding: 5px 0px; +} +.dojoxRollingListButtonsHidden .dojoxRollingListButtons { + display: none; +} +.dojoxRollingListPane { + overflow: scroll; + overflow-x: hidden; + overflow-y: scroll; + display:-moz-inline-box; + display:inline-block; + #zoom: 1; + #display:inline; + border:0; + padding:0; + vertical-align:middle; + #vertical-align: auto; +} +.dojoxRollingListPane .dijitMenuItem td { + width: 1px; +} +.dojoxRollingListPane .dijitMenuItem td.dijitMenuItemLabel { + width: auto; +} +.dojoxRollingListPane .dijitMenuItemLabel, +.dojoxRollingListPane .dijitMenuItemIcon { + position: static !important; +} +.dj_webkit .dojoxRollingListPane, +.dj_ie .dojoxRollingListPane { + padding-right: 15px; +} +.dojoxRollingListPane .dijitMenu { + border: none !important; +} +.dojoxRollingListItem { + cursor: default; +} +.tundra .dojoxRollingList { + border-color: #b3b3b3; +} +.tundra .dijitPopup .dojoxRollingList { + border-color: #406b9b; +} +.tundra .dojoxRollingListPane { + background-color: #f7f7f7; +} +.tundra .dojoxRollingListPane .dojoxRollingListItemHover, +.tundra .dojoxRollingListPane .dojoxRollingListItemFocus { + background-color: #e3e3e3; +} +.tundra .dojoxRollingListPane .dojoxRollingListItemSelected { + color: #fff; + background-color: #999; + font-weight: bold; +} +.tundra .dojoxRollingListPaneCurrentSelected .dojoxRollingListItemSelected { + background-color: #3559ac; +} +.tundra .dojoxRollingListPane .dojoxRollingListItemHoverSelected, +.tundra .dojoxRollingListPane .dojoxRollingListItemFocusSelected { + background-color: #9aacd6; +} +.tundra .dojoxRollingListItem { + font-family: inherit; +} +.soria .dojoxRollingList { + border-color: #8ba0bd; +} +.soria .dijitPopup .dojoxRollingList { + border-color: #406b9b; +} +.soria .dojoxRollingListPane { + background-color: #fff; +} +.soria .dojoxRollingListPane .dojoxRollingListItemHover, +.soria .dojoxRollingListPane .dojoxRollingListItemFocus { + background-color: #e3e3e3; +} +.soria .dojoxRollingListPane .dojoxRollingListItemSelected { + color: #243C5F; + background-color: #ccc; + font-weight: bold; +} +.soria .dojoxRollingListPaneCurrentSelected .dojoxRollingListItemSelected { + background-color: #d9e6f9; +} +.soria .dojoxRollingListPane .dojoxRollingListItemHoverSelected, +.soria .dojoxRollingListPane .dojoxRollingListItemFocusSelected { + background-color: #ecf3fc; +} +.soria .dojoxRollingListItem { + font-family: inherit; +} +.nihilo .dojoxRollingList { + border-color: #d3d3d3; +} +.nihilo .dijitPopup .dojoxRollingList { + border-color: #b3b3b3; +} +.nihilo .dojoxRollingListPane { + background-color: #fff; +} +.nihilo .dojoxRollingListPane .dojoxRollingListItemHover, +.nihilo .dojoxRollingListPane .dojoxRollingListItemFocus { + background-color: #e3e3e3; +} +.nihilo .dojoxRollingListPane .dojoxRollingListItemSelected { + color: #243C5F; + background-color: #ccc; + font-weight: bold; +} +.nihilo .dojoxRollingListPaneCurrentSelected .dojoxRollingListItemSelected { + background-color: #ffe284; +} +.nihilo .dojoxRollingListPane .dojoxRollingListItemHoverSelected, +.nihilo .dojoxRollingListPane .dojoxRollingListItemFocusSelected { + background-color: #fff1c2; +} +.nihilo .dojoxRollingListItem { + font-family: inherit; +} +.dojoxFileInfoPane *{ + white-space: normal; +} +.dojoxFileInfoLabel { + font-weight: bold; + white-space: nowrap; +} +.dojoxFileInfoPane { + width: 20em; +} +.tundra .dojoxFilePickerItem .dijitMenuItemIcon { + background-image: url("images/tundraFileIcons.gif"); + background-repeat: no-repeat; +} +.tundra .dojoxFilePickerItem .dojoxEmpty { + background-image: none; +} +.tundra .dojoxFilePickerItem .dojoxDirectoryItemIcon { + background-position: 0px; +} +.tundra .dojoxFilePickerItemSelected .dojoxDirectoryItemIcon { + background-position: -16px; +} +.tundra .dojoxFilePickerItem .dojoxFileItemIcon { + background-position: -32px; +} +.tundra .dojoxFilePickerItemSelected .dojoxFileItemIcon { + background-position: -48px; +} +.soria .dojoxFilePickerItem .dijitMenuItemIcon { + background-image: url("images/soriaFileIcons.gif"); + background-repeat: no-repeat; +} +.soria .dojoxFilePickerItem .dojoxEmpty { + background-image: none; +} +.soria .dojoxFilePickerItem .dojoxDirectoryItemIcon { + background-position: 0px; +} +.soria .dojoxFilePickerItemSelected .dojoxDirectoryItemIcon { + background-position: -16px; +} +.soria .dojoxFilePickerItem .dojoxFileItemIcon { + background-position: -32px; +} +.soria .dojoxFilePickerItemSelected .dojoxFileItemIcon { + background-position: -48px; +} +.nihilo .dojoxFilePickerItem .dijitMenuItemIcon { + background-image: url("images/nihiloFileIcons.gif"); + background-repeat: no-repeat; +} +.nihilo .dojoxFilePickerItem .dojoxEmpty { + background-image: none; +} +.nihilo .dojoxFilePickerItem .dojoxDirectoryItemIcon { + background-position: 0px; +} +.nihilo .dojoxFilePickerItemSelected .dojoxDirectoryItemIcon { + background-position: -16px; +} +.nihilo .dojoxFilePickerItem .dojoxFileItemIcon { + background-position: -32px; +} +.nihilo .dojoxFilePickerItemSelected .dojoxFileItemIcon { + background-position: -48px; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/_FileInfoPane.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/_FileInfoPane.html new file mode 100644 index 00000000..4a45e61c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/_FileInfoPane.html @@ -0,0 +1,19 @@ +
    + + + + + + + + + + + + + + + +
    ${_messages.name}
    ${_messages.path}
    ${_messages.size}
    +
    +
    \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/images/nihiloFileIcons.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/images/nihiloFileIcons.gif new file mode 100644 index 0000000000000000000000000000000000000000..f029204a858a8dff3a9af68f8c57c57a98677c59 GIT binary patch literal 986 zcmV<0110=NNk%w1VL$*70OolB{r&yK#KhU!+pe&(`}_OJ%gw*Pzqq-&xVX5`(bJ`< zs^Q|}f`o>@!Naz=y2r`O-{9fq=jeZdgQ%;nv$nXtz{17F#njc;!NI|Yhljkpyv)qZ z!otG9z`&)YrpL#}x3{;8i;J9`oS~ti{QUgr=;-+P_`bfr@bK{W_xH-m%ErdV&d$!@ z;NZKvyR@{l>gwvcySv!f*p85q*Votc^Yh!=+lPsZ_V)JQ-`}93rO?pO;^N}$?Cj>| z=9HF~wzjr&bat+lq^@$sIXp48OT zj*gC*nVF)ZqIGq3d3kxEp`w0%esOVeprWIsq@=5>td^FRxw^VzWMr0>m-Xhi=h>?2 z+pMguuCueVfP#asudtAjlKAPmla!R9qN0q9jOpp=^yRkA&dz3LW`>7{_4W0+xw*r` z!}|LA{{H^Dy1J^Ws`>f(|Ns900000000000000000000000000A^8LW004OaEC2ui z06+i`000O7fO&$0goTEOgliofa*d9T7#uKpY>SVVkza#UA)RB0f?-w}8CRfrbv!0_ ztgWpnHg%|~uC=hTPEb;IydfjMz)pf8YP@zML?X({S%YyVcy!X!(|9#;dC$?*)YjM` z#^K^2f*IoHB7=1VbRTsHad8MQE&zBqvg_^d@$>cfvfdmRNU-2QFXhgOODCw#96Co% zXsGj{g^v>U;N*K4abm@b8D%9|K(eGsl1UQU+2Wz4%a&^BYAS1S# zH*@an=`)WI0Z5Z7MJgm=lr|BfN}U=ZM$HW!P8g`OVhD<&SF>*I`V|ixY)cZTUCUPO zl7wjgAjq9dSFVMcDhz1QU_cHH7+@df-P`wXQ6mo$D_)$~NWv-?B1@ipK@2LvdRT=Iy)a4+qGT zD@XpLoS6#Hqf4)V<&13>axh@nu;EDw5~Z(a-`@Ru_!$Gzt6!gfhM*}rD9E2rpMsW# zb4VbWh(JaU6mZM|0B{cJ$De-y3JBZ{3N+~8gALvwNEZ`SXyJtu=l}+Oa|D0@5Fmi? zf(1F4KmZ&FT-M=-A&yw$i75ubz>GB3IAaikxFNxgJoYF78O{(uz#O%(k{^oM2uWl& zkw>O@%9Brm0LPF;-Z2LOO@NSxlvFZ_rIt{Jd58fkd|*KUXr>u}1!i`T2bpH7nI@YS IxETllJAc>>^#A|> literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/images/soriaFileIcons.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/images/soriaFileIcons.gif new file mode 100644 index 0000000000000000000000000000000000000000..80871464bf733a77b2f0f151940381458681e7f1 GIT binary patch literal 986 zcmV<0110=NNk%w1VL$*70OolB{r&yK#KhU!+rPoX$;-{(;NgOVhOV%(zrVk@xw_EN z)5ponxVX5bsH)-OgwvcySv!f*xTFN-{0Tklq}_V$N~i^<8!w6(U>)YPu8u<`Nn z&Cbq{k&=0Nd7z@Betv$hudt$`qN}T{q@<+j>FHx+WSNf(|Ns900000000000000000000000000A^8LW004OaEC2ui z06+i`000O7fO&$0goTEOgjpOQa*d9T7$7itZi|nXkz|8XBAsi9f@xG58eO1ybvr0` ztgWprGj*t{uC=hTIAKcfvcx19NU-3*H|5TWODCw#96C!% zWT?}@1rZYV;N*K4abm@b8D%kXK(eGsl1viXVdJ5t%a&(i#HiwsP6`khILN^WAS1S# zH*@an=`)WL0Z5Z7Md~Es7AO^>N}XCEM$HWzN+77SqQ;4$SF>*I`V|ixY&R6BUCUPO zjf7wS3do&HS1yH`ED&VKfIyB87+@df-P`wX(IE>GD_)#T=Iy(v5eUeW zD@SgmT$BmWqf4JKMUCwgaxh@nu%QVF6Q!?b-`@Ru_#+3>t6!h~h#)RGF36ux|H74q zb4>J@$Up{<6L8D{0B{cJ$De-y3J9DM4K(QBgAFPnh!zr5XyJttGB3I3o~(lo7#>JoXp?8qPfMz#O%(k{^oM2uWl& zkw>O@%9Bri0LPF;-Z94mPkfMvlvFZ_rIt{Jc?be4bU;A>Xr>te1!i)P2bpH7nI@YQ IxETllJKw?&WdHyG literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/images/tundraFileIcons.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FilePicker/images/tundraFileIcons.gif new file mode 100644 index 0000000000000000000000000000000000000000..744525eb4ccb485accbe2caef7c600cb1741a99c GIT binary patch literal 986 zcmV<0110=NNk%w1VL$*70OolB{r&yK#KhU!+tAU|$H~irgoe1ey12Nw-{9e;sH)-O zgwvcySv!f*yZKr)YR1C;^Lm3o~Wp*^z`)C*VoX{(3F;!?Ck8DoSvbg zq>hl0=H}+Mwzi3hiF0&zuCK6%iHo43rQ_q{$jHd^^Yh8c$@cd4w6(U|+uQN+@!#Ly zjEsz{tE_~Uz=D*%prWIGetwpgmb0_7la!R9p`vDHW|O7PkD<$FJJ+j<2tf(|Ns900000000000000000000000000A^8LW004OaEC2ui z06+i`000O7fO&$0goTEOgkc;Ta*d9T7#lEoW{Z!Pkz9jsA)QxKo)8f>6>bu}k< ztgWpoO?9ZMuC=hTHez6QydfjMz&3&*P`q{{LL$n_WrJ}icy!X!(|Ad7dC$?*)YjM` z#^K^2f*RuIB7=1ebRcyHad8JOEC6^*vg_^d@$>cfveFnBNU-3*FXhgOODCw#96Cx$ zWT*q81rQYW;N*K4abm@b8D%k1K(eGsl1viXvGSp%%a&bY#2Dj{PKpf}ILN^WAS1S# zH*@an=`#-z0Z5Z7MM@;$nKl)oN}XCEM$HZ!N-U_e;)sc&SF>*I`V|ixY&Qm|UCUPO zjf7bL5XhZNS1yH`FBW9Tus}`@7+@df-P`wXQ6B^nD_)$~N5U)@B1@ip!3`?GdRb6t zfkQ=LI)gQH_G}hg4+f}Ht47_UoDc}GW6Or^T=Iy)ajt9t- zD@VSg9GMBwqf4JaWsB_;axh@%(18XD5~Z(a-`@Ru_#Y0^t6!h~hafaYEXbcv-$Imz zb4VbWct8dZ6L8D{0B{cJ$De-y3J6>g2{h>7gAEoT$Qlt;XyJts7%>HYa|Cce5FU8o z0tHW;&;T3GB3IO7n4Xd%IlJoYGo8qPG(z#O%(k{^oM2uWl& zkw>O@%9Bre0LPF;-Z4i5PI!=qlvFZ_rIt{JdB_4QfIvY2Xr>te1!i)P2bpH7nI@YQ IxETllJ8K&XNdN!< literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeList.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeList.js new file mode 100644 index 00000000..a3b082ba --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeList.js @@ -0,0 +1,332 @@ +//>>built +define("dojox/widget/FisheyeList",["dojo/_base/declare","dojo/_base/sniff","dojo/_base/lang","dojo/aspect","dojo/dom","dojo/dom-attr","dojo/dom-class","dojo/dom-geometry","dojo/dom-style","dojo/dom-construct","dojo/on","dojo/_base/window","dojo/mouse","dijit/_WidgetBase","dijit/_TemplatedMixin","dijit/_Container","./FisheyeListItem"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,on,_b,_c,_d,_e,_f,_10){ +return _1("dojox.widget.FisheyeList",[_d,_e,_f],{constructor:function(){ +this.pos={"x":-1,"y":-1}; +this.timerScale=1; +},EDGE:{CENTER:0,LEFT:1,RIGHT:2,TOP:3,BOTTOM:4},templateString:"
    ",snarfChildDomOutput:true,itemWidth:40,itemHeight:40,itemMaxWidth:150,itemMaxHeight:150,imgNode:null,orientation:"horizontal",isFixed:false,conservativeTrigger:false,effectUnits:2,itemPadding:10,attachEdge:"center",labelEdge:"bottom",postCreate:function(){ +var e=this.EDGE,_11=this.isHorizontal=(this.orientation=="horizontal"); +_5.setSelectable(this.domNode,false); +this.selectedNode=-1; +this.isOver=false; +this.hitX1=-1; +this.hitY1=-1; +this.hitX2=-1; +this.hitY2=-1; +this.anchorEdge=this._toEdge(this.attachEdge,e.CENTER); +this.labelEdge=this._toEdge(this.labelEdge,e.TOP); +if(this.labelEdge==e.CENTER){ +this.labelEdge=e.TOP; +} +if(_11){ +if(this.anchorEdge==e.LEFT){ +this.anchorEdge=e.CENTER; +} +if(this.anchorEdge==e.RIGHT){ +this.anchorEdge=e.CENTER; +} +if(this.labelEdge==e.LEFT){ +this.labelEdge=e.TOP; +} +if(this.labelEdge==e.RIGHT){ +this.labelEdge=e.TOP; +} +}else{ +if(this.anchorEdge==e.TOP){ +this.anchorEdge=e.CENTER; +} +if(this.anchorEdge==e.BOTTOM){ +this.anchorEdge=e.CENTER; +} +if(this.labelEdge==e.TOP){ +this.labelEdge=e.LEFT; +} +if(this.labelEdge==e.BOTTOM){ +this.labelEdge=e.LEFT; +} +} +var _12=this.effectUnits; +this.proximityLeft=this.itemWidth*(_12-0.5); +this.proximityRight=this.itemWidth*(_12-0.5); +this.proximityTop=this.itemHeight*(_12-0.5); +this.proximityBottom=this.itemHeight*(_12-0.5); +if(this.anchorEdge==e.LEFT){ +this.proximityLeft=0; +} +if(this.anchorEdge==e.RIGHT){ +this.proximityRight=0; +} +if(this.anchorEdge==e.TOP){ +this.proximityTop=0; +} +if(this.anchorEdge==e.BOTTOM){ +this.proximityBottom=0; +} +if(this.anchorEdge==e.CENTER){ +this.proximityLeft/=2; +this.proximityRight/=2; +this.proximityTop/=2; +this.proximityBottom/=2; +} +},startup:function(){ +this.children=this.getChildren(); +this._initializePositioning(); +this._onMouseMoveHandle=on.pausable(_b.doc.documentElement,"mousemove",_3.hitch(this,"_onMouseMove")); +if(this.conservativeTrigger){ +this._onMouseMoveHandle.pause(); +} +if(this.isFixed){ +this.own(on(_b.doc,"scroll",_3.hitch(this,this._onScroll))); +} +this.own(on(_b.doc.documentElement,_c.leave,_3.hitch(this,"_onBodyOut")),_4.after(this,"addChild",_3.hitch(this,"_initializePositioning"),true),_4.after(_b.global,"onresize",_3.hitch(this,"_initializePositioning"),true)); +},_initializePositioning:function(){ +this.itemCount=this.children.length; +this.barWidth=(this.isHorizontal?this.itemCount:1)*this.itemWidth; +this.barHeight=(this.isHorizontal?1:this.itemCount)*this.itemHeight; +this.totalWidth=this.proximityLeft+this.proximityRight+this.barWidth; +this.totalHeight=this.proximityTop+this.proximityBottom+this.barHeight; +for(var i=0;ic+lhs){ +_13=c+lhs; +} +if(_14>(siz-c+rhs)){ +_14=siz-c+rhs; +} +this.children[i].effectRangeLeft=_13/isz; +this.children[i].effectRangeRght=_14/isz; +} +_9.set(this.domNode,{width:this.barWidth+"px",height:this.barHeight+"px"}); +for(i=0;i=_19&&_16.x<=_1a&&_16.y>=top&&_16.y<=_18); +},_onBodyOut:function(e){ +if(this._overElement(_b.body(),e)){ +return; +} +this._setDormant(e); +},_setDormant:function(e){ +if(!this.isOver){ +return; +} +this.isOver=false; +if(this.conservativeTrigger){ +this._onMouseMoveHandle.pause(); +} +this._onGridMouseMove(-1,-1); +},_setActive:function(e){ +if(this.isOver){ +return; +} +this.isOver=true; +if(this.conservativeTrigger){ +this._onMouseMoveHandle.resume(); +this.timerScale=0; +this._onMouseMove(e); +this._expandSlowly(); +} +},_onMouseMove:function(e){ +if((e.pageX>=this.hitX1)&&(e.pageX<=this.hitX2)&&(e.pageY>=this.hitY1)&&(e.pageY<=this.hitY2)){ +if(!this.isOver){ +this._setActive(e); +} +this._onGridMouseMove(e.pageX-this.hitX1,e.pageY-this.hitY1); +}else{ +if(this.isOver){ +this._setDormant(e); +} +} +},_onScroll:function(){ +this._calcHitGrid(); +},onResized:function(){ +this._calcHitGrid(); +},_onGridMouseMove:function(x,y){ +this.pos={x:x,y:y}; +this._paint(); +},_paint:function(){ +var x=this.pos.x; +var y=this.pos.y; +if(this.itemCount<=0){ +return; +} +var pos=this.isHorizontal?x:y,prx=this.isHorizontal?this.proximityLeft:this.proximityTop,siz=this.isHorizontal?this.itemWidth:this.itemHeight,sim=this.isHorizontal?(1-this.timerScale)*this.itemWidth+this.timerScale*this.itemMaxWidth:(1-this.timerScale)*this.itemHeight+this.timerScale*this.itemMaxHeight,cen=((pos-prx)/siz)-0.5,_1b=(sim/siz)-0.5; +if(_1b>this.effectUnits){ +_1b=this.effectUnits; +} +var _1c=0,_1d; +if(this.anchorEdge==this.EDGE.BOTTOM){ +_1d=(y-this.proximityTop)/this.itemHeight; +_1c=(_1d>0.5)?1:y/(this.proximityTop+(this.itemHeight/2)); +} +if(this.anchorEdge==this.EDGE.TOP){ +_1d=(y-this.proximityTop)/this.itemHeight; +_1c=(_1d<0.5)?1:(this.totalHeight-y)/(this.proximityBottom+(this.itemHeight/2)); +} +if(this.anchorEdge==this.EDGE.RIGHT){ +_1d=(x-this.proximityLeft)/this.itemWidth; +_1c=(_1d>0.5)?1:x/(this.proximityLeft+(this.itemWidth/2)); +} +if(this.anchorEdge==this.EDGE.LEFT){ +_1d=(x-this.proximityLeft)/this.itemWidth; +_1c=(_1d<0.5)?1:(this.totalWidth-x)/(this.proximityRight+(this.itemWidth/2)); +} +if(this.anchorEdge==this.EDGE.CENTER){ +if(this.isHorizontal){ +_1c=y/(this.totalHeight); +}else{ +_1c=x/(this.totalWidth); +} +if(_1c>0.5){ +_1c=1-_1c; +} +_1c*=2; +} +for(var i=0;ithis.itemCount-1){ +_1f=this.itemCount-1; +}else{ +_20=(cen-_1f)*((this.isHorizontal?this.itemWidth:this.itemHeight)-this.children[_1f].sizeMain); +} +} +this._positionElementsFrom(_1f,_20); +},_weighAt:function(cen,i){ +var _21=Math.abs(cen-i),_22=((cen-i)>0)?this.children[i].effectRangeRght:this.children[i].effectRangeLeft; +return (_21>_22)?0:(1-_21/_22); +},_setItemSize:function(p,_23){ +if(this.children[p].scale==_23){ +return; +} +this.children[p].scale=_23; +_23*=this.timerScale; +var w=Math.round(this.itemWidth+((this.itemMaxWidth-this.itemWidth)*_23)),h=Math.round(this.itemHeight+((this.itemMaxHeight-this.itemHeight)*_23)); +if(this.isHorizontal){ +this.children[p].sizeW=w; +this.children[p].sizeH=h; +this.children[p].sizeMain=w; +this.children[p].sizeOff=h; +var y=0; +if(this.anchorEdge==this.EDGE.TOP){ +y=(this.children[p].cenY-(this.itemHeight/2)); +}else{ +if(this.anchorEdge==this.EDGE.BOTTOM){ +y=(this.children[p].cenY-(h-(this.itemHeight/2))); +}else{ +y=(this.children[p].cenY-(h/2)); +} +} +this.children[p].usualX=Math.round(this.children[p].cenX-(w/2)); +_9.set(this.children[p].domNode,{top:y+"px",left:this.children[p].usualX+"px"}); +}else{ +this.children[p].sizeW=w; +this.children[p].sizeH=h; +this.children[p].sizeOff=w; +this.children[p].sizeMain=h; +var x=0; +if(this.anchorEdge==this.EDGE.LEFT){ +x=this.children[p].cenX-(this.itemWidth/2); +}else{ +if(this.anchorEdge==this.EDGE.RIGHT){ +x=this.children[p].cenX-(w-(this.itemWidth/2)); +}else{ +x=this.children[p].cenX-(w/2); +} +} +this.children[p].usualY=Math.round(this.children[p].cenY-(h/2)); +_9.set(this.children[p].domNode,{left:x+"px",top:this.children[p].usualY+"px"}); +} +_9.set(this.children[p].domNode,{width:w+"px",height:h+"px"}); +if(this.children[p].svgNode){ +this.children[p].svgNode.setSize(w,h); +} +},_positionElementsFrom:function(p,_24){ +var pos=0; +var _25,_26; +if(this.isHorizontal){ +_25="usualX"; +_26="left"; +}else{ +_25="usualY"; +_26="top"; +} +pos=Math.round(this.children[p][_25]+_24); +if(_9.get(this.children[p].domNode,_26)!=(pos+"px")){ +_9.set(this.children[p].domNode,_26,pos+"px"); +this._positionLabel(this.children[p]); +} +var _27=pos; +for(var i=p-1;i>=0;i--){ +_27-=this.children[i].sizeMain; +if(_9.get(this.children[p].domNode,_26)!=(_27+"px")){ +_9.set(this.children[i].domNode,_26,_27+"px"); +this._positionLabel(this.children[i]); +} +} +var _28=pos; +for(i=p+1;i + // | + // |
    + // |
    + // | ... + // |
    + + constructor: function(){ + // + // TODO + // fix really long labels in vertical mode + // + + this.pos = {'x': -1, 'y': -1}; // current cursor position, relative to the grid + + // for conservative trigger mode, when triggered, timerScale is gradually increased from 0 to 1 + this.timerScale = 1.0; + }, + + EDGE: { + CENTER: 0, + LEFT: 1, + RIGHT: 2, + TOP: 3, + BOTTOM: 4 + }, + + templateString: '
    ', + + snarfChildDomOutput: true, + + // itemWidth: Integer + // width of menu item (in pixels) in it's dormant state (when the mouse is far away) + itemWidth: 40, + + // itemHeight: Integer + // height of menu item (in pixels) in it's dormant state (when the mouse is far away) + itemHeight: 40, + + // itemMaxWidth: Integer + // width of menu item (in pixels) in it's fully enlarged state (when the mouse is directly over it) + itemMaxWidth: 150, + + // itemMaxHeight: Integer + // height of menu item (in pixels) in it's fully enlarged state (when the mouse is directly over it) + itemMaxHeight: 150, + + imgNode: null, + + // orientation: String + // orientation of the menu, either "horizontal" or "vertical" + orientation: 'horizontal', + + // isFixed: Boolean + // toggle to enable additional listener (window scroll) if FisheyeList is in a fixed postion + isFixed: false, + + // conservativeTrigger: Boolean + // if true, don't start enlarging menu items until mouse is over an image; + // if false, start enlarging menu items as the mouse moves near them. + conservativeTrigger: false, + + // effectUnits: Number + // controls how much reaction the menu makes, relative to the distance of the mouse from the menu + effectUnits: 2, + + // itemPadding: Integer + // padding (in pixels) between each menu item + itemPadding: 10, + + // attachEdge: String + // Controls the border that the menu items don't expand past; + // for example, if set to "top", then the menu items will drop downwards as they expand. + // Values: "center", "left", "right", "top", "bottom". + attachEdge: 'center', + + // labelEdge: String + // Controls were the labels show up in relation to the menu item icons. + // Values: "center", "left", "right", "top", "bottom". + labelEdge: 'bottom', + + postCreate: function(){ + var e = this.EDGE, + isHorizontal = this.isHorizontal = (this.orientation == 'horizontal'); + + dom.setSelectable(this.domNode, false); + + this.selectedNode = -1; + + this.isOver = false; + this.hitX1 = -1; + this.hitY1 = -1; + this.hitX2 = -1; + this.hitY2 = -1; + + // + // only some edges make sense... + // + this.anchorEdge = this._toEdge(this.attachEdge, e.CENTER); + this.labelEdge = this._toEdge(this.labelEdge, e.TOP); + + if(this.labelEdge == e.CENTER){ this.labelEdge = e.TOP; } + + if(isHorizontal){ + if(this.anchorEdge == e.LEFT){ this.anchorEdge = e.CENTER; } + if(this.anchorEdge == e.RIGHT){ this.anchorEdge = e.CENTER; } + if(this.labelEdge == e.LEFT){ this.labelEdge = e.TOP; } + if(this.labelEdge == e.RIGHT){ this.labelEdge = e.TOP; } + }else{ + if(this.anchorEdge == e.TOP){ this.anchorEdge = e.CENTER; } + if(this.anchorEdge == e.BOTTOM){ this.anchorEdge = e.CENTER; } + if(this.labelEdge == e.TOP){ this.labelEdge = e.LEFT; } + if(this.labelEdge == e.BOTTOM){ this.labelEdge = e.LEFT; } + } + + // + // figure out the proximity size + // + var effectUnits = this.effectUnits; + this.proximityLeft = this.itemWidth * (effectUnits - 0.5); + this.proximityRight = this.itemWidth * (effectUnits - 0.5); + this.proximityTop = this.itemHeight * (effectUnits - 0.5); + this.proximityBottom = this.itemHeight * (effectUnits - 0.5); + + if(this.anchorEdge == e.LEFT){ + this.proximityLeft = 0; + } + if(this.anchorEdge == e.RIGHT){ + this.proximityRight = 0; + } + if(this.anchorEdge == e.TOP){ + this.proximityTop = 0; + } + if(this.anchorEdge == e.BOTTOM){ + this.proximityBottom = 0; + } + if(this.anchorEdge == e.CENTER){ + this.proximityLeft /= 2; + this.proximityRight /= 2; + this.proximityTop /= 2; + this.proximityBottom /= 2; + } + }, + + startup: function(){ + // summary: + // create our connections and setup our FisheyeList + this.children = this.getChildren(); + //original postCreate() --tk + this._initializePositioning(); + + // + // in liberal trigger mode, activate menu whenever mouse is close, in conservative mode, pause until needed + // + this._onMouseMoveHandle = on.pausable(winUtil.doc.documentElement, "mousemove", lang.hitch(this, "_onMouseMove")); + if(this.conservativeTrigger){ + this._onMouseMoveHandle.pause(); + } + if(this.isFixed){ + this.own(on(winUtil.doc,"scroll", lang.hitch(this, this._onScroll))); + } + + // Deactivate the menu if mouse is moved off screen (doesn't work for FF?) + this.own( + on(winUtil.doc.documentElement, mouse.leave, lang.hitch(this, "_onBodyOut")), + aspect.after(this, "addChild", lang.hitch(this, "_initializePositioning"), true), + aspect.after(winUtil.global, "onresize", lang.hitch(this, "_initializePositioning"), true) + ); + }, + + _initializePositioning: function(){ + this.itemCount = this.children.length; + + this.barWidth = (this.isHorizontal ? this.itemCount : 1) * this.itemWidth; + this.barHeight = (this.isHorizontal ? 1 : this.itemCount) * this.itemHeight; + + this.totalWidth = this.proximityLeft + this.proximityRight + this.barWidth; + this.totalHeight = this.proximityTop + this.proximityBottom + this.barHeight; + + // + // calculate effect ranges for each item + // + + for(var i=0; i c+lhs){ range_lhs = c+lhs; } + if(range_rhs > (siz-c+rhs)){ range_rhs = siz-c+rhs; } + + this.children[i].effectRangeLeft = range_lhs / isz; + this.children[i].effectRangeRght = range_rhs / isz; + + //dojo.debug('effect range for '+i+' is '+range_lhs+'/'+range_rhs); + } + + // + // create the bar + // + style.set(this.domNode, {width: this.barWidth + 'px', height: this.barHeight + 'px'}); + + // + // position the items + // + for(i=0; i`) + node = dom.byId(node); + var mouse = {x: e.pageX, y: e.pageY}, + absolute = geometry.position(node, true), + top = absolute.y, + bottom = top + absolute.h, + left = absolute.x, + right = left + absolute.w; + + return (mouse.x >= left + && mouse.x <= right + && mouse.y >= top + && mouse.y <= bottom + ); // Boolean + }, + + _onBodyOut: function(/*Event*/ e){ + // clicking over an object inside of body causes this event to fire; ignore that case + if( this._overElement(winUtil.body(), e) ){ + return; + } + this._setDormant(e); + }, + + _setDormant: function(/*Event*/ e){ + // summary: + // called when mouse moves out of menu's range + + if(!this.isOver){ return; } // already dormant? + this.isOver = false; + + if(this.conservativeTrigger){ + // user can't re-trigger the menu expansion + // until he mouses over a icon again + this._onMouseMoveHandle.pause(); + } + this._onGridMouseMove(-1, -1); + }, + + _setActive: function(/*Event*/ e){ + // summary: + // called when mouse is moved into menu's range + + if(this.isOver){ return; } // already activated? + this.isOver = true; + + if(this.conservativeTrigger){ + // switch event handlers so that we handle mouse events from anywhere near + // the menu + this._onMouseMoveHandle.resume(); + + this.timerScale=0.0; + + // call mouse handler to do some initial necessary calculations/positioning + this._onMouseMove(e); + + // slowly expand the icon size so it isn't jumpy + this._expandSlowly(); + } + }, + + _onMouseMove: function(/*Event*/ e){ + // summary: + // called when mouse is moved + if( (e.pageX >= this.hitX1) && (e.pageX <= this.hitX2) && + (e.pageY >= this.hitY1) && (e.pageY <= this.hitY2) ){ + if(!this.isOver){ + this._setActive(e); + } + this._onGridMouseMove(e.pageX-this.hitX1, e.pageY-this.hitY1); + }else{ + if(this.isOver){ + this._setDormant(e); + } + } + }, + + _onScroll: function(){ + this._calcHitGrid(); + }, + + onResized: function(){ + this._calcHitGrid(); + }, + + _onGridMouseMove: function(x, y){ + // summary: + // called when mouse is moved in the vicinity of the menu + this.pos = {x:x, y:y}; + this._paint(); + }, + + _paint: function(){ + var x=this.pos.x; + var y=this.pos.y; + + if(this.itemCount <= 0){ return; } + + // + // figure out our main index + // + var pos = this.isHorizontal ? x : y, + prx = this.isHorizontal ? this.proximityLeft : this.proximityTop, + siz = this.isHorizontal ? this.itemWidth : this.itemHeight, + sim = this.isHorizontal ? + (1.0-this.timerScale)*this.itemWidth + this.timerScale*this.itemMaxWidth : + (1.0-this.timerScale)*this.itemHeight + this.timerScale*this.itemMaxHeight, + + cen = ((pos - prx) / siz) - 0.5, + max_off_cen = (sim / siz) - 0.5; + + if(max_off_cen > this.effectUnits){ max_off_cen = this.effectUnits; } + + // + // figure out our off-axis weighting + // + var off_weight = 0, cen2; + + if(this.anchorEdge == this.EDGE.BOTTOM){ + cen2 = (y - this.proximityTop) / this.itemHeight; + off_weight = (cen2 > 0.5) ? 1 : y / (this.proximityTop + (this.itemHeight / 2)); + } + if(this.anchorEdge == this.EDGE.TOP){ + cen2 = (y - this.proximityTop) / this.itemHeight; + off_weight = (cen2 < 0.5) ? 1 : (this.totalHeight - y) / (this.proximityBottom + (this.itemHeight / 2)); + } + if(this.anchorEdge == this.EDGE.RIGHT){ + cen2 = (x - this.proximityLeft) / this.itemWidth; + off_weight = (cen2 > 0.5) ? 1 : x / (this.proximityLeft + (this.itemWidth / 2)); + } + if(this.anchorEdge == this.EDGE.LEFT){ + cen2 = (x - this.proximityLeft) / this.itemWidth; + off_weight = (cen2 < 0.5) ? 1 : (this.totalWidth - x) / (this.proximityRight + (this.itemWidth / 2)); + } + if(this.anchorEdge == this.EDGE.CENTER){ + if(this.isHorizontal){ + off_weight = y / (this.totalHeight); + }else{ + off_weight = x / (this.totalWidth); + } + + if(off_weight > 0.5){ + off_weight = 1 - off_weight; + } + + off_weight *= 2; + } + + // + // set the sizes + // + for(var i=0; i this.itemCount - 1){ + + main_p = this.itemCount -1; + + }else{ + + offset = (cen - main_p) * ((this.isHorizontal ? this.itemWidth : this.itemHeight) - this.children[main_p].sizeMain); + } + + this._positionElementsFrom(main_p, offset); + }, + + _weighAt: function(/*Integer*/ cen, /*Integer*/ i){ + var dist = Math.abs(cen - i), + limit = ((cen - i) > 0) ? this.children[i].effectRangeRght : this.children[i].effectRangeLeft; + + return (dist > limit) ? 0 : (1 - dist / limit); // Integer + }, + + _setItemSize: function(p, scale){ + if(this.children[p].scale == scale){ return; } + this.children[p].scale = scale; + + scale *= this.timerScale; + var w = Math.round(this.itemWidth + ((this.itemMaxWidth - this.itemWidth ) * scale)), + h = Math.round(this.itemHeight + ((this.itemMaxHeight - this.itemHeight) * scale)); + + if(this.isHorizontal){ + + this.children[p].sizeW = w; + this.children[p].sizeH = h; + + this.children[p].sizeMain = w; + this.children[p].sizeOff = h; + + var y = 0; + if(this.anchorEdge == this.EDGE.TOP){ + y = (this.children[p].cenY - (this.itemHeight / 2)); + }else if(this.anchorEdge == this.EDGE.BOTTOM){ + y = (this.children[p].cenY - (h - (this.itemHeight / 2))); + }else{ + y = (this.children[p].cenY - (h / 2)); + } + + this.children[p].usualX = Math.round(this.children[p].cenX - (w / 2)); + style.set(this.children[p].domNode, {top: y + 'px', left: this.children[p].usualX + 'px'}); + + }else{ + + this.children[p].sizeW = w; + this.children[p].sizeH = h; + + this.children[p].sizeOff = w; + this.children[p].sizeMain = h; + + var x = 0; + if(this.anchorEdge == this.EDGE.LEFT){ + x = this.children[p].cenX - (this.itemWidth / 2); + }else if(this.anchorEdge == this.EDGE.RIGHT){ + x = this.children[p].cenX - (w - (this.itemWidth / 2)); + }else{ + x = this.children[p].cenX - (w / 2); + } + + this.children[p].usualY = Math.round(this.children[p].cenY - (h / 2)); + style.set(this.children[p].domNode, {left: x + 'px', top: this.children[p].usualY + 'px'}); + } + + style.set(this.children[p].domNode, {width: w + 'px', height: h + 'px'}); + + if(this.children[p].svgNode){ + this.children[p].svgNode.setSize(w, h); + } + }, + + _positionElementsFrom: function(p, offset){ + var pos = 0; + + var usual, start; + if(this.isHorizontal){ + usual = "usualX"; + start = "left"; + }else{ + usual = "usualY"; + start = "top"; + } + pos = Math.round(this.children[p][usual] + offset); + if(style.get(this.children[p].domNode, start) != (pos + 'px')){ + style.set(this.children[p].domNode, start, pos + 'px'); + this._positionLabel(this.children[p]); + } + + // position before + var bpos = pos; + for(var i=p-1; i>=0; i--){ + bpos -= this.children[i].sizeMain; + + if(style.get(this.children[p].domNode, start) != (bpos + 'px')){ + style.set(this.children[i].domNode, start, bpos + 'px'); + this._positionLabel(this.children[i]); + } + } + + // position after + var apos = pos; + for(i=p+1; i>built +define("dojox/widget/FisheyeListItem",["dojo/_base/declare","dojo/_base/sniff","dojo/dom","dojo/dom-attr","dojo/dom-class","dojo/dom-style","dojo/dom-construct","dojo/_base/window","dijit/_WidgetBase","dijit/_TemplatedMixin","dijit/_Contained"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b){ +return _1("dojox.widget.FisheyeListItem",[_9,_a,_b],{iconSrc:"",label:"",id:"",templateString:"
    "+" "+"
    "+"
    ",_isNode:function(wh){ +if(typeof Element=="function"){ +try{ +return wh instanceof Element; +} +catch(e){ +} +}else{ +return wh&&!isNaN(wh.nodeType); +} +return false; +},_hasParent:function(_c){ +return Boolean(_c&&_c.parentNode&&this._isNode(_c.parentNode)); +},postCreate:function(){ +var _d; +if((this.iconSrc.toLowerCase().substring(this.iconSrc.length-4)==".png")&&_2("ie")<7){ +if(this._hasParent(this.imgNode)&&this.id!=""){ +_d=this.imgNode.parentNode; +_4.set(_d,"id",this.id); +} +_6.set(this.imgNode,"filter","progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+this.iconSrc+"', sizingMethod='scale')"); +this.imgNode.src=this._blankGif.toString(); +}else{ +if(this._hasParent(this.imgNode)&&this.id!=""){ +_d=this.imgNode.parentNode; +_4.set(_d,"id",this.id); +} +this.imgNode.src=this.iconSrc; +} +if(this.lblNode){ +_7.place(_8.doc.createTextNode(this.label),this.lblNode); +} +_3.setSelectable(this.domNode,false); +this.startup(); +},startup:function(){ +this.parent=this.getParent(); +},onMouseOver:function(e){ +if(!this.parent.isOver){ +this.parent._setActive(e); +} +if(this.label!=""){ +_5.add(this.lblNode,"dojoxFishSelected"); +this.parent._positionLabel(this); +} +},onMouseOut:function(e){ +_5.remove(this.lblNode,"dojoxFishSelected"); +},onClick:function(e){ +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeListItem.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeListItem.js.uncompressed.js new file mode 100644 index 00000000..d5a994ae --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeListItem.js.uncompressed.js @@ -0,0 +1,104 @@ +define("dojox/widget/FisheyeListItem", ["dojo/_base/declare", "dojo/_base/sniff", "dojo/dom", "dojo/dom-attr", "dojo/dom-class", "dojo/dom-style", "dojo/dom-construct", "dojo/_base/window", "dijit/_WidgetBase", "dijit/_TemplatedMixin", "dijit/_Contained"], + function(declare, has, dom, attr, domClass, style, construct, winUtil, _WidgetBase, _TemplatedMixin, _Contained){ + + return declare("dojox.widget.FisheyeListItem", + [_WidgetBase, _TemplatedMixin, _Contained], { + // summary: + // Menu item inside of a FisheyeList. + // See FisheyeList documentation for details on usage. + + // iconSrc: String + // pathname to image file (jpg, gif, png, etc.) of icon for this menu item + iconSrc: "", + + // label: String + // label to print next to the icon, when it is moused-over + label: "", + + // id: String + // will be set to the id of the original div element + id: "", + + templateString: + '
    ' + + ' ' + + '
    ' + + '
    ', + + _isNode: function(/* object */wh){ + // summary: + // checks to see if wh is actually a node. + if(typeof Element == "function"){ + try{ + return wh instanceof Element; // Boolean + }catch(e){} + }else{ + // best-guess + return wh && !isNaN(wh.nodeType); // Boolean + } + return false; + }, + + _hasParent: function(/*Node*/ node){ + // summary: + // returns whether or not node is a child of another node. + return Boolean(node && node.parentNode && this._isNode(node.parentNode)); // Boolean + }, + + postCreate: function(){ + + // set image + var parent; + if((this.iconSrc.toLowerCase().substring(this.iconSrc.length-4)==".png") && has("ie") < 7){ + /* we set the id of the new fisheyeListItem to the id of the div defined in the HTML */ + if(this._hasParent(this.imgNode) && this.id != ""){ + parent = this.imgNode.parentNode; + attr.set(parent, "id", this.id); + } + style.set(this.imgNode, "filter", "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+this.iconSrc+"', sizingMethod='scale')"); + this.imgNode.src = this._blankGif.toString(); + }else{ + if(this._hasParent(this.imgNode) && this.id != ""){ + parent = this.imgNode.parentNode; + attr.set(parent, "id", this.id); + } + this.imgNode.src = this.iconSrc; + } + + // Label + if(this.lblNode){ + construct.place(winUtil.doc.createTextNode(this.label), this.lblNode); + } + dom.setSelectable(this.domNode, false); + this.startup(); + }, + + startup: function(){ + this.parent = this.getParent(); + }, + + onMouseOver: function(/*Event*/ e){ + // summary: + // callback when user moves mouse over this menu item + // in conservative mode, don't activate the menu until user mouses over an icon + if(!this.parent.isOver){ + this.parent._setActive(e); + } + if(this.label != "" ){ + domClass.add(this.lblNode, "dojoxFishSelected"); + this.parent._positionLabel(this); + } + }, + + onMouseOut: function(/*Event*/ e){ + // summary: + // callback when user moves mouse off of this menu item + domClass.remove(this.lblNode, "dojoxFishSelected"); + }, + + onClick: function(/*Event*/ e){ + // summary: + // user overridable callback when user clicks this menu item + } + }); +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeLite.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeLite.js new file mode 100644 index 00000000..25450c33 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeLite.js @@ -0,0 +1,33 @@ +//>>built +define("dojox/widget/FisheyeLite",["dojo/_base/kernel","dojo/_base/declare","dojo/_base/lang","dojo/on","dojo/query","dojo/dom-style","dojo/_base/fx","dijit/_WidgetBase","dojo/fx/easing"],function(_1,_2,_3,on,_4,_5,fx,_6,_7){ +_3.getObject("widget",true,dojox); +_1.experimental("dojox/widget/FisheyeLite"); +return dojo.declare("dojox.widget.FisheyeLite",[_6],{durationIn:350,easeIn:_7.backOut,durationOut:1420,easeOut:_7.elasticOut,properties:null,units:"px",constructor:function(_8,_9){ +this.properties=_8.properties||{fontSize:2.75}; +},postCreate:function(){ +this.inherited(arguments); +this._target=_4(".fisheyeTarget",this.domNode)[0]||this.domNode; +this._makeAnims(); +this.connect(this.domNode,"onmouseover","show"); +this.connect(this.domNode,"onmouseout","hide"); +this.connect(this._target,"onclick","onClick"); +},show:function(){ +this._runningOut.stop(); +this._runningIn.play(); +},hide:function(){ +this._runningIn.stop(); +this._runningOut.play(); +},_makeAnims:function(){ +var _a={},_b={},cs=_5.getComputedStyle(this._target); +for(var p in this.properties){ +var _c=this.properties[p],_d=_3.isObject(_c),v=parseFloat(cs[p]); +_b[p]={end:v,units:this.units}; +_a[p]=_d?_c:{end:_c*v,units:this.units}; +} +this._runningIn=fx.animateProperty({node:this._target,easing:this.easeIn,duration:this.durationIn,properties:_a}); +this._runningOut=fx.animateProperty({node:this._target,duration:this.durationOut,easing:this.easeOut,properties:_b}); +this.connect(this._runningIn,"onEnd",_3.hitch(this,"onSelected",this)); +},onClick:function(e){ +},onSelected:function(e){ +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeLite.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeLite.js.uncompressed.js new file mode 100644 index 00000000..d528a4ac --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/FisheyeLite.js.uncompressed.js @@ -0,0 +1,166 @@ +define("dojox/widget/FisheyeLite", [ + "dojo/_base/kernel", + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/on", + "dojo/query", + "dojo/dom-style", + "dojo/_base/fx", + "dijit/_WidgetBase", + "dojo/fx/easing" + +], function(kernel, declare, lang, on, query, domStyle, fx, _WidgetBase, easing){ + + lang.getObject("widget", true, dojox); + kernel.experimental("dojox/widget/FisheyeLite"); + + return dojo.declare("dojox.widget.FisheyeLite", [_WidgetBase], { + // summary: + // A Light-weight Fisheye Component, or an exhanced version + // of dojo/fx/Toggler ... + // description: + // A Simple FisheyeList-like widget which (in the interest of + // performance) relies on well-styled content for positioning, + // and natural page layout for rendering. + // + // use position:absolute/relative nodes to prevent layout + // changes, and use caution when seleting properties to + // scale. Negative scaling works, but some properties + // react poorly to being set to negative values, IE being + // particularly annoying in that regard. + // + // quirk: uses the domNode as the target of the animation + // unless it finds a node class="fisheyeTarget" in the container + // being turned into a FisheyeLite instance + // + // example: + // | // make all the LI's in a node Fisheye's: + // | require(["dojo/query", "dojox/widget/FisheyeLite"], + // | function(query, FisheyeLite){ + // | query("#node li").forEach(function(n){ + // | new FisheyeLite({},n); + // | }); + // | }); + // + // + // example: + // | require(["dojox/widget/FisheyeLite"], function(FisheyeLite){ + // | new FisheyeLite({ + // | properties:{ + // | // height is literal, width is multiplied + // | height:{ end: 200 }, width:2.3 + // | } + // | }, "someNode"); + // | }); + + // durationIn: Integer + // The time (in ms) the run the show animation + durationIn: 350, + + // easeIn: Function + // An easing function to use for the show animation + easeIn: easing.backOut, + + // durationOut: Integer + // The Time (in ms) to run the hide animation + durationOut: 1420, + + // easeOut: Function + // An easing function to use for the hide animation + easeOut: easing.elasticOut, + + // properties: Object + // An object of "property":scale pairs, or "property":{} pairs. + // defaults to font-size with a scale of 2.75 + // If a named property is an integer or float, the "scale multiplier" + // is used. If the named property is an object, that object is mixed + // into the animation directly. eg: height:{ end:20, units:"em" } + properties: null, + + // units: String + // Sometimes, you need to specify a unit. Should be part of + // properties attrib, but was trying to shorthand the logic there + units:"px", + + constructor: function(props, node){ + this.properties = props.properties || { + fontSize: 2.75 + } + }, + + postCreate: function(){ + + this.inherited(arguments); + this._target = query(".fisheyeTarget", this.domNode)[0] || this.domNode; + this._makeAnims(); + + this.connect(this.domNode, "onmouseover", "show"); + this.connect(this.domNode, "onmouseout", "hide"); + this.connect(this._target, "onclick", "onClick"); + + }, + + show: function(){ + // summary: + // Show this Fisheye item. + this._runningOut.stop(); + this._runningIn.play(); + }, + + hide: function(){ + // summary: + // Hide this fisheye item on mouse leave + this._runningIn.stop(); + this._runningOut.play(); + }, + + _makeAnims: function(){ + // summary: + // Pre-generate the animations + + // create two properties: objects, one for each "state" + var _in = {}, _out = {}, cs = domStyle.getComputedStyle(this._target); + for(var p in this.properties){ + var prop = this.properties[p], + deep = lang.isObject(prop), + v = parseFloat(cs[p]) + ; + // note: do not set negative scale for [a list of properties] for IE support + // note: filter:'s are your own issue, too ;) + // FIXME: this.units here is bad, likely. d._toPixelValue ? + _out[p] = { end: v, units:this.units }; + _in[p] = deep ? prop : { end: prop * v, units:this.units }; + } + + this._runningIn = fx.animateProperty({ + node: this._target, + easing: this.easeIn, + duration: this.durationIn, + properties: _in + }); + + this._runningOut = fx.animateProperty({ + node: this._target, + duration: this.durationOut, + easing: this.easeOut, + properties: _out + }); + + this.connect(this._runningIn, "onEnd", lang.hitch(this, "onSelected", this)); + }, + + onClick: function(/* Event */e){ + // summary: + // stub function fired when target is clicked + // connect or override to use. + }, + + onSelected: function(/* Object */e){ + // summary: + // stub function fired when Fisheye Item is fully visible and + // hovered. connect or override use. + } + + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Iterator.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Iterator.js new file mode 100644 index 00000000..864a7296 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Iterator.js @@ -0,0 +1,76 @@ +//>>built +define("dojox/widget/Iterator",["dijit","dojo","dojox","dojo/require!dijit/Declaration"],function(_1,_2,_3){ +_2.provide("dojox.widget.Iterator"); +_2.require("dijit.Declaration"); +_2.experimental("dojox.widget.Iterator"); +_2.declare("dojox.widget.Iterator",[_1.Declaration],{constructor:(function(){ +var _4=0; +return function(){ +this.attrs=[]; +this.children=[]; +this.widgetClass="dojox.widget.Iterator._classes._"+(_4++); +}; +})(),start:0,fetchMax:1000,query:{name:"*"},attrs:[],defaultValue:"",widgetCtor:null,dataValues:[],data:null,store:null,_srcIndex:0,_srcParent:null,_setSrcIndex:function(s){ +this._srcIndex=0; +this._srcParent=s.parentNode; +var ts=s; +while(ts.previousSibling){ +this._srcIndex++; +ts=ts.previousSibling; +} +},postscript:function(p,s){ +this._setSrcIndex(s); +this.inherited("postscript",arguments); +var wc=this.widgetCtor=_2.getObject(this.widgetClass); +this.attrs=_2.map(wc.prototype.templateString.match(/\$\{([^\s\:\}]+)(?:\:([^\s\:\}]+))?\}/g),function(s){ +return s.slice(2,-1); +}); +_2.forEach(this.attrs,function(m){ +wc.prototype[m]=""; +}); +this.update(); +},clear:function(){ +if(this.children.length){ +this._setSrcIndex(this.children[0].domNode); +} +_2.forEach(this.children,"item.destroy();"); +this.children=[]; +},update:function(){ +if(this.store){ +this.fetch(); +}else{ +this.onDataAvailable(this.data||this.dataValues); +} +},_addItem:function(_5,_6){ +if(_2.isString(_5)){ +_5={value:_5}; +} +var _7=new this.widgetCtor(_5); +this.children.push(_7); +_2.place(_7.domNode,this._srcParent,this._srcIndex+_6); +},getAttrValuesObj:function(_8){ +var _9={}; +if(_2.isString(_8)){ +_2.forEach(this.attrs,function(_a){ +_9[_a]=(_a=="value")?_8:this.defaultValue; +},this); +}else{ +_2.forEach(this.attrs,function(_b){ +if(this.store){ +_9[_b]=this.store.getValue(_8,_b)||this.defaultValue; +}else{ +_9[_b]=_8[_b]||this.defaultValue; +} +},this); +} +return _9; +},onDataAvailable:function(_c){ +this.clear(); +_2.forEach(_c,function(_d,_e){ +this._addItem(this.getAttrValuesObj(_d),_e); +},this); +},fetch:function(_f,_10,end){ +this.store.fetch({query:_f||this.query,start:_10||this.start,count:end||this.fetchMax,onComplete:_2.hitch(this,"onDataAvailable")}); +}}); +_3.widget.Iterator._classes={}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Iterator.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Iterator.js.uncompressed.js new file mode 100644 index 00000000..bf3fae06 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Iterator.js.uncompressed.js @@ -0,0 +1,177 @@ +// wrapped by build app +define("dojox/widget/Iterator", ["dijit","dojo","dojox","dojo/require!dijit/Declaration"], function(dijit,dojo,dojox){ +dojo.provide("dojox.widget.Iterator"); +dojo.require("dijit.Declaration"); + +dojo.experimental("dojox.widget.Iterator"); // level: prototype, designed for dijit.chat.demo + +/* + example: + from markup: + | + | + |
    + |
    + | ${name} is a ${type} + |
    + |
    + + example: + programmatic: + | var store = new dojo.data.ItemFileReadStore({ url: "countries.json" }); + | + | var iter = new dojox.widget.Iterator({ + | store: store, + | template: "" + | }); + | + + example: + programmatic from an array of objects: + | var dataArr = [ + | { name: "foo", valueAttr: "bar" }, + | { name: "thinger", valueAttr: "blah" } + | ]; + | + | var iter = new dojox.widget.Iterator({ + | data: dataArr, + | template: "" + | }); + + example: + programmatic from an array of strings: + | var dataArr = [ + | { name: "foo", valueAttr: "bar" }, + | { name: "thinger", valueAttr: "blah" } + | ]; + | + | var iter = new dojox.widget.Iterator({ + | data: dataArr, + | template: "" + | }); + +*/ + + +dojo.declare("dojox.widget.Iterator", + [ dijit.Declaration ], + { + + constructor: (function(){ + var ctr = 0; + return function(){ + this.attrs = []; + this.children = []; + this.widgetClass = "dojox.widget.Iterator._classes._"+(ctr++); + } + })(), + + start: 0, + fetchMax: 1000, + query: { name: "*" }, + attrs: [], + defaultValue: "", + widgetCtor: null, + dataValues: [], // an array of strings + data: null, // should be a reference to an Array + store: null, + _srcIndex: 0, + _srcParent: null, + + _setSrcIndex: function(s){ + this._srcIndex = 0; + this._srcParent = s.parentNode; + var ts = s; + while(ts.previousSibling){ + this._srcIndex++; + ts = ts.previousSibling; + }; + }, + + postscript: function(p, s){ + // figure out the position of the source node in it's parent + this._setSrcIndex(s); + // this._srcIndex = dojo.query(">", this._srcParent).indexOf(s); + + this.inherited("postscript", arguments); + var wc = this.widgetCtor = dojo.getObject(this.widgetClass); + + this.attrs = dojo.map( + wc.prototype.templateString.match(/\$\{([^\s\:\}]+)(?:\:([^\s\:\}]+))?\}/g), + function(s){ return s.slice(2, -1); } + ); + dojo.forEach( + this.attrs, + function(m){ wc.prototype[m] = ""; } + ); + this.update(); + }, + + clear: function(){ + if(this.children.length){ + this._setSrcIndex(this.children[0].domNode); + } + dojo.forEach(this.children, "item.destroy();"); + this.children = []; + }, + + update: function(){ + if(this.store){ + // we're executing a query + this.fetch(); + }else{ + // we came from an array of objects. Easier! + this.onDataAvailable(this.data||this.dataValues); + } + }, + + _addItem: function(/*Object*/config, idx){ + if(dojo.isString(config)){ + config = { value: config }; + } + var widget = new this.widgetCtor(config); + this.children.push(widget); + dojo.place(widget.domNode, this._srcParent, this._srcIndex+idx); + }, + + getAttrValuesObj: function(item){ + var obj = {}; + if(dojo.isString(item)){ + dojo.forEach(this.attrs, function(attr){ + obj[attr] = (attr == "value") ? item : this.defaultValue; + }, this); + }else{ + dojo.forEach(this.attrs, function(attr){ + if(this.store){ + obj[attr] = this.store.getValue(item, attr)||this.defaultValue; + }else{ + obj[attr] = item[attr]||this.defaultValue; + } + }, this); + } + return obj; + }, + + onDataAvailable: function(data){ + this.clear(); + // console.debug(data); + dojo.forEach(data, function(item, idx){ + this._addItem(this.getAttrValuesObj(item), idx); + }, this); + }, + + fetch: function(query, start, end){ + this.store.fetch({ + query: query||this.query, + start: start||this.start, + count: end||this.fetchMax, + onComplete: dojo.hitch(this,"onDataAvailable") + }); + } +}); + +dojox.widget.Iterator._classes = {}; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader.js new file mode 100644 index 00000000..b59ee876 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader.js @@ -0,0 +1,42 @@ +//>>built +define("dojox/widget/Loader",["dijit","dojo","dojox","dojo/require!dijit/_Widget,dijit/_Templated"],function(_1,_2,_3){ +_2.provide("dojox.widget.Loader"); +_2.deprecated("dojox.widget.Loader","","2.0"); +_2.require("dijit._Widget"); +_2.require("dijit._Templated"); +_2.declare("dojox.widget.Loader",[_1._Widget,_1._Templated],{loadIcon:_2.moduleUrl("dojox.widget.Loader","icons/loading.gif"),loadMessage:"Loading ...",hasVisuals:true,attachToPointer:true,duration:125,_offset:16,_pointerConnect:null,_xhrStart:null,_xhrEnd:null,templateString:"
    "+" "+"
    ",postCreate:function(){ +if(!this.hasVisuals){ +this.loadNode.style.display="none"; +}else{ +if(this.attachToPointer){ +_2.removeClass(this.loadNode,"dojoxLoader"); +_2.addClass(this.loadNode,"dojoxLoaderPointer"); +} +this._hide(); +} +this._setMessage(this.loadMessage); +this._xhrStart=this.connect(_2,"_ioSetArgs","_show"); +this._xhrEnd=this.connect(_2.Deferred.prototype,"_fire","_hide"); +},_setMessage:function(_4){ +this.loadMessageNode.innerHTML=_4; +},_putLoader:function(e){ +_1.placeOnScreen(this.loadNode,{x:e.clientX+this._offset,y:e.clientY+this._offset},["TL","BR"]); +},_show:function(){ +_2.publish("Loader",[{message:"started"}]); +if(this.hasVisuals){ +if(this.attachToPointer){ +this._pointerConnect=this.connect(document,"onmousemove","_putLoader"); +} +_2.style(this.loadNode,{opacity:0,display:""}); +_2.fadeIn({node:this.loadNode,duration:this.duration}).play(); +} +},_hide:function(){ +_2.publish("Loader",[{message:"ended"}]); +if(this.hasVisuals){ +if(this.attachToPointer){ +this.disconnect(this._pointerConnect); +} +_2.fadeOut({node:this.loadNode,duration:this.duration,onEnd:_2.partial(_2.style,this.loadNode,"display","none")}).play(); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader.js.uncompressed.js new file mode 100644 index 00000000..5dbe4de5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader.js.uncompressed.js @@ -0,0 +1,116 @@ +// wrapped by build app +define("dojox/widget/Loader", ["dijit","dojo","dojox","dojo/require!dijit/_Widget,dijit/_Templated"], function(dijit,dojo,dojox){ +dojo.provide("dojox.widget.Loader"); +dojo.deprecated("dojox.widget.Loader", "", "2.0"); + +dojo.require("dijit._Widget"); +dojo.require("dijit._Templated"); + +dojo.declare("dojox.widget.Loader", [dijit._Widget,dijit._Templated], { + // summary: + // a configurable global xhr-listener to display + // a loading message during running xhr's or to simply provide + // base-level topic to subscribe to for custom loading messages + + // loadIcon: String + // location to the icon used. + loadIcon: dojo.moduleUrl("dojox.widget.Loader","icons/loading.gif"), + + // loadMessage: String + // string to use for progress loading + loadMessage: 'Loading ...', + + // hasVisuals: Boolean + // true to display a fixed loading message in TR cornder, false to unly provide + // "Loader" topic to subscribe to for your own custom loading message. + hasVisuals: true, + + // attachToPointer + // true to use visual indicator where cursor is + attachToPointer: true, + + // duration: Integer + // time in ms to toggle in/out the visual load indicator + duration: 125, + + // _offset: Integer + // distance in px from the mouse pointer to show attachToPointer avatar + _offset: 16, + + // holder for mousemove connection + _pointerConnect: null, + _xhrStart: null, + _xhrEnd: null, + + templateString: '
    ' + +' ' + +'
    ', + + postCreate: function(){ + // summary: + // setup the loader + + if(!this.hasVisuals){ + this.loadNode.style.display = "none"; // _destroy()? + }else{ + if(this.attachToPointer){ + dojo.removeClass(this.loadNode,"dojoxLoader"); + dojo.addClass(this.loadNode,"dojoxLoaderPointer"); + } + this._hide(); + } + this._setMessage(this.loadMessage); + + // FIXME: create our connections. would be easier, and this might be redundant + // if Deferred published something. XHR published stuff. FIXME to use that. + this._xhrStart = this.connect(dojo,"_ioSetArgs","_show"); + this._xhrEnd = this.connect(dojo.Deferred.prototype,"_fire","_hide"); + + }, + + _setMessage: function(/* String */ message){ + // summary: + // set's the message in the loader + this.loadMessageNode.innerHTML = message; + }, + + _putLoader: function(/* Event */ e){ + // summary: + // place the floating loading element based on mousemove connection position + dijit.placeOnScreen(this.loadNode,{ x: e.clientX+this._offset, y:e.clientY+this._offset }, ["TL","BR"]); + }, + + _show: function(){ + // summary: + // publish and show progress indicator + dojo.publish("Loader",[{ message: 'started' }]); + if(this.hasVisuals){ + if(this.attachToPointer){ + this._pointerConnect = this.connect(document,"onmousemove","_putLoader"); + } + dojo.style(this.loadNode, { + opacity:0, display:"" + }); + dojo.fadeIn({ node: this.loadNode, duration:this.duration }).play(); + } + }, + + _hide: function(){ + // summary: + // publish "xhr ended" and hide progress indicator + dojo.publish("Loader",[{ message: 'ended' }]); + if(this.hasVisuals){ + if(this.attachToPointer){ + this.disconnect(this._pointerConnect); + } + dojo.fadeOut({ + node: this.loadNode, + duration:this.duration, + onEnd: dojo.partial(dojo.style, this.loadNode, "display", "none") + }).play(); + } + } + +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader/Loader.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader/Loader.css new file mode 100644 index 00000000..f209d70d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader/Loader.css @@ -0,0 +1,24 @@ +.dojoxLoaderPointer { + position:absolute; + z-index:999; +} +.dojoxLoader { + float:right; + position:fixed; + height:25px; + width:100px; + top:0; + right:0; + padding:3px; + border:1px solid #ccc; + background:#fff; + min-width:42px; +} +.dojoxLoaderIcon { + height:22px; width:22px; + vertical-align:middle; +} +.dojoxLoaderMessage { + font:8pt Arial,san-serif; + color:#666; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader/icons/loading.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Loader/icons/loading.gif new file mode 100644 index 0000000000000000000000000000000000000000..6e7c8e5ec279bf04593c5f6bd253fc1d5aacbfb1 GIT binary patch literal 751 zcmZ?wbhEHblwgoxI3mUH{Q2|0fB$~{`t|MGx4(Y<`uFeO@87>)zkdDm=g$uxKD>JM z>cxu}|NsC0`0?ZC&!6ADd-vtbmv7&`y?pud&!0cvzkmPq>C>AxZ{ELu|KrDxXV0Di zRWhIg#sA!Xt|7tBjsdPldIrplKv~6~ESwAsQVcpEl^|y@ux2b!>r2U;m$7PH&g*G` zO6noEWZZ+*BIk#$bj;uI`ES$VMf@GRo=&lS<}Ez?>arVa#8?f!F)V6G@Zp=WD{ceZ z!?P0Sa!qgl)?3*7scde^_opulGL?$ms+DWwo2wctlvr6NOk|CoGF3+ro8=8~%QM;b z5L;sJp-EGGoC^~%2vFBw<$d>3onfm#rH(UGB%ZA&9cP5;PEcbcmCy-&X z(4g&$2ut9Bi7Ubd)Xn+$Z0?9fs#clTNU_zKHB{yowslB$sWqFmw%0eROqOhAWa1U& z-)V-cfU4)$RAQ8WQtoT=^iv%-+nKr!36E z!Q!OO#BIskrX<=gCalpnVUiRlgCy7V-hPXTD!lX97pe&+aWja|77^tY=uu-6WZEUM ztzzH)0|zU>4rN7)x_NMizBwu4C?lTkz{w=yn{+{A(gUSJB_1*EhNeRoSmb7AdcRwFPuA~MFA17zI(u`ReB3yw2CQ^%YH3Yc>`Btro)sSFz5ZpX-t-67* V@T%2&w)Sla>OXnvw5lS5H2|lfH!J`E literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthAndYearlyCalendar.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthAndYearlyCalendar.js new file mode 100644 index 00000000..5b6bcd66 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthAndYearlyCalendar.js @@ -0,0 +1,4 @@ +//>>built +define("dojox/widget/MonthAndYearlyCalendar",["dojo/_base/declare","./_CalendarBase","./_CalendarMonthYear"],function(_1,_2,_3){ +return _1("dojox.widget.MonthAndYearlyCalendar",[_2,_3],{}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthAndYearlyCalendar.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthAndYearlyCalendar.js.uncompressed.js new file mode 100644 index 00000000..560112ac --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthAndYearlyCalendar.js.uncompressed.js @@ -0,0 +1,10 @@ +define("dojox/widget/MonthAndYearlyCalendar", [ + "dojo/_base/declare", + "./_CalendarBase", + "./_CalendarMonthYear" +], function(declare, _CalendarBase, _CalendarMonthYear){ + return declare("dojox.widget.MonthAndYearlyCalendar", [_CalendarBase, _CalendarMonthYear], { + // summary: + // A calendar with only a daily view. + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthlyCalendar.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthlyCalendar.js new file mode 100644 index 00000000..159c0533 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthlyCalendar.js @@ -0,0 +1,8 @@ +//>>built +define("dojox/widget/MonthlyCalendar",["dojo/_base/declare","./_CalendarBase","./_CalendarMonth"],function(_1,_2,_3){ +return _1("dojox.widget.MonthlyCalendar",[_2,_3],{_makeDate:function(_4){ +var _5=new Date(); +_5.setMonth(_4); +return _5; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthlyCalendar.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthlyCalendar.js.uncompressed.js new file mode 100644 index 00000000..2f444e42 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MonthlyCalendar.js.uncompressed.js @@ -0,0 +1,15 @@ +define("dojox/widget/MonthlyCalendar", [ + "dojo/_base/declare", + "./_CalendarBase", + "./_CalendarMonth" +], function(declare, _CalendarBase, _CalendarMonth){ + return declare("dojox.widget.MonthlyCalendar", [_CalendarBase, _CalendarMonth], { + // summary: + // A calendar with only a month view. + _makeDate: function(value){ + var now = new Date(); + now.setMonth(value); + return now; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MultiSelectCalendar.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MultiSelectCalendar.js new file mode 100644 index 00000000..0ca09e80 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MultiSelectCalendar.js @@ -0,0 +1,547 @@ +//>>built +require({cache:{"url:dojox/widget/MultiSelectCalendar/MultiSelectCalendar.html":"\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n
    \n\t\t\t\t\"\"\n\t\t\t\t-\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\t\"\"\n\t\t\t\t+\n\t\t\t
    \n\t\t\t\t

    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t

    \n\t\t\t
    "}}); +define("dojox/widget/MultiSelectCalendar",["dojo/main","dijit","dojo/text!./MultiSelectCalendar/MultiSelectCalendar.html","dojo/cldr/supplemental","dojo/date","dojo/date/locale","dijit/_Widget","dijit/_TemplatedMixin","dijit/_WidgetsInTemplateMixin","dijit/_CssStateMixin","dijit/form/DropDownButton","dijit/typematic"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c){ +_1.experimental("dojox.widget.MultiSelectCalendar"); +var _d=_1.declare("dojox.widget.MultiSelectCalendar",[_7,_8,_9,_a],{templateString:_3,widgetsInTemplate:true,value:{},datePackage:"dojo.date",dayWidth:"narrow",tabIndex:"0",returnIsoRanges:false,currentFocus:new Date(),baseClass:"dijitCalendar",cssStateNodes:{"decrementMonth":"dijitCalendarArrow","incrementMonth":"dijitCalendarArrow","previousYearLabelNode":"dijitCalendarPreviousYear","nextYearLabelNode":"dijitCalendarNextYear"},_areValidDates:function(_e){ +for(var _f in this.value){ +valid=(_f&&!isNaN(_f)&&typeof _e=="object"&&_f.toString()!=this.constructor.prototype.value.toString()); +if(!valid){ +return false; +} +} +return true; +},_getValueAttr:function(){ +if(this.returnIsoRanges){ +datesWithRanges=this._returnDatesWithIsoRanges(this._sort()); +return datesWithRanges; +}else{ +return this._sort(); +} +},_setValueAttr:function(_10,_11){ +this.value={}; +if(_1.isArray(_10)){ +_1.forEach(_10,function(_12,i){ +var _13=_12.indexOf("/"); +if(_13==-1){ +this.value[_12]=1; +}else{ +var _14=_1.date.stamp.fromISOString(_12.substr(0,10)); +var _15=_1.date.stamp.fromISOString(_12.substr(11,10)); +this.toggleDate(_14,[],[]); +if((_14-_15)>0){ +this._addToRangeRTL(_14,_15,[],[]); +}else{ +this._addToRangeLTR(_14,_15,[],[]); +} +} +},this); +if(_10.length>0){ +this.focusOnLastDate(_10[_10.length-1]); +} +}else{ +if(_10){ +_10=new this.dateClassObj(_10); +} +if(this._isValidDate(_10)){ +_10.setHours(1,0,0,0); +if(!this.isDisabledDate(_10,this.lang)){ +dateIndex=_1.date.stamp.toISOString(_10).substring(0,10); +this.value[dateIndex]=1; +this.set("currentFocus",_10); +if(_11||typeof _11=="undefined"){ +this.onChange(this.get("value")); +this.onValueSelected(this.get("value")); +} +} +} +} +this._populateGrid(); +},focusOnLastDate:function(_16){ +var _17=_16.indexOf("/"); +var _18,_19; +if(_17==-1){ +lastDate=_16; +}else{ +_18=new _1.date.stamp.fromISOString(_16.substr(0,10)); +_19=new _1.date.stamp.fromISOString(_16.substr(11,10)); +if((_18-_19)>0){ +lastDate=_18; +}else{ +lastDate=_19; +} +} +this.set("currentFocus",lastDate); +},_isValidDate:function(_1a){ +return _1a&&!isNaN(_1a)&&typeof _1a=="object"&&_1a.toString()!=this.constructor.prototype.value.toString(); +},_setText:function(_1b,_1c){ +while(_1b.firstChild){ +_1b.removeChild(_1b.firstChild); +} +_1b.appendChild(_1.doc.createTextNode(_1c)); +},_populateGrid:function(){ +var _1d=new this.dateClassObj(this.currentFocus); +_1d.setDate(1); +var _1e=_1d.getDay(),_1f=this.dateFuncObj.getDaysInMonth(_1d),_20=this.dateFuncObj.getDaysInMonth(this.dateFuncObj.add(_1d,"month",-1)),_21=new this.dateClassObj(),_22=_1.cldr.supplemental.getFirstDayOfWeek(this.lang); +if(_22>_1e){ +_22-=7; +} +this.listOfNodes=_1.query(".dijitCalendarDateTemplate",this.domNode); +this.listOfNodes.forEach(function(_23,i){ +i+=_22; +var _24=new this.dateClassObj(_1d),_25,_26="dijitCalendar",adj=0; +if(i<_1e){ +_25=_20-_1e+i+1; +adj=-1; +_26+="Previous"; +}else{ +if(i>=(_1e+_1f)){ +_25=i-_1e-_1f+1; +adj=1; +_26+="Next"; +}else{ +_25=i-_1e+1; +_26+="Current"; +} +} +if(adj){ +_24=this.dateFuncObj.add(_24,"month",adj); +} +_24.setDate(_25); +if(!this.dateFuncObj.compare(_24,_21,"date")){ +_26="dijitCalendarCurrentDate "+_26; +} +dateIndex=_1.date.stamp.toISOString(_24).substring(0,10); +if(!this.isDisabledDate(_24,this.lang)){ +if(this._isSelectedDate(_24,this.lang)){ +if(this.value[dateIndex]){ +_26="dijitCalendarSelectedDate "+_26; +}else{ +_26=_26.replace("dijitCalendarSelectedDate ",""); +} +} +} +if(this._isSelectedDate(_24,this.lang)){ +_26="dijitCalendarBrowsingDate "+_26; +} +if(this.isDisabledDate(_24,this.lang)){ +_26="dijitCalendarDisabledDate "+_26; +} +var _27=this.getClassForDate(_24,this.lang); +if(_27){ +_26=_27+" "+_26; +} +_23.className=_26+"Month dijitCalendarDateTemplate"; +_23.dijitDateValue=_24.valueOf(); +_1.attr(_23,"dijitDateValue",_24.valueOf()); +var _28=_1.query(".dijitCalendarDateLabel",_23)[0],_29=_24.getDateLocalized?_24.getDateLocalized(this.lang):_24.getDate(); +this._setText(_28,_29); +},this); +var _2a=this.dateLocaleModule.getNames("months","wide","standAlone",this.lang,_1d); +this.monthDropDownButton.dropDown.set("months",_2a); +this.monthDropDownButton.containerNode.innerHTML=(_1.isIE==6?"":"
    "+this.monthDropDownButton.dropDown.domNode.innerHTML+"
    ")+"
    "+_2a[_1d.getMonth()]+"
    "; +var y=_1d.getFullYear()-1; +var d=new this.dateClassObj(); +_1.forEach(["previous","current","next"],function(_2b){ +d.setFullYear(y++); +this._setText(this[_2b+"YearLabelNode"],this.dateLocaleModule.format(d,{selector:"year",locale:this.lang})); +},this); +},goToToday:function(){ +this.set("currentFocus",new this.dateClassObj(),false); +},constructor:function(_2c){ +var _2d=(_2c.datePackage&&(_2c.datePackage!="dojo.date"))?_2c.datePackage+".Date":"Date"; +this.dateClassObj=_1.getObject(_2d,false); +this.datePackage=_2c.datePackage||this.datePackage; +this.dateFuncObj=_1.getObject(this.datePackage,false); +this.dateLocaleModule=_1.getObject(this.datePackage+".locale",false); +},buildRendering:function(){ +this.inherited(arguments); +_1.setSelectable(this.domNode,false); +var _2e=_1.hitch(this,function(_2f,n){ +var _30=_1.query(_2f,this.domNode)[0]; +for(var i=0;i=0){ +_35._adjustDisplay(_38,adj); +} +},0.8,500)); +}; +_36("incrementMonth","month",1); +_36("decrementMonth","month",-1); +_36("nextYearLabelNode","year",1); +_36("previousYearLabelNode","year",-1); +},_adjustDisplay:function(_3a,_3b){ +this._setCurrentFocusAttr(this.dateFuncObj.add(this.currentFocus,_3a,_3b)); +},_setCurrentFocusAttr:function(_3c,_3d){ +var _3e=this.currentFocus,_3f=_3e?_1.query("[dijitDateValue="+_3e.valueOf()+"]",this.domNode)[0]:null; +_3c=new this.dateClassObj(_3c); +_3c.setHours(1,0,0,0); +this._set("currentFocus",_3c); +var _40=_1.date.stamp.toISOString(_3c).substring(0,7); +if(_40!=this.previousMonth){ +this._populateGrid(); +this.previousMonth=_40; +} +var _41=_1.query("[dijitDateValue='"+_3c.valueOf()+"']",this.domNode)[0]; +_41.setAttribute("tabIndex",this.tabIndex); +if(this._focused||_3d){ +_41.focus(); +} +if(_3f&&_3f!=_41){ +if(_1.isWebKit){ +_3f.setAttribute("tabIndex","-1"); +}else{ +_3f.removeAttribute("tabIndex"); +} +} +},focus:function(){ +this._setCurrentFocusAttr(this.currentFocus,true); +},_onMonthSelect:function(_42){ +this.currentFocus=this.dateFuncObj.add(this.currentFocus,"month",_42-this.currentFocus.getMonth()); +this._populateGrid(); +},toggleDate:function(_43,_44,_45){ +var _46=_1.date.stamp.toISOString(_43).substring(0,10); +if(this.value[_46]){ +this.unselectDate(_43,_45); +}else{ +this.selectDate(_43,_44); +} +},selectDate:function(_47,_48){ +var _49=this._getNodeByDate(_47); +var _4a=_49.className; +var _4b=_1.date.stamp.toISOString(_47).substring(0,10); +this.value[_4b]=1; +_48.push(_4b); +_4a="dijitCalendarSelectedDate "+_4a; +_49.className=_4a; +},unselectDate:function(_4c,_4d){ +var _4e=this._getNodeByDate(_4c); +var _4f=_4e.className; +var _50=_1.date.stamp.toISOString(_4c).substring(0,10); +delete (this.value[_50]); +_4d.push(_50); +_4f=_4f.replace("dijitCalendarSelectedDate ",""); +_4e.className=_4f; +},_getNodeByDate:function(_51){ +var _52=new this.dateClassObj(this.listOfNodes[0].dijitDateValue); +var _53=Math.abs(_1.date.difference(_52,_51,"day")); +return this.listOfNodes[_53]; +},_onDayClick:function(evt){ +_1.stopEvent(evt); +for(var _54=evt.target;_54&&!_54.dijitDateValue;_54=_54.parentNode){ +} +if(_54&&!_1.hasClass(_54,"dijitCalendarDisabledDate")){ +value=new this.dateClassObj(_54.dijitDateValue); +if(!this.rangeJustSelected){ +this.toggleDate(value,[],[]); +this.previouslySelectedDay=value; +this.set("currentFocus",value); +this.onValueSelected([_1.date.stamp.toISOString(value).substring(0,10)]); +}else{ +this.rangeJustSelected=false; +this.set("currentFocus",value); +} +} +},_onDayMouseOver:function(evt){ +var _55=_1.hasClass(evt.target,"dijitCalendarDateLabel")?evt.target.parentNode:evt.target; +if(_55&&(_55.dijitDateValue||_55==this.previousYearLabelNode||_55==this.nextYearLabelNode)){ +_1.addClass(_55,"dijitCalendarHoveredDate"); +this._currentNode=_55; +} +},_setEndRangeAttr:function(_56){ +_56=new this.dateClassObj(_56); +_56.setHours(1); +this.endRange=_56; +},_getEndRangeAttr:function(){ +var _57=new this.dateClassObj(this.endRange); +_57.setHours(0,0,0,0); +if(_57.getDate()0){ +this.previousRangeEnd=end; +} +} +if(this.previousRangeStart==null){ +this.previousRangeStart=end; +}else{ +if(_1.date.compare(end,this.previousRangeStart,"date")>0){ +this.previousRangeStart=end; +} +} +this.previouslySelectedDay=_1.date.add(_60,"day",1); +},_removeFromRangeRTL:function(_61,end,_62,_63){ +difference=Math.abs(_1.date.difference(_61,end,"day")); +for(var i=0;i<=difference;i++){ +var _64=_1.date.add(_61,"day",-i); +this.toggleDate(_64,_62,_63); +} +if(this.previousRangeEnd==null){ +this.previousRangeEnd=end; +}else{ +if(_1.date.compare(end,this.previousRangeEnd,"date")<0){ +this.previousRangeEnd=end; +} +} +if(this.previousRangeStart==null){ +this.previousRangeStart=end; +}else{ +if(_1.date.compare(end,this.previousRangeStart,"date")<0){ +this.previousRangeStart=end; +} +} +this.previouslySelectedDay=_1.date.add(_64,"day",-1); +},_addToRangeRTL:function(_65,end,_66,_67){ +difference=Math.abs(_1.date.difference(_65,end,"day")); +for(var i=1;i<=difference;i++){ +var _68=_1.date.add(_65,"day",-i); +this.toggleDate(_68,_66,_67); +} +if(this.previousRangeStart==null){ +this.previousRangeStart=end; +}else{ +if(_1.date.compare(end,this.previousRangeStart,"date")<0){ +this.previousRangeStart=end; +} +} +if(this.previousRangeEnd==null){ +this.previousRangeEnd=_65; +}else{ +if(_1.date.compare(_65,this.previousRangeEnd,"date")>0){ +this.previousRangeEnd=_65; +} +} +this.previouslySelectedDay=_68; +},_addToRangeLTR:function(_69,end,_6a,_6b){ +difference=Math.abs(_1.date.difference(_69,end,"day")); +for(var i=1;i<=difference;i++){ +var _6c=_1.date.add(_69,"day",i); +this.toggleDate(_6c,_6a,_6b); +} +if(this.previousRangeStart==null){ +this.previousRangeStart=_69; +}else{ +if(_1.date.compare(_69,this.previousRangeStart,"date")<0){ +this.previousRangeStart=_69; +} +} +if(this.previousRangeEnd==null){ +this.previousRangeEnd=end; +}else{ +if(_1.date.compare(end,this.previousRangeEnd,"date")>0){ +this.previousRangeEnd=end; +} +} +this.previouslySelectedDay=_6c; +},_selectRange:function(){ +var _6d=[]; +var _6e=[]; +var _6f=this.previouslySelectedDay; +var end=this.get("endRange"); +if(!this.previousRangeStart&&!this.previousRangeEnd){ +removingFromRange=false; +}else{ +if((_1.date.compare(end,this.previousRangeStart,"date")<0)||(_1.date.compare(end,this.previousRangeEnd,"date")>0)){ +removingFromRange=false; +}else{ +removingFromRange=true; +} +} +if(removingFromRange==true){ +if(_1.date.compare(end,_6f,"date")<0){ +this._removeFromRangeRTL(_6f,end,_6d,_6e); +}else{ +this._removeFromRangeLTR(_6f,end,_6d,_6e); +} +}else{ +if(_1.date.compare(end,_6f,"date")<0){ +this._addToRangeRTL(_6f,end,_6d,_6e); +}else{ +this._addToRangeLTR(_6f,end,_6d,_6e); +} +} +if(_6d.length>0){ +this.onValueSelected(_6d); +} +if(_6e.length>0){ +this.onValueUnselected(_6e); +} +this.rangeJustSelected=true; +},onValueSelected:function(_70){ +},onValueUnselected:function(_71){ +},onChange:function(_72){ +},_isSelectedDate:function(_73,_74){ +dateIndex=_1.date.stamp.toISOString(_73).substring(0,10); +return this.value[dateIndex]; +},isDisabledDate:function(_75,_76){ +},getClassForDate:function(_77,_78){ +},_sort:function(){ +if(this.value=={}){ +return []; +} +var _79=[]; +for(var _7a in this.value){ +_79.push(_7a); +} +_79.sort(function(a,b){ +var _7b=new Date(a),_7c=new Date(b); +return _7b-_7c; +}); +return _79; +},_returnDatesWithIsoRanges:function(_7d){ +var _7e=[]; +if(_7d.length>1){ +var _7f=false,_80=0,_81=null,_82=null,_83=_1.date.stamp.fromISOString(_7d[0]); +for(var i=1;i<_7d.length+1;i++){ +currentDate=_1.date.stamp.fromISOString(_7d[i]); +if(_7f){ +difference=Math.abs(_1.date.difference(_83,currentDate,"day")); +if(difference==1){ +_82=currentDate; +}else{ +range=_1.date.stamp.toISOString(_81).substring(0,10)+"/"+_1.date.stamp.toISOString(_82).substring(0,10); +_7e.push(range); +_7f=false; +} +}else{ +difference=Math.abs(_1.date.difference(_83,currentDate,"day")); +if(difference==1){ +_7f=true; +_81=_83; +_82=currentDate; +}else{ +_7e.push(_1.date.stamp.toISOString(_83).substring(0,10)); +} +} +_83=currentDate; +} +return _7e; +}else{ +return _7d; +} +}}); +var _84=_d._MonthDropDown=_1.declare("dojox.widget._MonthDropDown",[_7,_8,_9],{months:[],templateString:"
    ",_setMonthsAttr:function(_85){ +this.domNode.innerHTML=_1.map(_85,function(_86,idx){ +return _86?"
    "+_86+"
    ":""; +}).join(""); +},_onClick:function(evt){ +this.onChange(_1.attr(evt.target,"month")); +},onChange:function(_87){ +},_onMenuHover:function(evt){ +_1.toggleClass(evt.target,"dijitCalendarMonthLabelHover",evt.type=="mouseover"); +}}); +return _d; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MultiSelectCalendar.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MultiSelectCalendar.js.uncompressed.js new file mode 100644 index 00000000..f6a3e2a3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MultiSelectCalendar.js.uncompressed.js @@ -0,0 +1,983 @@ +require({cache:{ +'url:dojox/widget/MultiSelectCalendar/MultiSelectCalendar.html':"\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n\t\n\t\t\n\t\t\t\n\t\t\n\t\n
    \n\t\t\t\t\"\"\n\t\t\t\t-\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\t\"\"\n\t\t\t\t+\n\t\t\t
    \n\t\t\t\t

    \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t

    \n\t\t\t
    "}}); +define("dojox/widget/MultiSelectCalendar", [ + "dojo/main", "dijit", + "dojo/text!./MultiSelectCalendar/MultiSelectCalendar.html", + "dojo/cldr/supplemental", + "dojo/date", + "dojo/date/locale", + "dijit/_Widget", "dijit/_TemplatedMixin", "dijit/_WidgetsInTemplateMixin", + "dijit/_CssStateMixin", "dijit/form/DropDownButton", "dijit/typematic" +], + function(dojo, dijit, template, supplemental, date, locale, + _Widget, _TemplatedMixin, _WidgetsInTemplateMixin, + _CssStateMixin, DropDownButton, typematic) { + +dojo.experimental("dojox.widget.MultiSelectCalendar"); + +var MultiSelectCalendar = dojo.declare( + "dojox.widget.MultiSelectCalendar", + [_Widget, _TemplatedMixin, _WidgetsInTemplateMixin, _CssStateMixin], + { + // summary: + // A simple GUI for choosing several dates in the context of a monthly calendar. + // + // description: + // A simple GUI for choosing several dates in the context of a monthly calendar. + // This widget serialises its selected dates to ISO dates or ISO ranges of dates, + // depending on developer selection + // Note that it accepts an Array of ISO dates as its input + // + // example: + // | var calendar = new dojox.widget.MultiSelectCalendar({value: ['2011-05-07,'2011-05-08',2011-05-09','2011-05-23']}, dojo.byId("calendarNode")); + // + // example: + // |
    + + templateString: template, + widgetsInTemplate: true, + + // value: Date + // The currently selected Dates, initially set to an empty object to indicate no selection. + value: {}, + + // datePackage: String + // JavaScript namespace to find Calendar routines. Uses Gregorian Calendar routines + // at dojo.date by default. + datePackage: "dojo.date", + + // dayWidth: String + // How to represent the days of the week in the calendar header. See dojo.date.locale + dayWidth: "narrow", + + // tabIndex: String + // Order fields are traversed when user hits the tab key + tabIndex: "0", + + // if returnIsoRanges is true, the selected dates will be returned as ISO ranges + // else each selected date will be returned sequentially + returnIsoRanges : false, + + // currentFocus: Date + // Date object containing the currently focused date, or the date which would be focused + // if the calendar itself was focused. Also indicates which year and month to display, + // i.e. the current "page" the calendar is on. + currentFocus: new Date(), + + baseClass:"dijitCalendar", + + cssStateNodes: { + "decrementMonth": "dijitCalendarArrow", + "incrementMonth": "dijitCalendarArrow", + "previousYearLabelNode": "dijitCalendarPreviousYear", + "nextYearLabelNode": "dijitCalendarNextYear" + }, + + _areValidDates: function(/*Date*/ value){ + // summary: + // Runs various tests on each selected date, checking that they're a valid date, rather + // than blank or NaN. + // tags: + // private + for (var selDate in this.value){ + valid = (selDate && !isNaN(selDate) && typeof value == "object" && selDate.toString() != this.constructor.prototype.value.toString()); + if(!valid){ return false; } + } + return true; + }, + + _getValueAttr: function(){ + // summary: + // this method returns the list of selected dates in an array structure + if(this.returnIsoRanges){ + datesWithRanges = this._returnDatesWithIsoRanges(this._sort()); + return datesWithRanges; + }else{ + return this._sort(); + } + }, + + _setValueAttr: function(/*Date|Number|array*/ value, /*Boolean*/ priorityChange){ + // summary: + // Support set("value", ...) + // description: + // Set the passed dates to the selected date and updates the value of this widget + // to reflect that + // value: + // Can be a Date, the number of milliseconds since 1970 or an array of ISO dates (['2011-07-01', '2001-06-01']). + // tags: + // protected + + //If we are passed an array of ISO dates, we are going to mark each date in the list as selected + //We perform the normalization of the passed date + this.value = {}; + if(dojo.isArray(value)) { + dojo.forEach(value,function(element, i){ + //Each element of the array could be a date or a date range + var slashPosition = element.indexOf("/"); + if(slashPosition == -1){ + //The element is a single date + this.value[element] = 1; + }else{ + //We have a slash somewhere in the string so this is an ISO date range + var dateA = dojo.date.stamp.fromISOString(element.substr(0,10)); + var dateB = dojo.date.stamp.fromISOString(element.substr(11,10)); + + this.toggleDate(dateA,[],[]); + if((dateA - dateB) > 0){ + //We select the first date then the rest is handled as if we had selected a range + this._addToRangeRTL(dateA, dateB, [], []); + }else{ + //We select the first date then the rest is handled as if we had selected a range + this._addToRangeLTR(dateA, dateB, [], []); + } + } + },this); + if(value.length > 0){ + this.focusOnLastDate(value[value.length-1]); + } + }else{ + if(value){ + // convert from Number to Date, or make copy of Date object so that setHours() call below + // doesn't affect original value + value = new this.dateClassObj(value); + } + if(this._isValidDate(value)){ + value.setHours(1, 0, 0, 0); // round to nearest day (1am to avoid issues when DST shift occurs at midnight, see #8521, #9366) + + if(!this.isDisabledDate(value, this.lang)){ + dateIndex = dojo.date.stamp.toISOString(value).substring(0,10); + + this.value[dateIndex] = 1; + + // Set focus cell to the new value. Arguably this should only happen when there isn't a current + // focus point. This will also repopulate the grid, showing the new selected value (and possibly + // new month/year). + this.set("currentFocus", value); + + if(priorityChange || typeof priorityChange == "undefined"){ + this.onChange(this.get('value')); + this.onValueSelected(this.get('value')); // remove in 2.0 + } + } + } + } + this._populateGrid(); + }, + focusOnLastDate : function(lastElement){ + //We put the focus on the last date so that when the user re-clicks on the calendar it will be + //on the proper month + var slashPositionLastDate = lastElement.indexOf("/"); + var dateA,dateB; + if(slashPositionLastDate == -1){ + //This is a singleDate + lastDate = lastElement; + }else{ + dateA=new dojo.date.stamp.fromISOString(lastElement.substr(0,10)); + dateB=new dojo.date.stamp.fromISOString(lastElement.substr(11,10)); + if((dateA - dateB) > 0){ + lastDate = dateA; + }else{ + lastDate = dateB; + } + } + this.set("currentFocus", lastDate); + }, + _isValidDate: function(/*Date*/ value){ + // summary: + // Runs various tests on the value, checking that it's a valid date, rather + // than blank or NaN. + // tags: + // private + return value && !isNaN(value) && typeof value == "object" && + value.toString() != this.constructor.prototype.value.toString(); + }, + _setText: function(node, text){ + // summary: + // This just sets the content of node to the specified text. + // Can't do "node.innerHTML=text" because of an IE bug w/tables, see #3434. + // tags: + // private + while(node.firstChild){ + node.removeChild(node.firstChild); + } + node.appendChild(dojo.doc.createTextNode(text)); + }, + + _populateGrid: function(){ + // summary: + // Fills in the calendar grid with each day (1-31) + // tags: + // private + + var month = new this.dateClassObj(this.currentFocus); + month.setDate(1); + + var firstDay = month.getDay(), + daysInMonth = this.dateFuncObj.getDaysInMonth(month), + daysInPreviousMonth = this.dateFuncObj.getDaysInMonth(this.dateFuncObj.add(month, "month", -1)), + today = new this.dateClassObj(), + dayOffset = dojo.cldr.supplemental.getFirstDayOfWeek(this.lang); + if(dayOffset > firstDay){ dayOffset -= 7; } + + //List of all 42 displayed days in the calendar + this.listOfNodes = dojo.query(".dijitCalendarDateTemplate", this.domNode); + + // Iterate through dates in the calendar and fill in date numbers and style info + this.listOfNodes.forEach(function(template, i){ + i += dayOffset; + var date = new this.dateClassObj(month), + number, clazz = "dijitCalendar", adj = 0; + + if(i < firstDay){ + number = daysInPreviousMonth - firstDay + i + 1; + adj = -1; + clazz += "Previous"; + }else if(i >= (firstDay + daysInMonth)){ + number = i - firstDay - daysInMonth + 1; + adj = 1; + clazz += "Next"; + }else{ + number = i - firstDay + 1; + clazz += "Current"; + } + + if(adj){ + date = this.dateFuncObj.add(date, "month", adj); + } + date.setDate(number); + + if(!this.dateFuncObj.compare(date, today, "date")){ + clazz = "dijitCalendarCurrentDate " + clazz; + } + + //If the date falls outside of the min or max constraints, we do nothing + dateIndex = dojo.date.stamp.toISOString(date).substring(0,10); + + if(!this.isDisabledDate(date, this.lang)){ + //If the node is already selected, the user clicking on it once more will deselect it + //so we will destroy it in the value object. If the date was not previously selected + //The user wants to select it so we add it to the value object + if(this._isSelectedDate(date, this.lang)){ + if(this.value[dateIndex]){ + clazz = "dijitCalendarSelectedDate " + clazz; + }else{ + clazz = clazz.replace("dijitCalendarSelectedDate ",""); + } + } + } + if(this._isSelectedDate(date, this.lang)){ + clazz = "dijitCalendarBrowsingDate " + clazz; + } + + if(this.isDisabledDate(date, this.lang)){ + clazz = "dijitCalendarDisabledDate " + clazz; + } + + var clazz2 = this.getClassForDate(date, this.lang); + if(clazz2){ + clazz = clazz2 + " " + clazz; + } + + template.className = clazz + "Month dijitCalendarDateTemplate"; + template.dijitDateValue = date.valueOf(); // original code + dojo.attr(template, "dijitDateValue", date.valueOf()); // so I can dojo.query() it + var label = dojo.query(".dijitCalendarDateLabel", template)[0], + text = date.getDateLocalized ? date.getDateLocalized(this.lang) : date.getDate(); + this._setText(label, text); + }, this); + + // Repopulate month drop down list based on current year. + // Need to do this to hide leap months in Hebrew calendar. + var monthNames = this.dateLocaleModule.getNames('months', 'wide', 'standAlone', this.lang, month); + this.monthDropDownButton.dropDown.set("months", monthNames); + + // Set name of current month and also fill in spacer element with all the month names + // (invisible) so that the maximum width will affect layout. But not on IE6 because then + // the center overlaps the right (due to a browser bug). + this.monthDropDownButton.containerNode.innerHTML = + (dojo.isIE == 6 ? "" : "
    " + this.monthDropDownButton.dropDown.domNode.innerHTML + "
    ") + + "
    " + monthNames[month.getMonth()] + "
    "; + + // Fill in localized prev/current/next years + var y = month.getFullYear() - 1; + var d = new this.dateClassObj(); + dojo.forEach(["previous", "current", "next"], function(name){ + d.setFullYear(y++); + this._setText(this[name+"YearLabelNode"], + this.dateLocaleModule.format(d, {selector:'year', locale:this.lang})); + }, this); + }, + + goToToday: function(){ + // summary: + // We go to today but we do no select it + this.set('currentFocus', new this.dateClassObj(), false); + }, + + constructor: function(/*Object*/args){ + var dateClass = (args.datePackage && (args.datePackage != "dojo.date"))? args.datePackage + ".Date" : "Date"; + this.dateClassObj = dojo.getObject(dateClass, false); + this.datePackage = args.datePackage || this.datePackage; + this.dateFuncObj = dojo.getObject(this.datePackage, false); + this.dateLocaleModule = dojo.getObject(this.datePackage + ".locale", false); + }, + + buildRendering: function(){ + this.inherited(arguments); + dojo.setSelectable(this.domNode, false); + + var cloneClass = dojo.hitch(this, function(clazz, n){ + var template = dojo.query(clazz, this.domNode)[0]; + for(var i=0; i= 0){ _this._adjustDisplay(dateProp, adj); } + }, 0.8, 500) + ); + }; + typematic("incrementMonth", "month", 1); + typematic("decrementMonth", "month", -1); + typematic("nextYearLabelNode", "year", 1); + typematic("previousYearLabelNode", "year", -1); + }, + + _adjustDisplay: function(/*String*/ part, /*int*/ amount){ + // summary: + // Moves calendar forwards or backwards by months or years + // part: + // "month" or "year" + // amount: + // Number of months or years + // tags: + // private + this._setCurrentFocusAttr(this.dateFuncObj.add(this.currentFocus, part, amount)); + }, + + _setCurrentFocusAttr: function(/*Date*/ date, /*Boolean*/ forceFocus){ + // summary: + // If the calendar currently has focus, then focuses specified date, + // changing the currently displayed month/year if necessary. + // If the calendar doesn't have focus, updates currently + // displayed month/year, and sets the cell that will get focus. + // forceFocus: + // If true, will focus() the cell even if calendar itself doesn't have focus + + var oldFocus = this.currentFocus, + oldCell = oldFocus ? dojo.query("[dijitDateValue=" + oldFocus.valueOf() + "]", this.domNode)[0] : null; + + // round specified value to nearest day (1am to avoid issues when DST shift occurs at midnight, see #8521, #9366) + date = new this.dateClassObj(date); + date.setHours(1, 0, 0, 0); + + this._set("currentFocus", date); + var currentMonth = dojo.date.stamp.toISOString(date).substring(0,7); + //We only redraw the grid if we're in a new month + if(currentMonth != this.previousMonth){ + this._populateGrid(); + this.previousMonth = currentMonth; + } + + // set tabIndex=0 on new cell, and focus it (but only if Calendar itself is focused) + var newCell = dojo.query("[dijitDateValue='" + date.valueOf() + "']", this.domNode)[0]; + newCell.setAttribute("tabIndex", this.tabIndex); + if(this._focused || forceFocus){ + newCell.focus(); + } + + // set tabIndex=-1 on old focusable cell + if(oldCell && oldCell != newCell){ + if(dojo.isWebKit){ // see #11064 about webkit bug + oldCell.setAttribute("tabIndex", "-1"); + }else{ + oldCell.removeAttribute("tabIndex"); + } + } + }, + + focus: function(){ + // summary: + // Focus the calendar by focusing one of the calendar cells + this._setCurrentFocusAttr(this.currentFocus, true); + }, + + _onMonthSelect: function(/*Number*/ newMonth){ + // summary: + // Handler for when user selects a month from the drop down list + // tags: + // protected + + // move to selected month, bounding by the number of days in the month + // (ex: dec 31 --> jan 28, not jan 31) + this.currentFocus = this.dateFuncObj.add(this.currentFocus, "month", + newMonth - this.currentFocus.getMonth()); + this._populateGrid(); + }, + + toggleDate : function(/*date*/ dateToToggle, /*array of dates*/ selectedDates, /*array of dates*/ unselectedDates){ + + //Obtain CSS class before toggling if necessary + var dateIndex = dojo.date.stamp.toISOString(dateToToggle).substring(0,10); + //If previously selected we unselect and vice-versa + if(this.value[dateIndex]){ + this.unselectDate(dateToToggle, unselectedDates); + }else{ + this.selectDate(dateToToggle, selectedDates); + } + }, + + selectDate : function(/*date*/ dateToSelect, /*array of dates*/ selectedDates){ + //Selects the passed iso date, changes its class and records it in the selected dates array + var node = this._getNodeByDate(dateToSelect); + var clazz = node.className; + var dateIndex = dojo.date.stamp.toISOString(dateToSelect).substring(0,10); + this.value[dateIndex] = 1; + selectedDates.push(dateIndex); + clazz = "dijitCalendarSelectedDate " + clazz; + //We update CSS class + node.className = clazz; + }, + + unselectDate : function(/*date*/ dateToUnselect, /*array of dates*/ unselectedDates){ + //Unselects the passed iso date, changes its class and records it in the unselected dates array + var node = this._getNodeByDate(dateToUnselect); + var clazz = node.className; + var dateIndex = dojo.date.stamp.toISOString(dateToUnselect).substring(0,10); + delete(this.value[dateIndex]); + unselectedDates.push(dateIndex); + clazz = clazz.replace("dijitCalendarSelectedDate ",""); + //We update CSS class + node.className = clazz; + }, + + _getNodeByDate : function(/*ISO date*/ dateNode){ + //return the node that corresponds to the passed ISO date + var firstDate = new this.dateClassObj(this.listOfNodes[0].dijitDateValue); + var difference = Math.abs(dojo.date.difference(firstDate, dateNode, "day")); + return this.listOfNodes[difference]; + }, + + _onDayClick: function(/*Event*/ evt){ + // summary: + // Handler for day clicks, selects the date if appropriate + // tags: + // protected + + //If we coming out of selecting a range, we need to skip this onDayClick or else we + //are going to deselect a date that has just been selected or deselect one that just was + //selected + dojo.stopEvent(evt); + for(var node = evt.target; node && !node.dijitDateValue; node = node.parentNode); + if(node && !dojo.hasClass(node, "dijitCalendarDisabledDate")){ + value = new this.dateClassObj(node.dijitDateValue); + if(!this.rangeJustSelected){ + this.toggleDate(value,[],[]); + //To record the date that was selected prior to the one currently selected + //needed in the event we are selecting a range of dates + this.previouslySelectedDay = value; + this.set("currentFocus", value); + this.onValueSelected([dojo.date.stamp.toISOString(value).substring(0,10)]); + + }else{ + this.rangeJustSelected = false; + this.set("currentFocus", value); + } + } + }, + + _onDayMouseOver: function(/*Event*/ evt){ + // summary: + // Handler for mouse over events on days, sets hovered style + // tags: + // protected + + // event can occur on or the inside the td, + // set node to the . + var node = + dojo.hasClass(evt.target, "dijitCalendarDateLabel") ? + evt.target.parentNode : + evt.target; + + if(node && (node.dijitDateValue || node == this.previousYearLabelNode || node == this.nextYearLabelNode) ){ + dojo.addClass(node, "dijitCalendarHoveredDate"); + this._currentNode = node; + } + }, + _setEndRangeAttr: function(/*Date*/ value){ + // description: + // records the end of a date range + // tags: + // protected + value = new this.dateClassObj(value); + value.setHours(1); // to avoid issues when DST shift occurs at midnight, see #8521, #9366 + this.endRange = value; + }, + _getEndRangeAttr: function(){ + // Returns the EndRange date that is set when selecting a range + var value = new this.dateClassObj(this.endRange); + value.setHours(0, 0, 0, 0); // return midnight, local time for back-compat + + // If daylight savings pushes midnight to the previous date, fix the Date + // object to point at 1am so it will represent the correct day. See #9366 + if(value.getDate() < this.endRange.getDate()){ + value = this.dateFuncObj.add(value, "hour", 1); + } + return value; + }, + + _onDayMouseOut: function(/*Event*/ evt){ + // summary: + // Handler for mouse out events on days, clears hovered style + // tags: + // protected + + if(!this._currentNode){ return; } + + // if mouse out occurs moving from to inside , ignore it + if(evt.relatedTarget && evt.relatedTarget.parentNode == this._currentNode){ return; } + var cls = "dijitCalendarHoveredDate"; + if(dojo.hasClass(this._currentNode, "dijitCalendarActiveDate")) { + cls += " dijitCalendarActiveDate"; + } + dojo.removeClass(this._currentNode, cls); + this._currentNode = null; + }, + _onDayMouseDown: function(/*Event*/ evt){ + var node = evt.target.parentNode; + if(node && node.dijitDateValue){ + dojo.addClass(node, "dijitCalendarActiveDate"); + this._currentNode = node; + } + //if shift is pressed, we know the user is selecting a range, + //in which case we are going to select a range of date + if(evt.shiftKey && this.previouslySelectedDay){ + //necessary to know whether or not we are in the process of selecting a range of dates + this.selectingRange = true; + this.set('endRange', node.dijitDateValue); + this._selectRange(); + }else{ + this.selectingRange = false; + this.previousRangeStart = null; + this.previousRangeEnd = null; + } + }, + + _onDayMouseUp: function(/*Event*/ evt){ + var node = evt.target.parentNode; + if(node && node.dijitDateValue){ + dojo.removeClass(node, "dijitCalendarActiveDate"); + } + }, + +//TODO: use typematic + handleKey: function(/*Event*/ evt){ + // summary: + // Provides keyboard navigation of calendar. + // description: + // Called from _onKeyDown() to handle keypress on a stand alone Calendar, + // and also from `dijit.form._DateTimeTextBox` to pass a keypress event + // from the `dijit.form.DateTextBox` to be handled in this widget + // returns: + // False if the key was recognized as a navigation key, + // to indicate that the event was handled by Calendar and shouldn't be propogated + // tags: + // protected + var dk = dojo.keys, + increment = -1, + interval, + newValue = this.currentFocus; + switch(evt.keyCode){ + case dk.RIGHT_ARROW: + increment = 1; + //fallthrough... + case dk.LEFT_ARROW: + interval = "day"; + if(!this.isLeftToRight()){ increment *= -1; } + break; + case dk.DOWN_ARROW: + increment = 1; + //fallthrough... + case dk.UP_ARROW: + interval = "week"; + break; + case dk.PAGE_DOWN: + increment = 1; + //fallthrough... + case dk.PAGE_UP: + interval = evt.ctrlKey || evt.altKey ? "year" : "month"; + break; + case dk.END: + // go to the next month + newValue = this.dateFuncObj.add(newValue, "month", 1); + // subtract a day from the result when we're done + interval = "day"; + //fallthrough... + case dk.HOME: + newValue = new this.dateClassObj(newValue); + newValue.setDate(1); + break; + case dk.ENTER: + case dk.SPACE: + if(evt.shiftKey && this.previouslySelectedDay){ + this.selectingRange = true; + this.set('endRange', newValue); + this._selectRange(); + }else{ + this.selectingRange = false; + this.toggleDate(newValue,[],[]); + //We record the selected date as the previous one + //In case we are selecting the first date of a range + this.previouslySelectedDay = newValue; + this.previousRangeStart = null; + this.previousRangeEnd = null; + this.onValueSelected([dojo.date.stamp.toISOString(newValue).substring(0,10)]); + + } + break; + default: + return true; + } + + if(interval){ + newValue = this.dateFuncObj.add(newValue, interval, increment); + } + + this.set("currentFocus", newValue); + + return false; + }, + + _onKeyDown: function(/*Event*/ evt){ + // summary: + // For handling keypress events on a stand alone calendar + if(!this.handleKey(evt)){ + dojo.stopEvent(evt); + } + }, + + _removeFromRangeLTR : function(/*date*/ beginning, /*date*/ end, /*array*/selectedDates, /*array*/unselectedDates){ + //In this method we remove some dates from a range from left to right + difference = Math.abs(dojo.date.difference(beginning, end, "day")); + for(var i = 0; i <= difference; i++){ + var nextDay = dojo.date.add(beginning, 'day',i); + this.toggleDate(nextDay, selectedDates, unselectedDates); + } + if(this.previousRangeEnd == null){ + //necessary to keep track of the previous range's end date + this.previousRangeEnd = end; + }else{ + if(dojo.date.compare(end, this.previousRangeEnd, 'date') > 0 ) + this.previousRangeEnd = end; + } + if(this.previousRangeStart == null){ + //necessary to keep track of the previous range's start date + this.previousRangeStart = end; + }else{ + if(dojo.date.compare(end, this.previousRangeStart, 'date') > 0 ) + this.previousRangeStart = end; + } + this.previouslySelectedDay = dojo.date.add(nextDay, 'day',1); + }, + _removeFromRangeRTL : function(/*date*/ beginning, /*date*/ end, /*array*/selectedDates, /*array*/unselectedDates){ + //If the end of the range is earlier than the beginning (back in time), + //we are going to start from the end and move backward + + difference = Math.abs(dojo.date.difference(beginning, end, "day")); + for(var i = 0; i <= difference; i++){ + var nextDay = dojo.date.add(beginning, 'day',-i); + this.toggleDate(nextDay, selectedDates, unselectedDates); + } + if(this.previousRangeEnd == null){ + this.previousRangeEnd = end; + }else{ + if(dojo.date.compare(end, this.previousRangeEnd, 'date') < 0 ){ + this.previousRangeEnd = end; + } + } + if(this.previousRangeStart == null){ + this.previousRangeStart = end; + }else{ + if(dojo.date.compare(end, this.previousRangeStart, 'date') < 0 ){ + this.previousRangeStart = end; + } + } + this.previouslySelectedDay = dojo.date.add(nextDay, 'day',-1); + }, + _addToRangeRTL : function(/*date*/ beginning, /*date*/ end, /*array*/selectedDates, /*array*/unselectedDates){ + + difference = Math.abs(dojo.date.difference(beginning, end, "day")); + //If the end of the range is earlier than the beginning (back in time), + //we are going to start from the end and move backward + for(var i = 1; i <= difference; i++){ + var nextDay = dojo.date.add(beginning, 'day',-i); + this.toggleDate(nextDay, selectedDates, unselectedDates); + } + + if(this.previousRangeStart == null){ + this.previousRangeStart = end; + }else{ + if(dojo.date.compare(end, this.previousRangeStart, 'date') < 0 ){ + this.previousRangeStart = end; + } + } + if(this.previousRangeEnd == null){ + this.previousRangeEnd = beginning; + }else{ + if(dojo.date.compare(beginning, this.previousRangeEnd, 'date') > 0 ){ + this.previousRangeEnd = beginning; + } + } + this.previouslySelectedDay = nextDay; + }, + _addToRangeLTR : function(/*date*/ beginning, /*date*/ end, /*array*/selectedDates, /*array*/unselectedDates){ + //If the end of the range is later than the beginning, + //adding dates from left to right + difference = Math.abs(dojo.date.difference(beginning, end, "day")); + for(var i = 1; i <= difference; i++){ + var nextDay = dojo.date.add(beginning, 'day',i); + this.toggleDate(nextDay, selectedDates, unselectedDates); + } + if(this.previousRangeStart == null){ + this.previousRangeStart = beginning; + }else{ + if(dojo.date.compare(beginning, this.previousRangeStart, 'date') < 0 ){ + this.previousRangeStart = beginning; + } + } + if(this.previousRangeEnd == null){ + this.previousRangeEnd = end; + }else{ + if(dojo.date.compare(end, this.previousRangeEnd, 'date') > 0 ){ + this.previousRangeEnd = end; + } + } + this.previouslySelectedDay = nextDay; + }, + _selectRange : function(){ + //This method will toggle the dates in the selected range. + var selectedDates = []; //Will gather the list of ISO dates that are selected + var unselectedDates = []; //Will gather the list of ISO dates that are unselected + var beginning = this.previouslySelectedDay; + var end = this.get('endRange'); + + if(!this.previousRangeStart && !this.previousRangeEnd){ + removingFromRange = false; + }else{ + if((dojo.date.compare(end, this.previousRangeStart, 'date') < 0) || (dojo.date.compare(end, this.previousRangeEnd, 'date') > 0)){ + //We are adding to range + removingFromRange = false; + }else{// Otherwise we are removing from the range + removingFromRange = true; + } + } + if(removingFromRange == true){ + if(dojo.date.compare(end, beginning, 'date') < 0){ + //We are removing from the range, starting from the end (Right to left) + this._removeFromRangeRTL(beginning, end, selectedDates, unselectedDates); + }else{ + //The end of the range is later in time than the beginning: We go from left to right + this._removeFromRangeLTR(beginning, end, selectedDates, unselectedDates); + } + }else{ + //We are adding to the range + if(dojo.date.compare(end, beginning, 'date') < 0){ + this._addToRangeRTL(beginning, end, selectedDates, unselectedDates); + }else{ + this._addToRangeLTR(beginning, end, selectedDates, unselectedDates); + } + } + //We call the extension point with the changed dates + if(selectedDates.length > 0){ + this.onValueSelected(selectedDates); + } + if(unselectedDates.length > 0){ + this.onValueUnselected(unselectedDates); + } + this.rangeJustSelected = true; //Indicates that we just selected a range. + }, + + onValueSelected: function(/*array of ISO dates*/ dates){ + // summary: + // Notification that a date cell or more were selected. + // description: + // Passes on the list of ISO dates that are selected + // tags: + // protected + }, + + onValueUnselected: function(/*array of ISO dates*/ dates){ + // summary: + // Notification that a date cell or more were unselected. + // description: + // Passes on the list of ISO dates that are unselected + // tags: + // protected + }, + onChange: function(/*Date*/ date){ + // summary: + // Called only when the selected date has changed + }, + + _isSelectedDate: function(/*Date*/ dateObject, /*String?*/ locale){ + // summary: + // Returns true if the passed date is part of the selected dates of the calendar + + dateIndex = dojo.date.stamp.toISOString(dateObject).substring(0,10); + return this.value[dateIndex]; + }, + + isDisabledDate: function(/*Date*/ dateObject, /*String?*/ locale){ + // summary: + // May be overridden to disable certain dates in the calendar e.g. `isDisabledDate=dojo.date.locale.isWeekend` + // tags: + // extension +/*===== + return false; // Boolean +=====*/ + }, + + getClassForDate: function(/*Date*/ dateObject, /*String?*/ locale){ + // summary: + // May be overridden to return CSS classes to associate with the date entry for the given dateObject, + // for example to indicate a holiday in specified locale. + // tags: + // extension + +/*===== + return ""; // String +=====*/ + }, + _sort : function(){ + //This function returns a sorted version of the value array that represents the selected dates. + if(this.value == {}){return [];} + //We create an array of date objects with the dates that were selected by the user. + var selectedDates = []; + for (var selDate in this.value){ + selectedDates.push(selDate); + } + //Actual sorting + selectedDates.sort(function(a, b){ + var dateA=new Date(a), dateB=new Date(b); + return dateA-dateB; + }); + return selectedDates; + }, + _returnDatesWithIsoRanges : function(selectedDates /*Array of sorted ISO dates*/){ + //this method receives a sorted array of dates and returns an array of dates and date ranges where + //such range exist. For instance when passed with selectedDates = ['2010-06-14', '2010-06-15', '2010-12-25'] + //it would return [2010-06-14/2010-06-15, '2010-12-25'] + var returnDates = []; + if(selectedDates.length > 1){ + //initialisation + var weHaveRange = false, + rangeCount = 0, + startRange = null, + lastDayRange = null, + previousDate = dojo.date.stamp.fromISOString(selectedDates[0]); + + for(var i = 1; i < selectedDates.length+1; i++){ + currentDate = dojo.date.stamp.fromISOString(selectedDates[i]); + if(weHaveRange){ + //We are in the middle of a range + difference = Math.abs(dojo.date.difference(previousDate, currentDate, "day")); + if(difference == 1){ + //we continue with the range + lastDayRange = currentDate; + }else{ + //end of the range, reset variables for maybe the next range.. + range = dojo.date.stamp.toISOString(startRange).substring(0,10) + + "/" + dojo.date.stamp.toISOString(lastDayRange).substring(0,10); + returnDates.push(range); + weHaveRange = false; + } + }else{ + //We are not in a range to begin with + difference = Math.abs(dojo.date.difference(previousDate, currentDate, "day")); + if(difference == 1){ + //These are two consecutive dates: This is a range! + weHaveRange = true; + startRange = previousDate; + lastDayRange = currentDate; + }else{ + //this is a standalone date + returnDates.push(dojo.date.stamp.toISOString(previousDate).substring(0,10)); + } + } + previousDate = currentDate; + } + return returnDates; + }else{ + //If there's only one selected date we return only it + return selectedDates; + } + } + } +); + +//FIXME: can we use dijit.Calendar._MonthDropDown directly? +var MonthDropDown = MultiSelectCalendar._MonthDropDown = dojo.declare("dojox.widget._MonthDropDown", + [_Widget, _TemplatedMixin, _WidgetsInTemplateMixin], { + // summary: + // The month drop down + + // months: String[] + // List of names of months, possibly w/some undefined entries for Hebrew leap months + // (ex: ["January", "February", undefined, "April", ...]) + months: [], + + templateString: "
    ", + + _setMonthsAttr: function(/*String[]*/ months){ + this.domNode.innerHTML = dojo.map(months, function(month, idx){ + return month ? "
    " + month + "
    " : ""; + }).join(""); + }, + + _onClick: function(/*Event*/ evt){ + this.onChange(dojo.attr(evt.target, "month")); + }, + + onChange: function(/*Number*/ month){ + // summary: + // Callback when month is selected from drop down + }, + + _onMenuHover: function(evt){ + dojo.toggleClass(evt.target, "dijitCalendarMonthLabelHover", evt.type == "mouseover"); + } +}); + +return MultiSelectCalendar; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MultiSelectCalendar/MultiSelectCalendar.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MultiSelectCalendar/MultiSelectCalendar.html new file mode 100644 index 00000000..7e4627fc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/MultiSelectCalendar/MultiSelectCalendar.html @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + +
    + + - + +
    +
    +
    + + + +
    +

    + + + +

    +
    \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager.js new file mode 100644 index 00000000..b0f71fd2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager.js @@ -0,0 +1,360 @@ +//>>built +require({cache:{"url:dojox/widget/Pager/Pager.html":"
    \n
    \n\t\t
    \n\t\t
    \n\t\t
      \n\t\t
      \n\t\t
      \n\t\t\t
      \"Next\"
      \n\t\t\t
      \"Previous\"
      \n\t\t
      \n
      \n\t
      \n
      "}}); +define("dojox/widget/Pager",["dojo/aspect","dojo/_base/array","dojo/_base/declare","dojo/dom","dojo/dom-attr","dojo/dom-class","dojo/dom-construct","dojo/dom-geometry","dojo/dom-style","dojo/fx","dojo/_base/kernel","dojo/keys","dojo/_base/lang","dojo/on","dijit/_WidgetBase","dijit/_TemplatedMixin","./PagerItem","dojo/text!./Pager/Pager.html"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,fx,_a,_b,_c,on,_d,_e,_f,_10){ +_a.experimental("dojox.widget.Pager"); +return _3("dojox.widget.Pager",[_d,_e],{templateString:_10,iconPrevious:"",iconNext:"",iconPage:require.toUrl("dojox/widget/Pager/images/pageInactive.png"),iconPageActive:require.toUrl("dojox/widget/Pager/images/pageActive.png"),store:null,orientation:"horizontal",statusPos:"leading",pagerPos:"center",duration:500,itemSpace:2,resizeChildren:true,itemClass:_f,itemsPage:3,postMixInProperties:function(){ +var h=(this.orientation=="horizontal"); +_c.mixin(this,{_totalPages:0,_currentPage:1,dirClass:"pager"+(h?"Horizontal":"Vertical"),iconNext:require.toUrl("dojox/widget/Pager/images/"+(h?"h":"v")+"Next.png"),iconPrevious:require.toUrl("dojox/widget/Pager/images/"+(h?"h":"v")+"Previous.png")}); +},_next:function(){ +if(!this.isLeftToRight()){ +this._pagerPrevious(); +}else{ +this._pagerNext(); +} +},_previous:function(){ +if(!this.isLeftToRight()){ +this._pagerNext(); +}else{ +this._pagerPrevious(); +} +},postCreate:function(){ +this.inherited(arguments); +this.store.fetch({onComplete:_c.hitch(this,"_init")}); +},_a11yStyle:function(e){ +_6.toggle(e.target,"pagerFocus",(e.type=="focus")); +},_handleKey:function(e){ +var key=(e.charCode==_b.SPACE?_b.SPACE:e.keyCode); +switch(key){ +case _b.UP_ARROW: +case _b.RIGHT_ARROW: +case 110: +case 78: +e.preventDefault(); +this._next(); +break; +case _b.DOWN_ARROW: +case _b.LEFT_ARROW: +case 112: +case 80: +e.preventDefault(); +this._previous(); +break; +case _b.ENTER: +switch(e.target){ +case this.pagerNext: +this._next(); +break; +case this.pagerPrevious: +this._previous(); +break; +} +break; +} +},_init:function(_11){ +this.items=_11; +this._renderPages(); +this._renderStatus(); +this._renderPager(); +},generatePagerItem:function(_12,cnt){ +var _13=this.itemClass,_14=(typeof _13=="string"?_c.getObject(_13):_13); +var _15=_7.create("div",{innerHTML:_12.content}); +return new _14({id:this.id+"-item-"+(cnt+1)},_15); +},_renderPages:function(){ +var pcv=this.pagerContainerView,_16=(this.orientation=="horizontal"); +if(_16){ +var _17=_8.getMarginBox(this.pagerContainerPager).h,_18=_8.getMarginBox(this.pagerContainerStatus).h; +if(this.pagerPos!="center"){ +var _19=_17+_18; +}else{ +var _19=_18; +var _1a=this.pagerIconNext.width,_1b=_9.get(pcv,"width"),_1c=_1b-(2*_1a); +_9.set(pcv,{width:_1c+"px",marginLeft:this.pagerIconNext.width+"px",marginRight:this.pagerIconNext.width+"px"}); +} +var _1d=_9.get(this.pagerContainer,"height")-_19; +_9.set(this.pagerContainerView,"height",_1d+"px"); +var _1e=Math.floor(_9.get(pcv,"width")/this.itemsPage); +if(this.statusPos=="trailing"){ +if(this.pagerPos!="center"){ +_9.set(pcv,"marginTop",_17+"px"); +} +_9.set(pcv,"marginBottom",_18+"px"); +}else{ +_9.set(pcv,"marginTop",_18+"px"); +if(this.pagerPos!="center"){ +_9.set(pcv,"marginTop",_17+"px"); +} +} +}else{ +var _1f=_8.getMarginBox(this.pagerContainerPager).w,_20=_8.getMarginBox(this.pagerContainerStatus).w,_21=_9.get(this.pagerContainer,"width"); +if(this.pagerPos!="center"){ +var _22=_1f+_20; +}else{ +var _22=_20,_23=this.pagerIconNext.height,_24=_9.get(pcv,"height"),_25=_24-(2*_23); +_9.set(pcv,{height:_25+"px",marginTop:this.pagerIconNext.height+"px",marginBottom:this.pagerIconNext.height+"px"}); +} +var _26=_9.get(this.pagerContainer,"width")-_22; +_9.set(pcv,"width",_26+"px"); +var _1e=Math.floor(_9.get(pcv,"height")/this.itemsPage); +if(this.statusPos=="trailing"){ +if(this.pagerPos!="center"){ +_9.set(pcv,"marginLeft",_1f+"px"); +} +_9.set(pcv,"marginRight",_20+"px"); +}else{ +_9.set(pcv,"marginLeft",_20+"px"); +if(this.pagerPos!="center"){ +_9.set(pcv,"marginRight",_1f+"px"); +} +} +} +var _27="padding"+(_16?"Left":"Top"),_28="padding"+(_16?"Right":"Bottom"); +_2.forEach(this.items,function(_29,cnt){ +var _2a=this.generatePagerItem(_29,cnt),_2b={}; +this.pagerItems.appendChild(_2a.domNode); +_2b[(_16?"width":"height")]=(_1e-this.itemSpace)+"px"; +var p=(_16?"height":"width"); +_2b[p]=_9.get(pcv,p)+"px"; +_9.set(_2a.containerNode,_2b); +if(this.resizeChildren){ +_2a.resizeChildren(); +} +_2a.parseChildren(); +_9.set(_2a.domNode,"position","absolute"); +if(cnt_38); +this._toScroll=(b?_38:_39); +var cmd=(b?"_pagerPrevious":"_pagerNext"),_3a=_1.after(this,"onScrollEnd",_c.hitch(this,function(){ +this._toScroll--; +if(this._toScroll<1){ +_3a.remove(); +}else{ +this[cmd](); +} +}),true); +this[cmd](); +} +},_pagerNext:function(){ +if(this._anim){ +return; +} +var _3b=[]; +for(var i=this._currentPage*this.itemsPage;i>(this._currentPage-1)*this.itemsPage;i--){ +if(!_4.byId(this.id+"-item-"+i)){ +continue; +} +var _3c=_4.byId(this.id+"-item-"+i); +var _3d=_8.getMarginBox(_3c); +if(this.orientation=="horizontal"){ +var _3e=_3d.l-(this.itemsPage*_3d.w); +_3b.push(fx.slideTo({node:_3c,left:_3e,duration:this.duration})); +}else{ +var _3e=_3d.t-(this.itemsPage*_3d.h); +_3b.push(fx.slideTo({node:_3c,top:_3e,duration:this.duration})); +} +} +var _3f=this._currentPage; +if(this._currentPage==this._totalPages){ +this._currentPage=1; +}else{ +this._currentPage++; +} +var cnt=this.itemsPage; +for(var i=this._currentPage*this.itemsPage;i>(this._currentPage-1)*this.itemsPage;i--){ +if(_4.byId(this.id+"-item-"+i)){ +var _3c=_4.byId(this.id+"-item-"+i); +var _3d=_8.getMarginBox(_3c); +if(this.orientation=="horizontal"){ +var _40=(_9.get(this.pagerContainerView,"width")+((cnt-1)*_3d.w))-1; +_9.set(_3c,"left",_40+"px"); +_9.set(_3c,"top","0px"); +var _3e=_40-(this.itemsPage*_3d.w); +_3b.push(fx.slideTo({node:_3c,left:_3e,duration:this.duration})); +}else{ +_40=(_9.get(this.pagerContainerView,"height")+((cnt-1)*_3d.h))-1; +_9.set(_3c,"top",_40+"px"); +_9.set(_3c,"left","0px"); +var _3e=_40-(this.itemsPage*_3d.h); +_3b.push(fx.slideTo({node:_3c,top:_3e,duration:this.duration})); +} +} +cnt--; +} +this._anim=fx.combine(_3b); +var _41=_1.after(this._anim,"onEnd",_c.hitch(this,function(){ +delete this._anim; +this.onScrollEnd(); +_41.remove(); +}),true); +this._anim.play(); +_4.byId(this.id+"-status-"+_3f).src=this.iconPage; +_4.byId(this.id+"-status-"+this._currentPage).src=this.iconPageActive; +},_pagerPrevious:function(){ +if(this._anim){ +return; +} +var _42=[]; +for(var i=this._currentPage*this.itemsPage;i>(this._currentPage-1)*this.itemsPage;i--){ +if(!_4.byId(this.id+"-item-"+i)){ +continue; +} +var _43=_4.byId(this.id+"-item-"+i); +var _44=_8.getMarginBox(_43); +if(this.orientation=="horizontal"){ +var _45=_9.get(_43,"left")+(this.itemsPage*_44.w); +_42.push(fx.slideTo({node:_43,left:_45,duration:this.duration})); +}else{ +var _45=_9.get(_43,"top")+(this.itemsPage*_44.h); +_42.push(fx.slideTo({node:_43,top:_45,duration:this.duration})); +} +} +var _46=this._currentPage; +if(this._currentPage==1){ +this._currentPage=this._totalPages; +}else{ +this._currentPage--; +} +var cnt=this.itemsPage; +var j=1; +for(var i=this._currentPage*this.itemsPage;i>(this._currentPage-1)*this.itemsPage;i--){ +if(_4.byId(this.id+"-item-"+i)){ +var _43=_4.byId(this.id+"-item-"+i),_44=_8.getMarginBox(_43); +if(this.orientation=="horizontal"){ +var _47=-(j*_44.w)+1; +_9.set(_43,"left",_47+"px"); +_9.set(_43,"top","0px"); +var _45=((cnt-1)*_44.w); +_42.push(fx.slideTo({node:_43,left:_45,duration:this.duration})); +var _45=_47+(this.itemsPage*_44.w); +_42.push(fx.slideTo({node:_43,left:_45,duration:this.duration})); +}else{ +_47=-((j*_44.h)+1); +_9.set(_43,"top",_47+"px"); +_9.set(_43,"left","0px"); +var _45=((cnt-1)*_44.h); +_42.push(fx.slideTo({node:_43,top:_45,duration:this.duration})); +} +} +cnt--; +j++; +} +this._anim=fx.combine(_42); +var _48=_1.after(this._anim,"onEnd",_c.hitch(this,function(){ +delete this._anim; +this.onScrollEnd(); +_48.remove(); +}),true); +this._anim.play(); +_4.byId(this.id+"-status-"+_46).src=this.iconPage; +_4.byId(this.id+"-status-"+this._currentPage).src=this.iconPageActive; +},onScrollEnd:function(){ +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager.js.uncompressed.js new file mode 100644 index 00000000..87fe512b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager.js.uncompressed.js @@ -0,0 +1,573 @@ +require({cache:{ +'url:dojox/widget/Pager/Pager.html':"
      \n
      \n\t\t
      \n\t\t
      \n\t\t
        \n\t\t
        \n\t\t
        \n\t\t\t
        \"Next\"
        \n\t\t\t
        \"Previous\"
        \n\t\t
        \n
        \n\t
        \n
        "}}); +define("dojox/widget/Pager", ["dojo/aspect", "dojo/_base/array", "dojo/_base/declare", "dojo/dom", "dojo/dom-attr", "dojo/dom-class", "dojo/dom-construct", "dojo/dom-geometry", "dojo/dom-style", "dojo/fx", "dojo/_base/kernel", "dojo/keys", + "dojo/_base/lang", "dojo/on", "dijit/_WidgetBase", "dijit/_TemplatedMixin", "./PagerItem", "dojo/text!./Pager/Pager.html"], + function(aspect, array, declare, dom, attr, domClass, domConstruct, geometry, style, fx, kernel, keys, lang, on, _WidgetBase, _TemplatedMixin, PagerItem, template){ + +kernel.experimental("dojox.widget.Pager"); + +return declare("dojox.widget.Pager", + [_WidgetBase, _TemplatedMixin], + { + // summary: + // A Pager, displaying a list of sized nodes + + + templateString: template, + + + // iconPrevious: String? + // The url of the previous page icon + iconPrevious: "", + + // iconNext: String? + // The url of the next page icon + iconNext: "", + + iconPage: require.toUrl("dojox/widget/Pager/images/pageInactive.png"), + iconPageActive: require.toUrl("dojox/widget/Pager/images/pageActive.png"), + + // store: Object + // A dojo.data Data store + store: null, // data store for items + + // orientation: String + // Either "horizontal or "vertical" to define the direction the pages will slide + orientation: "horizontal", // or vertical + + // statusPos: String + // A string describing where to put the Pager "current page" indicator. Options are + // "leading" or "trailing". In the case of horiztonal orientation, "leading" indicates + // positioned above the PageItems. In the case of vertical, "leading" indicates "before". + statusPos: "leading", + + // pagerPos: String + // TODOC + pagerPos: "center", + + // duration: Integer + // Time in milliseconds to transition the pages + duration: 500, + + // itemSpace: Integer + // Spacing between items? TODOC + itemSpace: 2, + + // resizeChildren: Boolean + // TODOC + resizeChildren: true, + + // itemClass: String|Widget + // The full dotted named of a Class or Widget constructor to use for the internal Pager Items. + itemClass: PagerItem, + + // itemsPage: Integer + // The numbers of items to display in each "Page" + itemsPage: 3, + + postMixInProperties: function(){ + var h = (this.orientation == "horizontal"); + lang.mixin(this,{ + _totalPages:0, + _currentPage:1, + dirClass: "pager" + (h ? "Horizontal" : "Vertical"), + iconNext: require.toUrl("dojox/widget/Pager/images/" + (h ? "h" : "v") + "Next.png"), + iconPrevious: require.toUrl("dojox/widget/Pager/images/" + (h ? "h" : "v") + "Previous.png") + }); + }, + + // Bidi Support + _next: function(){ + // summary: + // Handle next behavior depends on widget direction + if(!this.isLeftToRight()){ + this._pagerPrevious(); + }else{ + this._pagerNext(); + } + }, + + // Bidi Support + _previous: function(){ + // summary: + // Handle previous behavior depends on widget direction + if(!this.isLeftToRight()){ + this._pagerNext(); + }else{ + this._pagerPrevious(); + } + }, + + postCreate: function(){ + this.inherited(arguments); + this.store.fetch({ + onComplete: lang.hitch(this, "_init") + }); + + }, + + _a11yStyle: function(e){ + // summary: + // top level onfocus/onblur listen to set a class "pagerFocus" on some node + // and remove it onblur + domClass.toggle(e.target, "pagerFocus", (e.type == "focus")); + }, + + _handleKey: function(e){ + // summary: + // Handle keyboard navigation internally + + var key = (e.charCode == keys.SPACE ? keys.SPACE : e.keyCode); + switch(key){ + + case keys.UP_ARROW: + case keys.RIGHT_ARROW: + case 110: + case 78: // key "n" + e.preventDefault(); + this._next(); + break; + case keys.DOWN_ARROW: + case keys.LEFT_ARROW: + case 112: + case 80: // key "p" + e.preventDefault(); + this._previous(); + break; + case keys.ENTER: + switch(e.target){ + case this.pagerNext : this._next(); break; + case this.pagerPrevious : this._previous(); break; + } + break; + } + }, + + _init: function(items) { + this.items = items; + this._renderPages(); + this._renderStatus(); + this._renderPager(); + }, + + generatePagerItem: function(/*item */ item, /* Number */ cnt){ + // summary: + // this method instantiates pagerItems to be used by the pager, it is overridable to allow + // customizing these items + + // only use getObject if its not the default _PagerItem value + var itemClass = this.itemClass, + pagerItem = (typeof itemClass == "string" ? lang.getObject(itemClass) : itemClass); + + var contentContainer = domConstruct.create('div', { + innerHTML: item.content + }); + + return new pagerItem({ + id: this.id + '-item-' + (cnt + 1) + }, contentContainer); + }, + + _renderPages: function(){ + var pcv = this.pagerContainerView, + _h = (this.orientation == "horizontal"); + + if(_h){ + var pagerH = geometry.getMarginBox(this.pagerContainerPager).h, + statusH = geometry.getMarginBox(this.pagerContainerStatus).h; + + if (this.pagerPos != 'center'){ + var addonHeight = pagerH+statusH; + }else{ + var addonHeight = statusH; + + var widthSub = this.pagerIconNext.width, + containerWidth = style.get(pcv, 'width'), + newWidth = containerWidth-(2*widthSub); + + style.set(pcv, { + width: newWidth+'px', + marginLeft: this.pagerIconNext.width+'px', + marginRight: this.pagerIconNext.width+'px' + }); + } + var totalH = style.get(this.pagerContainer, 'height') - addonHeight; + style.set(this.pagerContainerView, 'height', totalH+'px'); + + var itemSpace = Math.floor(style.get(pcv, 'width') / this.itemsPage); + if(this.statusPos == 'trailing'){ + if(this.pagerPos != 'center'){ + style.set(pcv, 'marginTop', pagerH+'px'); + } + style.set(pcv, 'marginBottom', statusH+'px'); + }else{ + style.set(pcv, 'marginTop', statusH+'px'); + if (this.pagerPos != 'center'){ + style.set(pcv, 'marginTop', pagerH+'px'); + } + } + }else{ + var pagerW = geometry.getMarginBox(this.pagerContainerPager).w, + statusW = geometry.getMarginBox(this.pagerContainerStatus).w, + containerW = style.get(this.pagerContainer, 'width'); + + if(this.pagerPos != 'center'){ + var addonWidth = pagerW + statusW; + }else{ + var addonWidth = statusW, + heightSub = this.pagerIconNext.height, + containerHeight = style.get(pcv, 'height'), + newHeight = containerHeight - (2 * heightSub); + + style.set(pcv,{ + height: newHeight+'px', + marginTop: this.pagerIconNext.height+'px', + marginBottom: this.pagerIconNext.height+'px' + }); + } + var totalW = style.get(this.pagerContainer, 'width') - addonWidth; + style.set(pcv, 'width', totalW+'px'); + + var itemSpace = Math.floor(style.get(pcv, 'height') / this.itemsPage); + if(this.statusPos == 'trailing'){ + if (this.pagerPos != 'center'){ + style.set(pcv, 'marginLeft', pagerW + 'px'); + } + style.set(pcv, 'marginRight', statusW + 'px'); + }else{ + style.set(pcv, 'marginLeft', statusW + 'px'); + if(this.pagerPos != 'center'){ + style.set(pcv, 'marginRight', pagerW+'px'); + } + } + } + var paddingLead = "padding" + (_h ? "Left" : "Top"), + paddingTrail = "padding" + (_h ? "Right" : "Bottom"); + + array.forEach(this.items, function(item, cnt){ + var pagerItem = this.generatePagerItem(item, cnt), + containerProps = {}; + + this.pagerItems.appendChild(pagerItem.domNode); + + containerProps[(_h ? "width" : "height")] = (itemSpace - this.itemSpace) + "px"; + var p = (_h ? "height" : "width"); + containerProps[p] = style.get(pcv, p) + "px"; + style.set(pagerItem.containerNode, containerProps); + + if(this.resizeChildren){ + pagerItem.resizeChildren(); + } + pagerItem.parseChildren(); + + // only display amount of items as defined in itemsPage + style.set(pagerItem.domNode, "position", "absolute"); + + if (cnt < this.itemsPage){ + var pos = (cnt) * itemSpace, + trailingDir = (_h ? "left" : "top"), + dir = (_h ? "top" : "left"); + + style.set(pagerItem.domNode, dir, "0px"); + style.set(pagerItem.domNode, trailingDir, pos+"px"); + }else{ + style.set(pagerItem.domNode, "top", "-1000px"); + style.set(pagerItem.domNode, "left", "-1000px"); + } + + style.set(pagerItem.domNode, paddingTrail, (this.itemSpace/2)+"px"); + style.set(pagerItem.domNode, paddingLead, (this.itemSpace/2)+"px"); + + }, this); + }, + + _renderPager: function() { + var tcp = this.pagerContainerPager, + zero = "0px", + _h = (this.orientation == "horizontal"); + + if(_h){ + + if(this.statusPos == 'center'){ + + }else if (this.statusPos == 'trailing'){ + style.set(tcp, 'top', zero); + }else{ + style.set(tcp, 'bottom', zero); + } + style.set(this.pagerNext, 'right', zero); + style.set(this.pagerPrevious, 'left', zero); + + }else{ + + if (this.statusPos == 'trailing'){ + style.set(tcp, 'left', zero); + }else{ + style.set(tcp, 'right', zero); + } + style.set(this.pagerNext, 'bottom', zero); + style.set(this.pagerPrevious, 'top', zero); + } + + }, + + _renderStatus: function() { + this._totalPages = Math.ceil(this.items.length / this.itemsPage); + // FIXME!! + this.iconWidth = 0; + this.iconHeight = 0; + this.iconsLoaded = 0; + this._iconConnects = []; + + for (var i = 1; i <= this._totalPages; i++){ + var icon = new Image(); + + var pointer = i; + on(icon, 'click', lang.hitch(this, "_pagerSkip", pointer)); + + this._iconConnects[pointer] = on(icon, 'load', lang.hitch(this, function(pointer){ + this.iconWidth += icon.width; + this.iconHeight += icon.height; + this.iconsLoaded++; + + if (this._totalPages == this.iconsLoaded){ + if (this.orientation == "horizontal"){ + if (this.statusPos == 'trailing'){ + if (this.pagerPos == 'center'){ + var containerHeight = style.get(this.pagerContainer, 'height'), + statusHeight = style.get(this.pagerContainerStatus, 'height'); + + style.set(this.pagerContainerPager, 'top', ((containerHeight/2)-(statusHeight/2))+'px'); + } + style.set(this.pagerContainerStatus, 'bottom', '0px'); + }else{ + if (this.pagerPos == 'center'){ + var containerHeight = style.get(this.pagerContainer, 'height'), + statusHeight = style.get(this.pagerContainerStatus, 'height'); + + style.set(this.pagerContainerPager, 'bottom', ((containerHeight/2)-(statusHeight/2))+'px'); + } + style.set(this.pagerContainerStatus, 'top', '0px'); + } + + var position = (style.get(this.pagerContainer, 'width')/2)-(this.iconWidth/2); + // Bidi Support + style.set(this.pagerContainerStatus, this.isLeftToRight()?'paddingLeft':'paddingRight', position+'px'); + }else{ + if (this.statusPos == 'trailing'){ + if (this.pagerPos == 'center'){ + var containerWidth = style.get(this.pagerContainer, 'width'), + statusWidth = style.get(this.pagerContainerStatus, 'width'); + + style.set(this.pagerContainerPager, 'left', ((containerWidth/2)-(statusWidth/2))+'px'); + } + style.set(this.pagerContainerStatus, 'right', '0px'); + }else{ + if (this.pagerPos == 'center'){ + var containerWidth = style.get(this.pagerContainer, 'width'), + statusWidth = style.get(this.pagerContainerStatus, 'width'); + + style.set(this.pagerContainerPager, 'right', ((containerWidth/2)-(statusWidth/2))+'px'); + } + style.set(this.pagerContainerStatus, 'left', '0px'); + } + var position = (style.get(this.pagerContainer, 'height')/2)-(this.iconHeight/2); + style.set(this.pagerContainerStatus, 'paddingTop', position+'px'); + } + } + this._iconConnects[pointer].remove(); + }, pointer)); + + if (i==this._currentPage){ + icon.src=this.iconPageActive; + }else{ + icon.src=this.iconPage; + } + var pointer = i; + + domClass.add(icon, this.orientation+'PagerIcon'); + attr.set(icon, 'id', this.id+'-status-'+i); + this.pagerContainerStatus.appendChild(icon); + + if (this.orientation == "vertical"){ + style.set(icon, 'display', 'block'); + } + } + }, + + _pagerSkip: function(page){ + if (this._currentPage == page){ + return; + }else{ + // calculate whether to go left or right, take shortest way + var distanceP; var distanceN; + if (page < this._currentPage){ + distanceP = this._currentPage - page; + distanceN = (this._totalPages + page) - this._currentPage; + }else{ + distanceP = (this._totalPages + this._currentPage) - page; + distanceN = page - this._currentPage; + } + + var b = (distanceN > distanceP); + this._toScroll = (b ? distanceP : distanceN); + var cmd = (b ? "_pagerPrevious" : "_pagerNext"), + handle = aspect.after(this, "onScrollEnd", lang.hitch(this, function(){ + this._toScroll--; + if(this._toScroll < 1){ + handle.remove(); + }else{ + this[cmd](); + } + }), true); + + this[cmd](); + } + }, + + _pagerNext: function(){ + if(this._anim) return; + + /** + * fade slide out current items + * make sure that next items are ligned up nicely before sliding them in + */ + var _anims = []; + for (var i = this._currentPage * this.itemsPage; i > (this._currentPage - 1) * this.itemsPage; i--){ + if (!dom.byId(this.id+'-item-'+i)) continue; + + var currentItem = dom.byId(this.id+'-item-'+i); + var marginBox = geometry.getMarginBox(currentItem); + if (this.orientation == "horizontal") { + var move = marginBox.l - (this.itemsPage * marginBox.w); + _anims.push(fx.slideTo({node: currentItem, left: move, duration: this.duration})); + }else{ + var move = marginBox.t - (this.itemsPage * marginBox.h); + _anims.push(fx.slideTo({node: currentItem, top: move, duration: this.duration})); + } + + } + var previousPage = this._currentPage; + if (this._currentPage == this._totalPages){ + this._currentPage = 1; + }else{ + this._currentPage++; + } + + var cnt = this.itemsPage; + for (var i=this._currentPage*this.itemsPage; i>(this._currentPage-1)*this.itemsPage; i--){ + if (dom.byId(this.id+'-item-'+i)){ + var currentItem = dom.byId(this.id+'-item-'+i); + var marginBox = geometry.getMarginBox(currentItem); + if (this.orientation == "horizontal") { + var newPos = (style.get(this.pagerContainerView, 'width')+((cnt-1)*marginBox.w))-1; + style.set(currentItem, 'left', newPos+'px'); + style.set(currentItem, 'top', '0px'); + + var move = newPos-(this.itemsPage*marginBox.w); + _anims.push(fx.slideTo({node: currentItem, left: move, duration: this.duration})); + }else{ + newPos = (style.get(this.pagerContainerView, 'height')+((cnt-1)*marginBox.h))-1; + style.set(currentItem, 'top', newPos+'px'); + style.set(currentItem, 'left', '0px'); + + var move = newPos-(this.itemsPage*marginBox.h); + _anims.push(fx.slideTo({ node: currentItem, top: move, duration: this.duration})); + } + } + cnt--; + } + + this._anim = fx.combine(_anims); + var animHandle = aspect.after(this._anim, "onEnd", lang.hitch(this, function(){ + delete this._anim; + this.onScrollEnd(); + animHandle.remove(); + }), true); + + this._anim.play(); + + // set pager icons + dom.byId(this.id+'-status-'+previousPage).src = this.iconPage; + dom.byId(this.id+'-status-'+this._currentPage).src = this.iconPageActive; + }, + + _pagerPrevious: function(){ + if(this._anim) return; + + var _anims = []; + for (var i=this._currentPage*this.itemsPage; i>(this._currentPage-1)*this.itemsPage; i--){ + if (!dom.byId(this.id+'-item-'+i)) continue; + + var currentItem = dom.byId(this.id+'-item-'+i); + var marginBox = geometry.getMarginBox(currentItem); + if (this.orientation == "horizontal") { + var move = style.get(currentItem, 'left')+(this.itemsPage*marginBox.w); + _anims.push(fx.slideTo({node: currentItem, left: move, duration: this.duration})); + }else{ + var move = style.get(currentItem, 'top')+(this.itemsPage*marginBox.h); + _anims.push(fx.slideTo({node: currentItem, top: move, duration: this.duration})); + } + } + + var previousPage = this._currentPage; + if (this._currentPage == 1){ + this._currentPage = this._totalPages; + }else{ + this._currentPage--; + } + + var cnt = this.itemsPage; + var j=1; + for (var i=this._currentPage*this.itemsPage; i>(this._currentPage-1)*this.itemsPage; i--){ + if(dom.byId(this.id+'-item-'+i)){ + var currentItem = dom.byId(this.id+'-item-'+i), + marginBox = geometry.getMarginBox(currentItem); + + if (this.orientation == "horizontal") { + var newPos = -(j * marginBox.w) + 1; + style.set(currentItem, 'left', newPos+'px'); + style.set(currentItem, 'top', '0px'); + + var move = ((cnt - 1) * marginBox.w); + _anims.push(fx.slideTo({node: currentItem, left: move, duration: this.duration})); + + var move = newPos+(this.itemsPage * marginBox.w); + _anims.push(fx.slideTo({node: currentItem, left: move, duration: this.duration})); + }else{ + newPos = -((j * marginBox.h) + 1); + style.set(currentItem, 'top', newPos+'px'); + style.set(currentItem, 'left', '0px'); + + var move = ((cnt - 1) * marginBox.h); + _anims.push(fx.slideTo({node: currentItem, top: move, duration: this.duration})); + } + + } + cnt--; + j++; + } + + this._anim = fx.combine(_anims); + var animHandle = aspect.after(this._anim, "onEnd", lang.hitch(this, function(){ + delete this._anim; + this.onScrollEnd(); + animHandle.remove(); + }), true); + + this._anim.play(); + + // set pager icons + dom.byId(this.id + '-status-' + previousPage).src = this.iconPage; + dom.byId(this.id + '-status-' + this._currentPage).src = this.iconPageActive; + + }, + + onScrollEnd: function(){ + // summary: + // Stub Function. Fired after the slide is complete. Override or connect. + } + +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/Pager.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/Pager.css new file mode 100644 index 00000000..27e7c8c1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/Pager.css @@ -0,0 +1,73 @@ +.pagerContainer { + position: relative; + height: 100%; + width: 100%; + overflow: hidden; + + border:1px solid #ccc; + -moz-border-radius:6pt; + -webkit-border-radius:7pt; +} +.horizontalPagerPager { + position: absolute; + height: 12px; + width: 100%; + padding-top: 4px; + padding-bottom: 4px; +} +.horizontalPagerStatus { + position: absolute; + height: 10px; + padding-top: 5px; + padding-bottom: 5px; + width: 100%; +} +.horizontalPagerView { + position: absolute; + height: 100%; + width: 100%; + overflow: hidden; +} +.horizontalPagerIcon { + cursor: pointer; +} +.verticalPagerPager { + position: absolute; + width: 12px; + height: 100%; + padding-left: 4px; + padding-right: 4px; +} +.verticalPagerStatus { + position: absolute; + width: 10px; + padding-left: 5px; + padding-right: 5px; + height: 100%; +} +.verticalPagerView { + position: absolute; + height: 100%; + width: 100%; + overflow: hidden; +} +.verticalPagerIcon { + cursor: pointer; +} +.pagerIconContainer { + position: absolute; +} +.pagerIconContainer img { + cursor: pointer; +} +.pagerItems { + list-style: none; + padding: 0; + margin: 0; +} + +.pagerItem { + overflow: hidden; + padding: 0; + margin: 0; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/Pager.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/Pager.html new file mode 100644 index 00000000..5fb7d201 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/Pager.html @@ -0,0 +1,13 @@ +
        +
        +
        +
        +
          +
          +
          +
          Next
          +
          Previous
          +
          +
          +
          +
          \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/images/hNext.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/images/hNext.png new file mode 100644 index 0000000000000000000000000000000000000000..037503f2842086d362829e2b8d78607148a6f7de GIT binary patch literal 496 zcmV@6sbZA+Y=;UBlr^n*Z9#$AXcIx*hEw?5Dn_)&Eg&L z%)svK?9Q8yx1$Il$Ssvhu;I{)1 zoX>E+OQljqE|(*(*Xslt4u{liHfgn5-2(U|FBxQ-=1aHR6)cmAgGa7&?3pm;n^u~nzJkFY6XD*pcf&m^JTdh{8R4S-etGt&9)Wi*NZL`^OsZ?qQEEWrBnuboNgJ?90 zcs$O>3QyujSvHYKz-qM`8Y0 zpc+r0(P+f(XIs-pqtP%HUauFSPzae!<^bSMHk(aeer}=na=EJE&Hx zq2KSnk+LrXqQy70_>qfmwOYm{mMY6Kd_EtF#Ud!_I~~8C`w=(Xern9E+wBI`3SHNS stb`Ijo&838u!Gzcna(PX1|%O$WD@{Vk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xwt2cZhE&{2`t$$4Ju{C^#0CcrkChA`cek{(SQ`|&%}`p< zbgcgWzpH=${+{00+1c4Rb7rMgzz((*KV-Q>9DmHWuYYxKfBkue5RPj{4j-O;^6c5a z;wR3q&SnWIVOVkC-}UwJJSQAnTv$>TX$eo!XWzso>)i$!+}t-z z#UmCZU2e?NNJ>dbVTj}`vY2q5;Ym1?>_6F?n+a literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/images/pageInactive.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Pager/images/pageInactive.png new file mode 100644 index 0000000000000000000000000000000000000000..66ff3f41a700d5b41e47bbbdcdf5ba2840cd819f GIT binary patch literal 288 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{Vk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X4tcsbhE&{2`t$$4Ju{Eb9E(6HkH!y||NQy0+@MfRg>|ou zjg7yGii%%ThJgG!>6A+?oWfGu^X~ro|NZ^_|BehU%|8?hC)jLWut33BS^4q32M-e1 z%F4<*KKl6Z7#SJyJU=&gvwh(s7w!{Qeqv%`Y<_-zY$*p09z4h(#D4Pdn%lo$TwMJB z#Dj;2+ZA4yH9kq?o4>F2cUhaXd7i!alYj k2A;OZ8eJb48yJ`wjs;||`)^Qp24M&k-(h>9{^|y%&o`dzT|@L`XhGDEa+oShAr_16Wlkg#VB7Xhv)Po;y{0p9eOHdh<3|E6MGzpF zOhPmoH8A)CXTr^is;Z?_Dh2(1AO5p!HVd6j$H46!m3QXz`8eWyJ_pOPjs%%Z1{6gB zFBpJ9eIgXsq=Q)rh zNqj$f8pcH0?^M%%M)x9cG9jrg0_d#Ts!+!Gnj3c}$qXqv|U zbUFpoG?{le+%$uEgyAI2;a7-jgIwNJ|^Lg`c%&`xm#B)+PS~nh#C%9ZLL2;GNGJ!u1Km@pV zI-PIHWDG`2 zviuYK##}0uLLd;}htX(+Znul!aLCWpD$?mR?ACD_3Wb8yiefvlUav7244|qiL{S8_ z44=;jzu%8uuP0V26^-3=5e|nrz%)%hgQjU%tyUSS-frpUq}` zP9j5Q?@z@i2j9s485g9kX)!j&wB9NCb3f-tfB^uZ?b<|GJn=*T0000>built +define("dojox/widget/PagerItem",["dojo/_base/declare","dojo/dom-geometry","dojo/dom-style","dojo/parser","dijit/_WidgetBase","dijit/_TemplatedMixin"],function(_1,_2,_3,_4,_5,_6){ +return _1("dojox.widget._PagerItem",[_5,_6],{templateString:"
        • ",resizeChildren:function(){ +var _7=_2.getMarginBox(this.containerNode); +_3.set(this.containerNode.firstChild,{width:_7.w+"px",height:_7.h+"px"}); +},parseChildren:function(){ +_4.parse(this.containerNode); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PagerItem.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PagerItem.js.uncompressed.js new file mode 100644 index 00000000..7e837319 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PagerItem.js.uncompressed.js @@ -0,0 +1,23 @@ +define("dojox/widget/PagerItem", ["dojo/_base/declare", "dojo/dom-geometry", "dojo/dom-style", "dojo/parser", "dijit/_WidgetBase", "dijit/_TemplatedMixin"], + function(declare, geometry, style, parser, _WidgetBase, _TemplatedMixin){ + +return declare("dojox.widget._PagerItem", + [_WidgetBase, _TemplatedMixin], + { + + templateString: '
        • ', + + resizeChildren: function(){ + var box = geometry.getMarginBox(this.containerNode); + style.set(this.containerNode.firstChild, { + width: box.w +'px', + height: box.h + 'px' + }); + }, + + parseChildren: function(){ + parser.parse(this.containerNode); + } +}); + +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PlaceholderMenuItem.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PlaceholderMenuItem.js new file mode 100644 index 00000000..59d082b1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PlaceholderMenuItem.js @@ -0,0 +1,68 @@ +//>>built +define("dojox/widget/PlaceholderMenuItem",["dojo/_base/array","dojo/_base/declare","dojo/_base/lang","dojo/dom-style","dojo/_base/kernel","dojo/query","dijit/registry","dijit/Menu","dijit/MenuItem"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9){ +_5.experimental("dojox.widget.PlaceholderMenuItem"); +var _a=_2("dojox.widget.PlaceholderMenuItem",_9,{_replaced:false,_replacedWith:null,_isPlaceholder:true,postCreate:function(){ +_4.set(this.domNode,"display","none"); +this._replacedWith=[]; +if(!this.label){ +this.label=this.containerNode.innerHTML; +} +this.inherited(arguments); +},replace:function(_b){ +if(this._replaced){ +return false; +} +var _c=this.getIndexInParent(); +if(_c<0){ +return false; +} +var p=this.getParent(); +_1.forEach(_b,function(_d){ +p.addChild(_d,_c++); +}); +this._replacedWith=_b; +this._replaced=true; +return true; +},unReplace:function(_e){ +if(!this._replaced){ +return []; +} +var p=this.getParent(); +if(!p){ +return []; +} +var r=this._replacedWith; +_1.forEach(this._replacedWith,function(_f){ +p.removeChild(_f); +if(_e){ +_f.destroyRecursive(); +} +}); +this._replacedWith=[]; +this._replaced=false; +return r; +}}); +_3.extend(_8,{getPlaceholders:function(_10){ +var r=[]; +var _11=this.getChildren(); +_1.forEach(_11,function(_12){ +if(_12._isPlaceholder&&(!_10||_12.label==_10)){ +r.push(_12); +}else{ +if(_12._started&&_12.popup&&_12.popup.getPlaceholders){ +r=r.concat(_12.popup.getPlaceholders(_10)); +}else{ +if(!_12._started&&_12.dropDownContainer){ +var _13=_6("[widgetId]",_12.dropDownContainer)[0]; +var _14=_7.byNode(_13); +if(_14.getPlaceholders){ +r=r.concat(_14.getPlaceholders(_10)); +} +} +} +} +},this); +return r; +}}); +return _a; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PlaceholderMenuItem.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PlaceholderMenuItem.js.uncompressed.js new file mode 100644 index 00000000..50a09c1d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PlaceholderMenuItem.js.uncompressed.js @@ -0,0 +1,110 @@ +define("dojox/widget/PlaceholderMenuItem", ["dojo/_base/array", "dojo/_base/declare", "dojo/_base/lang", "dojo/dom-style", "dojo/_base/kernel", "dojo/query", "dijit/registry", "dijit/Menu","dijit/MenuItem"], + function(array, declare, lang, style, kernel, query, registry, Menu, MenuItem){ + +kernel.experimental("dojox.widget.PlaceholderMenuItem"); + +var PlaceholderMenuItem = declare("dojox.widget.PlaceholderMenuItem", MenuItem, { + // summary: + // A menu item that can be used as a placeholder. Set the label + // of this item to a unique key and you can then use it to add new + // items at that location. This item is not displayed. + + _replaced: false, + _replacedWith: null, + _isPlaceholder: true, + + postCreate: function(){ + style.set(this.domNode, "display", "none"); + this._replacedWith = []; + if(!this.label){ + this.label = this.containerNode.innerHTML; + } + this.inherited(arguments); + }, + + replace: function(/*dijit/MenuItem[]*/ menuItems){ + // summary: + // replaces this menu item with the given menuItems. The original + // menu item is not actually removed from the menu - so if you want + // it removed, you must do that explicitly. + // returns: + // true if the replace happened, false if not + if(this._replaced){ return false; } + + var index = this.getIndexInParent(); + if(index < 0){ return false; } + + var p = this.getParent(); + + array.forEach(menuItems, function(item){ + p.addChild(item, index++); + }); + this._replacedWith = menuItems; + + this._replaced = true; + return true; + }, + + unReplace: function(/*Boolean?*/ destroy){ + // summary: + // Removes menu items added by calling replace(). It returns the + // array of items that were actually removed (in case you want to + // clean them up later) + // destroy: + // Also call destroy on any removed items. + // returns: + // The array of items that were actually removed + + if(!this._replaced){ return []; } + + var p = this.getParent(); + if(!p){ return []; } + + var r = this._replacedWith; + array.forEach(this._replacedWith, function(item){ + p.removeChild(item); + if(destroy){ + item.destroyRecursive(); + } + }); + this._replacedWith = []; + this._replaced = false; + + return r; // dijit/MenuItem[] + } +}); + +// Se need to extend dijit.Menu so that we have a getPlaceholders function. +lang.extend(Menu, { + getPlaceholders: function(/*String?*/ label){ + // summary: + // Returns an array of placeholders with the given label. There + // can be multiples. + // label: + // Label to search for - if not specified, then all placeholders + // are returned + // returns: + // An array of placeholders that match the given label + var r = []; + + var children = this.getChildren(); + array.forEach(children, function(child){ + if(child._isPlaceholder && (!label || child.label == label)){ + r.push(child); + }else if(child._started && child.popup && child.popup.getPlaceholders){ + r = r.concat(child.popup.getPlaceholders(label)); + }else if(!child._started && child.dropDownContainer){ + var node = query("[widgetId]", child.dropDownContainer)[0]; + var menu = registry.byNode(node); + if(menu.getPlaceholders){ + r = r.concat(menu.getPlaceholders(label)); + } + } + }, this); + return r; // dojox/widget/PlaceholderMenuItem[] + } +}); + +return PlaceholderMenuItem; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Portlet.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Portlet.js new file mode 100644 index 00000000..8cb1bbfe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Portlet.js @@ -0,0 +1,189 @@ +//>>built +define("dojox/widget/Portlet",["dojo/_base/declare","dojo/_base/kernel","dojo/_base/lang","dojo/_base/array","dojo/_base/event","dojo/_base/connect","dojo/dom-style","dojo/dom-class","dojo/dom-construct","dojo/fx","dijit/registry","dijit/TitlePane","dijit/_Container","./PortletSettings","./PortletDialogSettings"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,fx,_a,_b,_c,_d,_e){ +_2.experimental("dojox.widget.Portlet"); +return _1("dojox.widget.Portlet",[_b,_c],{resizeChildren:true,closable:true,_parents:null,_size:null,dragRestriction:false,buildRendering:function(){ +this.inherited(arguments); +_7.set(this.domNode,"visibility","hidden"); +},postCreate:function(){ +this.inherited(arguments); +_8.add(this.domNode,"dojoxPortlet"); +_8.remove(this.arrowNode,"dijitArrowNode"); +_8.add(this.arrowNode,"dojoxPortletIcon dojoxArrowDown"); +_8.add(this.titleBarNode,"dojoxPortletTitle"); +_8.add(this.hideNode,"dojoxPortletContentOuter"); +_8.add(this.domNode,"dojoxPortlet-"+(!this.dragRestriction?"movable":"nonmovable")); +var _f=this; +if(this.resizeChildren){ +this.subscribe("/dnd/drop",function(){ +_f._updateSize(); +}); +this.subscribe("/Portlet/sizechange",function(_10){ +_f.onSizeChange(_10); +}); +this.connect(window,"onresize",function(){ +_f._updateSize(); +}); +var _11=_3.hitch(this,function(id,_12){ +var _13=_a.byId(id); +if(_13.selectChild){ +var s=this.subscribe(id+"-selectChild",function(_14){ +var n=_f.domNode.parentNode; +while(n){ +if(n==_14.domNode){ +_f.unsubscribe(s); +_f._updateSize(); +break; +} +n=n.parentNode; +} +}); +var _15=_a.byId(_12); +if(_13&&_15){ +_f._parents.push({parent:_13,child:_15}); +} +} +}); +var _16; +this._parents=[]; +for(var p=this.domNode.parentNode;p!=null;p=p.parentNode){ +var id=p.getAttribute?p.getAttribute("widgetId"):null; +if(id){ +_11(id,_16); +_16=id; +} +} +} +this.connect(this.titleBarNode,"onmousedown",function(evt){ +if(_8.contains(evt.target,"dojoxPortletIcon")){ +_5.stop(evt); +return false; +} +return true; +}); +this.connect(this._wipeOut,"onEnd",function(){ +_f._publish(); +}); +this.connect(this._wipeIn,"onEnd",function(){ +_f._publish(); +}); +if(this.closable){ +this.closeIcon=this._createIcon("dojoxCloseNode","dojoxCloseNodeHover",_3.hitch(this,"onClose")); +_7.set(this.closeIcon,"display",""); +} +},startup:function(){ +if(this._started){ +return; +} +var _17=this.getChildren(); +this._placeSettingsWidgets(); +_4.forEach(_17,function(_18){ +try{ +if(!_18.started&&!_18._started){ +_18.startup(); +} +} +catch(e){ +} +}); +this.inherited(arguments); +_7.set(this.domNode,"visibility","visible"); +},_placeSettingsWidgets:function(){ +_4.forEach(this.getChildren(),_3.hitch(this,function(_19){ +if(_19.portletIconClass&&_19.toggle&&!_19.get("portlet")){ +this._createIcon(_19.portletIconClass,_19.portletIconHoverClass,_3.hitch(_19,"toggle")); +_9.place(_19.domNode,this.containerNode,"before"); +_19.set("portlet",this); +this._settingsWidget=_19; +} +})); +},_createIcon:function(_1a,_1b,fn){ +var _1c=_9.create("div",{"class":"dojoxPortletIcon "+_1a,"waiRole":"presentation"}); +_9.place(_1c,this.arrowNode,"before"); +this.connect(_1c,"onclick",fn); +if(_1b){ +this.connect(_1c,"onmouseover",function(){ +_8.add(_1c,_1b); +}); +this.connect(_1c,"onmouseout",function(){ +_8.remove(_1c,_1b); +}); +} +return _1c; +},onClose:function(evt){ +_7.set(this.domNode,"display","none"); +},onSizeChange:function(_1d){ +if(_1d==this){ +return; +} +this._updateSize(); +},_updateSize:function(){ +if(!this.open||!this._started||!this.resizeChildren){ +return; +} +if(this._timer){ +clearTimeout(this._timer); +} +this._timer=setTimeout(_3.hitch(this,function(){ +var _1e={w:_7.get(this.domNode,"width"),h:_7.get(this.domNode,"height")}; +for(var i=0;iCy-)M1-}GX%tJ1l3u|kpcaE@C0f`j$Ra_|U^Ar{3yBsf zv=^c_(+b-PK7oZ`HGcE!GkBY2n0wEB=ghxXHZGq#fAff@n(OZ|$)%7|Dp8rqTo$sF zRX5$_E)RLitM7&>ToH;?R6k8qx-yihER5koaRPRc2(7D|Vrv8I@7wNYVrV7uN|Iw?s)EVDg$cV8SpCp+*d7UV;S&gV9F1 zdPRMkHZ`Z%7(wEXu~b>r3mn$p6vIY)pTm+GYRJ9UJ4D%xLpr_f!EhrF9(wr$Ry!Cb zAE7X;(z`*@q03s7CO^&`#+&Wo7!92|9ETt_-uCY=;X%Q^6vc6=)m>c zPriNFT3tK*?%}g*m*&UDOVbA{J72eFdcME<^W^U1+2)t&%k7=dchBBC^<%N}di}-X b>aWS$`>!r;Ex$iKz4PY#r>CRwNEiM9zo2XE literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Portlet/images/icons.png b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Portlet/images/icons.png new file mode 100644 index 0000000000000000000000000000000000000000..d5cbcf5c8708197e7e0fc4a64d6405f137ffc521 GIT binary patch literal 593 zcmV-X08jgPBWojo(etRKwdyyiRe%>W>h$>cY>!eX%?)bjtg5FDLyxg6PU zw?GKFX3=~;f6q4PB@~Clf$-I8mDP+!BNn7}FXRNNRB8_&r2h4K&78GbjjUEHve|41 z`tObjU&`gOG8ha#*bUJ{0 zu-olmHk+S$lgYH$@Au$vIH1{V0^R|vR;$2cH;*`AGMPXq6oTb)39VLZ&3Mx3^tRn@ zlWw<5P=@zUkv^I@*XeYB32#Vb77NVhbLjPY^WktfkY!nl$Ky;MHJ$JZzg;fZ zjU-8$e!mZ;QVGW6F&K?T2nK^-RmgB92*QtWIDE$QJcyzQ9*+ln zJ|7?})a!L{yWODI>nXF~^?H{)546SKQCPc)L;`F!8$_c~K>1m0I-SZG`paXV zGV1uXP$(Q`vl&oD=(^kOSTeQomq4*te8ao_!u%q4`b1O=jYjhm+mx{ALZwo@;R8Hi f@hv959P|DGQtl${50ezB00000NkvXXu0mjf-9Q3( literal 0 HcmV?d00001 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletDialogSettings.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletDialogSettings.js new file mode 100644 index 00000000..03f7b80d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletDialogSettings.js @@ -0,0 +1,19 @@ +//>>built +define("dojox/widget/PortletDialogSettings",["dojo/_base/declare","dojo/_base/window","dojo/dom-style","./PortletSettings","dijit/Dialog"],function(_1,_2,_3,_4,_5){ +return _1("dojox.widget.PortletDialogSettings",[_4],{dimensions:null,constructor:function(_6,_7){ +this.dimensions=_6.dimensions||[300,100]; +},toggle:function(){ +if(!this.dialog){ +this.dialog=new _5({title:this.title}); +_2.body().appendChild(this.dialog.domNode); +this.dialog.containerNode.appendChild(this.domNode); +_3.set(this.dialog.domNode,{"width":this.dimensions[0]+"px","height":this.dimensions[1]+"px"}); +_3.set(this.domNode,"display",""); +} +if(this.dialog.open){ +this.dialog.hide(); +}else{ +this.dialog.show(this.domNode); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletDialogSettings.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletDialogSettings.js.uncompressed.js new file mode 100644 index 00000000..4b570726 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletDialogSettings.js.uncompressed.js @@ -0,0 +1,48 @@ +define("dojox/widget/PortletDialogSettings", [ + "dojo/_base/declare", + "dojo/_base/window", + "dojo/dom-style", + "./PortletSettings", + "dijit/Dialog" + ], function(declare, window, domStyle, PortletSettings, Dialog){ + + return declare("dojox.widget.PortletDialogSettings", [PortletSettings],{ + // summary: + // A settings widget to be used with a dojox.widget.Portlet, which displays + // the contents of this widget in a dijit.Dialog box. + + // dimensions: Array + // The size of the dialog to display. This defaults to [300, 300] + dimensions: null, + + constructor: function(props, node){ + this.dimensions = props.dimensions || [300, 100]; + }, + + toggle: function(){ + // summary: + // Shows and hides the Dialog box. + + if(!this.dialog){ + //require("dijit.Dialog"); + this.dialog = new Dialog({title: this.title}); + + window.body().appendChild(this.dialog.domNode); + + // Move this widget inside the dialog + this.dialog.containerNode.appendChild(this.domNode); + + domStyle.set(this.dialog.domNode,{ + "width" : this.dimensions[0] + "px", + "height" : this.dimensions[1] + "px" + }); + domStyle.set(this.domNode, "display", ""); + } + if(this.dialog.open){ + this.dialog.hide(); + }else{ + this.dialog.show(this.domNode); + } + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletSettings.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletSettings.js new file mode 100644 index 00000000..37ee537e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletSettings.js @@ -0,0 +1,20 @@ +//>>built +define("dojox/widget/PortletSettings",["dojo/_base/declare","dojo/_base/lang","dojo/dom-style","dojo/dom-class","dojo/fx","dijit/_Container","dijit/layout/ContentPane"],function(_1,_2,_3,_4,fx,_5,_6){ +return _1("dojox.widget.PortletSettings",[_5,_6],{portletIconClass:"dojoxPortletSettingsIcon",portletIconHoverClass:"dojoxPortletSettingsIconHover",postCreate:function(){ +_3.set(this.domNode,"display","none"); +_4.add(this.domNode,"dojoxPortletSettingsContainer"); +_4.remove(this.domNode,"dijitContentPane"); +},_setPortletAttr:function(_7){ +this.portlet=_7; +},toggle:function(){ +var n=this.domNode; +if(_3.get(n,"display")=="none"){ +_3.set(n,{"display":"block","height":"1px","width":"auto"}); +fx.wipeIn({node:n}).play(); +}else{ +fx.wipeOut({node:n,onEnd:_2.hitch(this,function(){ +_3.set(n,{"display":"none","height":"","width":""}); +})}).play(); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletSettings.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletSettings.js.uncompressed.js new file mode 100644 index 00000000..21b9e3f5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/PortletSettings.js.uncompressed.js @@ -0,0 +1,72 @@ +define("dojox/widget/PortletSettings", [ + "dojo/_base/declare", + "dojo/_base/lang", + "dojo/dom-style", + "dojo/dom-class", + "dojo/fx", + "dijit/_Container", + "dijit/layout/ContentPane" + ], function(declare, lang, domStyle, domClass, fx, _Container, ContentPane){ + +return declare("dojox.widget.PortletSettings", [_Container, ContentPane], { + // summary: + // A settings widget to be used with a dojox.widget.Portlet. + // description: + // This widget should be placed inside a dojox.widget.Portlet widget. + // It is used to set some preferences for that Portlet. It is essentially + // a ContentPane, and should contain other widgets and DOM nodes that + // do the real work of setting preferences for the portlet. + + // portletIconClass: String + // The CSS class to apply to the icon in the Portlet title bar that is used + // to toggle the visibility of this widget. + portletIconClass: "dojoxPortletSettingsIcon", + + // portletIconHoverClass: String + // The CSS class to apply to the icon in the Portlet title bar that is used + // to toggle the visibility of this widget when the mouse hovers over it. + portletIconHoverClass: "dojoxPortletSettingsIconHover", + + postCreate: function(){ + // summary: + // Sets the require CSS classes on the widget. + + // Start the PortletSettings widget hidden, always. + domStyle.set(this.domNode, "display", "none"); + domClass.add(this.domNode, "dojoxPortletSettingsContainer"); + + // Remove the unwanted content pane class. + domClass.remove(this.domNode, "dijitContentPane"); + }, + + _setPortletAttr: function(portlet){ + // summary: + // Sets the portlet that encloses this widget. + this.portlet = portlet; + }, + + toggle: function(){ + // summary: + // Toggles the visibility of this widget. + var n = this.domNode; + if(domStyle.get(n, "display") == "none"){ + domStyle.set(n,{ + "display": "block", + "height": "1px", + "width": "auto" + }); + fx.wipeIn({ + node: n + }).play(); + }else{ + fx.wipeOut({ + node: n, + onEnd: lang.hitch(this, function(){ + domStyle.set(n,{"display": "none", "height": "", "width":""}); + } + )}).play(); + } + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/README new file mode 100644 index 00000000..59315f77 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/README @@ -0,0 +1,186 @@ +------------------------------------------------------------------------------- +dojox.widget Collection +------------------------------------------------------------------------------- +Version 1.0 +Release date: 10/31/2007 +------------------------------------------------------------------------------- +Project state: + +[Calendar] experimental +[CalendarFx] experimental +[ColorPicker] beta +[Dialog] experimental +[DialogSimple] beta +[FeedPortlet] experimental +[FilePicker] experimental +[FisheyeList] experimental +[FisheyeLite] beta +[Iterator] experimental +[Loader] experimental +[Pager] experimental +[Portlet] experimental +[PlaceholderMenuItem] experimental +[Roller] experimental +[RollingList] experimental +[SortList] experimental +[TitleGroup] beta +[Toaster] experimental +[Wizard] experimental +[AnalogGauge] experimental +[BarGauge] experimental +[Standby] experimental + +------------------------------------------------------------------------------- +Credits: + +[Calendar] Shane O'Sullivan, Dylan Schiemann (dylan) +[CalendarFx] Shane O'Sullivan, Dylan Schiemann (dylan) +[ColorPicker] Peter Higgins (dante) +[Dialog] Peter Higgins (dante) +[DialogSimple] Peter Higgins (dante) +[FeedPortlet] Shane O'Sullivan +[FilePicker] Nathan Toone (toonetown) +[FisheyeList] Karl Tiedt (kteidt) +[FisheyeLite] Peter Higgins (dante) +[Iterator] Alex Russell (slightlyoff) +[Loader] Peter Higgins (dante) +[Pager] Nikolai Onken (nonken), Peter Higgins (dante); +[PlaceholderMenuItem] Nathan Toone (toonetown) +[Portlet] Shane O'Sullivan +[Roller] Peter Higgins (dante) +[RollingList] Nathan Toone (toonetown) +[SortList] Peter Higgins (dante) +[TitleGroup] Peter Higgins (dante) +[Toaster] Adam Peller (peller) +[Wizard] Peter Higgins (dante) +[AnalogGauge] Benjamin Schell (bmschell) CCLA +[BarGauge] Benjamin Schell (bmschell) CCLA +[Standby] Jared Jurkiewicz (jaredj) CCLA +[UpgradeBar] Mike Wilcox (mwilcox), Revin Guillen + +------------------------------------------------------------------------------- +Project description + + This is a collection of standalone widgets for use in + your website. Each individual widget is independent + of the others. + +------------------------------------------------------------------------------- +Dependencies: + + Each widget has it's own requirements and dependencies. + Most inherit from dijit base-classes such as dijit._Widget, + dijit._Templated, etc ... So we will assume the availablility + of dojo (core), and dijit packages. + + Each individual component stores resources in a folder that shares + a name with the Widget. For instance: + + the Dialog lives in + dojox/widget/Dialog.js ... + + and the folder: + dojox/widget/Dialog/ contains a 'Dialog.css', the required + styles for that particular widget. All required templates and + images reside in the folder. + + This differs slightly from the rest of DojoX in that each other + project uses a shared resources/ folder in the project folder, + though uses the same naming convention for stylesheets and templates. + + eg: + dojox/layout/resources/ExpandoPane.css + dojox.layout.ExpandoPane + +------------------------------------------------------------------------------- +Documentation + + Please refer to the API-tool, or in-line documentation. All of these + widgets are of varying use, quality, and documentation completion. + +------------------------------------------------------------------------------- +Installation instructions + + These are standalone Widgets, so putting the [widget].js file + in your dojox/widget folder, and copying any files in the + /dojox/widget/[widget]/ folder as supplements/templates/etc + should be all you need to do. + + eg: FisheyeList: + /dojox/widget/FisheyeList.js + /dojox/widget/FisheyeList/FisheyeList.css + + should be all you need to use the Fisheye widget. + + you can safely import the whole widget project into your + dojox/ root directory from the following SVN url: + + http://svn.dojotoolkit.org/src/dojox/trunk/widget + +------------------------------------------------------------------------------- +Other Notes (Brief widget list): + + * ColorPicker - An HSV ColorPicker intended to be a drop down + + * Calendar - An extension on the dijit._Calendar providing a different UI + * CalendarFx - additional mixable FX for transitions in dojox.widget.Calendar + + * Dialog - An extended version of dijit.Dialog with man options and transition. + + * DialogSimple - A simple Dijit Dialog providing `dojox.layout.ContentPane` integration + + * FilePicker - a widget for browsing server-side file systems (can use + dojox.data.FileStore as backend store) + + * FisheyeList - the classic FishEye Picker (abandoned) + + * FisheyeLite - A partial replacement for the FisheyeList - serious performance + gains, and entirely more extensible in that it simply animates defined + properties, relying on the natural styling as a foundation. + + * Iterator - Basic array and data store iterator class + + * Loader - an experimental Class that listens to XHR + connections in the background, and displays + a loading indicator. Loader will be removed in 1.3, and is (abandoned). + + * PlaceholderMenuItem - a menu item that can be used to inject other menu + items at a given location. Extends dijit.Menu directly. + + * Roller - A component to show many lines of text in a single area, rotating + through the options available. Also provides RollerSlide, an extension + to the stock fading roller to add a slide animation to the transition. + + * RollingList - A component of the FilePicker widget + + * SortList - a degradable UL with a fixed header, scrolling, + and sorting. Can be the direct descendant of a + LayoutContainer and will size to fit. + + * TitleGroup - A container offering variable height TitlePane access, though + behaves like an AccordionContainer + + * Toaster - a messaging system to display unobtrusive + alerts on screen. + + * Wizard - a StackContainer with built-in navigation to + ease in the creation of 'step-based' content. + Requires dojo >= 1.1 + + * AnalogGauge - an analog style customizable gauge for displaying values in an + animated fashion and with multiple indicators. Supports easings for + indicator animations, transparent overlays, etc. Very flexible. + Requires dojo >= 1.3 + + * BarGauge - a bar style gauge for displaying values in an animated fashion + and with multiple indicators. Supports easings for indicator animations, + etc. Very flexible. + Requires dojo >= 1.3 + + * Standby - a 'blocker' style widget to overlay a translucent div + image over a DOM node/widget + to indicate busy. Overlay color, image, and alt text can all be customized. + Requires dojo >= 1.3 + + * UpgradeBar - Displays the "yellow bar" at the top of a page to indicate the user + needs to upgrade their browser or a plugin + Requires dojo >= 1.3 diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Roller.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Roller.js new file mode 100644 index 00000000..cb1e6bb8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Roller.js @@ -0,0 +1,76 @@ +//>>built +define("dojox/widget/Roller",["dojo","dijit","dijit/_Widget"],function(_1,_2){ +var _3=_1.declare("dojox.widget.Roller",_2._Widget,{delay:2000,autoStart:true,itemSelector:"> li",durationIn:400,durationOut:275,_idx:-1,postCreate:function(){ +if(!this["items"]){ +this.items=[]; +} +_1.addClass(this.domNode,"dojoxRoller"); +_1.query(this.itemSelector,this.domNode).forEach(function(_4,i){ +this.items.push(_4.innerHTML); +if(i==0){ +this._roller=_4; +this._idx=0; +}else{ +_1.destroy(_4); +} +},this); +if(!this._roller){ +this._roller=_1.create("li",null,this.domNode); +} +this.makeAnims(); +if(this.autoStart){ +this.start(); +} +},makeAnims:function(){ +var n=this.domNode; +_1.mixin(this,{_anim:{"in":_1.fadeIn({node:n,duration:this.durationIn}),"out":_1.fadeOut({node:n,duration:this.durationOut})}}); +this._setupConnects(); +},_setupConnects:function(){ +var _5=this._anim; +this.connect(_5["out"],"onEnd",function(){ +this._setIndex(this._idx+1); +_5["in"].play(15); +}); +this.connect(_5["in"],"onEnd",function(){ +this._timeout=setTimeout(_1.hitch(this,"_run"),this.delay); +}); +},start:function(){ +if(!this.rolling){ +this.rolling=true; +this._run(); +} +},_run:function(){ +this._anim["out"].gotoPercent(0,true); +},stop:function(){ +this.rolling=false; +var m=this._anim,t=this._timeout; +if(t){ +clearTimeout(t); +} +m["in"].stop(); +m["out"].stop(); +},_setIndex:function(i){ +var l=this.items.length-1; +if(i<0){ +i=l; +} +if(i>l){ +i=0; +} +this._roller.innerHTML=this.items[i]||"error!"; +this._idx=i; +}}); +_3.RollerSlide=_1.declare("dojox.widget.RollerSlide",dojox.widget.Roller,{durationOut:175,makeAnims:function(){ +var n=this.domNode,_6="position",_7={top:{end:0,start:25},opacity:1}; +_1.style(n,_6,"relative"); +_1.style(this._roller,_6,"absolute"); +_1.mixin(this,{_anim:{"in":_1.animateProperty({node:n,duration:this.durationIn,properties:_7}),"out":_1.fadeOut({node:n,duration:this.durationOut})}}); +this._setupConnects(); +}}); +_3._Hover=_1.declare("dojox.widget._RollerHover",null,{postCreate:function(){ +this.inherited(arguments); +this.connect(this.domNode,"onmouseenter","stop"); +this.connect(this.domNode,"onmouseleave","start"); +}}); +return _3; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Roller.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Roller.js.uncompressed.js new file mode 100644 index 00000000..3488e466 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Roller.js.uncompressed.js @@ -0,0 +1,237 @@ +define("dojox/widget/Roller", ["dojo", "dijit", "dijit/_Widget"], function(dojo, dijit){ + + var Roller = dojo.declare("dojox.widget.Roller", dijit._Widget, { + // summary: + // A simple widget to take an unordered-list of Text and roll through them + // description: + // The Roller widget takes an unordered-list of items, and converts + // them to a single-area (the size of one list-item, however you so choose + // to style it) and loops continually, fading between items. + // + // In it's current state, it requires it be created from an unordered (or ordered) + // list, though can contain complex markup. + // + // You can manipulate the `items` array at any point during the cycle with + // standard array manipulation techniques. + // + // The class "dojoxRoller" is added to the UL element for styling purposes. + // example: + // | // create a scroller from a unordered list with id="lister" + // | var thinger = new dojox.widget.Roller.Roller({},"lister"); + // + // example: + // | // create a scroller from a fixed array, and place in the DOM: + // | new dojox.widget.Roller({ items:["one","two","three"] }).placeAt(dojo.body()); + // + // example: + // | // add an item: + // | dijit.byId("roller").items.push("I am a new Label"); + // + // example: + // | // stop a roller from rolling: + // | dijit.byId("roller").stop(); + + // delay: Integer + // Interval between rolls + delay: 2000, + + // autoStart: Boolean + // Toggle to control starup behavior. Call .start() manually + // if set to `false` + autoStart: true, + + // itemSelector: String + // A CSS selector to be used by `dojo.query` to find the children + // items in this widget. Defaults to "> li", finding only first-children + // list-items in the list, allowing for embedded lists to occur. + itemSelector: "> li", + + // durationIn: Integer + // Speed (in ms) to apply to the "in" animation (show the node) + durationIn: 400, + + // durationOut: Integer + // Speed (in ms) to apply to the "out" animation (hide the showing node) + durationOut: 275, + /*===== + // items: Array + // If populated prior to instantiation, is used as the Items over the children + items: [], + =====*/ + + // _idx: Integer + // Index of the the currently visible item in the list of items[] + _idx: -1, + + postCreate: function(){ + + // add some instance vars: + if(!this["items"]){ + this.items = []; + } + + dojo.addClass(this.domNode,"dojoxRoller"); + + // find all the items in this list, and popuplate + dojo.query(this.itemSelector, this.domNode).forEach(function(item, i){ + this.items.push(item.innerHTML); + // reuse the first match, destroy the rest + if(i == 0){ + this._roller = item; + this._idx = 0; + }else{ dojo.destroy(item); } + }, this); + + // handle the case where items[] were passed, and no srcNodeRef exists + if(!this._roller){ + this._roller = dojo.create('li', null, this.domNode); + } + // stub out animation creation (for overloading maybe later) + this.makeAnims(); + + // and start, if true: + if(this.autoStart){ this.start(); } + + }, + + makeAnims: function(){ + // summary: + // Animation creator function. Need to create an 'in' and 'out' + // Animation stored in _anim Object, which the rest of the widget + // will reuse. + var n = this.domNode; + dojo.mixin(this, { + _anim: { + "in": dojo.fadeIn({ node:n, duration: this.durationIn }), + "out": dojo.fadeOut({ node:n, duration: this.durationOut }) + } + }); + this._setupConnects(); + + }, + + _setupConnects: function(){ + // summary: + // setup the loop connection logic + var anim = this._anim; + + this.connect(anim["out"], "onEnd", function(){ + // onEnd of the `out` animation, select the next items and play `in` animation + this._setIndex(this._idx + 1); + anim["in"].play(15); + }); + + this.connect(anim["in"], "onEnd", function(){ + // onEnd of the `in` animation, call `start` again after some delay: + this._timeout = setTimeout(dojo.hitch(this, "_run"), this.delay); + }); + }, + + start: function(){ + // summary: + // Starts to Roller looping + if(!this.rolling){ + this.rolling = true; + this._run(); + } + }, + + _run: function(){ + this._anim["out"].gotoPercent(0, true); + }, + + stop: function(){ + // summary: + // Stops the Roller from looping anymore. + this.rolling = false; + + var m = this._anim, + t = this._timeout; + + if(t){ clearTimeout(t); } + m["in"].stop(); + m["out"].stop(); + }, + + _setIndex: function(i){ + // summary: + // Set the Roller to some passed index. If beyond range, go to first. + var l = this.items.length - 1; + if(i < 0){ i = l; } + if(i > l){ i = 0; } + this._roller.innerHTML = this.items[i] || "error!"; + this._idx = i; + } + + }); + + Roller.RollerSlide = dojo.declare("dojox.widget.RollerSlide", dojox.widget.Roller, { + // summary: + // An add-on to the Roller to modify animations. This produces + // a slide-from-bottom like effect. See `dojox.widget.Roller` for + // full API information. + + durationOut: 175, // slightly faster than default + + makeAnims: function(){ + // summary: + // Animation creator function. Need to create an 'in' and 'out' + // Animation stored in _anim Object, which the rest of the widget + // will reuse. + + var n = this.domNode, pos = "position", + props = { + top: { end: 0, start: 25 }, + opacity: 1 + } + ; + + dojo.style(n, pos, "relative"); + dojo.style(this._roller, pos, "absolute"); + + dojo.mixin(this, { + _anim: { + + "in": dojo.animateProperty({ + node: n, + duration: this.durationIn, + properties: props + }), + + "out": dojo.fadeOut({ node: n, duration: this.durationOut }) + } + }); + // don't forget to do this in the class. override if necessary. + this._setupConnects(); + } + + }); + + Roller._Hover = dojo.declare("dojox.widget._RollerHover", null, { + // summary: + // A mixin class to provide a way to automate the "stop on hover" functionality. + // + // description: + // A mixin class used to provide a way to automate a "stop on hover" behavior, + // while still allowing for ambiguous subclassing for custom animations. + // Simply mix this class into a `dojox.widget.Roller` variant, and instantiate + // as you would. The hover connection is done automatically. + // + // The "hover" functionality is as such: Stop rotation while the mouse is over the + // instance, and resume again once leaving. Even if autoStart is disabled, the widget + // will start if a mouse enters and leaves the node in this case. + // + // example: + // | dojo.declare("my.Roller", [Roller.RollerSlide, Roller._Hover], {}); + // | new my.Roller({}, "myList"); + + postCreate: function(){ + this.inherited(arguments); + this.connect(this.domNode, "onmouseenter", "stop"); + this.connect(this.domNode, "onmouseleave", "start"); + } + + }); + + return Roller; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/RollingList.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/RollingList.js new file mode 100644 index 00000000..dae024e3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/RollingList.js @@ -0,0 +1,890 @@ +//>>built +define("dojox/widget/RollingList",["dijit","dojo","dojox","dojo/i18n!dijit/nls/common","dojo/require!dojo/window,dijit/layout/ContentPane,dijit/_Templated,dijit/_Contained,dijit/layout/_LayoutWidget,dijit/Menu,dijit/form/Button,dijit/focus,dijit/_base/focus,dojox/html/metrics,dojo/i18n"],function(_1,_2,_3){ +_2.provide("dojox.widget.RollingList"); +_2.experimental("dojox.widget.RollingList"); +_2.require("dojo.window"); +_2.require("dijit.layout.ContentPane"); +_2.require("dijit._Templated"); +_2.require("dijit._Contained"); +_2.require("dijit.layout._LayoutWidget"); +_2.require("dijit.Menu"); +_2.require("dijit.form.Button"); +_2.require("dijit.focus"); +_2.require("dijit._base.focus"); +_2.require("dojox.html.metrics"); +_2.require("dojo.i18n"); +_2.requireLocalization("dijit","common"); +_2.declare("dojox.widget._RollingListPane",[_1.layout.ContentPane,_1._Templated,_1._Contained],{templateString:"
          ",parentWidget:null,parentPane:null,store:null,items:null,query:null,queryOptions:null,_focusByNode:true,minWidth:0,_setContentAndScroll:function(_4,_5){ +this._setContent(_4,_5); +this.parentWidget.scrollIntoView(this); +},_updateNodeWidth:function(n,_6){ +n.style.width=""; +var _7=_2.marginBox(n).w; +if(_7<_6){ +_2.marginBox(n,{w:_6}); +} +},_onMinWidthChange:function(v){ +this._updateNodeWidth(this.domNode,v); +},_setMinWidthAttr:function(v){ +if(v!==this.minWidth){ +this.minWidth=v; +this._onMinWidthChange(v); +} +},startup:function(){ +if(this._started){ +return; +} +if(this.store&&this.store.getFeatures()["dojo.data.api.Notification"]){ +window.setTimeout(_2.hitch(this,function(){ +this.connect(this.store,"onSet","_onSetItem"); +this.connect(this.store,"onNew","_onNewItem"); +this.connect(this.store,"onDelete","_onDeleteItem"); +}),1); +} +this.connect(this.focusNode||this.domNode,"onkeypress","_focusKey"); +this.parentWidget._updateClass(this.domNode,"Pane"); +this.inherited(arguments); +this._onMinWidthChange(this.minWidth); +},_focusKey:function(e){ +if(e.charOrCode==_2.keys.BACKSPACE){ +_2.stopEvent(e); +return; +}else{ +if(e.charOrCode==_2.keys.LEFT_ARROW&&this.parentPane){ +this.parentPane.focus(); +this.parentWidget.scrollIntoView(this.parentPane); +}else{ +if(e.charOrCode==_2.keys.ENTER){ +this.parentWidget._onExecute(); +} +} +} +},focus:function(_8){ +if(this.parentWidget._focusedPane!=this){ +this.parentWidget._focusedPane=this; +this.parentWidget.scrollIntoView(this); +if(this._focusByNode&&(!this.parentWidget._savedFocus||_8)){ +try{ +(this.focusNode||this.domNode).focus(); +} +catch(e){ +} +} +} +},_onShow:function(){ +this.inherited(arguments); +if((this.store||this.items)&&((this.refreshOnShow&&this.domNode)||(!this.isLoaded&&this.domNode))){ +this.refresh(); +} +},_load:function(){ +this.isLoaded=false; +if(this.items){ +this._setContentAndScroll(this.onLoadStart(),true); +window.setTimeout(_2.hitch(this,"_doQuery"),1); +}else{ +this._doQuery(); +} +},_doLoadItems:function(_9,_a){ +var _b=0,_c=this.store; +_2.forEach(_9,function(_d){ +if(!_c.isItemLoaded(_d)){ +_b++; +} +}); +if(_b===0){ +_a(); +}else{ +var _e=function(_f){ +_b--; +if((_b)===0){ +_a(); +} +}; +_2.forEach(_9,function(_10){ +if(!_c.isItemLoaded(_10)){ +_c.loadItem({item:_10,onItem:_e}); +} +}); +} +},_doQuery:function(){ +if(!this.domNode){ +return; +} +var _11=this.parentWidget.preloadItems; +_11=(_11===true||(this.items&&this.items.length<=Number(_11))); +if(this.items&&_11){ +this._doLoadItems(this.items,_2.hitch(this,"onItems")); +}else{ +if(this.items){ +this.onItems(); +}else{ +this._setContentAndScroll(this.onFetchStart(),true); +this.store.fetch({query:this.query,onComplete:function(_12){ +this.items=_12; +this.onItems(); +},onError:function(e){ +this._onError("Fetch",e); +},scope:this}); +} +} +},_hasItem:function(_13){ +var _14=this.items||[]; +for(var i=0,_15;(_15=_14[i]);i++){ +if(this.parentWidget._itemsMatch(_15,_13)){ +return true; +} +} +return false; +},_onSetItem:function(_16,_17,_18,_19){ +if(this._hasItem(_16)){ +this.refresh(); +} +},_onNewItem:function(_1a,_1b){ +var sel; +if((!_1b&&!this.parentPane)||(_1b&&this.parentPane&&this.parentPane._hasItem(_1b.item)&&(sel=this.parentPane._getSelected())&&this.parentWidget._itemsMatch(sel.item,_1b.item))){ +this.items.push(_1a); +this.refresh(); +}else{ +if(_1b&&this.parentPane&&this._hasItem(_1b.item)){ +this.refresh(); +} +} +},_onDeleteItem:function(_1c){ +if(this._hasItem(_1c)){ +this.items=_2.filter(this.items,function(i){ +return (i!=_1c); +}); +this.refresh(); +} +},onFetchStart:function(){ +return this.loadingMessage; +},onFetchError:function(_1d){ +return this.errorMessage; +},onLoadStart:function(){ +return this.loadingMessage; +},onLoadError:function(_1e){ +return this.errorMessage; +},onItems:function(){ +if(!this.onLoadDeferred){ +this.cancel(); +this.onLoadDeferred=new _2.Deferred(_2.hitch(this,"cancel")); +} +this._onLoadHandler(); +}}); +_2.declare("dojox.widget._RollingListGroupPane",[_3.widget._RollingListPane],{templateString:"
          "+"
          "+"
          "+"
          ",_menu:null,_setContent:function(_1f){ +if(!this._menu){ +this.inherited(arguments); +} +},_onMinWidthChange:function(v){ +if(!this._menu){ +return; +} +var _20=_2.marginBox(this.domNode).w; +var _21=_2.marginBox(this._menu.domNode).w; +this._updateNodeWidth(this._menu.domNode,v-(_20-_21)); +},onItems:function(){ +var _22,_23=false; +if(this._menu){ +_22=this._getSelected(); +this._menu.destroyRecursive(); +} +this._menu=this._getMenu(); +var _24,_25; +if(this.items.length){ +_2.forEach(this.items,function(_26){ +_24=this.parentWidget._getMenuItemForItem(_26,this); +if(_24){ +if(_22&&this.parentWidget._itemsMatch(_24.item,_22.item)){ +_25=_24; +} +this._menu.addChild(_24); +} +},this); +}else{ +_24=this.parentWidget._getMenuItemForItem(null,this); +if(_24){ +this._menu.addChild(_24); +} +} +if(_25){ +this._setSelected(_25); +if((_22&&!_22.children&&_25.children)||(_22&&_22.children&&!_25.children)){ +var _27=this.parentWidget._getPaneForItem(_25.item,this,_25.children); +if(_27){ +this.parentWidget.addChild(_27,this.getIndexInParent()+1); +}else{ +this.parentWidget._removeAfter(this); +this.parentWidget._onItemClick(null,this,_25.item,_25.children); +} +} +}else{ +if(_22){ +this.parentWidget._removeAfter(this); +} +} +this.containerNode.innerHTML=""; +this.containerNode.appendChild(this._menu.domNode); +this.parentWidget.scrollIntoView(this); +this._checkScrollConnection(true); +this.inherited(arguments); +this._onMinWidthChange(this.minWidth); +},_checkScrollConnection:function(_28){ +var _29=this.store; +if(this._scrollConn){ +this.disconnect(this._scrollConn); +} +delete this._scrollConn; +if(!_2.every(this.items,function(i){ +return _29.isItemLoaded(i); +})){ +if(_28){ +this._loadVisibleItems(); +} +this._scrollConn=this.connect(this.domNode,"onscroll","_onScrollPane"); +} +},startup:function(){ +this.inherited(arguments); +this.parentWidget._updateClass(this.domNode,"GroupPane"); +},focus:function(_2a){ +if(this._menu){ +if(this._pendingFocus){ +this.disconnect(this._pendingFocus); +} +delete this._pendingFocus; +var _2b=this._menu.focusedChild; +if(!_2b){ +var _2c=_2.query(".dojoxRollingListItemSelected",this.domNode)[0]; +if(_2c){ +_2b=_1.byNode(_2c); +} +} +if(!_2b){ +_2b=this._menu.getChildren()[0]||this._menu; +} +this._focusByNode=false; +if(_2b.focusNode){ +if(!this.parentWidget._savedFocus||_2a){ +try{ +_2b.focusNode.focus(); +} +catch(e){ +} +} +window.setTimeout(function(){ +try{ +_2.window.scrollIntoView(_2b.focusNode); +} +catch(e){ +} +},1); +}else{ +if(_2b.focus){ +if(!this.parentWidget._savedFocus||_2a){ +_2b.focus(); +} +}else{ +this._focusByNode=true; +} +} +this.inherited(arguments); +}else{ +if(!this._pendingFocus){ +this._pendingFocus=this.connect(this,"onItems","focus"); +} +} +},_getMenu:function(){ +var _2d=this; +var _2e=new _1.Menu({parentMenu:this.parentPane?this.parentPane._menu:null,onCancel:function(_2f){ +if(_2d.parentPane){ +_2d.parentPane.focus(true); +} +},_moveToPopup:function(evt){ +if(this.focusedChild&&!this.focusedChild.disabled){ +this.onItemClick(this.focusedChild,evt); +} +}},this.menuNode); +this.connect(_2e,"onItemClick",function(_30,evt){ +if(_30.disabled){ +return; +} +evt.alreadySelected=_2.hasClass(_30.domNode,"dojoxRollingListItemSelected"); +if(evt.alreadySelected&&((evt.type=="keypress"&&evt.charOrCode!=_2.keys.ENTER)||(evt.type=="internal"))){ +var p=this.parentWidget.getChildren()[this.getIndexInParent()+1]; +if(p){ +p.focus(true); +this.parentWidget.scrollIntoView(p); +} +}else{ +this._setSelected(_30,_2e); +this.parentWidget._onItemClick(evt,this,_30.item,_30.children); +if(evt.type=="keypress"&&evt.charOrCode==_2.keys.ENTER){ +this.parentWidget._onExecute(); +} +} +}); +if(!_2e._started){ +_2e.startup(); +} +return _2e; +},_onScrollPane:function(){ +if(this._visibleLoadPending){ +window.clearTimeout(this._visibleLoadPending); +} +this._visibleLoadPending=window.setTimeout(_2.hitch(this,"_loadVisibleItems"),500); +},_loadVisibleItems:function(){ +delete this._visibleLoadPending; +var _31=this._menu; +if(!_31){ +return; +} +var _32=_31.getChildren(); +if(!_32||!_32.length){ +return; +} +var _33=function(n,m,pb){ +var s=_2.getComputedStyle(n); +var r=0; +if(m){ +r+=_2._getMarginExtents(n,s).t; +} +if(pb){ +r+=_2._getPadBorderExtents(n,s).t; +} +return r; +}; +var _34=_33(this.domNode,false,true)+_33(this.containerNode,true,true)+_33(_31.domNode,true,true)+_33(_32[0].domNode,true,false); +var h=_2.contentBox(this.domNode).h; +var _35=this.domNode.scrollTop-_34-(h/2); +var _36=_35+(3*h/2); +var _37=_2.filter(_32,function(c){ +var cnt=c.domNode.offsetTop; +var s=c.store; +var i=c.item; +return (cnt>=_35&&cnt<=_36&&!s.isItemLoaded(i)); +}); +var _38=_2.map(_37,function(c){ +return c.item; +}); +var _39=_2.hitch(this,function(){ +var _3a=this._getSelected(); +var _3b; +_2.forEach(_38,function(_3c,idx){ +var _3d=this.parentWidget._getMenuItemForItem(_3c,this); +var _3e=_37[idx]; +var _3f=_3e.getIndexInParent(); +_31.removeChild(_3e); +if(_3d){ +if(_3a&&this.parentWidget._itemsMatch(_3d.item,_3a.item)){ +_3b=_3d; +} +_31.addChild(_3d,_3f); +if(_31.focusedChild==_3e){ +_31.focusChild(_3d); +} +} +_3e.destroy(); +},this); +this._checkScrollConnection(false); +}); +this._doLoadItems(_38,_39); +},_getSelected:function(_40){ +if(!_40){ +_40=this._menu; +} +if(_40){ +var _41=this._menu.getChildren(); +for(var i=0,_42;(_42=_41[i]);i++){ +if(_2.hasClass(_42.domNode,"dojoxRollingListItemSelected")){ +return _42; +} +} +} +return null; +},_setSelected:function(_43,_44){ +if(!_44){ +_44=this._menu; +} +if(_44){ +_2.forEach(_44.getChildren(),function(i){ +this.parentWidget._updateClass(i.domNode,"Item",{"Selected":(_43&&(i==_43&&!i.disabled))}); +},this); +} +}}); +_2.declare("dojox.widget.RollingList",[_1._Widget,_1._Templated,_1._Container],{templateString:_2.cache("dojox.widget","RollingList/RollingList.html","
          \n"),widgetsInTemplate:true,className:"",store:null,query:null,queryOptions:null,childrenAttrs:["children"],parentAttr:"",value:null,executeOnDblClick:true,preloadItems:false,showButtons:false,okButtonLabel:"",cancelButtonLabel:"",minPaneWidth:0,postMixInProperties:function(){ +this.inherited(arguments); +var loc=_2.i18n.getLocalization("dijit","common"); +this.okButtonLabel=this.okButtonLabel||loc.buttonOk; +this.cancelButtonLabel=this.cancelButtonLabel||loc.buttonCancel; +},_setShowButtonsAttr:function(_45){ +var _46=false; +if((this.showButtons!=_45&&this._started)||(this.showButtons==_45&&!this.started)){ +_46=true; +} +_2.toggleClass(this.domNode,"dojoxRollingListButtonsHidden",!_45); +this.showButtons=_45; +if(_46){ +if(this._started){ +this.layout(); +}else{ +window.setTimeout(_2.hitch(this,"layout"),0); +} +} +},_itemsMatch:function(_47,_48){ +if(!_47&&!_48){ +return true; +}else{ +if(!_47||!_48){ +return false; +} +} +return (_47==_48||(this._isIdentity&&this.store.getIdentity(_47)==this.store.getIdentity(_48))); +},_removeAfter:function(idx){ +if(typeof idx!="number"){ +idx=this.getIndexOfChild(idx); +} +if(idx>=0){ +_2.forEach(this.getChildren(),function(c,i){ +if(i>idx){ +this.removeChild(c); +c.destroyRecursive(); +} +},this); +} +var _49=this.getChildren(),_4a=_49[_49.length-1]; +var _4b=null; +while(_4a&&!_4b){ +var val=_4a._getSelected?_4a._getSelected():null; +if(val){ +_4b=val.item; +} +_4a=_4a.parentPane; +} +if(!this._setInProgress){ +this._setValue(_4b); +} +},addChild:function(_4c,_4d){ +if(_4d>0){ +this._removeAfter(_4d-1); +} +this.inherited(arguments); +if(!_4c._started){ +_4c.startup(); +} +_4c.attr("minWidth",this.minPaneWidth); +this.layout(); +if(!this._savedFocus){ +_4c.focus(); +} +},_setMinPaneWidthAttr:function(_4e){ +if(_4e!==this.minPaneWidth){ +this.minPaneWidth=_4e; +_2.forEach(this.getChildren(),function(c){ +c.attr("minWidth",_4e); +}); +} +},_updateClass:function(_4f,_50,_51){ +if(!this._declaredClasses){ +this._declaredClasses=("dojoxRollingList "+this.className).split(" "); +} +_2.forEach(this._declaredClasses,function(c){ +if(c){ +_2.addClass(_4f,c+_50); +for(var k in _51||{}){ +_2.toggleClass(_4f,c+_50+k,_51[k]); +} +_2.toggleClass(_4f,c+_50+"FocusSelected",(_2.hasClass(_4f,c+_50+"Focus")&&_2.hasClass(_4f,c+_50+"Selected"))); +_2.toggleClass(_4f,c+_50+"HoverSelected",(_2.hasClass(_4f,c+_50+"Hover")&&_2.hasClass(_4f,c+_50+"Selected"))); +} +}); +},scrollIntoView:function(_52){ +if(this._scrollingTimeout){ +window.clearTimeout(this._scrollingTimeout); +} +delete this._scrollingTimeout; +this._scrollingTimeout=window.setTimeout(_2.hitch(this,function(){ +if(_52.domNode){ +_2.window.scrollIntoView(_52.domNode); +} +delete this._scrollingTimeout; +return; +}),1); +},resize:function(_53){ +_1.layout._LayoutWidget.prototype.resize.call(this,_53); +},layout:function(){ +var _54=this.getChildren(); +if(this._contentBox){ +var bn=this.buttonsNode; +var _55=this._contentBox.h-_2.marginBox(bn).h-_3.html.metrics.getScrollbar().h; +_2.forEach(_54,function(c){ +_2.marginBox(c.domNode,{h:_55}); +}); +} +if(this._focusedPane){ +var foc=this._focusedPane; +delete this._focusedPane; +if(!this._savedFocus){ +foc.focus(); +} +}else{ +if(_54&&_54.length){ +if(!this._savedFocus){ +_54[0].focus(); +} +} +} +},_onChange:function(_56){ +this.onChange(_56); +},_setValue:function(_57){ +delete this._setInProgress; +if(!this._itemsMatch(this.value,_57)){ +this.value=_57; +this._onChange(_57); +} +},_setValueAttr:function(_58){ +if(this._itemsMatch(this.value,_58)&&!_58){ +return; +} +if(this._setInProgress&&this._setInProgress===_58){ +return; +} +this._setInProgress=_58; +if(!_58||!this.store.isItem(_58)){ +var _59=this.getChildren()[0]; +_59._setSelected(null); +this._onItemClick(null,_59,null,null); +return; +} +var _5a=_2.hitch(this,function(_5b,_5c){ +var _5d=this.store,id; +if(this.parentAttr&&_5d.getFeatures()["dojo.data.api.Identity"]&&((id=this.store.getValue(_5b,this.parentAttr))||id==="")){ +var cb=function(i){ +if(_5d.getIdentity(i)==_5d.getIdentity(_5b)){ +_5c(null); +}else{ +_5c([i]); +} +}; +if(id===""){ +_5c(null); +}else{ +if(typeof id=="string"){ +_5d.fetchItemByIdentity({identity:id,onItem:cb}); +}else{ +if(_5d.isItem(id)){ +cb(id); +} +} +} +}else{ +var _5e=this.childrenAttrs.length; +var _5f=[]; +_2.forEach(this.childrenAttrs,function(_60){ +var q={}; +q[_60]=_5b; +_5d.fetch({query:q,scope:this,onComplete:function(_61){ +if(this._setInProgress!==_58){ +return; +} +_5f=_5f.concat(_61); +_5e--; +if(_5e===0){ +_5c(_5f); +} +}}); +},this); +} +}); +var _62=_2.hitch(this,function(_63,idx){ +var set=_63[idx]; +var _64=this.getChildren()[idx]; +var _65; +if(set&&_64){ +var fx=_2.hitch(this,function(){ +if(_65){ +this.disconnect(_65); +} +delete _65; +if(this._setInProgress!==_58){ +return; +} +var _66=_2.filter(_64._menu.getChildren(),function(i){ +return this._itemsMatch(i.item,set); +},this)[0]; +if(_66){ +idx++; +_64._menu.onItemClick(_66,{type:"internal",stopPropagation:function(){ +},preventDefault:function(){ +}}); +if(_63[idx]){ +_62(_63,idx); +}else{ +this._setValue(set); +this.onItemClick(set,_64,this.getChildItems(set)); +} +} +}); +if(!_64.isLoaded){ +_65=this.connect(_64,"onLoad",fx); +}else{ +fx(); +} +}else{ +if(idx===0){ +this.set("value",null); +} +} +}); +var _67=[]; +var _68=_2.hitch(this,function(_69){ +if(_69&&_69.length){ +_67.push(_69[0]); +_5a(_69[0],_68); +}else{ +if(!_69){ +_67.pop(); +} +_67.reverse(); +_62(_67,0); +} +}); +var ns=this.domNode.style; +if(ns.display=="none"||ns.visibility=="hidden"){ +this._setValue(_58); +}else{ +if(!this._itemsMatch(_58,this._visibleItem)){ +_68([_58]); +} +} +},_onItemClick:function(evt,_6a,_6b,_6c){ +if(evt){ +var _6d=this._getPaneForItem(_6b,_6a,_6c); +var _6e=(evt.type=="click"&&evt.alreadySelected); +if(_6e&&_6d){ +this._removeAfter(_6a.getIndexInParent()+1); +var _6f=_6a.getNextSibling(); +if(_6f&&_6f._setSelected){ +_6f._setSelected(null); +} +this.scrollIntoView(_6f); +}else{ +if(_6d){ +this.addChild(_6d,_6a.getIndexInParent()+1); +if(this._savedFocus){ +_6d.focus(true); +} +}else{ +this._removeAfter(_6a); +this.scrollIntoView(_6a); +} +} +}else{ +if(_6a){ +this._removeAfter(_6a); +this.scrollIntoView(_6a); +} +} +if(!evt||evt.type!="internal"){ +this._setValue(_6b); +this.onItemClick(_6b,_6a,_6c); +} +this._visibleItem=_6b; +},_getPaneForItem:function(_70,_71,_72){ +var ret=this.getPaneForItem(_70,_71,_72); +ret.store=this.store; +ret.parentWidget=this; +ret.parentPane=_71||null; +if(!_70){ +ret.query=this.query; +ret.queryOptions=this.queryOptions; +}else{ +if(_72){ +ret.items=_72; +}else{ +ret.items=[_70]; +} +} +return ret; +},_getMenuItemForItem:function(_73,_74){ +var _75=this.store; +if(!_73||!_75||!_75.isItem(_73)){ +var i=new _1.MenuItem({label:"---",disabled:true,iconClass:"dojoxEmpty",focus:function(){ +}}); +this._updateClass(i.domNode,"Item"); +return i; +}else{ +var _76=_75.isItemLoaded(_73); +var _77=_76?this.getChildItems(_73):undefined; +var _78; +if(_77){ +_78=this.getMenuItemForItem(_73,_74,_77); +_78.children=_77; +this._updateClass(_78.domNode,"Item",{"Expanding":true}); +if(!_78._started){ +var c=_78.connect(_78,"startup",function(){ +this.disconnect(c); +_2.style(this.arrowWrapper,"visibility",""); +}); +}else{ +_2.style(_78.arrowWrapper,"visibility",""); +} +}else{ +_78=this.getMenuItemForItem(_73,_74,null); +if(_76){ +this._updateClass(_78.domNode,"Item",{"Single":true}); +}else{ +this._updateClass(_78.domNode,"Item",{"Unloaded":true}); +_78.attr("disabled",true); +} +} +_78.store=this.store; +_78.item=_73; +if(!_78.label){ +_78.attr("label",this.store.getLabel(_73).replace(/
          ', + + // parentWidget: dojox.widget.RollingList + // Our rolling list widget + parentWidget: null, + + // parentPane: dojox.widget._RollingListPane + // The pane that immediately precedes ours + parentPane: null, + + // store: store + // the store we must use + store: null, + + // items: item[] + // an array of (possibly not-yet-loaded) items to display in this. + // If this array is null, then the query and query options are used to + // get the top-level items to use. This array is also used to watch and + // see if the pane needs to be reloaded (store notifications are handled) + // by the pane + items: null, + + // query: object + // a query to pass to the datastore. This is only used if items are null + query: null, + + // queryOptions: object + // query options to be passed to the datastore + queryOptions: null, + + // focusByNode: boolean + // set to false if the subclass will handle its own node focusing + _focusByNode: true, + + // minWidth: integer + // the width (in px) for this pane + minWidth: 0, + + _setContentAndScroll: function(/*String|DomNode|Nodelist*/cont, /*Boolean?*/isFakeContent){ + // summary: + // sets the value of the content and scrolls it into view + this._setContent(cont, isFakeContent); + this.parentWidget.scrollIntoView(this); + }, + + _updateNodeWidth: function(n, min){ + // summary: + // updates the min width of the pane to be minPaneWidth + n.style.width = ""; + var nWidth = dojo.marginBox(n).w; + if(nWidth < min){ + dojo.marginBox(n, {w: min}); + } + }, + + _onMinWidthChange: function(v){ + // Called when the min width of a pane has changed + this._updateNodeWidth(this.domNode, v); + }, + + _setMinWidthAttr: function(v){ + if(v !== this.minWidth){ + this.minWidth = v; + this._onMinWidthChange(v); + } + }, + + startup: function(){ + if(this._started){ return; } + if(this.store && this.store.getFeatures()["dojo.data.api.Notification"]){ + window.setTimeout(dojo.hitch(this, function(){ + // Set connections after a slight timeout to avoid getting in the + // condition where we are setting them while events are still + // being fired + this.connect(this.store, "onSet", "_onSetItem"); + this.connect(this.store, "onNew", "_onNewItem"); + this.connect(this.store, "onDelete", "_onDeleteItem"); + }), 1); + } + this.connect(this.focusNode||this.domNode, "onkeypress", "_focusKey"); + this.parentWidget._updateClass(this.domNode, "Pane"); + this.inherited(arguments); + this._onMinWidthChange(this.minWidth); + }, + + _focusKey: function(/*Event*/e){ + // summary: + // called when a keypress happens on the widget + if(e.charOrCode == dojo.keys.BACKSPACE){ + dojo.stopEvent(e); + return; + }else if(e.charOrCode == dojo.keys.LEFT_ARROW && this.parentPane){ + this.parentPane.focus(); + this.parentWidget.scrollIntoView(this.parentPane); + }else if(e.charOrCode == dojo.keys.ENTER){ + this.parentWidget._onExecute(); + } + }, + + focus: function(/*boolean*/force){ + // summary: + // sets the focus to this current widget + if(this.parentWidget._focusedPane != this){ + this.parentWidget._focusedPane = this; + this.parentWidget.scrollIntoView(this); + if(this._focusByNode && (!this.parentWidget._savedFocus || force)){ + try{(this.focusNode||this.domNode).focus();}catch(e){} + } + } + }, + + _onShow: function(){ + // summary: + // checks that the store is loaded + this.inherited(arguments); + if((this.store || this.items) && ((this.refreshOnShow && this.domNode) || (!this.isLoaded && this.domNode))){ + this.refresh(); + } + }, + + _load: function(){ + // summary: + // sets the "loading" message and then kicks off a query asyncronously + this.isLoaded = false; + if(this.items){ + this._setContentAndScroll(this.onLoadStart(), true); + window.setTimeout(dojo.hitch(this, "_doQuery"), 1); + }else{ + this._doQuery(); + } + }, + + _doLoadItems: function(/*item[]*/items, /*function*/callback){ + // summary: + // loads the given items, and then calls the callback when they + // are finished. + var _waitCount = 0, store = this.store; + dojo.forEach(items, function(item){ + if(!store.isItemLoaded(item)){ _waitCount++; } + }); + if(_waitCount === 0){ + callback(); + }else{ + var onItem = function(item){ + _waitCount--; + if((_waitCount) === 0){ + callback(); + } + }; + dojo.forEach(items, function(item){ + if(!store.isItemLoaded(item)){ + store.loadItem({item: item, onItem: onItem}); + } + }); + } + }, + + _doQuery: function(){ + // summary: + // either runs the query or loads potentially not-yet-loaded items. + if(!this.domNode){return;} + var preload = this.parentWidget.preloadItems; + preload = (preload === true || (this.items && this.items.length <= Number(preload))); + if(this.items && preload){ + this._doLoadItems(this.items, dojo.hitch(this, "onItems")); + }else if(this.items){ + this.onItems(); + }else{ + this._setContentAndScroll(this.onFetchStart(), true); + this.store.fetch({query: this.query, + onComplete: function(items){ + this.items = items; + this.onItems(); + }, + onError: function(e){ + this._onError("Fetch", e); + }, + scope: this}); + } + }, + + _hasItem: function(/* item */ item){ + // summary: + // returns whether or not the given item is handled by this + // pane + var items = this.items || []; + for(var i = 0, myItem; (myItem = items[i]); i++){ + if(this.parentWidget._itemsMatch(myItem, item)){ + return true; + } + } + return false; + }, + + _onSetItem: function(/* item */ item, + /* attribute-name-string */ attribute, + /* Object|Array */ oldValue, + /* Object|Array */ newValue){ + // summary: + // called when an item in the store has changed + if(this._hasItem(item)){ + this.refresh(); + } + }, + + _onNewItem: function(/* item */ newItem, /*object?*/ parentInfo){ + // summary: + // called when an item is added to the store + var sel; + if((!parentInfo && !this.parentPane) || + (parentInfo && this.parentPane && this.parentPane._hasItem(parentInfo.item) && + (sel = this.parentPane._getSelected()) && this.parentWidget._itemsMatch(sel.item, parentInfo.item))){ + this.items.push(newItem); + this.refresh(); + }else if(parentInfo && this.parentPane && this._hasItem(parentInfo.item)){ + this.refresh(); + } + }, + + _onDeleteItem: function(/* item */ deletedItem){ + // summary: + // called when an item is removed from the store + if(this._hasItem(deletedItem)){ + this.items = dojo.filter(this.items, function(i){ + return (i != deletedItem); + }); + this.refresh(); + } + }, + + onFetchStart: function(){ + // summary: + // called before a fetch starts + return this.loadingMessage; + }, + + onFetchError: function(/*Error*/ error){ + // summary: + // called when a fetch error occurs. + return this.errorMessage; + }, + + onLoadStart: function(){ + // summary: + // called before a load starts + return this.loadingMessage; + }, + + onLoadError: function(/*Error*/ error){ + // summary: + // called when a load error occurs. + return this.errorMessage; + }, + + onItems: function(){ + // summary: + // called after a fetch or load - at this point, this.items should be + // set and loaded. Override this function to "do your stuff" + if(!this.onLoadDeferred){ + this.cancel(); + this.onLoadDeferred = new dojo.Deferred(dojo.hitch(this, "cancel")); + } + this._onLoadHandler(); + } + +}); + +dojo.declare("dojox.widget._RollingListGroupPane", + [dojox.widget._RollingListPane], { + // summary: + // a pane that will handle groups (treats them as menu items) + + // templateString: string + // our template + templateString: '
          ' + + '
          ' + + '
          ' + + '
          ', + + // _menu: dijit.Menu + // The menu that we will call addChild() on for adding items + _menu: null, + + _setContent: function(/*String|DomNode|Nodelist*/cont){ + if(!this._menu){ + // Only set the content if we don't already have a menu + this.inherited(arguments); + } + }, + + _onMinWidthChange: function(v){ + // override and resize the menu instead + if(!this._menu){ return; } + var dWidth = dojo.marginBox(this.domNode).w; + var mWidth = dojo.marginBox(this._menu.domNode).w; + this._updateNodeWidth(this._menu.domNode, v - (dWidth - mWidth)); + }, + + onItems: function(){ + // summary: + // called after a fetch or load + var selectItem, hadChildren = false; + if(this._menu){ + selectItem = this._getSelected(); + this._menu.destroyRecursive(); + } + this._menu = this._getMenu(); + var child, selectMenuItem; + if(this.items.length){ + dojo.forEach(this.items, function(item){ + child = this.parentWidget._getMenuItemForItem(item, this); + if(child){ + if(selectItem && this.parentWidget._itemsMatch(child.item, selectItem.item)){ + selectMenuItem = child; + } + this._menu.addChild(child); + } + }, this); + }else{ + child = this.parentWidget._getMenuItemForItem(null, this); + if(child){ + this._menu.addChild(child); + } + } + if(selectMenuItem){ + this._setSelected(selectMenuItem); + if((selectItem && !selectItem.children && selectMenuItem.children) || + (selectItem && selectItem.children && !selectMenuItem.children)){ + var itemPane = this.parentWidget._getPaneForItem(selectMenuItem.item, this, selectMenuItem.children); + if(itemPane){ + this.parentWidget.addChild(itemPane, this.getIndexInParent() + 1); + }else{ + this.parentWidget._removeAfter(this); + this.parentWidget._onItemClick(null, this, selectMenuItem.item, selectMenuItem.children); + } + } + }else if(selectItem){ + this.parentWidget._removeAfter(this); + } + this.containerNode.innerHTML = ""; + this.containerNode.appendChild(this._menu.domNode); + this.parentWidget.scrollIntoView(this); + this._checkScrollConnection(true); + this.inherited(arguments); + this._onMinWidthChange(this.minWidth); + }, + + _checkScrollConnection: function(doLoad){ + // summary: + // checks whether or not we need to connect to our onscroll + // function + var store = this.store; + if(this._scrollConn){ + this.disconnect(this._scrollConn); + } + delete this._scrollConn; + if(!dojo.every(this.items, function(i){return store.isItemLoaded(i);})){ + if(doLoad){ + this._loadVisibleItems(); + } + this._scrollConn = this.connect(this.domNode, "onscroll", "_onScrollPane"); + } + }, + + startup: function(){ + this.inherited(arguments); + this.parentWidget._updateClass(this.domNode, "GroupPane"); + }, + + focus: function(/*boolean*/force){ + // summary: + // sets the focus to this current widget + if(this._menu){ + if(this._pendingFocus){ + this.disconnect(this._pendingFocus); + } + delete this._pendingFocus; + + // We focus the right widget - either the focusedChild, the + // selected node, the first menu item, or the menu itself + var focusWidget = this._menu.focusedChild; + if(!focusWidget){ + var focusNode = dojo.query(".dojoxRollingListItemSelected", this.domNode)[0]; + if(focusNode){ + focusWidget = dijit.byNode(focusNode); + } + } + if(!focusWidget){ + focusWidget = this._menu.getChildren()[0] || this._menu; + } + this._focusByNode = false; + if(focusWidget.focusNode){ + if(!this.parentWidget._savedFocus || force){ + try{focusWidget.focusNode.focus();}catch(e){} + } + window.setTimeout(function(){ + try{ + dojo.window.scrollIntoView(focusWidget.focusNode); + }catch(e){} + }, 1); + }else if(focusWidget.focus){ + if(!this.parentWidget._savedFocus || force){ + focusWidget.focus(); + } + }else{ + this._focusByNode = true; + } + this.inherited(arguments); + }else if(!this._pendingFocus){ + this._pendingFocus = this.connect(this, "onItems", "focus"); + } + }, + + _getMenu: function(){ + // summary: + // returns a widget to be used for the container widget. + var self = this; + var menu = new dijit.Menu({ + parentMenu: this.parentPane ? this.parentPane._menu : null, + onCancel: function(/*Boolean*/ closeAll){ + if(self.parentPane){ + self.parentPane.focus(true); + } + }, + _moveToPopup: function(/*Event*/ evt){ + if(this.focusedChild && !this.focusedChild.disabled){ + this.onItemClick(this.focusedChild, evt); + } + } + }, this.menuNode); + this.connect(menu, "onItemClick", function(/*dijit.MenuItem*/ item, /*Event*/ evt){ + if(item.disabled){ return; } + evt.alreadySelected = dojo.hasClass(item.domNode, "dojoxRollingListItemSelected"); + if(evt.alreadySelected && + ((evt.type == "keypress" && evt.charOrCode != dojo.keys.ENTER) || + (evt.type == "internal"))){ + var p = this.parentWidget.getChildren()[this.getIndexInParent() + 1]; + if(p){ + p.focus(true); + this.parentWidget.scrollIntoView(p); + } + }else{ + this._setSelected(item, menu); + this.parentWidget._onItemClick(evt, this, item.item, item.children); + if(evt.type == "keypress" && evt.charOrCode == dojo.keys.ENTER){ + this.parentWidget._onExecute(); + } + } + }); + if(!menu._started){ + menu.startup(); + } + return menu; + }, + + _onScrollPane: function(){ + // summary: + // called when the pane has been scrolled - it sets a timeout + // so that we don't try and load our visible items too often during + // a scroll + if(this._visibleLoadPending){ + window.clearTimeout(this._visibleLoadPending); + } + this._visibleLoadPending = window.setTimeout(dojo.hitch(this, "_loadVisibleItems"), 500); + }, + + _loadVisibleItems: function(){ + // summary: + // loads the items that are currently visible in the pane + delete this._visibleLoadPending; + var menu = this._menu; + if(!menu){ return; } + var children = menu.getChildren(); + if(!children || !children.length){ return; } + var gpbme = function(n, m, pb){ + var s = dojo.getComputedStyle(n); + var r = 0; + if(m){ r += dojo._getMarginExtents(n, s).t; } + if(pb){ r += dojo._getPadBorderExtents(n, s).t; } + return r; + }; + var topOffset = gpbme(this.domNode, false, true) + + gpbme(this.containerNode, true, true) + + gpbme(menu.domNode, true, true) + + gpbme(children[0].domNode, true, false); + var h = dojo.contentBox(this.domNode).h; + var minOffset = this.domNode.scrollTop - topOffset - (h/2); + var maxOffset = minOffset + (3*h/2); + var menuItemsToLoad = dojo.filter(children, function(c){ + var cnt = c.domNode.offsetTop; + var s = c.store; + var i = c.item; + return (cnt >= minOffset && cnt <= maxOffset && !s.isItemLoaded(i)); + }) + var itemsToLoad = dojo.map(menuItemsToLoad, function(c){ + return c.item; + }); + var onItems = dojo.hitch(this, function(){ + var selectItem = this._getSelected(); + var selectMenuItem; + dojo.forEach(itemsToLoad, function(item, idx){ + var newItem = this.parentWidget._getMenuItemForItem(item, this); + var oItem = menuItemsToLoad[idx]; + var oIdx = oItem.getIndexInParent(); + menu.removeChild(oItem); + if(newItem){ + if(selectItem && this.parentWidget._itemsMatch(newItem.item, selectItem.item)){ + selectMenuItem = newItem; + } + menu.addChild(newItem, oIdx); + if(menu.focusedChild == oItem){ + menu.focusChild(newItem); + } + } + oItem.destroy(); + }, this); + this._checkScrollConnection(false); + }); + this._doLoadItems(itemsToLoad, onItems); + }, + + _getSelected: function(/*dijit.Menu?*/ menu){ + // summary: + // returns the selected menu item - or null if none are selected + if(!menu){ menu = this._menu; } + if(menu){ + var children = this._menu.getChildren(); + for(var i = 0, item; (item = children[i]); i++){ + if(dojo.hasClass(item.domNode, "dojoxRollingListItemSelected")){ + return item; + } + } + } + return null; + }, + + _setSelected: function(/*dijit.MenuItem?*/ item, /*dijit.Menu?*/ menu){ + // summary: + // selects the given item in the given menu (defaults to pane's menu) + if(!menu){ menu = this._menu;} + if(menu){ + dojo.forEach(menu.getChildren(), function(i){ + this.parentWidget._updateClass(i.domNode, "Item", {"Selected": (item && (i == item && !i.disabled))}); + }, this); + } + } +}); + +dojo.declare("dojox.widget.RollingList", + [dijit._Widget, dijit._Templated, dijit._Container], { + // summary: + // a rolling list that can be tied to a data store with children + + // templateString: String + // The template to be used to construct the widget. + templateString: dojo.cache("dojox.widget", "RollingList/RollingList.html", "
          \n"), + widgetsInTemplate: true, + + // className: string + // an additional class (or space-separated classes) to add for our widget + className: "", + + // store: store + // the store we must use + store: null, + + // query: object + // a query to pass to the datastore. This is only used if items are null + query: null, + + // queryOptions: object + // query options to be passed to the datastore + queryOptions: null, + + // childrenAttrs: String[] + // one ore more attributes that holds children of a node + childrenAttrs: ["children"], + + // parentAttr: string + // the attribute to read for finding our parent item (if any) + parentAttr: "", + + // value: item + // The value that has been selected + value: null, + + // executeOnDblClick: boolean + // Set to true if you want to call onExecute when an item is + // double-clicked, false if you want to call onExecute yourself. (mainly + // used for popups to control how they want to be handled) + executeOnDblClick: true, + + // preloadItems: boolean or int + // if set to true, then onItems will be called only *after* all items have + // been loaded (ie store.isLoaded will return true for all of them). If + // false, then no preloading will occur. If set to an integer, preloading + // will occur if the number of items is less than or equal to the value + // of the integer. The onItems function will need to be aware of handling + // items that may not be loaded + preloadItems: false, + + // showButtons: boolean + // if set to true, then buttons for "OK" and "Cancel" will be provided + showButtons: false, + + // okButtonLabel: string + // The string to use for the OK button - will use dijit's common "OK" string + // if not set + okButtonLabel: "", + + // cancelButtonLabel: string + // The string to use for the Cancel button - will use dijit's common + // "Cancel" string if not set + cancelButtonLabel: "", + + // minPaneWidth: integer + // the minimum pane width (in px) for all child panes. If they are narrower, + // the width will be increased to this value. + minPaneWidth: 0, + + postMixInProperties: function(){ + // summary: + // Mix in our labels, if they are not set + this.inherited(arguments); + var loc = dojo.i18n.getLocalization("dijit", "common"); + this.okButtonLabel = this.okButtonLabel || loc.buttonOk; + this.cancelButtonLabel = this.cancelButtonLabel || loc.buttonCancel; + }, + + _setShowButtonsAttr: function(doShow){ + // summary: + // Sets the visibility of the buttons for the widget + var needsLayout = false; + if((this.showButtons != doShow && this._started) || + (this.showButtons == doShow && !this.started)){ + needsLayout = true; + } + dojo.toggleClass(this.domNode, "dojoxRollingListButtonsHidden", !doShow); + this.showButtons = doShow; + if(needsLayout){ + if(this._started){ + this.layout(); + }else{ + window.setTimeout(dojo.hitch(this, "layout"), 0); + } + } + }, + + _itemsMatch: function(/*item*/ item1, /*item*/ item2){ + // summary: + // returns whether or not the two items match - checks ID if + // they aren't the exact same object + if(!item1 && !item2){ + return true; + }else if(!item1 || !item2){ + return false; + } + return (item1 == item2 || + (this._isIdentity && this.store.getIdentity(item1) == this.store.getIdentity(item2))); + }, + + _removeAfter: function(/*Widget or int*/ idx){ + // summary: + // removes all widgets after the given widget (or index) + if(typeof idx != "number"){ + idx = this.getIndexOfChild(idx); + } + if(idx >= 0){ + dojo.forEach(this.getChildren(), function(c, i){ + if(i > idx){ + this.removeChild(c); + c.destroyRecursive(); + } + }, this); + } + var children = this.getChildren(), child = children[children.length - 1]; + var selItem = null; + while(child && !selItem){ + var val = child._getSelected ? child._getSelected() : null; + if(val){ + selItem = val.item; + } + child = child.parentPane; + } + if(!this._setInProgress){ + this._setValue(selItem); + } + }, + + addChild: function(/*dijit._Widget*/ widget, /*int?*/ insertIndex){ + // summary: + // adds a child to this rolling list - if passed an insertIndex, + // then all children from that index on will be removed and destroyed + // before adding the child. + if(insertIndex > 0){ + this._removeAfter(insertIndex - 1); + } + this.inherited(arguments); + if(!widget._started){ + widget.startup(); + } + widget.attr("minWidth", this.minPaneWidth); + this.layout(); + if(!this._savedFocus){ + widget.focus(); + } + }, + + _setMinPaneWidthAttr: function(value){ + // summary: + // Sets the min pane width of all children + if(value !== this.minPaneWidth){ + this.minPaneWidth = value; + dojo.forEach(this.getChildren(), function(c){ + c.attr("minWidth", value); + }); + } + }, + + _updateClass: function(/* Node */ node, /* String */ type, /* Object? */ options){ + // summary: + // sets the state of the given node with the given type and options + // options: + // an object with key-value-pairs. The values are boolean, if true, + // the key is added as a class, if false, it is removed. + if(!this._declaredClasses){ + this._declaredClasses = ("dojoxRollingList " + this.className).split(" "); + } + dojo.forEach(this._declaredClasses, function(c){ + if(c){ + dojo.addClass(node, c + type); + for(var k in options||{}){ + dojo.toggleClass(node, c + type + k, options[k]); + } + dojo.toggleClass(node, c + type + "FocusSelected", + (dojo.hasClass(node, c + type + "Focus") && dojo.hasClass(node, c + type + "Selected"))); + dojo.toggleClass(node, c + type + "HoverSelected", + (dojo.hasClass(node, c + type + "Hover") && dojo.hasClass(node, c + type + "Selected"))); + } + }); + }, + + scrollIntoView: function(/*dijit._Widget*/ childWidget){ + // summary: + // scrolls the given widget into view + if(this._scrollingTimeout){ + window.clearTimeout(this._scrollingTimeout); + } + delete this._scrollingTimeout; + this._scrollingTimeout = window.setTimeout(dojo.hitch(this, function(){ + if(childWidget.domNode){ + dojo.window.scrollIntoView(childWidget.domNode); + } + delete this._scrollingTimeout; + return; + }), 1); + }, + + resize: function(args){ + dijit.layout._LayoutWidget.prototype.resize.call(this, args); + }, + + layout: function(){ + var children = this.getChildren(); + if(this._contentBox){ + var bn = this.buttonsNode; + var height = this._contentBox.h - dojo.marginBox(bn).h - + dojox.html.metrics.getScrollbar().h; + dojo.forEach(children, function(c){ + dojo.marginBox(c.domNode, {h: height}); + }); + } + if(this._focusedPane){ + var foc = this._focusedPane; + delete this._focusedPane; + if(!this._savedFocus){ + foc.focus(); + } + }else if(children && children.length){ + if(!this._savedFocus){ + children[0].focus(); + } + } + }, + + _onChange: function(/*item*/ value){ + this.onChange(value); + }, + + _setValue: function(/* item */ value){ + // summary: + // internally sets the value and fires onchange + delete this._setInProgress; + if(!this._itemsMatch(this.value, value)){ + this.value = value; + this._onChange(value); + } + }, + + _setValueAttr: function(/* item */ value){ + // summary: + // sets the value of this widget to the given store item + if(this._itemsMatch(this.value, value) && !value){ return; } + if(this._setInProgress && this._setInProgress === value){ return; } + this._setInProgress = value; + if(!value || !this.store.isItem(value)){ + var pane = this.getChildren()[0]; + pane._setSelected(null); + this._onItemClick(null, pane, null, null); + return; + } + + var fetchParentItems = dojo.hitch(this, function(/*item*/ item, /*function*/callback){ + // summary: + // Fetches the parent items for the given item + var store = this.store, id; + if(this.parentAttr && store.getFeatures()["dojo.data.api.Identity"] && + ((id = this.store.getValue(item, this.parentAttr)) || id === "")){ + // Fetch by parent attribute + var cb = function(i){ + if(store.getIdentity(i) == store.getIdentity(item)){ + callback(null); + }else{ + callback([i]); + } + }; + if(id === ""){ + callback(null); + }else if(typeof id == "string"){ + store.fetchItemByIdentity({identity: id, onItem: cb}); + }else if(store.isItem(id)){ + cb(id); + } + }else{ + // Fetch by finding children + var numCheck = this.childrenAttrs.length; + var parents = []; + dojo.forEach(this.childrenAttrs, function(attr){ + var q = {}; + q[attr] = item; + store.fetch({query: q, scope: this, + onComplete: function(items){ + if(this._setInProgress !== value){ + return; + } + parents = parents.concat(items); + numCheck--; + if(numCheck === 0){ + callback(parents); + } + } + }); + }, this); + } + }); + + var setFromChain = dojo.hitch(this, function(/*item[]*/itemChain, /*integer*/idx){ + // summary: + // Sets the value of the widget at the given index in the chain - onchanges are not + // fired here + var set = itemChain[idx]; + var child = this.getChildren()[idx]; + var conn; + if(set && child){ + var fx = dojo.hitch(this, function(){ + if(conn){ + this.disconnect(conn); + } + delete conn; + if(this._setInProgress !== value){ + return; + } + var selOpt = dojo.filter(child._menu.getChildren(), function(i){ + return this._itemsMatch(i.item, set); + }, this)[0]; + if(selOpt){ + idx++; + child._menu.onItemClick(selOpt, {type: "internal", + stopPropagation: function(){}, + preventDefault: function(){}}); + if(itemChain[idx]){ + setFromChain(itemChain, idx); + }else{ + this._setValue(set); + this.onItemClick(set, child, this.getChildItems(set)); + } + } + }); + if(!child.isLoaded){ + conn = this.connect(child, "onLoad", fx); + }else{ + fx(); + } + }else if(idx === 0){ + this.set("value", null); + } + }); + + var parentChain = []; + var onParents = dojo.hitch(this, function(/*item[]*/ parents){ + // summary: + // recursively grabs the parents - only the first one is followed + if(parents && parents.length){ + parentChain.push(parents[0]); + fetchParentItems(parents[0], onParents); + }else{ + if(!parents){ + parentChain.pop(); + } + parentChain.reverse(); + setFromChain(parentChain, 0); + } + }); + + // Only set the value in display if we are shown - if we are in a dropdown, + // and are hidden, don't actually do the scrolling in the display (it can + // mess up layouts) + var ns = this.domNode.style; + if(ns.display == "none" || ns.visibility == "hidden"){ + this._setValue(value); + }else if(!this._itemsMatch(value, this._visibleItem)){ + onParents([value]); + } + }, + + _onItemClick: function(/* Event */ evt, /* dijit._Contained */ pane, /* item */ item, /* item[]? */ children){ + // summary: + // internally called when a widget should pop up its child + + if(evt){ + var itemPane = this._getPaneForItem(item, pane, children); + var alreadySelected = (evt.type == "click" && evt.alreadySelected); + + if(alreadySelected && itemPane){ + this._removeAfter(pane.getIndexInParent() + 1); + var next = pane.getNextSibling(); + if(next && next._setSelected){ + next._setSelected(null); + } + this.scrollIntoView(next); + }else if(itemPane){ + this.addChild(itemPane, pane.getIndexInParent() + 1); + if(this._savedFocus){ + itemPane.focus(true); + } + }else{ + this._removeAfter(pane); + this.scrollIntoView(pane); + } + }else if(pane){ + this._removeAfter(pane); + this.scrollIntoView(pane); + } + if(!evt || evt.type != "internal"){ + this._setValue(item); + this.onItemClick(item, pane, children); + } + this._visibleItem = item; + }, + + _getPaneForItem: function(/* item? */ item, /* dijit._Contained? */ parentPane, /* item[]? */ children){ + // summary: + // gets the pane for the given item, and mixes in our needed parts + // Returns the pane for the given item (null if the root pane) - after mixing in + // its stuff. + var ret = this.getPaneForItem(item, parentPane, children); + ret.store = this.store; + ret.parentWidget = this; + ret.parentPane = parentPane||null; + if(!item){ + ret.query = this.query; + ret.queryOptions = this.queryOptions; + }else if(children){ + ret.items = children; + }else{ + ret.items = [item]; + } + return ret; + }, + + _getMenuItemForItem: function(/*item*/ item, /* dijit._Contained */ parentPane){ + // summary: + // returns a widget for the given store item. The returned + // item will be added to this widget's container widget. null will + // be passed in for an "empty" item. + var store = this.store; + if(!item || !store || !store.isItem(item)){ + var i = new dijit.MenuItem({ + label: "---", + disabled: true, + iconClass: "dojoxEmpty", + focus: function(){ + // Do nothing on focus of this guy... + } + }); + this._updateClass(i.domNode, "Item"); + return i; + }else{ + var itemLoaded = store.isItemLoaded(item); + var childItems = itemLoaded ? this.getChildItems(item) : undefined; + var widgetItem; + if(childItems){ + widgetItem = this.getMenuItemForItem(item, parentPane, childItems); + widgetItem.children = childItems; + this._updateClass(widgetItem.domNode, "Item", {"Expanding": true}); + if(!widgetItem._started){ + var c = widgetItem.connect(widgetItem, "startup", function(){ + this.disconnect(c); + dojo.style(this.arrowWrapper, "visibility", ""); + }); + }else{ + dojo.style(widgetItem.arrowWrapper, "visibility", ""); + } + }else{ + widgetItem = this.getMenuItemForItem(item, parentPane, null); + if(itemLoaded){ + this._updateClass(widgetItem.domNode, "Item", {"Single": true}); + }else{ + this._updateClass(widgetItem.domNode, "Item", {"Unloaded": true}); + widgetItem.attr("disabled", true); + } + } + widgetItem.store = this.store; + widgetItem.item = item; + if(!widgetItem.label){ + widgetItem.attr("label", this.store.getLabel(item).replace(/
          diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Rotator.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Rotator.js new file mode 100644 index 00000000..89fa3041 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Rotator.js @@ -0,0 +1,146 @@ +//>>built +define("dojox/widget/Rotator",["dojo/aspect","dojo/_base/declare","dojo/_base/Deferred","dojo/_base/lang","dojo/_base/array","dojo/_base/fx","dojo/dom","dojo/dom-attr","dojo/dom-construct","dojo/dom-geometry","dojo/dom-style","dojo/topic","dojo/on","dojo/parser","dojo/query","dojo/fx/easing","dojo/NodeList-dom"],function(_1,_2,_3,_4,_5,fx,_6,_7,_8,_9,_a,_b,on,_c,_d){ +var _e="dojox.widget.rotator.swap",_f=500,_10="display",_11="none",_12="zIndex"; +var _13=_2("dojox.widget.Rotator",null,{transition:_e,transitionParams:"duration:"+_f,panes:null,constructor:function(_14,_15){ +_4.mixin(this,_14); +var _16=this,t=_16.transition,tt=_16._transitions={},idm=_16._idMap={},tp=_16.transitionParams=eval("({ "+_16.transitionParams+" })"),_15=_16._domNode=_6.byId(_15),cb=_16._domNodeContentBox=_9.getContentBox(_15),p={left:0,top:0},_17=function(bt,dt){ +console.warn(_16.declaredClass," - Unable to find transition \"",bt,"\", defaulting to \"",dt,"\"."); +}; +_16.id=_15.id||(new Date()).getTime(); +if(_a.get(_15,"position")=="static"){ +_a.set(_15,"position","relative"); +} +tt[t]=_4.getObject(t); +if(!tt[t]){ +_17(t,_e); +tt[_16.transition=_e]=_4.getObject(_e); +} +if(!tp.duration){ +tp.duration=_f; +} +_5.forEach(_16.panes,function(p){ +_8.create("div",p,_15); +}); +var pp=_16.panes=[]; +_d("> *",_15).forEach(function(n,i){ +var q={node:n,idx:i,params:_4.mixin({},tp,eval("({ "+(_7.get(n,"transitionParams")||"")+" })"))},r=q.trans=_7.get(n,"transition")||_16.transition; +_5.forEach(["id","title","duration","waitForEvent"],function(a){ +q[a]=_7.get(n,a); +}); +if(q.id){ +idm[q.id]=i; +} +if(!tt[r]&&!(tt[r]=_4.getObject(r))){ +_17(r,q.trans=_16.transition); +} +p.position="absolute"; +p.display=_11; +if(_16.idx==null||_7.get(n,"selected")){ +if(_16.idx!=null){ +_a.set(pp[_16.idx].node,_10,_11); +} +_16.idx=i; +p.display=""; +} +_a.set(n,p); +_d("> script[type^='dojo/method']",n).orphan().forEach(function(s){ +var e=_7.get(s,"event"); +if(e){ +q[e]=_c._functionFromScript(s); +} +}); +pp.push(q); +}); +_16._controlSub=_b.subscribe(_16.id+"/rotator/control",_4.hitch(_16,this.control)); +},destroy:function(){ +_5.forEach([this._controlSub,this.wfe],function(wfe){ +wfe.remove(); +}); +_8.destroy(this._domNode); +},next:function(){ +return this.go(this.idx+1); +},prev:function(){ +return this.go(this.idx-1); +},go:function(p){ +var _18=this,i=_18.idx,pp=_18.panes,len=pp.length,idm=_18._idMap[p]; +_18._resetWaitForEvent(); +p=idm!=null?idm:(p||0); +p=p + // |
          Pane 1!
          + // |
          Pane 2!
          + // |
          + // + // example: + // | + // |
          + // |
          Pane 1!
          + // |
          Pane 2!
          + // |
          + + // transition: string + // The name of a function that is passed two panes nodes and a duration, + // then returns a dojo.Animation object. The default value is + // "dojox.widget.rotator.swap". + transition: _defaultTransition, + + // transitionParams: string + // Parameters for the transition. The string is read in and eval'd as an + // object. If the duration is absent, the default value will be used. + transitionParams: "duration:" + _defaultTransitionDuration, + + // panes: array + // Array of panes to be created in the Rotator. Each array element + // will be passed as attributes to a html.create() call. + panes: null, + + constructor: function(/*Object*/params, /*DomNode|string*/node){ + // summary: + // Initializes the panes and events. + lang.mixin(this, params); + + var _t = this, + t = _t.transition, + tt = _t._transitions = {}, + idm = _t._idMap = {}, + tp = _t.transitionParams = eval("({ " + _t.transitionParams + " })"), + node = _t._domNode = dom.byId(node), + cb = _t._domNodeContentBox = domGeometry.getContentBox(node), // we are going to assume the rotator will not be changing size + + // default styles to apply to all the container node and rotator's panes + p = { + left: 0, + top: 0 + }, + + warn = function(bt, dt){ + console.warn(_t.declaredClass, ' - Unable to find transition "', bt, '", defaulting to "', dt, '".'); + }; + + // if we don't have an id, then generate one + _t.id = node.id || (new Date()).getTime(); + + // force the rotator DOM node to a relative position and attach the container node to it + if(domStyle.get(node, "position") == "static"){ + domStyle.set(node, "position", "relative"); + } + + // create our object for caching transition objects + tt[t] = lang.getObject(t); + if(!tt[t]){ + warn(t, _defaultTransition); + tt[_t.transition = _defaultTransition] = lang.getObject(_defaultTransition); + } + + // clean up the transition params + if(!tp.duration){ + tp.duration = _defaultTransitionDuration; + } + + // if there are any panes being passed in, add them to this node + array.forEach(_t.panes, function(p){ + domConstruct.create("div", p, node); + }); + + // zero out our panes array to store the real pane instance + var pp = _t.panes = []; + + // find and initialize the panes + query("> *", node).forEach(function(n, i){ + var q = { node: n, idx: i, params: lang.mixin({}, tp, eval("({ " + (domAttr.get(n, "transitionParams") || "") + " })")) }, + r = q.trans = domAttr.get(n, "transition") || _t.transition; + + // cache each pane's title, duration, and waitForEvent attributes + array.forEach(["id", "title", "duration", "waitForEvent"], function(a){ + q[a] = domAttr.get(n, a); + }); + + if(q.id){ + idm[q.id] = i; + } + + // cache the transition function + if(!tt[r] && !(tt[r] = lang.getObject(r))){ + warn(r, q.trans = _t.transition); + } + + p.position = "absolute"; + p.display = _noneStr; + + // find the selected pane and initialize styles + if(_t.idx == null || domAttr.get(n, "selected")){ + if(_t.idx != null){ + domStyle.set(pp[_t.idx].node, _displayStr, _noneStr); + } + _t.idx = i; + p.display = ""; + } + domStyle.set(n, p); + + // check for any declarative script blocks + query("> script[type^='dojo/method']", n).orphan().forEach(function(s){ + var e = domAttr.get(s, "event"); + if(e){ + q[e] = parser._functionFromScript(s); + } + }); + + // add this pane to the array of panes + pp.push(q); + }); + + _t._controlSub = topic.subscribe(_t.id + "/rotator/control", lang.hitch(_t, this.control)); + }, + + destroy: function(){ + // summary: + // Destroys the Rotator and its DOM node. + array.forEach([this._controlSub, this.wfe], function(wfe) { wfe.remove() }); + domConstruct.destroy(this._domNode); + }, + + next: function(){ + // summary: + // Transitions the Rotator to the next pane. + return this.go(this.idx + 1); + }, + + prev: function(){ + // summary: + // Transitions the Rotator to the previous pane. + return this.go(this.idx - 1); + }, + + go: function(/*int|string?*/p){ + // summary: + // Transitions the Rotator to the specified pane index. + var _t = this, + i = _t.idx, + pp = _t.panes, + len = pp.length, + idm = _t._idMap[p]; + + // we gotta move on, so if the current pane is waiting for an event, just + // ignore it and clean up + _t._resetWaitForEvent(); + + // determine the next index and set it to idx for the next go to + p = idm != null ? idm : (p || 0); + p = p < len ? (p < 0 ? len-1 : p) : 0; + + // if we're already on the requested pane or still transitioning, then return + if(p == i || _t.anim){ + return null; + } + + // get the current and next panes + var current = pp[i], + next = pp[p]; + + // adjust the zIndexes so our animations look good... this must be done before + // the animation is created so the animation could override it if necessary + domStyle.set(current.node, _zIndex, 2); + domStyle.set(next.node, _zIndex, 1); + + // info object passed to animations and onIn/Out events + var info = { + current: current, + next: next, + rotator: _t + }, + + // get the transition + anim = _t.anim = _t._transitions[next.trans](lang.mixin({ + rotatorBox: _t._domNodeContentBox + }, info, next.params)); + + if(anim){ + // create the deferred that we'll be returning + var def = new Deferred(), + ev = next.waitForEvent, + + h = aspect.after(anim, "onEnd", function(){ + // reset the node styles + domStyle.set(current.node, { + display: _noneStr, + left: 0, + opacity: 1, + top: 0, + zIndex: 0 + }); + + h.remove(); + _t.anim = null; + _t.idx = p; + + // fire end events + if(current.onAfterOut){ current.onAfterOut(info); } + if(next.onAfterIn){ next.onAfterIn(info); } + + _t.onUpdate("onAfterTransition"); + + if(!ev){ + // if there is a previous waitForEvent, then we need to make + // sure it gets unsubscribed + _t._resetWaitForEvent(); + + // animation is all done, fire the deferred callback. + def.callback(); + } + }, true); + + // if we're waiting for an event, subscribe to it so we know when to continue + _t.wfe = ev ? topic.subscribe(ev, function(){ + _t._resetWaitForEvent(); + def.callback(true); + }) : null; + + _t.onUpdate("onBeforeTransition"); + + // fire start events + if(current.onBeforeOut){ current.onBeforeOut(info); } + if(next.onBeforeIn){ next.onBeforeIn(info); } + + // play the animation + anim.play(); + + // return the deferred + return def; /*Deferred*/ + } + }, + + onUpdate: function(/*string*/type, /*object?*/params){ + // summary: + // Send a notification to all controllers with the state of the rotator. + topic.publish(this.id + "/rotator/update", type, this, params || {}); + }, + + _resetWaitForEvent: function(){ + // summary: + // If there is a waitForEvent pending, kill it. + if(this.wfe){ + this.wfe.remove(); + delete this.wfe; + } + }, + + control: function(/*string*/action){ + // summary: + // Dispatches an action, first to this engine, then to the Rotator. + var args = lang._toArray(arguments), + _t = this; + args.shift(); + + _t._resetWaitForEvent(); + + if(_t[action]){ + // action exists, so call it and fire deferred if applicable + var def = _t[action].apply(_t, args); + if(def){ + def.addCallback(function(){ + _t.onUpdate(action); + }); + } + + // since this action was triggered by a controller, we assume this was a + // manual action, so check if we should pause + _t.onManualChange(action); + }else{ + console.warn(_t.declaredClass, ' - Unsupported action "', action, '".'); + } + }, + + resize: function(/*int*/width, /*int*/height){ + var b = this._domNodeContentBox = { w: width, h: height }; + domGeometry.setContentSize(this._domNode, b); + array.forEach(this.panes, function(p){ domGeometry.setContentSize(p.node, b); }); + }, + + onManualChange: function(){ + // summary: + // Stub function that can be overriden or connected to. + } + }); + + lang.setObject(_defaultTransition, function(/*Object*/args){ + // summary: + // The default rotator transition which swaps two panes. + return new fx.Animation({ // dojo.Animation + play: function(){ + domStyle.set(args.current.node, _displayStr, _noneStr); + domStyle.set(args.next.node, _displayStr, ""); + this._fire("onEnd"); + } + }); + }); + + return Rotator; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Selection.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Selection.js new file mode 100644 index 00000000..158bfd57 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Selection.js @@ -0,0 +1,121 @@ +//>>built +define("dojox/widget/Selection",["dojo/_base/declare","dojo/_base/array","dojo/_base/lang","dojo/Stateful"],function(_1,_2,_3,_4){ +return _1("dojox.widget.Selection",_4,{constructor:function(){ +this.selectedItems=[]; +},selectionMode:"single",_setSelectionModeAttr:function(_5){ +if(_5!="none"&&_5!="single"&&_5!="multiple"){ +_5="single"; +} +if(_5!=this.selectionMode){ +this.selectionMode=_5; +if(_5=="none"){ +this.set("selectedItems",null); +}else{ +if(_5=="single"){ +this.set("selectedItem",this.selectedItem); +} +} +} +},selectedItem:null,_setSelectedItemAttr:function(_6){ +if(this.selectedItem!=_6){ +this._set("selectedItem",_6); +this.set("selectedItems",_6?[_6]:null); +} +},selectedItems:null,_setSelectedItemsAttr:function(_7){ +var _8=this.selectedItems; +this.selectedItems=_7; +this.selectedItem=null; +if(_8!=null&&_8.length>0){ +this.updateRenderers(_8,true); +} +if(this.selectedItems&&this.selectedItems.length>0){ +this.selectedItem=this.selectedItems[0]; +this.updateRenderers(this.selectedItems,true); +} +},_getSelectedItemsAttr:function(){ +return this.selectedItems==null?[]:this.selectedItems.concat(); +},isItemSelected:function(_9){ +if(this.selectedItems==null||this.selectedItems.length==0){ +return false; +} +return _2.some(this.selectedItems,_3.hitch(this,function(_a){ +return this.getIdentity(_a)==this.getIdentity(_9); +})); +},getIdentity:function(_b){ +},setItemSelected:function(_c,_d){ +if(this.selectionMode=="none"||_c==null){ +return; +} +var _e=this.get("selectedItems"); +var _f=this.get("selectedItems"); +if(this.selectionMode=="single"){ +if(_d){ +this.set("selectedItem",_c); +}else{ +if(this.isItemSelected(_c)){ +this.set("selectedItems",null); +} +} +}else{ +if(_d){ +if(this.isItemSelected(_c)){ +return; +} +if(_e==null){ +_e=[_c]; +}else{ +_e.unshift(_c); +} +this.set("selectedItems",_e); +}else{ +var res=_2.filter(_e,function(_10){ +return _10.id!=_c.id; +}); +if(res==null||res.length==_e.length){ +return; +} +this.set("selectedItems",res); +} +} +},selectFromEvent:function(e,_11,_12,_13){ +if(this.selectionMode=="none"){ +return false; +} +var _14; +var _15=this.get("selectedItem"); +var _16=_11?this.isItemSelected(_11):false; +if(_11==null){ +if(!e.ctrlKey&&this.selectedItem!=null){ +this.set("selectedItem",null); +_14=true; +} +}else{ +if(this.selectionMode=="multiple"){ +if(e.ctrlKey){ +this.setItemSelected(_11,!_16); +_14=true; +}else{ +this.set("selectedItem",_11); +_14=true; +} +}else{ +if(e.ctrlKey){ +this.set("selectedItem",_16?null:_11); +_14=true; +}else{ +if(!_16){ +this.set("selectedItem",_11); +_14=true; +} +} +} +} +if(_13&&_14){ +this.dispatchChange(_15,this.get("selectedItem"),_12,e); +} +return _14; +},dispatchChange:function(_17,_18,_19,_1a){ +this.onChange({oldValue:_17,newValue:_18,renderer:_19,triggerEvent:_1a}); +},onChange:function(){ +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Selection.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Selection.js.uncompressed.js new file mode 100644 index 00000000..ae83631f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Selection.js.uncompressed.js @@ -0,0 +1,220 @@ +define("dojox/widget/Selection", ["dojo/_base/declare", "dojo/_base/array", "dojo/_base/lang", "dojo/Stateful"], + function(declare, arr, lang, Stateful){ + + return declare("dojox.widget.Selection", Stateful, { + // summary: + // Base class for widgets that manage a list of selected data items. + + constructor: function(){ + this.selectedItems = []; + }, + + // selectionMode: String + // Valid values are: + // + // 1. "none": No selection can be done. + // 2. "single": Only one item can be selected at a time. + // 3. "multiple": Several item can be selected using the control key modifier. + // Default value is "single". + selectionMode: "single", + + _setSelectionModeAttr: function(value){ + if(value != "none" && value != "single" && value != "multiple"){ + value = "single"; //default value + } + if(value != this.selectionMode){ + this.selectionMode = value; + if(value == "none"){ + this.set("selectedItems", null); + }else if(value == "single"){ + this.set("selectedItem", this.selectedItem); // null or last selected item + } + } + }, + + // selectedItem: Object + // In single selection mode, the selected item or in multiple selection mode the last selected item. + // Warning: Do not use this property directly, make sure to call set() or get() methods. + selectedItem: null, + + _setSelectedItemAttr: function(value){ + if(this.selectedItem != value){ + this._set("selectedItem", value); + this.set("selectedItems", value ? [value] : null); + } + }, + + // selectedItems: Object[] + // The list of selected items. + // Warning: Do not use this property directly, make sure to call set() or get() methods. + selectedItems: null, + + _setSelectedItemsAttr: function(value){ + var oldSelectedItems = this.selectedItems; + + this.selectedItems = value; + this.selectedItem = null; + + if(oldSelectedItems != null && oldSelectedItems.length>0){ + this.updateRenderers(oldSelectedItems, true); + } + if(this.selectedItems && this.selectedItems.length>0){ + this.selectedItem = this.selectedItems[0]; + this.updateRenderers(this.selectedItems, true); + } + }, + + _getSelectedItemsAttr: function(){ + return this.selectedItems == null ? [] : this.selectedItems.concat(); + }, + + isItemSelected: function(item){ + // summary: + // Returns whether an item is selected or not. + // item: Object + // The item to test the selection for. + if(this.selectedItems == null || this.selectedItems.length== 0){ + return false; + } + + return arr.some(this.selectedItems, lang.hitch(this, function(sitem){ + return this.getIdentity(sitem) == this.getIdentity(item); + })); + }, + + getIdentity: function(item){ + // summary: + // This function must be implemented to return the id of a item. + // item: Object + // The item to query the identity for. + }, + + setItemSelected: function(item, value){ + // summary: + // Change the selection state of an item. + // item: Object + // The item to change the selection state for. + // value: Boolean + // True to select the item, false to deselect it. + + if(this.selectionMode == "none" || item == null){ + return; + } + + // copy is returned + var sel = this.get("selectedItems"); + var old = this.get("selectedItems"); + + if(this.selectionMode == "single"){ + if(value){ + this.set("selectedItem", item); + }else if(this.isItemSelected(item)){ + this.set("selectedItems", null); + } + }else{ // multiple + if(value){ + if(this.isItemSelected(item)){ + return; // already selected + } + if(sel == null){ + sel = [item]; + }else{ + sel.unshift(item); + } + this.set("selectedItems", sel); + }else{ + var res = arr.filter(sel, function(sitem){ + return sitem.id != item.id; + }); + if(res == null || res.length == sel.length){ + return; // already not selected + } + this.set("selectedItems", res); + } + } + }, + + selectFromEvent: function(e, item, renderer, dispatch){ + // summary: + // Applies selection triggered by an user interaction + // e: Event + // The source event of the user interaction. + // item: Object + // The render item that has been selected/deselected. + // renderer: Object + // The visual renderer of the selected/deselected item. + // dispatch: Boolean + // Whether an event must be dispatched or not. + // returns: Boolean + // Returns true if the selection has changed and false otherwise. + // tags: + // protected + + if(this.selectionMode == "none"){ + return false; + } + + var changed; + var oldSelectedItem = this.get("selectedItem"); + var selected = item ? this.isItemSelected(item): false; + + if(item == null){ + if(!e.ctrlKey && this.selectedItem != null){ + this.set("selectedItem", null); + changed = true; + } + }else if(this.selectionMode == "multiple"){ + if(e.ctrlKey){ + this.setItemSelected(item, !selected); + changed = true; + }else{ + this.set("selectedItem", item); + changed = true; + } + }else{ // single + if(e.ctrlKey){ + //if the object is selected deselects it. + this.set("selectedItem", selected ? null : item); + changed = true; + }else{ + if(!selected){ + this.set("selectedItem", item); + changed = true; + } + } + } + + if(dispatch && changed){ + this.dispatchChange(oldSelectedItem, this.get("selectedItem"), renderer, e); + } + + return changed; + }, + + dispatchChange: function(oldSelectedItem, newSelectedItem, renderer, triggerEvent){ + // summary: + // Dispatch a selection change event. + // oldSelectedItem: Object + // The previously selectedItem. + // newSelectedItem: Object + // The new selectedItem. + // renderer: Object + // The visual renderer of the selected/deselected item. + // triggerEvent: Event + // The event that lead to the selection of the item. + this.onChange({ + oldValue: oldSelectedItem, + newValue: newSelectedItem, + renderer: renderer, + triggerEvent: triggerEvent + }); + }, + + onChange: function(){ + // summary: + // Called when the selection changed. + // tags: + // callback + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/SortList.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/SortList.js new file mode 100644 index 00000000..d36b2fd4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/SortList.js @@ -0,0 +1,79 @@ +//>>built +define("dojox/widget/SortList",["dijit","dojo","dojox","dojo/require!dijit/layout/_LayoutWidget,dijit/_Templated"],function(_1,_2,_3){ +_2.provide("dojox.widget.SortList"); +_2.experimental("dojox.widget.SortList"); +_2.require("dijit.layout._LayoutWidget"); +_2.require("dijit._Templated"); +_2.declare("dojox.widget.SortList",[_1.layout._LayoutWidget,_1._Templated],{title:"",heading:"",descending:true,selected:null,sortable:true,store:"",key:"name",baseClass:"dojoxSortList",templateString:_2.cache("dojox.widget","SortList/SortList.html","
          \n\t\t
          \n\t\t
           
          \n\t\t${title}\n\t\t
          \n\t\t
          \n\t\t
            \n\t
            \n
            "),_addItem:function(_4){ +_2.create("li",{innerHTML:this.store.getValue(_4,this.key).replace(/_b){ +return 1; +} +if(_a<_b){ +return -1; +} +return 0; +},setTitle:function(_c){ +this.focusNode.innerHTML=this.title=_c; +},onChanged:function(){ +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/SortList.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/SortList.js.uncompressed.js new file mode 100644 index 00000000..07fdda3a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/SortList.js.uncompressed.js @@ -0,0 +1,163 @@ +// wrapped by build app +define("dojox/widget/SortList", ["dijit","dojo","dojox","dojo/require!dijit/layout/_LayoutWidget,dijit/_Templated"], function(dijit,dojo,dojox){ +dojo.provide("dojox.widget.SortList"); +dojo.experimental("dojox.widget.SortList"); // level: prototype, designed for dijit.chat.demo + +dojo.require("dijit.layout._LayoutWidget"); +dojo.require("dijit._Templated"); + +dojo.declare("dojox.widget.SortList", + [dijit.layout._LayoutWidget, dijit._Templated], + { + // summary: + // A sortable unordered-list with a fixed header for use in dijit.demos.chat + // for demonstration purposes only for now. feel free to make API suggestions + // or fixes. + // + // title: String + // The title in the header + title: "", + + // heading: String + // In the event a parent container is expecting a title="" attribute, set it for the parent + // via title, and the title of this widget via heading="" ... assuming you want different + // titles for each. eg: TabContainer, AccordionContainer, etc. + heading: "", + + // descending: Boolean + // Toggle sort order based on this value. + descending: true, + + // selected: Array + // A list of the selected `
          • ` nodes at any given time. + selected: null, + + // sortable: Boolean + // toggle to enable/disable sorting + sortable: true, + + // FIXME: this is really simple store support + store: "", + key: "name", + + baseClass: "dojoxSortList", + + templateString: dojo.cache("dojox.widget", "SortList/SortList.html", "
            \n\t\t
            \n\t\t
             
            \n\t\t${title}\n\t\t
            \n\t\t
            \n\t\t
              \n\t
              \n
              "), + + _addItem: function(item){ + dojo.create("li", { + innerHTML: this.store.getValue(item, this.key).replace(/bStr){ return 1; } + if(aStr +
              +
               
              + ${title} +
              +
              +
                +
                + \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Standby.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Standby.js new file mode 100644 index 00000000..e26b840d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Standby.js @@ -0,0 +1,353 @@ +//>>built +define("dojox/widget/Standby",["dojo/_base/kernel","dojo/_base/declare","dojo/_base/array","dojo/_base/event","dojo/_base/sniff","dojo/dom","dojo/dom-attr","dojo/dom-construct","dojo/dom-geometry","dojo/dom-style","dojo/window","dojo/_base/window","dojo/_base/fx","dojo/fx","dijit/_Widget","dijit/_TemplatedMixin","dijit/registry"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,fx,_e,_f,_10){ +_1.experimental("dojox.widget.Standby"); +return _2("dojox.widget.Standby",[_e,_f],{image:require.toUrl("dojox/widget/Standby/images/loading.gif").toString(),imageText:"Please Wait...",text:"Please wait...",centerIndicator:"image",target:"",color:"#C0C0C0",duration:500,zIndex:"auto",opacity:0.75,templateString:"
                "+"
                "+""+"
                "+"
                ",_underlayNode:null,_imageNode:null,_textNode:null,_centerNode:null,_displayed:false,_resizeCheck:null,_started:false,_parent:null,startup:function(_11){ +if(!this._started){ +if(typeof this.target==="string"){ +var w=_10.byId(this.target); +this.target=w?w.domNode:_6.byId(this.target); +} +if(this.text){ +this._textNode.innerHTML=this.text; +} +if(this.centerIndicator==="image"){ +this._centerNode=this._imageNode; +_7.set(this._imageNode,"src",this.image); +_7.set(this._imageNode,"alt",this.imageText); +}else{ +this._centerNode=this._textNode; +} +_a.set(this._underlayNode,{display:"none",backgroundColor:this.color}); +_a.set(this._centerNode,"display","none"); +this.connect(this._underlayNode,"onclick","_ignore"); +if(this.domNode.parentNode&&this.domNode.parentNode!=_c.body()){ +_c.body().appendChild(this.domNode); +} +if(_5("ie")==7){ +this._ieFixNode=_8.create("div"); +_a.set(this._ieFixNode,{opacity:"0",zIndex:"-1000",position:"absolute",top:"-1000px"}); +_c.body().appendChild(this._ieFixNode); +} +this.inherited(arguments); +} +},show:function(){ +if(!this._displayed){ +if(this._anim){ +this._anim.stop(); +delete this._anim; +} +this._displayed=true; +this._size(); +this._disableOverflow(); +this._fadeIn(); +} +},hide:function(){ +if(this._displayed){ +if(this._anim){ +this._anim.stop(); +delete this._anim; +} +this._size(); +this._fadeOut(); +this._displayed=false; +if(this._resizeCheck!==null){ +clearInterval(this._resizeCheck); +this._resizeCheck=null; +} +} +},isVisible:function(){ +return this._displayed; +},onShow:function(){ +},onHide:function(){ +},uninitialize:function(){ +this._displayed=false; +if(this._resizeCheck){ +clearInterval(this._resizeCheck); +} +_a.set(this._centerNode,"display","none"); +_a.set(this._underlayNode,"display","none"); +if(_5("ie")==7&&this._ieFixNode){ +_c.body().removeChild(this._ieFixNode); +delete this._ieFixNode; +} +if(this._anim){ +this._anim.stop(); +delete this._anim; +} +this.target=null; +this._imageNode=null; +this._textNode=null; +this._centerNode=null; +this.inherited(arguments); +},_size:function(){ +if(this._displayed){ +var dir=_7.get(_c.body(),"dir"); +if(dir){ +dir=dir.toLowerCase(); +} +var _12; +var _13=this._scrollerWidths(); +var _14=this.target; +var _15=_a.get(this._centerNode,"display"); +_a.set(this._centerNode,"display","block"); +var box=_9.position(_14,true); +if(_14===_c.body()||_14===_c.doc){ +box=_b.getBox(); +box.x=box.l; +box.y=box.t; +} +var _16=_9.getMarginBox(this._centerNode); +_a.set(this._centerNode,"display",_15); +if(this._ieFixNode){ +_12=-this._ieFixNode.offsetTop/1000; +box.x=Math.floor((box.x+0.9)/_12); +box.y=Math.floor((box.y+0.9)/_12); +box.w=Math.floor((box.w+0.9)/_12); +box.h=Math.floor((box.h+0.9)/_12); +} +var zi=_a.get(_14,"zIndex"); +var _17=zi; +var _18=zi; +if(this.zIndex==="auto"){ +if(zi!="auto"){ +_17=parseInt(_17,10)+1; +_18=parseInt(_18,10)+2; +}else{ +var _19=_14; +if(_19&&_19!==_c.body()&&_19!==_c.doc){ +_19=_14.parentNode; +var _1a=-100000; +while(_19&&_19!==_c.body()){ +zi=_a.get(_19,"zIndex"); +if(!zi||zi==="auto"){ +_19=_19.parentNode; +}else{ +var _1b=parseInt(zi,10); +if(_1a<_1b){ +_1a=_1b; +_17=_1b+1; +_18=_1b+2; +} +_19=_19.parentNode; +} +} +} +} +}else{ +_17=parseInt(this.zIndex,10)+1; +_18=parseInt(this.zIndex,10)+2; +} +_a.set(this._centerNode,"zIndex",_18); +_a.set(this._underlayNode,"zIndex",_17); +var pn=_14.parentNode; +if(pn&&pn!==_c.body()&&_14!==_c.body()&&_14!==_c.doc){ +var obh=box.h; +var obw=box.w; +var _1c=_9.position(pn,true); +if(this._ieFixNode){ +_12=-this._ieFixNode.offsetTop/1000; +_1c.x=Math.floor((_1c.x+0.9)/_12); +_1c.y=Math.floor((_1c.y+0.9)/_12); +_1c.w=Math.floor((_1c.w+0.9)/_12); +_1c.h=Math.floor((_1c.h+0.9)/_12); +} +_1c.w-=pn.scrollHeight>pn.clientHeight&&pn.clientHeight>0?_13.v:0; +_1c.h-=pn.scrollWidth>pn.clientWidth&&pn.clientWidth>0?_13.h:0; +if(dir==="rtl"){ +if(_5("opera")){ +box.x+=pn.scrollHeight>pn.clientHeight&&pn.clientHeight>0?_13.v:0; +_1c.x+=pn.scrollHeight>pn.clientHeight&&pn.clientHeight>0?_13.v:0; +}else{ +if(_5("ie")){ +_1c.x+=pn.scrollHeight>pn.clientHeight&&pn.clientHeight>0?_13.v:0; +}else{ +if(_5("webkit")){ +} +} +} +} +if(_1c.w_1d&&_1f<_1d){ +box.y=_1c.y; +_25=_1d-_1f; +var _26=obh-_25; +if(_26<_1c.h){ +box.h=_26; +}else{ +box.h-=2*(pn.scrollWidth>pn.clientWidth&&pn.clientWidth>0?_13.h:0); +} +}else{ +if(_1f<_1e&&_20>_1e){ +box.h=_1e-_1f; +}else{ +if(_20<=_1d||_1f>=_1e){ +box.h=0; +} +} +} +if(_24>_21&&_23<_21){ +box.x=_1c.x; +_25=_21-_23; +var _27=obw-_25; +if(_27<_1c.w){ +box.w=_27; +}else{ +box.w-=2*(pn.scrollHeight>pn.clientHeight&&pn.clientHeight>0?_13.w:0); +} +}else{ +if(_23<_22&&_24>_22){ +box.w=_22-_23; +}else{ +if(_24<=_21||_23>=_22){ +box.w=0; +} +} +} +} +if(box.h>0&&box.w>0){ +_a.set(this._underlayNode,{display:"block",width:box.w+"px",height:box.h+"px",top:box.y+"px",left:box.x+"px"}); +var _28=["borderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]; +this._cloneStyles(_28); +if(!_5("ie")){ +_28=["MozBorderRadius","MozBorderRadiusTopleft","MozBorderRadiusTopright","MozBorderRadiusBottomleft","MozBorderRadiusBottomright","WebkitBorderRadius","WebkitBorderTopLeftRadius","WebkitBorderTopRightRadius","WebkitBorderBottomLeftRadius","WebkitBorderBottomRightRadius"]; +this._cloneStyles(_28,this); +} +var _29=(box.h/2)-(_16.h/2); +var _2a=(box.w/2)-(_16.w/2); +if(box.h>=_16.h&&box.w>=_16.w){ +_a.set(this._centerNode,{top:(_29+box.y)+"px",left:(_2a+box.x)+"px",display:"block"}); +}else{ +_a.set(this._centerNode,"display","none"); +} +}else{ +_a.set(this._underlayNode,"display","none"); +_a.set(this._centerNode,"display","none"); +} +if(this._resizeCheck===null){ +var _2b=this; +this._resizeCheck=setInterval(function(){ +_2b._size(); +},100); +} +} +},_cloneStyles:function(_2c){ +_3.forEach(_2c,function(s){ +_a.set(this._underlayNode,s,_a.get(this.target,s)); +},this); +},_fadeIn:function(){ +var _2d=this; +var _2e=_d.animateProperty({duration:_2d.duration,node:_2d._underlayNode,properties:{opacity:{start:0,end:_2d.opacity}}}); +var _2f=_d.animateProperty({duration:_2d.duration,node:_2d._centerNode,properties:{opacity:{start:0,end:1}},onEnd:function(){ +_2d.onShow(); +delete _2d._anim; +}}); +this._anim=fx.combine([_2e,_2f]); +this._anim.play(); +},_fadeOut:function(){ +var _30=this; +var _31=_d.animateProperty({duration:_30.duration,node:_30._underlayNode,properties:{opacity:{start:_30.opacity,end:0}},onEnd:function(){ +_a.set(this.node,{"display":"none","zIndex":"-1000"}); +}}); +var _32=_d.animateProperty({duration:_30.duration,node:_30._centerNode,properties:{opacity:{start:1,end:0}},onEnd:function(){ +_a.set(this.node,{"display":"none","zIndex":"-1000"}); +_30.onHide(); +_30._enableOverflow(); +delete _30._anim; +}}); +this._anim=fx.combine([_31,_32]); +this._anim.play(); +},_ignore:function(e){ +if(e){ +_4.stop(e); +} +},_scrollerWidths:function(){ +var div=_8.create("div"); +_a.set(div,{position:"absolute",opacity:0,overflow:"hidden",width:"50px",height:"50px",zIndex:"-100",top:"-200px",padding:"0px",margin:"0px"}); +var _33=_8.create("div"); +_a.set(_33,{width:"200px",height:"10px"}); +div.appendChild(_33); +_c.body().appendChild(div); +var b=_9.getContentBox(div); +_a.set(div,"overflow","scroll"); +var a=_9.getContentBox(div); +_c.body().removeChild(div); +return {v:b.w-a.w,h:b.h-a.h}; +},_setTextAttr:function(_34){ +this._textNode.innerHTML=_34; +this.text=_34; +},_setColorAttr:function(c){ +_a.set(this._underlayNode,"backgroundColor",c); +this.color=c; +},_setImageTextAttr:function(_35){ +_7.set(this._imageNode,"alt",_35); +this.imageText=_35; +},_setImageAttr:function(url){ +_7.set(this._imageNode,"src",url); +this.image=url; +},_setCenterIndicatorAttr:function(_36){ +this.centerIndicator=_36; +if(_36==="image"){ +this._centerNode=this._imageNode; +_a.set(this._textNode,"display","none"); +}else{ +this._centerNode=this._textNode; +_a.set(this._imageNode,"display","none"); +} +},_disableOverflow:function(){ +if(this.target===_c.body()||this.target===_c.doc){ +this._overflowDisabled=true; +var _37=_c.body(); +if(_37.style&&_37.style.overflow){ +this._oldOverflow=_a.get(_37,"overflow"); +}else{ +this._oldOverflow=""; +} +if(_5("ie")&&!_5("quirks")){ +if(_37.parentNode&&_37.parentNode.style&&_37.parentNode.style.overflow){ +this._oldBodyParentOverflow=_37.parentNode.style.overflow; +}else{ +try{ +this._oldBodyParentOverflow=_a.get(_37.parentNode,"overflow"); +} +catch(e){ +this._oldBodyParentOverflow="scroll"; +} +} +_a.set(_37.parentNode,"overflow","hidden"); +} +_a.set(_37,"overflow","hidden"); +} +},_enableOverflow:function(){ +if(this._overflowDisabled){ +delete this._overflowDisabled; +var _38=_c.body(); +if(_5("ie")&&!_5("quirks")){ +_38.parentNode.style.overflow=this._oldBodyParentOverflow; +delete this._oldBodyParentOverflow; +} +_a.set(_38,"overflow",this._oldOverflow); +if(_5("webkit")){ +var div=_8.create("div",{style:{height:"2px"}}); +_38.appendChild(div); +setTimeout(function(){ +_38.removeChild(div); +},0); +} +delete this._oldOverflow; +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Standby.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Standby.js.uncompressed.js new file mode 100644 index 00000000..8cb61454 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Standby.js.uncompressed.js @@ -0,0 +1,758 @@ +define("dojox/widget/Standby", ["dojo/_base/kernel", + "dojo/_base/declare", + "dojo/_base/array", + "dojo/_base/event", + "dojo/_base/sniff", + "dojo/dom", + "dojo/dom-attr", + "dojo/dom-construct", + "dojo/dom-geometry", + "dojo/dom-style", + "dojo/window", + "dojo/_base/window", + "dojo/_base/fx", + "dojo/fx", + "dijit/_Widget", + "dijit/_TemplatedMixin", + "dijit/registry"], + +function(kernel, + declare, + array, + event, + has, + dom, + attr, + construct, + geometry, + domStyle, + window, + baseWindow, + baseFx, + fx, + _Widget, + _TemplatedMixin, + registry) { + +kernel.experimental("dojox.widget.Standby"); + +return declare("dojox.widget.Standby", [_Widget, _TemplatedMixin],{ + // summary: + // A widget designed to act as a Standby/Busy/Disable/Blocking widget to indicate a + // particular DOM node is processing and cannot be clicked on at this time. + // This widget uses absolute positioning to apply the overlay and image. + + // image: String + // A URL to an image to center within the blocking overlay. + // The default is a basic spinner. + image: require.toUrl("dojox/widget/Standby/images/loading.gif").toString(), + + // imageText: String + // Text to set on the ALT tag of the image. + // The default is 'Please wait...' + imageText: "Please Wait...", // TODO: i18n + + // text: String + // Text/HTML to display in the center of the overlay + // This is used if image center is disabled. + // Defaults to 'Please Wait...' + text: "Please wait...", + + // centerIndicator: String + // Property to define if the image and its alt text should be used, or + // a simple Text/HTML node should be used. Allowable values are 'image' + // and 'text'. + // Default is 'image'. + centerIndicator: "image", + + // target: DOMNode||DOMID(String)||WidgetID(String) + // The target to overlay when active. Can be a widget id, a + // dom id, or a direct node reference. + target: "", + + // color: String + // The color to set the overlay. Should be in #XXXXXX form. + // Default color for the translucent overlay is light gray. + color: "#C0C0C0", + + // duration: Integer + // Integer defining how long the show and hide effects should take in milliseconds. + // Defaults to 500 + duration: 500, + + // zIndex: String + // Control that lets you specify if the zIndex for the overlay + // should be auto-computed based off parent zIndex, or should be set + // to a particular value. This is useful when you want to overlay + // things in digit.Dialogs, you can specify a base zIndex to append from. + zIndex: "auto", + + // opacity: float + // The opacity to make the overlay when it is displayed/faded in. + // The default is 0.75. This does not affect the image opacity, only the + // overlay. + opacity: 0.75, + + // templateString: [protected] String + // The template string defining out the basics of the widget. No need for an external + // file. + templateString: + "
                " + + "
                " + + "" + + "
                " + + "
                ", + + // _underlayNode: [private] DOMNode + // The node that is the translucent underlay for the + // image that blocks access to the target. + _underlayNode: null, + + // _imageNode: [private] DOMNode + // The image node where we attach and define the image to display. + _imageNode: null, + + // _textNode: [private] DOMNode + // The div to attach text/HTML in the overlay center item. + _textNode: null, + + // _centerNode: [private] DOMNode + // Which node to use as the center node, the image or the text node. + _centerNode: null, + + // _displayed: [private] Boolean + // Flag to indicate if the overlay is displayed or not. + _displayed: false, + + // _resizeCheck: [private] Object + // Handle to interval function that checks the target for changes. + _resizeCheck: null, + + // _started: [private] Boolean + // Trap flag to ensure startup only processes once. + _started: false, + + // _parent: [private] DOMNode + // Wrapping div for the widget, also used for IE 7 in dealing with the + // zoom issue. + _parent: null, + + startup: function(args){ + // summary: + // Over-ride of the basic widget startup function. + // Configures the target node and sets the image to use. + if(!this._started){ + if(typeof this.target === "string"){ + var w = registry.byId(this.target); + this.target = w ? w.domNode : dom.byId(this.target); + } + + if(this.text){ + this._textNode.innerHTML = this.text; + } + if(this.centerIndicator === "image"){ + this._centerNode = this._imageNode; + attr.set(this._imageNode, "src", this.image); + attr.set(this._imageNode, "alt", this.imageText); + }else{ + this._centerNode = this._textNode; + } + domStyle.set(this._underlayNode, { + display: "none", + backgroundColor: this.color + }); + domStyle.set(this._centerNode, "display", "none"); + this.connect(this._underlayNode, "onclick", "_ignore"); + + //Last thing to do is move the widgets parent, if any, to the current document body. + //Avoids having to deal with parent relative/absolute mess. Otherwise positioning + //tends to go goofy. + if(this.domNode.parentNode && this.domNode.parentNode != baseWindow.body()){ + baseWindow.body().appendChild(this.domNode); + } + + //IE 7 has a horrible bug with zoom, so we have to create this node + //to cross-check later. Sigh. + if(has("ie") == 7){ + this._ieFixNode = construct.create("div"); + domStyle.set(this._ieFixNode, { + opacity: "0", + zIndex: "-1000", + position: "absolute", + top: "-1000px" + }); + baseWindow.body().appendChild(this._ieFixNode); + } + this.inherited(arguments); + } + }, + + show: function(){ + // summary: + // Function to display the blocking overlay and busy/status icon or text. + if(!this._displayed){ + if(this._anim){ + this._anim.stop(); + delete this._anim; + } + this._displayed = true; + this._size(); + this._disableOverflow(); + this._fadeIn(); + } + }, + + hide: function(){ + // summary: + // Function to hide the blocking overlay and status icon or text. + if(this._displayed){ + if(this._anim){ + this._anim.stop(); + delete this._anim; + } + this._size(); + this._fadeOut(); + this._displayed = false; + if(this._resizeCheck !== null){ + clearInterval(this._resizeCheck); + this._resizeCheck = null; + } + } + }, + + isVisible: function(){ + // summary: + // Helper function so you can test if the widget is already visible or not. + // returns: + // boolean indicating if the widget is in 'show' state or not. + return this._displayed; // boolean + }, + + onShow: function(){ + // summary: + // Event that fires when the display of the Standby completes. + }, + + onHide: function(){ + // summary: + // Event that fires when the display of the Standby completes. + }, + + uninitialize: function(){ + // summary: + // Over-ride to hide the widget, which clears intervals, before cleanup. + this._displayed = false; + if(this._resizeCheck){ + clearInterval(this._resizeCheck); + } + domStyle.set(this._centerNode, "display", "none"); + domStyle.set(this._underlayNode, "display", "none"); + if(has("ie") == 7 && this._ieFixNode){ + baseWindow.body().removeChild(this._ieFixNode); + delete this._ieFixNode; + } + if(this._anim){ + this._anim.stop(); + delete this._anim; + } + this.target = null; + this._imageNode = null; + this._textNode = null; + this._centerNode = null; + this.inherited(arguments); + }, + + _size: function(){ + // summary: + // Internal function that handles resizing the overlay and + // centering of the image on window resizing. + // tags: + // private + if(this._displayed){ + var dir = attr.get(baseWindow.body(), "dir"); + if(dir){dir = dir.toLowerCase();} + var _ie7zoom; + var scrollers = this._scrollerWidths(); + + var target = this.target; + + //Show the image and make sure the zIndex is set high. + var curStyle = domStyle.get(this._centerNode, "display"); + domStyle.set(this._centerNode, "display", "block"); + var box = geometry.position(target, true); + if(target === baseWindow.body() || target === baseWindow.doc){ + // Target is the whole doc, so scale to viewport. + box = window.getBox(); + box.x = box.l; + box.y = box.t; + } + + var cntrIndicator = geometry.getMarginBox(this._centerNode); + domStyle.set(this._centerNode, "display", curStyle); + + //IE has a horrible zoom bug. So, we have to try and account for + //it and fix up the scaling. + if(this._ieFixNode){ + _ie7zoom = -this._ieFixNode.offsetTop / 1000; + box.x = Math.floor((box.x + 0.9) / _ie7zoom); + box.y = Math.floor((box.y + 0.9) / _ie7zoom); + box.w = Math.floor((box.w + 0.9) / _ie7zoom); + box.h = Math.floor((box.h + 0.9) / _ie7zoom); + } + + //Figure out how to zIndex this thing over the target. + var zi = domStyle.get(target, "zIndex"); + var ziUl = zi; + var ziIn = zi; + + if(this.zIndex === "auto"){ + if(zi != "auto"){ + ziUl = parseInt(ziUl, 10) + 1; + ziIn = parseInt(ziIn, 10) + 2; + }else{ + //We need to search up the chain to see if there + //are any parent zIndexs to overlay. + var cNode = target; + if(cNode && cNode !== baseWindow.body() && cNode !== baseWindow.doc){ + cNode = target.parentNode; + var oldZi = -100000; + while(cNode && cNode !== baseWindow.body()){ + zi = domStyle.get(cNode, "zIndex"); + if(!zi || zi === "auto"){ + cNode = cNode.parentNode; + }else{ + var newZi = parseInt(zi, 10); + if(oldZi < newZi){ + oldZi = newZi; + ziUl = newZi + 1; + ziIn = newZi + 2; + } + // Keep looking until we run out, we want the highest zIndex. + cNode = cNode.parentNode; + } + } + } + } + }else{ + ziUl = parseInt(this.zIndex, 10) + 1; + ziIn = parseInt(this.zIndex, 10) + 2; + } + + domStyle.set(this._centerNode, "zIndex", ziIn); + domStyle.set(this._underlayNode, "zIndex", ziUl); + + + var pn = target.parentNode; + if(pn && pn !== baseWindow.body() && + target !== baseWindow.body() && + target !== baseWindow.doc){ + + // If the parent is the body tag itself, + // we can avoid all this, the body takes + // care of overflow for me. Besides, browser + // weirdness with height and width on body causes + // problems with this sort of intersect testing + // anyway. + var obh = box.h; + var obw = box.w; + var pnBox = geometry.position(pn, true); + + //More IE zoom corrections. Grr. + if(this._ieFixNode){ + _ie7zoom = -this._ieFixNode.offsetTop / 1000; + pnBox.x = Math.floor((pnBox.x + 0.9) / _ie7zoom); + pnBox.y = Math.floor((pnBox.y + 0.9) / _ie7zoom); + pnBox.w = Math.floor((pnBox.w + 0.9) / _ie7zoom); + pnBox.h = Math.floor((pnBox.h + 0.9) / _ie7zoom); + } + + //Shift the parent width/height a bit if scollers are present. + pnBox.w -= pn.scrollHeight > pn.clientHeight && + pn.clientHeight > 0 ? scrollers.v: 0; + pnBox.h -= pn.scrollWidth > pn.clientWidth && + pn.clientWidth > 0 ? scrollers.h: 0; + + //RTL requires a bit of massaging in some cases + //(and differently depending on browser, ugh!) + //WebKit and others still need work. + if(dir === "rtl"){ + if(has("opera")){ + box.x += pn.scrollHeight > pn.clientHeight && + pn.clientHeight > 0 ? scrollers.v: 0; + pnBox.x += pn.scrollHeight > pn.clientHeight && + pn.clientHeight > 0 ? scrollers.v: 0; + }else if(has("ie")){ + pnBox.x += pn.scrollHeight > pn.clientHeight && + pn.clientHeight > 0 ? scrollers.v: 0; + }else if(has("webkit")){ + //TODO: FIX THIS! + } + } + + //Figure out if we need to adjust the overlay to fit a viewable + //area, then resize it, we saved the original height/width above. + //This is causing issues on IE. Argh! + if(pnBox.w < box.w){ + //Scale down the width if necessary. + box.w = box.w - pnBox.w; + } + if(pnBox.h < box.h){ + //Scale down the width if necessary. + box.h = box.h - pnBox.h; + } + + //Look at the y positions and see if we intersect with the + //viewport borders. Will have to do computations off it. + var vpTop = pnBox.y; + var vpBottom = pnBox.y + pnBox.h; + var bTop = box.y; + var bBottom = box.y + obh; + var vpLeft = pnBox.x; + var vpRight = pnBox.x + pnBox.w; + var bLeft = box.x; + var bRight = box.x + obw; + var delta; + //Adjust the height now + if(bBottom > vpTop && + bTop < vpTop){ + box.y = pnBox.y; + //intersecting top, need to do some shifting. + delta = vpTop - bTop; + var visHeight = obh - delta; + //If the visible height < viewport height, + //We need to shift it. + if(visHeight < pnBox.h){ + box.h = visHeight; + }else{ + //Deal with horizontal scrollbars if necessary. + box.h -= 2*(pn.scrollWidth > pn.clientWidth && + pn.clientWidth > 0? scrollers.h: 0); + } + }else if(bTop < vpBottom && bBottom > vpBottom){ + //Intersecting bottom, just figure out how much + //overlay to show. + box.h = vpBottom - bTop; + }else if(bBottom <= vpTop || bTop >= vpBottom){ + //Outside view, hide it. + box.h = 0; + } + + //adjust width + if(bRight > vpLeft && bLeft < vpLeft){ + box.x = pnBox.x; + //intersecting left, need to do some shifting. + delta = vpLeft - bLeft; + var visWidth = obw - delta; + //If the visible width < viewport width, + //We need to shift it. + if(visWidth < pnBox.w){ + box.w = visWidth; + }else{ + //Deal with horizontal scrollbars if necessary. + box.w -= 2*(pn.scrollHeight > pn.clientHeight && + pn.clientHeight > 0? scrollers.w:0); + } + }else if(bLeft < vpRight && bRight > vpRight){ + //Intersecting right, just figure out how much + //overlay to show. + box.w = vpRight - bLeft; + }else if(bRight <= vpLeft || bLeft >= vpRight){ + //Outside view, hide it. + box.w = 0; + } + } + + if(box.h > 0 && box.w > 0){ + //Set position and size of the blocking div overlay. + domStyle.set(this._underlayNode, { + display: "block", + width: box.w + "px", + height: box.h + "px", + top: box.y + "px", + left: box.x + "px" + }); + + var styles = ["borderRadius", "borderTopLeftRadius", + "borderTopRightRadius","borderBottomLeftRadius", + "borderBottomRightRadius"]; + this._cloneStyles(styles); + if(!has("ie")){ + //Browser specific styles to try and clone if non-IE. + styles = ["MozBorderRadius", "MozBorderRadiusTopleft", + "MozBorderRadiusTopright","MozBorderRadiusBottomleft", + "MozBorderRadiusBottomright","WebkitBorderRadius", + "WebkitBorderTopLeftRadius", "WebkitBorderTopRightRadius", + "WebkitBorderBottomLeftRadius","WebkitBorderBottomRightRadius" + ]; + this._cloneStyles(styles, this); + } + var cntrIndicatorTop = (box.h/2) - (cntrIndicator.h/2); + var cntrIndicatorLeft = (box.w/2) - (cntrIndicator.w/2); + //Only show the image if there is height and width room. + if(box.h >= cntrIndicator.h && box.w >= cntrIndicator.w){ + domStyle.set(this._centerNode, { + top: (cntrIndicatorTop + box.y) + "px", + left: (cntrIndicatorLeft + box.x) + "px", + display: "block" + }); + }else{ + domStyle.set(this._centerNode, "display", "none"); + } + }else{ + //Target has no size, display nothing on it! + domStyle.set(this._underlayNode, "display", "none"); + domStyle.set(this._centerNode, "display", "none"); + } + if(this._resizeCheck === null){ + //Set an interval timer that checks the target size and scales as needed. + //Checking every 10th of a second seems to generate a fairly smooth update. + var self = this; + this._resizeCheck = setInterval(function(){self._size();}, 100); + } + } + }, + + _cloneStyles: function(list){ + // summary: + // Internal function to clone a set of styles from the target to + // the underlay. + // list: Array + // An array of style names to clone. + // + // tags: + // private + array.forEach(list, function(s){ + domStyle.set(this._underlayNode, s, domStyle.get(this.target, s)); + }, this); + }, + + _fadeIn: function(){ + // summary: + // Internal function that does the opacity style fade in animation. + // tags: + // private + var self = this; + var underlayNodeAnim = baseFx.animateProperty({ + duration: self.duration, + node: self._underlayNode, + properties: {opacity: {start: 0, end: self.opacity}} + }); + var imageAnim = baseFx.animateProperty({ + duration: self.duration, + node: self._centerNode, + properties: {opacity: {start: 0, end: 1}}, + onEnd: function(){ + self.onShow(); + delete self._anim; + } + }); + this._anim = fx.combine([underlayNodeAnim,imageAnim]); + this._anim.play(); + }, + + _fadeOut: function(){ + // summary: + // Internal function that does the opacity style fade out animation. + // tags: + // private + var self = this; + var underlayNodeAnim = baseFx.animateProperty({ + duration: self.duration, + node: self._underlayNode, + properties: {opacity: {start: self.opacity, end: 0}}, + onEnd: function(){ + domStyle.set(this.node,{"display":"none", "zIndex": "-1000"}); + } + }); + var imageAnim = baseFx.animateProperty({ + duration: self.duration, + node: self._centerNode, + properties: {opacity: {start: 1, end: 0}}, + onEnd: function(){ + domStyle.set(this.node,{"display":"none", "zIndex": "-1000"}); + self.onHide(); + self._enableOverflow(); + delete self._anim; + } + }); + this._anim = fx.combine([underlayNodeAnim,imageAnim]); + this._anim.play(); + }, + + _ignore: function(e){ + // summary: + // Function to ignore events that occur on the overlay. + // event: Event + // The event to halt + // tags: + // private + if(e){ + event.stop(e); + } + }, + + _scrollerWidths: function(){ + // summary: + // This function will calculate the size of the vertical and + // horizontaol scrollbars. + // returns: + // Object of form: {v: Number, h: Number} where v is vertical scrollbar width + // and h is horizontal scrollbar width. + // tags: + // private + var div = construct.create("div"); + domStyle.set(div, { + position: "absolute", + opacity: 0, + overflow: "hidden", + width: "50px", + height: "50px", + zIndex: "-100", + top: "-200px", + padding: "0px", + margin: "0px" + }); + var iDiv = construct.create("div"); + domStyle.set(iDiv, { + width: "200px", + height: "10px" + }); + div.appendChild(iDiv); + baseWindow.body().appendChild(div); + + //Figure out content size before and after + //scrollbars are there, then just subtract to + //get width. + var b = geometry.getContentBox(div); + domStyle.set(div, "overflow", "scroll"); + var a = geometry.getContentBox(div); + baseWindow.body().removeChild(div); + return { v: b.w - a.w, h: b.h - a.h }; + }, + + /* The following are functions that tie into _Widget.attr() */ + + _setTextAttr: function(text){ + // summary: + // Function to allow widget.attr to set the text displayed in center + // if using text display. + // text: String + // The text to set. + this._textNode.innerHTML = text; + this.text = text; + }, + + _setColorAttr: function(c){ + // summary: + // Function to allow widget.attr to set the color used for the translucent + // div overlay. + // c: String + // The color to set the background underlay to in #XXXXXX format.. + domStyle.set(this._underlayNode, "backgroundColor", c); + this.color = c; + }, + + _setImageTextAttr: function(text){ + // summary: + // Function to allow widget.attr to set the ALT text text displayed for + // the image (if using image center display). + // text: String + // The text to set. + attr.set(this._imageNode, "alt", text); + this.imageText = text; + }, + + _setImageAttr: function(url){ + // summary: + // Function to allow widget.attr to set the url source for the center image + // text: String + // The url to set for the image. + attr.set(this._imageNode, "src", url); + this.image = url; + }, + + _setCenterIndicatorAttr: function(indicator){ + // summary: + // Function to allow widget.attr to set the node used for the center indicator, + // either the image or the text. + // indicator: String + // The indicator to use, either 'image' or 'text'. + this.centerIndicator = indicator; + if(indicator === "image"){ + this._centerNode = this._imageNode; + domStyle.set(this._textNode, "display", "none"); + }else{ + this._centerNode = this._textNode; + domStyle.set(this._imageNode, "display", "none"); + } + }, + + _disableOverflow: function(){ + // summary: + // Function to disable scrollbars on the body. Only used if the overlay + // targets the body or the document. + if(this.target === baseWindow.body() || this.target === baseWindow.doc){ + // Store the overflow state we have to restore later. + // IE had issues, so have to check that it's defined. Ugh. + this._overflowDisabled = true; + var body = baseWindow.body(); + if(body.style && body.style.overflow){ + this._oldOverflow = domStyle.get(body, "overflow"); + }else{ + this._oldOverflow = ""; + } + if(has("ie") && !has("quirks")){ + // IE will put scrollbars in anyway, html (parent of body) + // also controls them in standards mode, so we have to + // remove them, argh. + if(body.parentNode && + body.parentNode.style && + body.parentNode.style.overflow){ + this._oldBodyParentOverflow = body.parentNode.style.overflow; + }else{ + try{ + this._oldBodyParentOverflow = domStyle.get(body.parentNode, "overflow"); + }catch(e){ + this._oldBodyParentOverflow = "scroll"; + } + } + domStyle.set(body.parentNode, "overflow", "hidden"); + } + domStyle.set(body, "overflow", "hidden"); + } + }, + + _enableOverflow: function(){ + // summary: + // Function to restore scrollbars on the body. Only used if the overlay + // targets the body or the document. + if(this._overflowDisabled){ + delete this._overflowDisabled; + var body = baseWindow.body(); + // Restore all the overflow. + if(has("ie") && !has("quirks")){ + body.parentNode.style.overflow = this._oldBodyParentOverflow; + delete this._oldBodyParentOverflow; + } + domStyle.set(body, "overflow", this._oldOverflow); + if(has("webkit")){ + //Gotta poke WebKit, or scrollers don't come back. :-( + var div = construct.create("div", { style: { + height: "2px" + } + }); + body.appendChild(div); + setTimeout(function(){ + body.removeChild(div); + }, 0); + } + delete this._oldOverflow; + } + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Standby/images/loading.gif b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Standby/images/loading.gif new file mode 100644 index 0000000000000000000000000000000000000000..e4ab78302c5d6ff92def7688c291999a4fcbd70d GIT binary patch literal 4178 zcmd7VX;c&Gng{SoZAq${df0d)N zgN|AFsZ1 zYHI4ig9o#-v$?ss)z#G*85s(NVq|0l_`4qd7u;Ryyr_8^;##aOY{US_^a5B-c;W$Qinz(DW z*`Hozh84-^?V2UN83;nU?)NmyEiJGk%}6AwK{R;q)+V7p|6la`7@}Cw&dmp;i-KVw z1qf$Hp{NuNHaPebKo9qm(6<0EmCA4t6Tw;t1R;2MWEeXfPoYQ?8OXRh-q~Y>Fo~`)Vwq=PXOI6=zsIm_n6+iz8-BoP3;-iy=ECxe8wDJ*o`5bj>wT0=vkQd(7Je5ckeuJ^~_FPrlntx6I4rwHX zqoTD9O)IgB%XI4;TQ)OXQ+1kne@tuIm&YQhpIZL=AxsHdO8Ruh)>p&P6@tWAjp zcAOYHqp1AI?ZVOfK~<_{9a*ek4bjh=h;V9xR5v(24L~?t<0#lgf&>$>q113c2fCOJ zL5t(Vf?+y}(pll81Y~0vF2W5fAaoC?%W_5e*8v>4gjI>*-yl{~Lgyv+9x1N%8*jL) zOb((@k3Zf$lrWJna~pj53Va?l_v&%iyIZf{ef)$y{kP9L1JO(C?kQv4FjH?6lcePR zZt(k$;xl(nGP-yy`^vv2ib6+7dE!j{os0RdusqLqaBOY3L+A?sJYK78!<37F*53E) z;x$4}GOH)sftMFlnY=Bx_e{sVSKlw84adrmE9u?P8&>_gHR$Tkyc^!Y0$^zp;=@_ z+-G{@@|3GT>#aKxV8lx)$!QVXi17+(O@=*Q9uQY6JGH(svZKsJ!wYh$DX)~F?IlPt zGOqY_#i5b;YU1GcX)+{n^yygLx|3GXcJk#wq+z@7#hR+e!~a7pEl|ilveQ}z?+^_R z%1uc4fR1lWMeAhssNlyytC>IL$wnrT*5fsAVULA31>gtwoGZve3x0y zv8wS-hARYYx~*0v`^15Q82Ce;^G$)oHZ68)O?m$X1>mqT)Tp7Vo$uDnM=VFHyv-$* zf^!buy0>a0h)5j#(b?obo10W|_pEnxj>1D0hk?N&+|fIV72+*foO#fZo#W>OWS4}X0Sqb?7V9~x zgNNjZ=!SBbD5nxZ)mYpfaLGkRsc-esK;3dCR4c`i{b4Y5Nn6SN&TtnmOV4iX7z91xtj#Q4<;*J@A&}JEt_jQ5?R#B73?_&`_ymwb}^F? z&o-@c1diD#cn#uAigbzF&`2`i0_s5VZiKb-G$v$kEd zNZUrK=#`2#0G!Sv;r$l2z#47&kfpm9;Pcx4MT`&QH;MlR8?B*GLERa*yNs?y@c#*N zU6=RYApJc}YKG4eH43l;iC7uMInsOL(vQ!$Ih_->?+W+hx$F>dn_6&3yx&#_Oq`Cf zQ?n0vG}(ck)a*+yBdIkYkq`@#L|S;aY%Io+=~(Wm!(@!5O8!p>DbLDNr|W z;gq4-4+_n)fl|q^@B2R1gGUy$f0U$@z8Cl}%Df#rL!HF`?TBy8P%Flr&My;ZV}*fd z56dcZLei0wm*a99Q?93639LjqI^{Jrbut7R92)HD>2nP`E+kL>!hqosBuK|9y zBrGcQbW2fE2#rc*qK#*Ni$;jIR2s+9Yf0Ada!7|pi&RcdKt?s8>o)IEQYaXyPv{LO z4D%hXSWt8aN>u>Bw0s!7YBHs0y|Yu13S6Km$UZ8?ZAFDc)% zMc$c|gPQU7omLl2JopA?0qvb5f?LNqHnb6~e^?U#|9;7;wwli7Xn9wkny|MEzu9(e zbgW%`cS!9vC`BOF?;dJ5L+AypX6r#;K!)c<4M#)>A97(4fr7cx`>>iVY-XSppwI{! zX%nG<+0?h0)=#Gs`3QiTd0GMrSW0!{n0bnm_+5F%{nj>#lf`)yh6XLkSyKsEWq+S= zXhuoV>gO|9*2HNT6w}0qu}I;(s!o$DBJu_BbqcX2CxY2+l7uo}y@4tJd@=kJM%L|X z2$ci%oCze1*`(k)eQNG^#+H#zE+87vqt5z%#?YA>5i$_Ct~f$~QYfjSUInv%Mf zJW@(XHnW53OYagO@eL3WF)93pAcH@jzbJVDNQj0^JXU5~hWjcM zd=HOY;4hx{ZcI_ysQ2Wo6E?!uItpn{*t)bS6V1O-GcK>PhmHj%1OHTtG8Uw2gIL#s zQ@Xr3+`fJ;aZNqdy#swiaU-MH^>)?GIJ~>-iUhv)#D`AkqtTw1WE$$4*N!e}cF{6; zN3M|-raW^(*D(NJT}w2nX=(Y5?LRJ=`W2-eHssg{g^3Uqv|wjRC16U77z-`%4fHQs zU#4H3R6k$Qz1BaE9$BByuUcLVkXJy}q!1FUp!N)<_9z`3`PB*I`E0X@Ml_W=Y4s?nCvw<#SC~Vq}{b*K=3zL@B{3qZWtM zV(h9)gEEuo#=|le$t_TCM)znm4(O7?=+H0<_XdOGcL06z{sgJfD|ej6)V=aBZt5{M zI5IRAhu`_5KcM%$4+t?ULKN_p&55l^5aV$h`&25BnnLCEK*Kcw=td2m6~LD#W&F6) z_t30&a7U~9174;MXlt?qZk6O+p4gE=<$YuZKE8RZ*2*D-QD5+osyy>EfYrnP-uV`* z7yH{S!xY1-LGz_v?Zf6OKqJO;*WS280x!$`Macg;%+_RP@+pPQR)Jm#;q78>ra5L* zKAgljl`Q~1GqfDJ?gnT3IKQ`3_8OPJ%MFZ`kaE_~0e~ZWr-p`0Q5{TJqgfK zhXs{T)|6-b!^2<1;C`fcu5_5;`sXY^H(qCcW!@EHTCFmkWRVy9n+;T z*;mI#7l?2!*go_ZhVC3Cx5QPdsat5H1SA1BtW55<&5P6dM#pFa6(NQz53?@(AUekz zPF|1o^m+>=t*NW!HYeZDuC_W_{FC!1ldka>48__4K~UTI?4{nTeToGo>built +define("dojox/widget/TitleGroup",["dojo","dijit/registry","dijit/_Widget","dijit/TitlePane"],function(_1,_2,_3,_4){ +var tp=_4.prototype,_5=function(){ +var _6=this._dxfindParent&&this._dxfindParent(); +_6&&_6.selectChild(this); +}; +tp._dxfindParent=function(){ +var n=this.domNode.parentNode; +if(n){ +n=_2.getEnclosingWidget(n); +return n&&n instanceof dojox.widget.TitleGroup&&n; +} +return n; +}; +_1.connect(tp,"_onTitleClick",_5); +_1.connect(tp,"_onTitleKey",function(e){ +if(!(e&&e.type&&e.type=="keypress"&&e.charOrCode==_1.keys.TAB)){ +_5.apply(this,arguments); +} +}); +return _1.declare("dojox.widget.TitleGroup",dijit._Widget,{"class":"dojoxTitleGroup",addChild:function(_7,_8){ +return _7.placeAt(this.domNode,_8); +},removeChild:function(_9){ +this.domNode.removeChild(_9.domNode); +return _9; +},selectChild:function(_a){ +_a&&_1.query("> .dijitTitlePane",this.domNode).forEach(function(n){ +var tp=_2.byNode(n); +tp&&tp!==_a&&tp.open&&tp.toggle(); +}); +return _a; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/TitleGroup.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/TitleGroup.js.uncompressed.js new file mode 100644 index 00000000..244fbb9e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/TitleGroup.js.uncompressed.js @@ -0,0 +1,84 @@ +define("dojox/widget/TitleGroup", ["dojo", "dijit/registry", "dijit/_Widget", "dijit/TitlePane"], function(dojo, registry, widget, titlepane){ + + var tp = titlepane.prototype, + lookup = function(){ + // generic handler function for click and keypress + var parent = this._dxfindParent && this._dxfindParent(); + parent && parent.selectChild(this); + } + ; + + // this might hide this uberprivate function from the docparser. + tp._dxfindParent = function(){ + // summary: + // TitlePane's MUST be first-children of a TitleGroup. only used by + // `dojox.widget.TitleGroup`. Finds a possible parent TitleGroup of a TitlePane + var n = this.domNode.parentNode; + if(n){ + n = registry.getEnclosingWidget(n); + return n && n instanceof dojox.widget.TitleGroup && n; + } + return n; + }; + + // if we click our own title, hide everyone + dojo.connect(tp, "_onTitleClick", lookup); + dojo.connect(tp, "_onTitleKey", function(e){ + // if we're tabbing through the items in a group, don't do toggles. + // if we hit enter, let it happen. + if(!(e && e.type && e.type == "keypress" && e.charOrCode == dojo.keys.TAB)){ + lookup.apply(this, arguments); + } + }); + + return dojo.declare("dojox.widget.TitleGroup", dijit._Widget, { + // summary: + // A container which controls a series of `dijit.TitlePane`s, + // allowing one to be visible and hiding siblings + // description: + // A container which controls a series of `dijit.TitlePane`s, + // allowing one to be visible and hiding siblings. Behaves similarly + // to a `dijit.layout.AccordionContainer` in that the children + // are all stacked, though merges the TitlePane behavior of + // variable height + // example: + // | var group = new dojox.widget.TitleGroup().placeAt(dojo.body()); + // | new dijit.TitlePane({ title:"One" }, "fromsource").placeAt(group); + // | new dijit.TitlePane({ title:"Remote", href:"foo.html" }).placeAt(group); + + "class":"dojoxTitleGroup", + + addChild: function(widget, position){ + // summary: + // Add a passed widget reference to this container at an optional + // position index. + // widget: dijit.TitlePane + // A widget reference to add + // position: String|Int? + // An optional index or position to pass. defaults to "last" + return widget.placeAt(this.domNode, position); // dijit.TitlePane + }, + + removeChild: function(widget){ + // summary: + // Remove the passed widget from this container. Does not destroy + // child. + + this.domNode.removeChild(widget.domNode); + return widget; + }, + + selectChild: function(widget){ + // summary: + // close all found titlePanes within this group, excluding + // the one the we pass to select + widget && dojo.query("> .dijitTitlePane", this.domNode).forEach(function(n){ + var tp = registry.byNode(n); + tp && tp !== widget && tp.open && tp.toggle(); // could race if open is set onEnd of slide + }); + return widget; // dijit/TitlePane + } + + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/TitleGroup/TitleGroup.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/TitleGroup/TitleGroup.css new file mode 100644 index 00000000..5671190f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/TitleGroup/TitleGroup.css @@ -0,0 +1,22 @@ + +.claro .dojoxTitleGroup .dijitTitlePaneContentOuter { + border-bottom:none; +} +.claro .dojoxTitleGroup .dijitTitlePaneContentOuter .dijitTitlePaneContentOuter, +.claro .dojoxTitleGroup { + border-bottom:1px solid #B5BCC7; +} +.soria .dojoxTitleGroup .dijitTitlePaneContentOuter { + border-bottom:none; +} +.soria .dojoxTitleGroup .dijitTitlePaneContentOuter .dijitTitlePaneContentOuter, +.soria .dojoxTitleGroup { + border-bottom:1px solid #BFBFBF; +} +.nihilo .dojoxTitleGroup .dijitTitlePaneContentOuter { + border-bottom:none; +} +.nihilo .dojoxTitleGroup .dijitTitlePaneContentOuter .dijitTitlePaneContentOuter, +.nihilo .dojoxTitleGroup { + border-bottom:1px solid #BFBFBF; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Toaster.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Toaster.js new file mode 100644 index 00000000..17b6d9b6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Toaster.js @@ -0,0 +1,170 @@ +//>>built +define("dojox/widget/Toaster",["dojo/_base/declare","dojo/_base/lang","dojo/_base/connect","dojo/_base/fx","dojo/dom-style","dojo/dom-class","dojo/dom-geometry","dijit/registry","dijit/_WidgetBase","dijit/_TemplatedMixin","dijit/BackgroundIframe","dojo/fx","dojo/has","dojo/_base/window","dojo/window"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e,_f){ +_2.getObject("dojox.widget",true); +var _10=function(w){ +return w.substring(0,1).toUpperCase()+w.substring(1); +}; +return _1("dojox.widget.Toaster",[_9,_a],{templateString:"
                ",messageTopic:"",messageTypes:{MESSAGE:"message",WARNING:"warning",ERROR:"error",FATAL:"fatal"},defaultType:"message",positionDirection:"br-up",positionDirectionTypes:["br-up","br-left","bl-up","bl-right","tr-down","tr-left","tl-down","tl-right"],duration:2000,slideDuration:500,separator:"
                ",postCreate:function(){ +this.inherited(arguments); +this.hide(); +_e.body().appendChild(this.domNode); +if(this.messageTopic){ +_3.subscribe(this.messageTopic,this,"_handleMessage"); +} +},_handleMessage:function(_11){ +if(_2.isString(_11)){ +this.setContent(_11); +}else{ +this.setContent(_11.message,_11.type,_11.duration); +} +},setContent:function(_12,_13,_14){ +_14=_14||this.duration; +if(this.slideAnim){ +if(this.slideAnim.status()!="playing"){ +this.slideAnim.stop(); +} +if(this.slideAnim.status()=="playing"||(this.fadeAnim&&this.fadeAnim.status()=="playing")){ +setTimeout(_2.hitch(this,function(){ +this.setContent(_12,_13,_14); +}),50); +return; +} +} +for(var _15 in this.messageTypes){ +_6.remove(this.containerNode,"dijitToaster"+_10(this.messageTypes[_15])); +} +_5.set(this.containerNode,"opacity",1); +this._setContent(_12); +_6.add(this.containerNode,"dijitToaster"+_10(_13||this.defaultType)); +this.show(); +var _16=_7.getMarginBox(this.containerNode); +this._cancelHideTimer(); +if(this.isVisible){ +this._placeClip(); +if(!this._stickyMessage){ +this._setHideTimer(_14); +} +}else{ +var _17=this.containerNode.style; +var pd=this.positionDirection; +if(pd.indexOf("-up")>=0){ +_17.left=0+"px"; +_17.top=_16.h+10+"px"; +}else{ +if(pd.indexOf("-left")>=0){ +_17.left=_16.w+10+"px"; +_17.top=0+"px"; +}else{ +if(pd.indexOf("-right")>=0){ +_17.left=0-_16.w-10+"px"; +_17.top=0+"px"; +}else{ +if(pd.indexOf("-down")>=0){ +_17.left=0+"px"; +_17.top=0-_16.h-10+"px"; +}else{ +throw new Error(this.id+".positionDirection is invalid: "+pd); +} +} +} +} +this.slideAnim=_c.slideTo({node:this.containerNode,top:0,left:0,duration:this.slideDuration}); +this.connect(this.slideAnim,"onEnd",function(_18,_19){ +this.fadeAnim=_4.fadeOut({node:this.containerNode,duration:1000}); +this.connect(this.fadeAnim,"onEnd",function(evt){ +this.isVisible=false; +this.hide(); +}); +this._setHideTimer(_14); +this.connect(this,"onSelect",function(evt){ +this._cancelHideTimer(); +this._stickyMessage=false; +this.fadeAnim.play(); +}); +this.isVisible=true; +}); +this.slideAnim.play(); +} +},_setContent:function(_1a){ +if(_2.isFunction(_1a)){ +_1a(this); +return; +} +if(_1a&&this.isVisible){ +_1a=this.contentNode.innerHTML+this.separator+_1a; +} +this.contentNode.innerHTML=_1a; +},_cancelHideTimer:function(){ +if(this._hideTimer){ +clearTimeout(this._hideTimer); +this._hideTimer=null; +} +},_setHideTimer:function(_1b){ +this._cancelHideTimer(); +if(_1b>0){ +this._cancelHideTimer(); +this._hideTimer=setTimeout(_2.hitch(this,function(evt){ +if(this.bgIframe&&this.bgIframe.iframe){ +this.bgIframe.iframe.style.display="none"; +} +this._hideTimer=null; +this._stickyMessage=false; +this.fadeAnim.play(); +}),_1b); +}else{ +this._stickyMessage=true; +} +},_placeClip:function(){ +var _1c=_f.getBox(); +var _1d=_7.getMarginBox(this.containerNode); +var _1e=this.clipNode.style; +_1e.height=_1d.h+"px"; +_1e.width=_1d.w+"px"; +var pd=this.positionDirection; +if(pd.match(/^t/)){ +_1e.top=_1c.t+"px"; +}else{ +if(pd.match(/^b/)){ +_1e.top=(_1c.h-_1d.h-2+_1c.t)+"px"; +} +} +if(pd.match(/^[tb]r-/)){ +_1e.left=(_1c.w-_1d.w-1-_1c.l)+"px"; +}else{ +if(pd.match(/^[tb]l-/)){ +_1e.left=0+"px"; +}else{ +if(pd.match(/^[tb]c-/)){ +_1e.left=Math.round((_1c.w-_1d.w-1-_1c.l)/2)+"px"; +} +} +} +_1e.clip="rect(0px, "+_1d.w+"px, "+_1d.h+"px, 0px)"; +if(_d("ie")){ +if(!this.bgIframe){ +if(!this.clipNode.id){ +this.clipNode.id=_8.getUniqueId("dojox_widget_Toaster_clipNode"); +} +this.bgIframe=new _b(this.clipNode); +} +var _1f=this.bgIframe.iframe; +if(_1f){ +_1f.style.display="block"; +} +} +},onSelect:function(e){ +},show:function(){ +_5.set(this.domNode,"display","block"); +this._placeClip(); +if(!this._scrollConnected){ +this._scrollConnected=_3.connect(_f,"onscroll",this,this._placeClip); +} +},hide:function(){ +_5.set(this.domNode,"display","none"); +if(this._scrollConnected){ +_3.disconnect(this._scrollConnected); +this._scrollConnected=false; +} +_5.set(this.containerNode,"opacity",1); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Toaster.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Toaster.js.uncompressed.js new file mode 100644 index 00000000..59c377e7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Toaster.js.uncompressed.js @@ -0,0 +1,296 @@ +define("dojox/widget/Toaster", [ + "dojo/_base/declare", // declare + "dojo/_base/lang", // lang.getObject... + "dojo/_base/connect", // connect.connect, connect.subscribe + "dojo/_base/fx", // fx.fadeOut + "dojo/dom-style", // domStyle.set + "dojo/dom-class", // domClass.add + "dojo/dom-geometry", // domGeometry.getMarginBox + "dijit/registry", // registry.getUniqueId() + "dijit/_WidgetBase", + "dijit/_TemplatedMixin", + "dijit/BackgroundIframe", + "dojo/fx", + "dojo/has", + "dojo/_base/window", + "dojo/window" +], function(declare, lang, connect, baseFx, domStyle, domClass, domGeometry, registry, WidgetBase, Templated, BackgroundIframe, coreFx, has, baseWindow, window){ + + lang.getObject("dojox.widget", true); + + var capitalize = function(/* String */w){ + return w.substring(0,1).toUpperCase() + w.substring(1); + }; + + return declare("dojox.widget.Toaster", [WidgetBase, Templated], { + // summary: + // Message that slides in from the corner of the screen, used for notifications + // like "new email". + + templateString: '
                ', + + // messageTopic: String + // Name of topic; anything published to this topic will be displayed as a message. + // Message format is either String or an object like + // {message: "hello word", type: "error", duration: 500} + messageTopic: "", + + // messageTypes: Enumeration + // Possible message types. + messageTypes: { + MESSAGE: "message", + WARNING: "warning", + ERROR: "error", + FATAL: "fatal" + }, + + // defaultType: String + // If message type isn't specified (see "messageTopic" parameter), + // then display message as this type. + // Possible values in messageTypes enumeration ("message", "warning", "error", "fatal") + defaultType: "message", + + // positionDirection: String + // Position from which message slides into screen, one of + // ["br-up", "br-left", "bl-up", "bl-right", "tr-down", "tr-left", "tl-down", "tl-right"] + positionDirection: "br-up", + + // positionDirectionTypes: Array + // Possible values for positionDirection parameter + positionDirectionTypes: ["br-up", "br-left", "bl-up", "bl-right", "tr-down", "tr-left", "tl-down", "tl-right"], + + // duration: Integer + // Number of milliseconds to show message + duration: 2000, + + // slideDuration: Integer + // Number of milliseconds for the slide animation, increasing will cause the Toaster + // to slide in more slowly. + slideDuration: 500, + + // separator: String + // String used to separate messages if consecutive calls are made to setContent before previous messages go away + separator: "
                ", + + postCreate: function(){ + this.inherited(arguments); + this.hide(); + + // place node as a child of body for positioning + baseWindow.body().appendChild(this.domNode); + + if(this.messageTopic){ + connect.subscribe(this.messageTopic, this, "_handleMessage"); + } + }, + + _handleMessage: function(/*String|Object*/message){ + if(lang.isString(message)){ + this.setContent(message); + }else{ + this.setContent(message.message, message.type, message.duration); + } + }, + + setContent: function(/*String|Function*/message, /*String*/messageType, /*int?*/duration){ + // summary: + // sets and displays the given message and show duration + // message: + // the message. If this is a function, it will be called with this toaster widget as the only argument. + // messageType: + // type of message; possible values in messageTypes enumeration ("message", "warning", "error", "fatal") + // duration: + // duration in milliseconds to display message before removing it. Widget has default value. + duration = duration||this.duration; + // sync animations so there are no ghosted fades and such + if(this.slideAnim){ + if(this.slideAnim.status() != "playing"){ + this.slideAnim.stop(); + } + if(this.slideAnim.status() == "playing" || (this.fadeAnim && this.fadeAnim.status() == "playing")){ + setTimeout(lang.hitch(this, function(){ + this.setContent(message, messageType, duration); + }), 50); + return; + } + } + + // determine type of content and apply appropriately + for(var type in this.messageTypes){ + domClass.remove(this.containerNode, "dijitToaster" + capitalize(this.messageTypes[type])); + } + + domStyle.set(this.containerNode, "opacity", 1); + + this._setContent(message); + + domClass.add(this.containerNode, "dijitToaster" + capitalize(messageType || this.defaultType)); + + // now do funky animation of widget appearing from + // bottom right of page and up + this.show(); + var nodeSize = domGeometry.getMarginBox(this.containerNode); + this._cancelHideTimer(); + if(this.isVisible){ + this._placeClip(); + //update hide timer if no sticky message in stack + if(!this._stickyMessage) { + this._setHideTimer(duration); + } + }else{ + var style = this.containerNode.style; + var pd = this.positionDirection; + // sets up initial position of container node and slide-out direction + if(pd.indexOf("-up") >= 0){ + style.left=0+"px"; + style.top=nodeSize.h + 10 + "px"; + }else if(pd.indexOf("-left") >= 0){ + style.left=nodeSize.w + 10 +"px"; + style.top=0+"px"; + }else if(pd.indexOf("-right") >= 0){ + style.left = 0 - nodeSize.w - 10 + "px"; + style.top = 0+"px"; + }else if(pd.indexOf("-down") >= 0){ + style.left = 0+"px"; + style.top = 0 - nodeSize.h - 10 + "px"; + }else{ + throw new Error(this.id + ".positionDirection is invalid: " + pd); + } + this.slideAnim = coreFx.slideTo({ + node: this.containerNode, + top: 0, left: 0, + duration: this.slideDuration}); + this.connect(this.slideAnim, "onEnd", function(nodes, anim){ + //we build the fadeAnim here so we dont have to duplicate it later + // can't do a fadeHide because we're fading the + // inner node rather than the clipping node + this.fadeAnim = baseFx.fadeOut({ + node: this.containerNode, + duration: 1000}); + this.connect(this.fadeAnim, "onEnd", function(evt){ + this.isVisible = false; + this.hide(); + }); + this._setHideTimer(duration); + this.connect(this, 'onSelect', function(evt){ + this._cancelHideTimer(); + //force clear sticky message + this._stickyMessage=false; + this.fadeAnim.play(); + }); + + this.isVisible = true; + }); + this.slideAnim.play(); + } + }, + + _setContent: function(message){ + if(lang.isFunction(message)){ + message(this); + return; + } + if(message && this.isVisible){ + message = this.contentNode.innerHTML + this.separator + message; + } + this.contentNode.innerHTML = message; + }, + _cancelHideTimer:function(){ + if (this._hideTimer){ + clearTimeout(this._hideTimer); + this._hideTimer=null; + } + }, + + _setHideTimer:function(duration){ + this._cancelHideTimer(); + //if duration == 0 we keep the message displayed until clicked + if(duration>0){ + this._cancelHideTimer(); + this._hideTimer=setTimeout(lang.hitch(this, function(evt){ + // we must hide the iframe in order to fade + // TODO: figure out how to fade with a BackgroundIframe + if(this.bgIframe && this.bgIframe.iframe){ + this.bgIframe.iframe.style.display="none"; + } + this._hideTimer=null; + //force clear sticky message + this._stickyMessage=false; + this.fadeAnim.play(); + }), duration); + } + else + this._stickyMessage=true; + }, + + _placeClip: function(){ + var view = window.getBox(); + + var nodeSize = domGeometry.getMarginBox(this.containerNode); + + var style = this.clipNode.style; + // sets up the size of the clipping node + style.height = nodeSize.h+"px"; + style.width = nodeSize.w+"px"; + + // sets up the position of the clipping node + var pd = this.positionDirection; + if(pd.match(/^t/)){ + style.top = view.t+"px"; + }else if(pd.match(/^b/)){ + style.top = (view.h - nodeSize.h - 2 + view.t)+"px"; + } + if(pd.match(/^[tb]r-/)){ + style.left = (view.w - nodeSize.w - 1 - view.l)+"px"; + }else if(pd.match(/^[tb]l-/)){ + style.left = 0 + "px"; + }else if(pd.match(/^[tb]c-/)){ + style.left = Math.round((view.w - nodeSize.w - 1 - view.l)/2)+"px"; + } + + style.clip = "rect(0px, " + nodeSize.w + "px, " + nodeSize.h + "px, 0px)"; + if(has("ie")){ + if(!this.bgIframe){ + if (!this.clipNode.id) { + this.clipNode.id = registry.getUniqueId("dojox_widget_Toaster_clipNode"); + } + this.bgIframe = new BackgroundIframe(this.clipNode); + } + var iframe = this.bgIframe.iframe; + if(iframe){ iframe.style.display="block"; } + } + }, + + onSelect: function(/*Event*/e){ + // summary: + // callback for when user clicks the message + }, + + show: function(){ + // summary:' + // show the Toaster + domStyle.set(this.domNode, 'display', 'block'); + + this._placeClip(); + + if(!this._scrollConnected){ + this._scrollConnected = connect.connect(window, "onscroll", this, this._placeClip); + } + }, + + hide: function(){ + // summary: + // hide the Toaster + + domStyle.set(this.domNode, 'display', 'none'); + + if(this._scrollConnected){ + connect.disconnect(this._scrollConnected); + this._scrollConnected = false; + } + + domStyle.set(this.containerNode, "opacity", 1); + } + }); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Toaster/Toaster.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Toaster/Toaster.css new file mode 100644 index 00000000..201b0022 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Toaster/Toaster.css @@ -0,0 +1,34 @@ + +.dijitToasterContent { + padding:1em; + padding-top:0.25em; + background:#73c74a; +} +.dijitToasterMessage{ + color:#fff; +} +.dijitToasterWarning, +.dijitToasterError, +.dijitToasterFatal{ + font-weight:bold; + color:#fff; +} +.dijitToasterWarning .dijitToasterContent{ + background:#d4d943; +} +.dijitToasterError .dijitToasterContent{ + background:#c46600; +} + +.dijitToasterClip { + position: absolute; + z-index: 5000; + overflow: hidden; +} +.dijitToasterContainer { + display: block; + position: absolute; + width: 17.5em; + margin: 0px; + font:0.75em; +} diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/UpgradeBar.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/UpgradeBar.js new file mode 100644 index 00000000..7c8ca2cb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/UpgradeBar.js @@ -0,0 +1,90 @@ +//>>built +require({cache:{"url:dojox/widget/UpgradeBar/UpgradeBar.html":"
                \n\t
                message
                \n\t
                ${noRemindButton}
                \n\t\n
                "}}); +define("dojox/widget/UpgradeBar",["dojo/_base/kernel","dojo/_base/array","dojo/_base/connect","dojo/_base/declare","dojo/_base/fx","dojo/_base/lang","dojo/_base/sniff","dojo/_base/window","dojo/dom-attr","dojo/dom-class","dojo/dom-construct","dojo/dom-geometry","dojo/dom-style","dojo/cookie","dojo/domReady","dojo/fx","dojo/window","dijit/_WidgetBase","dijit/_TemplatedMixin","dojo/text!./UpgradeBar/UpgradeBar.html"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e,_f,fx,win,_10,_11,_12){ +_1.experimental("dojox.widget.UpgradeBar"); +var _13=_4("dojox.widget.UpgradeBar",[_10,_11],{notifications:[],buttonCancel:"Close for now",noRemindButton:"Don't Remind Me Again",templateString:_12,constructor:function(_14,_15){ +if(!_14.notifications&&_15){ +_2.forEach(_15.childNodes,function(n){ +if(n.nodeType==1){ +var val=_9.get(n,"validate"); +this.notifications.push({message:n.innerHTML,validate:function(){ +var _16=true; +try{ +_16=_1.eval(val); +} +catch(e){ +} +return _16; +}}); +} +},this); +} +},checkNotifications:function(){ +if(!this.notifications.length){ +return; +} +for(var i=0;i\n\t
                message
                \n\t
                ${noRemindButton}
                \n\t\n"}}); +define("dojox/widget/UpgradeBar", [ + "dojo/_base/kernel", // dojo.eval + "dojo/_base/array", // array.forEach + "dojo/_base/connect", // connect + "dojo/_base/declare", // declare + "dojo/_base/fx", // baseFx.animateProperty + "dojo/_base/lang", // lang.mixin, lang.hitch + "dojo/_base/sniff", // has("ie") + "dojo/_base/window", // baseWin.body + "dojo/dom-attr", // domAttr.get + "dojo/dom-class", // domClass.addClass, domClass.removeClass + "dojo/dom-construct", // domConstruct.destroy + "dojo/dom-geometry", // domGeo.getContentBox + "dojo/dom-style", // style.get, style.set + "dojo/cookie", // cookie + "dojo/domReady", // domReady + "dojo/fx", // fx.combine + "dojo/window", // win.getBox + "dijit/_WidgetBase", // _WidgetBase + "dijit/_TemplatedMixin", // _TemplatedMixin + "dojo/text!./UpgradeBar/UpgradeBar.html" +], function(dojo, array, connect, declare, baseFx, lang, has, baseWin, + domAttr, domClass, domConstruct, domGeo, style, cookie, + domReady, fx, win, _WidgetBase, _TemplatedMixin, template){ + +dojo.experimental("dojox.widget.UpgradeBar"); + +var UpgradeBar = declare("dojox.widget.UpgradeBar", [_WidgetBase, _TemplatedMixin], { + // summary: + // Shows a bar at the top of the screen when the user is to + // be notified that they should upgrade their browser or a + // plugin. + // description: + // You can insert custom validations to trigger the UpgradeBar + // to display. An evaluation of 'true' shows the bar (as this + // version *is* less than it should be). Multiple validations + // may be checked, although only the first in the list will be + // displayed. + // Markup and programmatic are supported. Markup is a little + // cleaner, since a majority of the parameters are the HTML + // snippets to be displayed. In markup, the validate code should + // be an expression that will evaluate to true or false. This + // expression is wrapped in a try/catch, so if it blows up, it + // is assumed to be true and trigger the bar. + // In programmatic, a function should be used that returns true + // or false. You would need to use your own try/catch in that. + // example: + // See tests for examples. + + + // notifications: Array + // An array of objects that hold the criteria for upgrades: + // + // - message: String: The message to display in the bar. Can be HTML. + // - validate: Function: The expression to evaluate to determine if the + // bar should show or not. Should be a simple expression + // if used in HTML: + // + // |
                + // |
                + notifications:[], + + // buttonCancel:String + // The HTML tip show when hovering over the close button. + buttonCancel:"Close for now", + + // noRemindButton:String + // The text link shown that when clicked, permanently dismisses + // the message (sets a cookie). If this string is blank, this + // link is not displayed. + noRemindButton:"Don't Remind Me Again", + + templateString: template, + + constructor: function(props, node){ + + if(!props.notifications && node){ + // From markup. Create the notifications Array from the + // srcRefNode children. + array.forEach(node.childNodes, function(n){ + if(n.nodeType==1){ + var val = domAttr.get(n, "validate"); + this.notifications.push({ + message:n.innerHTML, + validate:function(){ + // the function that fires to determine if the + // bar shows or not. + var evals = true; + try{ + evals = dojo.eval(val); + }catch(e){ /* squelch. it's true.*/ } + return evals; + } + }); + } + }, this); + } + + }, + + checkNotifications: function(){ + // summary: + // Internal. Go through the notifications Array + // and check for any that evaluate to true. + // tags: + // private + + if(!this.notifications.length){ + // odd. why use the bar but not set any notifications? + return; + } + + for(var i=0;i +
                message
                +
                ${noRemindButton}
                + +
                \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard.js new file mode 100644 index 00000000..2816f6d9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard.js @@ -0,0 +1,62 @@ +//>>built +require({cache:{"url:dojox/widget/Wizard/Wizard.html":"
                \n
                \n
                \n \n \n \n \n
                \n
                \n"}}); +define("dojox/widget/Wizard",["dojo/_base/lang","dojo/_base/declare","dojo/_base/connect","dijit/layout/StackContainer","dijit/_TemplatedMixin","dijit/_WidgetsInTemplateMixin","dojo/i18n","dojo/text!./Wizard/Wizard.html","dojo/i18n!dijit/nls/common","dojo/i18n!./nls/Wizard","dijit/form/Button"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +var _9=_2("dojox.widget.Wizard",[_4,_5,_6],{templateString:_8,nextButtonLabel:"",previousButtonLabel:"",cancelButtonLabel:"",doneButtonLabel:"",cancelFunction:null,hideDisabled:false,postMixInProperties:function(){ +this.inherited(arguments); +var _a=_1.mixin({cancel:_7.getLocalization("dijit","common",this.lang).buttonCancel},_7.getLocalization("dojox.widget","Wizard",this.lang)); +var _b; +for(_b in _a){ +if(!this[_b+"ButtonLabel"]){ +this[_b+"ButtonLabel"]=_a[_b]; +} +} +},startup:function(){ +if(this._started){ +return; +} +this.inherited(arguments); +this.connect(this.nextButton,"onClick","_forward"); +this.connect(this.previousButton,"onClick","back"); +if(this.cancelFunction){ +if(_1.isString(this.cancelFunction)){ +this.cancelFunction=_1.getObject(this.cancelFunction); +} +this.connect(this.cancelButton,"onClick",this.cancelFunction); +}else{ +this.cancelButton.domNode.style.display="none"; +} +this.connect(this.doneButton,"onClick","done"); +this._subscription=_3.subscribe(this.id+"-selectChild",_1.hitch(this,"_checkButtons")); +this._started=true; +},resize:function(){ +this.inherited(arguments); +this._checkButtons(); +},_checkButtons:function(){ +var sw=this.selectedChildWidget; +var _c=sw.isLastChild; +this.nextButton.set("disabled",_c); +this._setButtonClass(this.nextButton); +if(sw.doneFunction){ +this.doneButton.domNode.style.display=""; +if(_c){ +this.nextButton.domNode.style.display="none"; +} +}else{ +this.doneButton.domNode.style.display="none"; +} +this.previousButton.set("disabled",!this.selectedChildWidget.canGoBack); +this._setButtonClass(this.previousButton); +},_setButtonClass:function(_d){ +_d.domNode.style.display=(this.hideDisabled&&_d.disabled)?"none":""; +},_forward:function(){ +if(this.selectedChildWidget._checkPass()){ +this.forward(); +} +},done:function(){ +this.selectedChildWidget.done(); +},destroy:function(){ +_3.unsubscribe(this._subscription); +this.inherited(arguments); +}}); +return _9; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard.js.uncompressed.js new file mode 100644 index 00000000..bfde358d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard.js.uncompressed.js @@ -0,0 +1,139 @@ +require({cache:{ +'url:dojox/widget/Wizard/Wizard.html':"
                \n
                \n
                \n \n \n \n \n
                \n
                \n"}}); +define("dojox/widget/Wizard", [ + "dojo/_base/lang", + "dojo/_base/declare", + "dojo/_base/connect", + "dijit/layout/StackContainer", + "dijit/_TemplatedMixin", + "dijit/_WidgetsInTemplateMixin", + "dojo/i18n", + "dojo/text!./Wizard/Wizard.html", + "dojo/i18n!dijit/nls/common", + "dojo/i18n!./nls/Wizard", + "dijit/form/Button" // used by template +], function (lang, declare, connect, StackContainer, _TemplatedMixin, _WidgetsInTemplateMixin, i18n, template) { + +var Wizard = declare("dojox.widget.Wizard", [StackContainer, _TemplatedMixin, _WidgetsInTemplateMixin], { + // summary: + // A set of panels that display sequentially, typically notating a step-by-step + // procedure like an install + + templateString: template, + + // nextButtonLabel: String + // Label override for the "Next" button. + nextButtonLabel: "", + + // previousButtonLabel: String + // Label override for the "Previous" button. + previousButtonLabel: "", + + // cancelButtonLabel: String + // Label override for the "Cancel" button. + cancelButtonLabel: "", + + // doneButtonLabel: String + // Label override for the "Done" button. + doneButtonLabel: "", + + // cancelFunction: Function|String + // Name of function to call if user presses cancel button. + // Cancel button is not displayed if function is not specified. + cancelFunction: null, + + // hideDisabled: Boolean + // If true, disabled buttons are hidden; otherwise, they are assigned the + // "WizardButtonDisabled" CSS class + hideDisabled: false, + + postMixInProperties: function(){ + this.inherited(arguments); + var labels = lang.mixin({cancel: i18n.getLocalization("dijit", "common", this.lang).buttonCancel}, + i18n.getLocalization("dojox.widget", "Wizard", this.lang)); + var prop; + for(prop in labels){ + if(!this[prop + "ButtonLabel"]){ + this[prop + "ButtonLabel"] = labels[prop]; + } + } + }, + + startup: function(){ + if(this._started){ + //console.log('started'); + return; + } + this.inherited(arguments); + + this.connect(this.nextButton, "onClick", "_forward"); + this.connect(this.previousButton, "onClick", "back"); + + if(this.cancelFunction){ + if(lang.isString(this.cancelFunction)){ + this.cancelFunction = lang.getObject(this.cancelFunction); + } + this.connect(this.cancelButton, "onClick", this.cancelFunction); + }else{ + this.cancelButton.domNode.style.display = "none"; + } + this.connect(this.doneButton, "onClick", "done"); + + this._subscription = connect.subscribe(this.id + "-selectChild", lang.hitch(this,"_checkButtons")); + this._started = true; + + }, + + resize: function(){ + this.inherited(arguments); + this._checkButtons(); + }, + + _checkButtons: function(){ + + var sw = this.selectedChildWidget; + + var lastStep = sw.isLastChild; + this.nextButton.set("disabled", lastStep); + this._setButtonClass(this.nextButton); + if(sw.doneFunction){ + //console.log(sw.doneFunction); + this.doneButton.domNode.style.display = ""; + if(lastStep){ + this.nextButton.domNode.style.display = "none"; + } + }else{ + // #1438 issue here. + this.doneButton.domNode.style.display = "none"; + } + this.previousButton.set("disabled", !this.selectedChildWidget.canGoBack); + this._setButtonClass(this.previousButton); + }, + + _setButtonClass: function(button){ + button.domNode.style.display = (this.hideDisabled && button.disabled) ? "none" : ""; + }, + + _forward: function(){ + // summary: + // callback when next button is clicked + if(this.selectedChildWidget._checkPass()){ + this.forward(); + } + }, + + done: function(){ + // summary: + // Finish the wizard's operation + this.selectedChildWidget.done(); + }, + + destroy: function(){ + connect.unsubscribe(this._subscription); + this.inherited(arguments); + } + +}); + +return Wizard; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard/Wizard.css b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard/Wizard.css new file mode 100644 index 00000000..0890860e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard/Wizard.css @@ -0,0 +1,48 @@ +.dojoxWizard { + position:relative; +} +.dojoxWizardButtons { + position:absolute; + bottom:5px; + right:5px; +} +.dojoxWizardContainer > * { + margin-bottom:39px; +} +.tundra .dojoxWizard { + background: #eeeeee; + border: #b7b7b7 1px solid; + padding: 2px; + border-radius:3pt; + -moz-border-radius:3pt; + -webkit-border-radius:4pt; + -o-border-radius:4pt; + -ms-border-radius:4pt; +} +.soria .dojoxWizard { + border:1px solid #b7b7b7; + padding:2px; + border-radius:3pt; + -moz-border-radius:3pt; + -webkit-border-radius:4pt; + -o-border-radius:4pt; + -ms-border-radius:4pt; +} +.claro .dojoxWizard { + border:1px solid #b5bcc7; + padding:2px; + border-radius:3pt; + -moz-border-radius:3pt; + -webkit-border-radius:4pt; + -o-border-radius:4pt; + -ms-border-radius:4pt; +} +.tundra .dijitDialogSingleChild .dojoxWizard, +.soria .dijitDialogSingleChild .dojoxWizard, +.claro .dijitDialogSingleChild .dojoxWizard { + border:none; + padding:0; +} +.claro .dijitDialogSingleChild .dojoxWizardButtons { + bottom:1px; +} \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard/Wizard.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard/Wizard.html new file mode 100644 index 00000000..a91e6777 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/Wizard/Wizard.html @@ -0,0 +1,9 @@ +
                +
                +
                + + + + +
                +
                diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/WizardPane.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/WizardPane.js new file mode 100644 index 00000000..68294898 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/WizardPane.js @@ -0,0 +1,39 @@ +//>>built +define("dojox/widget/WizardPane",["dojo/_base/lang","dojo/_base/declare","dijit/layout/ContentPane"],function(_1,_2,_3){ +return _2("dojox.widget.WizardPane",_3,{canGoBack:true,passFunction:null,doneFunction:null,startup:function(){ +this.inherited(arguments); +if(this.isFirstChild){ +this.canGoBack=false; +} +if(_1.isString(this.passFunction)){ +this.passFunction=_1.getObject(this.passFunction); +} +if(_1.isString(this.doneFunction)&&this.doneFunction){ +this.doneFunction=_1.getObject(this.doneFunction); +} +},_onShow:function(){ +if(this.isFirstChild){ +this.canGoBack=false; +} +this.inherited(arguments); +},_checkPass:function(){ +var r=true; +if(this.passFunction&&_1.isFunction(this.passFunction)){ +var _4=this.passFunction(); +switch(typeof _4){ +case "boolean": +r=_4; +break; +case "string": +alert(_4); +r=false; +break; +} +} +return r; +},done:function(){ +if(this.doneFunction&&_1.isFunction(this.doneFunction)){ +this.doneFunction(); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/WizardPane.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/WizardPane.js.uncompressed.js new file mode 100644 index 00000000..2d48ced8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/WizardPane.js.uncompressed.js @@ -0,0 +1,76 @@ +define("dojox/widget/WizardPane", [ + "dojo/_base/lang", + "dojo/_base/declare", + "dijit/layout/ContentPane" +], function(lang, declare, ContentPane){ + +return declare("dojox.widget.WizardPane", ContentPane, { + // summary: + // A panel in a `dojox.widget.Wizard` + // description: + // An extended ContentPane with additional hooks for passing named + // functions to prevent the pane from going either forward or + // backwards. + + // canGoBack: Boolean + // If true, then can move back to a previous panel (by clicking the "Previous" button) + canGoBack: true, + + // passFunction: String + // Name of function that checks if it's OK to advance to the next panel. + // If it's not OK (for example, mandatory field hasn't been entered), then + // returns an error message (String) explaining the reason. Can return null (pass) + // or a Boolean (true == pass) + passFunction: null, + + // doneFunction: String + // Name of function that is run if you press the "Done" button from this panel + doneFunction: null, + + startup: function(){ + this.inherited(arguments); + if(this.isFirstChild){ this.canGoBack = false; } + if(lang.isString(this.passFunction)){ + this.passFunction = lang.getObject(this.passFunction); + } + if(lang.isString(this.doneFunction) && this.doneFunction){ + this.doneFunction = lang.getObject(this.doneFunction); + } + }, + + _onShow: function(){ + if(this.isFirstChild){ this.canGoBack = false; } + this.inherited(arguments); + }, + + _checkPass: function(){ + // summary: + // Called when the user presses the "next" button. + // Calls passFunction to see if it's OK to advance to next panel, and + // if it isn't, then display error. + // Returns true to advance, false to not advance. If passFunction + // returns a string, it is assumed to be a custom error message, and + // is alert()'ed + var r = true; + if(this.passFunction && lang.isFunction(this.passFunction)){ + var failMessage = this.passFunction(); + switch(typeof failMessage){ + case "boolean": + r = failMessage; + break; + case "string": + alert(failMessage); + r = false; + break; + } + } + return r; // Boolean + }, + + done: function(){ + if(this.doneFunction && lang.isFunction(this.doneFunction)){ this.doneFunction(); } + } +}); + +}); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/YearlyCalendar.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/YearlyCalendar.js new file mode 100644 index 00000000..1dd2e06d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/YearlyCalendar.js @@ -0,0 +1,8 @@ +//>>built +define("dojox/widget/YearlyCalendar",["dojo/_base/declare","./_CalendarBase","./_CalendarYear"],function(_1,_2,_3){ +return _1("dojox.widget.YearlyCalendar",[_2,_3],{_makeDate:function(_4){ +var _5=new Date(); +_5.setFullYear(_4); +return _5; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/YearlyCalendar.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/YearlyCalendar.js.uncompressed.js new file mode 100644 index 00000000..b177bc22 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/YearlyCalendar.js.uncompressed.js @@ -0,0 +1,15 @@ +define("dojox/widget/YearlyCalendar", [ + "dojo/_base/declare", + "./_CalendarBase", + "./_CalendarYear" +], function(declare, _CalendarBase, _CalendarYear){ + return declare("dojox.widget.YearlyCalendar", [_CalendarBase, _CalendarYear], { + // summary: + // A calendar with only a year view. + _makeDate: function(value){ + var now = new Date(); + now.setFullYear(value); + return now; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarBase.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarBase.js new file mode 100644 index 00000000..17a8c9b2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarBase.js @@ -0,0 +1,199 @@ +//>>built +require({cache:{"url:dojox/widget/Calendar/Calendar.html":"
                \n
                \n\t\t
                \n\t\t\t
                \n\t\t\t
                \n\t\t\t
                \n\t\t
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n"}}); +define("dojox/widget/_CalendarBase",["dijit/_WidgetBase","dijit/_TemplatedMixin","dijit/_Container","dijit/_WidgetsInTemplateMixin","dijit/typematic","dojo/_base/declare","dojo/date","dojo/date/stamp","dojo/date/locale","dojo/dom-style","dojo/dom-class","dojo/_base/fx","dojo/on","dojo/_base/array","dojo/_base/lang","dojo/text!./Calendar/Calendar.html"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a,_b,fx,on,_c,_d,_e){ +return _6("dojox.widget._CalendarBase",[_1,_2,_3,_4],{templateString:_e,_views:null,useFx:true,value:new Date(),constraints:null,footerFormat:"medium",constructor:function(){ +this._views=[]; +this.value=new Date(); +},_setConstraintsAttr:function(_f){ +var c=this.constraints=_f; +if(c){ +if(typeof c.min=="string"){ +c.min=_8.fromISOString(c.min); +} +if(typeof c.max=="string"){ +c.max=_8.fromISOString(c.max); +} +} +},postMixInProperties:function(){ +this.inherited(arguments); +this.value=this.parseInitialValue(this.value); +},parseInitialValue:function(_10){ +if(!_10||_10===-1){ +return new Date(); +}else{ +if(_10.getFullYear){ +return _10; +}else{ +if(!isNaN(_10)){ +if(typeof this.value=="string"){ +_10=parseInt(_10); +} +_10=this._makeDate(_10); +} +} +} +return _10; +},_makeDate:function(_11){ +return _11; +},postCreate:function(){ +this.displayMonth=new Date(this.get("value")); +if(this._isInvalidDate(this.displayMonth)){ +this.displayMonth=new Date(); +} +var _12={parent:this,_getValueAttr:_d.hitch(this,function(){ +return new Date(this._internalValue||this.value); +}),_getDisplayMonthAttr:_d.hitch(this,function(){ +return new Date(this.displayMonth); +}),_getConstraintsAttr:_d.hitch(this,function(){ +return this.constraints; +}),getLang:_d.hitch(this,function(){ +return this.lang; +}),isDisabledDate:_d.hitch(this,this.isDisabledDate),getClassForDate:_d.hitch(this,this.getClassForDate),addFx:this.useFx?_d.hitch(this,this.addFx):function(){ +}}; +_c.forEach(this._views,function(_13){ +var _14=new _13(_12).placeAt(this); +var _15=_14.getHeader(); +if(_15){ +this.header.appendChild(_15); +_a.set(_15,"display","none"); +} +_a.set(_14.domNode,"visibility","hidden"); +_14.on("valueSelected",_d.hitch(this,"_onDateSelected")); +_14.set("value",this.get("value")); +},this); +if(this._views.length<2){ +_a.set(this.header,"cursor","auto"); +} +this.inherited(arguments); +this._children=this.getChildren(); +this._currentChild=0; +var _16=new Date(); +this.footer.innerHTML="Today: "+_9.format(_16,{formatLength:this.footerFormat,selector:"date",locale:this.lang}); +on(this.footer,"click",_d.hitch(this,"goToToday")); +var _17=this._children[0]; +_a.set(_17.domNode,"top","0px"); +_a.set(_17.domNode,"visibility","visible"); +var _18=_17.getHeader(); +if(_18){ +_a.set(_17.getHeader(),"display",""); +} +_b.toggle(this.container,"no-header",!_17.useHeader); +_17.onDisplay(); +var _19=this; +var _1a=function(_1b,_1c,adj){ +_5.addMouseListener(_19[_1b],_19,function(_1d){ +if(_1d>=0){ +_19._adjustDisplay(_1c,adj); +} +},0.8,500); +}; +_1a("incrementMonth","month",1); +_1a("decrementMonth","month",-1); +this._updateTitleStyle(); +},addFx:function(_1e,_1f){ +},_isInvalidDate:function(_20){ +return !_20||isNaN(_20)||typeof _20!="object"||_20.toString()==this._invalidDate; +},_setValueAttr:function(_21){ +if(!_21){ +_21=new Date(); +} +if(!_21["getFullYear"]){ +_21=_8.fromISOString(_21+""); +} +if(this._isInvalidDate(_21)){ +return false; +} +if(!this.value||_7.compare(_21,this.value)){ +_21=new Date(_21); +this.displayMonth=new Date(_21); +this._internalValue=_21; +if(!this.isDisabledDate(_21,this.lang)&&this._currentChild==0){ +this.value=_21; +this.onChange(_21); +} +if(this._children&&this._children.length>0){ +this._children[this._currentChild].set("value",this.value); +} +return true; +} +return false; +},isDisabledDate:function(_22,_23){ +var c=this.constraints; +var _24=_7.compare; +return c&&(c.min&&(_24(c.min,_22,"date")>0)||(c.max&&_24(c.max,_22,"date")<0)); +},onValueSelected:function(_25){ +},_onDateSelected:function(_26,_27,_28){ +this.displayMonth=_26; +this.set("value",_26); +if(!this._transitionVert(-1)){ +if(!_27&&_27!==0){ +_27=this.get("value"); +} +this.onValueSelected(_27); +} +},onChange:function(_29){ +},onHeaderClick:function(e){ +this._transitionVert(1); +},goToToday:function(){ +this.set("value",new Date()); +this.onValueSelected(this.get("value")); +},_transitionVert:function(_2a){ +var _2b=this._children[this._currentChild]; +var _2c=this._children[this._currentChild+_2a]; +if(!_2c){ +return false; +} +_a.set(_2c.domNode,"visibility","visible"); +var _2d=_a.get(this.containerNode,"height"); +_2c.set("value",this.displayMonth); +if(_2b.header){ +_a.set(_2b.header,"display","none"); +} +if(_2c.header){ +_a.set(_2c.header,"display",""); +} +_a.set(_2c.domNode,"top",(_2d*-1)+"px"); +_a.set(_2c.domNode,"visibility","visible"); +this._currentChild+=_2a; +var _2e=_2d*_2a; +var _2f=0; +_a.set(_2c.domNode,"top",(_2e*-1)+"px"); +var _30=fx.animateProperty({node:_2b.domNode,properties:{top:_2e},onEnd:function(){ +_a.set(_2b.domNode,"visibility","hidden"); +}}); +var _31=fx.animateProperty({node:_2c.domNode,properties:{top:_2f},onEnd:function(){ +_2c.onDisplay(); +}}); +_b.toggle(this.container,"no-header",!_2c.useHeader); +_30.play(); +_31.play(); +_2b.onBeforeUnDisplay(); +_2c.onBeforeDisplay(); +this._updateTitleStyle(); +return true; +},_updateTitleStyle:function(){ +_b.toggle(this.header,"navToPanel",this._currentChild\n
                \n\t\t
                \n\t\t\t
                \n\t\t\t
                \n\t\t\t
                \n\t\t
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n
                \n"}}); +define("dojox/widget/_CalendarBase", [ + "dijit/_WidgetBase", + "dijit/_TemplatedMixin", + "dijit/_Container", + "dijit/_WidgetsInTemplateMixin", + "dijit/typematic", + "dojo/_base/declare", + "dojo/date", + "dojo/date/stamp", + "dojo/date/locale", + "dojo/dom-style", + "dojo/dom-class", + "dojo/_base/fx", + "dojo/on", + "dojo/_base/array", + "dojo/_base/lang", + "dojo/text!./Calendar/Calendar.html" +], function(_WidgetBase, _TemplatedMixin, _Container, _WidgetsInTemplateMixin, dijitTypematic, + declare, dojoDate, stamp, dojoDateLocale, domStyle, domClass, fx, on, array, lang, template){ + return declare("dojox.widget._CalendarBase", [_WidgetBase, _TemplatedMixin, _Container, _WidgetsInTemplateMixin], { + // summary: + // The Root class for all _Calendar extensions + + // templateString: String + // The template to be used to construct the widget. + templateString: template, + + // _views: Array + // The list of mixin views available on this calendar. + _views: null, + + // useFx: Boolean + // Specifies if visual effects should be applied to the widget. + // The default behavior of the widget does not contain any effects. + // The dojox.widget.CalendarFx package is needed for these. + useFx: true, + + // value: Date + // The currently selected Date + value: new Date(), + + constraints: null, + + // footerFormat: String + // The date format of the date displayed in the footer. Can be + // 'short', 'medium', and 'long' + footerFormat: "medium", + + constructor: function(){ + this._views = []; + this.value = new Date(); + }, + + _setConstraintsAttr: function(constraints){ + // summary: + // Sets minimum and maximum constraints + var c = this.constraints = constraints; + if(c){ + if(typeof c.min == "string"){ + c.min = stamp.fromISOString(c.min); + } + if(typeof c.max == "string"){ + c.max = stamp.fromISOString(c.max); + } + } + }, + + postMixInProperties: function () { + this.inherited(arguments); + this.value = this.parseInitialValue(this.value); + }, + + parseInitialValue: function(value){ + if (!value || value === -1){ + return new Date(); + }else if(value.getFullYear){ + return value; + }else if (!isNaN(value)) { + if (typeof this.value == "string") { + value = parseInt(value); + } + value = this._makeDate(value); + } + return value; + }, + + _makeDate: function(value){ + return value;//new Date(value); + }, + + postCreate: function(){ + // summary: + // Instantiates the mixin views + + this.displayMonth = new Date(this.get('value')); + + if(this._isInvalidDate(this.displayMonth)){ + this.displayMonth = new Date(); + } + + var mixin = { + parent: this, + _getValueAttr: lang.hitch(this, function(){return new Date(this._internalValue || this.value);}), + _getDisplayMonthAttr: lang.hitch(this, function(){return new Date(this.displayMonth);}), + _getConstraintsAttr: lang.hitch(this, function(){return this.constraints;}), + getLang: lang.hitch(this, function(){return this.lang;}), + isDisabledDate: lang.hitch(this, this.isDisabledDate), + getClassForDate: lang.hitch(this, this.getClassForDate), + addFx: this.useFx ? lang.hitch(this, this.addFx) : function(){} + }; + + //Add the mixed in views. + array.forEach(this._views, function(widgetType){ + var widget = new widgetType(mixin).placeAt(this); + + var header = widget.getHeader(); + if(header){ + //place the views's header node in the header of the main widget + this.header.appendChild(header); + + //hide the header node of the widget + domStyle.set(header, "display", "none"); + } + //Hide all views + domStyle.set(widget.domNode, "visibility", "hidden"); + + //Listen for the values in a view to be selected + widget.on("valueSelected", lang.hitch(this, "_onDateSelected")); + widget.set("value", this.get('value')); + }, this); + + if(this._views.length < 2){ + domStyle.set(this.header, "cursor", "auto"); + } + + this.inherited(arguments); + + // Cache the list of children widgets. + this._children = this.getChildren(); + + this._currentChild = 0; + + //Populate the footer with today's date. + var today = new Date(); + + this.footer.innerHTML = "Today: " + + dojoDateLocale.format(today, { + formatLength:this.footerFormat, + selector:'date', + locale:this.lang}); + + on(this.footer, "click", lang.hitch(this, "goToToday")); + + var first = this._children[0]; + + domStyle.set(first.domNode, "top", "0px"); + domStyle.set(first.domNode, "visibility", "visible"); + + var header = first.getHeader(); + if(header){ + domStyle.set(first.getHeader(), "display", ""); + } + + domClass.toggle(this.container, "no-header", !first.useHeader); + + first.onDisplay(); + + var _this = this; + + var typematic = function(nodeProp, dateProp, adj){ + dijitTypematic.addMouseListener(_this[nodeProp], _this, function(count){ + if(count >= 0){ _this._adjustDisplay(dateProp, adj);} + }, 0.8, 500); + }; + typematic("incrementMonth", "month", 1); + typematic("decrementMonth", "month", -1); + this._updateTitleStyle(); + }, + + addFx: function(query, fromNode){ + // Stub function than can be overridden to add effects. + }, + + _isInvalidDate: function(/*Date*/ value){ + // summary: + // Runs various tests on the value, checking for invalid conditions + // tags: + // private + return !value || isNaN(value) || typeof value != "object" || value.toString() == this._invalidDate; + }, + + _setValueAttr: function(/*Date*/ value){ + // summary: + // Set the current date and update the UI. If the date is disabled, the selection will + // not change, but the display will change to the corresponding month. + if(!value){ + value = new Date(); + } + if(!value["getFullYear"]){ + value = stamp.fromISOString(value + ""); + } + if(this._isInvalidDate(value)){ + return false; + } + if(!this.value || dojoDate.compare(value, this.value)){ + value = new Date(value); + this.displayMonth = new Date(value); + this._internalValue = value; + if(!this.isDisabledDate(value, this.lang) && this._currentChild == 0){ + this.value = value; + this.onChange(value); + } + if (this._children && this._children.length > 0) { + this._children[this._currentChild].set("value", this.value); + } + return true; + } + return false; + }, + + isDisabledDate: function(/*Date*/date, /*String?*/locale){ + // summary: + // May be overridden to disable certain dates in the calendar e.g. `isDisabledDate=dojo.date.locale.isWeekend` + var c = this.constraints; + var compare = dojoDate.compare; + return c && (c.min && (compare(c.min, date, "date") > 0) || + (c.max && compare(c.max, date, "date") < 0)); + }, + + onValueSelected: function(/*Date*/date){ + // summary: + // A date cell was selected. It may be the same as the previous value. + }, + + _onDateSelected: function(date, formattedValue, force){ + this.displayMonth = date; + + this.set("value", date); + //Only change the selected value if it was chosen from the + //first child. + if(!this._transitionVert(-1)){ + if(!formattedValue && formattedValue !== 0){ + formattedValue = this.get('value'); + } + this.onValueSelected(formattedValue); + } + + }, + + onChange: function(/*Date*/date){ + // summary: + // Called only when the selected date has changed + }, + + onHeaderClick: function(e){ + // summary: + // Transitions to the next view. + this._transitionVert(1); + }, + + goToToday: function(){ + this.set("value", new Date()); + this.onValueSelected(this.get('value')); + }, + + _transitionVert: function(/*Number*/direction){ + // summary: + // Animates the views to show one and hide another, in a + // vertical direction. + // If 'direction' is 1, then the views slide upwards. + // If 'direction' is -1, the views slide downwards. + var curWidget = this._children[this._currentChild]; + var nextWidget = this._children[this._currentChild + direction]; + if(!nextWidget){return false;} + + domStyle.set(nextWidget.domNode, "visibility", "visible"); + + var height = domStyle.get(this.containerNode, "height"); + nextWidget.set("value", this.displayMonth); + + if(curWidget.header){ + domStyle.set(curWidget.header, "display", "none"); + } + if(nextWidget.header){ + domStyle.set(nextWidget.header, "display", ""); + } + domStyle.set(nextWidget.domNode, "top", (height * -1) + "px"); + domStyle.set(nextWidget.domNode, "visibility", "visible"); + + this._currentChild += direction; + + var height1 = height * direction; + var height2 = 0; + domStyle.set(nextWidget.domNode, "top", (height1 * -1) + "px"); + + // summary: + // Slides two nodes vertically. + var anim1 = fx.animateProperty({ + node: curWidget.domNode, + properties: {top: height1}, + onEnd: function(){ + domStyle.set(curWidget.domNode, "visibility", "hidden"); + } + }); + var anim2 = fx.animateProperty({ + node: nextWidget.domNode, + properties: {top: height2}, + onEnd: function(){ + nextWidget.onDisplay(); + } + }); + + domClass.toggle(this.container, "no-header", !nextWidget.useHeader); + + anim1.play(); + anim2.play(); + curWidget.onBeforeUnDisplay(); + nextWidget.onBeforeDisplay(); + + this._updateTitleStyle(); + return true; + }, + + _updateTitleStyle: function(){ + domClass.toggle(this.header, "navToPanel", this._currentChild < this._children.length -1); + }, + + _slideTable: function(/*String*/widget, /*Number*/direction, /*Function*/callback){ + // summary: + // Animates the horizontal sliding of a table. + var table = widget.domNode; + + //Clone the existing table + var newTable = table.cloneNode(true); + var left = domStyle.get(table, "width"); + + table.parentNode.appendChild(newTable); + + //Place the existing node either to the left or the right of the new node, + //depending on which direction it is to slide. + domStyle.set(table, "left", (left * direction) + "px"); + + //Call the function that generally populates the new cloned node with new data. + //It may also attach event listeners. + callback(); + + //Animate the two nodes. + var anim1 = fx.animateProperty({node: newTable, properties:{left: left * direction * -1}, duration: 500, onEnd: function(){ + newTable.parentNode.removeChild(newTable); + }}); + var anim2 = fx.animateProperty({node: table, properties:{left: 0}, duration: 500}); + + anim1.play(); + anim2.play(); + }, + + _addView: function(view){ + //Insert the view at the start of the array. + this._views.push(view); + }, + + getClassForDate: function(/*Date*/dateObject, /*String?*/locale){ + // summary: + // May be overridden to return CSS classes to associate with the date entry for the given dateObject, + // for example to indicate a holiday in specified locale. + + /*===== + return ""; // String + =====*/ + }, + + _adjustDisplay: function(/*String*/part, /*int*/amount, noSlide){ + // summary: + // This function overrides the base function defined in dijit/Calendar. + // It changes the displayed years, months and days depending on the inputs. + var child = this._children[this._currentChild]; + + var month = this.displayMonth = child.adjustDate(this.displayMonth, amount); + + this._slideTable(child, amount, function(){ + child.set("value", month); + }); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDay.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDay.js new file mode 100644 index 00000000..8c39a462 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDay.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/widget/_CalendarDay",["dojo/_base/declare","./_CalendarDayView"],function(_1,_2){ +return _1("dojox.widget._CalendarDay",null,{parent:null,constructor:function(){ +this._addView(_2); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDay.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDay.js.uncompressed.js new file mode 100644 index 00000000..b83ecf18 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDay.js.uncompressed.js @@ -0,0 +1,15 @@ +define("dojox/widget/_CalendarDay", [ + "dojo/_base/declare", + "./_CalendarDayView" +], function(declare, _CalendarDayView){ + return declare("dojox.widget._CalendarDay", null, { + // summary: + // Mixin for the dojox.widget.Calendar which provides + // the standard day-view. A single month is shown at a time. + parent: null, + + constructor: function(){ + this._addView(_CalendarDayView); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDayView.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDayView.js new file mode 100644 index 00000000..509e75db --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDayView.js @@ -0,0 +1,106 @@ +//>>built +require({cache:{"url:dojox/widget/Calendar/CalendarDay.html":"
                \n\t
                \n\t\t
                \n\t\t\t\n\t\t\t,\n\t\t\t\n\t\t
                \n\t
                \n\t
              • \n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t
                \n\t\t\t\t\t
                \n\t\t\t\t
                \n
                \n"}}); +define("dojox/widget/_CalendarDayView",["dojo/_base/declare","./_CalendarView","dijit/_TemplatedMixin","dojo/query","dojo/dom-class","dojo/_base/event","dojo/date","dojo/date/locale","dojo/text!./Calendar/CalendarDay.html","dojo/cldr/supplemental","dojo/NodeList-dom"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a){ +return _1("dojox.widget._CalendarDayView",[_2,_3],{templateString:_9,datePart:"month",dayWidth:"narrow",postCreate:function(){ +this.cloneClass(".dijitCalendarDayLabelTemplate",6); +this.cloneClass(".dijitCalendarDateTemplate",6); +this.cloneClass(".dijitCalendarWeekTemplate",5); +var _b=_8.getNames("days",this.dayWidth,"standAlone",this.getLang()); +var _c=_a.getFirstDayOfWeek(this.getLang()); +_4(".dijitCalendarDayLabel",this.domNode).forEach(function(_d,i){ +this._setText(_d,_b[(i+_c)%7]); +},this); +},onDisplay:function(){ +if(!this._addedFx){ +this._addedFx=true; +this.addFx(".dijitCalendarDateTemplate div",this.domNode); +} +},_onDayClick:function(e){ +if(typeof (e.target._date)=="undefined"){ +return; +} +var _e=new Date(this.get("displayMonth")); +var p=e.target.parentNode; +var c="dijitCalendar"; +var d=_5.contains(p,c+"PreviousMonth")?-1:(_5.contains(p,c+"NextMonth")?1:0); +if(d){ +_e=_7.add(_e,"month",d); +} +_e.setDate(e.target._date); +if(this.isDisabledDate(_e)){ +_6.stop(e); +return; +} +this.parent._onDateSelected(_e); +},_setValueAttr:function(_f){ +this._populateDays(); +},_populateDays:function(){ +var _10=new Date(this.get("displayMonth")); +_10.setDate(1); +var _11=_10.getDay(); +var _12=_7.getDaysInMonth(_10); +var _13=_7.getDaysInMonth(_7.add(_10,"month",-1)); +var _14=new Date(); +var _15=this.get("value"); +var _16=_a.getFirstDayOfWeek(this.getLang()); +if(_16>_11){ +_16-=7; +} +var _17=_7.compare; +var _18=".dijitCalendarDateTemplate"; +var _19="dijitCalendarSelectedDate"; +var _1a=this._lastDate; +var _1b=_1a==null||_1a.getMonth()!=_10.getMonth()||_1a.getFullYear()!=_10.getFullYear(); +this._lastDate=_10; +if(!_1b){ +_4(_18,this.domNode).removeClass(_19).filter(function(_1c){ +return _1c.className.indexOf("dijitCalendarCurrent")>-1&&_1c._date==_15.getDate(); +}).addClass(_19); +return; +} +_4(_18,this.domNode).forEach(function(_1d,i){ +i+=_16; +var _1e=new Date(_10); +var _1f,_20="dijitCalendar",adj=0; +if(i<_11){ +_1f=_13-_11+i+1; +adj=-1; +_20+="Previous"; +}else{ +if(i>=(_11+_12)){ +_1f=i-_11-_12+1; +adj=1; +_20+="Next"; +}else{ +_1f=i-_11+1; +_20+="Current"; +} +} +if(adj){ +_1e=_7.add(_1e,"month",adj); +} +_1e.setDate(_1f); +if(!_17(_1e,_14,"date")){ +_20="dijitCalendarCurrentDate "+_20; +} +if(!_17(_1e,_15,"date")&&!_17(_1e,_15,"month")&&!_17(_1e,_15,"year")){ +_20=_19+" "+_20; +} +if(this.isDisabledDate(_1e,this.getLang())){ +_20=" dijitCalendarDisabledDate "+_20; +} +var _21=this.getClassForDate(_1e,this.getLang()); +if(_21){ +_20=_21+" "+_20; +} +_1d.className=_20+"Month dijitCalendarDateTemplate"; +_1d.dijitDateValue=_1e.valueOf(); +var _22=_4(".dijitCalendarDateLabel",_1d)[0]; +this._setText(_22,_1e.getDate()); +_22._date=_22.parentNode._date=_1e.getDate(); +},this); +var _23=_8.getNames("months","wide","standAlone",this.getLang()); +this._setText(this.monthLabelNode,_23[_10.getMonth()]); +this._setText(this.yearLabelNode,_10.getFullYear()); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDayView.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDayView.js.uncompressed.js new file mode 100644 index 00000000..9ead3489 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarDayView.js.uncompressed.js @@ -0,0 +1,190 @@ +require({cache:{ +'url:dojox/widget/Calendar/CalendarDay.html':"
                \n\t
                \n\t\t
                \n\t\t\t\n\t\t\t,\n\t\t\t\n\t\t
                \n\t
                \n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t
                \n\t\t\t\t\t
                \n\t\t\t\t
                \n
                \n"}}); +define("dojox/widget/_CalendarDayView", [ + "dojo/_base/declare", + "./_CalendarView", + "dijit/_TemplatedMixin", + "dojo/query", + "dojo/dom-class", + "dojo/_base/event", + "dojo/date", + "dojo/date/locale", + "dojo/text!./Calendar/CalendarDay.html", + "dojo/cldr/supplemental", + "dojo/NodeList-dom" +], function(declare, _CalendarView, _TemplatedMixin, query, domClass, event, date, locale, template, supplemental){ + return declare("dojox.widget._CalendarDayView", [_CalendarView, _TemplatedMixin], { + // summary: + // View class for the dojox/widget/Calendar. + // Adds a view showing every day of a single month to the calendar. + // This should not be mixed in directly with dojox/widget._CalendarBase. + // Instead, use dojox/widget._CalendarDay + + // templateString: String + // The template to be used to construct the widget. + templateString: template, + + // datePart: String + // Specifies how much to increment the displayed date when the user + // clicks the array button to increment of decrement the view. + datePart: "month", + + // dayWidth: String + // Specifies the type of day name to display. "narrow" causes just one letter to be shown. + dayWidth: "narrow", + + postCreate: function(){ + // summary: + // Constructs the calendar view. + this.cloneClass(".dijitCalendarDayLabelTemplate", 6); + this.cloneClass(".dijitCalendarDateTemplate", 6); + + // now make 6 week rows + this.cloneClass(".dijitCalendarWeekTemplate", 5); + + // insert localized day names in the header + var dayNames = locale.getNames('days', this.dayWidth, 'standAlone', this.getLang()); + var dayOffset = supplemental.getFirstDayOfWeek(this.getLang()); + + // Set the text of the day labels. + query(".dijitCalendarDayLabel", this.domNode).forEach(function(label, i){ + this._setText(label, dayNames[(i + dayOffset) % 7]); + }, this); + }, + + onDisplay: function(){ + if(!this._addedFx){ + // Add visual effects to the view, if any has been specified. + this._addedFx = true; + this.addFx(".dijitCalendarDateTemplate div", this.domNode); + } + }, + + // TODO: This method needs serious work + _onDayClick: function(/*Event*/ e){ + // summary: + // Executed when a day value is clicked. + + // If the user somehow clicked the TR, rather than a + // cell, ignore it. + if(typeof(e.target._date) == "undefined"){return;} + + var displayMonth = new Date(this.get("displayMonth")); + + var p = e.target.parentNode; + var c = "dijitCalendar"; + var d = domClass.contains(p, c + "PreviousMonth") ? -1 : + (domClass.contains(p, c + "NextMonth") ? 1 : 0); + if(d){displayMonth = date.add(displayMonth, "month", d);} + displayMonth.setDate(e.target._date); + + // If the day is disabled, ignore it + if(this.isDisabledDate(displayMonth)){ + event.stop(e); + return; + } + this.parent._onDateSelected(displayMonth); + }, + + _setValueAttr: function(value){ + //Change the day values + this._populateDays(); + }, + + _populateDays: function(){ + // summary: + // Fills the days of the current month. + + var currentDate = new Date(this.get("displayMonth")); + currentDate.setDate(1); + var firstDay = currentDate.getDay(); + var daysInMonth = date.getDaysInMonth(currentDate); + var daysInPreviousMonth = date.getDaysInMonth(date.add(currentDate, "month", -1)); + var today = new Date(); + var selected = this.get('value'); + + var dayOffset = supplemental.getFirstDayOfWeek(this.getLang()); + if(dayOffset > firstDay){ dayOffset -= 7; } + + var compareDate = date.compare; + var templateCls = ".dijitCalendarDateTemplate"; + var selectedCls = "dijitCalendarSelectedDate"; + + var oldDate = this._lastDate; + var redrawRequired = oldDate == null + || oldDate.getMonth() != currentDate.getMonth() + || oldDate.getFullYear() != currentDate.getFullYear(); + this._lastDate = currentDate; + + // If still showing the same month, it's much faster to not redraw, + // and just change the selected date. + if(!redrawRequired){ + query(templateCls, this.domNode) + .removeClass(selectedCls) + .filter(function(node){ + return node.className.indexOf("dijitCalendarCurrent") > -1 + && node._date == selected.getDate(); + }) + .addClass(selectedCls); + return; + } + + // Iterate through dates in the calendar and fill in date numbers and style info + query(templateCls, this.domNode).forEach(function(template, i){ + i += dayOffset; + var eachDate = new Date(currentDate); + var number, clazz = "dijitCalendar", adj = 0; + + if(i < firstDay){ + number = daysInPreviousMonth - firstDay + i + 1; + adj = -1; + clazz += "Previous"; + }else if(i >= (firstDay + daysInMonth)){ + number = i - firstDay - daysInMonth + 1; + adj = 1; + clazz += "Next"; + }else{ + number = i - firstDay + 1; + clazz += "Current"; + } + + if(adj){ + eachDate = date.add(eachDate, "month", adj); + } + eachDate.setDate(number); + + if(!compareDate(eachDate, today, "date")){ + clazz = "dijitCalendarCurrentDate " + clazz; + } + + if(!compareDate(eachDate, selected, "date") + && !compareDate(eachDate, selected, "month") + && !compareDate(eachDate, selected, "year") ){ + clazz = selectedCls + " " + clazz; + } + + if(this.isDisabledDate(eachDate, this.getLang())){ + clazz = " dijitCalendarDisabledDate " + clazz; + } + + var clazz2 = this.getClassForDate(eachDate, this.getLang()); + if(clazz2){ + clazz = clazz2 + " " + clazz; + } + + template.className = clazz + "Month dijitCalendarDateTemplate"; + template.dijitDateValue = eachDate.valueOf(); + var label = query(".dijitCalendarDateLabel", template)[0]; + + this._setText(label, eachDate.getDate()); + + label._date = label.parentNode._date = eachDate.getDate(); + }, this); + + // Fill in localized month name + var monthNames = locale.getNames('months', 'wide', 'standAlone', this.getLang()); + this._setText(this.monthLabelNode, monthNames[currentDate.getMonth()]); + this._setText(this.yearLabelNode, currentDate.getFullYear()); + } + }); +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonth.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonth.js new file mode 100644 index 00000000..c9c2dc46 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonth.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/widget/_CalendarMonth",["dojo/_base/declare","./_CalendarMonthView"],function(_1,_2){ +return _1("dojox.widget._CalendarMonth",null,{constructor:function(){ +this._addView(_2); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonth.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonth.js.uncompressed.js new file mode 100644 index 00000000..08ea33bd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonth.js.uncompressed.js @@ -0,0 +1,16 @@ +define("dojox/widget/_CalendarMonth", [ + "dojo/_base/declare", + "./_CalendarMonthView" +], function(declare, _CalendarMonthView){ + return declare("dojox.widget._CalendarMonth", null, { + // summary: + // Mixin class for adding a view listing all 12 months of the year to the + // dojox/widget/_CalendarBase + + constructor: function(){ + // summary: + // Adds a dojox/widget/_CalendarMonthView view to the calendar widget. + this._addView(_CalendarMonthView); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthView.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthView.js new file mode 100644 index 00000000..8e70ad8e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthView.js @@ -0,0 +1,26 @@ +//>>built +require({cache:{"url:dojox/widget/Calendar/CalendarMonth.html":"
                \n \n \n \n \n \n \n
                \n
                \n
                \n
                \n"}}); +define("dojox/widget/_CalendarMonthView",["dojo/_base/declare","./_CalendarView","dijit/_TemplatedMixin","./_CalendarMonthYearView","dojo/dom-class","dojo/_base/event","dojo/text!./Calendar/CalendarMonth.html"],function(_1,_2,_3,_4,_5,_6,_7){ +return _1("dojox.widget._CalendarMonthView",[_2,_3],{templateString:_7,datePart:"year",headerClass:"dojoxCalendarMonthHeader",displayedYear:"",postCreate:function(){ +this.cloneClass(".dojoxCalendarMonthTemplate",3); +this.cloneClass(".dojoxCalendarMonthGroupTemplate",2); +this._populateMonths(); +this.addFx(".dojoxCalendarMonthLabel",this.domNode); +},_setValueAttr:function(_8){ +var _9=this.header.innerHTML=_8.getFullYear(); +this.set("displayedYear",_9); +this._populateMonths(); +},_getMonthNames:_4.prototype._getMonthNames,_populateMonths:_4.prototype._populateMonths,onClick:function(_a){ +if(!_5.contains(_a.target,"dojoxCalendarMonthLabel")){ +_6.stop(_a); +return; +} +var _b=_a.target.parentNode; +var _c=_b.cellIndex+(_b.parentNode.rowIndex*4); +var _d=this.get("value"); +_d.setMonth(_c); +_d.setMonth(_c); +_d.setYear(this.displayedYear); +this.onValueSelected(_d,_c); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthView.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthView.js.uncompressed.js new file mode 100644 index 00000000..0512545b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthView.js.uncompressed.js @@ -0,0 +1,71 @@ +require({cache:{ +'url:dojox/widget/Calendar/CalendarMonth.html':"
                \n \n \n \n \n \n \n
                \n
                \n
                \n
                \n"}}); +define("dojox/widget/_CalendarMonthView", [ + "dojo/_base/declare", + "./_CalendarView", + "dijit/_TemplatedMixin", + "./_CalendarMonthYearView", + "dojo/dom-class", + "dojo/_base/event", + "dojo/text!./Calendar/CalendarMonth.html" +], function(declare, _CalendarView, _TemplatedMixin, _CalendarMonthYearView, domClass, event, template){ + return declare("dojox.widget._CalendarMonthView", [_CalendarView, _TemplatedMixin], { + // summary: + // A Calendar view listing the 12 months of the year + + // templateString: String + // The template to be used to construct the widget. + templateString: template, + + // datePart: String + // Specifies how much to increment the displayed date when the user + // clicks the array button to increment of decrement the view. + datePart: "year", + + // headerClass: String + // Specifies the CSS class to apply to the header node for this view. + headerClass: "dojoxCalendarMonthHeader", + + // displayedYear: String + // The current year being displayed + displayedYear: "", + + postCreate: function(){ + // summary: + // Constructs the view + this.cloneClass(".dojoxCalendarMonthTemplate", 3); + this.cloneClass(".dojoxCalendarMonthGroupTemplate", 2); + this._populateMonths(); + + // Add visual effects to the view, if any have been mixed in + this.addFx(".dojoxCalendarMonthLabel", this.domNode); + }, + + _setValueAttr: function(value){ + var year = this.header.innerHTML = value.getFullYear(); + // We should be keeping this info around, might as well expose it too. + // Added while patching http://bugs.dojotoolkit.org/ticket/15520 + this.set("displayedYear", year); + this._populateMonths(); + }, + + _getMonthNames: _CalendarMonthYearView.prototype._getMonthNames, + + _populateMonths: _CalendarMonthYearView.prototype._populateMonths, + + onClick: function(evt){ + // summary: + // Handles clicks on month names + if(!domClass.contains(evt.target, "dojoxCalendarMonthLabel")){event.stop(evt); return;} + var parentNode = evt.target.parentNode; + var month = parentNode.cellIndex + (parentNode.parentNode.rowIndex * 4); + var date = this.get("value"); + // Seeing a really strange bug in FF3.6 where this has to be called twice + // in order to take affect + date.setMonth(month); + date.setMonth(month); + date.setYear(this.displayedYear); + this.onValueSelected(date, month); + } + }); +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYear.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYear.js new file mode 100644 index 00000000..38f7fbc8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYear.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/widget/_CalendarMonthYear",["dojo/_base/declare","./_CalendarMonthYearView"],function(_1,_2){ +return _1("dojox.widget._CalendarMonthYear",null,{constructor:function(){ +this._addView(_2); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYear.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYear.js.uncompressed.js new file mode 100644 index 00000000..671b84b0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYear.js.uncompressed.js @@ -0,0 +1,16 @@ +define("dojox/widget/_CalendarMonthYear", [ + "dojo/_base/declare", + "./_CalendarMonthYearView" +], function(declare, _CalendarMonthYearView){ + return declare("dojox.widget._CalendarMonthYear", null, { + // summary: + // Mixin class for adding a view listing all 12 + // months of the year to the dojox/widget/_CalendarBase + + constructor: function(){ + // summary: + // Adds a dojox/widget/_CalendarMonthView view to the calendar widget. + this._addView(_CalendarMonthYearView); + } + }); +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYearView.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYearView.js new file mode 100644 index 00000000..d265aba6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYearView.js @@ -0,0 +1,188 @@ +//>>built +require({cache:{"url:dojox/widget/Calendar/CalendarMonthYear.html":"
                \n\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t \t \n\t\t\t\t\t\t \n\t\t\t\t\n\t\t
                \n\t\t\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t \t\t \n\t\t\t\t\t\t \t \t \t OK\n\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t \t \t\t Cancel\n\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t \t
                \n
                \n"}}); +define("dojox/widget/_CalendarMonthYearView",["dojo/_base/declare","./_CalendarView","dijit/_TemplatedMixin","dojo/query","dojo/dom-class","dojo/_base/connect","dojo/_base/event","dojo/_base/lang","dojo/date/locale","dojo/text!./Calendar/CalendarMonthYear.html"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a){ +return _1("dojox.widget._CalendarMonthYearView",[_2,_3],{templateString:_a,datePart:"year",displayedYears:10,useHeader:false,postCreate:function(){ +this.cloneClass(".dojoxCal-MY-G-Template",5,".dojoxCal-MY-btns"); +this.monthContainer=this.yearContainer=this.myContainer; +var _b="dojoxCalendarYearLabel"; +var _c="dojoxCalendarDecrease"; +var _d="dojoxCalendarIncrease"; +_4("."+_b,this.myContainer).forEach(function(_e,_f){ +var _10=_d; +switch(_f){ +case 0: +_10=_c; +case 1: +_5.remove(_e,_b); +_5.add(_e,_10); +break; +} +}); +this._decBtn=_4("."+_c,this.myContainer)[0]; +this._incBtn=_4("."+_d,this.myContainer)[0]; +_4(".dojoxCal-MY-M-Template",this.domNode).filter(function(_11){ +return _11.cellIndex==1; +}).addClass("dojoxCal-MY-M-last"); +_6.connect(this,"onBeforeDisplay",_8.hitch(this,function(){ +this._cachedDate=new Date(this.get("value").getTime()); +this._populateYears(this._cachedDate.getFullYear()); +this._populateMonths(); +this._updateSelectedMonth(); +this._updateSelectedYear(); +})); +_6.connect(this,"_populateYears",_8.hitch(this,function(){ +this._updateSelectedYear(); +})); +_6.connect(this,"_populateMonths",_8.hitch(this,function(){ +this._updateSelectedMonth(); +})); +this._cachedDate=this.get("value"); +this._populateYears(); +this._populateMonths(); +this.addFx(".dojoxCalendarMonthLabel,.dojoxCalendarYearLabel ",this.myContainer); +},_setValueAttr:function(_12){ +if(_12&&_12.getFullYear()){ +this._populateYears(_12.getFullYear()); +} +},getHeader:function(){ +return null; +},_getMonthNames:function(_13){ +this._monthNames=this._monthNames||_9.getNames("months",_13,"standAlone",this.getLang()); +return this._monthNames; +},_populateMonths:function(){ +var _14,_15=this._getMonthNames("abbr"),_16=this.get("value").getFullYear(),_17=_15[this.get("value").getMonth()],_18=this.get("displayedYear"); +_4(".dojoxCalendarMonthLabel",this.monthContainer).forEach(_8.hitch(this,function(_19,cnt){ +this._setText(_19,_15[cnt]); +_14=((_17===_15[cnt])&&(_16===_18)); +_5.toggle(_19.parentNode,["dijitCalendarSelectedDate","dijitCalendarCurrentDate"],_14); +})); +var _1a=this.get("constraints"); +if(_1a){ +var _1b=new Date(); +_1b.setFullYear(this._year); +var min=-1,max=12; +if(_1a.min){ +var _1c=_1a.min.getFullYear(); +if(_1c>this._year){ +min=12; +}else{ +if(_1c==this._year){ +min=_1a.min.getMonth(); +} +} +} +if(_1a.max){ +var _1d=_1a.max.getFullYear(); +if(_1dmax)?"add":"remove"](_1e,"dijitCalendarDisabledDate"); +})); +} +},_populateYears:function(_1f){ +var _20,_21=this.get("constraints"),_22=this.get("value").getFullYear(),_23=_1f||_22,_24=_23-Math.floor(this.displayedYears/2),min=_21&&_21.min?_21.min.getFullYear():_24-10000; +this._displayedYear=_23; +var _25=_4(".dojoxCalendarYearLabel",this.yearContainer); +var max=_21&&_21.max?_21.max.getFullYear()-_24:_25.length; +var _26="dijitCalendarDisabledDate"; +var _27; +_25.forEach(_8.hitch(this,function(_28,cnt){ +if(cnt<=max){ +this._setText(_28,_24+cnt); +} +_27=(_24+cnt)==_22; +_5.toggle(_28.parentNode,["dijitCalendarSelectedDate","dijitCalendarCurrentDate"],_27); +_5.toggle(_28,_26,cnt>max); +_20=(_24+cnt)==_22; +_5.toggle(_28.parentNode,["dijitCalendarSelectedDate","dijitCalendarCurrentDate"],_20); +})); +if(this._incBtn){ +_5.toggle(this._incBtn,_26,max<_25.length); +} +if(this._decBtn){ +_5.toggle(this._decBtn,_26,min>=_24); +} +var h=this.getHeader(); +if(h){ +this._setText(this.getHeader(),_24+" - "+(_24+11)); +} +},_updateSelectedYear:function(){ +this._year=String((this._cachedDate||this.get("value")).getFullYear()); +this._updateSelectedNode(".dojoxCalendarYearLabel",_8.hitch(this,function(_29){ +return this._year!==null&&_29.innerHTML==this._year; +})); +},_updateSelectedMonth:function(){ +var _2a=(this._cachedDate||this.get("value")).getMonth(); +this._month=_2a; +this._updateSelectedNode(".dojoxCalendarMonthLabel",function(_2b,idx){ +return idx==_2a; +}); +},_updateSelectedNode:function(_2c,_2d){ +var sel="dijitCalendarSelectedDate"; +_4(_2c,this.domNode).forEach(function(_2e,idx,_2f){ +_5.toggle(_2e.parentNode,sel,_2d(_2e,idx,_2f)); +}); +var _30=_4(".dojoxCal-MY-M-Template div",this.myContainer).filter(function(_31){ +return _5.contains(_31.parentNode,sel); +})[0]; +if(!_30){ +return; +} +var _32=_5.contains(_30,"dijitCalendarDisabledDate"); +_5.toggle(this.okBtn,"dijitDisabled",_32); +},onClick:function(evt){ +var _33; +function hc(c){ +return _5.contains(evt.target,c); +}; +if(hc("dijitCalendarDisabledDate")){ +_7.stop(evt); +return false; +} +if(hc("dojoxCalendarMonthLabel")){ +_33="dojoxCal-MY-M-Template"; +this._month=evt.target.parentNode.cellIndex+(evt.target.parentNode.parentNode.rowIndex*2); +this._cachedDate.setMonth(this._month); +this._updateSelectedMonth(); +}else{ +if(hc("dojoxCalendarYearLabel")){ +_33="dojoxCal-MY-Y-Template"; +this._year=Number(evt.target.innerHTML); +this._cachedDate.setYear(this._year); +this._populateMonths(); +this._updateSelectedYear(); +}else{ +if(hc("dojoxCalendarDecrease")){ +this._populateYears(this._displayedYear-10); +return true; +}else{ +if(hc("dojoxCalendarIncrease")){ +this._populateYears(this._displayedYear+10); +return true; +}else{ +return true; +} +} +} +} +_7.stop(evt); +return false; +},onOk:function(evt){ +_7.stop(evt); +if(_5.contains(this.okBtn,"dijitDisabled")){ +return false; +} +this.onValueSelected(this._cachedDate); +return false; +},onCancel:function(evt){ +_7.stop(evt); +this.onValueSelected(this.get("value")); +return false; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYearView.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYearView.js.uncompressed.js new file mode 100644 index 00000000..742e97ef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarMonthYearView.js.uncompressed.js @@ -0,0 +1,279 @@ +require({cache:{ +'url:dojox/widget/Calendar/CalendarMonthYear.html':"
                \n\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t \n\t\t\t\t\t\t \n\t\t\t\t\t\t \t \n\t\t\t\t\t\t \n\t\t\t\t\n\t\t
                \n\t\t\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t\t\t
                \n\t\t\t\t\t\t \t\t \n\t\t\t\t\t\t \t \t \t OK\n\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t \t \t\t Cancel\n\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t \t
                \n
                \n"}}); +define("dojox/widget/_CalendarMonthYearView", [ + "dojo/_base/declare", + "./_CalendarView", + "dijit/_TemplatedMixin", + "dojo/query", + "dojo/dom-class", + "dojo/_base/connect", + "dojo/_base/event", + "dojo/_base/lang", + "dojo/date/locale", + "dojo/text!./Calendar/CalendarMonthYear.html" +], function(declare, _CalendarView, _TemplatedMixin, query, domClass, connect, event, lang, dojoDateLocale, template){ + return declare("dojox.widget._CalendarMonthYearView", [_CalendarView, _TemplatedMixin], { + + // summary: + // A Calendar view listing the 12 months of the year + + // templateString: String + // The template to be used to construct the widget. + templateString: template, + + // datePart: String + // Specifies how much to increment the displayed date when the user + // clicks the array button to increment of decrement the view. + datePart: "year", + + // displayedYears: Number + // The number of years to display at once. + displayedYears: 10, + + useHeader: false, + + postCreate: function(){ + this.cloneClass(".dojoxCal-MY-G-Template", 5, ".dojoxCal-MY-btns"); + this.monthContainer = this.yearContainer = this.myContainer; + + var yClass = "dojoxCalendarYearLabel"; + var dClass = "dojoxCalendarDecrease"; + var iClass = "dojoxCalendarIncrease"; + + query("." + yClass, this.myContainer).forEach(function(node, idx){ + var clazz = iClass; + switch(idx){ + case 0: + clazz = dClass; + case 1: + domClass.remove(node, yClass); + domClass.add(node, clazz); + break; + } + }); + // Get the year increment and decrement buttons. + this._decBtn = query('.' + dClass, this.myContainer)[0]; + this._incBtn = query('.' + iClass, this.myContainer)[0]; + + query(".dojoxCal-MY-M-Template", this.domNode) + .filter(function(item){ + return item.cellIndex == 1; + }) + .addClass("dojoxCal-MY-M-last"); + + connect.connect(this, "onBeforeDisplay", lang.hitch(this, function(){ + this._cachedDate = new Date(this.get("value").getTime()); + this._populateYears(this._cachedDate.getFullYear()); + this._populateMonths(); + this._updateSelectedMonth(); + this._updateSelectedYear(); + })); + + connect.connect(this, "_populateYears", lang.hitch(this, function(){ + this._updateSelectedYear(); + })); + connect.connect(this, "_populateMonths", lang.hitch(this, function(){ + this._updateSelectedMonth(); + })); + + this._cachedDate = this.get("value"); + + this._populateYears(); + this._populateMonths(); + + // Add visual effects to the view, if any have been mixed in + this.addFx(".dojoxCalendarMonthLabel,.dojoxCalendarYearLabel ", this.myContainer); + }, + + _setValueAttr: function(value){ + if (value && value.getFullYear()) { + this._populateYears(value.getFullYear()); + } + }, + + getHeader: function(){ + return null; + }, + + _getMonthNames: function(format){ + // summary: + // Returns localized month names + this._monthNames = this._monthNames || dojoDateLocale.getNames('months', format, 'standAlone', this.getLang()); + return this._monthNames; + }, + + _populateMonths: function(){ + // summary: + // Populate the month names using the localized values. + var match, + monthNames = this._getMonthNames('abbr'), + currYear = this.get("value").getFullYear(), + currMonth = monthNames[this.get("value").getMonth()], + displayedYear = this.get("displayedYear"); + + query(".dojoxCalendarMonthLabel", this.monthContainer).forEach(lang.hitch(this, function(node, cnt){ + this._setText(node, monthNames[cnt]); + match = ((currMonth === monthNames[cnt]) && (currYear === displayedYear)); + // If this month in this year, style it accordingly. + // Don't use dojox/date stuff, we don't need it here + // http://bugs.dojotoolkit.org/ticket/15520 + domClass.toggle(node.parentNode, ["dijitCalendarSelectedDate", "dijitCalendarCurrentDate"], match); + })); + var constraints = this.get('constraints'); + + if(constraints){ + var date = new Date(); + date.setFullYear(this._year); + var min = -1, max = 12; + if(constraints.min){ + var minY = constraints.min.getFullYear(); + if(minY > this._year){ + min = 12; + }else if(minY == this._year){ + min = constraints.min.getMonth(); + } + } + if(constraints.max){ + var maxY = constraints.max.getFullYear(); + if(maxY < this._year){ + max = -1; + }else if(maxY == this._year){ + max = constraints.max.getMonth(); + } + } + + query(".dojoxCalendarMonthLabel", this.monthContainer) + .forEach(lang.hitch(this, function(node, cnt){ + domClass[(cnt < min || cnt > max) ? "add" : "remove"] + (node, 'dijitCalendarDisabledDate'); + })); + } + }, + + _populateYears: function(year){ + // summary: + // Fills the list of years with a range of 12 numbers, with the current year + // being the 6th number. + + var match, + constraints = this.get('constraints'), + thisYear = this.get("value").getFullYear(), + dispYear = year || thisYear, + firstYear = dispYear - Math.floor(this.displayedYears/2), + min = constraints && constraints.min ? constraints.min.getFullYear() : firstYear -10000; + + this._displayedYear = dispYear; + + var yearLabels = query(".dojoxCalendarYearLabel", this.yearContainer); + + var max = constraints && constraints.max ? constraints.max.getFullYear() - firstYear : yearLabels.length; + var disabledClass = 'dijitCalendarDisabledDate'; + var today; + yearLabels.forEach(lang.hitch(this, function(node, cnt){ + if(cnt <= max){ + this._setText(node, firstYear + cnt); + } + today = (firstYear+cnt) == thisYear; + domClass.toggle(node.parentNode, ["dijitCalendarSelectedDate", "dijitCalendarCurrentDate"], today); + domClass.toggle(node, disabledClass, cnt > max); + match = (firstYear+cnt) == thisYear; + domClass.toggle(node.parentNode, ["dijitCalendarSelectedDate", "dijitCalendarCurrentDate"], match); + })); + + if(this._incBtn){ + domClass.toggle(this._incBtn, disabledClass, max < yearLabels.length); + } + if(this._decBtn){ + domClass.toggle(this._decBtn, disabledClass, min >= firstYear); + } + + var h = this.getHeader(); + if(h){ + this._setText(this.getHeader(), firstYear + " - " + (firstYear + 11)); + } + }, + + _updateSelectedYear: function(){ + this._year = String((this._cachedDate || this.get("value")).getFullYear()); + this._updateSelectedNode(".dojoxCalendarYearLabel", lang.hitch(this, function(node){ + return this._year !== null && node.innerHTML == this._year; + })); + }, + + _updateSelectedMonth: function(){ + var month = (this._cachedDate || this.get("value")).getMonth(); + this._month = month; + this._updateSelectedNode(".dojoxCalendarMonthLabel", function(node, idx){ + return idx == month; + }); + }, + + _updateSelectedNode: function(queryNode, filter){ + var sel = "dijitCalendarSelectedDate"; + query(queryNode, this.domNode) + .forEach(function(node, idx, array){ + domClass.toggle(node.parentNode, sel, filter(node, idx, array)); + }); + var selMonth = query('.dojoxCal-MY-M-Template div', this.myContainer) + .filter(function(node){ + return domClass.contains(node.parentNode, sel); + })[0]; + if(!selMonth){return;} + var disabled = domClass.contains(selMonth, 'dijitCalendarDisabledDate'); + + domClass.toggle(this.okBtn, "dijitDisabled", disabled); + }, + + onClick: function(evt){ + // summary: + // Handles clicks on month names + var clazz; + function hc(c){ + return domClass.contains(evt.target, c); + } + + if(hc('dijitCalendarDisabledDate')){ + event.stop(evt); + return false; + } + + if(hc("dojoxCalendarMonthLabel")){ + clazz = "dojoxCal-MY-M-Template"; + this._month = evt.target.parentNode.cellIndex + (evt.target.parentNode.parentNode.rowIndex * 2); + this._cachedDate.setMonth(this._month); + this._updateSelectedMonth(); + }else if(hc( "dojoxCalendarYearLabel")){ + clazz = "dojoxCal-MY-Y-Template"; + this._year = Number(evt.target.innerHTML); + this._cachedDate.setYear(this._year); + this._populateMonths(); + this._updateSelectedYear(); + }else if(hc("dojoxCalendarDecrease")){ + this._populateYears(this._displayedYear - 10); + return true; + }else if(hc("dojoxCalendarIncrease")){ + this._populateYears(this._displayedYear + 10); + return true; + }else{ + return true; + } + event.stop(evt); + return false; + }, + + onOk: function(evt){ + event.stop(evt); + if(domClass.contains(this.okBtn, "dijitDisabled")){ + return false; + } + this.onValueSelected(this._cachedDate); + return false; + }, + + onCancel: function(evt){ + event.stop(evt); + this.onValueSelected(this.get("value")); + return false; + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarView.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarView.js new file mode 100644 index 00000000..03dadd40 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarView.js @@ -0,0 +1,30 @@ +//>>built +define("dojox/widget/_CalendarView",["dojo/_base/declare","dijit/_WidgetBase","dojo/dom-construct","dojo/query","dojo/date","dojo/_base/window"],function(_1,_2,_3,_4,_5,_6){ +return _1("dojox.widget._CalendarView",_2,{headerClass:"",useHeader:true,cloneClass:function(_7,n,_8){ +var _9=_4(_7,this.domNode)[0]; +var i; +if(!_8){ +for(i=0;i>built +define("dojox/widget/_CalendarYear",["dojo/_base/declare","./_CalendarYearView"],function(_1,_2){ +return _1("dojox.widget._CalendarYear",null,{parent:null,constructor:function(){ +this._addView(_2); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYear.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYear.js.uncompressed.js new file mode 100644 index 00000000..a0c2a2cd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYear.js.uncompressed.js @@ -0,0 +1,19 @@ +define("dojox/widget/_CalendarYear", [ + "dojo/_base/declare", + "./_CalendarYearView" +], function(declare, _CalendarYearView){ + return declare("dojox.widget._CalendarYear", null, { + // summary: + // Mixin class for adding a view listing 12 years to the + // dojox/widget/_CalendarBase + + parent: null, + + constructor: function(){ + // summary: + // Adds a dojox/widget/_CalendarYearView view to the + // dojo/widget/_CalendarBase widget. + this._addView(_CalendarYearView); + } + }); +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYearView.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYearView.js new file mode 100644 index 00000000..3b398946 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYearView.js @@ -0,0 +1,23 @@ +//>>built +require({cache:{"url:dojox/widget/Calendar/CalendarYear.html":"
                \n \n \n \n \n \n \n
                \n
                \n
                \n
                \n
                \n"}}); +define("dojox/widget/_CalendarYearView",["dojo/_base/declare","./_CalendarView","dijit/_TemplatedMixin","dojo/date","dojo/dom-class","dojo/_base/event","dojo/text!./Calendar/CalendarYear.html","./_CalendarMonthYearView"],function(_1,_2,_3,_4,_5,_6,_7,_8){ +return _1("dojox.widget._CalendarYearView",[_2,_3],{templateString:_7,displayedYears:6,postCreate:function(){ +this.cloneClass(".dojoxCalendarYearTemplate",3); +this.cloneClass(".dojoxCalendarYearGroupTemplate",2); +this._populateYears(); +this.addFx(".dojoxCalendarYearLabel",this.domNode); +},_setValueAttr:function(_9){ +this._populateYears(_9.getFullYear()); +},_populateYears:_8.prototype._populateYears,adjustDate:function(_a,_b){ +return _4.add(_a,"year",_b*12); +},onClick:function(_c){ +if(!_5.contains(_c.target,"dojoxCalendarYearLabel")){ +_6.stop(_c); +return; +} +var _d=Number(_c.target.innerHTML); +var _e=this.get("value"); +_e.setYear(_d); +this.onValueSelected(_e,_d); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYearView.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYearView.js.uncompressed.js new file mode 100644 index 00000000..ce95a8d8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_CalendarYearView.js.uncompressed.js @@ -0,0 +1,54 @@ +require({cache:{ +'url:dojox/widget/Calendar/CalendarYear.html':"
                \n \n \n \n \n \n \n
                \n
                \n
                \n
                \n
                \n"}}); +define("dojox/widget/_CalendarYearView", [ + "dojo/_base/declare", + "./_CalendarView", + "dijit/_TemplatedMixin", + "dojo/date", + "dojo/dom-class", + "dojo/_base/event", + "dojo/text!./Calendar/CalendarYear.html", + "./_CalendarMonthYearView" +], function(declare, _CalendarView, _TemplatedMixin, dojoDate, domClass, event, template, _CalendarMonthYearView){ + return declare("dojox.widget._CalendarYearView", [_CalendarView, _TemplatedMixin], { + // summary: + // A Calendar view listing 12 years + + // templateString: String + // The template to be used to construct the widget. + templateString: template, + + displayedYears: 6, + + postCreate: function(){ + // summary: + // Constructs the view + this.cloneClass(".dojoxCalendarYearTemplate", 3); + this.cloneClass(".dojoxCalendarYearGroupTemplate", 2); + this._populateYears(); + this.addFx(".dojoxCalendarYearLabel", this.domNode); + }, + + _setValueAttr: function(value){ + this._populateYears(value.getFullYear()); + }, + + _populateYears: _CalendarMonthYearView.prototype._populateYears, + + adjustDate: function(date, amount){ + // summary: + // Adjusts the value of a date. It moves it by 12 years each time. + return dojoDate.add(date, "year", amount * 12); + }, + + onClick: function(evt){ + // summary: + // Handles clicks on year values. + if(!domClass.contains(evt.target, "dojoxCalendarYearLabel")){event.stop(evt); return;} + var year = Number(evt.target.innerHTML); + var date = this.get("value"); + date.setYear(year); + this.onValueSelected(date, year); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_FisheyeFX.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_FisheyeFX.js new file mode 100644 index 00000000..7410c517 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_FisheyeFX.js @@ -0,0 +1,8 @@ +//>>built +define("dojox/widget/_FisheyeFX",["dojo/_base/declare","dojo/query","./FisheyeLite"],function(_1,_2,_3){ +return _1("dojox.widget._FisheyeFX",null,{addFx:function(_4,_5){ +_2(_4,_5).forEach(function(_6){ +new _3({properties:{fontSize:1.1}},_6); +}); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_FisheyeFX.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_FisheyeFX.js.uncompressed.js new file mode 100644 index 00000000..009396ad --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_FisheyeFX.js.uncompressed.js @@ -0,0 +1,23 @@ +define("dojox/widget/_FisheyeFX", [ + "dojo/_base/declare", + "dojo/query", + // TODO: FisheyeLite still needs AMD conversion + "./FisheyeLite" +], function(declare, query, FisheyeLite) { + + return declare("dojox.widget._FisheyeFX", null, { + // summary: + // A mixin to add a FisheyeLite effect to the calendar + addFx: function(theQuery, fromNode) { + //Use the query and base node passed from the calendar view mixin + //to select the nodes to attach the event to. + query(theQuery, fromNode).forEach(function(node){ + new FisheyeLite({ + properties: { + fontSize: 1.1 + } + }, node); + }); + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_Invalidating.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_Invalidating.js new file mode 100644 index 00000000..00ca9224 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_Invalidating.js @@ -0,0 +1,28 @@ +//>>built +define("dojox/widget/_Invalidating",["dojo/_base/declare","dojo/_base/lang","dojo/Stateful"],function(_1,_2,_3){ +return _1("dojox.widget._Invalidating",_3,{invalidatingProperties:null,invalidRendering:false,postscript:function(_4){ +this.inherited(arguments); +if(this.invalidatingProperties){ +var _5=this.invalidatingProperties; +for(var i=0;i<_5.length;i++){ +this.watch(_5[i],_2.hitch(this,this.invalidateRendering)); +if(_4&&_5[i] in _4){ +this.invalidateRendering(); +} +} +} +},addInvalidatingProperties:function(_6){ +this.invalidatingProperties=this.invalidatingProperties?this.invalidatingProperties.concat(_6):_6; +},invalidateRendering:function(){ +if(!this.invalidRendering){ +this.invalidRendering=true; +setTimeout(_2.hitch(this,this.validateRendering),0); +} +},validateRendering:function(){ +if(this.invalidRendering){ +this.refreshRendering(); +this.invalidRendering=false; +} +},refreshRendering:function(){ +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_Invalidating.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_Invalidating.js.uncompressed.js new file mode 100644 index 00000000..02215894 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/_Invalidating.js.uncompressed.js @@ -0,0 +1,62 @@ +define("dojox/widget/_Invalidating", ["dojo/_base/declare", "dojo/_base/lang", "dojo/Stateful"], + function(declare, lang, Stateful){ + + return declare("dojox.widget._Invalidating", Stateful, { + // summary: + // Base class for classes (usually widgets) that watch invalidated properties and delay the rendering + // after these properties modifications to the next execution frame. + + // invalidatingPoperties: String[] + // The list of properties to watch for to trigger invalidation. This list must be initialized in the + // constructor. Default value is null. + invalidatingProperties: null, + // invalidRenderering: Boolean + // Whether the rendering is invalid or not. This is a readonly information, one must call + // invalidateRendering to modify this flag. + invalidRendering: false, + postscript: function(mixin){ + this.inherited(arguments); + if(this.invalidatingProperties){ + var props = this.invalidatingProperties; + for(var i = 0; i < props.length; i++){ + this.watch(props[i], lang.hitch(this, this.invalidateRendering)); + if(mixin && props[i] in mixin){ + // if the prop happens to have been passed in the ctor mixin we are invalidated + this.invalidateRendering(); + } + } + } + }, + addInvalidatingProperties: function(/*String[]*/ properties){ + // summary: + // Add properties to the watched properties to trigger invalidation. This method must be called in + // the constructor. It is typically used by subclasses of a _Invalidating class to add more properties + // to watch for. + // properties: + // The list of properties to watch for. + this.invalidatingProperties = this.invalidatingProperties?this.invalidatingProperties.concat(properties):properties; + }, + invalidateRendering: function(){ + // summary: + // Invalidating the rendering for the next executation frame. + if(!this.invalidRendering){ + this.invalidRendering = true; + setTimeout(lang.hitch(this, this.validateRendering), 0); + } + }, + validateRendering: function(){ + // summary: + // Immediately validate the rendering if it has been invalidated. You generally do not call that method yourself. + // tags: + // protected + if(this.invalidRendering){ + this.refreshRendering(); + this.invalidRendering = false; + } + }, + refreshRendering: function(){ + // summary: + // Actually refresh the rendering. Implementation should implement that method. + } + }); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArcIndicator.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArcIndicator.js new file mode 100644 index 00000000..baa0e83b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArcIndicator.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/widget/gauge/AnalogArcIndicator",["dijit","dojo","dojox","dojo/require!dojox/gauges/AnalogArcIndicator"],function(_1,_2,_3){ +_2.provide("dojox.widget.gauge.AnalogArcIndicator"); +_2.require("dojox.gauges.AnalogArcIndicator"); +_3.widget.gauge.AnalogArcIndicator=_3.gauges.AnalogArcIndicator; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArcIndicator.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArcIndicator.js.uncompressed.js new file mode 100644 index 00000000..b202e63e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArcIndicator.js.uncompressed.js @@ -0,0 +1,8 @@ +// wrapped by build app +define("dojox/widget/gauge/AnalogArcIndicator", ["dijit","dojo","dojox","dojo/require!dojox/gauges/AnalogArcIndicator"], function(dijit,dojo,dojox){ +dojo.provide('dojox.widget.gauge.AnalogArcIndicator'); +dojo.require("dojox.gauges.AnalogArcIndicator"); + +dojox.widget.gauge.AnalogArcIndicator = dojox.gauges.AnalogArcIndicator; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArrowIndicator.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArrowIndicator.js new file mode 100644 index 00000000..2744600b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArrowIndicator.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/widget/gauge/AnalogArrowIndicator",["dijit","dojo","dojox","dojo/require!dojox/gauges/AnalogArrowIndicator"],function(_1,_2,_3){ +_2.provide("dojox.widget.gauge.AnalogArrowIndicator"); +_2.require("dojox.gauges.AnalogArrowIndicator"); +_3.widget.gauge.AnalogArrowIndicator=_3.gauges.AnalogArrowIndicator; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArrowIndicator.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArrowIndicator.js.uncompressed.js new file mode 100644 index 00000000..1554327b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogArrowIndicator.js.uncompressed.js @@ -0,0 +1,8 @@ +// wrapped by build app +define("dojox/widget/gauge/AnalogArrowIndicator", ["dijit","dojo","dojox","dojo/require!dojox/gauges/AnalogArrowIndicator"], function(dijit,dojo,dojox){ +dojo.provide('dojox.widget.gauge.AnalogArrowIndicator'); +dojo.require("dojox.gauges.AnalogArrowIndicator"); + +dojox.widget.gauge.AnalogArrowIndicator = dojox.gauges.AnalogArrowIndicator; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogNeedleIndicator.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogNeedleIndicator.js new file mode 100644 index 00000000..4933806e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogNeedleIndicator.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/widget/gauge/AnalogNeedleIndicator",["dijit","dojo","dojox","dojo/require!dojox/gauges/AnalogNeedleIndicator"],function(_1,_2,_3){ +_2.provide("dojox.widget.gauge.AnalogNeedleIndicator"); +_2.require("dojox.gauges.AnalogNeedleIndicator"); +_3.widget.gauge.AnalogNeedleIndicator=_3.gauges.AnalogNeedleIndicator; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogNeedleIndicator.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogNeedleIndicator.js.uncompressed.js new file mode 100644 index 00000000..100fbbc6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/AnalogNeedleIndicator.js.uncompressed.js @@ -0,0 +1,8 @@ +// wrapped by build app +define("dojox/widget/gauge/AnalogNeedleIndicator", ["dijit","dojo","dojox","dojo/require!dojox/gauges/AnalogNeedleIndicator"], function(dijit,dojo,dojox){ +dojo.provide('dojox.widget.gauge.AnalogNeedleIndicator'); +dojo.require('dojox.gauges.AnalogNeedleIndicator'); + +dojox.widget.gauge.AnalogNeedleIndicator = dojox.gauges.AnalogNeedleIndicator; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/BarIndicator.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/BarIndicator.js new file mode 100644 index 00000000..08bb01fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/BarIndicator.js @@ -0,0 +1,6 @@ +//>>built +define("dojox/widget/gauge/BarIndicator",["dijit","dojo","dojox","dojo/require!dojox/gauges/BarIndicator"],function(_1,_2,_3){ +_2.provide("dojox.widget.gauge.BarIndicator"); +_2.require("dojox.gauges.BarIndicator"); +_3.widget.gauge.BarIndicator=_3.gauges.BarIndicator; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/BarIndicator.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/BarIndicator.js.uncompressed.js new file mode 100644 index 00000000..cbc037b3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/BarIndicator.js.uncompressed.js @@ -0,0 +1,8 @@ +// wrapped by build app +define("dojox/widget/gauge/BarIndicator", ["dijit","dojo","dojox","dojo/require!dojox/gauges/BarIndicator"], function(dijit,dojo,dojox){ +dojo.provide('dojox.widget.gauge.BarIndicator'); +dojo.require('dojox.gauges.BarIndicator'); + +dojox.widget.gauge.BarIndicator = dojox.gauges.BarIndicator; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/_Gauge.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/_Gauge.js new file mode 100644 index 00000000..4d933534 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/_Gauge.js @@ -0,0 +1,8 @@ +//>>built +define("dojox/widget/gauge/_Gauge",["dijit","dojo","dojox","dojo/require!dojox/gauges/_Gauge"],function(_1,_2,_3){ +_2.provide("dojox.widget.gauge._Gauge"); +_2.require("dojox.gauges._Gauge"); +_3.widget.gauge._Gauge=_3.gauges._Gauge; +_3.widget.gauge.Range=_3.gauges.Range; +_3.widget.gauge._indicator=_3.gauges._indicator; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/_Gauge.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/_Gauge.js.uncompressed.js new file mode 100644 index 00000000..5b0427e4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/gauge/_Gauge.js.uncompressed.js @@ -0,0 +1,10 @@ +// wrapped by build app +define("dojox/widget/gauge/_Gauge", ["dijit","dojo","dojox","dojo/require!dojox/gauges/_Gauge"], function(dijit,dojo,dojox){ +dojo.provide("dojox.widget.gauge._Gauge"); +dojo.require("dojox.gauges._Gauge"); + +dojox.widget.gauge._Gauge = dojox.gauges._Gauge; +dojox.widget.gauge.Range = dojox.gauges.Range; +dojox.widget.gauge._indicator = dojox.gauges._indicator; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ColorPicker.js new file mode 100644 index 00000000..8dac6f50 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ColorPicker",{root:({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Hue Selector",saturationPickerTitle:"Saturation Selector"}),"zh":true,"zh-tw":true,"uk":true,"tr":true,"th":true,"sv":true,"sl":true,"sk":true,"ru":true,"ro":true,"pt":true,"pt-pt":true,"pl":true,"nl":true,"nb":true,"ko":true,"kk":true,"ja":true,"it":true,"id":true,"hu":true,"hr":true,"he":true,"fr":true,"fi":true,"es":true,"el":true,"de":true,"da":true,"cs":true,"ca":true,"bg":true,"az":true,"ar":true}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..edbf0f0e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ColorPicker.js.uncompressed.js @@ -0,0 +1,51 @@ +define("dojox/widget/nls/ColorPicker", { root: +//begin v1.x content +({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "h", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Hue Selector", +saturationPickerTitle: "Saturation Selector" +}) +//end v1.x content +, +"zh": true, +"zh-tw": true, +"uk": true, +"tr": true, +"th": true, +"sv": true, +"sl": true, +"sk": true, +"ru": true, +"ro": true, +"pt": true, +"pt-pt": true, +"pl": true, +"nl": true, +"nb": true, +"ko": true, +"kk": true, +"ja": true, +"it": true, +"id": true, +"hu": true, +"hr": true, +"he": true, +"fr": true, +"fi": true, +"es": true, +"el": true, +"de": true, +"da": true, +"cs": true, +"ca": true, +"bg": true, +"az": true, +"ar": true +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/FilePicker.js new file mode 100644 index 00000000..17db4a94 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/FilePicker",{root:({name:"Name",path:"Path",size:"Size (in bytes)"}),"zh":true,"zh-tw":true,"uk":true,"tr":true,"th":true,"sv":true,"sl":true,"sk":true,"ru":true,"ro":true,"pt":true,"pt-pt":true,"pl":true,"nl":true,"nb":true,"ko":true,"kk":true,"ja":true,"it":true,"id":true,"hu":true,"hr":true,"he":true,"fr":true,"fi":true,"es":true,"el":true,"de":true,"da":true,"cs":true,"ca":true,"bg":true,"az":true,"ar":true}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..0425b26e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/FilePicker.js.uncompressed.js @@ -0,0 +1,44 @@ +define("dojox/widget/nls/FilePicker", { root: +//begin v1.x content +({ + name: "Name", + path: "Path", + size: "Size (in bytes)" +}) +//end v1.x content +, +"zh": true, +"zh-tw": true, +"uk": true, +"tr": true, +"th": true, +"sv": true, +"sl": true, +"sk": true, +"ru": true, +"ro": true, +"pt": true, +"pt-pt": true, +"pl": true, +"nl": true, +"nb": true, +"ko": true, +"kk": true, +"ja": true, +"it": true, +"id": true, +"hu": true, +"hr": true, +"he": true, +"fr": true, +"fi": true, +"es": true, +"el": true, +"de": true, +"da": true, +"cs": true, +"ca": true, +"bg": true, +"az": true, +"ar": true +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/Wizard.js new file mode 100644 index 00000000..59643f10 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/Wizard",{root:({next:"Next",previous:"Previous",done:"Done"}),"zh":true,"zh-tw":true,"uk":true,"tr":true,"th":true,"sv":true,"sl":true,"sk":true,"ru":true,"ro":true,"pt":true,"pt-pt":true,"pl":true,"nl":true,"nb":true,"ko":true,"kk":true,"ja":true,"it":true,"id":true,"hu":true,"hr":true,"he":true,"fr":true,"fi":true,"es":true,"el":true,"de":true,"da":true,"cs":true,"ca":true,"bg":true,"az":true,"ar":true}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/Wizard.js.uncompressed.js new file mode 100644 index 00000000..665070c4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/Wizard.js.uncompressed.js @@ -0,0 +1,44 @@ +define("dojox/widget/nls/Wizard", { root: +//begin v1.x content +({ +next: "Next", +previous: "Previous", +done: "Done" +}) +//end v1.x content +, +"zh": true, +"zh-tw": true, +"uk": true, +"tr": true, +"th": true, +"sv": true, +"sl": true, +"sk": true, +"ru": true, +"ro": true, +"pt": true, +"pt-pt": true, +"pl": true, +"nl": true, +"nb": true, +"ko": true, +"kk": true, +"ja": true, +"it": true, +"id": true, +"hu": true, +"hr": true, +"he": true, +"fr": true, +"fi": true, +"es": true, +"el": true, +"de": true, +"da": true, +"cs": true, +"ca": true, +"bg": true, +"az": true, +"ar": true +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/ColorPicker.js new file mode 100644 index 00000000..2dda4ca2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ar/ColorPicker",({huePickerTitle:"محدد تدرج اللون",saturationPickerTitle:"محدد درجة التشبع"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..3825a6ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/ColorPicker.js.uncompressed.js @@ -0,0 +1,6 @@ +define( +"dojox/widget/nls/ar/ColorPicker", ({ +huePickerTitle: "محدد تدرج اللون", +saturationPickerTitle: "محدد درجة التشبع" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/FilePicker.js new file mode 100644 index 00000000..82131540 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ar/FilePicker",({name:"الاسم",path:"المسار",size:"الحجم (بالبايت)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..65c6024c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/ar/FilePicker", ({ + name: "الاسم", + path: "‏المسار‏", + size: "الحجم (بالبايت)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/Wizard.js new file mode 100644 index 00000000..f44bc51d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ar/Wizard",({next:"تالي",previous:"سابق",done:"اتمام"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/Wizard.js.uncompressed.js new file mode 100644 index 00000000..be3660ce --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ar/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/ar/Wizard", ({ +next: "تالي", +previous: "‏سابق‏", +done: "اتمام" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/ColorPicker.js new file mode 100644 index 00000000..0dbd1611 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/az/ColorPicker",({"redLabel":"q","valueLabel":"d","hexLabel":"onaltılıq","hueLabel":"ç","saturationLabel":"d","greenLabel":"y","blueLabel":"m","saturationPickerTitle":"Doldurmaq seçimi","huePickerTitle":"Çalar seçimi","degLabel":"°"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..5ac8ad8e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/az/ColorPicker", ({ + "redLabel" : "q", + "valueLabel" : "d", + "hexLabel" : "onaltılıq", + "hueLabel" : "ç", + "saturationLabel" : "d", + "greenLabel" : "y", + "blueLabel" : "m", + "saturationPickerTitle" : "Doldurmaq seçimi", + "huePickerTitle" : "Çalar seçimi", + "degLabel" : "°" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/FilePicker.js new file mode 100644 index 00000000..7091ef78 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/az/FilePicker",({"name":"Ad","size":"Həcmi (bayt cinsindən)","path":"Yol"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..885b68cf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/az/FilePicker", ({ + "name" : "Ad", + "size" : "Həcmi (bayt cinsindən)", + "path" : "Yol" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/Wizard.js new file mode 100644 index 00000000..7648dd3f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/az/Wizard",({"next":"Irəli","done":"Qurtardı","previous":"Geri"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/Wizard.js.uncompressed.js new file mode 100644 index 00000000..81bc600b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/az/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/az/Wizard", ({ + "next" : "Irəli", + "done" : "Qurtardı", + "previous" : "Geri" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/ColorPicker.js new file mode 100644 index 00000000..ea4e76eb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/bg/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"шестнадесетичен",huePickerTitle:"Селектро на нюанси",saturationPickerTitle:"Селектор на наситеност"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..fe729abb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/bg/ColorPicker", ({ + redLabel: "r", + greenLabel: "g", + blueLabel: "b", + hueLabel: "h", + saturationLabel: "s", + valueLabel: "v", /* aka intensity or brightness */ + degLabel: "\u00B0", + hexLabel: "шестнадесетичен", + huePickerTitle: "Селектро на нюанси", + saturationPickerTitle: "Селектор на наситеност" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/FilePicker.js new file mode 100644 index 00000000..d9c47375 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/bg/FilePicker",({name:"Име",path:"Пътека",size:"Размер (в байтове)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..ac15418b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/bg/FilePicker", ({ + name: "Име", + path: "Пътека", + size: "Размер (в байтове)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/Wizard.js new file mode 100644 index 00000000..d358f578 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/bg/Wizard",({next:"Следващ",previous:"Предишен",done:"Готово"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/Wizard.js.uncompressed.js new file mode 100644 index 00000000..c145b09d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/bg/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/bg/Wizard", ({ + next: "Следващ", + previous: "Предишен", + done: "Готово" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/ColorPicker.js new file mode 100644 index 00000000..396f01bf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ca/ColorPicker",({redLabel:"v",greenLabel:"e",blueLabel:"b",hueLabel:"m",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Selector de matís",saturationPickerTitle:"Selector de saturació"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..6fb7cb90 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/ca/ColorPicker", ({ +redLabel: "v", +greenLabel: "e", +blueLabel: "b", +hueLabel: "m", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Selector de matís", +saturationPickerTitle: "Selector de saturació" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/FilePicker.js new file mode 100644 index 00000000..7e938e21 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ca/FilePicker",({name:"Nom",path:"Camí d'accés",size:"Mida (en bytes)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..3b3cb8b1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/ca/FilePicker", ({ + name: "Nom", + path: "Camí d'accés", + size: "Mida (en bytes)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/Wizard.js new file mode 100644 index 00000000..debc50d1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ca/Wizard",({next:"Següent",previous:"Anterior",done:"Fet"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/Wizard.js.uncompressed.js new file mode 100644 index 00000000..c3faf3a9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ca/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/ca/Wizard", ({ +next: "Següent", +previous: "Anterior", +done: "Fet" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/ColorPicker.js new file mode 100644 index 00000000..df1ae578 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/cs/ColorPicker",({redLabel:"č",greenLabel:"z",blueLabel:"m",hueLabel:"o",saturationLabel:"n",valueLabel:"j",degLabel:"°",hexLabel:"hex",huePickerTitle:"Selektor odstínu",saturationPickerTitle:"Selektor sytosti"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..ade91573 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/cs/ColorPicker", ({ +redLabel: "č", +greenLabel: "z", +blueLabel: "m", +hueLabel: "o", +saturationLabel: "n", +valueLabel: "j", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Selektor odstínu", +saturationPickerTitle: "Selektor sytosti" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/FilePicker.js new file mode 100644 index 00000000..3916681a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/cs/FilePicker",({name:"Název",path:"Cesta",size:"Velikost (v bajtech)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..68deee65 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/cs/FilePicker", ({ + name: "Název", + path: "Cesta", + size: "Velikost (v bajtech)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/Wizard.js new file mode 100644 index 00000000..3710fc8c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/cs/Wizard",({next:"Další",previous:"Předchozí",done:"Hotovo"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/Wizard.js.uncompressed.js new file mode 100644 index 00000000..a60e1c24 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/cs/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/cs/Wizard", ({ +next: "Další", +previous: "Předchozí", +done: "Hotovo" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/ColorPicker.js new file mode 100644 index 00000000..33efd4ef --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/da/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"n",saturationLabel:"m",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Vælg nuance",saturationPickerTitle:"Vælg mætning"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..ffcd55ec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/da/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "n", +saturationLabel: "m", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Vælg nuance", +saturationPickerTitle: "Vælg mætning" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/FilePicker.js new file mode 100644 index 00000000..b8661592 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/da/FilePicker",({name:"Navn",path:"Sti",size:"Størrelse (i byte)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..4591d7a6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/da/FilePicker", ({ + name: "Navn", + path: "Sti", + size: "Størrelse (i byte)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/Wizard.js new file mode 100644 index 00000000..22840bf9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/da/Wizard",({next:"Næste",previous:"Forrige",done:"Udført"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/Wizard.js.uncompressed.js new file mode 100644 index 00000000..4328c4d6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/da/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/da/Wizard", ({ +next: "Næste", +previous: "Forrige", +done: "Udført" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/ColorPicker.js new file mode 100644 index 00000000..fd3f2c12 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/de/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Farbtonauswahl",saturationPickerTitle:"Sättigungsauswahl"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..790ba66c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/de/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "h", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Farbtonauswahl", +saturationPickerTitle: "Sättigungsauswahl" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/FilePicker.js new file mode 100644 index 00000000..929c34fa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/de/FilePicker",({name:"Name",path:"Pfad",size:"Größe (in Byte)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..a411ee2c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/de/FilePicker", ({ + name: "Name", + path: "Pfad", + size: "Größe (in Byte)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/Wizard.js new file mode 100644 index 00000000..4d62b4dc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/de/Wizard",({next:"Weiter",previous:"Zurück",done:"Fertig"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/Wizard.js.uncompressed.js new file mode 100644 index 00000000..4e183b3f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/de/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/de/Wizard", ({ +next: "Weiter", +previous: "Zurück", +done: "Fertig" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/ColorPicker.js new file mode 100644 index 00000000..33641764 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/el/ColorPicker",({redLabel:"κ",greenLabel:"π",blueLabel:"μ",hueLabel:"α",saturationLabel:"κ",valueLabel:"τ",degLabel:"°",hexLabel:"16-αδικό",huePickerTitle:"Επιλογή απόχρωσης",saturationPickerTitle:"Επιλογή κορεσμού"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..7e2b128e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/el/ColorPicker", ({ +redLabel: "κ", +greenLabel: "π", +blueLabel: "μ", +hueLabel: "α", +saturationLabel: "κ", +valueLabel: "τ", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "16-αδικό", +huePickerTitle: "Επιλογή απόχρωσης", +saturationPickerTitle: "Επιλογή κορεσμού" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/FilePicker.js new file mode 100644 index 00000000..a352474e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/el/FilePicker",({name:"Όνομα",path:"Διαδρομή",size:"Μέγεθος (σε bytes)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..0ddb5b1a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/el/FilePicker", ({ + name: "Όνομα", + path: "Διαδρομή", + size: "Μέγεθος (σε bytes)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/Wizard.js new file mode 100644 index 00000000..7bc55024 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/el/Wizard",({next:"Επόμενο",previous:"Προηγούμενο",done:"Ολοκλήρωση"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/Wizard.js.uncompressed.js new file mode 100644 index 00000000..cf812b76 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/el/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/el/Wizard", ({ +next: "Επόμενο", +previous: "Προηγούμενο", +done: "Ολοκλήρωση" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/ColorPicker.js new file mode 100644 index 00000000..83c328b0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/es/ColorPicker",({redLabel:"r",greenLabel:"v",blueLabel:"a",hueLabel:"m",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Selector de tono",saturationPickerTitle:"Selector de saturación"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..796a69d2 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/es/ColorPicker", ({ +redLabel: "r", +greenLabel: "v", +blueLabel: "a", +hueLabel: "m", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Selector de tono", +saturationPickerTitle: "Selector de saturación" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/FilePicker.js new file mode 100644 index 00000000..527899e8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/es/FilePicker",({name:"Nombre",path:"Vía de acceso",size:"Tamaño (en bytes)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..25819c32 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/es/FilePicker", ({ + name: "Nombre", + path: "Vía de acceso", + size: "Tamaño (en bytes)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/Wizard.js new file mode 100644 index 00000000..52137872 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/es/Wizard",({next:"Siguiente",previous:"Anterior",done:"Terminado"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/Wizard.js.uncompressed.js new file mode 100644 index 00000000..5687395d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/es/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/es/Wizard", ({ +next: "Siguiente", +previous: "Anterior", +done: "Terminado" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/ColorPicker.js new file mode 100644 index 00000000..9568b62e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/fi/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Sävyn valitsin",saturationPickerTitle:"Kylläisyyden valitsin"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..8ec1e15b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/fi/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "h", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Sävyn valitsin", +saturationPickerTitle: "Kylläisyyden valitsin" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/FilePicker.js new file mode 100644 index 00000000..43f8ecb5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/fi/FilePicker",({name:"Nimi",path:"Polku",size:"Koko (tavuina)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..05093b71 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/fi/FilePicker", ({ + name: "Nimi", + path: "Polku", + size: "Koko (tavuina)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/Wizard.js new file mode 100644 index 00000000..a6cea87c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/fi/Wizard",({next:"Seuraava",previous:"Edellinen",done:"Valmis"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/Wizard.js.uncompressed.js new file mode 100644 index 00000000..e0a8befa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fi/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/fi/Wizard", ({ +next: "Seuraava", +previous: "Edellinen", +done: "Valmis" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/ColorPicker.js new file mode 100644 index 00000000..7a45e02a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/fr/ColorPicker",({redLabel:"r",greenLabel:"v",blueLabel:"b",hueLabel:"t",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Sélecteur de teinte",saturationPickerTitle:"Sélecteur de saturation"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..dd024463 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/fr/ColorPicker", ({ +redLabel: "r", +greenLabel: "v", +blueLabel: "b", +hueLabel: "t", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Sélecteur de teinte", +saturationPickerTitle: "Sélecteur de saturation" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/FilePicker.js new file mode 100644 index 00000000..9fae2dc8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/fr/FilePicker",({name:"Nom",path:"Chemin",size:"Taille (en octets)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..263ebf6e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/fr/FilePicker", ({ + name: "Nom", + path: "Chemin", + size: "Taille (en octets)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/Wizard.js new file mode 100644 index 00000000..cd9fc57f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/fr/Wizard",({next:"Suivant",previous:"Précédent",done:"Terminé"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/Wizard.js.uncompressed.js new file mode 100644 index 00000000..32658961 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/fr/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/fr/Wizard", ({ +next: "Suivant", +previous: "Précédent", +done: "Terminé" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/ColorPicker.js new file mode 100644 index 00000000..45c9b96f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/he/ColorPicker",({redLabel:"א",greenLabel:"י",blueLabel:"כ",hueLabel:"ג",saturationLabel:"ר",valueLabel:"ע",degLabel:"°",hexLabel:"הקס",huePickerTitle:"בורר גוון",saturationPickerTitle:"בורר רוויה"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..7703df91 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/he/ColorPicker", ({ +redLabel: "א", +greenLabel: "י", +blueLabel: "כ", +hueLabel: "ג", +saturationLabel: "ר", +valueLabel: "ע", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "הקס", +huePickerTitle: "בורר גוון", +saturationPickerTitle: "בורר רוויה" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/FilePicker.js new file mode 100644 index 00000000..dd2cf97c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/he/FilePicker",({name:"שם",path:"נתיב",size:"גודל (בבתים)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..139096b6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/he/FilePicker", ({ + name: "שם", + path: "נתיב", + size: "גודל (בבתים)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/Wizard.js new file mode 100644 index 00000000..f8885d48 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/he/Wizard",({next:"הבא",previous:"הקודם",done:"סיום"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/Wizard.js.uncompressed.js new file mode 100644 index 00000000..a3a59106 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/he/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/he/Wizard", ({ +next: "הבא", +previous: "הקודם", +done: "סיום" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/ColorPicker.js new file mode 100644 index 00000000..03981b5c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/hr/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Izbornik nijanse boje",saturationPickerTitle:"Izbornik zasićenosti"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..3f1dcb5b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/hr/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "h", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Izbornik nijanse boje", +saturationPickerTitle: "Izbornik zasićenosti" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/FilePicker.js new file mode 100644 index 00000000..17e1b304 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/hr/FilePicker",({name:"Ime",path:"Staza",size:"Veličina (u bajtovima)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..909f5896 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/hr/FilePicker", ({ + name: "Ime", + path: "Staza", + size: "Veličina (u bajtovima)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/Wizard.js new file mode 100644 index 00000000..8412ac1e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/hr/Wizard",({next:"Sljedeće",previous:"Prethodno",done:"Gotovo"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/Wizard.js.uncompressed.js new file mode 100644 index 00000000..fdf4b980 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hr/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/hr/Wizard", ({ +next: "Sljedeće", +previous: "Prethodno", +done: "Gotovo" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/ColorPicker.js new file mode 100644 index 00000000..170d732a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/hu/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Árnyalat kiválasztó",saturationPickerTitle:"Telítettség kiválasztó"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..f9912432 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/hu/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "h", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Árnyalat kiválasztó", +saturationPickerTitle: "Telítettség kiválasztó" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/FilePicker.js new file mode 100644 index 00000000..17528aac --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/hu/FilePicker",({name:"Név",path:"Elérési út",size:"Méret (byte)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..48032b12 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/hu/FilePicker", ({ + name: "Név", + path: "Elérési út", + size: "Méret (byte)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/Wizard.js new file mode 100644 index 00000000..7949e402 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/hu/Wizard",({next:"Tovább",previous:"Előző",done:"Kész"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/Wizard.js.uncompressed.js new file mode 100644 index 00000000..057f1bc1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/hu/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/hu/Wizard", ({ +next: "Tovább", +previous: "Előző", +done: "Kész" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/ColorPicker.js new file mode 100644 index 00000000..629d3968 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/id/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Selektor Corak",saturationPickerTitle:"Selektor Kepekatan"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..2a179123 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/ColorPicker.js.uncompressed.js @@ -0,0 +1,15 @@ +define( +"dojox/widget/nls/id/ColorPicker", ({ + redLabel: "r", + greenLabel: "g", + blueLabel: "b", + hueLabel: "h", + saturationLabel: "s", + valueLabel: "v", /* aka intensity or brightness */ + degLabel: "\u00B0", + hexLabel: "hex", + huePickerTitle: "Selektor Corak", + saturationPickerTitle: "Selektor Kepekatan" +}) +); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/FilePicker.js new file mode 100644 index 00000000..bed9fc79 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/id/FilePicker",({name:"Nama",path:"Jalur",size:"Ukuran (dalam byte)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..0d548ce5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/FilePicker.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/widget/nls/id/FilePicker", ({ + name: "Nama", + path: "Jalur", + size: "Ukuran (dalam byte)" +}) +); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/Wizard.js new file mode 100644 index 00000000..aae5cfbb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/id/Wizard",({next:"Berikutnya",previous:"Sebelumnya",done:"Selesai"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/Wizard.js.uncompressed.js new file mode 100644 index 00000000..caad57a6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/id/Wizard.js.uncompressed.js @@ -0,0 +1,8 @@ +define( +"dojox/widget/nls/id/Wizard", ({ + next: "Berikutnya", + previous: "Sebelumnya", + done: "Selesai" +}) +); + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/ColorPicker.js new file mode 100644 index 00000000..6ace4f65 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/it/ColorPicker",({redLabel:"r",greenLabel:"v",blueLabel:"b",hueLabel:"t",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Selettore tonalità",saturationPickerTitle:"Selettore saturazione"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..15ca1bf7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/it/ColorPicker", ({ +redLabel: "r", +greenLabel: "v", +blueLabel: "b", +hueLabel: "t", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Selettore tonalità", +saturationPickerTitle: "Selettore saturazione" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/FilePicker.js new file mode 100644 index 00000000..85d34021 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/it/FilePicker",({name:"Nome",path:"Percorso",size:"Dimensione (in byte)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..566c1521 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/it/FilePicker", ({ + name: "Nome", + path: "Percorso", + size: "Dimensione (in byte)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/Wizard.js new file mode 100644 index 00000000..c68c5cf1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/it/Wizard",({next:"Successivo",previous:"Indietro",done:"Fine"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/Wizard.js.uncompressed.js new file mode 100644 index 00000000..c2d94276 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/it/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/it/Wizard", ({ +next: "Successivo", +previous: "Indietro", +done: "Fine" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/ColorPicker.js new file mode 100644 index 00000000..0b8caf10 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ja/ColorPicker",({redLabel:"R",greenLabel:"G",blueLabel:"B",hueLabel:"H",saturationLabel:"S",valueLabel:"V",degLabel:"°",hexLabel:"Hex",huePickerTitle:"色調セレクター",saturationPickerTitle:"彩度セレクター"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..413546c4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/ja/ColorPicker", ({ +redLabel: "R", +greenLabel: "G", +blueLabel: "B", +hueLabel: "H", +saturationLabel: "S", +valueLabel: "V", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "Hex", +huePickerTitle: "色調セレクター", +saturationPickerTitle: "彩度セレクター" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/FilePicker.js new file mode 100644 index 00000000..bacd5da4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ja/FilePicker",({name:"名前",path:"パス",size:"サイズ (バイト単位)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..ad179e33 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/ja/FilePicker", ({ + name: "名前", + path: "パス", + size: "サイズ (バイト単位)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/Wizard.js new file mode 100644 index 00000000..8f25a2b1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ja/Wizard",({next:"次へ",previous:"前へ",done:"完了"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/Wizard.js.uncompressed.js new file mode 100644 index 00000000..65c46294 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ja/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/ja/Wizard", ({ +next: "次へ", +previous: "前へ", +done: "完了" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/ColorPicker.js new file mode 100644 index 00000000..33960e1f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/kk/ColorPicker",({redLabel:"r",greenLabel:"д",blueLabel:"ә",hueLabel:"е",saturationLabel:"ң",valueLabel:"п",degLabel:"°",hexLabel:"алтылық",huePickerTitle:"Реңкті іріктеу",saturationPickerTitle:"Қанықтықты іріктеу"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..8b8d971d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/kk/ColorPicker", ({ +redLabel: "r", +greenLabel: "д", +blueLabel: "ә", +hueLabel: "е", +saturationLabel: "ң", +valueLabel: "п", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "алтылық", +huePickerTitle: "Реңкті іріктеу", +saturationPickerTitle: "Қанықтықты іріктеу" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/FilePicker.js new file mode 100644 index 00000000..85085b51 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/kk/FilePicker",({name:"Аты",path:"Жол",size:"Өлшемі (байт)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..ebbbc6bd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/kk/FilePicker", ({ + name: "Аты", + path: "Жол", + size: "Өлшемі (байт)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/Wizard.js new file mode 100644 index 00000000..2d5b38a3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/kk/Wizard",({next:"Келесі",previous:"Алдыңғы",done:"Дайын"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/Wizard.js.uncompressed.js new file mode 100644 index 00000000..200893ff --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/kk/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/kk/Wizard", ({ +next: "Келесі", +previous: "Алдыңғы", +done: "Дайын" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/ColorPicker.js new file mode 100644 index 00000000..a14109fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ko/ColorPicker",({redLabel:"R",greenLabel:"G",blueLabel:"B",hueLabel:"H",saturationLabel:"S",valueLabel:"V",degLabel:"°",hexLabel:"16진",huePickerTitle:"색상 선택자",saturationPickerTitle:"채도 선택자"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..8cd29c05 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/ko/ColorPicker", ({ +redLabel: "R", +greenLabel: "G", +blueLabel: "B", +hueLabel: "H", +saturationLabel: "S", +valueLabel: "V", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "16진", +huePickerTitle: "색상 선택자", +saturationPickerTitle: "채도 선택자" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/FilePicker.js new file mode 100644 index 00000000..6cb0f25d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ko/FilePicker",({name:"이름",path:"경로",size:"크기(바이트)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..5092d6e1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/ko/FilePicker", ({ + name: "이름", + path: "경로", + size: "크기(바이트)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/Wizard.js new file mode 100644 index 00000000..920bc4b0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ko/Wizard",({next:"다음",previous:"이전",done:"완료"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/Wizard.js.uncompressed.js new file mode 100644 index 00000000..bc581abd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ko/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/ko/Wizard", ({ +next: "다음", +previous: "이전", +done: "완료" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/ColorPicker.js new file mode 100644 index 00000000..e27398da --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/nb/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Nyansevelger",saturationPickerTitle:"Metningsvelger"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..b307394a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/nb/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "h", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Nyansevelger", +saturationPickerTitle: "Metningsvelger" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/FilePicker.js new file mode 100644 index 00000000..edf8503e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/nb/FilePicker",({name:"Navn",path:"Bane",size:"Størrelse (i byte)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..d73233ec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/nb/FilePicker", ({ + name: "Navn", + path: "Bane", + size: "Størrelse (i byte)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/Wizard.js new file mode 100644 index 00000000..e73a9c14 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/nb/Wizard",({next:"Neste",previous:"Forrige",done:"Ferdig"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/Wizard.js.uncompressed.js new file mode 100644 index 00000000..5a8284c3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nb/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/nb/Wizard", ({ +next: "Neste", +previous: "Forrige", +done: "Ferdig" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/ColorPicker.js new file mode 100644 index 00000000..31f783f1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/nl/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"t",saturationLabel:"i",valueLabel:"h",degLabel:"°",hexLabel:"hex",huePickerTitle:"Tint selecteren",saturationPickerTitle:"Intensiteit selecteren"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..642a8ce9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/nl/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "t", +saturationLabel: "i", +valueLabel: "h", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Tint selecteren", +saturationPickerTitle: "Intensiteit selecteren" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/FilePicker.js new file mode 100644 index 00000000..56e97737 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/nl/FilePicker",({name:"Naam",path:"Pad",size:"Grootte (in bytes)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..20f6eea5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/nl/FilePicker", ({ + name: "Naam", + path: "Pad", + size: "Grootte (in bytes)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/Wizard.js new file mode 100644 index 00000000..4f042005 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/nl/Wizard",({next:"Volgende",previous:"Vorige",done:"Klaar"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/Wizard.js.uncompressed.js new file mode 100644 index 00000000..9a507ba3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/nl/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/nl/Wizard", ({ +next: "Volgende", +previous: "Vorige", +done: "Klaar" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/ColorPicker.js new file mode 100644 index 00000000..5a415baa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/pl/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"g.",saturationLabel:"s",valueLabel:"jas.",degLabel:"°",hexLabel:"szesnastkowe",huePickerTitle:"Selektor barwy",saturationPickerTitle:"Selektor nasycenia"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..2447b8fe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/pl/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "g.", +saturationLabel: "s", +valueLabel: "jas.", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "szesnastkowe", +huePickerTitle: "Selektor barwy", +saturationPickerTitle: "Selektor nasycenia" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/FilePicker.js new file mode 100644 index 00000000..164c5bd0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/pl/FilePicker",({name:"Nazwa",path:"Ścieżka",size:"Wielkość (w bajtach)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..927af42a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/pl/FilePicker", ({ + name: "Nazwa", + path: "Ścieżka", + size: "Wielkość (w bajtach)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/Wizard.js new file mode 100644 index 00000000..b940447d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/pl/Wizard",({next:"Dalej",previous:"Wstecz",done:"Gotowe"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/Wizard.js.uncompressed.js new file mode 100644 index 00000000..ffe38d72 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pl/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/pl/Wizard", ({ +next: "Dalej", +previous: "Wstecz", +done: "Gotowe" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/ColorPicker.js new file mode 100644 index 00000000..26934c5c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/pt-pt/ColorPicker",({redLabel:"e",greenLabel:"v",blueLabel:"a",hueLabel:"t",valueLabel:"val",huePickerTitle:"Selector de tonalidade",saturationPickerTitle:"Selector de saturação"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..70cfc0b9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/ColorPicker.js.uncompressed.js @@ -0,0 +1,11 @@ +define( +"dojox/widget/nls/pt-pt/ColorPicker", ({ +redLabel: "e", +greenLabel: "v", +blueLabel: "a", +hueLabel: "t", +valueLabel: "val", /* aka intensity or brightness */ +huePickerTitle: "Selector de tonalidade", +saturationPickerTitle: "Selector de saturação" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/FilePicker.js new file mode 100644 index 00000000..e80ca63d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/pt-pt/FilePicker",({name:"Nome",path:"Caminho",size:"Tamanho (em bytes)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..75976102 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/pt-pt/FilePicker", ({ + name: "Nome", + path: "Caminho", + size: "Tamanho (em bytes)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/Wizard.js new file mode 100644 index 00000000..087ca98d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/pt-pt/Wizard",({next:"Seguinte",previous:"Anterior",done:"Concluído"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/Wizard.js.uncompressed.js new file mode 100644 index 00000000..6c05de85 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt-pt/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/pt-pt/Wizard", ({ +next: "Seguinte", +previous: "Anterior", +done: "Concluído" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/ColorPicker.js new file mode 100644 index 00000000..dd46fb01 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/pt/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Seletor de Matiz",saturationPickerTitle:"Seletor de Saturação"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..83239ff7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/pt/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "h", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Seletor de Matiz", +saturationPickerTitle: "Seletor de Saturação" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/FilePicker.js new file mode 100644 index 00000000..7dc0aa4e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/pt/FilePicker",({name:"Nome",path:"Caminho",size:"Tamanho (em bytes)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..80441de7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/pt/FilePicker", ({ + name: "Nome", + path: "Caminho", + size: "Tamanho (em bytes)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/Wizard.js new file mode 100644 index 00000000..97d5cf35 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/pt/Wizard",({next:"Próximo",previous:"Anterior",done:"Concluído"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/Wizard.js.uncompressed.js new file mode 100644 index 00000000..98e0056b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/pt/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/pt/Wizard", ({ +next: "Próximo", +previous: "Anterior", +done: "Concluído" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/ColorPicker.js new file mode 100644 index 00000000..70b74f25 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ro/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Selector nuanţă",saturationPickerTitle:"Selector saturaţie"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..bdbb1202 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/ro/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "h", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Selector nuanţă", +saturationPickerTitle: "Selector saturaţie" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/FilePicker.js new file mode 100644 index 00000000..ac2d45bf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ro/FilePicker",({name:"Nume",path:"Cale",size:"Mărime (în octeţi)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..513e22b5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/ro/FilePicker", ({ + name: "Nume", + path: "Cale", + size: "Mărime (în octeţi)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/Wizard.js new file mode 100644 index 00000000..7aae23b7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ro/Wizard",({next:"Următor",previous:"Anterior",done:"Gata"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/Wizard.js.uncompressed.js new file mode 100644 index 00000000..cb73e5c7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ro/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/ro/Wizard", ({ +next: "Următor", +previous: "Anterior", +done: "Gata" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/ColorPicker.js new file mode 100644 index 00000000..2e5891e6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ru/ColorPicker",({redLabel:"к",greenLabel:"з",blueLabel:"с",hueLabel:"о",saturationLabel:"н",valueLabel:"з",degLabel:"°",hexLabel:"шест",huePickerTitle:"Выбор оттенка",saturationPickerTitle:"Выбор насыщенности"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..cbb5420d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/ru/ColorPicker", ({ +redLabel: "к", +greenLabel: "з", +blueLabel: "с", +hueLabel: "о", +saturationLabel: "н", +valueLabel: "з", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "шест", +huePickerTitle: "Выбор оттенка", +saturationPickerTitle: "Выбор насыщенности" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/FilePicker.js new file mode 100644 index 00000000..5c5d9a33 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ru/FilePicker",({name:"Имя",path:"Путь",size:"Размер (байт)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..820b9d7c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/ru/FilePicker", ({ + name: "Имя", + path: "Путь", + size: "Размер (байт)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/Wizard.js new file mode 100644 index 00000000..020ffbfe --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/ru/Wizard",({next:"Далее",previous:"Назад",done:"Готово"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/Wizard.js.uncompressed.js new file mode 100644 index 00000000..e72bc6ea --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/ru/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/ru/Wizard", ({ +next: "Далее", +previous: "Назад", +done: "Готово" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/ColorPicker.js new file mode 100644 index 00000000..49c6cd9e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/sk/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Výber odtieňa",saturationPickerTitle:"Výber sýtosti"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..444468c1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/sk/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "h", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Výber odtieňa", +saturationPickerTitle: "Výber sýtosti" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/FilePicker.js new file mode 100644 index 00000000..739a19c3 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/sk/FilePicker",({name:"Meno",path:"Cesta",size:"Veľkosť (v bajtoch)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..e1ae7117 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/sk/FilePicker", ({ + name: "Meno", + path: "Cesta", + size: "Veľkosť (v bajtoch)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/Wizard.js new file mode 100644 index 00000000..11005851 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/sk/Wizard",({next:"Nasledujúci",previous:"Predchádzajúci",done:"Hotovo"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/Wizard.js.uncompressed.js new file mode 100644 index 00000000..ab50515d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sk/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/sk/Wizard", ({ +next: "Nasledujúci", +previous: "Predchádzajúci", +done: "Hotovo" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/ColorPicker.js new file mode 100644 index 00000000..35ae1502 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/sl/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Izbirnik odtenka",saturationPickerTitle:"Izbirnik nasičenosti"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..e2fbd15d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/sl/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "h", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Izbirnik odtenka", +saturationPickerTitle: "Izbirnik nasičenosti" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/FilePicker.js new file mode 100644 index 00000000..f267d86a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/sl/FilePicker",({name:"Ime",path:"Pot",size:"Velikost (v bajtih)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..734f8d87 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/sl/FilePicker", ({ + name: "Ime", + path: "Pot", + size: "Velikost (v bajtih)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/Wizard.js new file mode 100644 index 00000000..9cfa6390 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/sl/Wizard",({next:"Naprej",previous:"Prejšnji",done:"Opravljeno"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/Wizard.js.uncompressed.js new file mode 100644 index 00000000..ce1a039a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sl/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/sl/Wizard", ({ +next: "Naprej", +previous: "Prejšnji", +done: "Opravljeno" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/ColorPicker.js new file mode 100644 index 00000000..d9862333 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/sv/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"n",saturationLabel:"m",valueLabel:"k",degLabel:"°",hexLabel:"hex",huePickerTitle:"Nyans",saturationPickerTitle:"Mättnad"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..363bac1d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/sv/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "n", +saturationLabel: "m", +valueLabel: "k", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "Nyans", +saturationPickerTitle: "Mättnad" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/FilePicker.js new file mode 100644 index 00000000..98c89e68 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/sv/FilePicker",({name:"Namn",path:"Sökväg",size:"Storlek (i byte)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..e4cc6b8c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/sv/FilePicker", ({ + name: "Namn", + path: "Sökväg", + size: "Storlek (i byte)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/Wizard.js new file mode 100644 index 00000000..91e1889f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/sv/Wizard",({next:"Nästa",previous:"Föregående",done:"Klart"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/Wizard.js.uncompressed.js new file mode 100644 index 00000000..21c784d9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/sv/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/sv/Wizard", ({ +next: "Nästa", +previous: "Föregående", +done: "Klart" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/ColorPicker.js new file mode 100644 index 00000000..43f189ec --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/th/ColorPicker",({redLabel:"r",greenLabel:"ก.",blueLabel:"b",hueLabel:"ชม.",saturationLabel:"วิ.",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"ตัวเลือกสี",saturationPickerTitle:"ตัวเลือกความอิ่มของสี"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..7329dadf --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/th/ColorPicker", ({ +redLabel: "r", +greenLabel: "ก.", +blueLabel: "b", +hueLabel: "ชม.", +saturationLabel: "วิ.", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "hex", +huePickerTitle: "ตัวเลือกสี", +saturationPickerTitle: "ตัวเลือกความอิ่มของสี" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/FilePicker.js new file mode 100644 index 00000000..551dd55e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/th/FilePicker",({name:"ชื่อ",path:"พาธ",size:"ขนาด (เป็นไบต์)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..5eee9bda --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/th/FilePicker", ({ + name: "ชื่อ", + path: "พาธ", + size: "ขนาด (เป็นไบต์)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/Wizard.js new file mode 100644 index 00000000..3b8bc3fd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/th/Wizard",({next:"ถัดไป",previous:"ก่อนหน้านี้",done:"เสร็จแล้ว"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/Wizard.js.uncompressed.js new file mode 100644 index 00000000..15f7dd00 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/th/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/th/Wizard", ({ +next: "ถัดไป", +previous: "ก่อนหน้านี้", +done: "เสร็จแล้ว" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/ColorPicker.js new file mode 100644 index 00000000..fe4280ac --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/tr/ColorPicker",({redLabel:"k",greenLabel:"y",blueLabel:"m",hueLabel:"t",saturationLabel:"d",valueLabel:"d",degLabel:"°",hexLabel:"onaltılı",huePickerTitle:"Ton Seçici",saturationPickerTitle:"Doygunluk Seçici"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..a5548d3d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/tr/ColorPicker", ({ +redLabel: "k", +greenLabel: "y", +blueLabel: "m", +hueLabel: "t", +saturationLabel: "d", +valueLabel: "d", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "onaltılı", +huePickerTitle: "Ton Seçici", +saturationPickerTitle: "Doygunluk Seçici" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/FilePicker.js new file mode 100644 index 00000000..09954224 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/tr/FilePicker",({name:"Ad",path:"Yol",size:"Boyut (bayt cinsinden)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..f01429c8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/tr/FilePicker", ({ + name: "Ad", + path: "Yol", + size: "Boyut (bayt cinsinden)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/Wizard.js new file mode 100644 index 00000000..d73a5c43 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/tr/Wizard",({next:"İleri",previous:"Geri",done:"Bitti"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/Wizard.js.uncompressed.js new file mode 100644 index 00000000..202dbc41 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/tr/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/tr/Wizard", ({ +next: "İleri", +previous: "Geri", +done: "Bitti" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/ColorPicker.js new file mode 100644 index 00000000..edf8c8f6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/uk/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"hex",huePickerTitle:"Відтінок",saturationPickerTitle:"Насиченість"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..0dde5e9a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/uk/ColorPicker", ({ + redLabel: "r", + greenLabel: "g", + blueLabel: "b", + hueLabel: "h", + saturationLabel: "s", + valueLabel: "v", /* aka intensity or brightness */ + degLabel: "\u00B0", + hexLabel: "hex", + huePickerTitle: "Відтінок", + saturationPickerTitle: "Насиченість" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/FilePicker.js new file mode 100644 index 00000000..e5a7757d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/uk/FilePicker",({name:"Ім'я",path:"Шлях",size:"Розмір (у байтах)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..325fee27 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/uk/FilePicker", ({ + name: "Ім'я", + path: "Шлях", + size: "Розмір (у байтах)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/Wizard.js new file mode 100644 index 00000000..a93bb1ff --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/uk/Wizard",({next:"Далі",previous:"Назад",done:"Готово"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/Wizard.js.uncompressed.js new file mode 100644 index 00000000..2ce4296e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/uk/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/uk/Wizard", ({ + next: "Далі", + previous: "Назад", + done: "Готово" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/ColorPicker.js new file mode 100644 index 00000000..90225147 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/zh-tw/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"十六進位",huePickerTitle:"色調選取元",saturationPickerTitle:"飽和度選取元"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..6beb69a1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/zh-tw/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "h", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "十六進位", +huePickerTitle: "色調選取元", +saturationPickerTitle: "飽和度選取元" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/FilePicker.js new file mode 100644 index 00000000..b44925e6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/zh-tw/FilePicker",({name:"名稱",path:"路徑",size:"大小 (以位元組為單位)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..73ab456b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/zh-tw/FilePicker", ({ + name: "名稱", + path: "路徑", + size: "大小 (以位元組為單位)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/Wizard.js new file mode 100644 index 00000000..74e88475 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/zh-tw/Wizard",({next:"下一步",previous:"上一步",done:"完成"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/Wizard.js.uncompressed.js new file mode 100644 index 00000000..2f6661b6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh-tw/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/zh-tw/Wizard", ({ +next: "下一步", +previous: "上一步", +done: "完成" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/ColorPicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/ColorPicker.js new file mode 100644 index 00000000..06746f84 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/ColorPicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/zh/ColorPicker",({redLabel:"r",greenLabel:"g",blueLabel:"b",hueLabel:"h",saturationLabel:"s",valueLabel:"v",degLabel:"°",hexLabel:"十六进制",huePickerTitle:"色彩选择器",saturationPickerTitle:"饱和度选择器"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/ColorPicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/ColorPicker.js.uncompressed.js new file mode 100644 index 00000000..a806b2ba --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/ColorPicker.js.uncompressed.js @@ -0,0 +1,14 @@ +define( +"dojox/widget/nls/zh/ColorPicker", ({ +redLabel: "r", +greenLabel: "g", +blueLabel: "b", +hueLabel: "h", +saturationLabel: "s", +valueLabel: "v", /* aka intensity or brightness */ +degLabel: "\u00B0", +hexLabel: "十六进制", +huePickerTitle: "色彩选择器", +saturationPickerTitle: "饱和度选择器" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/FilePicker.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/FilePicker.js new file mode 100644 index 00000000..60329991 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/FilePicker.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/zh/FilePicker",({name:"名称",path:"路径",size:"大小(以字节计)"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/FilePicker.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/FilePicker.js.uncompressed.js new file mode 100644 index 00000000..3f2092ed --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/FilePicker.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/zh/FilePicker", ({ + name: "名称", + path: "路径", + size: "大小(以字节计)" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/Wizard.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/Wizard.js new file mode 100644 index 00000000..157d3078 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/Wizard.js @@ -0,0 +1,2 @@ +//>>built +define("dojox/widget/nls/zh/Wizard",({next:"下一个",previous:"上一个",done:"完成"})); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/Wizard.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/Wizard.js.uncompressed.js new file mode 100644 index 00000000..90076a2b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/nls/zh/Wizard.js.uncompressed.js @@ -0,0 +1,7 @@ +define( +"dojox/widget/nls/zh/Wizard", ({ +next: "下一个", +previous: "上一个", +done: "完成" +}) +); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Controller.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Controller.js new file mode 100644 index 00000000..211bfdc8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Controller.js @@ -0,0 +1,77 @@ +//>>built +define("dojox/widget/rotator/Controller",["dojo/_base/declare","dojo/_base/lang","dojo/_base/html","dojo/_base/event","dojo/_base/array","dojo/_base/connect","dojo/query"],function(_1,_2,_3,_4,_5,_6,_7){ +var _8="dojoxRotator",_9=_8+"Play",_a=_8+"Pause",_b=_8+"Number",_c=_8+"Tab",_d=_8+"Selected"; +return _1("dojox.widget.rotator.Controller",null,{rotator:null,commands:"prev,play/pause,info,next",constructor:function(_e,_f){ +_2.mixin(this,_e); +var r=this.rotator; +if(r){ +while(_f.firstChild){ +_f.removeChild(_f.firstChild); +} +var ul=this._domNode=_3.create("ul",null,_f),_10=" "+_8+"Icon",cb=function(_11,css,_12){ +_3.create("li",{className:css,innerHTML:""+_11+"",onclick:function(e){ +_4.stop(e); +if(r){ +r.control.apply(r,_12); +} +}},ul); +}; +_5.forEach(this.commands.split(","),function(b,i){ +switch(b){ +case "prev": +cb("Prev",_8+"Prev"+_10,["prev"]); +break; +case "play/pause": +cb("Play",_9+_10,["play"]); +cb("Pause",_a+_10,["pause"]); +break; +case "info": +this._info=_3.create("li",{className:_8+"Info",innerHTML:this._buildInfo(r)},ul); +break; +case "next": +cb("Next",_8+"Next"+_10,["next"]); +break; +case "#": +case "titles": +for(var j=0;j"+(r.idx+1)+" / "+r.panes.length+"
                "; +},_onUpdate:function(_14){ +var r=this.rotator; +switch(_14){ +case "play": +case "pause": +this._togglePlay(); +break; +case "onAfterTransition": +if(this._info){ +this._info.innerHTML=this._buildInfo(r); +} +var s=function(n){ +if(r.idx + // example: + // |
                + // example: + // |
                s + + // rotator: dojox.widget.Rotator + // An instance of a Rotator widget. + rotator: null, + + // commands: string + // A comma-separated list of commands. Valid commands are: + // prev An icon button to go to the previous pane. + // next An icon button to go to the next pane. + // play/pause A play and pause toggle icon button. + // info Displays the current and total panes. (ie "1 / 4") + // # Displays a number button for each pane. (ie "1 2 3 4") + // titles Displays each pane's title as a tab. (ie "Home Services Contact Blog") + commands: "prev,play/pause,info,next", + + constructor: function(/*Object*/params, /*DomNode|string*/node){ + // summary: + // Initializes the pager and connect to the rotator. + + lang.mixin(this, params); + + // check if we have a valid rotator + var r = this.rotator; + if(r){ + // remove all of the controller's child nodes just in case + while(node.firstChild){ + node.removeChild(node.firstChild); + } + + var ul = this._domNode = html.create("ul", null, node), + icon = " " + _dojoxRotator + "Icon", + + // helper function for creating a button + cb = function(/*string*/label, /*string*/css, /*array*/action){ + html.create("li", { + className: css, + innerHTML: '' + label + '', + onclick: function(/*event*/e){ + event.stop(e); + if(r){ + r.control.apply(r, action); + } + } + }, ul); + }; + + // build out the commands + array.forEach(this.commands.split(','), function(b, i){ + switch(b){ + case "prev": + cb("Prev", _dojoxRotator + "Prev" + icon, ["prev"]); + break; + case "play/pause": + cb("Play", _play + icon, ["play"]); + cb("Pause", _pause + icon, ["pause"]); + break; + case "info": + this._info = html.create("li", { + className: _dojoxRotator + "Info", + innerHTML: this._buildInfo(r) + }, ul); + break; + case "next": + cb("Next", _dojoxRotator + "Next" + icon, ["next"]); + break; + case "#": + case "titles": + for(var j=0; j' + (r.idx+1) + ' / ' + r.panes.length + '
                '; /*string*/ + }, + + _onUpdate: function(/*string*/type){ + // summary: + // Updates various pager controls when the rotator updates. + + var r = this.rotator; // no need to test if this is null since _onUpdate is only fired by the rotator + + switch(type){ + case "play": + case "pause": + this._togglePlay(); + break; + case "onAfterTransition": + if(this._info){ + this._info.innerHTML = this._buildInfo(r); + } + + // helper function for selecting the current tab + var s = function(/*NodeList*/n){ + if(r.idx < n.length){ + html.addClass(n[r.idx], _selected); + } + }; + + s(query('.' + _number, this._domNode).removeClass(_selected)); + s(query('.' + _tab, this._domNode).removeClass(_selected)); + break; + } + } + }); +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Fade.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Fade.js new file mode 100644 index 00000000..0fc34000 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Fade.js @@ -0,0 +1,16 @@ +//>>built +define("dojox/widget/rotator/Fade",["dojo/_base/lang","dojo/_base/fx","dojo/dom-style","dojo/fx"],function(_1,_2,_3,fx){ +function _4(_5,_6){ +var n=_5.next.node; +_3.set(n,{display:"",opacity:0}); +_5.node=_5.current.node; +return fx[_6]([_2.fadeOut(_5),_2.fadeIn(_1.mixin(_5,{node:n}))]); +}; +var _7={fade:function(_8){ +return _4(_8,"chain"); +},crossFade:function(_9){ +return _4(_9,"combine"); +}}; +_1.mixin(_1.getObject("dojox.widget.rotator"),_7); +return _7; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Fade.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Fade.js.uncompressed.js new file mode 100644 index 00000000..fe652f5f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Fade.js.uncompressed.js @@ -0,0 +1,46 @@ +define("dojox/widget/rotator/Fade", [ + "dojo/_base/lang", + "dojo/_base/fx", + "dojo/dom-style", + "dojo/fx" +], function(lang, baseFx, domStyle, fx) { + + function _fade(/*Object*/args, /*string*/action){ + // summary: + // Returns an animation of a fade out and fade in of the current and next + // panes. It will either chain (fade) or combine (crossFade) the fade + // animations. + var n = args.next.node; + domStyle.set(n, { + display: "", + opacity: 0 + }); + + args.node = args.current.node; + + return fx[action]([ /*dojo.Animation*/ + baseFx.fadeOut(args), + baseFx.fadeIn(lang.mixin(args, { node: n })) + ]); + } + + var exports = { + fade: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that fades out the current pane, then fades in + // the next pane. + return _fade(args, "chain"); /*dojo.Animation*/ + }, + + crossFade: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that cross fades two rotator panes. + return _fade(args, "combine"); /*dojo.Animation*/ + } + }; + + // back-compat, remove for 2.0 + lang.mixin(lang.getObject("dojox.widget.rotator"), exports); + + return exports; +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Pan.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Pan.js new file mode 100644 index 00000000..2677d570 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Pan.js @@ -0,0 +1,66 @@ +//>>built +define("dojox/widget/rotator/Pan",["dojo/_base/array","dojo/_base/connect","dojo/_base/lang","dojo/dom-style","dojo/_base/fx","dojo/fx"],function(_1,_2,_3,_4,_5,fx){ +var _6=0,_7=1,UP=2,_8=3; +function _9(_a,_b){ +var n=_b.next.node,r=_b.rotatorBox,m=_a%2,a=m?"left":"top",s=(m?r.w:r.h)*(_a<2?-1:1),p={},q={}; +_4.set(n,"display",""); +p[a]={start:0,end:-s}; +q[a]={start:s,end:0}; +return fx.combine([_5.animateProperty({node:_b.current.node,duration:_b.duration,properties:p,easing:_b.easing}),_5.animateProperty({node:n,duration:_b.duration,properties:q,easing:_b.easing})]); +}; +function _c(n,z){ +_4.set(n,"zIndex",z); +}; +var _d={pan:function(_e){ +var w=_e.wrap,p=_e.rotator.panes,_f=p.length,z=_f,j=_e.current.idx,k=_e.next.idx,nw=Math.abs(k-j),ww=Math.abs((_f-Math.max(j,k))+Math.min(j,k))%_f,_10=jww||!_10&&nw=_f){ +j=0; +} +}else{ +if(--j<0){ +j=_f-1; +} +} +var x=p[i],y=p[j]; +_c(y.node,z--); +_12.push(_9(_11,_3.mixin({easing:function(m){ +return m; +}},_e,{current:x,next:y,duration:_14}))); +if((f&&j==k)||(!f&&j==k)){ +break; +} +_13.push(y.node); +} +var _15=fx.chain(_12),h=_2.connect(_15,"onEnd",function(){ +_2.disconnect(h); +_1.forEach(_13,function(q){ +_4.set(q,{display:"none",left:0,opacity:1,top:0,zIndex:0}); +}); +}); +return _15; +} +return _9(_11,_e); +},panDown:function(_16){ +return _9(_6,_16); +},panRight:function(_17){ +return _9(_7,_17); +},panUp:function(_18){ +return _9(UP,_18); +},panLeft:function(_19){ +return _9(_8,_19); +}}; +_3.mixin(_3.getObject("dojox.widget.rotator"),_d); +return _d; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Pan.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Pan.js.uncompressed.js new file mode 100644 index 00000000..d2de3bc6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Pan.js.uncompressed.js @@ -0,0 +1,215 @@ +define("dojox/widget/rotator/Pan", [ + "dojo/_base/array", + "dojo/_base/connect", + "dojo/_base/lang", + "dojo/dom-style", + "dojo/_base/fx", + "dojo/fx" +], function(array, connect, lang, domStyle, baseFx, fx) { + + // Constants used to identify which edge the pane pans in from. + var DOWN = 0, + RIGHT = 1, + UP = 2, + LEFT = 3; + + function _pan(/*int*/type, /*Object*/args){ + // summary: + // Handles the preparation of the dom node and creates the dojo.Animation object. + var n = args.next.node, + r = args.rotatorBox, + m = type % 2, + a = m ? "left" : "top", + s = (m ? r.w : r.h) * (type < 2 ? -1 : 1), + p = {}, + q = {}; + + domStyle.set(n, "display", ""); + + p[a] = { + start: 0, + end: -s + }; + + q[a] = { + start: s, + end: 0 + }; + + return fx.combine([ /*dojo.Animation*/ + baseFx.animateProperty({ + node: args.current.node, + duration: args.duration, + properties: p, + easing: args.easing + }), + baseFx.animateProperty({ + node: n, + duration: args.duration, + properties: q, + easing: args.easing + }) + ]); + } + + function _setZindex(/*DomNode*/n, /*int*/z){ + // summary: + // Helper function for continuously panning. + domStyle.set(n, "zIndex", z); + } + + var exports = { + pan: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that either pans left or right to the next pane. + // The actual direction depends on the order of the panes. + // + // If panning forward from index 1 to 3, it will perform a pan left. If panning + // backwards from 5 to 1, then it will perform a pan right. + // + // If the parameter "continuous" is set to true, it will return an animation + // chain of several pan animations of each intermediate pane panning. For + // example, if you pan forward from 1 to 3, it will return an animation panning + // left from 1 to 2 and then 2 to 3. + // + // If an easing is specified, it will be applied to each pan transition. For + // example, if you are panning from pane 1 to pane 5 and you set the easing to + // "dojo.fx.easing.elasticInOut", then it will "wobble" 5 times, once for each + // pan transition. + // + // If the parameter "wrap" is set to true, it will pan to the next pane using + // the shortest distance in the array of panes. For example, if there are 6 + // panes, then panning from 5 to 1 will pan forward (left) from pane 5 to 6 and + // 6 to 1. If the distance is the same either going forward or backwards, then + // it will always pan forward (left). + // + // A continuous pan will use the target pane's duration to pan all intermediate + // panes. To use the target's pane duration for each intermediate pane, then + // set the "quick" parameter to "false". + + var w = args.wrap, + p = args.rotator.panes, + len = p.length, + z = len, + j = args.current.idx, + k = args.next.idx, + nw = Math.abs(k - j), + ww = Math.abs((len - Math.max(j, k)) + Math.min(j, k)) % len, + _forward = j < k, + _dir = LEFT, + _pans = [], + _nodes = [], + _duration = args.duration; + + // default to pan left, but check if we should pan right. + // need to take into account wrapping. + if((!w && !_forward) || (w && (_forward && nw > ww || !_forward && nw < ww))){ + _dir = RIGHT; + } + + if(args.continuous){ + // if continuous pans are quick, then divide the duration by the number of panes + if(args.quick){ + _duration = Math.round(_duration / (w ? Math.min(ww, nw) : nw)); + } + + // set the current pane's z-index + _setZindex(p[j].node, z--); + + var f = (_dir == LEFT); + + // loop and set z-indexes and get all pan animations + while(1){ + // set the current pane + var i = j; + + // increment/decrement the next pane's index + if(f){ + if(++j >= len){ + j = 0; + } + }else{ + if(--j < 0){ + j = len - 1; + } + } + + var x = p[i], + y = p[j]; + + // set next pane's z-index + _setZindex(y.node, z--); + + // build the pan animation + _pans.push(_pan(_dir, lang.mixin({ + easing: function(m){ return m; } // continuous gets a linear easing by default + }, args, { + current: x, + next: y, + duration: _duration + }))); + + // if we're done, then break out of the loop + if((f && j == k) || (!f && j == k)){ + break; + } + + // this must come after the break... we don't want the last pane to get it's + // styles reset. + _nodes.push(y.node); + } + + // build the chained animation of all pan animations + var _anim = fx.chain(_pans), + + // clean up styles when the chained animation finishes + h = connect.connect(_anim, "onEnd", function(){ + connect.disconnect(h); + array.forEach(_nodes, function(q){ + domStyle.set(q, { + display: "none", + left: 0, + opacity: 1, + top: 0, + zIndex: 0 + }); + }); + }); + + return _anim; + } + + // we're not continuous, so just return a normal pan animation + return _pan(_dir, args); /*dojo.Animation*/ + }, + + panDown: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that pans in the next rotator pane from the top. + return _pan(DOWN, args); /*dojo.Animation*/ + }, + + panRight: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that pans in the next rotator pane from the right. + return _pan(RIGHT, args); /*dojo.Animation*/ + }, + + panUp: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that pans in the next rotator pane from the bottom. + return _pan(UP, args); /*dojo.Animation*/ + }, + + panLeft: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that pans in the next rotator pane from the left. + return _pan(LEFT, args); /*dojo.Animation*/ + } + }; + + // back-compat, remove for 2.0 + lang.mixin(lang.getObject("dojox.widget.rotator"), exports); + + return exports; +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/PanFade.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/PanFade.js new file mode 100644 index 00000000..70c41659 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/PanFade.js @@ -0,0 +1,67 @@ +//>>built +define("dojox/widget/rotator/PanFade",["dojo/_base/array","dojo/_base/connect","dojo/_base/lang","dojo/_base/fx","dojo/dom-style","dojo/fx"],function(_1,_2,_3,_4,_5,fx){ +var _6=0,_7=1,UP=2,_8=3; +function _9(_a,_b){ +var j={node:_b.current.node,duration:_b.duration,easing:_b.easing},k={node:_b.next.node,duration:_b.duration,easing:_b.easing},r=_b.rotatorBox,m=_a%2,a=m?"left":"top",s=(m?r.w:r.h)*(_a<2?-1:1),p={},q={}; +_5.set(k.node,{display:"",opacity:0}); +p[a]={start:0,end:-s}; +q[a]={start:s,end:0}; +return fx.combine([_4.animateProperty(_3.mixin({properties:p},j)),_4.fadeOut(j),_4.animateProperty(_3.mixin({properties:q},k)),_4.fadeIn(k)]); +}; +function _c(n,z){ +_5.set(n,"zIndex",z); +}; +var _d={panFade:function(_e){ +var w=_e.wrap,p=_e.rotator.panes,_f=p.length,z=_f,j=_e.current.idx,k=_e.next.idx,nw=Math.abs(k-j),ww=Math.abs((_f-Math.max(j,k))+Math.min(j,k))%_f,_10=jww||!_10&&nw=_f){ +j=0; +} +}else{ +if(--j<0){ +j=_f-1; +} +} +var x=p[i],y=p[j]; +_c(y.node,z--); +_12.push(_9(_11,_3.mixin({easing:function(m){ +return m; +}},_e,{current:x,next:y,duration:_14}))); +if((f&&j==k)||(!f&&j==k)){ +break; +} +_13.push(y.node); +} +var _15=fx.chain(_12); +var h=_2.connect(_15,"onEnd",function(){ +_2.disconnect(h); +_1.forEach(_13,function(q){ +_5.set(q,{display:"none",left:0,opacity:1,top:0,zIndex:0}); +}); +}); +return _15; +} +return _9(_11,_e); +},panFadeDown:function(_16){ +return _9(_6,_16); +},panFadeRight:function(_17){ +return _9(_7,_17); +},panFadeUp:function(_18){ +return _9(UP,_18); +},panFadeLeft:function(_19){ +return _9(_8,_19); +}}; +_3.mixin(_3.getObject("dojox.widget.rotator"),_d); +return _d; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/PanFade.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/PanFade.js.uncompressed.js new file mode 100644 index 00000000..7f792565 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/PanFade.js.uncompressed.js @@ -0,0 +1,219 @@ +define("dojox/widget/rotator/PanFade", [ + "dojo/_base/array", + "dojo/_base/connect", + "dojo/_base/lang", + "dojo/_base/fx", + "dojo/dom-style", + "dojo/fx" +], function(array, connect, lang, baseFx, domStyle, fx) { + + // Constants used to identify which edge the pane pans in from. + var DOWN = 0, + RIGHT = 1, + UP = 2, + LEFT = 3; + + function _pan(/*int*/type, /*Object*/args){ + // summary: + // Handles the preparation of the dom node and creates the dojo.Animation object. + var j = { + node: args.current.node, + duration: args.duration, + easing: args.easing + }, + k = { + node: args.next.node, + duration: args.duration, + easing: args.easing + }, + r = args.rotatorBox, + m = type % 2, + a = m ? "left" : "top", + s = (m ? r.w : r.h) * (type < 2 ? -1 : 1), + p = {}, + q = {}; + + domStyle.set(k.node, { + display: "", + opacity: 0 + }); + + p[a] = { + start: 0, + end: -s + }; + + q[a] = { + start: s, + end: 0 + }; + + return fx.combine([ /*dojo.Animation*/ + baseFx.animateProperty(lang.mixin({ properties: p }, j)), + baseFx.fadeOut(j), + baseFx.animateProperty(lang.mixin({ properties: q }, k)), + baseFx.fadeIn(k) + ]); + } + + function _setZindex(/*DomNode*/n, /*int*/z){ + // summary: + // Helper function for continuously panning. + domStyle.set(n, "zIndex", z); + } + + var exports = { + panFade: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that either pans left or right to the next pane. + // The actual direction depends on the order of the panes. + // + // If panning forward from index 1 to 3, it will perform a pan left. If panning + // backwards from 5 to 1, then it will perform a pan right. + // + // If the parameter "continuous" is set to true, it will return an animation + // chain of several pan animations of each intermediate pane panning. For + // example, if you pan forward from 1 to 3, it will return an animation panning + // left from 1 to 2 and then 2 to 3. + // + // If an easing is specified, it will be applied to each pan transition. For + // example, if you are panning from pane 1 to pane 5 and you set the easing to + // "dojo.fx.easing.elasticInOut", then it will "wobble" 5 times, once for each + // pan transition. + // + // If the parameter "wrap" is set to true, it will pan to the next pane using + // the shortest distance in the array of panes. For example, if there are 6 + // panes, then panning from 5 to 1 will pan forward (left) from pane 5 to 6 and + // 6 to 1. If the distance is the same either going forward or backwards, then + // it will always pan forward (left). + // + // A continuous pan will use the target pane's duration to pan all intermediate + // panes. To use the target's pane duration for each intermediate pane, then + // set the "quick" parameter to "false". + + var w = args.wrap, + p = args.rotator.panes, + len = p.length, + z = len, + j = args.current.idx, + k = args.next.idx, + nw = Math.abs(k - j), + ww = Math.abs((len - Math.max(j, k)) + Math.min(j, k)) % len, + _forward = j < k, + _dir = LEFT, + _pans = [], + _nodes = [], + _duration = args.duration; + + // default to pan left, but check if we should pan right. + // need to take into account wrapping. + if((!w && !_forward) || (w && (_forward && nw > ww || !_forward && nw < ww))){ + _dir = RIGHT; + } + + if(args.continuous){ + // if continuous pans are quick, then divide the duration by the number of panes + if(args.quick){ + _duration = Math.round(_duration / (w ? Math.min(ww, nw) : nw)); + } + + // set the current pane's z-index + _setZindex(p[j].node, z--); + + var f = (_dir == LEFT); + + // loop and set z-indexes and get all pan animations + while(1){ + // set the current pane + var i = j; + + // increment/decrement the next pane's index + if(f){ + if(++j >= len){ + j = 0; + } + }else{ + if(--j < 0){ + j = len - 1; + } + } + + var x = p[i], + y = p[j]; + + // set next pane's z-index + _setZindex(y.node, z--); + + // build the pan animation + _pans.push(_pan(_dir, lang.mixin({ + easing: function(m){ return m; } // continuous gets a linear easing by default + }, args, { + current: x, + next: y, + duration: _duration + }))); + + // if we're done, then break out of the loop + if((f && j == k) || (!f && j == k)){ + break; + } + + // this must come after the break... we don't want the last pane to get it's + // styles reset. + _nodes.push(y.node); + } + + // build the chained animation of all pan animations + var _anim = fx.chain(_pans); + + // clean up styles when the chained animation finishes + var h = connect.connect(_anim, "onEnd", function(){ + connect.disconnect(h); + array.forEach(_nodes, function(q){ + domStyle.set(q, { + display: "none", + left: 0, + opacity: 1, + top: 0, + zIndex: 0 + }); + }); + }); + + return _anim; + } + + // we're not continuous, so just return a normal pan animation + return _pan(_dir, args); /*dojo.Animation*/ + }, + + panFadeDown: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that pans in the next rotator pane from the top. + return _pan(DOWN, args); /*dojo.Animation*/ + }, + + panFadeRight: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that pans in the next rotator pane from the right. + return _pan(RIGHT, args); /*dojo.Animation*/ + }, + + panFadeUp: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that pans in the next rotator pane from the bottom. + return _pan(UP, args); /*dojo.Animation*/ + }, + + panFadeLeft: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that pans in the next rotator pane from the left. + return _pan(LEFT, args); /*dojo.Animation*/ + } + }; + + // back-compat, remove for 2.0 + lang.mixin(lang.getObject("dojox.widget.rotator"), exports); + + return exports; +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Slide.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Slide.js new file mode 100644 index 00000000..3516be9b --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Slide.js @@ -0,0 +1,24 @@ +//>>built +define("dojox/widget/rotator/Slide",["dojo/_base/lang","dojo/_base/fx","dojo/dom-style"],function(_1,_2,_3){ +var _4=0,_5=1,UP=2,_6=3; +function _7(_8,_9){ +var _a=_9.node=_9.next.node,r=_9.rotatorBox,m=_8%2,s=(m?r.w:r.h)*(_8<2?-1:1); +_3.set(_a,{display:"",zIndex:(_3.get(_9.current.node,"zIndex")||1)+1}); +if(!_9.properties){ +_9.properties={}; +} +_9.properties[m?"left":"top"]={start:s,end:0}; +return _2.animateProperty(_9); +}; +var _b={slideDown:function(_c){ +return _7(_4,_c); +},slideRight:function(_d){ +return _7(_5,_d); +},slideUp:function(_e){ +return _7(UP,_e); +},slideLeft:function(_f){ +return _7(_6,_f); +}}; +_1.mixin(_1.getObject("dojox.widget.rotator"),_b); +return _b; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Slide.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Slide.js.uncompressed.js new file mode 100644 index 00000000..92f5f79d --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Slide.js.uncompressed.js @@ -0,0 +1,67 @@ +define("dojox/widget/rotator/Slide", [ + "dojo/_base/lang", + "dojo/_base/fx", + "dojo/dom-style" +], function(lang, baseFx, domStyle){ + + // Constants used to identify which edge the pane slides in from. + var DOWN = 0, + RIGHT = 1, + UP = 2, + LEFT = 3; + + function _slide(/*int*/type, /*Object*/args){ + // summary: + // Handles the preparation of the dom node and creates the dojo.Animation object. + var node = args.node = args.next.node, + r = args.rotatorBox, + m = type % 2, + s = (m ? r.w : r.h) * (type < 2 ? -1 : 1); + + domStyle.set(node, { + display: "", + zIndex: (domStyle.get(args.current.node, "zIndex") || 1) + 1 + }); + + if(!args.properties){ + args.properties = {}; + } + args.properties[m ? "left" : "top"] = { + start: s, + end: 0 + }; + + return baseFx.animateProperty(args); /*dojo.Animation*/ + } + + var exports = { + slideDown: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that slides in the next rotator pane from the top. + return _slide(DOWN, args); /*dojo.Animation*/ + }, + + slideRight: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that slides in the next rotator pane from the right. + return _slide(RIGHT, args); /*dojo.Animation*/ + }, + + slideUp: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that slides in the next rotator pane from the bottom. + return _slide(UP, args); /*dojo.Animation*/ + }, + + slideLeft: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that slides in the next rotator pane from the left. + return _slide(LEFT, args); /*dojo.Animation*/ + } + }; + + // back-compat, remove for 2.0 + lang.mixin(lang.getObject("dojox.widget.rotator"), exports); + + return exports; +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/ThumbnailController.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/ThumbnailController.js new file mode 100644 index 00000000..18c1d186 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/ThumbnailController.js @@ -0,0 +1,38 @@ +//>>built +define("dojox/widget/rotator/ThumbnailController",["dojo/_base/declare","dojo/_base/connect","dojo/_base/lang","dojo/_base/event","dojo/aspect","dojo/dom-attr","dojo/dom-class","dojo/dom-construct","dojo/query"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9){ +var _a="dojoxRotatorThumb",_b=_a+"Selected"; +return _1("dojox.widget.rotator.ThumbnailController",null,{rotator:null,constructor:function(_c,_d){ +_3.mixin(this,_c); +this._domNode=_d; +var r=this.rotator; +if(r){ +while(_d.firstChild){ +_d.removeChild(_d.firstChild); +} +for(var i=0;i"},_d); +})(i); +} +} +_5.after(r,"onUpdate",_3.hitch(this,"_onUpdate"),true); +} +},destroy:function(){ +_8.destroy(this._domNode); +},_onUpdate:function(_e){ +var r=this.rotator; +if(_e=="onAfterTransition"){ +var n=_9("."+_a,this._domNode).removeClass(_b); +if(r.idx` tag, then it will create an thumbnail of + // the pane's image using the `` tag's "thumbsrc" or "src" attribute. + // + // The size of the thumbnails and the style of the selected thumbnail is + // controlled using CSS. + // example: + // |
                + // | Image 1 + // | Image 2 + // |
                + // |
                + + // rotator: dojox/widget/Rotator + // An instance of a Rotator widget. + rotator: null, + + constructor: function(/*Object*/params, /*DomNode|string*/node){ + // summary: + // Initializes the thumbnails and connect to the rotator. + + lang.mixin(this, params); + + this._domNode = node; + + // check if we have a valid rotator + var r = this.rotator; + if(r){ + // remove all of the controller's child nodes just in case + while(node.firstChild){ + node.removeChild(node.firstChild); + } + + for(var i=0; i' + }, node); + })(i); + } + } + + aspect.after(r, 'onUpdate', lang.hitch(this, "_onUpdate"), true); + } + }, + + destroy: function(){ + // summary: + // Disconnect from the rotator. + + domConstruct.destroy(this._domNode); + }, + + _onUpdate: function(/*string*/type){ + // summary: + // Updates various pager controls when the rotator updates. + + var r = this.rotator; // no need to test if this is null since _onUpdate is only fired by the rotator + if(type == "onAfterTransition"){ + var n = query('.' + _css, this._domNode).removeClass(_selected); + if(r.idx < n.length){ + domClass.add(n[r.idx], _selected); + } + } + } + }); + +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Wipe.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Wipe.js new file mode 100644 index 00000000..27b9ed47 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Wipe.js @@ -0,0 +1,44 @@ +//>>built +define("dojox/widget/rotator/Wipe",["dojo/_base/lang","dojo/_base/fx","dojo/dom-style"],function(_1,fx,_2){ +var _3=2,_4=3,UP=0,_5=1; +function _6(_7,w,h,x){ +var a=[0,w,0,0]; +if(_7==_4){ +a=[0,w,h,w]; +}else{ +if(_7==UP){ +a=[h,w,h,0]; +}else{ +if(_7==_5){ +a=[0,0,h,0]; +} +} +} +if(x!=null){ +a[_7]=_7==_3||_7==_5?x:(_7%2?w:h)-x; +} +return a; +}; +function _8(n,_9,w,h,x){ +_2.set(n,"clip",_9==null?"auto":"rect("+_6(_9,w,h,x).join("px,")+"px)"); +}; +function _a(_b,_c){ +var _d=_c.next.node,w=_c.rotatorBox.w,h=_c.rotatorBox.h; +_2.set(_d,{display:"",zIndex:(_2.get(_c.current.node,"zIndex")||1)+1}); +_8(_d,_b,w,h); +return new fx.Animation(_1.mixin({node:_d,curve:[0,_b%2?w:h],onAnimate:function(x){ +_8(_d,_b,w,h,parseInt(x)); +}},_c)); +}; +var _e={wipeDown:function(_f){ +return _a(_3,_f); +},wipeRight:function(_10){ +return _a(_4,_10); +},wipeUp:function(_11){ +return _a(UP,_11); +},wipeLeft:function(_12){ +return _a(_5,_12); +}}; +_1.mixin(_1.getObject("dojox.widget.rotator"),_e); +return _e; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Wipe.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Wipe.js.uncompressed.js new file mode 100644 index 00000000..651ad536 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/widget/rotator/Wipe.js.uncompressed.js @@ -0,0 +1,93 @@ +define("dojox/widget/rotator/Wipe", [ + "dojo/_base/lang", + "dojo/_base/fx", + "dojo/dom-style" +], function(lang, fx, domStyle) { + + // Constants used to identify which clip edge is being wiped. The values are + // the index of the clip array that is changed during the animation. + var DOWN = 2, + RIGHT = 3, + UP = 0, + LEFT = 1; + + function _clipArray(/*int*/type, /*int*/w, /*int*/h, /*number*/x){ + // summary: + // Returns an array containing the down, right, up, and + // left clip region based on the type. If "x" is specified, + // then it is applied to the appropriate clipping edge. + var a = [0, w, 0, 0]; // default to the top edge + if(type == RIGHT){ + a = [0, w, h, w]; + }else if(type == UP){ + a = [h, w, h, 0]; + }else if(type == LEFT){ + a = [0, 0, h, 0]; + } + if(x != null){ + a[type] = type == DOWN || type == LEFT ? x : (type % 2 ? w : h) - x; + } + return a; /*Array*/ + } + + function _setClip(/*DomNode*/n, /*int*/type, /*int*/w, /*int*/h, /*number*/x){ + // summary: + // Sets the clip region of the node. If a type is passed in then we + // return a rect(), otherwise return "auto". + domStyle.set(n, "clip", type == null ? "auto" : "rect(" + _clipArray(type, w, h, x).join("px,") + "px)"); + } + + function _wipe(/*int*/type, /*Object*/args){ + // summary: + // Handles the preparation of the dom node and creates the Animation object. + var node = args.next.node, + w = args.rotatorBox.w, + h = args.rotatorBox.h; + + domStyle.set(node, { + display: "", + zIndex: (domStyle.get(args.current.node, "zIndex") || 1) + 1 + }); + + _setClip(node, type, w, h); + + return new fx.Animation(lang.mixin({ + node: node, + curve: [0, type % 2 ? w : h], + onAnimate: function(x){ + _setClip(node, type, w, h, parseInt(x)); + } + }, args)); + } + + var exports = { + wipeDown: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that wipes in the next rotator pane from the top. + return _wipe(DOWN, args); /*dojo.Animation*/ + }, + + wipeRight: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that wipes in the next rotator pane from the right. + return _wipe(RIGHT, args); /*dojo.Animation*/ + }, + + wipeUp: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that wipes in the next rotator pane from the bottom. + return _wipe(UP, args); /*dojo.Animation*/ + }, + + wipeLeft: function(/*Object*/args){ + // summary: + // Returns a dojo.Animation that wipes in the next rotator pane from the left. + return _wipe(LEFT, args); /*dojo.Animation*/ + } + }; + + // back-compat, remove for 2.0 + lang.mixin(lang.getObject("dojox.widget.rotator"), exports); + + return exports; +}); \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire.js new file mode 100644 index 00000000..4d61dc61 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire.js @@ -0,0 +1,3 @@ +//>>built +define("dojox/wire",["./wire/_base"],function(){ +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire.js.uncompressed.js new file mode 100644 index 00000000..2f6158bb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire.js.uncompressed.js @@ -0,0 +1,9 @@ +define("dojox/wire", ['./wire/_base'],function(){ + /*===== + return { + // summary: + // Deprecated. Should require dojox/wire modules directly rather than trying to access them through + // this module. + }; + =====*/ +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/CompositeWire.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/CompositeWire.js new file mode 100644 index 00000000..72ca05a1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/CompositeWire.js @@ -0,0 +1,37 @@ +//>>built +define("dojox/wire/CompositeWire",["dijit","dojo","dojox","dojo/require!dojox/wire/_base,dojox/wire/Wire"],function(_1,_2,_3){ +_2.provide("dojox.wire.CompositeWire"); +_2.require("dojox.wire._base"); +_2.require("dojox.wire.Wire"); +_2.declare("dojox.wire.CompositeWire",_3.wire.Wire,{_wireClass:"dojox.wire.CompositeWire",constructor:function(_4){ +this._initializeChildren(this.children); +},_getValue:function(_5){ +if(!_5||!this.children){ +return _5; +} +var _6=(_2.isArray(this.children)?[]:{}); +for(var c in this.children){ +_6[c]=this.children[c].getValue(_5); +} +return _6; +},_setValue:function(_7,_8){ +if(!_7||!this.children){ +return _7; +} +for(var c in this.children){ +this.children[c].setValue(_8[c],_7); +} +return _7; +},_initializeChildren:function(_9){ +if(!_9){ +return; +} +for(var c in _9){ +var _a=_9[c]; +_a.parent=this; +if(!_3.wire.isWire(_a)){ +_9[c]=_3.wire.create(_a); +} +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/CompositeWire.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/CompositeWire.js.uncompressed.js new file mode 100644 index 00000000..d2ccde8e --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/CompositeWire.js.uncompressed.js @@ -0,0 +1,103 @@ +// wrapped by build app +define("dojox/wire/CompositeWire", ["dijit","dojo","dojox","dojo/require!dojox/wire/_base,dojox/wire/Wire"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.CompositeWire"); + +dojo.require("dojox.wire._base"); +dojo.require("dojox.wire.Wire"); + +dojo.declare("dojox.wire.CompositeWire", dojox.wire.Wire, { + // summary: + // A Wire for composite values in object or array + // description: + // This class has multiple child Wires for object properties or array + // elements. + // When an object with Wires is specified to 'children' property, they + // are used to get or set an object with property values. + // When an array of Wiares is specified to 'children' property, they + // are used to get or set an array with element values. + + _wireClass: "dojox.wire.CompositeWire", + + constructor: function(/*Object*/args){ + // summary: + // Initialize properties + // description: + // If object properties or array elements specified in 'children' + // property are not Wires, Wires are created from them as + // arguments, with 'parent' property set to this Wire instance. + // args: + // Arguments to initialize properties. + // + // - children: An object or array containing child Wires + this._initializeChildren(this.children); + }, + _getValue: function(/*Object||Array*/object){ + // summary: + // Return an object with property values or an array with element + // values + // description: + // This method calls getValue() method of the child Wires with + // 'object' argument and returns an object with the values as + // properties or an arary of the values as elements. + // object: + // A root object + // returns: + // An object or array with values + if(!object || !this.children){ + return object; //Object||Array + } + + var value = (dojo.isArray(this.children) ? [] : {}); // array or object + for(var c in this.children){ + value[c] = this.children[c].getValue(object); + } + return value;//Object||Array + }, + + _setValue: function(/*Object||Array*/object, /*Object||Array*/value){ + // summary: + // Set an object properties or an array elements to an object + // description: + // This method calls setValues() method of the child Wires with + // a corresponding property or element in 'value' argument and + // 'object' argument. + // object: + // A root object + // value: + // An object or array with values to set + // returns: + // 'object' + if(!object || !this.children){ + return object; //Object||Array + } + + for(var c in this.children){ + this.children[c].setValue(value[c], object); + } + return object; //Object||Array + }, + + _initializeChildren: function(/*Object||Array*/children){ + // summary: + // Initialize child Wires + // description: + // If object properties or array elements specified in 'children' + // argument are not Wires, Wires are created from them as + // arguments, with 'parent' property set to this Wire instance. + // children: + // An object or array containing child Wires + if(!children){ + return; //undefined + } + + for(var c in children){ + var child = children[c]; + child.parent = this; + if(!dojox.wire.isWire(child)){ + children[c] = dojox.wire.create(child); + } + } + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/DataWire.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/DataWire.js new file mode 100644 index 00000000..87cc05a6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/DataWire.js @@ -0,0 +1,77 @@ +//>>built +define("dojox/wire/DataWire",["dijit","dojo","dojox","dojo/require!dojox/wire/Wire"],function(_1,_2,_3){ +_2.provide("dojox.wire.DataWire"); +_2.require("dojox.wire.Wire"); +_2.declare("dojox.wire.DataWire",_3.wire.Wire,{_wireClass:"dojox.wire.DataWire",constructor:function(_4){ +if(!this.dataStore&&this.parent){ +this.dataStore=this.parent.dataStore; +} +},_getValue:function(_5){ +if(!_5||!this.attribute||!this.dataStore){ +return _5; +} +var _6=_5; +var _7=this.attribute.split("."); +for(var i in _7){ +_6=this._getAttributeValue(_6,_7[i]); +if(!_6){ +return undefined; +} +} +return _6; +},_setValue:function(_8,_9){ +if(!_8||!this.attribute||!this.dataStore){ +return _8; +} +var _a=_8; +var _b=this.attribute.split("."); +var _c=_b.length-1; +for(var i=0;i<_c;i++){ +_a=this._getAttributeValue(_a,_b[i]); +if(!_a){ +return undefined; +} +} +this._setAttributeValue(_a,_b[_c],_9); +return _8; +},_getAttributeValue:function(_d,_e){ +var _f=undefined; +var i1=_e.indexOf("["); +if(i1>=0){ +var i2=_e.indexOf("]"); +var _10=_e.substring(i1+1,i2); +_e=_e.substring(0,i1); +var _11=this.dataStore.getValues(_d,_e); +if(_11){ +if(!_10){ +_f=_11; +}else{ +_f=_11[_10]; +} +} +}else{ +_f=this.dataStore.getValue(_d,_e); +} +return _f; +},_setAttributeValue:function(_12,_13,_14){ +var i1=_13.indexOf("["); +if(i1>=0){ +var i2=_13.indexOf("]"); +var _15=_13.substring(i1+1,i2); +_13=_13.substring(0,i1); +var _16=null; +if(!_15){ +_16=_14; +}else{ +_16=this.dataStore.getValues(_12,_13); +if(!_16){ +_16=[]; +} +_16[_15]=_14; +} +this.dataStore.setValues(_12,_13,_16); +}else{ +this.dataStore.setValue(_12,_13,_14); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/DataWire.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/DataWire.js.uncompressed.js new file mode 100644 index 00000000..a74f56a4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/DataWire.js.uncompressed.js @@ -0,0 +1,178 @@ +// wrapped by build app +define("dojox/wire/DataWire", ["dijit","dojo","dojox","dojo/require!dojox/wire/Wire"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.DataWire"); + +dojo.require("dojox.wire.Wire"); + +dojo.declare("dojox.wire.DataWire", dojox.wire.Wire, { + // summary: + // A Wire for item attributes of data stores + // description: + // This class accesses item attributes of data stores with a dotted + // notation of attribute names specified to 'attribute' property, + // using data APIs of a data store specified to 'dataStore' property. + // The root object for this class must be an item of the data store. + // Intermediate attribute names in the dotted notation specify + // attributes for child items, which are used for repeated calls to + // data APIs until reached to a descendant attribute. + // Attribute names may have an array index, such as "a[0]", to + // identify an array element of the attribute value. + + _wireClass: "dojox.wire.DataWire", + + constructor: function(/*Object*/ args){ + // summary: + // Initialize properties + // description: + // If 'dataStore' property is not specified, but 'parent' property + // is specified, 'dataStore' property is copied from the parent. + // args: + // Arguments to initialize properties: + // + // - dataStore: A data store + // - attribute: A dotted notation to a descendant attribute + if(!this.dataStore && this.parent){ + this.dataStore = this.parent.dataStore; + } + }, + _getValue: function(/*Object*/object){ + // summary: + // Return an attribute value of an item + // description: + // This method uses a root item passed in 'object' argument and + // 'attribute' property to call getValue() method of + // 'dataStore'. + // If an attribute name have an array suffix ("[]"), getValues() + // method is called, instead. + // If an index is specified in the array suffix, an array element + // for the index is returned, instead of the array itself. + // object: + // A root item + // returns: + // A value found, otherwise 'undefined' + if(!object || !this.attribute || !this.dataStore){ + return object; //Object + } + + var value = object; + var list = this.attribute.split('.'); + for(var i in list){ + value = this._getAttributeValue(value, list[i]); + if(!value){ + return undefined; //undefined + } + } + return value; //anything + }, + + _setValue: function(/*Object*/object, /*anything*/value){ + // summary: + // Set an attribute value to an item + // description: + // This method uses a root item passed in 'object' argument and + // 'attribute' property to identify an item. + // Then, setValue() method of 'dataStore' is called with a leaf + // attribute name and 'value' argument. + // If an attribute name have an array suffix ("[]"), setValues() + // method is called, instead. + // If an index is specified in the array suffix, an array element + // for the index is set to 'value', instead of the array itself. + // object: + // A root item + // value: + // A value to set + // returns: + // 'object', or 'undefined' for invalid attribute + if(!object || !this.attribute || !this.dataStore){ + return object; //Object + } + + var item = object; + var list = this.attribute.split('.'); + var last = list.length - 1; + for(var i = 0; i < last; i++){ + item = this._getAttributeValue(item, list[i]); + if(!item){ + return undefined; //undefined + } + } + this._setAttributeValue(item, list[last], value); + return object; //Object + }, + + _getAttributeValue: function(/*Object*/item, /*String*/attribute){ + // summary: + // Return an attribute value of an item + // description: + // This method uses an item passed in 'item' argument and + // 'attribute' argument to call getValue() method of 'dataStore'. + // If an attribute name have an array suffix ("[]"), getValues() + // method is called, instead. + // If an index is specified in the array suffix, an array element + // for the index is returned, instead of the array itself. + // item: + // An item + // attribute: + // An attribute name + // returns: + // A value found, otherwise 'undefined' + var value = undefined; + var i1 = attribute.indexOf('['); + if(i1 >= 0){ + var i2 = attribute.indexOf(']'); + var index = attribute.substring(i1 + 1, i2); + attribute = attribute.substring(0, i1); + var array = this.dataStore.getValues(item, attribute); + if(array){ + if(!index){ // return array for "attribute[]" + value = array; + }else{ + value = array[index]; + } + } + }else{ + value = this.dataStore.getValue(item, attribute); + } + return value; //anything + }, + + _setAttributeValue: function(/*Object*/item, /*String*/attribute, /*anything*/value){ + // summary: + // Set an attribute value to an item + // description: + // This method uses an item passed in 'item' argument and + // 'attribute' argument to call setValue() method of 'dataStore' + // with 'value' argument. + // If an attribute name have an array suffix ("[]"), setValues() + // method is called, instead. + // If an index is specified in the array suffix, an array element + // for the index is set to 'value', instead of the array itself. + // item: + // An item + // attribute: + // An attribute name + // value: + // A value to set + var i1 = attribute.indexOf('['); + if(i1 >= 0){ + var i2 = attribute.indexOf(']'); + var index = attribute.substring(i1 + 1, i2); + attribute = attribute.substring(0, i1); + var array = null; + if(!index){ // replace whole array for "attribute[]" + array = value; + }else{ + array = this.dataStore.getValues(item, attribute); + if(!array){ + array = []; + } + array[index] = value; + } + this.dataStore.setValues(item, attribute, array); + }else{ + this.dataStore.setValue(item, attribute, value); + } + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/README b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/README new file mode 100644 index 00000000..d33edee9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/README @@ -0,0 +1,54 @@ +------------------------------------------------------------------------------- +DojoX Wire +------------------------------------------------------------------------------- +Version 1.0 +Release date: 05/29/2007 +------------------------------------------------------------------------------- +Project state: production +------------------------------------------------------------------------------- +Project authors + Jared Jurkiewicz (jared.jurkiewicz@gmail.com) +------------------------------------------------------------------------------- +Project description + +The DojoX Wire project is a set of functions that build a generic data binding +and service invocation library to simplify how data values across a wide +variety of widget and non-widget JavaScript constructs are accessed, updated, +and passed to and from services. It also provides a set of widgets +within the dojox.wire.ml package to allow for declarative data binding +definitions in addition to the programmatic APIs. + +In essense, this project is an API to provide a simplified way of doing MVC +patterns in the client. + +------------------------------------------------------------------------------- +Dependencies: + +DojoX Wire has dependencies on core dojo, the dijit widget system (for classes +in the dojox.wire.ml package), dojox.data, dojox.xml, and the D.O.H. unit test +framework. +------------------------------------------------------------------------------- +Documentation: + +See the Dojo API tool (http://dojotoolkit.org/api) +------------------------------------------------------------------------------- +Installation instructions + +Grab the following from the Dojo SVN Repository: +http://svn.dojotoolkit.org/var/src/dojo/dojox/trunk/wire.js +http://svn.dojotoolkit.org/var/src/dojo/dojox/trunk/wire/* + +Install into the following directory structure: +/dojox/wire/ + +...which should be at the same level as your Dojo checkout. + +It should look like: +/dojox/wire.js +/dojox/wire/* + +Require in dojox.wire for all baseline functions (dojox.wire.connect, +dojox.wire.register, etc). For specific Wire classes, +require in the appropriate dojox.wire.. +------------------------------------------------------------------------------- + diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TableAdapter.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TableAdapter.js new file mode 100644 index 00000000..78fe34cd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TableAdapter.js @@ -0,0 +1,30 @@ +//>>built +define("dojox/wire/TableAdapter",["dijit","dojo","dojox","dojo/require!dojox/wire/CompositeWire"],function(_1,_2,_3){ +_2.provide("dojox.wire.TableAdapter"); +_2.require("dojox.wire.CompositeWire"); +_2.declare("dojox.wire.TableAdapter",_3.wire.CompositeWire,{_wireClass:"dojox.wire.TableAdapter",constructor:function(_4){ +this._initializeChildren(this.columns); +},_getValue:function(_5){ +if(!_5||!this.columns){ +return _5; +} +var _6=_5; +if(!_2.isArray(_6)){ +_6=[_6]; +} +var _7=[]; +for(var i in _6){ +var _8=this._getRow(_6[i]); +_7.push(_8); +} +return _7; +},_setValue:function(_9,_a){ +throw new Error("Unsupported API: "+this._wireClass+"._setValue"); +},_getRow:function(_b){ +var _c=(_2.isArray(this.columns)?[]:{}); +for(var c in this.columns){ +_c[c]=this.columns[c].getValue(_b); +} +return _c; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TableAdapter.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TableAdapter.js.uncompressed.js new file mode 100644 index 00000000..ffff7028 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TableAdapter.js.uncompressed.js @@ -0,0 +1,88 @@ +// wrapped by build app +define("dojox/wire/TableAdapter", ["dijit","dojo","dojox","dojo/require!dojox/wire/CompositeWire"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.TableAdapter"); + +dojo.require("dojox.wire.CompositeWire"); + +dojo.declare("dojox.wire.TableAdapter", dojox.wire.CompositeWire, { + // summary: + // A composite Wire for table rows + // description: + // This class has multiple child Wires for object properties or array + // elements of a table row. + // The root object for this class must be an array. + // When an object with Wires is specified to 'columns' property, they + // are used to get a row object with property values. + // When an array of Wires is specified to 'columns' property, they + // are used to get a row array with element values. + // The row values are returned in an array. + // This class only supports getValue(), but not setValue(). + + _wireClass: "dojox.wire.TableAdapter", + + constructor: function(/*Object*/ args){ + // summary: + // Initialize properties + // description: + // If object properties or array elements specified in 'columns' + // property are not Wires, Wires are created from them as + // arguments, with 'parent' property set to this Wire instance. + // args: + // Arguments to initialize properties: + // + // - columns: An object or array containing child Wires for column values + this._initializeChildren(this.columns); + }, + + _getValue: function(/*Array*/object){ + // summary: + // Return an array of table row value (object or array) + // description: + // This method iterates over an array specified to 'object' + // argument and calls getValue() method of the child Wires with + // each element of the array to get a row object or array. + // Finally, an array with the row objects or arrays are retuned. + // object: + // A root array + // returns: + // An array of table row value + if(!object || !this.columns){ + return object; //Array + } + + var array = object; + if(!dojo.isArray(array)){ + array = [array]; + } + + var rows = []; + for(var i in array){ + var row = this._getRow(array[i]); + rows.push(row); + } + return rows; //Array + }, + + _setValue: function(/*Array*/object, /*Array*/value){ + // summary: + // Not supported + throw new Error("Unsupported API: " + this._wireClass + "._setValue"); + }, + + _getRow: function(/*Object||Array*/object){ + // summary: + // Return an array or object for a table row + // description: + // This method calls getValue() method of the child Wires to + // create a row object or array. + // returns: + // An array or object for a table row + var row = (dojo.isArray(this.columns) ? [] : {}); // array or object + for(var c in this.columns){ + row[c] = this.columns[c].getValue(object); + } + return row; //Array||Object + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TextAdapter.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TextAdapter.js new file mode 100644 index 00000000..76e3b2b4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TextAdapter.js @@ -0,0 +1,33 @@ +//>>built +define("dojox/wire/TextAdapter",["dijit","dojo","dojox","dojo/require!dojox/wire/CompositeWire"],function(_1,_2,_3){ +_2.provide("dojox.wire.TextAdapter"); +_2.require("dojox.wire.CompositeWire"); +_2.declare("dojox.wire.TextAdapter",_3.wire.CompositeWire,{_wireClass:"dojox.wire.TextAdapter",constructor:function(_4){ +this._initializeChildren(this.segments); +if(!this.delimiter){ +this.delimiter=""; +} +},_getValue:function(_5){ +if(!_5||!this.segments){ +return _5; +} +var _6=""; +for(var i in this.segments){ +var _7=this.segments[i].getValue(_5); +_6=this._addSegment(_6,_7); +} +return _6; +},_setValue:function(_8,_9){ +throw new Error("Unsupported API: "+this._wireClass+"._setValue"); +},_addSegment:function(_a,_b){ +if(!_b){ +return _a; +}else{ +if(!_a){ +return _b; +}else{ +return _a+this.delimiter+_b; +} +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TextAdapter.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TextAdapter.js.uncompressed.js new file mode 100644 index 00000000..551033f8 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TextAdapter.js.uncompressed.js @@ -0,0 +1,87 @@ +// wrapped by build app +define("dojox/wire/TextAdapter", ["dijit","dojo","dojox","dojo/require!dojox/wire/CompositeWire"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.TextAdapter"); + +dojo.require("dojox.wire.CompositeWire"); + +dojo.declare("dojox.wire.TextAdapter", dojox.wire.CompositeWire, { + // summary: + // A composite Wire for a concatenated text + // description: + // This class has multiple child Wires for text segment values. + // Wires in 'segments' property are used to get text segments and + // values are concatenated with an optional delimiter string specified + // to 'delimiter' property. + + _wireClass: "dojox.wire.TextAdapter", + + constructor: function(/*Object*/ args){ + // summary: + // Initialize properties + // description: + // If array elements specified in 'segments' are not Wires, Wires + // are created from them as arguments, with 'parent' property set + // to this Wire instance. + // args: + // Arguments to initialize properties: + // + // - segments: An array containing child Wires for text segment values + // - delimiter: A delimiter string + this._initializeChildren(this.segments); + if(!this.delimiter){ + this.delimiter = ""; + } + }, + + _getValue: function(/*Object||Array*/object){ + // summary: + // Return a concatenated text + // description: + // This method calls getValue() method of the child Wires wuth + // 'object' argument and concatenate the values with 'delimiter' + // property to return. + // arg: + // A root object + // returns: + // A concatinated text + if(!object || !this.segments){ + return object; //Object||Array + } + + var text = ""; + for(var i in this.segments){ + var segment = this.segments[i].getValue(object); + text = this._addSegment(text, segment); + } + return text; //String + }, + + _setValue: function(/*Object||Array*/object, /*String*/value){ + // summary: + // Not supported + throw new Error("Unsupported API: " + this._wireClass + "._setValue"); + }, + + _addSegment: function(/*String*/text, /*String*/segment){ + // summary: + // Return a concatenated text + // description: + // This method add a text segment specified to 'segment' argument + // to a base text specified to 'text', with 'delimiter' property. + // text: + // A base text + // segment: + // A text segment to add + // returns: + // A concatinated text + if(!segment){ + return text; //String + }else if(!text){ + return segment; //String + }else{ + return text + this.delimiter + segment; //String + } + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TreeAdapter.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TreeAdapter.js new file mode 100644 index 00000000..7aafb743 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TreeAdapter.js @@ -0,0 +1,81 @@ +//>>built +define("dojox/wire/TreeAdapter",["dijit","dojo","dojox","dojo/require!dojox/wire/CompositeWire"],function(_1,_2,_3){ +_2.provide("dojox.wire.TreeAdapter"); +_2.require("dojox.wire.CompositeWire"); +_2.declare("dojox.wire.TreeAdapter",_3.wire.CompositeWire,{_wireClass:"dojox.wire.TreeAdapter",constructor:function(_4){ +this._initializeChildren(this.nodes); +},_getValue:function(_5){ +if(!_5||!this.nodes){ +return _5; +} +var _6=_5; +if(!_2.isArray(_6)){ +_6=[_6]; +} +var _7=[]; +for(var i in _6){ +for(var i2 in this.nodes){ +_7=_7.concat(this._getNodes(_6[i],this.nodes[i2])); +} +} +return _7; +},_setValue:function(_8,_9){ +throw new Error("Unsupported API: "+this._wireClass+"._setValue"); +},_initializeChildren:function(_a){ +if(!_a){ +return; +} +for(var i in _a){ +var _b=_a[i]; +if(_b.node){ +_b.node.parent=this; +if(!_3.wire.isWire(_b.node)){ +_b.node=_3.wire.create(_b.node); +} +} +if(_b.title){ +_b.title.parent=this; +if(!_3.wire.isWire(_b.title)){ +_b.title=_3.wire.create(_b.title); +} +} +if(_b.children){ +this._initializeChildren(_b.children); +} +} +},_getNodes:function(_c,_d){ +var _e=null; +if(_d.node){ +_e=_d.node.getValue(_c); +if(!_e){ +return []; +} +if(!_2.isArray(_e)){ +_e=[_e]; +} +}else{ +_e=[_c]; +} +var _f=[]; +for(var i in _e){ +_c=_e[i]; +var _10={}; +if(_d.title){ +_10.title=_d.title.getValue(_c); +}else{ +_10.title=_c; +} +if(_d.children){ +var _11=[]; +for(var i2 in _d.children){ +_11=_11.concat(this._getNodes(_c,_d.children[i2])); +} +if(_11.length>0){ +_10.children=_11; +} +} +_f.push(_10); +} +return _f; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TreeAdapter.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TreeAdapter.js.uncompressed.js new file mode 100644 index 00000000..26575966 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/TreeAdapter.js.uncompressed.js @@ -0,0 +1,188 @@ +// wrapped by build app +define("dojox/wire/TreeAdapter", ["dijit","dojo","dojox","dojo/require!dojox/wire/CompositeWire"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.TreeAdapter"); + +dojo.require("dojox.wire.CompositeWire"); + +dojo.declare("dojox.wire.TreeAdapter", dojox.wire.CompositeWire, { + // summary: + // A composite Wire for tree nodes + // description: + // This class has multiple child Wires for tree nodes, their title and + // child nodes. + // The root object for this class must be an array. + // 'node' Wires in 'nodes' property is used to identify an object + // representing a node. + // 'title' Wires in 'nodes' property is used to get the title string + // of a node. + // 'children' Wires in 'nodes' property is used to iterate over child + // node objects. + // The node values are returned in an array as follows: + // | [ + // | {title: title1, + // | children: [ + // | {title: title2, + // | child: ...}, + // | {title: title3, + // | child: ...}, + // | ... + // | ]}, + // | ... + // | ] + // This class only supports getValue(), but not setValue(). + + _wireClass: "dojox.wire.TreeAdapter", + + constructor: function(/*Object*/ args){ + // summary: + // Initialize properties + // description: + // If object properties ('node', 'title' and 'children') of array + // elements specified in 'nodes' property are not Wires, Wires are + // created from them as arguments, with 'parent' property set to + // this Wire instance. + // args: + // Arguments to initialize properties: + // + // - nodes: An array containing objects for child Wires for node values + this._initializeChildren(this.nodes); + }, + _getValue: function(/*Array*/object){ + // summary: + // Return an array of tree node values + // description: + // This method iterates over an array specified to 'object' + // argument and calls getValue() method of 'node' Wires with each + // element of the array to get object(s) that represents nodes. + // (If 'node' Wires are omitted, the array element is used for + // further processing.) + // Then, getValue() method of 'title' Wires are called to get + // title strings for nodes. + // (If 'title' Wires are omitted, the objects representing nodes + // are used as title strings.) + // And if an array of objects with 'node' and 'title' Wires is + // specified to 'children', it is used to gather child nodes and + // their title strings in the same way recursively. + // Finally, an array of the top-level node objects are retuned. + // object: + // A root array + // returns: + // An array of tree node values + if(!object || !this.nodes){ + return object; //Array + } + + var array = object; + if(!dojo.isArray(array)){ + array = [array]; + } + + var nodes = []; + for(var i in array){ + for(var i2 in this.nodes){ + nodes = nodes.concat(this._getNodes(array[i], this.nodes[i2])); + } + } + return nodes; //Array + }, + + _setValue: function(/*Array*/object, /*Array*/value){ + // summary: + // Not supported + throw new Error("Unsupported API: " + this._wireClass + "._setValue"); + }, + + _initializeChildren: function(/*Array*/children){ + // summary: + // Initialize child Wires + // description: + // If 'node' or 'title' properties of array elements specified in + // 'children' argument are not Wires, Wires are created from them + // as arguments, with 'parent' property set to this Wire instance. + // If an array element has 'children' property, this method is + // called recursively with it. + // children: + // An array of objects containing child Wires + if(!children){ + return; //undefined + } + + for(var i in children){ + var child = children[i]; + if(child.node){ + child.node.parent = this; + if(!dojox.wire.isWire(child.node)){ + child.node = dojox.wire.create(child.node); + } + } + if(child.title){ + child.title.parent = this; + if(!dojox.wire.isWire(child.title)){ + child.title = dojox.wire.create(child.title); + } + } + if(child.children){ + this._initializeChildren(child.children); + } + } + }, + + _getNodes: function(/*Object*/object, /*Object*/child){ + // summary: + // Return an array of tree node values + // description: + // This method calls getValue() method of 'node' Wires with + // 'object' argument to get object(s) that represents nodes. + // (If 'node' Wires are omitted, 'object' is used for further + // processing.) + // Then, getValue() method of 'title' Wires are called to get + // title strings for nodes. + // (If 'title' Wires are omitted, the objects representing nodes + // are used as title strings.) + // And if an array of objects with 'node' and 'title' Wires is + // specified to 'children', it is used to gather child nodes and + // their title strings in the same way recursively. + // Finally, an array of node objects are returned. + // object: + // An object + // child: + // An object with child Wires + // returns: + var array = null; + if(child.node){ + array = child.node.getValue(object); + if(!array){ + return []; + } + if(!dojo.isArray(array)){ + array = [array]; + } + }else{ + array = [object]; + } + + var nodes = []; + for(var i in array){ + object = array[i]; + var node = {}; + if(child.title){ + node.title = child.title.getValue(object); + }else{ + node.title = object; + } + if(child.children){ + var children = []; + for(var i2 in child.children){ + children = children.concat(this._getNodes(object, child.children[i2])); + } + if(children.length > 0){ + node.children = children; + } + } + nodes.push(node); + } + return nodes; //Array + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/Wire.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/Wire.js new file mode 100644 index 00000000..9618aca0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/Wire.js @@ -0,0 +1,244 @@ +//>>built +define("dojox/wire/Wire",["dijit","dojo","dojox","dojo/require!dojox/wire/_base"],function(_1,_2,_3){ +_2.provide("dojox.wire.Wire"); +_2.require("dojox.wire._base"); +_2.declare("dojox.wire.Wire",null,{_wireClass:"dojox.wire.Wire",constructor:function(_4){ +_2.mixin(this,_4); +if(this.converter){ +if(_2.isString(this.converter)){ +var _5=_2.getObject(this.converter); +if(_2.isFunction(_5)){ +try{ +var _6=new _5(); +if(_6&&!_2.isFunction(_6["convert"])){ +this.converter={convert:_5}; +}else{ +this.converter=_6; +} +} +catch(e){ +} +}else{ +if(_2.isObject(_5)){ +if(_2.isFunction(_5["convert"])){ +this.converter=_5; +} +} +} +if(_2.isString(this.converter)){ +var _7=_3.wire._getClass(this.converter); +if(_7){ +this.converter=new _7(); +}else{ +this.converter=undefined; +} +} +}else{ +if(_2.isFunction(this.converter)){ +this.converter={convert:this.converter}; +} +} +} +},getValue:function(_8){ +var _9=undefined; +if(_3.wire.isWire(this.object)){ +_9=this.object.getValue(_8); +}else{ +_9=(this.object||_8); +} +if(this.property){ +var _a=this.property.split("."); +for(var i in _a){ +if(!_9){ +return _9; +} +_9=this._getPropertyValue(_9,_a[i]); +} +} +var _b=undefined; +if(this._getValue){ +_b=this._getValue(_9); +}else{ +_b=_9; +} +if(_b){ +if(this.type){ +if(this.type=="string"){ +_b=_b.toString(); +}else{ +if(this.type=="number"){ +_b=parseInt(_b,10); +}else{ +if(this.type=="boolean"){ +_b=(_b!="false"); +}else{ +if(this.type=="array"){ +if(!_2.isArray(_b)){ +_b=[_b]; +} +} +} +} +} +} +if(this.converter&&this.converter.convert){ +_b=this.converter.convert(_b,this); +} +} +return _b; +},setValue:function(_c,_d){ +var _e=undefined; +if(_3.wire.isWire(this.object)){ +_e=this.object.getValue(_d); +}else{ +_e=(this.object||_d); +} +var _f=undefined; +var o; +if(this.property){ +if(!_e){ +if(_3.wire.isWire(this.object)){ +_e={}; +this.object.setValue(_e,_d); +}else{ +throw new Error(this._wireClass+".setValue(): invalid object"); +} +} +var _10=this.property.split("."); +var _11=_10.length-1; +for(var i=0;i<_11;i++){ +var p=_10[i]; +o=this._getPropertyValue(_e,p); +if(!o){ +o={}; +this._setPropertyValue(_e,p,o); +} +_e=o; +} +_f=_10[_11]; +} +if(this._setValue){ +if(_f){ +o=this._getPropertyValue(_e,_f); +if(!o){ +o={}; +this._setPropertyValue(_e,_f,o); +} +_e=o; +} +var _12=this._setValue(_e,_c); +if(!_e&&_12){ +if(_3.wire.isWire(this.object)){ +this.object.setValue(_12,_d); +}else{ +throw new Error(this._wireClass+".setValue(): invalid object"); +} +} +}else{ +if(_f){ +this._setPropertyValue(_e,_f,_c); +}else{ +if(_3.wire.isWire(this.object)){ +this.object.setValue(_c,_d); +}else{ +throw new Error(this._wireClass+".setValue(): invalid property"); +} +} +} +},_getPropertyValue:function(_13,_14){ +var _15=undefined; +var i1=_14.indexOf("["); +if(i1>=0){ +var i2=_14.indexOf("]"); +var _16=_14.substring(i1+1,i2); +var _17=null; +if(i1===0){ +_17=_13; +}else{ +_14=_14.substring(0,i1); +_17=this._getPropertyValue(_13,_14); +if(_17&&!_2.isArray(_17)){ +_17=[_17]; +} +} +if(_17){ +_15=_17[_16]; +} +}else{ +if(_13.getPropertyValue){ +_15=_13.getPropertyValue(_14); +}else{ +var _18="get"+_14.charAt(0).toUpperCase()+_14.substring(1); +if(this._useGet(_13)){ +_15=_13.get(_14); +}else{ +if(this._useAttr(_13)){ +_15=_13.attr(_14); +}else{ +if(_13[_18]){ +_15=_13[_18](); +}else{ +_15=_13[_14]; +} +} +} +} +} +return _15; +},_setPropertyValue:function(_19,_1a,_1b){ +var i1=_1a.indexOf("["); +if(i1>=0){ +var i2=_1a.indexOf("]"); +var _1c=_1a.substring(i1+1,i2); +var _1d=null; +if(i1===0){ +_1d=_19; +}else{ +_1a=_1a.substring(0,i1); +_1d=this._getPropertyValue(_19,_1a); +if(!_1d){ +_1d=[]; +this._setPropertyValue(_19,_1a,_1d); +} +} +_1d[_1c]=_1b; +}else{ +if(_19.setPropertyValue){ +_19.setPropertyValue(_1a,_1b); +}else{ +var _1e="set"+_1a.charAt(0).toUpperCase()+_1a.substring(1); +if(this._useSet(_19)){ +_19.set(_1a,_1b); +}else{ +if(this._useAttr(_19)){ +_19.attr(_1a,_1b); +}else{ +if(_19[_1e]){ +_19[_1e](_1b); +}else{ +_19[_1a]=_1b; +} +} +} +} +} +},_useGet:function(_1f){ +var _20=false; +if(_2.isFunction(_1f.get)){ +_20=true; +} +return _20; +},_useSet:function(_21){ +var _22=false; +if(_2.isFunction(_21.set)){ +_22=true; +} +return _22; +},_useAttr:function(_23){ +var _24=false; +if(_2.isFunction(_23.attr)){ +_24=true; +} +return _24; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/Wire.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/Wire.js.uncompressed.js new file mode 100644 index 00000000..83d9a948 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/Wire.js.uncompressed.js @@ -0,0 +1,382 @@ +// wrapped by build app +define("dojox/wire/Wire", ["dijit","dojo","dojox","dojo/require!dojox/wire/_base"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.Wire"); + +dojo.require("dojox.wire._base"); + +dojo.declare("dojox.wire.Wire", null, { + // summary: + // A default and base Wire to access an object property + // description: + // This class accesses a property of an object with a dotted notation + // specified to 'property' property, such as "a.b.c", which identifies + // a descendant property, "object.a.b.c". + // Property names in the dotted notation may have an array index, such + // as "a[0]", to identify an array element, literally, "object.a[0]". + // When a notation start with an array index, such as "[0].a", it + // specifies an array element of the root object (array), + // "object[0].a". + // This class also serves as a base class for other Wire classes, + // preparing a root object and converting a return value, so that + // sub-classes just can implement _getValue() and _setValue() called + // from getValue() and setValue() implemented by this calss. + + _wireClass: "dojox.wire.Wire", + + constructor: function(/*Object*/args){ + // summary: + // Initialize properties + // description: + // If 'converter' property is specified and is a string for + // a converter class, an instanceof the converter class is + // created. + // args: + // Arguments to initialize properties: + // + // - object: A root object (or another Wire to access a root object) + // - property: A dotted notation to a descendant property + // - type: A type of the return value (for the source Wire) + // - converter: A converter object (or class name) to convert the return + // value (for the source Wire) + dojo.mixin(this, args); + + if(this.converter){ + if(dojo.isString(this.converter)){ + //First check the object tree for it. Might be defined variable + //name/global function (like a jsId, or just a function name). + var convertObject = dojo.getObject(this.converter); + if(dojo.isFunction(convertObject)){ + //We need to see if this is a pure function or an object constructor... + try{ + var testObj = new convertObject(); + if(testObj && !dojo.isFunction(testObj["convert"])){ + //Looks like a 'pure' function... + this.converter = {convert: convertObject}; + }else{ + this.converter = testObj; + } + }catch(e){ + //Do if this fails. + } + }else if(dojo.isObject(convertObject)){ + //It's an object, like a jsId ... see if it has a convert function + if(dojo.isFunction(convertObject["convert"])){ + this.converter = convertObject; + } + } + + //No object with that name (Converter is still a string), + //then look for a class that needs to be dynamically loaded... + if(dojo.isString(this.converter)){ + var converterClass = dojox.wire._getClass(this.converter); + if(converterClass){ + this.converter = new converterClass(); + }else{ + this.converter = undefined; + } + } + }else if(dojo.isFunction(this.converter)){ + this.converter = {convert: this.converter}; + } + } + }, + + getValue: function(/*Object||Array*/defaultObject){ + // summary: + // Return a value of an object + // description: + // This method first determines a root object as follows: + // + // 1. If 'object' property specified, + // 1.1 If 'object' is a Wire, its getValue() method is called to + // obtain a root object. + // 1.2 Otherwise, use 'object' as a root object. + // 2. Otherwise, use 'defaultObject' argument. + // 3. If 'property' is specified, it is used to get a property + // value. + // + // Then, if a sub-class implements _getValue() method, it is + // called with the root object to get the return value. + // Otherwise, the root object (typically, a property valye) is + // used for the return value. + // Finally, if 'type' property is specified, the return value is + // converted to the specified primitive type ("string", "number", + // "boolean" and "array"). + // If 'converter' property is specified, its convert() method is + // called to convert the value. + // defaultObject: + // A default root object + // returns: + // A value found + var object = undefined; + if(dojox.wire.isWire(this.object)){ + object = this.object.getValue(defaultObject); + }else{ + object = (this.object || defaultObject); + } + + if(this.property){ + var list = this.property.split('.'); + for(var i in list){ + if(!object){ + return object; //anything (null, undefined, etc) + } + object = this._getPropertyValue(object, list[i]); + } + } + + var value = undefined; + if(this._getValue){ + value = this._getValue(object); + }else{ + value = object; + } + + if(value){ + if(this.type){ + if(this.type == "string"){ + value = value.toString(); + }else if(this.type == "number"){ + value = parseInt(value, 10); + }else if(this.type == "boolean"){ + value = (value != "false"); + }else if(this.type == "array"){ + if(!dojo.isArray(value)){ + value = [value]; + } + } + } + if(this.converter && this.converter.convert){ + value = this.converter.convert(value, this); // optional "this" context + } + } + return value; //anything + }, + + setValue: function(/*anything*/value, /*Object||Array*/defaultObject){ + // summary: + // Set a value to an object + // description: + // This method first determines a root object as follows: + // + // 1. If 'object' property specified, + // 1.1 If 'object' is a Wire, its getValue() method is called to + // obtain a root object. + // 1.2 Otherwise, use 'object' as a root object. + // 2. Otherwise, use 'defaultObject' argument. + // 3. If 'property' is specified, it is used to get a property + // value. + // + // Then, if a sub-class implements _setValue() method, it is + // called with the root object and 'value' argument to set + // the value. + // Otherwise, 'value' is set to a property specified with + // 'property' property. + // If the root object is undefined and 'object' property is a Wire + // and a new object is created and returned by _setValue() it is + // set through 'object' (setValue() method). + // value: + // A value to set + // defaultObject: + // A default root object + var object = undefined; + if(dojox.wire.isWire(this.object)){ + object = this.object.getValue(defaultObject); + }else{ + object = (this.object || defaultObject); + } + + var property = undefined; + var o; + if(this.property){ + if(!object){ + if(dojox.wire.isWire(this.object)){ + object = {}; + this.object.setValue(object, defaultObject); + }else{ + throw new Error(this._wireClass + ".setValue(): invalid object"); + } + } + var list = this.property.split('.'); + var last = list.length - 1; + for(var i = 0; i < last; i++){ + var p = list[i]; + o = this._getPropertyValue(object, p); + if(!o){ + o = {}; + this._setPropertyValue(object, p, o); + } + object = o; + } + property = list[last]; + } + + if(this._setValue){ + if(property){ + o = this._getPropertyValue(object, property); + if(!o){ + o = {}; + this._setPropertyValue(object, property, o); + } + object = o; + } + var newObject = this._setValue(object, value); + if(!object && newObject){ + if(dojox.wire.isWire(this.object)){ + this.object.setValue(newObject, defaultObject); + }else{ + throw new Error(this._wireClass + ".setValue(): invalid object"); + } + } + }else{ + if(property){ + this._setPropertyValue(object, property, value); + }else{ + if(dojox.wire.isWire(this.object)){ + this.object.setValue(value, defaultObject); + }else{ + throw new Error(this._wireClass + ".setValue(): invalid property"); + } + } + } + }, + + _getPropertyValue: function(/*Object||Array*/object, /*String*/property){ + // summary: + // Return a property value of an object + // description: + // A value for 'property' of 'object' is returned. + // If 'property' ends with an array index, it is used to indentify + // an element of an array property. + // If 'object' implements getPropertyValue(), it is called with + // 'property' to obtain the property value. + // If 'object' implements a getter for the property, it is called + // to obtain the property value. + // object: + // A default root object + // property: + // A property name + // returns: + // A value found, otherwise 'undefined' + var value = undefined; + var i1 = property.indexOf('['); + if(i1 >= 0){ + var i2 = property.indexOf(']'); + var index = property.substring(i1 + 1, i2); + var array = null; + if(i1 === 0){ // object is array + array = object; + }else{ + property = property.substring(0, i1); + array = this._getPropertyValue(object, property); + if(array && !dojo.isArray(array)){ + array = [array]; + } + } + if(array){ + value = array[index]; + } + }else if(object.getPropertyValue){ + value = object.getPropertyValue(property); + }else{ + var getter = "get" + property.charAt(0).toUpperCase() + property.substring(1); + if(this._useGet(object)){ + value = object.get(property); + }else if(this._useAttr(object)){ + value = object.attr(property); + } else if(object[getter]){ + value = object[getter](); + }else{ + value = object[property]; + } + } + return value; //anything + }, + + _setPropertyValue: function(/*Object||Array*/object, /*String*/property, /*anything*/value){ + // summary: + // Set a property value to an object + // description: + // 'value' is set to 'property' of 'object'. + // If 'property' ends with an array index, it is used to indentify + // an element of an array property to set the value. + // If 'object' implements setPropertyValue(), it is called with + // 'property' and 'value' to set the property value. + // If 'object' implements a setter for the property, it is called + // with 'value' to set the property value. + // object: + // An object + // property: + // A property name + // value: + // A value to set + var i1 = property.indexOf('['); + if(i1 >= 0){ + var i2 = property.indexOf(']'); + var index = property.substring(i1 + 1, i2); + var array = null; + if(i1 === 0){ // object is array + array = object; + }else{ + property = property.substring(0, i1); + array = this._getPropertyValue(object, property); + if(!array){ + array = []; + this._setPropertyValue(object, property, array); + } + } + array[index] = value; + }else if(object.setPropertyValue){ + object.setPropertyValue(property, value); + }else{ + var setter = "set" + property.charAt(0).toUpperCase() + property.substring(1); + if(this._useSet(object)){ + object.set(property, value); + }else if(this._useAttr(object)){ + object.attr(property, value); + }else if(object[setter]){ + object[setter](value); + }else{ + object[property] = value; + } + } + }, + + _useGet: function(object){ + // summary: + // Function to detect if dijit.get support exists on the target + // object: + // The target object to set the property of. + var useGet = false; + if(dojo.isFunction(object.get)){ + useGet = true; + } + return useGet; + }, + + _useSet: function(object){ + // summary: + // Function to detect if dijit.set support exists on the target + // object: + // The target object to set the property of. + var useSet = false; + if(dojo.isFunction(object.set)){ + useSet = true; + } + return useSet; + }, + + _useAttr: function(object){ + // summary: + // Function to detect if dijit.attr support exists on the target + // object: + // The target object to set the property of. + var useAttr = false; + if(dojo.isFunction(object.attr)){ + useAttr = true; + } + return useAttr; + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/XmlWire.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/XmlWire.js new file mode 100644 index 00000000..47ebb3b1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/XmlWire.js @@ -0,0 +1,128 @@ +//>>built +define("dojox/wire/XmlWire",["dijit","dojo","dojox","dojo/require!dojox/xml/parser,dojox/wire/Wire"],function(_1,_2,_3){ +_2.provide("dojox.wire.XmlWire"); +_2.require("dojox.xml.parser"); +_2.require("dojox.wire.Wire"); +_2.declare("dojox.wire.XmlWire",_3.wire.Wire,{_wireClass:"dojox.wire.XmlWire",constructor:function(_4){ +},_getValue:function(_5){ +if(!_5||!this.path){ +return _5; +} +var _6=_5; +var _7=this.path; +var i; +if(_7.charAt(0)=="/"){ +i=_7.indexOf("/",1); +_7=_7.substring(i+1); +} +var _8=_7.split("/"); +var _9=_8.length-1; +for(i=0;i<_9;i++){ +_6=this._getChildNode(_6,_8[i]); +if(!_6){ +return undefined; +} +} +var _a=this._getNodeValue(_6,_8[_9]); +return _a; +},_setValue:function(_b,_c){ +if(!this.path){ +return _b; +} +var _d=_b; +var _e=this._getDocument(_d); +var _f=this.path; +var i; +if(_f.charAt(0)=="/"){ +i=_f.indexOf("/",1); +if(!_d){ +var _10=_f.substring(1,i); +_d=_e.createElement(_10); +_b=_d; +} +_f=_f.substring(i+1); +}else{ +if(!_d){ +return undefined; +} +} +var _11=_f.split("/"); +var _12=_11.length-1; +for(i=0;i<_12;i++){ +var _13=this._getChildNode(_d,_11[i]); +if(!_13){ +_13=_e.createElement(_11[i]); +_d.appendChild(_13); +} +_d=_13; +} +this._setNodeValue(_d,_11[_12],_c); +return _b; +},_getNodeValue:function(_14,exp){ +var _15=undefined; +if(exp.charAt(0)=="@"){ +var _16=exp.substring(1); +_15=_14.getAttribute(_16); +}else{ +if(exp=="text()"){ +var _17=_14.firstChild; +if(_17){ +_15=_17.nodeValue; +} +}else{ +_15=[]; +for(var i=0;i<_14.childNodes.length;i++){ +var _18=_14.childNodes[i]; +if(_18.nodeType===1&&_18.nodeName==exp){ +_15.push(_18); +} +} +} +} +return _15; +},_setNodeValue:function(_19,exp,_1a){ +if(exp.charAt(0)=="@"){ +var _1b=exp.substring(1); +if(_1a){ +_19.setAttribute(_1b,_1a); +}else{ +_19.removeAttribute(_1b); +} +}else{ +if(exp=="text()"){ +while(_19.firstChild){ +_19.removeChild(_19.firstChild); +} +if(_1a){ +var _1c=this._getDocument(_19).createTextNode(_1a); +_19.appendChild(_1c); +} +} +} +},_getChildNode:function(_1d,_1e){ +var _1f=1; +var i1=_1e.indexOf("["); +if(i1>=0){ +var i2=_1e.indexOf("]"); +_1f=_1e.substring(i1+1,i2); +_1e=_1e.substring(0,i1); +} +var _20=1; +for(var i=0;i<_1d.childNodes.length;i++){ +var _21=_1d.childNodes[i]; +if(_21.nodeType===1&&_21.nodeName==_1e){ +if(_20==_1f){ +return _21; +} +_20++; +} +} +return null; +},_getDocument:function(_22){ +if(_22){ +return (_22.nodeType==9?_22:_22.ownerDocument); +}else{ +return _3.xml.parser.parse(); +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/XmlWire.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/XmlWire.js.uncompressed.js new file mode 100644 index 00000000..6b6adcb7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/XmlWire.js.uncompressed.js @@ -0,0 +1,246 @@ +// wrapped by build app +define("dojox/wire/XmlWire", ["dijit","dojo","dojox","dojo/require!dojox/xml/parser,dojox/wire/Wire"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.XmlWire"); + +dojo.require("dojox.xml.parser"); +dojo.require("dojox.wire.Wire"); + +dojo.declare("dojox.wire.XmlWire", dojox.wire.Wire, { + // summary: + // A Wire for XML nodes or values (element, attribute and text) + // description: + // This class accesses XML nodes or value with a simplified XPath + // specified to 'path' property. + // The root object for this class must be an DOM document or element + // node. + // "@name" accesses to an attribute value of an element and "text()" + // accesses to a text value of an element. + // The hierarchy of the elements from the root node can be specified + // with slash-separated list, such as "a/b/@c", which specifies + // the value of an attribute named "c" of an element named "b" as + // a child of another element named "a" of a child of the root node. + + _wireClass: "dojox.wire.XmlWire", + + constructor: function(/*Object*/args){ + // summary: + // Initialize properties + // description: + // 'args' is just mixed in with no further processing. + // args: + // Arguments to initialize properties: + // + // - path: A simplified XPath to an attribute, a text or elements + }, + _getValue: function(/*Node*/object){ + // summary: + // Return an attribute value, a text value or an array of elements + // description: + // This method first uses a root node passed in 'object' argument + // and 'path' property to identify an attribute, a text or + // elements. + // If 'path' starts with a slash (absolute), the first path + // segment is ignored assuming it point to the root node. + // (That is, "/a/b/@c" and "b/@c" against a root node access + // the same attribute value, assuming the root node is an element + // with a tag name, "a".) + // object: + // A root node + // returns: + // A value found, otherwise 'undefined' + if(!object || !this.path){ + return object; //Node + } + + var node = object; + var path = this.path; + var i; + if(path.charAt(0) == '/'){ // absolute + // skip the first expression (supposed to select the top node) + i = path.indexOf('/', 1); + path = path.substring(i + 1); + } + var list = path.split('/'); + var last = list.length - 1; + for(i = 0; i < last; i++){ + node = this._getChildNode(node, list[i]); + if(!node){ + return undefined; //undefined + } + } + var value = this._getNodeValue(node, list[last]); + return value; //String||Array + }, + + _setValue: function(/*Node*/object, /*String*/value){ + // summary: + // Set an attribute value or a child text value to an element + // description: + // This method first uses a root node passed in 'object' argument + // and 'path' property to identify an attribute, a text or + // elements. + // If an intermediate element does not exist, it creates + // an element of the tag name in the 'path' segment as a child + // node of the current node. + // Finally, 'value' argument is set to an attribute or a text + // (a child node) of the leaf element. + // object: + // A root node + // value: + // A value to set + if(!this.path){ + return object; //Node + } + + var node = object; + var doc = this._getDocument(node); + var path = this.path; + var i; + if(path.charAt(0) == '/'){ // absolute + i = path.indexOf('/', 1); + if(!node){ + var name = path.substring(1, i); + node = doc.createElement(name); + object = node; // to be returned as a new object + } + // skip the first expression (supposed to select the top node) + path = path.substring(i + 1); + }else{ + if(!node){ + return undefined; //undefined + } + } + + var list = path.split('/'); + var last = list.length - 1; + for(i = 0; i < last; i++){ + var child = this._getChildNode(node, list[i]); + if(!child){ + child = doc.createElement(list[i]); + node.appendChild(child); + } + node = child; + } + this._setNodeValue(node, list[last], value); + return object; //Node + }, + + _getNodeValue: function(/*Node*/node, /*String*/exp){ + // summary: + // Return an attribute value, a text value or an array of elements + // description: + // If 'exp' starts with '@', an attribute value of the specified + // attribute is returned. + // If 'exp' is "text()", a child text value is returned. + // Otherwise, an array of child elements, the tag name of which + // match 'exp', is returned. + // node: + // A node + // exp: + // An expression for attribute, text or elements + // returns: + // A value found, otherwise 'undefined' + var value = undefined; + if(exp.charAt(0) == '@'){ + var attribute = exp.substring(1); + value = node.getAttribute(attribute); + }else if(exp == "text()"){ + var text = node.firstChild; + if(text){ + value = text.nodeValue; + } + }else{ // assume elements + value = []; + for(var i = 0; i < node.childNodes.length; i++){ + var child = node.childNodes[i]; + if(child.nodeType === 1 /* ELEMENT_NODE */ && child.nodeName == exp){ + value.push(child); + } + } + } + return value; //String||Array + }, + + _setNodeValue: function(/*Node*/node, /*String*/exp, /*String*/value){ + // summary: + // Set an attribute value or a child text value to an element + // description: + // If 'exp' starts with '@', 'value' is set to the specified + // attribute. + // If 'exp' is "text()", 'value' is set to a child text. + // node: + // A node + // exp: + // An expression for attribute or text + // value: + // A value to set + if(exp.charAt(0) == '@'){ + var attribute = exp.substring(1); + if(value){ + node.setAttribute(attribute, value); + }else{ + node.removeAttribute(attribute); + } + }else if(exp == "text()"){ + while(node.firstChild){ + node.removeChild(node.firstChild); + } + if(value){ + var text = this._getDocument(node).createTextNode(value); + node.appendChild(text); + } + } + // else not supported + }, + + _getChildNode: function(/*Node*/node, /*String*/name){ + // summary: + // Return a child node + // description: + // A child element of the tag name specified with 'name' is + // returned. + // If 'name' ends with an array index, it is used to pick up + // the corresponding element from multiple child elements. + // node: + // A parent node + // name: + // A tag name + // returns: + // A child node + var index = 1; + var i1 = name.indexOf('['); + if(i1 >= 0){ + var i2 = name.indexOf(']'); + index = name.substring(i1 + 1, i2); + name = name.substring(0, i1); + } + var count = 1; + for(var i = 0; i < node.childNodes.length; i++){ + var child = node.childNodes[i]; + if(child.nodeType === 1 /* ELEMENT_NODE */ && child.nodeName == name){ + if(count == index){ + return child; //Node + } + count++; + } + } + return null; //null + }, + + _getDocument: function(/*Node*/node){ + // summary: + // Return a DOM document + // description: + // If 'node' is specified, a DOM document of the node is returned. + // Otherwise, a DOM document is created. + // returns: + // A DOM document + if(node){ + return (node.nodeType == 9 /* DOCUMENT_NODE */ ? node : node.ownerDocument); //Document + }else{ + return dojox.xml.parser.parse(); //Document + } + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/_base.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/_base.js new file mode 100644 index 00000000..4da29344 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/_base.js @@ -0,0 +1,95 @@ +//>>built +define("dojox/wire/_base",["dijit","dojo","dojox"],function(_1,_2,_3){ +_2.provide("dojox.wire._base"); +_3.wire._defaultWireClass="dojox.wire.Wire"; +_3.wire._wireClasses={"attribute":"dojox.wire.DataWire","path":"dojox.wire.XmlWire","children":"dojox.wire.CompositeWire","columns":"dojox.wire.TableAdapter","nodes":"dojox.wire.TreeAdapter","segments":"dojox.wire.TextAdapter"}; +_3.wire.register=function(_4,_5){ +if(!_4||!_5){ +return; +} +if(_3.wire._wireClasses[_5]){ +return; +} +_3.wire._wireClasses[_5]=_4; +}; +_3.wire._getClass=function(_6){ +_2["require"](_6); +return _2.getObject(_6); +}; +_3.wire.create=function(_7){ +if(!_7){ +_7={}; +} +var _8=_7.wireClass; +if(_8){ +if(_2.isString(_8)){ +_8=_3.wire._getClass(_8); +} +}else{ +for(var _9 in _7){ +if(!_7[_9]){ +continue; +} +_8=_3.wire._wireClasses[_9]; +if(_8){ +if(_2.isString(_8)){ +_8=_3.wire._getClass(_8); +_3.wire._wireClasses[_9]=_8; +} +break; +} +} +} +if(!_8){ +if(_2.isString(_3.wire._defaultWireClass)){ +_3.wire._defaultWireClass=_3.wire._getClass(_3.wire._defaultWireClass); +} +_8=_3.wire._defaultWireClass; +} +return new _8(_7); +}; +_3.wire.isWire=function(_a){ +return (_a&&_a._wireClass); +}; +_3.wire.transfer=function(_b,_c,_d,_e){ +if(!_b||!_c){ +return; +} +if(!_3.wire.isWire(_b)){ +_b=_3.wire.create(_b); +} +if(!_3.wire.isWire(_c)){ +_c=_3.wire.create(_c); +} +var _f=_b.getValue(_d); +_c.setValue(_f,(_e||_d)); +}; +_3.wire.connect=function(_10,_11,_12){ +if(!_10||!_11||!_12){ +return; +} +var _13={topic:_10.topic}; +if(_10.topic){ +_13.handle=_2.subscribe(_10.topic,function(){ +_3.wire.transfer(_11,_12,arguments); +}); +}else{ +if(_10.event){ +_13.handle=_2.connect(_10.scope,_10.event,function(){ +_3.wire.transfer(_11,_12,arguments); +}); +} +} +return _13; +}; +_3.wire.disconnect=function(_14){ +if(!_14||!_14.handle){ +return; +} +if(_14.topic){ +_2.unsubscribe(_14.handle); +}else{ +_2.disconnect(_14.handle); +} +}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/_base.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/_base.js.uncompressed.js new file mode 100644 index 00000000..42ae301a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/_base.js.uncompressed.js @@ -0,0 +1,196 @@ +// wrapped by build app +define("dojox/wire/_base", ["dijit","dojo","dojox"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire._base"); + +dojox.wire._defaultWireClass = "dojox.wire.Wire"; + +dojox.wire._wireClasses = { + "attribute": "dojox.wire.DataWire", + "path": "dojox.wire.XmlWire", + "children": "dojox.wire.CompositeWire", + "columns": "dojox.wire.TableAdapter", + "nodes": "dojox.wire.TreeAdapter", + "segments": "dojox.wire.TextAdapter" +}; + +dojox.wire.register = function(/*Function||String*/wireClass, /*String*/key){ + // summary: + // Register a Wire class + // description: + // The specified Wire class or a class name is registered with + // a key property of arguments to create a Wire + // wireClass: + // A class or full qualified class name + // key: + // A key property of arguments to create a Wire + if(!wireClass || !key){ + return; //undefined + } + if(dojox.wire._wireClasses[key]){ // key already in use + return; //undefined + } + dojox.wire._wireClasses[key] = wireClass; +}; + +dojox.wire._getClass = function(/*String*/name){ + // summary: + // Returns a class + // description: + // The class is loaded by dojo.require() and returned + // by dojo.getObject(). + // name: + // A class name + // returns: + // A class + dojo["require"](name); // use dojo["require"] instead of dojo.require to avoid a build problem + return dojo.getObject(name); //Function +}; + +dojox.wire.create = function(/*Object*/args){ + // summary: + // Create a Wire from arguments + // description: + // If 'args' specifies 'wireClass', it is used as a class or full + // qualified class name to create a Wire with 'args' as arguments. + // Otherwise, a Wire class is determined by other proeprties of 'args' + // checking if 'args' specifies a key property for a Wire class. + // If no key property found, the default Wire class is used. + // args: + // Arguments to create a Wire + // returns: + // A Wire + if(!args){ + args = {}; + } + var wireClass = args.wireClass; + if(wireClass){ + if(dojo.isString(wireClass)){ + wireClass = dojox.wire._getClass(wireClass); + } + }else{ + for(var key in args){ + if(!args[key]){ + continue; + } + wireClass = dojox.wire._wireClasses[key]; + if(wireClass){ + if(dojo.isString(wireClass)){ + wireClass = dojox.wire._getClass(wireClass); + dojox.wire._wireClasses[key] = wireClass; + } + break; + } + } + } + if(!wireClass){ + if(dojo.isString(dojox.wire._defaultWireClass)){ + dojox.wire._defaultWireClass = dojox.wire._getClass(dojox.wire._defaultWireClass); + } + wireClass = dojox.wire._defaultWireClass; + } + return new wireClass(args); //Object +}; + +dojox.wire.isWire = function(/*Object*/wire){ + // summary: + // Check if an object is a Wire + // description: + // If the specified object is a Wire, true is returned. + // Otherwise, false is returned. + // wire: + // An object to check + // returns: + // True if the object is a Wire, otherwise false + return (wire && wire._wireClass); //Boolean +}; + +dojox.wire.transfer = function(/*Wire||Object*/source, /*Wire||Object*/target, /*Object?*/defaultObject, /*Object?*/defaultTargetObject){ + // summary: + // Transfer a source value to a target value + // description: + // If 'source' and/or 'target' are not Wires, Wires are created with + // them as arguments. + // A value is got through the source Wire and set through the target + // Wire. + // 'defaultObject' is passed to Wires as a default root object. + // If 'defaultTargetObject' is specified, it is passed to the target + // Wire as a default root object, instead of 'defaultObject'. + // source: + // A Wire or arguments to create a Wire for a source value + // target: + // A Wire or arguments to create a Wire for a target value + // defaultObject: + // Optional default root object passed to Wires + // defaultTargetObject: + // Optional default root object passed to Wires + if(!source || !target){ + return; //undefined + } + if(!dojox.wire.isWire(source)){ + source = dojox.wire.create(source); + } + if(!dojox.wire.isWire(target)){ + target = dojox.wire.create(target); + } + + var value = source.getValue(defaultObject); + target.setValue(value, (defaultTargetObject || defaultObject)); +}; + +dojox.wire.connect = function(/*Object*/trigger, /*Wire||Object*/source, /*Wire||Object*/target){ + // summary: + // Transfer a source value to a target value on a trigger event or + // topic + // description: + // If 'trigger' specifies 'topic', the topic is subscribed to transer + // a value on the topic. + // Otherwise, the event specified to 'event' of 'trigger' is listened + // to transfer a value. + // On the specified event or topic, transfer() is called with + // 'source', 'target' and the arguments of the event or topic (as + // default root objects). + // trigger: + // An event or topic to trigger a transfer + // source: + // A Wire or arguments to create a Wire for a source value + // target: + // A Wire or arguments to create a Wire for a target value + // returns: + // A connection handle for disconnect() + if(!trigger || !source || !target){ + return; //undefined + } + + var connection = {topic: trigger.topic}; + if(trigger.topic){ + connection.handle = dojo.subscribe(trigger.topic, function(){ + dojox.wire.transfer(source, target, arguments); + }); + }else if(trigger.event){ + connection.handle = dojo.connect(trigger.scope, trigger.event, function(){ + dojox.wire.transfer(source, target, arguments); + }); + } + return connection; //Object +}; + +dojox.wire.disconnect = function(/*Object*/connection){ + // summary: + // Remove a connection or subscription for transfer + // description: + // If 'handle' has 'topic', the topic is unsubscribed. + // Otherwise, the listener to an event is removed. + // connection: + // A connection handle returned by connect() + if(!connection || !connection.handle){ + return; //undefined + } + + if(connection.topic){ + dojo.unsubscribe(connection.handle); + }else{ + dojo.disconnect(connection.handle); + } +}; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Action.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Action.js new file mode 100644 index 00000000..744468fc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Action.js @@ -0,0 +1,105 @@ +//>>built +define("dojox/wire/ml/Action",["dijit","dojo","dojox","dojo/require!dijit/_Widget,dijit/_Container,dojox/wire/Wire,dojox/wire/ml/util"],function(_1,_2,_3){ +_2.provide("dojox.wire.ml.Action"); +_2.require("dijit._Widget"); +_2.require("dijit._Container"); +_2.require("dojox.wire.Wire"); +_2.require("dojox.wire.ml.util"); +_2.declare("dojox.wire.ml.Action",[_1._Widget,_1._Container],{trigger:"",triggerEvent:"",triggerTopic:"",postCreate:function(){ +this._connect(); +},_connect:function(){ +if(this.triggerEvent){ +if(this.trigger){ +var _4=_3.wire.ml._getValue(this.trigger); +if(_4){ +if(!_4[this.triggerEvent]){ +_4[this.triggerEvent]=function(){ +}; +} +this._triggerHandle=_2.connect(_4,this.triggerEvent,this,"run"); +} +}else{ +var _5=this.triggerEvent.toLowerCase(); +if(_5=="onload"){ +var _6=this; +_2.addOnLoad(function(){ +_6._run.apply(_6,arguments); +}); +} +} +}else{ +if(this.triggerTopic){ +this._triggerHandle=_2.subscribe(this.triggerTopic,this,"run"); +} +} +},_disconnect:function(){ +if(this._triggerHandle){ +if(this.triggerTopic){ +_2.unsubscribe(this.triggerTopic,this._triggerHandle); +}else{ +_2.disconnect(this._triggerHandle); +} +} +},run:function(){ +var _7=this.getChildren(); +for(var i in _7){ +var _8=_7[i]; +if(_8 instanceof _3.wire.ml.ActionFilter){ +if(!_8.filter.apply(_8,arguments)){ +return; +} +} +} +this._run.apply(this,arguments); +},_run:function(){ +var _9=this.getChildren(); +for(var i in _9){ +var _a=_9[i]; +if(_a instanceof _3.wire.ml.Action){ +_a.run.apply(_a,arguments); +} +} +},uninitialize:function(){ +this._disconnect(); +return true; +}}); +_2.declare("dojox.wire.ml.ActionFilter",_1._Widget,{required:"",requiredValue:"",type:"",message:"",error:"",filter:function(){ +if(this.required===""){ +return true; +}else{ +var _b=_3.wire.ml._getValue(this.required,arguments); +if(this.requiredValue===""){ +if(_b){ +return true; +} +}else{ +var _c=this.requiredValue; +if(this.type!==""){ +var _d=this.type.toLowerCase(); +if(_d==="boolean"){ +if(_c.toLowerCase()==="false"){ +_c=false; +}else{ +_c=true; +} +}else{ +if(_d==="number"){ +_c=parseInt(_c,10); +} +} +} +if(_b===_c){ +return true; +} +} +} +if(this.message){ +if(this.error){ +_3.wire.ml._setValue(this.error,this.message); +}else{ +alert(this.message); +} +} +return false; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Action.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Action.js.uncompressed.js new file mode 100644 index 00000000..3fe390bd --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Action.js.uncompressed.js @@ -0,0 +1,224 @@ +// wrapped by build app +define("dojox/wire/ml/Action", ["dijit","dojo","dojox","dojo/require!dijit/_Widget,dijit/_Container,dojox/wire/Wire,dojox/wire/ml/util"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.ml.Action"); + +dojo.require("dijit._Widget"); +dojo.require("dijit._Container"); +dojo.require("dojox.wire.Wire"); +dojo.require("dojox.wire.ml.util"); + +dojo.declare("dojox.wire.ml.Action", [dijit._Widget, dijit._Container], { + // summary: + // A base widget to "run" a task on an event or a topic + // description: + // This widget represents a controller task to be run when an event + // (a function) or a topic is issued. + // Sub-classes must implement _run() method to implement their tasks. + // 'trigger' specifies an event scope, an ID of a widget or an DOM + // element, or its property with the optional dotted notation. + // If this widget has child ActionFilter widgets, their filter() + // methods are called with the arguments to the event or the topic. + // If one of filter() methods returns false, run() won't be invoked. + // This widget also can serve as a composite task to run child + // Actions on an event or a topic specified to this widget. + // trigger: + // An event scope + // triggerEvent: + // An event (function) name + // triggerTopic: + // A topic name + trigger: "", + triggerEvent: "", + triggerTopic: "", + + postCreate: function(){ + // summary: + // Call _connect() + // description: + // See _connect(). + this._connect(); + }, + + _connect: function(){ + // summary: + // Connect run() method to an event or a topic + // description: + // If 'triggerEvent' and 'trigger' are specified, connect() is + // used to set up run() to be called on the event. + // If 'triggerTopic' is specified, subscribe() is used to set up + // run() to be called on the topic. + if(this.triggerEvent){ + if(this.trigger){ + var scope = dojox.wire.ml._getValue(this.trigger); + if(scope){ + if(!scope[this.triggerEvent]){ + // set a dummy function for an anonymous object + scope[this.triggerEvent] = function(){}; + } + this._triggerHandle = dojo.connect(scope, this.triggerEvent, this, "run"); + } + }else{ + var event = this.triggerEvent.toLowerCase(); + if(event == "onload"){ + var self = this; + dojo.addOnLoad(function(){ + self._run.apply(self, arguments); + }); + } + } + }else if(this.triggerTopic){ + this._triggerHandle = dojo.subscribe(this.triggerTopic, this, "run"); + } + }, + + _disconnect: function(){ + // summary: + // Disconnect run() method from an event or a topic + // description: + // If 'triggerEvent' and 'trigger' are specified, disconnect() is + // used to set up run() not to be called on the event. + // If 'triggerTopic' is specified, unsubscribe() is used to set up + // run() not to be called on the topic. + if(this._triggerHandle){ + if(this.triggerTopic){ + dojo.unsubscribe(this.triggerTopic, this._triggerHandle); + }else{ + dojo.disconnect(this._triggerHandle); + } + } + }, + + run: function(){ + // summary: + // Run a task + // description: + // This method calls filter() method of child ActionFilter + // widgets. + // If one of them returns false, this method returns. + // Otherwise, _run() method is called. + var children = this.getChildren(); + for(var i in children){ + var child = children[i]; + if(child instanceof dojox.wire.ml.ActionFilter){ + if(!child.filter.apply(child, arguments)){ + return; + } + } + } + this._run.apply(this, arguments); + }, + + _run: function(){ + // summary: + // Call run() methods of child Action widgets + // description: + // If this widget has child Action widgets, their run() methods + // are called. + var children = this.getChildren(); + for(var i in children){ + var child = children[i]; + if(child instanceof dojox.wire.ml.Action){ + child.run.apply(child, arguments); + } + } + }, + + uninitialize: function(){ + // summary: + // Over-ride of base widget unitialize function to do some connection cleanup. + this._disconnect(); + return true; + } +}); + +dojo.declare("dojox.wire.ml.ActionFilter", dijit._Widget, { + // summary: + // A widget to define a filter for the parent Action to run + // description: + // This base class checks a required property specified with + // 'required' attribute. + // If 'message' is specified, the message is set to a property + // specified with 'error'. + // Subclasses may implement their own filter() method. + // required: + // A property required + // requiredValue: + // Optional. A specific value the property is required to have. If this isn't provided + // than any non-false/non-null value of the required propery will cause this filter + // to pass. + // type: + // Optional. A specific type to compare the values as (if requiredValue is set) + // Valid values for type are boolean, int, string. Default is string. + // message: + // An error message to emit if the filter doesn't execute due to property mismatch. + // error: + // A property to store an error due to property mismatch. + required: "", + requiredValue: "", + type: "", + message: "", + error: "", + + + filter: function(){ + // summary: + // Check if a required property is specified. Also, if provided, check to see + // if the required property contains a specific value. + // description: + // If a value is undefined for a property, specified with + // 'required', this method returns false. + // If the value for a property is defined, but there isn't a requiredValue for it + // then any non-false value will cause the method to return true. + // if requiredValue is set, then filter compares that value with the value from + // the required property and returns true if and only if they match. + // The type option just allows for a way to convert the required property values + // into a proper form for comparison (boolean, number, etc). + // If 'message' is specified, it is set to a proeprty specified + // with 'error' or shown with alert(). + // If 'required' starts with "arguments", a property of + // the method arguments are checked. + // returns: + // True if a required property is specified (and if requiredValue is specified, + // that they match), otherwise false + if(this.required === ""){ + return true; //Boolean + }else{ + var value = dojox.wire.ml._getValue(this.required, arguments); + if(this.requiredValue === ""){ + //Just see if there's a value, nothing to compare it to. + if(value){ + return true; //Boolean + } + }else{ + //See if we need to type convert. + var reqValue = this.requiredValue; + if(this.type !== ""){ + var lType = this.type.toLowerCase(); + if(lType === "boolean"){ + if(reqValue.toLowerCase() === "false"){ + reqValue = false; + }else{ + reqValue = true; + } + }else if(lType === "number"){ + reqValue = parseInt(reqValue, 10); + } + } + if(value === reqValue){ + return true; //boolean + } + } + } + + if(this.message){ + if(this.error){ + dojox.wire.ml._setValue(this.error, this.message); + }else{ + alert(this.message); + } + } + return false; //Boolean + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Data.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Data.js new file mode 100644 index 00000000..4608cab7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Data.js @@ -0,0 +1,73 @@ +//>>built +define("dojox/wire/ml/Data",["dijit","dojo","dojox","dojo/require!dijit/_Widget,dijit/_Container,dojox/wire/ml/util"],function(_1,_2,_3){ +_2.provide("dojox.wire.ml.Data"); +_2.require("dijit._Widget"); +_2.require("dijit._Container"); +_2.require("dojox.wire.ml.util"); +_2.declare("dojox.wire.ml.Data",[_1._Widget,_1._Container],{startup:function(){ +this._initializeProperties(); +},_initializeProperties:function(_4){ +if(!this._properties||_4){ +this._properties={}; +} +var _5=this.getChildren(); +for(var i in _5){ +var _6=_5[i]; +if((_6 instanceof _3.wire.ml.DataProperty)&&_6.name){ +this.setPropertyValue(_6.name,_6.getValue()); +} +} +},getPropertyValue:function(_7){ +return this._properties[_7]; +},setPropertyValue:function(_8,_9){ +this._properties[_8]=_9; +}}); +_2.declare("dojox.wire.ml.DataProperty",[_1._Widget,_1._Container],{name:"",type:"",value:"",_getValueAttr:function(){ +return this.getValue(); +},getValue:function(){ +var _a=this.value; +if(this.type){ +if(this.type=="number"){ +_a=parseInt(_a); +}else{ +if(this.type=="boolean"){ +_a=(_a=="true"); +}else{ +if(this.type=="array"){ +_a=[]; +var _b=this.getChildren(); +for(var i in _b){ +var _c=_b[i]; +if(_c instanceof _3.wire.ml.DataProperty){ +_a.push(_c.getValue()); +} +} +}else{ +if(this.type=="object"){ +_a={}; +var _b=this.getChildren(); +for(var i in _b){ +var _c=_b[i]; +if((_c instanceof _3.wire.ml.DataProperty)&&_c.name){ +_a[_c.name]=_c.getValue(); +} +} +}else{ +if(this.type=="element"){ +_a=new _3.wire.ml.XmlElement(_a); +var _b=this.getChildren(); +for(var i in _b){ +var _c=_b[i]; +if((_c instanceof _3.wire.ml.DataProperty)&&_c.name){ +_a.setPropertyValue(_c.name,_c.getValue()); +} +} +} +} +} +} +} +} +return _a; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Data.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Data.js.uncompressed.js new file mode 100644 index 00000000..b46ccc70 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Data.js.uncompressed.js @@ -0,0 +1,146 @@ +// wrapped by build app +define("dojox/wire/ml/Data", ["dijit","dojo","dojox","dojo/require!dijit/_Widget,dijit/_Container,dojox/wire/ml/util"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.ml.Data"); + +dojo.require("dijit._Widget"); +dojo.require("dijit._Container"); +dojo.require("dojox.wire.ml.util"); + +dojo.declare("dojox.wire.ml.Data", [dijit._Widget, dijit._Container], { + // summary: + // A widget for a data object + // description: + // This widget represents an object with '_properties' property. + // If child 'DataProperty' widgets exist, they are used to initialize + // propertiy values of '_properties' object. + + startup: function(){ + // summary: + // Call _initializeProperties() + // description: + // See _initializeProperties(). + this._initializeProperties(); + }, + + _initializeProperties: function(/*Boolean*/reset){ + // summary: + // Initialize a data object + // description: + // If this widget has child DataProperty widgets, their getValue() + // methods are called and set the return value to a property + // specified by 'name' attribute of the child widgets. + // reset: + // A boolean to reset current properties + if(!this._properties || reset){ + this._properties = {}; + } + var children = this.getChildren(); + for(var i in children){ + var child = children[i]; + if((child instanceof dojox.wire.ml.DataProperty) && child.name){ + this.setPropertyValue(child.name, child.getValue()); + } + } + }, + + getPropertyValue: function(/*String*/property){ + // summary: + // Return a property value + // description: + // This method returns the value of a property, specified with + // 'property' argument, in '_properties' object. + // property: + // A property name + // returns: + // A property value + return this._properties[property]; //anything + }, + + setPropertyValue: function(/*String*/property, /*anything*/value){ + // summary: + // Store a property value + // description: + // This method stores 'value' as a property, specified with + // 'property' argument, in '_properties' object. + // property: + // A property name + // value: + // A property value + this._properties[property] = value; + } +}); + +dojo.declare("dojox.wire.ml.DataProperty", [dijit._Widget, dijit._Container], { + // summary: + // A widget to define a data property + // description: + // Attributes of this widget are used to add a property to the parent + // Data widget. + // 'type' attribute specifies one of "string", "number", "boolean", + // "array", "object" and "element" (DOM Element) + // (default to "string"). + // If 'type' is "array" or "object", child DataProperty widgets are + // used to initialize the array elements or the object properties. + // name: + // A property name + // type: + // A property type name + // value: + // A property value + name: "", + type: "", + value: "", + + _getValueAttr: function(){ + return this.getValue(); + }, + + getValue: function(){ + // summary: + // Returns a property value + // description: + // If 'type' is specified, 'value' attribute is converted to + // the specified type and returned. + // Otherwise, 'value' attribute is returned as is. + // returns: + // A property value + var value = this.value; + if(this.type){ + if(this.type == "number"){ + value = parseInt(value); + }else if(this.type == "boolean"){ + value = (value == "true"); + }else if(this.type == "array"){ + value = []; + var children = this.getChildren(); + for(var i in children){ + var child = children[i]; + if(child instanceof dojox.wire.ml.DataProperty){ + value.push(child.getValue()); + } + } + }else if(this.type == "object"){ + value = {}; + var children = this.getChildren(); + for(var i in children){ + var child = children[i]; + if((child instanceof dojox.wire.ml.DataProperty) && child.name){ + value[child.name] = child.getValue(); + } + } + }else if(this.type == "element"){ + value = new dojox.wire.ml.XmlElement(value); + var children = this.getChildren(); + for(var i in children){ + var child = children[i]; + if((child instanceof dojox.wire.ml.DataProperty) && child.name){ + value.setPropertyValue(child.name, child.getValue()); + } + } + } + } + return value; //anything + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/DataStore.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/DataStore.js new file mode 100644 index 00000000..d4bb5d69 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/DataStore.js @@ -0,0 +1,38 @@ +//>>built +define("dojox/wire/ml/DataStore",["dijit","dojo","dojox","dojo/require!dijit/_Widget,dojox/wire/_base"],function(_1,_2,_3){ +_2.provide("dojox.wire.ml.DataStore"); +_2.require("dijit._Widget"); +_2.require("dojox.wire._base"); +_2.declare("dojox.wire.ml.DataStore",_1._Widget,{storeClass:"",postCreate:function(){ +this.store=this._createStore(); +},_createStore:function(){ +if(!this.storeClass){ +return null; +} +var _4=_3.wire._getClass(this.storeClass); +if(!_4){ +return null; +} +var _5={}; +var _6=this.domNode.attributes; +for(var i=0;i<_6.length;i++){ +var a=_6.item(i); +if(a.specified&&!this[a.nodeName]){ +_5[a.nodeName]=a.nodeValue; +} +} +return new _4(_5); +},getFeatures:function(){ +return this.store.getFeatures(); +},fetch:function(_7){ +return this.store.fetch(_7); +},save:function(_8){ +this.store.save(_8); +},newItem:function(_9){ +return this.store.newItem(_9); +},deleteItem:function(_a){ +return this.store.deleteItem(_a); +},revert:function(){ +return this.store.revert(); +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/DataStore.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/DataStore.js.uncompressed.js new file mode 100644 index 00000000..a63e3e24 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/DataStore.js.uncompressed.js @@ -0,0 +1,116 @@ +// wrapped by build app +define("dojox/wire/ml/DataStore", ["dijit","dojo","dojox","dojo/require!dijit/_Widget,dojox/wire/_base"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.ml.DataStore"); + +dojo.require("dijit._Widget"); +dojo.require("dojox.wire._base"); + +dojo.declare("dojox.wire.ml.DataStore", dijit._Widget, { + // summary: + // A widget for a data store + // description: + // This widget represents a data store of 'storeClass' attribute. + // storeClass: + // A class name of a data store + storeClass: "", + + postCreate: function(){ + // summary: + // Call _createStore() + // description: + // See _createStore(). + this.store = this._createStore(); + }, + + _createStore: function(){ + // summary: + // Create a data store + // description: + // A data store of 'storeClass' is created with arguments + // specified with attributes. + // returns: + // A data store + if(!this.storeClass){ + return null; //null + } + var storeClass = dojox.wire._getClass(this.storeClass); + if(!storeClass){ + return null; //null + } + var args = {}; + var attributes = this.domNode.attributes; + for(var i = 0; i < attributes.length; i++){ + var a = attributes.item(i); + if(a.specified && !this[a.nodeName]){ + args[a.nodeName] = a.nodeValue; + } + } + return new storeClass(args); //Object + }, + + getFeatures: function(){ + // summary: + // Call getFeatures() method of a data store + // description: + // See dojo/data/api/Read.getFeatures(). + // returns: + // A features object + return this.store.getFeatures(); //Object + }, + + fetch: function(/*Object*/request){ + // summary: + // Call fetch() method of a data store + // description: + // See dojo/data/api/Read.fetch(). + // request: + // A request object + // returns: + // A request object + return this.store.fetch(request); //Object + }, + + save: function(/*Object*/args){ + // summary: + // Call save() method of a data store + // description: + // See dojo/data/api/Write.save(). + // args: + // A save arguments object + this.store.save(args); + }, + + newItem: function(/*Object*/args){ + // summary: + // Call newItem() method of a data store + // description: + // See dojo/data/api/Write.newItem(). + // args: + // A new item arguments object + // returns: + // A new item + return this.store.newItem(args); //Object + }, + + deleteItem: function(/*Object*/item){ + // summary: + // Call deleteItem() method of a data store + // description: + // See dojo/data/api/Write.deleteItem(). + // returns: + // A boolean + return this.store.deleteItem(item); //Boolean + }, + + revert: function(){ + // summary: + // Call revert() method of a data store + // description: + // See dojo/data/api/Write.revert(). + // returns: + // A boolean + return this.store.revert(); //Boolean + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Invocation.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Invocation.js new file mode 100644 index 00000000..d13b2eae --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Invocation.js @@ -0,0 +1,102 @@ +//>>built +define("dojox/wire/ml/Invocation",["dijit","dojo","dojox","dojo/require!dojox/wire/ml/Action"],function(_1,_2,_3){ +_2.provide("dojox.wire.ml.Invocation"); +_2.require("dojox.wire.ml.Action"); +_2.declare("dojox.wire.ml.Invocation",_3.wire.ml.Action,{object:"",method:"",topic:"",parameters:"",result:"",error:"",_run:function(){ +if(this.topic){ +var _4=this._getParameters(arguments); +try{ +_2.publish(this.topic,_4); +this.onComplete(); +} +catch(e){ +this.onError(e); +} +}else{ +if(this.method){ +var _5=(this.object?_3.wire.ml._getValue(this.object):_2.global); +if(!_5){ +return; +} +var _4=this._getParameters(arguments); +var _6=_5[this.method]; +if(!_6){ +_6=_5.callMethod; +if(!_6){ +return; +} +_4=[this.method,_4]; +} +try{ +var _7=false; +if(_5.getFeatures){ +var _8=_5.getFeatures(); +if((this.method=="fetch"&&_8["dojo.data.api.Read"])||(this.method=="save"&&_8["dojo.data.api.Write"])){ +var _9=_4[0]; +if(!_9.onComplete){ +_9.onComplete=function(){ +}; +} +this.connect(_9,"onComplete","onComplete"); +if(!_9.onError){ +_9.onError=function(){ +}; +} +this.connect(_9,"onError","onError"); +_7=true; +} +} +var r=_6.apply(_5,_4); +if(!_7){ +if(r&&(r instanceof _2.Deferred)){ +var _a=this; +r.addCallbacks(function(_b){ +_a.onComplete(_b); +},function(_c){ +_a.onError(_c); +}); +}else{ +this.onComplete(r); +} +} +} +catch(e){ +this.onError(e); +} +} +} +},onComplete:function(_d){ +if(this.result){ +_3.wire.ml._setValue(this.result,_d); +} +if(this.error){ +_3.wire.ml._setValue(this.error,""); +} +},onError:function(_e){ +if(this.error){ +if(_e&&_e.message){ +_e=_e.message; +} +_3.wire.ml._setValue(this.error,_e); +} +},_getParameters:function(_f){ +if(!this.parameters){ +return _f; +} +var _10=[]; +var _11=this.parameters.split(","); +if(_11.length==1){ +var _12=_3.wire.ml._getValue(_2.trim(_11[0]),_f); +if(_2.isArray(_12)){ +_10=_12; +}else{ +_10.push(_12); +} +}else{ +for(var i in _11){ +_10.push(_3.wire.ml._getValue(_2.trim(_11[i]),_f)); +} +} +return _10; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Invocation.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Invocation.js.uncompressed.js new file mode 100644 index 00000000..3f905578 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Invocation.js.uncompressed.js @@ -0,0 +1,177 @@ +// wrapped by build app +define("dojox/wire/ml/Invocation", ["dijit","dojo","dojox","dojo/require!dojox/wire/ml/Action"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.ml.Invocation"); + +dojo.require("dojox.wire.ml.Action"); + +dojo.declare("dojox.wire.ml.Invocation", dojox.wire.ml.Action, { + // summary: + // A widget to invoke a method or publish a topic + // description: + // This widget represents a controller task to invoke a method or + // publish a topic when an event (a function) or a topic is issued. + + // object: + // A scope of a method to invoke + object: "", + + // method: + // A name of a method to invoke + method: "", + + // topic: + // A name of a topic to publish + topic: "", + + // parameters: + // Arguments for the method or the topic + parameters: "", + + // result: + // A property to store a return value of the method call + result: "", + + // error: + // A property to store an error on the method call + error: "", + + _run: function(){ + // summary: + // Invoke a method or publish a topic + // description: + // If 'topic' is specified, the topic is published with arguments + // specified to 'parameters'. + // If 'method' and 'object' are specified, the method is invoked + // with arguments specified to 'parameters' and set the return + // value to a property specified to 'result'. + // 'object', 'parameters' and 'result' can specify properties of + // a widget or an DOM element with the dotted notation. + // If 'parameters' are omitted, the arguments to this method are + // passed as is. + if(this.topic){ + var args = this._getParameters(arguments); + try{ + dojo.publish(this.topic, args); + this.onComplete(); + }catch(e){ + this.onError(e); + } + }else if(this.method){ + var scope = (this.object ? dojox.wire.ml._getValue(this.object) : dojo.global); + if(!scope){ + return; //undefined + } + var args = this._getParameters(arguments); + var func = scope[this.method]; + if(!func){ + func = scope.callMethod; + if(!func){ + return; //undefined + } + args = [this.method, args]; + } + try{ + var connected = false; + if(scope.getFeatures){ + var features = scope.getFeatures(); + if((this.method == "fetch" && features["dojo.data.api.Read"]) || + (this.method == "save" && features["dojo.data.api.Write"])){ + var arg = args[0]; + if(!arg.onComplete){ + arg.onComplete = function(){}; + } + //dojo.connect(arg, "onComplete", this, "onComplete"); + this.connect(arg, "onComplete", "onComplete"); + if(!arg.onError){ + arg.onError = function(){}; + } + //dojo.connect(arg, "onError", this, "onError"); + this.connect(arg, "onError", "onError"); + connected = true; + } + } + var r = func.apply(scope, args); + if(!connected){ + if(r && (r instanceof dojo.Deferred)){ + var self = this; + r.addCallbacks( + function(result){self.onComplete(result);}, + function(error){self.onError(error);} + ); + }else{ + this.onComplete(r); + } + } + }catch(e){ + this.onError(e); + } + } + }, + + onComplete: function(/*anything*/result){ + // summary: + // A function called when the method or the topic publish + // completed + // description: + // If 'result' attribute is specified, the result object also set + // to the specified property. + // result: + // The return value of a method or undefined for a topic + if(this.result){ + dojox.wire.ml._setValue(this.result, result); + } + if(this.error){ // clear error + dojox.wire.ml._setValue(this.error, ""); + } + }, + + onError: function(/*anything*/error){ + // summary: + // A function called on an error occurs + // description: + // If 'error' attribute is specified, the error object also set to + // the specified property. + // error: + // The exception or error occurred + if(this.error){ + if(error && error.message){ + error = error.message; + } + dojox.wire.ml._setValue(this.error, error); + } + }, + + _getParameters: function(/*Array*/args){ + // summary: + // Returns arguments to a method or topic to invoke + // description: + // This method retunrs an array of arguments specified by + // 'parameters' attribute, a comma-separated list of IDs and + // their properties in a dotted notation. + // If 'parameters' are omitted, the original arguments are + // used. + // args: + // Arguments to a trigger event or topic + if(!this.parameters){ + // use arguments as is + return args; //Array + } + var parameters = []; + var list = this.parameters.split(","); + if(list.length == 1){ + var parameter = dojox.wire.ml._getValue(dojo.trim(list[0]), args); + if(dojo.isArray(parameter)){ + parameters = parameter; + }else{ + parameters.push(parameter); + } + }else{ + for(var i in list){ + parameters.push(dojox.wire.ml._getValue(dojo.trim(list[i]), args)); + } + } + return parameters; //Array + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/JsonHandler.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/JsonHandler.js new file mode 100644 index 00000000..17001ca4 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/JsonHandler.js @@ -0,0 +1,21 @@ +//>>built +define("dojox/wire/ml/JsonHandler",["dijit","dojo","dojox","dojo/require!dojox/wire/ml/RestHandler,dojox/wire/_base,dojox/wire/ml/util"],function(_1,_2,_3){ +_2.provide("dojox.wire.ml.JsonHandler"); +_2.require("dojox.wire.ml.RestHandler"); +_2.require("dojox.wire._base"); +_2.require("dojox.wire.ml.util"); +_2.declare("dojox.wire.ml.JsonHandler",_3.wire.ml.RestHandler,{contentType:"text/json",handleAs:"json",headers:{"Accept":"*/json"},_getContent:function(_4,_5){ +var _6=null; +if(_4=="POST"||_4=="PUT"){ +var p=(_5?_5[0]:undefined); +if(p){ +if(_2.isString(p)){ +_6=p; +}else{ +_6=_2.toJson(p); +} +} +} +return _6; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/JsonHandler.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/JsonHandler.js.uncompressed.js new file mode 100644 index 00000000..164e04d5 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/JsonHandler.js.uncompressed.js @@ -0,0 +1,46 @@ +// wrapped by build app +define("dojox/wire/ml/JsonHandler", ["dijit","dojo","dojox","dojo/require!dojox/wire/ml/RestHandler,dojox/wire/_base,dojox/wire/ml/util"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.ml.JsonHandler"); + +dojo.require("dojox.wire.ml.RestHandler"); +dojo.require("dojox.wire._base"); +dojo.require("dojox.wire.ml.util"); + + +dojo.declare("dojox.wire.ml.JsonHandler", dojox.wire.ml.RestHandler, { + // summary: + // A REST service handler for JSON + // description: + // This class provides JSON handling for a REST service. + contentType: "text/json", + handleAs: "json", + headers: {"Accept": "*/json"}, + + _getContent: function(/*String*/method, /*Array*/parameters){ + // summary: + // Generate a request content + // description: + // If 'method' is "POST" or "PUT", the first parameter in + // 'parameter' is used to generate a JSON content. + // method: + // A method name + // parameters: + // An array of parameters + // returns: + // A request content + var content = null; + if(method == "POST" || method == "PUT"){ + var p = (parameters ? parameters[0] : undefined); + if(p){ + if(dojo.isString(p)){ + content = p; + }else{ + content = dojo.toJson(p); + } + } + } + return content; //String + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/RestHandler.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/RestHandler.js new file mode 100644 index 00000000..484436ee --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/RestHandler.js @@ -0,0 +1,74 @@ +//>>built +define("dojox/wire/ml/RestHandler",["dijit","dojo","dojox","dojo/require!dojox/wire/_base,dojox/wire/ml/util"],function(_1,_2,_3){ +_2.provide("dojox.wire.ml.RestHandler"); +_2.require("dojox.wire._base"); +_2.require("dojox.wire.ml.util"); +_2.declare("dojox.wire.ml.RestHandler",null,{contentType:"text/plain",handleAs:"text",bind:function(_4,_5,_6,_7){ +_4=_4.toUpperCase(); +var _8=this; +var _9={url:this._getUrl(_4,_5,_7),contentType:this.contentType,handleAs:this.handleAs,headers:this.headers,preventCache:this.preventCache}; +var d=null; +if(_4=="POST"){ +_9.postData=this._getContent(_4,_5); +d=_2.rawXhrPost(_9); +}else{ +if(_4=="PUT"){ +_9.putData=this._getContent(_4,_5); +d=_2.rawXhrPut(_9); +}else{ +if(_4=="DELETE"){ +d=_2.xhrDelete(_9); +}else{ +d=_2.xhrGet(_9); +} +} +} +d.addCallbacks(function(_a){ +_6.callback(_8._getResult(_a)); +},function(_b){ +_6.errback(_b); +}); +},_getUrl:function(_c,_d,_e){ +var _f; +if(_c=="GET"||_c=="DELETE"){ +if(_d.length>0){ +_f=_d[0]; +} +}else{ +if(_d.length>1){ +_f=_d[1]; +} +} +if(_f){ +var _10=""; +for(var _11 in _f){ +var _12=_f[_11]; +if(_12){ +_12=encodeURIComponent(_12); +var _13="{"+_11+"}"; +var _14=_e.indexOf(_13); +if(_14>=0){ +_e=_e.substring(0,_14)+_12+_e.substring(_14+_13.length); +}else{ +if(_10){ +_10+="&"; +} +_10+=(_11+"="+_12); +} +} +} +if(_10){ +_e+="?"+_10; +} +} +return _e; +},_getContent:function(_15,_16){ +if(_15=="POST"||_15=="PUT"){ +return (_16?_16[0]:null); +}else{ +return null; +} +},_getResult:function(_17){ +return _17; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/RestHandler.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/RestHandler.js.uncompressed.js new file mode 100644 index 00000000..d1c52240 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/RestHandler.js.uncompressed.js @@ -0,0 +1,147 @@ +// wrapped by build app +define("dojox/wire/ml/RestHandler", ["dijit","dojo","dojox","dojo/require!dojox/wire/_base,dojox/wire/ml/util"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.ml.RestHandler"); + +dojo.require("dojox.wire._base"); +dojo.require("dojox.wire.ml.util"); + +dojo.declare("dojox.wire.ml.RestHandler", null, { + // summary: + // A REST service handler + // description: + // This class serves as a base REST service. + // Sub-classes may override _getContent() and _getResult() to handle + // specific content types. + contentType: "text/plain", + handleAs: "text", + + bind: function(method, parameters, deferred, url){ + // summary: + // Call a service method with parameters. + // description: + // A service is called with a URL generated by _getUrl() and + // an HTTP method specified with 'method'. + // For "POST" and "PUT", a content is generated by _getContent(). + // When data is loaded, _getResult() is used to pass the result to + // Deferred.callback(). + // method: + // A method name + // parameters: + // An array of parameters + // deferred: + // 'Deferred' + // url: + // A URL for the method + method = method.toUpperCase(); + var self = this; + var args = { + url: this._getUrl(method, parameters, url), + contentType: this.contentType, + handleAs: this.handleAs, + headers: this.headers, + preventCache: this.preventCache + }; + var d = null; + if(method == "POST"){ + args.postData = this._getContent(method, parameters); + d = dojo.rawXhrPost(args); + }else if(method == "PUT"){ + args.putData = this._getContent(method, parameters); + d = dojo.rawXhrPut(args); + }else if(method == "DELETE"){ + d = dojo.xhrDelete(args); + }else{ // "GET" + d = dojo.xhrGet(args); + } + d.addCallbacks(function(result){ + deferred.callback(self._getResult(result)); + }, function(error){ + deferred.errback(error); + }); + }, + + _getUrl: function(/*String*/method, /*Array*/parameters, /*String*/url){ + // summary: + // Generate a URL + // description: + // If 'method' is "GET" or "DELETE", a query string is generated + // from a query object specified to the first parameter in + // 'parameters' and appended to 'url'. + // If 'url' contains variable seguments ("{parameter_name}"), + // they are replaced with corresponding parameter values, instead. + // method: + // A method name + // parameters: + // An array of parameters + // url: + // A base URL + // returns: + // A URL + var query; + if(method == "GET" || method == "DELETE"){ + if(parameters.length > 0){ + query = parameters[0]; + } + }else{ // "POST" || "PUT" + if(parameters.length > 1){ + query = parameters[1]; + } + } + if(query){ + var queryString = ""; + for(var name in query){ + var value = query[name]; + if(value){ + value = encodeURIComponent(value); + var variable = "{" + name + "}"; + var index = url.indexOf(variable); + if(index >= 0){ // encode in path + url = url.substring(0, index) + value + url.substring(index + variable.length); + }else{ // encode as query string + if(queryString){ + queryString += "&"; + } + queryString += (name + "=" + value); + } + } + } + if(queryString){ + url += "?" + queryString; + } + } + return url; //String + }, + + _getContent: function(/*String*/method, /*Array*/parameters){ + // summary: + // Generate a request content + // description: + // If 'method' is "POST" or "PUT", the first parameter in + // 'parameters' is returned. + // method: + // A method name + // parameters: + // An array of parameters + // returns: + // A request content + if(method == "POST" || method == "PUT"){ + return (parameters ? parameters[0] : null); //anything + }else{ + return null; //null + } + }, + + _getResult: function(/*anything*/data){ + // summary: + // Extract a result + // description: + // A response data is returned as is. + // data: + // A response data returned by a service + // returns: + // A result object + return data; //anything + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Service.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Service.js new file mode 100644 index 00000000..ab461afa --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Service.js @@ -0,0 +1,50 @@ +//>>built +define("dojox/wire/ml/Service",["dijit","dojo","dojox","dojo/require!dijit/_Widget,dojox/xml/parser,dojox/wire/_base,dojox/wire/ml/util"],function(_1,_2,_3){ +_2.provide("dojox.wire.ml.Service"); +_2.require("dijit._Widget"); +_2.require("dojox.xml.parser"); +_2.require("dojox.wire._base"); +_2.require("dojox.wire.ml.util"); +_2.declare("dojox.wire.ml.Service",_1._Widget,{url:"",serviceUrl:"",serviceType:"",handlerClass:"",preventCache:true,postCreate:function(){ +this.handler=this._createHandler(); +},_handlerClasses:{"TEXT":"dojox.wire.ml.RestHandler","XML":"dojox.wire.ml.XmlHandler","JSON":"dojox.wire.ml.JsonHandler","JSON-RPC":"dojo.rpc.JsonService"},_createHandler:function(){ +if(this.url){ +var _4=this; +var d=_2.xhrGet({url:this.url,handleAs:"json",sync:true}); +d.addCallback(function(_5){ +_4.smd=_5; +}); +if(this.smd&&!this.serviceUrl){ +this.serviceUrl=(this.smd.serviceUrl||this.smd.serviceURL); +} +} +var _6=undefined; +if(this.handlerClass){ +_6=_3.wire._getClass(this.handlerClass); +}else{ +if(this.serviceType){ +_6=this._handlerClasses[this.serviceType]; +if(_6&&_2.isString(_6)){ +_6=_3.wire._getClass(_6); +this._handlerClasses[this.serviceType]=_6; +} +}else{ +if(this.smd&&this.smd.serviceType){ +_6=this._handlerClasses[this.smd.serviceType]; +if(_6&&_2.isString(_6)){ +_6=_3.wire._getClass(_6); +this._handlerClasses[this.smd.serviceType]=_6; +} +} +} +} +if(!_6){ +return null; +} +return new _6(); +},callMethod:function(_7,_8){ +var _9=new _2.Deferred(); +this.handler.bind(_7,_8,_9,this.serviceUrl); +return _9; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Service.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Service.js.uncompressed.js new file mode 100644 index 00000000..1abbed31 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Service.js.uncompressed.js @@ -0,0 +1,112 @@ +// wrapped by build app +define("dojox/wire/ml/Service", ["dijit","dojo","dojox","dojo/require!dijit/_Widget,dojox/xml/parser,dojox/wire/_base,dojox/wire/ml/util"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.ml.Service"); + +dojo.require("dijit._Widget"); +dojo.require("dojox.xml.parser"); +dojo.require("dojox.wire._base"); +dojo.require("dojox.wire.ml.util"); + +dojo.declare("dojox.wire.ml.Service", dijit._Widget, { + // summary: + // A widget for a service + // description: + // This widget represents a service defined by a service description + // specified with 'url' attribute. + // If 'serviceType' and 'serviceUrl' attributes are specified, 'url' + // attribute can be omitted. + + // url: + // A URL to a service description + url: "", + + // serviceUrl: + // A URL to a service + serviceUrl: "", + + // serviceType: + // A service type + serviceType: "", + + // handlerClass: + // A service handler class name + handlerClass: "", + + preventCache: true, + + postCreate: function(){ + // summary: + // Call _createHandler() + // description: + // See _createHandler(). + this.handler = this._createHandler(); + }, + + _handlerClasses: { + "TEXT": "dojox.wire.ml.RestHandler", + "XML": "dojox.wire.ml.XmlHandler", + "JSON": "dojox.wire.ml.JsonHandler", + "JSON-RPC": "dojo.rpc.JsonService" + }, + + _createHandler: function(){ + // summary: + // Create a service handler + // description: + // A service handler class is determined by: + // + // 1. 'handlerClass' attribute + // 2. 'serviceType' attribute + // 3. 'serviceType' property in a service description + // returns: + // A service handler + if(this.url){ + var self = this; + var d = dojo.xhrGet({ + url: this.url, + handleAs: "json", + sync: true + }); + d.addCallback(function(result){ + self.smd = result; + }); + if(this.smd && !this.serviceUrl){ + this.serviceUrl = (this.smd.serviceUrl || this.smd.serviceURL); + } + } + var handlerClass = undefined; + if(this.handlerClass){ + handlerClass = dojox.wire._getClass(this.handlerClass); + }else if(this.serviceType){ + handlerClass = this._handlerClasses[this.serviceType]; + if(handlerClass && dojo.isString(handlerClass)){ + handlerClass = dojox.wire._getClass(handlerClass); + this._handlerClasses[this.serviceType] = handlerClass; + } + }else if(this.smd && this.smd.serviceType){ + handlerClass = this._handlerClasses[this.smd.serviceType]; + if(handlerClass && dojo.isString(handlerClass)){ + handlerClass = dojox.wire._getClass(handlerClass); + this._handlerClasses[this.smd.serviceType] = handlerClass; + } + } + if(!handlerClass){ + return null; //null + } + return new handlerClass(); //Object + }, + + callMethod: function(method, parameters){ + // summary: + // Call a service method with parameters + // method: + // A method name + // parameters: + // An array parameters + var deferred = new dojo.Deferred(); + this.handler.bind(method, parameters, deferred, this.serviceUrl); + return deferred; + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Transfer.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Transfer.js new file mode 100644 index 00000000..cca0927a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Transfer.js @@ -0,0 +1,111 @@ +//>>built +define("dojox/wire/ml/Transfer",["dijit","dojo","dojox","dojo/require!dijit/_Widget,dijit/_Container,dojox/wire/_base,dojox/wire/ml/Action"],function(_1,_2,_3){ +_2.provide("dojox.wire.ml.Transfer"); +_2.require("dijit._Widget"); +_2.require("dijit._Container"); +_2.require("dojox.wire._base"); +_2.require("dojox.wire.ml.Action"); +_2.declare("dojox.wire.ml.Transfer",_3.wire.ml.Action,{source:"",sourceStore:"",sourceAttribute:"",sourcePath:"",type:"",converter:"",target:"",targetStore:"",targetAttribute:"",targetPath:"",delimiter:"",_run:function(){ +var _4=this._getWire("source"); +var _5=this._getWire("target"); +_3.wire.transfer(_4,_5,arguments); +},_getWire:function(_6){ +var _7=undefined; +if(_6=="source"){ +_7={object:this.source,dataStore:this.sourceStore,attribute:this.sourceAttribute,path:this.sourcePath,type:this.type,converter:this.converter}; +}else{ +_7={object:this.target,dataStore:this.targetStore,attribute:this.targetAttribute,path:this.targetPath}; +} +if(_7.object){ +if(_7.object.length>=9&&_7.object.substring(0,9)=="arguments"){ +_7.property=_7.object.substring(9); +_7.object=null; +}else{ +var i=_7.object.indexOf("."); +if(i<0){ +_7.object=_3.wire.ml._getValue(_7.object); +}else{ +_7.property=_7.object.substring(i+1); +_7.object=_3.wire.ml._getValue(_7.object.substring(0,i)); +} +} +} +if(_7.dataStore){ +_7.dataStore=_3.wire.ml._getValue(_7.dataStore); +} +var _8=undefined; +var _9=this.getChildren(); +for(var i in _9){ +var _a=_9[i]; +if(_a instanceof _3.wire.ml.ChildWire&&_a.which==_6){ +if(!_8){ +_8={}; +} +_a._addWire(this,_8); +} +} +if(_8){ +_8.object=_3.wire.create(_7); +_8.dataStore=_7.dataStore; +_7=_8; +} +return _7; +}}); +_2.declare("dojox.wire.ml.ChildWire",_1._Widget,{which:"source",object:"",property:"",type:"",converter:"",attribute:"",path:"",name:"",_addWire:function(_b,_c){ +if(this.name){ +if(!_c.children){ +_c.children={}; +} +_c.children[this.name]=this._getWire(_b); +}else{ +if(!_c.children){ +_c.children=[]; +} +_c.children.push(this._getWire(_b)); +} +},_getWire:function(_d){ +return {object:(this.object?_3.wire.ml._getValue(this.object):undefined),property:this.property,type:this.type,converter:this.converter,attribute:this.attribute,path:this.path}; +}}); +_2.declare("dojox.wire.ml.ColumnWire",_3.wire.ml.ChildWire,{column:"",_addWire:function(_e,_f){ +if(this.column){ +if(!_f.columns){ +_f.columns={}; +} +_f.columns[this.column]=this._getWire(_e); +}else{ +if(!_f.columns){ +_f.columns=[]; +} +_f.columns.push(this._getWire(_e)); +} +}}); +_2.declare("dojox.wire.ml.NodeWire",[_3.wire.ml.ChildWire,_1._Container],{titleProperty:"",titleAttribute:"",titlePath:"",_addWire:function(_10,_11){ +if(!_11.nodes){ +_11.nodes=[]; +} +_11.nodes.push(this._getWires(_10)); +},_getWires:function(_12){ +var _13={node:this._getWire(_12),title:{type:"string",property:this.titleProperty,attribute:this.titleAttribute,path:this.titlePath}}; +var _14=[]; +var _15=this.getChildren(); +for(var i in _15){ +var _16=_15[i]; +if(_16 instanceof _3.wire.ml.NodeWire){ +_14.push(_16._getWires(_12)); +} +} +if(_14.length>0){ +_13.children=_14; +} +return _13; +}}); +_2.declare("dojox.wire.ml.SegmentWire",_3.wire.ml.ChildWire,{_addWire:function(_17,_18){ +if(!_18.segments){ +_18.segments=[]; +} +_18.segments.push(this._getWire(_17)); +if(_17.delimiter&&!_18.delimiter){ +_18.delimiter=_17.delimiter; +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Transfer.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Transfer.js.uncompressed.js new file mode 100644 index 00000000..cd766bb0 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/Transfer.js.uncompressed.js @@ -0,0 +1,366 @@ +// wrapped by build app +define("dojox/wire/ml/Transfer", ["dijit","dojo","dojox","dojo/require!dijit/_Widget,dijit/_Container,dojox/wire/_base,dojox/wire/ml/Action"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.ml.Transfer"); + +dojo.require("dijit._Widget"); +dojo.require("dijit._Container"); +dojo.require("dojox.wire._base"); +dojo.require("dojox.wire.ml.Action"); + +dojo.declare("dojox.wire.ml.Transfer", dojox.wire.ml.Action, { + // summary: + // A widget to transfer values through source and target Wires + // description: + // This widget represents a controller task to transfer a value from + // a source to a target, through a source and a target Wires, when + // an event (a function) or a topic is issued. + // If this widget has child ChildWire widgets, their _addWire() + // methods are called to add Wire arguments to a source or a target + // Wire. + + // source: + // A source object and/or property + source: "", + + // sourceStore: + // A data store for a source data item + sourceStore: "", + + // sourceAttribute: + // An attribute of a source data item + sourceAttribute: "", + + // sourcePath: + // A simplified XPath to a source property of an XML element + sourcePath: "", + + // type: + // A type of the value to be transferred + type: "", + + // converter: + // A class name of a converter for the value to be transferred + converter: "", + + // target: + // A target object and/or property + target: "", + + // targetStore: + // A data store for a target data item + targetStore: "", + + // targetAttribute: + // An attribute of a target data item + targetAttribute: "", + + // targetPath: + // A simplified XPath to a target property of an XML element + targetPath: "", + + delimiter: "", + + _run: function(){ + // summary: + // Transfer a value from a source to a target + // description: + // First, Wires for a source and a target are created from attributes. + // Then, a value is obtained by getValue() of the source Wire is set + // by setValue() of the target Wire. + // The arguments to this method is passed to getValue() and setValue() + // of Wires, so that they can be used to identify the root objects off + // the arguments. + var sourceWire = this._getWire("source"); + var targetWire = this._getWire("target"); + dojox.wire.transfer(sourceWire, targetWire, arguments); + }, + + _getWire: function(/*String*/which){ + // summary: + // Build Wire arguments from attributes + // description: + // Arguments object for a source or a target Wire, specified by + // 'which' argument, are build from corresponding attributes, + // including '*Store' (for 'dataStore'), '*Attribute' + // (for 'attribute), '*Path' (for 'path'), 'type' and 'converter'. + // 'source' or 'target' attribute is parsed as: + // | "object_id.property_name[.sub_property_name...]" + // If 'source' or 'target' starts with "arguments", 'object' + // argument for a Wire is set to null, so that the root object is + // given as an event or topic arguments. + // If this widget has child ChildWire widgets with a corresponding + // 'which' attribute, their _addWire() methods are called to add + // additional Wire arguments and nested Wire is created, + // specifying the Wire defined by this widget to 'object' argument. + // which: + // Which Wire arguments to build, "source" or "target" + // returns: + // Wire arguments object + var args = undefined; + if(which == "source"){ + args = { + object: this.source, + dataStore: this.sourceStore, + attribute: this.sourceAttribute, + path: this.sourcePath, + type: this.type, + converter: this.converter + }; + }else{ // "target" + args = { + object: this.target, + dataStore: this.targetStore, + attribute: this.targetAttribute, + path: this.targetPath + }; + } + if(args.object){ + if(args.object.length >= 9 && args.object.substring(0, 9) == "arguments"){ + args.property = args.object.substring(9); + args.object = null; + }else{ + var i = args.object.indexOf('.'); + if(i < 0){ + args.object = dojox.wire.ml._getValue(args.object); + }else{ + args.property = args.object.substring(i + 1); + args.object = dojox.wire.ml._getValue(args.object.substring(0, i)); + } + } + } + if(args.dataStore){ + args.dataStore = dojox.wire.ml._getValue(args.dataStore); + } + var childArgs = undefined; + var children = this.getChildren(); + for(var i in children){ + var child = children[i]; + if(child instanceof dojox.wire.ml.ChildWire && child.which == which){ + if(!childArgs){ + childArgs = {}; + } + child._addWire(this, childArgs); + } + } + if(childArgs){ // make nested Wires + childArgs.object = dojox.wire.create(args); + childArgs.dataStore = args.dataStore; + args = childArgs; + } + return args; //Object + } +}); + +dojo.declare("dojox.wire.ml.ChildWire", dijit._Widget, { + // summary: + // A widget to add a child wire + // description: + // Attributes of this widget are used to add a child Wire to + // a composite Wire of the parent Transfer widget. + // which: + // Which Wire to add a child Wire, "source" or "target", default to + // "source" + // object: + // A root object for the value + // property: + // A property for the value + // type: + // A type of the value + // converter: + // A class name of a converter for the value + // attribute: + // A data item attribute for the value + // path: + // A simplified XPath for the value + // name: + // A composite property name + which: "source", + object: "", + property: "", + type: "", + converter: "", + attribute: "", + path: "", + name: "", + + _addWire: function(/*Transfer*/parent, /*Object*/args){ + // summary: + // Add a child Wire to Wire arguments + // description: + // If 'name' attribute is specified, a child Wire is added as + // the named property of 'children' object of 'args'. + // Otherwise, a child Wire is added to 'children' array of 'args'. + // parent: + // A parent Transfer widget + // args: + // Wire arguments + if(this.name){ // object + if(!args.children){ + args.children = {}; + } + args.children[this.name] = this._getWire(parent); + }else{ // array + if(!args.children){ + args.children = []; + } + args.children.push(this._getWire(parent)); + } + }, + + _getWire: function(/*Transfer*/parent){ + // summary: + // Build child Wire arguments from attributes + // description: + // Arguments object for a child Wire are build from attributes, + // including 'object', 'property', 'type', 'converter', + // 'attribute' and 'path'. + // parent: + // A parent Transfer widget + // returns: + // Wire arguments object + return { + object: (this.object ? dojox.wire.ml._getValue(this.object) : undefined), + property: this.property, + type: this.type, + converter: this.converter, + attribute: this.attribute, + path: this.path + }; //Object + } +}); + +dojo.declare("dojox.wire.ml.ColumnWire", dojox.wire.ml.ChildWire, { + // summary: + // A widget to add a column wire + // description: + // Attributes of this widget are used to add a column Wire to + // a TableAdapter of the parent Transfer widget. + // column: + // A column name + column: "", + + _addWire: function(/*Transfer*/parent, /*Object*/args){ + // summary: + // Add a column Wire to Wire arguments + // description: + // If 'column' attribute is specified, a column Wire is added as + // the named property of 'columns' object of 'args'. + // Otherwise, a column Wire is added to 'columns' array of 'args'. + // parent: + // A parent Transfer widget + // args: + // Wire arguments + if(this.column){ // object + if(!args.columns){ + args.columns = {}; + } + args.columns[this.column] = this._getWire(parent); + }else{ // array + if(!args.columns){ + args.columns = []; + } + args.columns.push(this._getWire(parent)); + } + } +}); + +dojo.declare("dojox.wire.ml.NodeWire", [dojox.wire.ml.ChildWire, dijit._Container], { + // summary: + // A widget to add node wires + // description: + // Attributes of this widget are used to add node Wires to + // a TreeAdapter of the parent Transfer widget. + // titleProperty: + // A property for the node title + // titleAttribute: + // A data item attribute for the node title + // titlePath: + // A simplified XPath for the node title + titleProperty: "", + titleAttribute: "", + titlePath: "", + + _addWire: function(/*Transfer*/parent, /*Object*/args){ + // summary: + // Add node Wires to Wire arguments + // description: + // Node Wires are added to 'nodes' array of 'args'. + // parent: + // A parent Transfer widget + // args: + // Wire arguments + if(!args.nodes){ + args.nodes = []; + } + args.nodes.push(this._getWires(parent)); + }, + + _getWires: function(/*Transfer*/parent){ + // summary: + // Build node Wires arguments from attributes + // description: + // Arguments object for 'node' Wire are build from attributes, + // including 'object', 'property', 'type', 'converter', + // 'attribute' and 'path'. + // Arguments object for 'title' Wire are build from another set of + // attributes, 'titleProperty', 'titleAttribute' and 'titlePath'. + // If this widget has child NodeWire widgets, their _getWires() + // methods are called recursively to build 'children' array of + // 'args'. + // parent: + // A parent Transfer widget + // returns: + // Wire arguments object + var args = { + node: this._getWire(parent), + title: { + type: "string", + property: this.titleProperty, + attribute: this.titleAttribute, + path: this.titlePath + } + }; + var childArgs = []; + var children = this.getChildren(); + for(var i in children){ + var child = children[i]; + if(child instanceof dojox.wire.ml.NodeWire){ + childArgs.push(child._getWires(parent)); + } + } + if(childArgs.length > 0){ + args.children = childArgs; + } + return args; //Object + } +}); + +dojo.declare("dojox.wire.ml.SegmentWire", dojox.wire.ml.ChildWire, { + // summary: + // A widget to add a segment wire + // description: + // Attributes of this widget are used to add a segment Wire to + // a TextAdapter of the parent Transfer widget. + + _addWire: function(/*Transfer*/parent, /*Object*/args){ + // summary: + // Add a segment Wire to Wire arguments + // description: + // A segment Wire is added to 'segments' array of 'args'. + // If 'parent' has 'delimiter' attribute, it is used for + // 'delimiter' property of 'args'. + // parent: + // A parent Transfer widget + // args: + // Wire arguments + if(!args.segments){ + args.segments = []; + } + args.segments.push(this._getWire(parent)); + if(parent.delimiter && !args.delimiter){ + args.delimiter = parent.delimiter; + } + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/XmlHandler.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/XmlHandler.js new file mode 100644 index 00000000..3d9433fc --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/XmlHandler.js @@ -0,0 +1,36 @@ +//>>built +define("dojox/wire/ml/XmlHandler",["dijit","dojo","dojox","dojo/require!dojox/wire/ml/RestHandler,dojox/xml/parser,dojox/wire/_base,dojox/wire/ml/util"],function(_1,_2,_3){ +_2.provide("dojox.wire.ml.XmlHandler"); +_2.require("dojox.wire.ml.RestHandler"); +_2.require("dojox.xml.parser"); +_2.require("dojox.wire._base"); +_2.require("dojox.wire.ml.util"); +_2.declare("dojox.wire.ml.XmlHandler",_3.wire.ml.RestHandler,{contentType:"text/xml",handleAs:"xml",_getContent:function(_4,_5){ +var _6=null; +if(_4=="POST"||_4=="PUT"){ +var p=_5[0]; +if(p){ +if(_2.isString(p)){ +_6=p; +}else{ +var _7=p; +if(_7 instanceof _3.wire.ml.XmlElement){ +_7=_7.element; +}else{ +if(_7.nodeType===9){ +_7=_7.documentElement; +} +} +var _8=""; +_6=_8+_3.xml.parser.innerXML(_7); +} +} +} +return _6; +},_getResult:function(_9){ +if(_9){ +_9=new _3.wire.ml.XmlElement(_9); +} +return _9; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/XmlHandler.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/XmlHandler.js.uncompressed.js new file mode 100644 index 00000000..b7b1c32a --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/XmlHandler.js.uncompressed.js @@ -0,0 +1,68 @@ +// wrapped by build app +define("dojox/wire/ml/XmlHandler", ["dijit","dojo","dojox","dojo/require!dojox/wire/ml/RestHandler,dojox/xml/parser,dojox/wire/_base,dojox/wire/ml/util"], function(dijit,dojo,dojox){ +dojo.provide("dojox.wire.ml.XmlHandler"); + +dojo.require("dojox.wire.ml.RestHandler"); +dojo.require("dojox.xml.parser"); +dojo.require("dojox.wire._base"); +dojo.require("dojox.wire.ml.util"); + + +dojo.declare("dojox.wire.ml.XmlHandler", dojox.wire.ml.RestHandler, { + // summary: + // A REST service handler for XML + // description: + // This class provides XML handling for a REST service. + + contentType: "text/xml", + handleAs: "xml", + + _getContent: function(/*String*/method, /*Array*/parameters){ + // description: + // If 'method' is "POST" or "PUT", the first parameter in + // 'parameters' is used to generate an XML content. + // method: + // A method name + // parameters: + // An array of parameters + // returns: + // A request content + var content = null; + if(method == "POST" || method == "PUT"){ + var p = parameters[0]; + if(p){ + if(dojo.isString(p)){ + content = p; + }else{ + var element = p; + if(element instanceof dojox.wire.ml.XmlElement){ + element = element.element; + }else if(element.nodeType === 9 /* DOCUMENT_NODE */){ + element = element.documentElement; + } + var declaration = ""; // TODO: encoding? + content = declaration + dojox.xml.parser.innerXML(element); + } + } + } + return content; + }, + + _getResult: function(/*Document*/data){ + // summary: + // Extract a result + // description: + // A response data (XML Document) is returned wrapped with + // XmlElement. + // data: + // A response data returned by a service + // returns: + // A result object + if(data){ + data = new dojox.wire.ml.XmlElement(data); + } + return data; + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/util.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/util.js new file mode 100644 index 00000000..87eaffbb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/wire/ml/util.js @@ -0,0 +1,206 @@ +//>>built +define("dojox/wire/ml/util",["dijit","dojo","dojox","dojo/require!dojox/xml/parser,dojox/wire/Wire"],function(_1,_2,_3){ +_2.provide("dojox.wire.ml.util"); +_2.require("dojox.xml.parser"); +_2.require("dojox.wire.Wire"); +_3.wire.ml._getValue=function(_4,_5){ +if(!_4){ +return undefined; +} +var _6=undefined; +if(_5&&_4.length>=9&&_4.substring(0,9)=="arguments"){ +_6=_4.substring(9); +return new _3.wire.Wire({property:_6}).getValue(_5); +} +var i=_4.indexOf("."); +if(i>=0){ +_6=_4.substring(i+1); +_4=_4.substring(0,i); +} +var _7=(_1.byId(_4)||_2.byId(_4)||_2.getObject(_4)); +if(!_7){ +return undefined; +} +if(!_6){ +return _7; +}else{ +return new _3.wire.Wire({object:_7,property:_6}).getValue(); +} +}; +_3.wire.ml._setValue=function(_8,_9){ +if(!_8){ +return; +} +var i=_8.indexOf("."); +if(i<0){ +return; +} +var _a=this._getValue(_8.substring(0,i)); +if(!_a){ +return; +} +var _b=_8.substring(i+1); +var _c=new _3.wire.Wire({object:_a,property:_b}).setValue(_9); +}; +_2.declare("dojox.wire.ml.XmlElement",null,{constructor:function(_d){ +if(_2.isString(_d)){ +_d=this._getDocument().createElement(_d); +} +this.element=_d; +},getPropertyValue:function(_e){ +var _f=undefined; +if(!this.element){ +return _f; +} +if(!_e){ +return _f; +} +if(_e.charAt(0)=="@"){ +var _10=_e.substring(1); +_f=this.element.getAttribute(_10); +}else{ +if(_e=="text()"){ +var _11=this.element.firstChild; +if(_11){ +_f=_11.nodeValue; +} +}else{ +var _12=[]; +for(var i=0;i0){ +if(_12.length===1){ +_f=_12[0]; +}else{ +_f=_12; +} +} +} +} +return _f; +},setPropertyValue:function(_14,_15){ +var i; +var _16; +if(!this.element){ +return; +} +if(!_14){ +return; +} +if(_14.charAt(0)=="@"){ +var _17=_14.substring(1); +if(_15){ +this.element.setAttribute(_17,_15); +}else{ +this.element.removeAttribute(_17); +} +}else{ +if(_14=="text()"){ +while(this.element.firstChild){ +this.element.removeChild(this.element.firstChild); +} +if(_15){ +_16=this._getDocument().createTextNode(_15); +this.element.appendChild(_16); +} +}else{ +var _18=null; +var _19; +for(i=this.element.childNodes.length-1;i>=0;i--){ +_19=this.element.childNodes[i]; +if(_19.nodeType===1&&_19.nodeName==_14){ +if(!_18){ +_18=_19.nextSibling; +} +this.element.removeChild(_19); +} +} +if(_15){ +if(_2.isArray(_15)){ +for(i in _15){ +var e=_15[i]; +if(e.element){ +this.element.insertBefore(e.element,_18); +} +} +}else{ +if(_15 instanceof _3.wire.ml.XmlElement){ +if(_15.element){ +this.element.insertBefore(_15.element,_18); +} +}else{ +_19=this._getDocument().createElement(_14); +_16=this._getDocument().createTextNode(_15); +_19.appendChild(_16); +this.element.insertBefore(_19,_18); +} +} +} +} +} +},toString:function(){ +var s=""; +if(this.element){ +var _1a=this.element.firstChild; +if(_1a){ +s=_1a.nodeValue; +} +} +return s; +},toObject:function(){ +if(!this.element){ +return null; +} +var _1b=""; +var obj={}; +var _1c=0; +var i; +for(i=0;i= 9 && source.substring(0, 9) == "arguments"){ + property = source.substring(9); + return new dojox.wire.Wire({property: property}).getValue(args); + } + var i = source.indexOf('.'); + if(i >= 0){ + property = source.substring(i + 1); + source = source.substring(0, i); + } + var object = (dijit.byId(source) || dojo.byId(source) || dojo.getObject(source)); + if(!object){ + return undefined; //undefined + } + if(!property){ + return object; //Object + }else{ + return new dojox.wire.Wire({object: object, property: property}).getValue(); //anything + } +}; + +dojox.wire.ml._setValue = function(/*String*/target, /*anything*/value){ + // summary: + // Store a value + // description: + // This method stores a value by an ID of a widget or an DOM + // element with a dotted notation to its property, using a Wire. + // target: + // A string to specify an object and its property + // value: + // A value + if(!target){ + return; //undefined + } + var i = target.indexOf('.'); + if(i < 0){ + return; //undefined + } + var object = this._getValue(target.substring(0, i)); + if(!object){ + return; //undefined + } + var property = target.substring(i + 1); + var wire = new dojox.wire.Wire({object: object, property: property}).setValue(value); +}; + +dojo.declare("dojox.wire.ml.XmlElement", null, { + // summary: + // An object wrapping an XML element + // description: + // This class represents an XML element. + + constructor: function(/*Element||String*/element){ + // summary: + // Initialize with an XML element or a tag name + // element: + // An XML element or a tag name + if(dojo.isString(element)){ + element = this._getDocument().createElement(element); + } + this.element = element; + }, + getPropertyValue: function(/*String*/property){ + // summary: + // Return a property value + // description: + // If 'property' starts with '@', the attribute value is returned. + // If 'property' specifies "text()", the value of the first child + // text is returned. + // Otherwise, child elements of the tag name specified with + // 'property' are returned. + // property: + // A property name + // returns: + // A property value + var value = undefined; + if(!this.element){ + return value; //undefined + } + if(!property){ + return value; //undefined + } + + if(property.charAt(0) == '@'){ + var attribute = property.substring(1); + value = this.element.getAttribute(attribute); + }else if(property == "text()"){ + var text = this.element.firstChild; + if(text){ + value = text.nodeValue; + } + }else{ // child elements + var elements = []; + for(var i = 0; i < this.element.childNodes.length; i++){ + var child = this.element.childNodes[i]; + if(child.nodeType === 1 /* ELEMENT_NODE */ && child.nodeName == property){ + elements.push(new dojox.wire.ml.XmlElement(child)); + } + } + if(elements.length > 0){ + if(elements.length === 1){ + value = elements[0]; + }else{ + value = elements; + } + } + } + return value; //String||Array||XmlElement + }, + + setPropertyValue: function(/*String*/property, /*String||Array||XmlElement*/value){ + // summary: + // Store a property value + // description: + // If 'property' starts with '@', 'value' is set to the attribute. + // If 'property' specifies "text()", 'value' is set as the first + // child text. + // If 'value' is a string, a child element of the tag name + // specified with 'property' is created and 'value' is set as + // the first child text of the child element. + // Otherwise, 'value' is set to as child elements. + // property: + // A property name + // value: + // A property value + var i; + var text; + if(!this.element){ + return; //undefined + } + if(!property){ + return; //undefined + } + + if(property.charAt(0) == '@'){ + var attribute = property.substring(1); + if(value){ + this.element.setAttribute(attribute, value); + }else{ + this.element.removeAttribute(attribute); + } + }else if(property == "text()"){ + while(this.element.firstChild){ + this.element.removeChild(this.element.firstChild); + } + if(value){ + text = this._getDocument().createTextNode(value); + this.element.appendChild(text); + } + }else{ // child elements + var nextChild = null; + var child; + for(i = this.element.childNodes.length - 1; i >= 0; i--){ + child = this.element.childNodes[i]; + if(child.nodeType === 1 /* ELEMENT_NODE */ && child.nodeName == property){ + if(!nextChild){ + nextChild = child.nextSibling; + } + this.element.removeChild(child); + } + } + if(value){ + if(dojo.isArray(value)){ + for(i in value){ + var e = value[i]; + if(e.element){ + this.element.insertBefore(e.element, nextChild); + } + } + }else if(value instanceof dojox.wire.ml.XmlElement){ + if(value.element){ + this.element.insertBefore(value.element, nextChild); + } + }else{ // assume string + child = this._getDocument().createElement(property); + text = this._getDocument().createTextNode(value); + child.appendChild(text); + this.element.insertBefore(child, nextChild); + } + } + } + }, + + toString: function(){ + // summary: + // Return a value of the first text child of the element + // description: + // A value of the first text child of the element is returned. + // returns: + // A value of the first text child of the element + var s = ""; + if(this.element){ + var text = this.element.firstChild; + if(text){ + s = text.nodeValue; + } + } + return s; //String + }, + + toObject: function(){ + // summary: + // Return an object representation of the element + // description: + // An object with properties for child elements, attributes and + // text is returned. + // returns: + // An object representation of the element + if(!this.element){ + return null; //null + } + var text = ""; + var obj = {}; + var elements = 0; + var i; + for(i = 0; i < this.element.childNodes.length; i++){ + var child = this.element.childNodes[i]; + if(child.nodeType === 1 /* ELEMENT_NODE */){ + elements++; + var o = new dojox.wire.ml.XmlElement(child).toObject(); + var name = child.nodeName; + var p = obj[name]; + if(!p){ + obj[name] = o; + }else if(dojo.isArray(p)){ + p.push(o); + }else{ + obj[name] = [p, o]; // make them array + } + }else if(child.nodeType === 3 /* TEXT_NODE */ || + child.nodeType === 4 /* CDATA_SECTION_NODE */){ + text += child.nodeValue; + } + } + var attributes = 0; + if(this.element.nodeType === 1 /* ELEMENT_NODE */){ + attributes = this.element.attributes.length; + for(i = 0; i < attributes; i++){ + var attr = this.element.attributes[i]; + obj["@" + attr.nodeName] = attr.nodeValue; + } + } + if(elements === 0){ + if(attributes === 0){ + // text only + return text; //String + } + // text with attributes + obj["text()"] = text; + } + // else ignore text + return obj; //Object + }, + + _getDocument: function(){ + // summary: + // Return a DOM document + // description: + // If 'element' is specified, a DOM document of the element is + // returned. + // Otherwise, a DOM document is created. + // returns: + // A DOM document + if(this.element){ + return (this.element.nodeType == 9 /* DOCUMENT_NODE */ ? + this.element : this.element.ownerDocument); //Document + }else{ + return dojox.xml.parser.parse(); //Document + } + } +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/DomParser.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/DomParser.js new file mode 100644 index 00000000..80cf32d7 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/DomParser.js @@ -0,0 +1,319 @@ +//>>built +define("dojox/xml/DomParser",["dojo/_base/kernel","dojo/_base/array"],function(_1){ +_1.getObject("xml",true,dojox); +dojox.xml.DomParser=new (function(){ +var _2={ELEMENT:1,ATTRIBUTE:2,TEXT:3,CDATA_SECTION:4,PROCESSING_INSTRUCTION:7,COMMENT:8,DOCUMENT:9}; +var _3=/<([^>\/\s+]*)([^>]*)>([^<]*)/g; +var _4=/([^=]*)=(("([^"]*)")|('([^']*)'))/g; +var _5=//g; +var _6=//g; +var _7=//g; +var _8=/^\s+|\s+$/g; +var _9=/\s+/g; +var _a=/\>/g; +var _b=/\</g; +var _c=/\"/g; +var _d=/\'/g; +var _e=/\&/g; +var _f="_def_"; +function _10(){ +return new (function(){ +var all={}; +this.nodeType=_2.DOCUMENT; +this.nodeName="#document"; +this.namespaces={}; +this._nsPaths={}; +this.childNodes=[]; +this.documentElement=null; +this._add=function(obj){ +if(typeof (obj.id)!="undefined"){ +all[obj.id]=obj; +} +}; +this._remove=function(id){ +if(all[id]){ +delete all[id]; +} +}; +this.byId=this.getElementById=function(id){ +return all[id]; +}; +this.byName=this.getElementsByTagName=_11; +this.byNameNS=this.getElementsByTagNameNS=_12; +this.childrenByName=_13; +this.childrenByNameNS=_14; +})(); +}; +function _11(_15){ +function _16(_17,_18,arr){ +_1.forEach(_17.childNodes,function(c){ +if(c.nodeType==_2.ELEMENT){ +if(_18=="*"){ +arr.push(c); +}else{ +if(c.nodeName==_18){ +arr.push(c); +} +} +_16(c,_18,arr); +} +}); +}; +var a=[]; +_16(this,_15,a); +return a; +}; +function _12(_19,ns){ +function _1a(_1b,_1c,ns,arr){ +_1.forEach(_1b.childNodes,function(c){ +if(c.nodeType==_2.ELEMENT){ +if(_1c=="*"&&c.ownerDocument._nsPaths[ns]==c.namespace){ +arr.push(c); +}else{ +if(c.localName==_1c&&c.ownerDocument._nsPaths[ns]==c.namespace){ +arr.push(c); +} +} +_1a(c,_1c,ns,arr); +} +}); +}; +if(!ns){ +ns=_f; +} +var a=[]; +_1a(this,_19,ns,a); +return a; +}; +function _13(_1d){ +var a=[]; +_1.forEach(this.childNodes,function(c){ +if(c.nodeType==_2.ELEMENT){ +if(_1d=="*"){ +a.push(c); +}else{ +if(c.nodeName==_1d){ +a.push(c); +} +} +} +}); +return a; +}; +function _14(_1e,ns){ +var a=[]; +_1.forEach(this.childNodes,function(c){ +if(c.nodeType==_2.ELEMENT){ +if(_1e=="*"&&c.ownerDocument._nsPaths[ns]==c.namespace){ +a.push(c); +}else{ +if(c.localName==_1e&&c.ownerDocument._nsPaths[ns]==c.namespace){ +a.push(c); +} +} +} +}); +return a; +}; +function _1f(v){ +return {nodeType:_2.TEXT,nodeName:"#text",nodeValue:v.replace(_9," ").replace(_a,">").replace(_b,"<").replace(_d,"'").replace(_c,"\"").replace(_e,"&")}; +}; +function _20(_21){ +for(var i=0;i0){ +return p.childNodes[i-1]; +} +} +} +return null; +}; +function _29(){ +var p=this.parentNode; +if(p){ +for(var i=0;i0){ +var _2b,eRe=[]; +if(_5.test(str)){ +_5.lastIndex=0; +while((_2b=_5.exec(str))!=null){ +eRe.push({entity:"&"+_2b[1].replace(_8,"")+";",expression:_2b[2]}); +} +for(var i=0;i1){ +if(obj.parentNode){ +obj=obj.parentNode; +} +var _30=(res[3]||"").replace(_8,""); +if(_30.length>0){ +obj.childNodes.push(_1f(_30)); +} +}else{ +if(res[1].length>0){ +if(res[1].charAt(0)=="?"){ +var _31=res[1].substr(1); +var _32=res[2].substr(0,res[2].length-2); +obj.childNodes.push({nodeType:_2.PROCESSING_INSTRUCTION,nodeName:_31,nodeValue:_32}); +}else{ +if(res[1].charAt(0)=="!"){ +if(res[1].indexOf("![CDATA[")==0){ +var val=parseInt(res[1].replace("![CDATA[","").replace("]]","")); +obj.childNodes.push({nodeType:_2.CDATA_SECTION,nodeName:"#cdata-section",nodeValue:_2c[val]}); +}else{ +if(res[1].substr(0,3)=="!--"){ +var val=parseInt(res[1].replace("!--","").replace("--","")); +obj.childNodes.push({nodeType:_2.COMMENT,nodeName:"#comment",nodeValue:_2e[val]}); +} +} +}else{ +var _31=res[1].replace(_8,""); +var o={nodeType:_2.ELEMENT,nodeName:_31,localName:_31,namespace:_f,ownerDocument:_2a,attributes:[],parentNode:null,childNodes:[]}; +if(_31.indexOf(":")>-1){ +var t=_31.split(":"); +o.namespace=t[0]; +o.localName=t[1]; +} +o.byName=o.getElementsByTagName=_11; +o.byNameNS=o.getElementsByTagNameNS=_12; +o.childrenByName=_13; +o.childrenByNameNS=_14; +o.getAttribute=_20; +o.getAttributeNS=_22; +o.setAttribute=_24; +o.setAttributeNS=_26; +o.previous=o.previousSibling=_28; +o.next=o.nextSibling=_29; +var _33; +while((_33=_4.exec(res[2]))!=null){ +if(_33.length>0){ +var _31=_33[1].replace(_8,""); +var val=(_33[4]||_33[6]||"").replace(_9," ").replace(_a,">").replace(_b,"<").replace(_d,"'").replace(_c,"\"").replace(_e,"&"); +if(_31.indexOf("xmlns")==0){ +if(_31.indexOf(":")>0){ +var ns=_31.split(":"); +_2a.namespaces[ns[1]]=val; +_2a._nsPaths[val]=ns[1]; +}else{ +_2a.namespaces[_f]=val; +_2a._nsPaths[val]=_f; +} +}else{ +var ln=_31; +var ns=_f; +if(_31.indexOf(":")>0){ +var t=_31.split(":"); +ln=t[1]; +ns=t[0]; +} +o.attributes.push({nodeType:_2.ATTRIBUTE,nodeName:_31,localName:ln,namespace:ns,nodeValue:val}); +if(ln=="id"){ +o.id=val; +} +} +} +} +_2a._add(o); +if(obj){ +obj.childNodes.push(o); +o.parentNode=obj; +if(res[2].charAt(res[2].length-1)!="/"){ +obj=o; +} +} +var _30=res[3]; +if(_30.length>0){ +obj.childNodes.push(_1f(_30)); +} +} +} +} +} +} +for(var i=0;i<_2a.childNodes.length;i++){ +var e=_2a.childNodes[i]; +if(e.nodeType==_2.ELEMENT){ +_2a.documentElement=e; +break; +} +} +return _2a; +}; +})(); +return dojox.xml.DomParser; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/DomParser.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/DomParser.js.uncompressed.js new file mode 100644 index 00000000..10115a87 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/DomParser.js.uncompressed.js @@ -0,0 +1,395 @@ +define("dojox/xml/DomParser", [ + "dojo/_base/kernel",// dojo.getObject + "dojo/_base/array" // dojo.forEach +], function(dojo){ +dojo.getObject("xml", true, dojox); + +dojox.xml.DomParser=new (function(){ + /********************************************************** + * The DomParser is a close-to (but not entirely) + * conforming XML parser based on regular + * expressions. It will take any XML fragment + * and return a lightweight JS structure that is + * similar to (but not exactly) the DOM specification. + * + * Getter and setter methods are NOT available; the goal + * was to keep the resulting object model entirely JS-like. + * + * All node types but document fragments are supported; + * all nodes support getElementsByTagName and + * getElementsByTagNameNS (with short names byName and + * byNameNS). The document node supports getElementById + * (byId), and all nodes support a supplimental + * childrenByName/childrenByNameNS method as well. + * + * The object model is intended to be a READONLY format; + * mutation events are NOT supported, and though you + * can change properties on a node-by-node basis, certain + * operations are not supported (such as changing the ID + * of an element). + **********************************************************/ + + // internal use only. + var nodeTypes={ ELEMENT:1, ATTRIBUTE:2, TEXT:3, CDATA_SECTION:4, PROCESSING_INSTRUCTION:7, COMMENT:8, DOCUMENT:9 }; + + // compile the regular expressions once. + var reTags=/<([^>\/\s+]*)([^>]*)>([^<]*)/g; + var reAttr=/([^=]*)=(("([^"]*)")|('([^']*)'))/g; // patch from tdedischew AT gmail, with additional grouping + var reEntity=//g; + var reCData=//g; + var reComments=//g; + var trim=/^\s+|\s+$/g; + var normalize=/\s+/g; + var egt=/\>/g; + var elt=/\</g; + var equot=/\"/g; + var eapos=/\'/g; + var eamp=/\&/g; + var dNs="_def_"; + + // create a root node. + function _doc(){ + return new (function(){ + var all={}; + this.nodeType=nodeTypes.DOCUMENT; + this.nodeName="#document"; + this.namespaces={}; + this._nsPaths={}; + this.childNodes=[]; + this.documentElement=null; + + // any element with an ID attribute will be added to the internal hashtable. + this._add=function(obj){ + if(typeof(obj.id)!="undefined"){ all[obj.id]=obj; } + }; + this._remove=function(id){ + if(all[id]){ delete all[id]; } + }; + + this.byId=this.getElementById=function(id){ return all[id]; }; + this.byName=this.getElementsByTagName=byName; + this.byNameNS=this.getElementsByTagNameNS=byNameNS; + this.childrenByName=childrenByName; + this.childrenByNameNS=childrenByNameNS; + })(); + } + + // functions attached to element nodes + function byName(name){ + // return all descendants with name. Fully qualified (i.e. svg:svg) + function __(node, name, arr){ + dojo.forEach(node.childNodes, function(c){ + if(c.nodeType==nodeTypes.ELEMENT){ + if(name=="*"){ arr.push(c); } + else if(c.nodeName==name){ arr.push(c); } + __(c, name, arr); + } + }); + } + var a=[]; + __(this, name, a); + return a; + } + function byNameNS(name, ns){ + // return all descendants with name by namespace. If no namespace passed, the default is used. + function __(node, name, ns, arr){ + dojo.forEach(node.childNodes, function(c){ + if(c.nodeType==nodeTypes.ELEMENT){ + if(name=="*"&&c.ownerDocument._nsPaths[ns]==c.namespace){ arr.push(c); } + else if(c.localName==name&&c.ownerDocument._nsPaths[ns]==c.namespace){ arr.push(c); } + __(c, name, ns, arr); + } + }); + } + if(!ns){ ns=dNs; } + var a=[]; + __(this, name, ns, a); + return a; + } + // Only child nodes with name. + function childrenByName(name){ + var a=[]; + dojo.forEach(this.childNodes, function(c){ + if(c.nodeType==nodeTypes.ELEMENT){ + if(name=="*"){ a.push(c); } + else if(c.nodeName==name){ a.push(c); } + } + }); + return a; + } + + function childrenByNameNS(name, ns){ + var a=[]; + dojo.forEach(this.childNodes, function(c){ + if(c.nodeType==nodeTypes.ELEMENT){ + if(name=="*"&&c.ownerDocument._nsPaths[ns]==c.namespace){ a.push(c); } + else if(c.localName==name&&c.ownerDocument._nsPaths[ns]==c.namespace){ a.push(c); } + } + }); + return a; + } + + function _createTextNode(v){ + return { + nodeType:nodeTypes.TEXT, + nodeName:"#text", + nodeValue:v.replace(normalize," ").replace(egt,">").replace(elt,"<").replace(eapos,"'").replace(equot,'"').replace(eamp,"&") + }; + } + + // attribute functions + function getAttr(name){ + for(var i=0; i0){ + return p.childNodes[i-1]; + } + } + } + return null; + } + function next(){ + var p=this.parentNode; + if(p){ + for(var i=0;i0){ + var entity, eRe=[]; + if(reEntity.test(str)){ + reEntity.lastIndex=0; + // match entities + while((entity=reEntity.exec(str))!=null){ + eRe.push({ + entity:"&"+entity[1].replace(trim,"")+";", + expression:entity[2] + }); + } + // replace instances in the document. + for(var i=0; i1){ + if(obj.parentNode){ + obj=obj.parentNode; + } + var text=(res[3]||"").replace(trim, ""); + if(text.length>0) { + obj.childNodes.push(_createTextNode(text)); + } + } + + // open tags. + else if(res[1].length>0){ + // figure out the type of node. + if(res[1].charAt(0)=="?"){ + // processing instruction + var name=res[1].substr(1); + var target=res[2].substr(0,res[2].length-2); + obj.childNodes.push({ + nodeType:nodeTypes.PROCESSING_INSTRUCTION, + nodeName:name, + nodeValue:target + }); + } + else if(res[1].charAt(0)=="!"){ + // CDATA; skip over any declaration elements. + if(res[1].indexOf("![CDATA[")==0){ + var val=parseInt(res[1].replace("![CDATA[","").replace("]]","")); + obj.childNodes.push({ + nodeType:nodeTypes.CDATA_SECTION, + nodeName:"#cdata-section", + nodeValue:cdSections[val] + }); + } + // Comments. + else if(res[1].substr(0,3)=="!--"){ + var val=parseInt(res[1].replace("!--","").replace("--","")); + obj.childNodes.push({ + nodeType:nodeTypes.COMMENT, + nodeName:"#comment", + nodeValue:comments[val] + }); + } + } + else { + // Elements (with attribute and text) + var name=res[1].replace(trim,""); + var o={ + nodeType:nodeTypes.ELEMENT, + nodeName:name, + localName:name, + namespace:dNs, + ownerDocument:root, + attributes:[], + parentNode:null, + childNodes:[] + }; + + // check to see if it's namespaced. + if(name.indexOf(":")>-1){ + var t=name.split(":"); + o.namespace=t[0]; + o.localName=t[1]; + } + + // set the function references. + o.byName=o.getElementsByTagName=byName; + o.byNameNS=o.getElementsByTagNameNS=byNameNS; + o.childrenByName=childrenByName; + o.childrenByNameNS=childrenByNameNS; + o.getAttribute=getAttr; + o.getAttributeNS=getAttrNS; + o.setAttribute=setAttr; + o.setAttributeNS=setAttrNS; + o.previous=o.previousSibling=prev; + o.next=o.nextSibling=next; + + // parse the attribute string. + var attr; + while((attr=reAttr.exec(res[2]))!=null){ + if(attr.length>0){ + var name=attr[1].replace(trim,""); + var val=(attr[4]||attr[6]||"").replace(normalize," ") + .replace(egt,">") + .replace(elt,"<") + .replace(eapos,"'") + .replace(equot,'"') + .replace(eamp,"&"); + if(name.indexOf("xmlns")==0){ + if(name.indexOf(":")>0){ + var ns=name.split(":"); + root.namespaces[ns[1]]=val; + root._nsPaths[val]=ns[1]; + } else { + root.namespaces[dNs]=val; + root._nsPaths[val]=dNs; + } + } else { + var ln=name; + var ns=dNs; + if(name.indexOf(":")>0){ + var t=name.split(":"); + ln=t[1]; + ns=t[0]; + } + o.attributes.push({ + nodeType:nodeTypes.ATTRIBUTE, + nodeName:name, + localName:ln, + namespace:ns, + nodeValue:val + }); + + // only add id as a property. + if(ln=="id"){ o.id=val; } + } + } + } + root._add(o); + + if(obj){ + obj.childNodes.push(o); + o.parentNode=obj; + // if it's not a self-closing node. + if(res[2].charAt(res[2].length-1)!="/"){ + obj=o; + } + } + var text=res[3]; + if(text.length>0){ + obj.childNodes.push(_createTextNode(text)); + } + } + } + } + + // set the document element + for(var i=0; i>built +define("dojox/xml/Script",["dojo/_base/kernel","dojo/_base/declare","dojo/parser","./widgetParser"],function(_1,_2,_3){ +dojo.getObject("xml",true,dojox); +_1("dojox.xml.Script",null,{constructor:function(_4,_5){ +_2.instantiate(_3._processScript(_5)); +}}); +return dojox.xml.Script; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/Script.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/Script.js.uncompressed.js new file mode 100644 index 00000000..5d458bb6 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/Script.js.uncompressed.js @@ -0,0 +1,20 @@ +define("dojox/xml/Script", [ + "dojo/_base/kernel", // dojo.getObject + "dojo/_base/declare", + "dojo/parser", + "./widgetParser" +], function(declare, parser, widgetParser){ + +dojo.getObject("xml", true, dojox); + +declare("dojox.xml.Script", null, { + constructor: function(props, node){ + parser.instantiate( + widgetParser._processScript(node) + ); + } +}); + +return dojox.xml.Script; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/parser.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/parser.js new file mode 100644 index 00000000..c645b789 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/parser.js @@ -0,0 +1,131 @@ +//>>built +define("dojox/xml/parser",["dojo/_base/kernel","dojo/_base/lang","dojo/_base/array","dojo/_base/window","dojo/_base/sniff"],function(_1){ +_1.getObject("xml.parser",true,dojox); +dojox.xml.parser.parse=function(_2,_3){ +var _4=_1.doc; +var _5; +_3=_3||"text/xml"; +if(_2&&_1.trim(_2)&&"DOMParser" in _1.global){ +var _6=new DOMParser(); +_5=_6.parseFromString(_2,_3); +var de=_5.documentElement; +var _7="http://www.mozilla.org/newlayout/xml/parsererror.xml"; +if(de.nodeName=="parsererror"&&de.namespaceURI==_7){ +var _8=de.getElementsByTagNameNS(_7,"sourcetext")[0]; +if(_8){ +_8=_8.firstChild.data; +} +throw new Error("Error parsing text "+de.firstChild.data+" \n"+_8); +} +return _5; +}else{ +if("ActiveXObject" in _1.global){ +var ms=function(n){ +return "MSXML"+n+".DOMDocument"; +}; +var dp=["Microsoft.XMLDOM",ms(6),ms(4),ms(3),ms(2)]; +_1.some(dp,function(p){ +try{ +_5=new ActiveXObject(p); +} +catch(e){ +return false; +} +return true; +}); +if(_2&&_5){ +_5.async=false; +_5.loadXML(_2); +var pe=_5.parseError; +if(pe.errorCode!==0){ +throw new Error("Line: "+pe.line+"\n"+"Col: "+pe.linepos+"\n"+"Reason: "+pe.reason+"\n"+"Error Code: "+pe.errorCode+"\n"+"Source: "+pe.srcText); +} +} +if(_5){ +return _5; +} +}else{ +if(_4.implementation&&_4.implementation.createDocument){ +if(_2&&_1.trim(_2)&&_4.createElement){ +var _9=_4.createElement("xml"); +_9.innerHTML=_2; +var _a=_4.implementation.createDocument("foo","",null); +_1.forEach(_9.childNodes,function(_b){ +_a.importNode(_b,true); +}); +return _a; +}else{ +return _4.implementation.createDocument("","",null); +} +} +} +} +return null; +}; +dojox.xml.parser.textContent=function(_c,_d){ +if(arguments.length>1){ +var _e=_c.ownerDocument||_1.doc; +dojox.xml.parser.replaceChildren(_c,_e.createTextNode(_d)); +return _d; +}else{ +if(_c.textContent!==undefined){ +return _c.textContent; +} +var _f=""; +if(_c){ +_1.forEach(_c.childNodes,function(_10){ +switch(_10.nodeType){ +case 1: +case 5: +_f+=dojox.xml.parser.textContent(_10); +break; +case 3: +case 2: +case 4: +_f+=_10.nodeValue; +} +}); +} +return _f; +} +}; +dojox.xml.parser.replaceChildren=function(_11,_12){ +var _13=[]; +if(_1.isIE){ +_1.forEach(_11.childNodes,function(_14){ +_13.push(_14); +}); +} +dojox.xml.parser.removeChildren(_11); +_1.forEach(_13,_1.destroy); +if(!_1.isArray(_12)){ +_11.appendChild(_12); +}else{ +_1.forEach(_12,function(_15){ +_11.appendChild(_15); +}); +} +}; +dojox.xml.parser.removeChildren=function(_16){ +var _17=_16.childNodes.length; +while(_16.hasChildNodes()){ +_16.removeChild(_16.firstChild); +} +return _17; +}; +dojox.xml.parser.innerXML=function(_18){ +if(_18.innerXML){ +return _18.innerXML; +}else{ +if(_18.xml){ +return _18.xml; +}else{ +if(typeof XMLSerializer!="undefined"){ +return (new XMLSerializer()).serializeToString(_18); +} +} +} +return null; +}; +return dojox.xml.parser; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/parser.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/parser.js.uncompressed.js new file mode 100644 index 00000000..1e669cc1 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/parser.js.uncompressed.js @@ -0,0 +1,193 @@ +define("dojox/xml/parser", ['dojo/_base/kernel', 'dojo/_base/lang', 'dojo/_base/array', 'dojo/_base/window', 'dojo/_base/sniff'], function(dojo){ + +dojo.getObject("xml.parser", true, dojox); + +//DOM type to int value for reference. +//Ints make for more compact code than full constant names. +//ELEMENT_NODE = 1; +//ATTRIBUTE_NODE = 2; +//TEXT_NODE = 3; +//CDATA_SECTION_NODE = 4; +//ENTITY_REFERENCE_NODE = 5; +//ENTITY_NODE = 6; +//PROCESSING_INSTRUCTION_NODE = 7; +//COMMENT_NODE = 8; +//DOCUMENT_NODE = 9; +//DOCUMENT_TYPE_NODE = 10; +//DOCUMENT_FRAGMENT_NODE = 11; +//NOTATION_NODE = 12; + +dojox.xml.parser.parse = function(/*String?*/ str, /*String?*/ mimetype){ + // summary: + // cross-browser implementation of creating an XML document object from null, empty string, and XML text.. + // + // str: + // Optional text to create the document from. If not provided, an empty XML document will be created. + // If str is empty string "", then a new empty document will be created. + // mimetype: + // Optional mimetype of the text. Typically, this is text/xml. Will be defaulted to text/xml if not provided. + var _document = dojo.doc; + var doc; + + mimetype = mimetype || "text/xml"; + if(str && dojo.trim(str) && "DOMParser" in dojo.global){ + //Handle parsing the text on Mozilla based browsers etc.. + var parser = new DOMParser(); + doc = parser.parseFromString(str, mimetype); + var de = doc.documentElement; + var errorNS = "http://www.mozilla.org/newlayout/xml/parsererror.xml"; + if(de.nodeName == "parsererror" && de.namespaceURI == errorNS){ + var sourceText = de.getElementsByTagNameNS(errorNS, 'sourcetext')[0]; + if(sourceText){ + sourceText = sourceText.firstChild.data; + } + throw new Error("Error parsing text " + de.firstChild.data + " \n" + sourceText); + } + return doc; + + }else if("ActiveXObject" in dojo.global){ + //Handle IE. + var ms = function(n){ return "MSXML" + n + ".DOMDocument"; }; + var dp = ["Microsoft.XMLDOM", ms(6), ms(4), ms(3), ms(2)]; + dojo.some(dp, function(p){ + try{ + doc = new ActiveXObject(p); + }catch(e){ return false; } + return true; + }); + if(str && doc){ + doc.async = false; + doc.loadXML(str); + var pe = doc.parseError; + if(pe.errorCode !== 0){ + throw new Error("Line: " + pe.line + "\n" + + "Col: " + pe.linepos + "\n" + + "Reason: " + pe.reason + "\n" + + "Error Code: " + pe.errorCode + "\n" + + "Source: " + pe.srcText); + } + } + if(doc){ + return doc; //DOMDocument + } + }else if(_document.implementation && _document.implementation.createDocument){ + if(str && dojo.trim(str) && _document.createElement){ + //Everyone else that we couldn't get to work. Fallback case. + // FIXME: this may change all tags to uppercase! + var tmp = _document.createElement("xml"); + tmp.innerHTML = str; + var xmlDoc = _document.implementation.createDocument("foo", "", null); + dojo.forEach(tmp.childNodes, function(child){ + xmlDoc.importNode(child, true); + }); + return xmlDoc; // DOMDocument + }else{ + return _document.implementation.createDocument("", "", null); // DOMDocument + } + } + return null; // null +}; + +dojox.xml.parser.textContent = function(/*Node*/node, /*String?*/text){ + // summary: + // Implementation of the DOM Level 3 attribute; scan node for text + // description: + // Implementation of the DOM Level 3 attribute; scan node for text + // This function can also update the text of a node by replacing all child + // content of the node. + // node: + // The node to get the text off of or set the text on. + // text: + // Optional argument of the text to apply to the node. + if(arguments.length>1){ + var _document = node.ownerDocument || dojo.doc; //Preference is to get the node owning doc first or it may fail + dojox.xml.parser.replaceChildren(node, _document.createTextNode(text)); + return text; // String + }else{ + if(node.textContent !== undefined){ //FF 1.5 -- remove? + return node.textContent; // String + } + var _result = ""; + if(node){ + dojo.forEach(node.childNodes, function(child){ + switch(child.nodeType){ + case 1: // ELEMENT_NODE + case 5: // ENTITY_REFERENCE_NODE + _result += dojox.xml.parser.textContent(child); + break; + case 3: // TEXT_NODE + case 2: // ATTRIBUTE_NODE + case 4: // CDATA_SECTION_NODE + _result += child.nodeValue; + } + }); + } + return _result; // String + } +}; + +dojox.xml.parser.replaceChildren = function(/*Element*/node, /*Node|Array*/ newChildren){ + // summary: + // Removes all children of node and appends newChild. All the existing + // children will be destroyed. + // description: + // Removes all children of node and appends newChild. All the existing + // children will be destroyed. + // node: + // The node to modify the children on + // newChildren: + // The children to add to the node. It can either be a single Node or an + // array of Nodes. + var nodes = []; + + if(dojo.isIE){ + dojo.forEach(node.childNodes, function(child){ + nodes.push(child); + }); + } + + dojox.xml.parser.removeChildren(node); + dojo.forEach(nodes, dojo.destroy); + + if(!dojo.isArray(newChildren)){ + node.appendChild(newChildren); + }else{ + dojo.forEach(newChildren, function(child){ + node.appendChild(child); + }); + } +}; + +dojox.xml.parser.removeChildren = function(/*Element*/node){ + // summary: + // removes all children from node and returns the count of children removed. + // The children nodes are not destroyed. Be sure to call dojo.destroy on them + // after they are not used anymore. + // node: + // The node to remove all the children from. + var count = node.childNodes.length; + while(node.hasChildNodes()){ + node.removeChild(node.firstChild); + } + return count; // int +}; + + +dojox.xml.parser.innerXML = function(/*Node*/node){ + // summary: + // Implementation of MS's innerXML function. + // node: + // The node from which to generate the XML text representation. + if(node.innerXML){ + return node.innerXML; // String + }else if(node.xml){ + return node.xml; // String + }else if(typeof XMLSerializer != "undefined"){ + return (new XMLSerializer()).serializeToString(node); // String + } + return null; +}; + +return dojox.xml.parser; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/widgetParser.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/widgetParser.js new file mode 100644 index 00000000..f63bcb4f --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/widgetParser.js @@ -0,0 +1,61 @@ +//>>built +define("dojox/xml/widgetParser",["dojo/_base/lang","dojo/_base/window","dojo/_base/sniff","dojo/query","dojo/parser","dojox/xml/parser"],function(_1,_2,_3,_4,_5,_6){ +var _7=lang.getObject("dojox.xml",true); +xXml.widgetParser=new function(){ +var d=_1; +this.parseNode=function(_8){ +var _9=[]; +d.query("script[type='text/xml']",_8).forEach(function(_a){ +_9.push.apply(_9,this._processScript(_a)); +},this).orphan(); +return d.parser.instantiate(_9); +}; +this._processScript=function(_b){ +var _c=_b.src?d._getText(_b.src):_b.innerHTML||_b.firstChild.nodeValue; +var _d=this.toHTML(dojox.xml.parser.parse(_c).firstChild); +var _e=d.query("[dojoType]",_d); +_4(">",_d).place(_b,"before"); +_b.parentNode.removeChild(_b); +return _e; +}; +this.toHTML=function(_f){ +var _10; +var _11=_f.nodeName; +var dd=_2.doc; +var _12=_f.nodeType; +if(_12>=3){ +return dd.createTextNode((_12==3||_12==4)?_f.nodeValue:""); +} +var _13=_f.localName||_11.split(":").pop(); +var _14=_f.namespaceURI||(_f.getNamespaceUri?_f.getNamespaceUri():""); +if(_14=="html"){ +_10=dd.createElement(_13); +}else{ +var _15=_14+"."+_13; +_10=_10||dd.createElement((_15=="dijit.form.ComboBox")?"select":"div"); +_10.setAttribute("dojoType",_15); +} +d.forEach(_f.attributes,function(_16){ +var _17=_16.name||_16.nodeName; +var _18=_16.value||_16.nodeValue; +if(_17.indexOf("xmlns")!=0){ +if(_3("ie")&&_17=="style"){ +_10.style.setAttribute("cssText",_18); +}else{ +_10.setAttribute(_17,_18); +} +} +}); +d.forEach(_f.childNodes,function(cn){ +var _19=this.toHTML(cn); +if(_13=="script"){ +_10.text+=_19.nodeValue; +}else{ +_10.appendChild(_19); +} +},this); +return _10; +}; +}(); +return _7.widgetParser; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/widgetParser.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/widgetParser.js.uncompressed.js new file mode 100644 index 00000000..637aa9eb --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xml/widgetParser.js.uncompressed.js @@ -0,0 +1,178 @@ +define("dojox/xml/widgetParser", [ + "dojo/_base/lang", // dojo.getObject + "dojo/_base/window", // dojo.doc + "dojo/_base/sniff", // dojo.isIE + "dojo/query", + "dojo/parser", + "dojox/xml/parser" +], function(dojo, window, has, query, parser, dxparser){ + +var dXml = lang.getObject("dojox.xml", true); + +/** +Take some sort of xml block +* like and turn +* it into a widget.. +*/ + + /** + * We want to support something like: + * + * "); +},findOpenIframe:function(){ +for(var i=0;i0){ +for(var i=0;i<_1c.length;i++){ +_1b.remove(_1c[i].id,_1c[i].frameDoc); +_1c[i].frameDoc=null; +} +_3.xmpp.bosh._deadScripts=[]; +} +return true; +},_ioCheck:function(dfd){ +var _1d=dfd.ioArgs; +if(_1d.xmppMessage){ +return true; +} +return false; +},_resHandle:function(dfd){ +if(_3.xmpp.bosh._ioCheck(dfd)){ +dfd.callback(dfd); +}else{ +dfd.errback(new Error("inconceivable dojox.xmpp.bosh._resHandle error")); +} +}}; +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/bosh.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/bosh.js.uncompressed.js new file mode 100644 index 00000000..020ac527 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/bosh.js.uncompressed.js @@ -0,0 +1,250 @@ +// wrapped by build app +define("dojox/xmpp/bosh", ["dijit","dojo","dojox","dojo/require!dojo/io/script,dojo/io/iframe,dojox/xml/parser"], function(dijit,dojo,dojox){ +dojo.provide("dojox.xmpp.bosh"); + +dojo.require("dojo.io.script"); +dojo.require("dojo.io.iframe"); +dojo.require("dojox.xml.parser"); + +/*===== +dojo.declare("dojox.xmpp.bosh.__initArgs", null, { + constructor: function(){ + // summary: + // The arguments passed to dojox.xmpp.bosh.initialize + // iframes: + // The number of iframes to use for transmission + // load: + // The function called when the first iframe is + // loaded. Generally used to signal when to send + // login information + this.iframes = iframes; + this.load = load; + } +}); +dojo.declare("dojox.xmpp.bosh.__ioArgs", dojo.__IoArgs, { + constructor: function(){ + // summary: + // All the properties described in the dojo.__ioArgs type, apply to this + // type as well, EXCEPT "handleAs". It is not applicable to + // dojox.xmpp.bosh.get() calls, since it is implied that the + // return will be a string of XML. + // rid: + // The rid of the message being sent. + this.rid = rid; + } +}); +=====*/ + +dojox.xmpp.bosh = { + transportIframes: [], + initialize: function(/*dojox.xmpp.bosh.__initArgs*/ args){ + this.transportIframes = []; + + var scopedObj = dojox._scopeName + '.xmpp.bosh'; + + var c = dojo.connect(dojo.getObject(scopedObj), '_iframeOnload', this, function(index){ + if(index==0){ + args.load(); + dojo.disconnect(c); + } + }); + + for(var i = 0; i < args.iframes; i++){ + var fname = 'xmpp-transport-'+i; + var iframe = dojo.byId('xmpp-transport-'+i); + if(iframe){ + // we have to clean up the dojo.io.iframe references + if(window[fname]){ window[fname] = null; } + if(window.frames[fname]){ window.frames[fname] = null; } + dojo.destroy(iframe); + } + iframe = dojo.io.iframe.create("xmpp-transport-" + i, scopedObj + "._iframeOnload("+i+");" ); + this.transportIframes.push(iframe); + } + }, + + _iframeOnload: function(index){ + var doc = dojo.io.iframe.doc(dojo.byId("xmpp-transport-" + index)); + doc.write(""); + }, + + findOpenIframe: function() { + for(var i = 0; i < this.transportIframes.length; i++) { + var iframe = this.transportIframes[i]; + var win = iframe.contentWindow; + //console.log("Open transport?", win, win.isLoaded, win.transmiting); + + if(win.isLoaded && !win.transmiting) { + return iframe; + } + } + return false; + }, + + handle: function(msg, rid){ + var dfd = this['rid'+rid]; + + var xmlMsg = dojox.xml.parser.parse(msg, 'text/xml'); + + if(xmlMsg){ + dfd.ioArgs.xmppMessage = xmlMsg; + }else{ + dfd.errback(new Error("Received bad document from server: " + msg)); + } + }, + + get: function(/*dojox.xmpp.bosh.__ioArgs*/args){ + // summary: + // sends a get request using a dynamically created script tag. + var iframe = this.findOpenIframe(); + var iframeDoc = dojo.io.iframe.doc(iframe); + + args.frameDoc = iframeDoc; + + var dfd = this._makeScriptDeferred(args); + var ioArgs = dfd.ioArgs; + + iframe.contentWindow.rid=ioArgs.rid; + iframe.contentWindow.transmiting=true; + + dojo._ioAddQueryToUrl(ioArgs); + dojo._ioNotifyStart(dfd); + + dojo.io.script.attach(ioArgs.id, ioArgs.url, iframeDoc); + + dojo._ioWatch(dfd, this._validCheck, this._ioCheck, this._resHandle); + return dfd; + }, + + remove: function(/*String*/id, /*Document?*/frameDocument){ + // summary: + // removes the script element with the given id, from the given frameDocument. + // If no frameDocument is passed, the current document is used. + dojo.destroy(dojo.byId(id, frameDocument)); + + //Remove the BOSH callback on dojox.xmpp.bosh, if it exists. + if(this[id]){ + delete this[id]; + } + }, + + _makeScriptDeferred: function(/*Object*/args){ + // summary: + // sets up a Deferred object for an IO request. + var dfd = dojo._ioSetArgs(args, this._deferredCancel, this._deferredOk, this._deferredError); + + var ioArgs = dfd.ioArgs; + + ioArgs.id = 'rid' + args.rid; + ioArgs.rid = args.rid; + ioArgs.canDelete = true; + ioArgs.frameDoc = args.frameDoc; + + this[ioArgs.id] = dfd; + + return dfd; // dojo.Deferred + }, + + _deferredCancel: function(/*Deferred*/dfd){ + // summary: + // canceller function for dojo._ioSetArgs call. + + //DO NOT use "this" and expect it to be dojox.xmpp.bosh. + dfd.canceled = true; + if(dfd.ioArgs.canDelete){ + dojox.xmpp.bosh._addDeadScript(dfd.ioArgs); + } + }, + + _deferredOk: function(/*Deferred*/dfd){ + // summary: + // okHandler function for dojo._ioSetArgs call. + + //DO NOT use "this" and expect it to be dojo.xmpp.bosh. + var ioArgs = dfd.ioArgs; + + //Add script to list of things that can be removed. + if(ioArgs.canDelete){ + dojox.xmpp.bosh._addDeadScript(ioArgs); + } + + //Favor JSONP responses, script load events then lastly ioArgs. + //The ioArgs are goofy, but cannot return the dfd since that stops + //the callback chain in Deferred. The return value is not that important + //in that case, probably a checkString case. + return ioArgs.xmppMessage || ioArgs; + }, + + _deferredError: function(/*Error*/error, /*Deferred*/dfd){ + // summary: + // errHandler function for dojo._ioSetArgs call. + + if(dfd.ioArgs.canDelete){ + //DO NOT use "this" and expect it to be dojox.xmpp.bosh + if(error.dojoType == "timeout"){ + //For timeouts, remove the script element immediately to + //avoid a response from it coming back later and causing trouble. + dojox.xmpp.bosh.remove(dfd.ioArgs.id, dfd.ioArgs.frameDoc); + }else{ + dojox.xmpp.bosh._addDeadScript(dfd.ioArgs); + } + } + return error; + }, + + _deadScripts: [], + _addDeadScript: function(/*Object*/ioArgs){ + // summary: + // sets up an entry in the deadScripts array. + dojox.xmpp.bosh._deadScripts.push({id: ioArgs.id, frameDoc: ioArgs.frameDoc}); + //Being extra paranoid about leaks: + ioArgs.frameDoc = null; + }, + + _validCheck: function(/*Deferred*/dfd){ + // summary: + // inflight check function to see if dfd is still valid. + + //Do script cleanup here. We wait for one inflight pass + //to make sure we don't get any weird things by trying to remove a script + //tag that is part of the call chain (IE 6 has been known to + //crash in that case). + var _self = dojox.xmpp.bosh; + var deadScripts = _self._deadScripts; + if(deadScripts && deadScripts.length > 0){ + for(var i = 0; i < deadScripts.length; i++){ + //Remove the script tag + _self.remove(deadScripts[i].id, deadScripts[i].frameDoc); + deadScripts[i].frameDoc = null; + } + dojox.xmpp.bosh._deadScripts = []; + } + + return true; + }, + + _ioCheck: function(/*Deferred*/dfd){ + // summary: + // inflight check function to see if IO finished. + var ioArgs = dfd.ioArgs; + //Check for returned message + if(ioArgs.xmppMessage){ + return true; + } + return false; + }, + + _resHandle: function(/*Deferred*/dfd){ + // summary: + // inflight function to handle a completed response. + if(dojox.xmpp.bosh._ioCheck(dfd)){ + dfd.callback(dfd); + }else{ + //This path should never happen since the only way we can get + //to _resHandle is if _ioCheck is true. + dfd.errback(new Error("inconceivable dojox.xmpp.bosh._resHandle error")); + } + } +}; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/sasl.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/sasl.js new file mode 100644 index 00000000..f3d48cf9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/sasl.js @@ -0,0 +1,112 @@ +//>>built +define("dojox/xmpp/sasl",["dijit","dojo","dojox","dojo/require!dojox/xmpp/util,dojo/AdapterRegistry,dojox/encoding/digests/MD5"],function(_1,_2,_3){ +_2.provide("dojox.xmpp.sasl"); +_2.require("dojox.xmpp.util"); +_2.require("dojo.AdapterRegistry"); +_2.require("dojox.encoding.digests.MD5"); +_3.xmpp.sasl.saslNS="urn:ietf:params:xml:ns:xmpp-sasl"; +_2.declare("dojox.xmpp.sasl._Base",null,{mechanism:null,closeAuthTag:true,constructor:function(_4){ +this.session=_4; +this.startAuth(); +},startAuth:function(){ +var _5=new _3.string.Builder(_3.xmpp.util.createElement("auth",{xmlns:_3.xmpp.sasl.saslNS,mechanism:this.mechanism},this.closeAuthTag)); +this.appendToAuth(_5); +this.session.dispatchPacket(_5.toString()); +},appendToAuth:function(_6){ +},onChallenge:function(_7){ +if(!this.first_challenge){ +this.first_challenge=true; +this.onFirstChallenge(_7); +}else{ +this.onSecondChallenge(_7); +} +},onFirstChallenge:function(){ +},onSecondChallenge:function(){ +},onSuccess:function(){ +this.session.sendRestart(); +}}); +_2.declare("dojox.xmpp.sasl.SunWebClientAuth",_3.xmpp.sasl._Base,{mechanism:"SUN-COMMS-CLIENT-PROXY-AUTH"}); +_2.declare("dojox.xmpp.sasl.Plain",_3.xmpp.sasl._Base,{mechanism:"PLAIN",closeAuthTag:false,appendToAuth:function(_8){ +var id=this.session.jid; +var _9=this.session.jid.indexOf("@"); +if(_9!=-1){ +id=this.session.jid.substring(0,_9); +} +var _a=this.session.jid+"\x00"+id+"\x00"+this.session.password; +_a=_3.xmpp.util.Base64.encode(_a); +_8.append(_a); +_8.append(""); +delete this.session.password; +}}); +_2.declare("dojox.xmpp.sasl.DigestMD5",_3.xmpp.sasl._Base,{mechanism:"DIGEST-MD5",onFirstChallenge:function(_b){ +var _c=_3.encoding.digests; +var _d=_3.encoding.digests.outputTypes; +var _e=function(n){ +return _c.MD5(n,_d.Hex); +}; +var H=function(s){ +return _c.MD5(s,_d.String); +}; +var _f=_3.xmpp.util.Base64.decode(_b.firstChild.nodeValue); +var ch={realm:"",nonce:"",qop:"auth",maxbuf:65536}; +_f.replace(/([a-z]+)=([^,]+)/g,function(t,k,v){ +v=v.replace(/^"(.+)"$/,"$1"); +ch[k]=v; +}); +var _10=""; +switch(ch.qop){ +case "auth-int": +case "auth-conf": +_10=":00000000000000000000000000000000"; +case "auth": +break; +default: +return false; +} +var _11=_c.MD5(Math.random()*1234567890,_d.Hex); +var _12="xmpp/"+this.session.domain; +var _13=this.session.jid; +var _14=this.session.jid.indexOf("@"); +if(_14!=-1){ +_13=this.session.jid.substring(0,_14); +} +_13=_3.xmpp.util.encodeJid(_13); +var A1=new _3.string.Builder(); +A1.append(H(_13+":"+ch.realm+":"+this.session.password),":",ch.nonce+":"+_11); +delete this.session.password; +var _15=":"+_12+_10; +var A2="AUTHENTICATE"+_15; +var _16=new _3.string.Builder(); +_16.append(_e(A1.toString()),":",ch.nonce,":00000001:",_11,":",ch.qop,":"); +var ret=new _3.string.Builder(); +ret.append("username=\"",_13,"\",","realm=\"",ch.realm,"\",","nonce=",ch.nonce,",","cnonce=\"",_11,"\",","nc=\"00000001\",qop=\"",ch.qop,"\",digest-uri=\"",_12,"\",","response=\"",_e(_16.toString()+_e(A2)),"\",charset=\"utf-8\""); +var _17=new _3.string.Builder(_3.xmpp.util.createElement("response",{xmlns:_3.xmpp.xmpp.SASL_NS},false)); +_17.append(_3.xmpp.util.Base64.encode(ret.toString())); +_17.append(""); +this.rspauth=_e(_16.toString()+_e(_15)); +this.session.dispatchPacket(_17.toString()); +},onSecondChallenge:function(msg){ +var _18=_3.xmpp.util.Base64.decode(msg.firstChild.nodeValue); +if(this.rspauth==_18.substring(8)){ +var _19=new _3.string.Builder(_3.xmpp.util.createElement("response",{xmlns:_3.xmpp.xmpp.SASL_NS},true)); +this.session.dispatchPacket(_19.toString()); +}else{ +} +}}); +_3.xmpp.sasl.registry=new _2.AdapterRegistry(); +_3.xmpp.sasl.registry.register("SUN-COMMS-CLIENT-PROXY-AUTH",function(_1a){ +return _1a=="SUN-COMMS-CLIENT-PROXY-AUTH"; +},function(_1b,_1c){ +return new _3.xmpp.sasl.SunWebClientAuth(_1c); +}); +_3.xmpp.sasl.registry.register("DIGEST-MD5",function(_1d){ +return _1d=="DIGEST-MD5"; +},function(_1e,_1f){ +return new _3.xmpp.sasl.DigestMD5(_1f); +}); +_3.xmpp.sasl.registry.register("PLAIN",function(_20){ +return _20=="PLAIN"; +},function(_21,_22){ +return new _3.xmpp.sasl.Plain(_22); +}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/sasl.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/sasl.js.uncompressed.js new file mode 100644 index 00000000..9a6a8864 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/sasl.js.uncompressed.js @@ -0,0 +1,186 @@ +// wrapped by build app +define("dojox/xmpp/sasl", ["dijit","dojo","dojox","dojo/require!dojox/xmpp/util,dojo/AdapterRegistry,dojox/encoding/digests/MD5"], function(dijit,dojo,dojox){ +dojo.provide("dojox.xmpp.sasl"); +dojo.require("dojox.xmpp.util"); + +dojo.require("dojo.AdapterRegistry"); +dojo.require("dojox.encoding.digests.MD5"); + +dojox.xmpp.sasl.saslNS = "urn:ietf:params:xml:ns:xmpp-sasl"; + +dojo.declare("dojox.xmpp.sasl._Base", null, { + mechanism: null, + closeAuthTag: true, + + constructor: function(session){ + this.session = session; + + this.startAuth(); + }, + startAuth: function(){ + var auth = new dojox.string.Builder(dojox.xmpp.util.createElement("auth", { + xmlns: dojox.xmpp.sasl.saslNS, + mechanism: this.mechanism + }, this.closeAuthTag)); + this.appendToAuth(auth); + this.session.dispatchPacket(auth.toString()); + }, + appendToAuth: function(auth){}, + onChallenge: function(msg){ + if(!this.first_challenge){ + this.first_challenge = true; + this.onFirstChallenge(msg); + }else{ + this.onSecondChallenge(msg); + } + }, + onFirstChallenge: function(){}, + onSecondChallenge: function(){}, + onSuccess: function(){ + this.session.sendRestart(); + } +}); + +dojo.declare("dojox.xmpp.sasl.SunWebClientAuth", dojox.xmpp.sasl._Base, { + mechanism: "SUN-COMMS-CLIENT-PROXY-AUTH" +}); + +dojo.declare("dojox.xmpp.sasl.Plain", dojox.xmpp.sasl._Base, { + mechanism: "PLAIN", + closeAuthTag: false, + + appendToAuth: function(auth){ + var id = this.session.jid; + var index = this.session.jid.indexOf('@'); + if (index != -1){ + id = this.session.jid.substring(0, index); + } + var token = this.session.jid + '\u0000' + id + '\u0000' + this.session.password; + token = dojox.xmpp.util.Base64.encode(token); + + auth.append(token); + auth.append(""); + + delete this.session.password; + } +}); + +dojo.declare("dojox.xmpp.sasl.DigestMD5", dojox.xmpp.sasl._Base, { + mechanism: "DIGEST-MD5", + + onFirstChallenge: function(msg){ + var dxed = dojox.encoding.digests; + var dxedo = dojox.encoding.digests.outputTypes; + var HEX = function(n){ + return dxed.MD5(n, dxedo.Hex); + }; + var H = function(s){ + return dxed.MD5(s, dxedo.String); + }; + + var ch_str = dojox.xmpp.util.Base64.decode(msg.firstChild.nodeValue); + var ch = { + realm: "", + nonce: "", + qop: "auth", + maxbuf: 65536 + }; + ch_str.replace(/([a-z]+)=([^,]+)/g, function(t,k,v){ + v = v.replace(/^"(.+)"$/, "$1"); + ch[k] = v; + }); + + var A2_append = ''; + switch(ch.qop){ + case 'auth-int': + case 'auth-conf': + A2_append = ':00000000000000000000000000000000'; + case 'auth': + break; + default: + return false; + } + var cnonce = dxed.MD5(Math.random() * 1234567890, dxedo.Hex); + var digest_uri = 'xmpp/' + this.session.domain; + + var username = this.session.jid; + var index = this.session.jid.indexOf('@'); + if (index != -1){ + username = this.session.jid.substring(0, index); + } + username = dojox.xmpp.util.encodeJid(username); + + var A1 = new dojox.string.Builder(); + A1.append(H(username + ':' + ch.realm + ':' + this.session.password), + ':', ch.nonce + ':' + cnonce); + delete this.session.password; + var A2_rspauth = ':' + digest_uri + A2_append; + var A2 = 'AUTHENTICATE' + A2_rspauth; + + var response_value = new dojox.string.Builder(); + response_value.append(HEX(A1.toString()), ':', ch.nonce, ':00000001:', cnonce, ':', + ch.qop, ':') + + var ret = new dojox.string.Builder(); + ret.append('username="', username, '",', + 'realm="', ch.realm, '",', + 'nonce=', ch.nonce, ',', + 'cnonce="', cnonce, '",', + 'nc="00000001",qop="', ch.qop, '",digest-uri="', digest_uri, '",', + 'response="', HEX(response_value.toString() + HEX(A2)), '",charset="utf-8"'); + + var response = new dojox.string.Builder(dojox.xmpp.util.createElement("response", { + xmlns: dojox.xmpp.xmpp.SASL_NS + }, false)); + response.append(dojox.xmpp.util.Base64.encode(ret.toString())); + response.append(''); + + this.rspauth = HEX(response_value.toString() + HEX(A2_rspauth)); + + this.session.dispatchPacket(response.toString()); + }, + + onSecondChallenge: function(msg){ + var ch_str = dojox.xmpp.util.Base64.decode(msg.firstChild.nodeValue); + + if(this.rspauth == ch_str.substring(8)){ + var response = new dojox.string.Builder(dojox.xmpp.util.createElement("response", { + xmlns: dojox.xmpp.xmpp.SASL_NS + }, true)); + this.session.dispatchPacket(response.toString()); + }else{ + //FIXME + } + } +}); + +dojox.xmpp.sasl.registry = new dojo.AdapterRegistry(); +dojox.xmpp.sasl.registry.register( + 'SUN-COMMS-CLIENT-PROXY-AUTH', + function(mechanism){ + return mechanism == 'SUN-COMMS-CLIENT-PROXY-AUTH'; + }, + function(mechanism, session){ + return new dojox.xmpp.sasl.SunWebClientAuth(session); + } +); +dojox.xmpp.sasl.registry.register( + 'DIGEST-MD5', + function(mechanism){ + return mechanism == 'DIGEST-MD5'; + }, + function(mechanism, session){ + return new dojox.xmpp.sasl.DigestMD5(session); + } +); +dojox.xmpp.sasl.registry.register( + 'PLAIN', + function(mechanism){ + return mechanism == 'PLAIN'; + }, + function(mechanism, session){ + return new dojox.xmpp.sasl.Plain(session); + } +); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/util.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/util.js new file mode 100644 index 00000000..232bbb25 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/util.js @@ -0,0 +1,129 @@ +//>>built +define("dojox/xmpp/util",["dijit","dojo","dojox","dojo/require!dojox/string/Builder,dojox/encoding/base64"],function(_1,_2,_3){ +_2.provide("dojox.xmpp.util"); +_2.require("dojox.string.Builder"); +_2.require("dojox.encoding.base64"); +_3.xmpp.util.xmlEncode=function(_4){ +if(_4){ +_4=_4.replace("&","&").replace(">",">").replace("<","<").replace("'","'").replace("\"","""); +} +return _4; +}; +_3.xmpp.util.encodeJid=function(_5){ +var _6=new _3.string.Builder(); +for(var i=0;i<_5.length;i++){ +var ch=_5.charAt(i); +var _7=ch; +switch(ch){ +case " ": +_7="\\20"; +break; +case "\"": +_7="\\22"; +break; +case "#": +_7="\\23"; +break; +case "&": +_7="\\26"; +break; +case "'": +_7="\\27"; +break; +case "/": +_7="\\2f"; +break; +case ":": +_7="\\3a"; +break; +case "<": +_7="\\3c"; +break; +case ">": +_7="\\3e"; +break; +} +_6.append(_7); +} +return _6.toString(); +}; +_3.xmpp.util.decodeJid=function(_8){ +_8=_8.replace(/\\([23][02367acef])/g,function(_9){ +switch(_9){ +case "\\20": +return " "; +case "\\22": +return "\""; +case "\\23": +return "#"; +case "\\26": +return "&"; +case "\\27": +return "'"; +case "\\2f": +return "/"; +case "\\3a": +return ":"; +case "\\3c": +return "<"; +case "\\3e": +return ">"; +} +return "ARG"; +}); +return _8; +}; +_3.xmpp.util.createElement=function(_a,_b,_c){ +var _d=new _3.string.Builder("<"); +_d.append(_a+" "); +for(var _e in _b){ +_d.append(_e+"=\""); +_d.append(_b[_e]); +_d.append("\" "); +} +if(_c){ +_d.append("/>"); +}else{ +_d.append(">"); +} +return _d.toString(); +}; +_3.xmpp.util.stripHtml=function(_f){ +var re=/<[^>]*?>/gi; +for(var i=0;i/g,">"); +return ta.value; +}; +_3.xmpp.util.htmlToPlain=function(str){ +str=_3.xmpp.util.decodeHtmlEntities(str); +str=str.replace(//gi,"\n"); +str=_3.xmpp.util.stripHtml(str); +return str; +}; +_3.xmpp.util.Base64={}; +_3.xmpp.util.Base64.encode=function(_10){ +var s2b=function(s){ +var b=[]; +for(var i=0;i", ">").replace("<", "<").replace("'", "'").replace('"', """); + } + return str; +}; + +dojox.xmpp.util.encodeJid = function(jid) { + var buffer = new dojox.string.Builder(); + for(var i =0; i < jid.length; i++) { + var ch = jid.charAt(i); + var rep = ch; + switch(ch){ + case ' ' : + rep = "\\20"; + break; + case '"' : + rep = "\\22"; + break; + case '#' : + rep = "\\23"; + break; + case '&' : + rep = "\\26"; + break; + case "'" : + rep = "\\27"; + break; + case '/' : + rep = "\\2f"; + break; + case ':' : + rep = "\\3a"; + break; + case '<' : + rep = "\\3c"; + break; + case '>' : + rep = "\\3e"; + break; + } + buffer.append(rep); + } + return buffer.toString(); +}; + +dojox.xmpp.util.decodeJid = function(jid) { + + jid = jid.replace(/\\([23][02367acef])/g, function(match) { + switch(match){ + case "\\20" : + return ' '; + case "\\22" : + return '"'; + case "\\23" : + return '#' ; + case "\\26" : + return '&'; + case "\\27" : + return "'"; + case "\\2f" : + return '/'; + case "\\3a" : + return ':' ; + case "\\3c" : + return '<'; + case "\\3e" : + return '>'; + } + return "ARG"; + }); + + return jid; +}; + + +dojox.xmpp.util.createElement = function(tag, attributes, terminal){ + var elem = new dojox.string.Builder("<"); + elem.append(tag + " "); + + for (var attr in attributes){ + elem.append(attr + '="'); + elem.append(attributes[attr]); + elem.append('" '); + } + + if (terminal){ + elem.append("/>"); + }else{ + elem.append(">"); + } + + return elem.toString(); +}; + +dojox.xmpp.util.stripHtml = function(str){ + // summary: + // Strips all HTML, including attributes and brackets + // |
                Click Me
                + // | becomes: Click Me + var re=/<[^>]*?>/gi; + for (var i=0; i/g,">"); + return ta.value; +}; + +dojox.xmpp.util.htmlToPlain = function(str){ + str = dojox.xmpp.util.decodeHtmlEntities(str); + str = str.replace(//gi,"\n"); + str = dojox.xmpp.util.stripHtml(str); + return str; +}; + +dojox.xmpp.util.Base64 = {}; + +dojox.xmpp.util.Base64.encode = function(input){ + var s2b = function(s){ + var b = []; + for(var i = 0; i < s.length; ++i){ + b.push(s.charCodeAt(i)); + } + return b; + }; + return dojox.encoding.base64.encode(s2b(input)); +}; + + +dojox.xmpp.util.Base64.decode = function(input){ + var b2s = function(b){ + var s = []; + dojo.forEach(b, function(c){ s.push(String.fromCharCode(c)); }); + return s.join(""); + }; + return b2s(dojox.encoding.base64.decode(input)); +}; + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/widget/ChatSession.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/widget/ChatSession.js new file mode 100644 index 00000000..11e8c0ff --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/widget/ChatSession.js @@ -0,0 +1,23 @@ +//>>built +define("dojox/xmpp/widget/ChatSession",["dijit","dojo","dojox","dojo/require!dijit/layout/LayoutContainer,dijit/_Templated"],function(_1,_2,_3){ +_2.provide("dojox.xmpp.widget.ChatSession"); +_2.require("dijit.layout.LayoutContainer"); +_2.require("dijit._Templated"); +_2.declare("dojox.xmpp.widget.ChatSession",[_1.layout.LayoutContainer,_1._Templated],{templateString:_2.cache("dojox.xmpp.widget","templates/ChatSession.html","
                \n
                \n
                \n
                \n
                "),enableSubWidgets:true,widgetsInTemplate:true,widgetType:"ChatSession",chatWith:null,instance:null,postCreate:function(){ +},displayMessage:function(_4,_5){ +if(_4){ +var _6=_4.from?this.chatWith:"me"; +this.messages.domNode.innerHTML+=""+_6+": "+_4.body+"
                "; +this.goToLastMessage(); +} +},goToLastMessage:function(){ +this.messages.domNode.scrollTop=this.messages.domNode.scrollHeight; +},onKeyPress:function(e){ +var _7=e.keyCode||e.charCode; +if((_7==_2.keys.ENTER)&&(this.chatInput.value!="")){ +this.instance.sendMessage({body:this.chatInput.value}); +this.displayMessage({body:this.chatInput.value},"out"); +this.chatInput.value=""; +} +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/widget/ChatSession.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/widget/ChatSession.js.uncompressed.js new file mode 100644 index 00000000..2f0dfd55 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/widget/ChatSession.js.uncompressed.js @@ -0,0 +1,45 @@ +// wrapped by build app +define("dojox/xmpp/widget/ChatSession", ["dijit","dojo","dojox","dojo/require!dijit/layout/LayoutContainer,dijit/_Templated"], function(dijit,dojo,dojox){ +dojo.provide("dojox.xmpp.widget.ChatSession"); + +dojo.require("dijit.layout.LayoutContainer"); +dojo.require("dijit._Templated"); + +dojo.declare("dojox.xmpp.widget.ChatSession", + [dijit.layout.LayoutContainer, dijit._Templated], + { + templateString: dojo.cache("dojox.xmpp.widget", "templates/ChatSession.html", "
                \n
                \n
                \n
                \n
                "), + enableSubWidgets: true, + widgetsInTemplate: true, + + widgetType: "ChatSession", + chatWith: null, + instance: null, + postCreate: function(){ + //console.log("Neato!"); + }, + + displayMessage: function(message, type) { + //console.log("displayMessage", this, message); + if(message) { + var name = message.from ? this.chatWith : "me"; + this.messages.domNode.innerHTML += "" + name + ": " + message.body + "
                "; + this.goToLastMessage(); + } + + }, + + goToLastMessage: function() { + this.messages.domNode.scrollTop = this.messages.domNode.scrollHeight; + }, + + onKeyPress: function(e){ + var key = e.keyCode || e.charCode; + if ((key == dojo.keys.ENTER) && (this.chatInput.value != "")){ + this.instance.sendMessage({body: this.chatInput.value}); + this.displayMessage( {body: this.chatInput.value}, "out"); + this.chatInput.value = ""; + } + } +}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/widget/templates/ChatSession.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/widget/templates/ChatSession.html new file mode 100644 index 00000000..0a94d8c9 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/widget/templates/ChatSession.html @@ -0,0 +1,5 @@ +
                +
                +
                +
                +
                \ No newline at end of file diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/xmppSession.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/xmppSession.js new file mode 100644 index 00000000..848eeb72 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/xmppSession.js @@ -0,0 +1,550 @@ +//>>built +define("dojox/xmpp/xmppSession",["dijit","dojo","dojox","dojo/require!dojox/xmpp/TransportSession,dojox/xmpp/RosterService,dojox/xmpp/PresenceService,dojox/xmpp/UserService,dojox/xmpp/ChatService,dojox/xmpp/sasl"],function(_1,_2,_3){ +_2.provide("dojox.xmpp.xmppSession"); +_2.require("dojox.xmpp.TransportSession"); +_2.require("dojox.xmpp.RosterService"); +_2.require("dojox.xmpp.PresenceService"); +_2.require("dojox.xmpp.UserService"); +_2.require("dojox.xmpp.ChatService"); +_2.require("dojox.xmpp.sasl"); +_3.xmpp.xmpp={STREAM_NS:"http://etherx.jabber.org/streams",CLIENT_NS:"jabber:client",STANZA_NS:"urn:ietf:params:xml:ns:xmpp-stanzas",SASL_NS:"urn:ietf:params:xml:ns:xmpp-sasl",BIND_NS:"urn:ietf:params:xml:ns:xmpp-bind",SESSION_NS:"urn:ietf:params:xml:ns:xmpp-session",BODY_NS:"http://jabber.org/protocol/httpbind",XHTML_BODY_NS:"http://www.w3.org/1999/xhtml",XHTML_IM_NS:"http://jabber.org/protocol/xhtml-im",INACTIVE:"Inactive",CONNECTED:"Connected",ACTIVE:"Active",TERMINATE:"Terminate",LOGIN_FAILURE:"LoginFailure",INVALID_ID:-1,NO_ID:0,error:{BAD_REQUEST:"bad-request",CONFLICT:"conflict",FEATURE_NOT_IMPLEMENTED:"feature-not-implemented",FORBIDDEN:"forbidden",GONE:"gone",INTERNAL_SERVER_ERROR:"internal-server-error",ITEM_NOT_FOUND:"item-not-found",ID_MALFORMED:"jid-malformed",NOT_ACCEPTABLE:"not-acceptable",NOT_ALLOWED:"not-allowed",NOT_AUTHORIZED:"not-authorized",SERVICE_UNAVAILABLE:"service-unavailable",SUBSCRIPTION_REQUIRED:"subscription-required",UNEXPECTED_REQUEST:"unexpected-request"}}; +_3.xmpp.xmppSession=function(_4){ +this.roster=[]; +this.chatRegister=[]; +this._iqId=Math.round(Math.random()*1000000000); +if(_4&&_2.isObject(_4)){ +_2.mixin(this,_4); +} +this.session=new _3.xmpp.TransportSession(_4); +_2.connect(this.session,"onReady",this,"onTransportReady"); +_2.connect(this.session,"onTerminate",this,"onTransportTerminate"); +_2.connect(this.session,"onProcessProtocolResponse",this,"processProtocolResponse"); +}; +_2.extend(_3.xmpp.xmppSession,{roster:[],chatRegister:[],_iqId:0,open:function(_5,_6,_7){ +if(!_5){ +throw new Error("User id cannot be null"); +}else{ +this.jid=_5; +if(_5.indexOf("@")==-1){ +this.jid=this.jid+"@"+this.domain; +} +} +if(_6){ +this.password=_6; +} +if(_7){ +this.resource=_7; +} +this.session.open(); +},close:function(){ +this.state=_3.xmpp.xmpp.TERMINATE; +this.session.close(_3.xmpp.util.createElement("presence",{type:"unavailable",xmlns:_3.xmpp.xmpp.CLIENT_NS},true)); +},processProtocolResponse:function(_8){ +var _9=_8.nodeName; +var _a=_9.indexOf(":"); +if(_a>0){ +_9=_9.substring(_a+1); +} +switch(_9){ +case "iq": +case "presence": +case "message": +case "features": +this[_9+"Handler"](_8); +break; +default: +if(_8.getAttribute("xmlns")==_3.xmpp.xmpp.SASL_NS){ +this.saslHandler(_8); +} +} +},messageHandler:function(_b){ +switch(_b.getAttribute("type")){ +case "chat": +this.chatHandler(_b); +break; +case "normal": +break; +default: +this.simpleMessageHandler(_b); +} +},iqHandler:function(_c){ +if(_c.getAttribute("type")=="set"){ +this.iqSetHandler(_c); +return; +}else{ +if(_c.getAttribute("type")=="get"){ +return; +} +} +},presenceHandler:function(_d){ +switch(_d.getAttribute("type")){ +case "subscribe": +this.presenceSubscriptionRequest(_d.getAttribute("from")); +break; +case "subscribed": +case "unsubscribed": +break; +case "error": +this.processXmppError(_d); +break; +default: +this.presenceUpdate(_d); +break; +} +},featuresHandler:function(_e){ +var _f=[]; +var _10=false; +var _11=false; +if(_e.hasChildNodes()){ +for(var i=0;i<_e.childNodes.length;i++){ +var n=_e.childNodes[i]; +switch(n.nodeName){ +case "mechanisms": +for(var x=0;x-1&&_13){ +var _15=this.chatRegister[_14]; +_15.setState(_13); +if(_15.firstMessage){ +if(_13==_3.xmpp.chat.ACTIVE_STATE){ +_15.useChatState=(_13!==null)?true:false; +_15.firstMessage=false; +} +} +} +if((!_12.body||_12.body==="")&&!_12.xhtml){ +return; +} +if(_14>-1){ +var _15=this.chatRegister[_14]; +_15.receiveMessage(_12); +}else{ +var _16=new _3.xmpp.ChatService(); +_16.uid=this.getBareJid(_12.from); +_16.chatid=_12.chatid; +_16.firstMessage=true; +if(!_13||_13!=_3.xmpp.chat.ACTIVE_STATE){ +this.useChatState=false; +} +this.registerChatInstance(_16,_12); +} +},simpleMessageHandler:function(msg){ +},registerChatInstance:function(_17,_18){ +_17.setSession(this); +this.chatRegister.push(_17); +this.onRegisterChatInstance(_17,_18); +_17.receiveMessage(_18,true); +},iqSetHandler:function(msg){ +if(msg.hasChildNodes()){ +var fn=msg.firstChild; +switch(fn.nodeName){ +case "query": +if(fn.getAttribute("xmlns")=="jabber:iq:roster"){ +this.rosterSetHandler(fn); +this.sendIqResult(msg.getAttribute("id"),msg.getAttribute("from")); +} +break; +default: +break; +} +} +},sendIqResult:function(_19,to){ +var req={id:_19,to:to||this.domain,type:"result",from:this.jid+"/"+this.resource}; +this.dispatchPacket(_3.xmpp.util.createElement("iq",req,true)); +},rosterSetHandler:function(_1a){ +var r; +for(var i=0;i<_1a.childNodes.length;i++){ +var n=_1a.childNodes[i]; +if(n.nodeName=="item"){ +var _1b=false; +var _1c=-1; +var _1d=null; +var _1e=null; +for(var x=0;x"); +var def=this.dispatchPacket(req,"iq",_23.id); +def.addCallback(this,"onRetrieveRoster"); +},getRosterIndex:function(jid){ +if(jid.indexOf("@")==-1){ +jid+="@"+this.domain; +} +for(var i=0;i"); +} +_27.append(""); +var def=this.dispatchPacket(_27,"iq",_26.id); +def.addCallback(this,function(msg){ +this.onBindResource(msg,_25); +return msg; +}); +},getNextIqId:function(){ +return "im_"+this._iqId++; +},presenceSubscriptionRequest:function(msg){ +this.onSubscriptionRequest(msg); +},dispatchPacket:function(msg,_28,_29){ +if(this.state!="Terminate"){ +return this.session.dispatchPacket(msg,_28,_29); +}else{ +} +},setState:function(_2a,_2b){ +if(this.state!=_2a){ +if(this["on"+_2a]){ +this["on"+_2a](_2a,this.state,_2b); +} +this.state=_2a; +} +},search:function(_2c,_2d,_2e){ +var req={id:this.getNextIqId(),"xml:lang":this.lang,type:"set",from:this.jid+"/"+this.resource,to:_2d}; +var _2f=new _3.string.Builder(_3.xmpp.util.createElement("iq",req,false)); +_2f.append(_3.xmpp.util.createElement("query",{xmlns:"jabber:iq:search"},false)); +_2f.append(_3.xmpp.util.createElement(_2e,{},false)); +_2f.append(_2c); +_2f.append(""); +_2f.append(""); +var def=this.dispatchPacket(_2f.toString,"iq",req.id); +def.addCallback(this,"_onSearchResults"); +},_onSearchResults:function(msg){ +if((msg.getAttribute("type")=="result")&&(msg.hasChildNodes())){ +this.onSearchResults([]); +} +},onLogin:function(){ +this.retrieveRoster(); +},onLoginFailure:function(msg){ +},onBindResource:function(msg,_30){ +if(msg.getAttribute("type")=="result"){ +if((msg.hasChildNodes())&&(msg.firstChild.nodeName=="bind")){ +var _31=msg.firstChild; +if((_31.hasChildNodes())&&(_31.firstChild.nodeName=="jid")){ +if(_31.firstChild.hasChildNodes()){ +var _32=_31.firstChild.firstChild.nodeValue; +this.jid=this.getBareJid(_32); +this.resource=this.getResourceFromJid(_32); +} +} +if(_30){ +var _33={id:this.getNextIqId(),type:"set"}; +var _34=new _3.string.Builder(_3.xmpp.util.createElement("iq",_33,false)); +_34.append(_3.xmpp.util.createElement("session",{xmlns:_3.xmpp.xmpp.SESSION_NS},true)); +_34.append(""); +var def=this.dispatchPacket(_34,"iq",_33.id); +def.addCallback(this,"onBindSession"); +return; +} +}else{ +} +this.onLogin(); +}else{ +if(msg.getAttribute("type")=="error"){ +var err=this.processXmppError(msg); +this.onLoginFailure(err); +} +} +},onBindSession:function(msg){ +if(msg.getAttribute("type")=="error"){ +var err=this.processXmppError(msg); +this.onLoginFailure(err); +}else{ +this.onLogin(); +} +},onSearchResults:function(_35){ +},onRetrieveRoster:function(msg){ +if((msg.getAttribute("type")=="result")&&msg.hasChildNodes()){ +var _36=msg.getElementsByTagName("query")[0]; +if(_36.getAttribute("xmlns")=="jabber:iq:roster"){ +for(var i=0;i<_36.childNodes.length;i++){ +if(_36.childNodes[i].nodeName=="item"){ +this.roster[i]=this.createRosterEntry(_36.childNodes[i]); +} +} +} +}else{ +if(msg.getAttribute("type")=="error"){ +} +} +this.setState(_3.xmpp.xmpp.ACTIVE); +this.onRosterUpdated(); +return msg; +},onRosterUpdated:function(){ +},onSubscriptionRequest:function(req){ +},onPresenceUpdate:function(p){ +},onTransportReady:function(){ +this.setState(_3.xmpp.xmpp.CONNECTED); +this.rosterService=new _3.xmpp.RosterService(this); +this.presenceService=new _3.xmpp.PresenceService(this); +this.userService=new _3.xmpp.UserService(this); +},onTransportTerminate:function(_37,_38,_39){ +this.setState(_3.xmpp.xmpp.TERMINATE,_39); +},onConnected:function(){ +},onTerminate:function(_3a,_3b,_3c){ +},onActive:function(){ +},onRegisterChatInstance:function(_3d,_3e){ +},onRosterAdded:function(ri){ +},onRosterRemoved:function(ri){ +},onRosterChanged:function(ri,_3f){ +},processXmppError:function(msg){ +var err={stanzaType:msg.nodeName,id:msg.getAttribute("id")}; +for(var i=0;i"); +} +_44.append(""); +this.dispatchPacket(_44.toString()); +},getBareJid:function(jid){ +var i=jid.indexOf("/"); +if(i!=-1){ +return jid.substring(0,i); +} +return jid; +},getResourceFromJid:function(jid){ +var i=jid.indexOf("/"); +if(i!=-1){ +return jid.substring((i+1),jid.length); +} +return ""; +}}); +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/xmppSession.js.uncompressed.js b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/xmppSession.js.uncompressed.js new file mode 100644 index 00000000..6ba7f94c --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/dojo/dojox/xmpp/xmppSession.js.uncompressed.js @@ -0,0 +1,857 @@ +// wrapped by build app +define("dojox/xmpp/xmppSession", ["dijit","dojo","dojox","dojo/require!dojox/xmpp/TransportSession,dojox/xmpp/RosterService,dojox/xmpp/PresenceService,dojox/xmpp/UserService,dojox/xmpp/ChatService,dojox/xmpp/sasl"], function(dijit,dojo,dojox){ +dojo.provide("dojox.xmpp.xmppSession"); + +dojo.require("dojox.xmpp.TransportSession"); +dojo.require("dojox.xmpp.RosterService"); +dojo.require("dojox.xmpp.PresenceService"); +dojo.require("dojox.xmpp.UserService"); +dojo.require("dojox.xmpp.ChatService"); +dojo.require("dojox.xmpp.sasl"); + +dojox.xmpp.xmpp = { + STREAM_NS: 'http://etherx.jabber.org/streams', + CLIENT_NS: 'jabber:client', + STANZA_NS: 'urn:ietf:params:xml:ns:xmpp-stanzas', + SASL_NS: 'urn:ietf:params:xml:ns:xmpp-sasl', + BIND_NS: 'urn:ietf:params:xml:ns:xmpp-bind', + SESSION_NS: 'urn:ietf:params:xml:ns:xmpp-session', + BODY_NS: "http://jabber.org/protocol/httpbind", + + XHTML_BODY_NS: "http://www.w3.org/1999/xhtml", + XHTML_IM_NS: "http://jabber.org/protocol/xhtml-im", + + INACTIVE: "Inactive", + CONNECTED: "Connected", + ACTIVE: "Active", + TERMINATE: "Terminate", + LOGIN_FAILURE: "LoginFailure", + + INVALID_ID: -1, + NO_ID: 0, + + error:{ + BAD_REQUEST: 'bad-request', + CONFLICT: 'conflict', + FEATURE_NOT_IMPLEMENTED: 'feature-not-implemented', + FORBIDDEN: 'forbidden', + GONE: 'gone', + INTERNAL_SERVER_ERROR: 'internal-server-error', + ITEM_NOT_FOUND: 'item-not-found', + ID_MALFORMED: 'jid-malformed', + NOT_ACCEPTABLE: 'not-acceptable', + NOT_ALLOWED: 'not-allowed', + NOT_AUTHORIZED: 'not-authorized', + SERVICE_UNAVAILABLE: 'service-unavailable', + SUBSCRIPTION_REQUIRED: 'subscription-required', + UNEXPECTED_REQUEST: 'unexpected-request' + } +}; + +dojox.xmpp.xmppSession = function(props){ + this.roster = []; + this.chatRegister = []; + this._iqId = Math.round(Math.random() * 1000000000); + + //mixin any options that we want to provide to this service + if (props && dojo.isObject(props)) { + dojo.mixin(this, props); + } + + this.session = new dojox.xmpp.TransportSession(props); + dojo.connect(this.session, "onReady", this, "onTransportReady"); + dojo.connect(this.session, "onTerminate", this, "onTransportTerminate"); + dojo.connect(this.session, "onProcessProtocolResponse", this, "processProtocolResponse"); +}; + + +dojo.extend(dojox.xmpp.xmppSession, { + + roster: [], + chatRegister: [], + _iqId: 0, + + open: function(user, password, resource){ + + if (!user) { + throw new Error("User id cannot be null"); + } else { + this.jid = user; + if(user.indexOf('@') == -1) { + this.jid = this.jid + '@' + this.domain; + } + } + + //allow null password here as its not needed in the SSO case + if (password) { + this.password = password; + } + + //normally you should NOT supply a resource and let the server send you one + //as part of your jid...see onBindResource() + if (resource) { + this.resource = resource; + } + + this.session.open(); + }, + + close: function(){ + this.state = dojox.xmpp.xmpp.TERMINATE; + this.session.close(dojox.xmpp.util.createElement("presence",{type:"unavailable",xmlns:dojox.xmpp.xmpp.CLIENT_NS},true)); + }, + + processProtocolResponse: function(msg){ + //console.log("xmppSession::processProtocolResponse() ", msg, msg.nodeName); + var type = msg.nodeName; + var nsIndex =type.indexOf(":"); + if(nsIndex > 0) { + type = type.substring(nsIndex+1); + } + switch(type){ + case "iq": + case "presence": + case "message": + case "features": + this[type + "Handler"](msg); + break; + default: + //console.log("default action?", msg.getAttribute('xmlns')); + if(msg.getAttribute('xmlns')==dojox.xmpp.xmpp.SASL_NS){ + this.saslHandler(msg); + } + } + }, + + //HANDLERS + + messageHandler: function(msg){ + //console.log("xmppSession::messageHandler() ",msg); + switch(msg.getAttribute('type')){ + case "chat": + this.chatHandler(msg); + break; + case "normal": + break; + default: + this.simpleMessageHandler(msg); + } + + }, + + iqHandler: function(msg){ + //console.log("xmppSession::iqHandler()", msg); + if (msg.getAttribute('type')=="set"){ + this.iqSetHandler(msg); + return; + } else if (msg.getAttribute('type')=='get'){ + // this.sendStanzaError('iq', this.domain, msg.getAttribute('from'), 'cancel', 'service-unavailable', 'service not implemented'); + return; + } + }, + + presenceHandler: function(msg){ + //console.log("xmppSession::presenceHandler()"); + switch(msg.getAttribute('type')){ + case 'subscribe': + //console.log("PresenceHandler: ", msg.getAttribute('from')); + this.presenceSubscriptionRequest(msg.getAttribute('from')); + break; + case 'subscribed': + case 'unsubscribed': + break; + case 'error': + this.processXmppError(msg); + //console.log("xmppService::presenceHandler() Error"); + break; + default: + this.presenceUpdate(msg); + break; + } + }, + + featuresHandler: function(msg){ + //console.log("xmppSession::featuresHandler() ",msg); + var authMechanisms = []; + var hasBindFeature = false; + var hasSessionFeature = false; + + if(msg.hasChildNodes()){ + for(var i=0; i-1 && chatState){ + var chat = this.chatRegister[found]; + chat.setState(chatState); + + if (chat.firstMessage){ + if (chatState == dojox.xmpp.chat.ACTIVE_STATE) { + chat.useChatState = (chatState !== null) ? true : false; + chat.firstMessage = false; + } + } + } + + if ((!message.body || message.body==="") && !message.xhtml) {return;} + + if (found>-1){ + var chat = this.chatRegister[found]; + chat.receiveMessage(message); + }else{ + var chatInstance = new dojox.xmpp.ChatService(); + chatInstance.uid = this.getBareJid(message.from); + chatInstance.chatid = message.chatid; + chatInstance.firstMessage = true; + if(!chatState || chatState != dojox.xmpp.chat.ACTIVE_STATE){ + this.useChatState = false; + } + this.registerChatInstance(chatInstance, message); + } + }, + + simpleMessageHandler: function(msg){ + //console.log("xmppSession::simpleMessageHandler() ", msg); + }, + + registerChatInstance: function(chatInstance, message){ + chatInstance.setSession(this); + this.chatRegister.push(chatInstance); + this.onRegisterChatInstance(chatInstance, message); + chatInstance.receiveMessage(message,true); + }, + + iqSetHandler: function(msg){ + if (msg.hasChildNodes()){ + var fn = msg.firstChild; + switch(fn.nodeName){ + case 'query': + if(fn.getAttribute('xmlns') == "jabber:iq:roster"){ + this.rosterSetHandler(fn); + this.sendIqResult(msg.getAttribute('id'), msg.getAttribute('from')); + } + break; + default: + // this.sendStanzaError('iq', this.domain, msg.getAttribute('id'), 'cancel', 'service-unavailable', 'service not implemented'); + break; + } + } + }, + + sendIqResult: function(iqId, to){ + var req = { + id: iqId, + to: to || this.domain, + type: 'result', + from: this.jid + "/" + this.resource + }; + this.dispatchPacket(dojox.xmpp.util.createElement("iq",req,true)); + }, + + rosterSetHandler: function(elem){ + //console.log("xmppSession::rosterSetHandler()", arguments); + var r; + for (var i=0; i"); + + var def = this.dispatchPacket(req,"iq", props.id); + def.addCallback(this, "onRetrieveRoster"); + + }, + + getRosterIndex: function(jid){ + if(jid.indexOf('@')==-1){ + jid += '@' + this.domain; + } + for (var i=0; i 0 || + re.name + ) { + re.displayToUser = true; + } +*/ + return re; + }, + + bindResource: function(hasSession){ + var props = { + id: this.getNextIqId(), + type: "set" + }; + var bindReq = new dojox.string.Builder(dojox.xmpp.util.createElement("iq", props, false)); + bindReq.append(dojox.xmpp.util.createElement("bind", {xmlns: dojox.xmpp.xmpp.BIND_NS}, false)); + + if (this.resource){ + bindReq.append(dojox.xmpp.util.createElement("resource")); + bindReq.append(this.resource); + bindReq.append(""); + } + + bindReq.append(""); + + var def = this.dispatchPacket(bindReq, "iq", props.id); + def.addCallback(this, function(msg){ + this.onBindResource(msg, hasSession); + return msg; + }); + }, + + getNextIqId: function(){ + return "im_" + this._iqId++; + }, + + presenceSubscriptionRequest: function(msg) { + this.onSubscriptionRequest(msg); + /* + this.onSubscriptionRequest({ + from: msg, + resource:"", + show:"", + status:"", + priority: 5 + }); + */ + }, + + dispatchPacket: function(msg, type, matchId){ + if (this.state != "Terminate") { + return this.session.dispatchPacket(msg,type,matchId); + }else{ + + //console.log("xmppSession::dispatchPacket - Session in Terminate state, dropping packet"); + } + }, + + setState: function(state, message){ + if (this.state != state){ + if (this["on"+state]){ + this["on"+state](state, this.state, message); + } + this.state=state; + } + }, + + search: function(searchString, service, searchAttribute){ + var req={ + id: this.getNextIqId(), + "xml:lang": this.lang, + type: 'set', + from: this.jid + '/' + this.resource, + to: service + }; + var request = new dojox.string.Builder(dojox.xmpp.util.createElement("iq",req,false)); + request.append(dojox.xmpp.util.createElement('query',{xmlns:'jabber:iq:search'},false)); + request.append(dojox.xmpp.util.createElement(searchAttribute,{},false)); + request.append(searchString); + request.append(""); + request.append(""); + + var def = this.dispatchPacket(request.toString,"iq",req.id); + def.addCallback(this, "_onSearchResults"); + }, + + _onSearchResults: function(msg){ + if ((msg.getAttribute('type')=='result')&&(msg.hasChildNodes())){ + //console.log("xmppSession::_onSearchResults(): ", msg.firstChild); + + //call the search results event with an array of results + this.onSearchResults([]); + } + }, + + // EVENTS + + onLogin: function(){ + ////console.log("xmppSession::onLogin()"); + this.retrieveRoster(); + }, + + onLoginFailure: function(msg){ + //console.log("xmppSession::onLoginFailure ", msg); + }, + + onBindResource: function(msg, hasSession){ + //console.log("xmppSession::onBindResource() ", msg); + + if (msg.getAttribute('type')=='result'){ + //console.log("xmppSession::onBindResource() Got Result Message"); + if ((msg.hasChildNodes()) && (msg.firstChild.nodeName=="bind")){ + var bindTag = msg.firstChild; + if ((bindTag.hasChildNodes()) && (bindTag.firstChild.nodeName=="jid")){ + if (bindTag.firstChild.hasChildNodes()){ + var fulljid = bindTag.firstChild.firstChild.nodeValue; + this.jid = this.getBareJid(fulljid); + this.resource = this.getResourceFromJid(fulljid); + } + } + if(hasSession){ + var props = { + id: this.getNextIqId(), + type: "set" + }; + var bindReq = new dojox.string.Builder(dojox.xmpp.util.createElement("iq", props, false)); + bindReq.append(dojox.xmpp.util.createElement("session", {xmlns: dojox.xmpp.xmpp.SESSION_NS}, true)); + bindReq.append(""); + + var def = this.dispatchPacket(bindReq, "iq", props.id); + def.addCallback(this, "onBindSession"); + return; + } + }else{ + //console.log("xmppService::onBindResource() No Bind Element Found"); + } + + this.onLogin(); + + }else if(msg.getAttribute('type')=='error'){ + //console.log("xmppSession::onBindResource() Bind Error ", msg); + var err = this.processXmppError(msg); + this.onLoginFailure(err); + } + }, + + onBindSession: function(msg){ + if(msg.getAttribute('type')=='error'){ + //console.log("xmppSession::onBindSession() Bind Error ", msg); + var err = this.processXmppError(msg); + this.onLoginFailure(err); + }else{ + this.onLogin(); + } + }, + + onSearchResults: function(results){ + //console.log("xmppSession::onSearchResult() ", results); + }, + + onRetrieveRoster: function(msg){ + ////console.log("xmppService::onRetrieveRoster() ", arguments); + + if ((msg.getAttribute('type')=='result') && msg.hasChildNodes()){ + var query = msg.getElementsByTagName('query')[0]; + if (query.getAttribute('xmlns')=="jabber:iq:roster"){ + for (var i=0;i"); + } + request.append(""); + + this.dispatchPacket(request.toString()); + }, + + getBareJid: function(jid){ + var i = jid.indexOf('/'); + if (i != -1){ + return jid.substring(0, i); + } + return jid; + }, + + getResourceFromJid: function(jid){ + var i = jid.indexOf('/'); + if (i != -1){ + return jid.substring((i + 1), jid.length); + } + return ""; + } + +}); + +}); diff --git a/src/hos_cosgi_testwebapp/webroot/DojoApp/hello.html b/src/hos_cosgi_testwebapp/webroot/DojoApp/hello.html new file mode 100644 index 00000000..b27f2d58 --- /dev/null +++ b/src/hos_cosgi_testwebapp/webroot/DojoApp/hello.html @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + +

                Hello

                +
                +

                + + + \ No newline at end of file diff --git a/src/hos_deps/cmake/Modules/FindPoco.cmake b/src/hos_deps/cmake/Modules/FindPoco.cmake index d6d5c1c6..e9a0533a 100644 --- a/src/hos_deps/cmake/Modules/FindPoco.cmake +++ b/src/hos_deps/cmake/Modules/FindPoco.cmake @@ -1,211 +1,37 @@ -# - Find the Poco includes and libraries. -# The following variables are set if Poco is found. If Poco is not -# found, Poco_FOUND is set to false. -# Poco_FOUND - True when the Poco include directory is found. -# Poco_INCLUDE_DIRS - the path to where the poco include files are. -# Poco_LIBRARY_DIR - The path to where the poco library files are. -# Poco_BINARY_DIRS - The path to where the poco dlls are. -# Poco_LIBRARIES - list of all libs from requested components. - -# ---------------------------------------------------------------------------- -# If you have installed Poco in a non-standard location. -# Then you have three options. -# In the following comments, it is assumed that -# points to the root directory of the include directory of Poco. e.g -# If you have put poco in C:\development\Poco then is -# "C:/development/Poco" and in this directory there will be two -# directories called "include" and "lib". -# 1) After CMake runs, set Poco_INCLUDE_DIR to /poco<-version> -# 2) Use CMAKE_INCLUDE_PATH to set a path to /poco<-version>. This will allow FIND_PATH() -# to locate Poco_INCLUDE_DIR by utilizing the PATH_SUFFIXES option. e.g. -# SET(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} "/include") -# 3) Set an environment variable called ${POCO_ROOT} that points to the root of where you have -# installed Poco, e.g. . It is assumed that there is at least a subdirectory called -# Foundation/include/Poco in this path. -# -# Note: -# 1) If you are just using the poco headers, then you do not need to use -# Poco_LIBRARY_DIR in your CMakeLists.txt file. -# 2) If Poco has not been installed, then when setting Poco_LIBRARY_DIR -# the script will look for /lib first and, if this fails, then for /stage/lib. -# -# Usage: -# In your CMakeLists.txt file do something like this: -# ... -# # Poco -# FIND_PACKAGE(Poco COMPONENTS XML Net Data...) -# ... -# INCLUDE_DIRECTORIES(${Poco_INCLUDE_DIRS}) -# LINK_DIRECTORIES(${Poco_LIBRARY_DIR}) -# -# In Windows, we make the assumption that, if the Poco files are installed, the default directory -# will be C:\poco or C:\Program Files\Poco or C:\Programme\Poco. - -MESSAGE(STATUS "Searching for Poco library...") - -SET(POCO_INCLUDE_PATH_DESCRIPTION "top-level directory containing the poco include directories. E.g /usr/local/include/ or c:\\poco\\include\\poco-1.3.2") -SET(POCO_INCLUDE_DIR_MESSAGE "Set the Poco_INCLUDE_DIR cmake cache entry to the ${POCO_INCLUDE_PATH_DESCRIPTION}") -SET(POCO_LIBRARY_PATH_DESCRIPTION "top-level directory containing the poco libraries.") -SET(POCO_LIBRARY_DIR_MESSAGE "Set the Poco_LIBRARY_DIR cmake cache entry to the ${POCO_LIBRARY_PATH_DESCRIPTION}") -SET(POCO_DIR_SEARCH $ENV{POCO_ROOT}) -IF(POCO_DIR_SEARCH) - FILE(TO_CMAKE_PATH ${POCO_DIR_SEARCH} POCO_DIR_SEARCH) -ENDIF(POCO_DIR_SEARCH) +find_path(Poco_INCLUDE_DIR Poco/SharedLibrary.h + PATHS $ENV{HOS_PREFIX}/poco + PATH_SUFFIXES include +) - -IF(WIN32) - SET(POCO_DIR_SEARCH - ${POCO_DIR_SEARCH} - C:/poco - D:/poco - "C:/Program Files/poco" - "C:/Programme/poco" - "D:/Program Files/poco" - "D:/Programme/poco" - ) -ENDIF(WIN32) - -# Add in some path suffixes. These will have to be updated whenever a new Poco version comes out. -SET(SUFFIX_FOR_INCLUDE_PATH - poco-1.3.2 - poco-1.3.3 - poco-1.3.4 - poco-1.3.5 - poco-1.3.6 +find_library(Poco_FOUNDATION_LIB PocoFoundation + PATHS $ENV{HOS_PREFIX}/poco + PATH_SUFFIXES lib lib64 ) -SET(SUFFIX_FOR_LIBRARY_PATH - poco-1.3.2/lib - poco-1.3.2/lib/Linux/i686 - poco-1.3.2/lib/Linux/x86_64 - poco-1.3.3/lib - poco-1.3.3/lib/Linux/i686 - poco-1.3.3/lib/Linux/x86_64 - poco-1.3.4/lib - poco-1.3.4/lib/Linux/i686 - poco-1.3.4/lib/Linux/x86_64 - poco-1.3.5/lib - poco-1.3.5/lib/Linux/i686 - poco-1.3.5/lib/Linux/x86_64 - poco-1.3.6/lib - poco-1.3.6/lib/Linux/i686 - poco-1.3.6/lib/Linux/x86_64 - lib - lib/Linux/i686 - lib/Linux/x86_64 -) +SET(Poco_LIBRARY_DIR "") +GET_FILENAME_COMPONENT(Poco_LIBRARY_DIR ${Poco_FOUNDATION_LIB} PATH) +SET(Poco_LIBRARIES "${Poco_FOUNDATION_LIB}") +SET(Comp_List "") -# -# Look for an installation. -# -FIND_PATH(Poco_INCLUDE_DIR NAMES Foundation/include/Poco/SharedLibrary.h PATH_SUFFIXES ${SUFFIX_FOR_INCLUDE_PATH} PATHS +IF(Poco_FOUNDATION_LIB) + SET(Comp_List "Foundation") + FOREACH(COMPONENT ${Poco_FIND_COMPONENTS}) + FIND_LIBRARY(LIB${COMPONENT} "Poco${COMPONENT}" PATHS ${Poco_LIBRARY_DIR}) + IF (LIB${COMPONENT}) + LIST(APPEND Poco_LIBRARIES "${LIB${COMPONENT}}") + LIST(APPEND Comp_List "${COMPONENT}") + ENDIF(LIB${COMPONENT}) + ENDFOREACH(COMPONENT) + LIST(REMOVE_DUPLICATES Comp_List) +ENDIF(Poco_FOUNDATION_LIB) -# Look in other places. - ${POCO_DIR_SEARCH} - -# Help the user find it if we cannot. - DOC "The ${POCO_INCLUDE_PATH_DESCRIPTION}" -) - -IF(NOT Poco_INCLUDE_DIR) - -# Look for standard unix include paths - FIND_PATH(Poco_INCLUDE_DIR Poco/Poco.h DOC "The ${POCO_INCLUDE_PATH_DESCRIPTION}") - -ENDIF(NOT Poco_INCLUDE_DIR) - -# Assume we didn't find it. -SET(Poco_FOUND 0) - -# Now try to get the include and library path. -IF(Poco_INCLUDE_DIR) - IF(EXISTS "${Poco_INCLUDE_DIR}/Foundation/include/Poco/SharedLibrary.h") - SET(Poco_INCLUDE_DIRS - ${Poco_INCLUDE_DIR}/CppUnit/include - ${Poco_INCLUDE_DIR}/Foundation/include - ${Poco_INCLUDE_DIR}/Net/include - ${Poco_INCLUDE_DIR}/Util/include - ${Poco_INCLUDE_DIR}/XML/include - ) - SET(Poco_FOUND 1) - ELSEIF(EXISTS "${Poco_INCLUDE_DIR}/Poco/Poco.h") - SET(Poco_INCLUDE_DIRS - ${Poco_INCLUDE_DIR} - ) - SET(Poco_FOUND 1) - ENDIF() - - IF(NOT Poco_LIBRARY_DIR) - - FIND_LIBRARY(Poco_FOUNDATION_LIB NAMES PocoFoundation PocoFoundationd PATH_SUFFIXES ${SUFFIX_FOR_LIBRARY_PATH} PATHS - -# Look in other places. - ${Poco_INCLUDE_DIR} - ${POCO_DIR_SEARCH} - - /usr/lib64 - /usr/lib - -# Help the user find it if we cannot. - DOC "The ${POCO_LIBRARY_PATH_DESCRIPTION}" - ) - SET(Poco_LIBRARY_DIR "" CACHE PATH POCO_LIBARARY_PATH_DESCRIPTION) - GET_FILENAME_COMPONENT(Poco_LIBRARY_DIR ${Poco_FOUNDATION_LIB} PATH) - SET(Poco_LIBRARIES "") - SET(Comp_List "") - IF(Poco_LIBRARY_DIR AND Poco_FOUNDATION_LIB) -# Look for the poco binary path. - SET(Poco_BINARY_DIR ${Poco_INCLUDE_DIR}) - IF(Poco_BINARY_DIR AND EXISTS "${Poco_BINARY_DIR}/bin") - SET(Poco_BINARY_DIRS ${Poco_BINARY_DIR}/bin) - ENDIF(Poco_BINARY_DIR AND EXISTS "${Poco_BINARY_DIR}/bin") - ENDIF(Poco_LIBRARY_DIR AND Poco_FOUNDATION_LIB) - IF(Poco_FOUNDATION_LIB) - - # Debug libs are broken on Ubuntu -# IF ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") -# SET(DBG "d") -# ELSE ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") - SET(DBG "") -# ENDIF ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") - - - SET(Comp_List "Foundation${DBG}") - FOREACH(COMPONENT ${Poco_FIND_COMPONENTS}) - FIND_LIBRARY(LIB${COMPONENT} "Poco${COMPONENT}${DBG}" Poco_LIBRARY_DIR) - IF (LIB${COMPONENT}) - LIST(APPEND Poco_LIBRARIES "${LIB${COMPONENT}}") - LIST(APPEND Comp_List "${COMPONENT}${DBG}") - ENDIF(LIB${COMPONENT}) - ENDFOREACH(COMPONENT) - LIST(REMOVE_DUPLICATES Comp_List) - ENDIF(Poco_FOUNDATION_LIB) - ENDIF(NOT Poco_LIBRARY_DIR) -ENDIF(Poco_INCLUDE_DIR) - -IF(NOT Poco_FOUND) - IF(Poco_FIND_QUIETLY) - MESSAGE(STATUS "Poco was not found. ${POCO_INCLUDE_DIR_MESSAGE}") - ELSE(Poco_FIND_QUIETLY) - IF(Poco_FIND_REQUIRED) - MESSAGE(FATAL_ERROR "Poco was not found. ${POCO_INCLUDE_DIR_MESSAGE}") - ENDIF(Poco_FIND_REQUIRED) - ENDIF(Poco_FIND_QUIETLY) -ELSE(NOT Poco_FOUND) - MESSAGE(STATUS " Found Poco!") - SET(COMPONENT_STR "components found:") - FOREACH(comp ${Comp_List}) - SET(COMPONENT_STR "${COMPONENT_STR}, ${comp}") - - ENDFOREACH(comp ${Comp_List}) - STRING(REPLACE ":," ":" COMPONENT_LSTR ${COMPONENT_STR}) - MESSAGE(STATUS "${COMPONENT_LSTR}.") -ENDIF(NOT Poco_FOUND) - -#I added this in to add "libdl" on non-Windows systems. Technically dl is only neded if the "Foundation" component is used, -#but i doesn't hurt to add it in anyway - mas if(Poco_FOUND AND NOT WIN32) LIST(APPEND Poco_LIBRARIES "dl") endif(Poco_FOUND AND NOT WIN32) + +message("Found Poco components: ${Comp_List}") + +set(Poco_INCLUDE_DIRS "${Poco_INCLUDE_DIR}") + diff --git a/src/hos_deps/cmake/Modules/Findlibhttpserver.cmake b/src/hos_deps/cmake/Modules/Findlibhttpserver.cmake deleted file mode 100644 index 1e6a01c9..00000000 --- a/src/hos_deps/cmake/Modules/Findlibhttpserver.cmake +++ /dev/null @@ -1,23 +0,0 @@ - -find_path(libhttpserver_INCLUDE_DIR httpserver.hpp - PATHS $ENV{HOS_PREFIX}/libhttpserver - PATH_SUFFIXES include -) - -find_path(libmicrohttpd_INCLUDE_DIR microhttpd.h - PATHS $ENV{HOS_PREFIX}/libmicrohttpd - PATH_SUFFIXES include -) - -find_library(libhttpserver_LIBRARY httpserver - PATHS $ENV{HOS_PREFIX}/libhttpserver - PATH_SUFFIXES lib lib64 -) - -find_library(libmicrohttpd_LIBRARY microhttpd - PATHS $ENV{HOS_PREFIX}/libmicrohttpd - PATH_SUFFIXES lib lib64 -) - -set(libhttpserver_INCLUDE_DIRS "${libhttpserver_INCLUDE_DIR}" "${libmicrohttpd_INCLUDE_DIR}") -set(libhttpserver_LIBRARIES "${libhttpserver_LIBRARY}" "${libmicrohttpd_LIBRARY}") diff --git a/src/hos_deps/dependencies_install.sh b/src/hos_deps/dependencies_install.sh index 9542c40f..8a3fb0fb 100755 --- a/src/hos_deps/dependencies_install.sh +++ b/src/hos_deps/dependencies_install.sh @@ -6,11 +6,6 @@ cd $CWD echo "Installing libvariant" ./libvariant_install.sh -echo "Installing libgcrypt" -./libgcrypt_install.sh +echo "Installing Poco C++ libraries" +./poco_install.sh -echo "Installing libmicrohttpd" -./libmicrohttpd_install.sh - -echo "Installing libhttpserver" -./libhttpserver_install.sh diff --git a/src/hos_deps/scripts/environment.setup b/src/hos_deps/scripts/environment.setup index 9bd46a14..1cc5efd3 100644 --- a/src/hos_deps/scripts/environment.setup +++ b/src/hos_deps/scripts/environment.setup @@ -18,3 +18,7 @@ export SLOTS=${SLOTS:-`grep 'processor' /proc/cpuinfo | sort -u | wc -l`} # using default system compiler export CC=${CC:-gcc} export CXX=${CXX:-g++} + +mkdir -p $TMP +mkdir -p $PREFIX + diff --git a/src/hos_deps/scripts/libgcrypt_install.sh b/src/hos_deps/scripts/libgcrypt_install.sh deleted file mode 100755 index b1e3c4c9..00000000 --- a/src/hos_deps/scripts/libgcrypt_install.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash -. ./environment.setup - - -NAME=libgcrypt -VERSION=1.6.3 -PACKAGE=$NAME-$VERSION -FILE=$PACKAGE.tar.bz2 -URL=ftp://ftp.gnupg.org/gcrypt/libgcrypt/$FILE - - -# Download -if [ -f $TMP/$FILE ]; then - echo "$TMP/$FILE already exists" -else - wget -nd $URL -O $TMP/$FILE - RET=$? - if [ $RET -ne 0 ]; then - exit $RET - fi -fi -rm -rf $TMP/$PACKAGE -tar xf $TMP/$FILE -C $TMP - - -# Compile -cd ${TMP}/$PACKAGE -mkdir build -cd build -CC=$CC CXX=$CXX CFLAGS=$CFLAGS ../configure --prefix $PREFIX/$NAME -make all -j $SLOTS - - -#Install -make install - diff --git a/src/hos_deps/scripts/libhttpserver_install.sh b/src/hos_deps/scripts/libhttpserver_install.sh deleted file mode 100755 index 4a0288ac..00000000 --- a/src/hos_deps/scripts/libhttpserver_install.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash -. ./environment.setup - - -NAME=libhttpserver -VERSION=0.9.0 -PACKAGE=$NAME-$VERSION -FILE=$PACKAGE.tar.gz -DOWNLOADFILE=v$VERSION.tar.gz -URL=https://github.com/etr/libhttpserver/archive/$DOWNLOADFILE - - -# Download -if [ -f $TMP/$FILE ]; then - echo "$TMP/$FILE already exists" -else - wget -nd $URL -O $TMP/$FILE - RET=$? - if [ $RET -ne 0 ]; then - exit $RET - fi -fi -rm -rf $TMP/$PACKAGE -tar xf $TMP/$FILE -C $TMP - - -# Compile -cd ${TMP}/$PACKAGE -./bootstrap -mkdir build -cd build -PKG_CONFIG_PATH=$PREFIX/libmicrohttpd/lib/pkgconfig:$PREFIX/libmicrohttpd/lib64/pkgconfig CC=$CC CXX=$CXX CFLAGS=$CFLAGS ../configure --prefix $PREFIX/$NAME --enable-cpp11 -make all -j $SLOTS - - -#Install -make install - diff --git a/src/hos_deps/scripts/libmicrohttpd_install.sh b/src/hos_deps/scripts/poco_install.sh similarity index 59% rename from src/hos_deps/scripts/libmicrohttpd_install.sh rename to src/hos_deps/scripts/poco_install.sh index c15fab4d..98bc7861 100755 --- a/src/hos_deps/scripts/libmicrohttpd_install.sh +++ b/src/hos_deps/scripts/poco_install.sh @@ -2,11 +2,11 @@ . ./environment.setup -NAME=libmicrohttpd -VERSION=0.9.42 -PACKAGE=$NAME-$VERSION +NAME=poco +VERSION=1.6.0 +PACKAGE=$NAME-$VERSION-all FILE=$PACKAGE.tar.gz -URL=http://ftp.gnu.org/gnu/libmicrohttpd/$FILE +URL=http://pocoproject.org/releases/$NAME-$VERSION/$FILE # Download @@ -25,9 +25,9 @@ tar xf $TMP/$FILE -C $TMP # Compile cd ${TMP}/$PACKAGE -mkdir build -cd build -CC=$CC CXX=$CXX CFLAGS=$CFLAGS ../configure --prefix $PREFIX/$NAME --with-libgcrypt-prefix=$PREFIX/libgcrypt +mkdir build-dir +cd build-dir +CC=$CC CXX=$CXX CFLAGS=$CFLAGS ../configure --prefix=$PREFIX/$NAME --no-tests --no-samples make all -j $SLOTS